:root{--paper:#f5f5f5;--white:#fff;--ink:#171717;--muted:#646464;--line:#dedede;--accent:#ffed00;--dark:#141414;--gutter:clamp(22px,5vw,88px);--head:100px;--ease:cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased}body.locked{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}img{max-width:100%;display:block}button{border:0}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}h1,h2{letter-spacing:-.055em}p{line-height:1.65}h3{letter-spacing:-.035em}::selection{background:#ffed00;color:#141414}:focus-visible{outline:3px solid #ffed00;outline-offset:6px}button:disabled{cursor:default;opacity:.4}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;flex:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:10px;left:10px;z-index:500;background:var(--paper);color:var(--ink);padding:14px;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}
.site-header{position:fixed;z-index:50;inset:0 0 auto;height:var(--head);padding:18px var(--gutter);display:flex;align-items:center;justify-content:space-between;color:white;transition:background .3s,border-color .3s; border-bottom:1px solid #ffffff25}.site-header.scrolled,.page-light .site-header{background:rgba(32,41,31,.97);border-color:transparent}.brand{display:flex;align-items:center;gap:20px;flex-shrink:0}.brand img{width:94px;height:49px;object-fit:contain}.brand span{font-size:9px;line-height:1.7;letter-spacing:.2em;border-left:1px solid #ffffff50;padding-left:17px}.desktop-nav{display:flex;align-items:center;gap:34px;font-size:13px;letter-spacing:.015em}.desktop-nav>a{position:relative;padding:12px 0}.desktop-nav>a:not(.nav-contact):after{content:"";position:absolute;height:1px;background:currentColor;left:0;right:100%;bottom:5px;transition:right .3s}.desktop-nav>a:hover:after,.desktop-nav>a[aria-current=page]:after{right:0}.desktop-nav .nav-contact{display:flex;align-items:center;gap:16px;margin-left:12px;padding:13px 22px;border:1px solid #ffffff60;border-radius:99px;font-size:11px}.nav-contact:hover{background:#ffffff18}.menu-button{display:none;align-items:center;gap:14px;background:transparent;font-size:12px;color:white;padding:12px 0}.menu-button svg{width:28px}.menu-dialog{width:100%;max-width:none;height:100%;max-height:none;margin:0;background:var(--dark);color:var(--paper);padding:35px var(--gutter);border:0}.menu-top{display:flex;justify-content:space-between;align-items:center}.menu-dialog nav{margin-top:70px;display:flex;flex-direction:column;gap:16px}.menu-dialog nav a{font-size:clamp(40px,9vw,74px);letter-spacing:-.05em}.menu-dialog nav a span{font-size:11px;letter-spacing:.1em;display:inline-block;width:33px;color:var(--accent)}.menu-bottom{margin-top:60px;font-size:14px;color:#c9c9c9}.menu-bottom a{display:block;margin-top:12px}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:47px;height:47px;border:1px solid currentColor;border-radius:50%;background:transparent;transition:background .2s,transform .2s}.icon-button:hover{background:#ffffff1a;transform:translateY(-2px)}
.eyebrow{display:block;font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;line-height:1.5}.eyebrow .tiny-square{width:5px;height:5px;background:currentColor;display:inline-block;vertical-align:middle;margin:0 13px 2px 0}.text-link{display:inline-flex;align-items:center;gap:38px;font-size:12px;line-height:1.5;padding:10px 0;border-bottom:1px solid currentColor}.text-link svg{width:20px;height:20px;transition:transform .3s}.text-link:hover svg{transform:translateX(5px)}.pill{display:inline-flex;align-items:center;justify-content:center;gap:15px;background:transparent;border:1px solid currentColor;padding:15px 22px;border-radius:99px;font-size:12px;text-align:center;line-height:1.4}.pill.solid{background:var(--accent);border-color:var(--accent);color:var(--dark)}.pill:hover{filter:brightness(.95)}.meta-row{display:flex;gap:25px;align-items:center;justify-content:space-between}.circle-arrow{display:inline-flex;justify-content:center;align-items:center;border:1px solid #ffffff6b;border-radius:50%;height:62px;width:62px}
.hero,.screen-gallery{position:relative;height:100svh;min-height:660px;color:#fff;isolation:isolate;overflow:hidden;background:var(--dark)}.hero-photo,.screen-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3}.hero-photo{object-position:50% 50%}.hero:after,.screen-gallery:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#18181830 0%,transparent 36%,#19191960 65%,#171717d9 100%);z-index:-1;pointer-events:none}.hero-topnote{position:absolute;top:132px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:start}.location-badge{display:flex;gap:8px;align-items:center;font-size:10px;letter-spacing:.08em}.location-badge svg{width:13px;height:13px}.hero-content{position:absolute;left:var(--gutter);bottom:145px;right:var(--gutter);display:flex;align-items:flex-end;justify-content:space-between;gap:40px}.hero h1{font-size:clamp(72px,8.7vw,145px);line-height:.96;font-weight:300;max-width:800px}.hero-side{max-width:255px;padding-bottom:7px}.hero-side p{font-size:14px;line-height:1.65;max-width:230px;margin-bottom:25px;color:#ffffffdc}.video-start{display:flex;align-items:center;gap:15px;color:inherit;background:transparent;padding:0;text-align:left}.video-start .play-circle{width:49px;height:49px;border-radius:50%;border:1px solid #ffffff80;display:flex;align-items:center;justify-content:center}.play-circle svg{width:17px}.video-start strong{display:block;font-size:12px;font-weight:400;margin-bottom:5px}.video-start small{font-size:10px;color:#ffffffe0}.hero-bottom{position:absolute;bottom:0;left:var(--gutter);right:var(--gutter);height:93px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff50;font-size:10px;letter-spacing:.12em}.hero-bottom a{display:flex;align-items:center;gap:20px}.hero-bottom .hero-three{display:flex;gap:30px;font-size:11px;letter-spacing:0}.hero-bottom .hero-three span{font-size:9px;opacity:.55;margin-right:9px}.video-layer{position:absolute;inset:0;z-index:-2;overflow:hidden;background:var(--dark)}.video-layer iframe{border:0;position:absolute;top:50%;left:50%;width:max(100vw,177.78svh);height:max(56.25vw,100svh);transform:translate(-50%,-50%);max-width:none;pointer-events:none}.video-controlbar{position:absolute;top:145px;right:var(--gutter);display:none;align-items:center;gap:12px;z-index:6}.video-on .video-controlbar{display:flex}.video-controlbar button{font-size:11px;background:#1e1e1ecf;color:#fff;border:1px solid #ffffff5b;padding:12px 16px;border-radius:25px}.video-on .hero-topnote .location-badge{visibility:hidden}.video-note{font-size:10px;max-width:230px;color:#fff;line-height:1.5}
.editorial{padding:110px var(--gutter) 115px;display:grid;grid-template-columns:1fr 2fr;gap:60px;border-bottom:1px solid var(--line)}.editorial .eyebrow{padding-top:13px}.editorial h2{font-size:clamp(39px,4.2vw,72px);line-height:1.09;max-width:860px}.editorial p{font-size:15px;max-width:570px;margin-top:27px;color:var(--muted)}.editorial .text-link{margin-top:24px}.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:40px}.section-top h2{font-size:clamp(40px,4.7vw,78px);line-height:1.04}.section-top .eyebrow{margin-bottom:19px}.section-top .section-summary{max-width:310px;font-size:13px;line-height:1.7;color:var(--muted)}.screen-gallery{min-height:640px}.screen-top{position:absolute;left:var(--gutter);right:var(--gutter);top:45px;display:flex;align-items:start;justify-content:space-between;gap:25px}.screen-top .gallery-label{display:flex;align-items:center;gap:18px}.screen-top .gallery-label span:first-child{color:var(--accent)}.image-actions{display:flex;gap:10px}.image-actions .icon-button{width:42px;height:42px;border-color:#ffffff90;background:#1d1d1d30}.slide-bottom{position:absolute;left:var(--gutter);right:var(--gutter);bottom:44px;display:flex;justify-content:space-between;align-items:flex-end;gap:40px}.slide-title{font-size:clamp(42px,6.2vw,104px);line-height:1.02;max-width:850px;margin-bottom:21px;font-weight:300}.slide-description{font-size:13px;max-width:510px;color:#ffffffe0;line-height:1.7}.slide-description strong{font-weight:400;color:#fff}.gallery-controls{display:flex;align-items:center;gap:12px;white-space:nowrap}.gallery-controls .count{font-size:11px;margin-right:12px;letter-spacing:.12em;font-variant-numeric:tabular-nums}.gallery-controls .count small{opacity:.55}.gallery-controls .icon-button{width:46px;height:46px;border-color:#ffffff80}.slide-mini{display:flex;gap:6px;margin-top:22px;align-items:center}.slide-mini button{width:27px;height:16px;padding:6px 0;background:transparent}.slide-mini button:after{content:"";display:block;background:#ffffff50;height:2px}.slide-mini button[aria-pressed=true]:after{background:#fff}.gallery-status{position:absolute;bottom:150px;right:var(--gutter);font-size:10px;line-height:1.5;text-align:right}.gallery-into{color:white;font-size:12px;border-bottom:1px solid #ffffff70;padding-bottom:6px;display:inline-block;margin-top:15px}
.partners-section{padding:110px 0 85px;overflow:hidden}.partners-section>.section-top,.partner-loading-info,.partners-section>.rail-bottom{margin-left:var(--gutter);margin-right:var(--gutter)}.partner-loading-info{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding:18px 0 27px}.partner-loading-info p{font-size:11px;color:var(--muted);max-width:620px;line-height:1.65}.partner-loading-info button{flex-shrink:0;font-size:10px;padding:10px 16px}.partner-rail{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 var(--gutter) 12px;scrollbar-width:none}.partner-rail::-webkit-scrollbar{display:none}.partner-card{flex:0 0 32.5%;min-width:285px;scroll-snap-align:center}.partner-image{position:relative;aspect-ratio:1.25;overflow:hidden;background:#d2d2d2}.partner-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .4s,transform .7s var(--ease)}.partner-image.loaded img{opacity:1}.partner-card:hover .partner-image img{transform:scale(1.035)}.partner-image:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,#00000008,transparent 60%),repeating-linear-gradient(90deg,#fff0 0px,#fff0 32px,#ffffff28 33px,#ffffff28 34px)}.partner-image[data-brand=ewe]{background:#c4c4c4}.partner-image[data-brand=bora]{background:#535353}.partner-image[data-brand=strasser]{background:#b0b0b0}.partner-image[data-brand=miele]{background:#cacaca}.media-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:11px;color:#303030;transition:opacity .3s;padding:25px}.partner-image[data-brand=bora] .media-placeholder{color:var(--paper)}.media-placeholder strong{font-size:clamp(34px,3.2vw,60px);font-weight:400;letter-spacing:-.05em}.media-placeholder small{font-size:9px;letter-spacing:.15em;text-transform:uppercase}.media-placeholder button{font-size:10px;border-bottom:1px solid currentColor;padding:4px 0;color:inherit;background:transparent;margin-top:10px}.partner-image.loaded .media-placeholder{opacity:0;pointer-events:none}.partner-image .credit-tag{position:absolute;left:16px;bottom:16px;z-index:2;color:#fff;font-size:9px;background:#232323d1;padding:6px 9px;letter-spacing:.05em;opacity:0}.partner-image.loaded .credit-tag{opacity:1}.partner-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0 16px;border-bottom:1px solid var(--line)}.partner-heading h3{font-size:28px}.partner-heading small{display:block;font-size:10px;letter-spacing:.05em;color:var(--muted);margin-top:8px}.partner-heading svg{width:25px}.rail-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:27px;gap:30px}.rail-bottom .icon-button{height:42px;width:42px;border-color:var(--line)}.rail-controls{display:flex;gap:9px}.rail-counter{font-size:10px;color:var(--muted);letter-spacing:.14em;margin-right:15px}.logo-strip{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:60px var(--gutter) 0}.partner-logo{height:130px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;border-right:1px solid var(--line);background:#fff;padding:24px}.partner-logo:last-child{border-right:0}.partner-logo img{width:140px;height:74px;object-fit:contain;opacity:0}.partner-logo.loaded img{opacity:1}.partner-logo .logo-fallback{position:absolute;text-align:center;color:var(--muted);font-size:23px;letter-spacing:-.035em}.partner-logo .logo-fallback small{display:block;font-size:8px;letter-spacing:.08em;margin-top:8px}.partner-logo.loaded .logo-fallback{display:none}.partner-logo.dark-logo.loaded{background:#232323}.partner-logo[data-brand=ewe] img{transform:scale(1.35)}.partner-logo[data-brand=miele] img{transform:scale(1.3)}
.section-index{padding:80px var(--gutter) 100px;border-top:1px solid var(--line)}.section-index>.eyebrow{margin-bottom:40px}.index-link{display:grid;grid-template-columns:7% 1fr 26% 50px;gap:20px;align-items:center;border-top:1px solid var(--line);padding:28px 0;transition:padding .3s}.index-link:last-child{border-bottom:1px solid var(--line)}.index-link:hover{padding-left:10px}.index-link .number{font-size:11px;color:var(--muted)}.index-link strong{font-size:clamp(41px,5.6vw,88px);font-weight:300;letter-spacing:-.05em}.index-link .desc{font-size:12px;color:var(--muted)}.index-link svg{width:35px;height:35px}.social-section{display:grid;grid-template-columns:1fr 1fr;background:#e6e6e6}.social-art{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:70px 50px 70px var(--gutter);align-items:center;overflow:hidden}.social-art img{width:100%;height:345px;object-fit:cover}.social-art img:nth-child(2){height:270px}.social-copy{padding:85px var(--gutter) 75px 45px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.social-copy h2{font-size:clamp(45px,4.8vw,75px);line-height:1.05;margin:20px 0 22px}.social-copy p{max-width:350px;font-size:14px;color:var(--muted)}.social-links{display:flex;flex-wrap:wrap;gap:30px;margin-top:22px}.social-links .text-link{gap:20px;background:transparent}.placeholder-label{font-size:9px;color:var(--muted);margin-top:15px}
.site-footer{background:var(--dark);color:#f1f1f1;padding:85px var(--gutter) 25px}.footer-head{display:flex;align-items:center;justify-content:space-between;gap:40px;padding-bottom:65px;border-bottom:1px solid #f1f1f13b}.footer-head h2{font-size:clamp(50px,7.5vw,116px);line-height:1;letter-spacing:-.055em}.footer-head .eyebrow{color:var(--accent);margin-bottom:25px}.footer-main{padding:40px 0 48px;display:grid;grid-template-columns:1.5fr 1fr 1.2fr;gap:60px}.footer-main .brand{align-self:start}.footer-main p{font-size:12px;line-height:1.8;color:#dbdbdb}.footer-main .eyebrow{font-size:9px;margin-bottom:16px;color:#adadad}.footer-main a{display:block;font-size:14px;margin-bottom:8px}.footer-main .brand{display:flex}.footer-main .brand img{width:112px;height:auto}.footer-bottom{border-top:1px solid #f1f1f13b;padding-top:24px;display:flex;align-items:center;justify-content:space-between;gap:25px;color:#b5b5b5;font-size:10px;line-height:1.5}.footer-bottom nav{display:flex;flex-wrap:wrap;gap:23px}.footer-bottom button{color:inherit;font-size:10px;background:transparent;padding:0}
.page-intro{padding:180px var(--gutter) 80px;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end}.page-intro .eyebrow{margin-bottom:22px;color:var(--muted)}.page-intro h1{font-size:clamp(66px,8vw,124px);line-height:1}.page-intro p{max-width:435px;font-size:16px;color:var(--muted);padding-bottom:5px}.project-page .screen-gallery{height:100svh}.project-info{padding:70px var(--gutter);display:grid;grid-template-columns:1fr 2fr;gap:60px}.project-info h2{font-size:42px;line-height:1.15}.project-info p{max-width:700px;color:var(--muted);font-size:15px}.project-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:35px;padding-top:25px;border-top:1px solid var(--line)}.project-facts dt{font-size:10px;color:var(--muted);margin-bottom:10px}.project-facts dd{margin:0;font-size:13px;line-height:1.5}.demo-note{padding:13px 18px;border-left:2px solid #d6c900;background:#eaeaea;font-size:11px!important;line-height:1.7!important;max-width:none!important;margin-top:25px;color:#5d5d5d!important}.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:0 var(--gutter) 100px}.photo-grid figure{position:relative}.photo-grid figure:nth-child(3n){grid-column:1/-1}.photo-grid button{background:transparent;padding:0;width:100%;display:block;position:relative;overflow:hidden}.photo-grid img{width:100%;height:500px;object-fit:cover;transition:transform .7s var(--ease)}.photo-grid figure:nth-child(3n) img{height:670px}.photo-grid button:hover img{transform:scale(1.025)}.photo-grid figcaption{font-size:11px;color:var(--muted);padding-top:15px;display:flex;justify-content:space-between}.photo-grid .expand-icon{position:absolute;right:20px;bottom:20px;background:#ffffffda;border:0}.partner-detail{padding:55px var(--gutter) 100px}.partner-row{display:grid;grid-template-columns:.3fr 1fr 1.3fr .5fr;gap:30px;border-top:1px solid var(--line);padding:40px 0;align-items:start}.partner-row:last-child{border-bottom:1px solid var(--line)}.partner-row h2{font-size:38px;margin-bottom:10px}.partner-row .eyebrow{font-size:9px;color:var(--muted)}.partner-row p{font-size:14px;color:var(--muted);max-width:420px}.partner-row .text-link{font-size:11px;white-space:nowrap;gap:15px}.partner-row .number{font-size:11px;color:var(--muted);padding-top:10px}.brand-disclaimer{font-size:11px;line-height:1.7;color:var(--muted);margin-top:28px;max-width:850px}
.about-cover{height:70svh;min-height:420px;position:relative}.about-cover>img{width:100%;height:100%;object-fit:cover}.about-cover span{position:absolute;left:var(--gutter);bottom:30px;color:white;background:#232323b8;font-size:10px;padding:9px 13px}.steps{padding:50px var(--gutter) 110px;display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.step{border-top:1px solid var(--line);padding-top:22px}.step .eyebrow{color:var(--muted);margin-bottom:40px}.step h3{font-size:32px;margin-bottom:15px}.step p{font-size:14px;color:var(--muted);max-width:310px}.team-section{padding:80px var(--gutter) 100px;background:#e9e9e9}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:36px 24px;margin-top:40px}.portrait-placeholder{aspect-ratio:.85;background:#d7d7d7;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.portrait-placeholder:before{content:"";width:41%;aspect-ratio:1;border-radius:50%;background:#c5c5c5;position:absolute;top:21%}.portrait-placeholder:after{content:"";width:80%;height:45%;border-radius:50% 50% 0 0;background:#c5c5c5;position:absolute;bottom:0}.portrait-placeholder span{position:absolute;bottom:17px;left:17px;font-size:9px;letter-spacing:.12em;z-index:1;color:#505050}.portrait-placeholder .num{top:17px;bottom:auto}.team-card:nth-child(even) .portrait-placeholder{background:#dadada}.team-card:nth-child(even) .portrait-placeholder:before,.team-card:nth-child(even) .portrait-placeholder:after{background:#c8c8c8}.team-card h3{font-size:23px;margin:20px 0 7px}.team-card p{font-size:11px;line-height:1.6;color:var(--muted)}.team-card .text-link{font-size:10px;gap:20px;margin-top:12px}.team-note{font-size:11px;line-height:1.7;margin-top:30px;color:var(--muted)}
.contact-layout{padding:15px var(--gutter) 100px;display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact-panel{background:#e5e5e5;padding:45px}.contact-panel h2{font-size:41px;line-height:1.05;margin-bottom:28px}.contact-panel p{font-size:15px;color:var(--muted);margin-bottom:27px}.contact-method{display:block;font-size:clamp(22px,2.4vw,35px);letter-spacing:-.03em;padding:20px 0;border-top:1px solid #cdcdcd;overflow-wrap:anywhere}.contact-aside{padding-top:20px}.contact-aside h2{font-size:29px;margin-bottom:15px}.contact-aside p{font-size:14px;color:var(--muted);max-width:370px}.contact-aside .text-link{margin:20px 0 45px}.legal-main{padding:175px var(--gutter) 90px;max-width:1350px;margin:auto}.legal-main h1{font-size:clamp(55px,7vw,96px);margin:20px 0 40px}.legal-main .legal-notice{padding:22px;background:#e6e6e6;font-size:13px;line-height:1.7;max-width:900px;margin-bottom:45px}.legal-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px 70px}.legal-grid section{border-top:1px solid var(--line);padding-top:24px}.legal-grid h2{font-size:27px;letter-spacing:-.035em;margin-bottom:18px}.legal-grid p,.legal-grid li{font-size:14px;color:var(--muted);line-height:1.85;margin-bottom:12px}.legal-grid a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.legal-grid ul{padding-left:20px}.legal-grid .full{grid-column:1/-1;max-width:950px}.pending{background:#e5e5e5;padding:2px 5px;color:#424242}.legal-grid .data-table{display:grid;grid-template-columns:160px 1fr;font-size:13px;line-height:1.8;gap:10px 25px}.data-table dt{color:var(--muted)}.data-table dd{margin:0}
.lightbox{border:0;padding:0;background:#1a1a1a;color:white;max-width:none;max-height:none;width:100%;height:100%;margin:0;overflow:hidden}.lightbox::backdrop{background:#191919}.lightbox-inner{height:100%;display:flex;flex-direction:column}.lightbox-top{padding:20px 28px;display:flex;align-items:center;justify-content:space-between;gap:25px;flex:none;border-bottom:1px solid #ffffff25}.lightbox-top .eyebrow{font-size:9px}.lightbox-top .actions{display:flex;gap:10px}.lightbox-top .icon-button{width:41px;height:41px;border-color:#ffffff55}.lightbox-stage{flex:1;min-height:0;position:relative;padding:15px 85px;display:flex;justify-content:center;align-items:center;touch-action:pan-y}.lightbox-stage img{max-height:100%;max-width:100%;height:100%;width:100%;object-fit:contain}.lightbox-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;background:#222222c9;color:white;border-color:#ffffff55}.lightbox-arrow:hover{transform:translateY(-50%)}.lightbox-prev{left:20px}.lightbox-next{right:20px}.lightbox-bottom{padding:20px 30px 25px;display:flex;justify-content:space-between;align-items:center;gap:30px;flex:none}.lightbox-caption{font-size:14px}.lightbox-description{color:#cacaca;font-size:11px;margin-top:8px;max-width:750px;line-height:1.6}.lightbox-count{font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}.settings-dialog{border:0;background:var(--paper);color:var(--ink);padding:34px;max-width:550px;width:calc(100% - 32px);max-height:85svh;overflow-y:auto}.settings-dialog::backdrop{background:#15151599;backdrop-filter:blur(4px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:27px}.dialog-top .icon-button{width:38px;height:38px;border-color:var(--line)}.settings-dialog h2{font-size:35px;line-height:1.05}.settings-dialog p{font-size:12px;color:var(--muted);margin:13px 0;line-height:1.8}.consent-item{padding:20px 0;border-top:1px solid var(--line)}.consent-item label{display:flex;gap:15px;align-items:center;font-size:15px}.consent-item input{accent-color:var(--dark);width:18px;height:18px}.consent-item p{margin-bottom:0;font-size:11px}.settings-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:20px}.settings-actions button{font-size:11px}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--dark);color:var(--paper);max-width:calc(100vw - 30px);width:max-content;padding:16px 24px;font-size:12px;line-height:1.6;box-shadow:0 4px 30px #0002;z-index:150;border:1px solid #cbcbcb3d}.js-enabled .no-js-note{display:none}.no-js-note{padding:16px var(--gutter);font-size:12px;background:#eaeaea}.error-message{font-size:10px}.media-enabled .media-enable-text{display:none}.media-enabled .media-enabled-text{display:inline}.media-enabled-text{display:none}[hidden]{display:none!important}
@media(min-width:1800px){.partner-card{flex-basis:29%}.hero h1{font-size:160px}.hero-content{bottom:170px}}
@media(max-width:1100px){.brand{gap:12px}.brand span{padding-left:12px;font-size:8px}.desktop-nav{gap:23px}.desktop-nav .nav-contact{margin-left:0;padding:11px 17px}.hero-side{max-width:205px}.editorial{grid-template-columns:.75fr 2fr;gap:40px}.team-grid{gap:30px 18px}.partner-card{flex-basis:42%}.footer-main{gap:35px}.page-intro{gap:40px}.contact-layout{gap:40px}.photo-grid img{height:390px}.photo-grid figure:nth-child(3n) img{height:520px}.social-art{padding-right:25px}.social-copy{padding-left:25px}}
@media(max-width:960px){:root{--head:83px}.desktop-nav{display:none}.menu-button{display:flex}.site-header{padding-top:12px;padding-bottom:12px}.hero-topnote{top:110px}.hero h1{font-size:clamp(68px,10vw,108px)}.hero-content{bottom:140px}.hero-side{max-width:210px}.hero-bottom .hero-three{gap:18px}.editorial{padding-top:75px;padding-bottom:75px;grid-template-columns:1fr 2.4fr;gap:30px}.slide-bottom{gap:22px}.slide-title{font-size:68px}.slide-description{max-width:450px}.gallery-controls{gap:8px}.gallery-controls .count{margin-right:4px}.gallery-controls .icon-button{width:39px;height:39px}.logo-strip{grid-template-columns:repeat(5,1fr)}.partner-logo{padding:15px;height:100px}.partner-logo img{width:110px;height:60px}.partner-logo .logo-fallback{font-size:18px}.social-art{padding-top:50px;padding-bottom:50px}.social-art img{height:270px}.social-art img:nth-child(2){height:230px}.social-copy{padding-top:60px;padding-bottom:60px}.team-grid{grid-template-columns:repeat(2,1fr)}.partner-row{grid-template-columns:.15fr .8fr 1.4fr}.partner-row>.text-link{grid-column:2}.page-intro h1{font-size:78px}.page-intro p{font-size:14px}.legal-grid{gap:35px}.legal-grid .data-table{grid-template-columns:1fr;gap:4px}.data-table dd{margin-bottom:12px}.video-controlbar{top:120px}}
@media(max-width:680px){:root{--gutter:24px;--head:78px}html{scroll-padding-top:78px}.brand img{width:78px;height:42px}.brand span{font-size:7px;letter-spacing:.16em;padding-left:12px}.brand{gap:12px}.menu-button{font-size:10px;gap:11px}.menu-button svg{width:24px}.hero,.screen-gallery{height:100svh;min-height:660px}.hero-photo{object-position:60% center}.hero-topnote{top:104px}.hero-topnote>.eyebrow{font-size:8px;letter-spacing:.15em;max-width:170px}.location-badge{font-size:8px;letter-spacing:0;max-width:105px;text-align:right;line-height:1.5}.hero-content{bottom:124px;display:block}.hero h1{font-size:clamp(67px,16.2vw,107px);line-height:1;letter-spacing:-.06em;max-width:480px}.hero-side{margin-top:25px;max-width:none;display:flex;align-items:center;justify-content:space-between;gap:16px}.hero-side p{display:none}.video-start .play-circle{width:38px;height:38px}.video-start strong{font-size:11px}.video-start small{font-size:9px}.hero-bottom{height:83px;font-size:8px;letter-spacing:.12em}.hero-bottom .hero-three{display:none}.hero-bottom .mobile-bottom{display:block!important}.hero-bottom a{gap:10px}.hero-bottom svg{width:16px}.editorial{display:block;padding:60px var(--gutter)}.editorial>.eyebrow{margin-bottom:30px;padding:0;font-size:9px}.editorial h2{font-size:39px;line-height:1.1}.editorial p{font-size:14px;margin-top:20px}.editorial .text-link{margin-top:22px}.section-top{align-items:start;display:block;margin-bottom:27px}.section-top h2{font-size:45px}.section-top .eyebrow{font-size:9px;margin-bottom:17px}.section-top .section-summary{font-size:12px;max-width:350px;margin-top:22px}.screen-top{top:30px;align-items:start}.screen-top .gallery-label{gap:12px;font-size:8px;letter-spacing:.12em;max-width:205px;line-height:1.7}.image-actions .icon-button{height:35px;width:35px}.image-actions{gap:7px}.image-actions svg{width:17px;height:17px}.screen-photo{object-position:52% center}.slide-bottom{display:block;bottom:25px}.slide-title{font-size:55px;line-height:1.03;letter-spacing:-.055em;margin-bottom:16px;max-width:440px}.slide-description{font-size:11px;max-width:310px;line-height:1.65}.gallery-controls{justify-content:flex-end;margin-top:24px;gap:10px}.gallery-controls .count{margin-right:auto;font-size:10px}.slide-mini{margin-top:18px}.gallery-controls .icon-button{width:39px;height:39px}.gallery-into{font-size:11px;margin-top:12px}.gallery-status{display:none}.partners-section{padding:62px 0 50px}.partner-loading-info{display:block;padding:17px 0 25px}.partner-loading-info p{font-size:10px;margin-bottom:13px}.partner-loading-info button{font-size:10px;padding:10px 14px}.partner-rail{gap:15px}.partner-card{flex-basis:83%;min-width:245px}.partner-image{aspect-ratio:1.08}.partner-heading{padding:20px 0 15px}.partner-heading h3{font-size:28px}.partner-heading small{font-size:10px}.rail-bottom{padding-top:20px}.rail-counter{display:none}.rail-bottom .text-link{font-size:10px;gap:12px}.rail-bottom .icon-button{width:36px;height:36px}.logo-strip{grid-template-columns:repeat(3,1fr);margin-top:35px}.partner-logo{height:88px;padding:12px;border-bottom:1px solid var(--line)}.partner-logo .logo-fallback{font-size:16px}.partner-logo img{width:80px;height:55px}.partner-logo .logo-fallback small{font-size:7px;letter-spacing:0}.section-index{padding:50px var(--gutter) 60px}.section-index>.eyebrow{font-size:9px;margin-bottom:30px}.index-link{grid-template-columns:24px 1fr 25px;gap:10px;padding:24px 0}.index-link strong{font-size:43px}.index-link .number{font-size:9px}.index-link .desc{grid-column:2;grid-row:auto;font-size:10px;margin-top:-2px}.index-link svg{grid-column:3;grid-row:1/3;width:24px;height:24px}.social-section{grid-template-columns:1fr}.social-art{padding:45px var(--gutter) 0;gap:12px}.social-art img{height:265px}.social-art img:nth-child(2){height:215px}.social-copy{padding:40px var(--gutter) 55px}.social-copy .eyebrow{font-size:9px}.social-copy h2{font-size:49px;margin:20px 0}.social-copy p{font-size:13px}.social-links{gap:28px;margin-top:18px}.site-footer{padding-top:55px}.footer-head{display:block;padding-bottom:35px}.footer-head h2{font-size:66px;line-height:1.03;max-width:370px}.footer-head .eyebrow{font-size:9px;margin-bottom:20px}.footer-head .pill{margin-top:25px;padding:13px 20px;font-size:11px}.footer-main{grid-template-columns:1fr 1fr;gap:30px 20px;padding:35px 0}.footer-main>.brand{grid-column:1/-1}.footer-main .brand img{width:83px}.footer-main p{font-size:10px;line-height:1.9}.footer-main a{font-size:11px;overflow-wrap:anywhere}.footer-main .eyebrow{font-size:8px;margin-bottom:12px}.footer-bottom{display:block;font-size:9px;padding-top:22px}.footer-bottom nav{margin-top:18px;gap:20px}.footer-bottom nav a,.footer-bottom button{font-size:9px}.page-intro{display:block;padding:140px var(--gutter) 45px}.page-intro h1{font-size:68px;letter-spacing:-.06em}.page-intro .eyebrow{font-size:9px;margin-bottom:18px}.page-intro p{font-size:14px;margin-top:25px;max-width:430px}.project-info{padding:45px var(--gutter);display:block}.project-info h2{font-size:38px;margin-bottom:25px}.project-info p{font-size:14px}.project-facts{grid-template-columns:1fr 1fr;gap:22px}.project-facts dt{font-size:9px}.project-facts dd{font-size:11px}.demo-note{font-size:10px!important}.photo-grid{grid-template-columns:1fr;gap:26px;padding-bottom:60px}.photo-grid figure:nth-child(3n){grid-column:auto}.photo-grid img,.photo-grid figure:nth-child(3n) img{height:auto;aspect-ratio:1.25;object-fit:cover}.photo-grid figure.portrait img{aspect-ratio:.75}.photo-grid figcaption{font-size:10px;padding-top:12px}.photo-grid .expand-icon{width:35px;height:35px;bottom:15px;right:15px}.partner-detail{padding:20px var(--gutter) 60px}.partner-row{grid-template-columns:25px 1fr;gap:15px;padding:30px 0}.partner-row>p{grid-column:2;font-size:13px;max-width:360px}.partner-row .text-link{justify-self:start}.partner-row h2{font-size:35px}.partner-row .number{font-size:9px;padding-top:8px}.brand-disclaimer{font-size:10px}.about-cover{height:65svh;min-height:400px}.about-cover>img{object-position:70% center}.steps{padding:0 var(--gutter) 55px;grid-template-columns:1fr;gap:30px}.step{padding-top:20px}.step .eyebrow{font-size:9px;margin-bottom:20px}.step h3{font-size:29px;margin-bottom:13px}.step p{font-size:13px;max-width:360px}.team-section{padding:55px var(--gutter)}.team-grid{gap:30px 15px;margin-top:30px}.team-card h3{font-size:20px;margin-top:15px}.team-card p{font-size:10px}.portrait-placeholder span{font-size:7px;left:12px;bottom:12px}.portrait-placeholder .num{top:12px}.team-card .text-link{font-size:9px;gap:10px}.team-note{font-size:10px}.contact-layout{padding:0 var(--gutter) 60px;grid-template-columns:1fr;gap:30px}.contact-panel{padding:28px}.contact-panel h2{font-size:36px}.contact-panel p{font-size:13px}.contact-method{font-size:23px}.contact-aside{padding-top:0}.contact-aside .text-link{margin-bottom:30px}.legal-main{padding:140px var(--gutter) 60px}.legal-main h1{font-size:54px;margin:20px 0 30px;overflow-wrap:anywhere}.legal-main .legal-notice{font-size:12px;padding:18px;margin-bottom:35px}.legal-grid{grid-template-columns:1fr;gap:30px}.legal-grid h2{font-size:26px}.legal-grid p,.legal-grid li{font-size:13px}.legal-grid .data-table{font-size:13px}.lightbox-top{padding:15px 17px;gap:10px}.lightbox-top .eyebrow{font-size:8px;max-width:160px}.lightbox-top .icon-button{width:34px;height:34px}.lightbox-top .actions{gap:8px}.lightbox-stage{padding:8px 0}.lightbox-arrow{width:34px;height:34px;top:50%;background:#1d1d1dad}.lightbox-prev{left:10px}.lightbox-next{right:10px}.lightbox-bottom{padding:15px 18px 24px;gap:15px;align-items:start}.lightbox-caption{font-size:12px;max-width:250px}.lightbox-description{font-size:10px;max-width:260px}.lightbox-count{font-size:10px}.settings-dialog{padding:25px}.settings-dialog h2{font-size:30px}.settings-dialog p{font-size:11px}.consent-item label{font-size:14px}.video-controlbar{top:140px;left:var(--gutter);right:var(--gutter);align-items:start;gap:8px;flex-wrap:wrap}.video-controlbar button{font-size:10px;padding:10px 13px}.video-note{font-size:9px;max-width:none;flex-basis:100%}.video-on .hero-topnote .location-badge{visibility:visible}.settings-actions .pill{font-size:10px;padding:12px 16px}}
@media(max-width:360px){:root{--gutter:18px}.brand span{display:none}.hero h1{font-size:65px}.slide-title{font-size:49px}.page-intro h1{font-size:57px}.social-art img{height:215px}.social-art img:nth-child(2){height:180px}.contact-method{font-size:20px}.footer-head h2{font-size:57px}}
@media(max-height:600px) and (min-width:681px){.hero,.screen-gallery{min-height:600px}.hero-content{bottom:125px}.hero h1{font-size:80px}.hero-topnote{top:115px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.video-layer{display:none}.video-on .video-layer{display:block}}
@media print{.site-header,.site-footer,.hero,.screen-gallery,dialog,.social-section,.partners-section{display:none!important}.page-intro,.legal-main{padding:20px}body{background:white;color:black}.legal-grid{display:block}.legal-grid section{margin-bottom:30px}}
/* Das Fallback-Foto bleibt sichtbar, solange kein Video eingesetzt ist. */
.video-layer{background:transparent}.video-layer:empty{display:none}

/* Update 14.09.2026 – neutrale Flächen, dezente Markenakzente, keine Webfonts. */
:root{--paper:#f5f5f5;--white:#fff;--ink:#171717;--muted:#646464;--line:#dedede;--accent:#ffed00;--dark:#141414}
html{width:100%;max-width:100%;overflow-x:hidden;overscroll-behavior-x:none}
body{width:100%;max-width:100%;overflow-x:hidden}
@supports(overflow:clip){html,body{overflow-x:clip}}
html.modal-open{overflow:hidden}
main,section,article,header,footer,nav,figure{min-width:0}
main{max-width:100%}
img,video,iframe{max-width:100%}
.sr-only{left:0;top:0;clip-path:inset(50%)}
.partner-card,.partner-heading,.partner-rail{position:relative}
.partner-rail{max-width:100%;min-width:0;overscroll-behavior-x:contain;scroll-padding-inline:var(--gutter);contain:inline-size}
.partner-card{min-width:min(285px,calc(100vw - 48px))}
.partner-loading-info>*{min-width:0}
.editorial>* ,.page-intro>*,.section-top>*,.slide-bottom>*,.footer-head>*,.footer-main>*,.contact-layout>*,.legal-grid>*,.social-section>*{min-width:0}
.hero,.screen-gallery{height:100vh;height:100svh;min-height:600px}
.hero:after,.screen-gallery:after{background:linear-gradient(180deg,#00000030 0%,transparent 37%,#0000003d 64%,#000000c7 100%)}
.site-header.scrolled,.page-light .site-header{background:rgba(20,20,20,.98)}
.site-header{padding-inline:max(var(--gutter),env(safe-area-inset-left)) max(var(--gutter),env(safe-area-inset-right))}
.desktop-nav>a:not(.nav-contact):after{background:var(--accent);height:2px}
.eyebrow .tiny-square{background:var(--accent)}
::selection{background:var(--accent);color:#111}
:focus-visible{outline:3px solid var(--accent);outline-offset:4px;box-shadow:0 0 0 1px #141414}
.pill.solid{background:var(--ink);color:#fff;border-color:var(--ink)}
.pill.solid svg{color:var(--accent)}
.pill{white-space:normal;max-width:100%}
.text-link{max-width:100%}
.hero-bottom{gap:20px}
.hero-bottom .mobile-bottom{font-size:8px;line-height:1.5;max-width:135px;text-align:right}
.hero-side .play-circle{flex:none}
.hero-photo,.screen-photo{image-rendering:auto;transform:none;will-change:auto}
.hero-side{flex-shrink:0}
.hero-content>h1{min-width:0}
.image-actions{flex-shrink:0}
.gallery-label{min-width:0}
.gallery-controls{flex-shrink:0}
.slide-mini button{height:32px}
.team-section,.social-section{background:#ededed}
.contact-panel{background:#eaeaea}
.demo-note{background:#ededed!important;border-left-color:var(--accent);color:#5d5d5d!important}
.pending,.legal-main .legal-notice{background:#ebebeb;color:#333}
.social-art{grid-template-columns:repeat(2,minmax(0,1fr))}
.about-cover{height:auto;min-height:0;background:#dcdcdc}
.about-cover>img{width:100%;height:auto;object-fit:contain}
.about-cover span{background:#141414bd}
.team-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:52px 28px}
.team-card{min-width:0}
.team-portrait{aspect-ratio:4/5;position:relative;overflow:hidden;background:#dedede}
.team-portrait img{width:100%;height:100%;object-fit:cover;object-position:50% 42%}


.team-card h3{font-size:clamp(22px,2vw,31px);line-height:1.16;margin:22px 0 10px;letter-spacing:-.035em}
.team-card .team-role{min-height:20px;line-height:1.5;font-size:12px;color:var(--muted)}
.team-contact{display:flex;flex-direction:column;gap:6px;margin-top:18px;padding-top:13px;border-top:1px solid #d0d0d0}
.team-contact a{display:flex;align-items:center;gap:9px;min-height:36px;font-size:12px;line-height:1.5;overflow-wrap:anywhere;width:100%;min-width:0}
.team-contact a>span{min-width:0;overflow-wrap:anywhere}
.team-contact a>svg{width:16px;height:16px;flex-shrink:0}
.team-contact a:hover>span{text-decoration:underline;text-underline-offset:4px}
.team-portrait.pending-portrait{display:flex;align-items:center;justify-content:center;flex-direction:column;background:linear-gradient(150deg,#e0e0e0,#d3d3d3);border:1px solid #d5d5d5}
.pending-portrait .initials{font-size:clamp(80px,8vw,140px);font-weight:300;letter-spacing:-.08em;color:#ababab}
.pending-portrait .portrait-note{font-size:10px;letter-spacing:.18em;color:#5c5c5c;margin-top:18px;text-transform:uppercase}
.pending-portrait:after{content:"";height:2px;width:34px;background:var(--accent);margin-top:20px}
.team-note{max-width:680px}
.partner-directory{padding:35px var(--gutter) 100px}
.partner-directory .directory-intro{max-width:670px;margin-bottom:34px;font-size:14px;color:var(--muted)}
.partner-category-nav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 60px}
.partner-category-nav button{background:transparent;border:1px solid var(--line);font-size:11px;line-height:1.4;padding:12px 17px;border-radius:24px;min-height:44px;max-width:100%;text-align:left}
.partner-category-nav button:hover,.partner-category-nav button:focus-visible{background:#fff;border-color:var(--ink)}
.partner-group{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:clamp(28px,5vw,85px);padding:45px 0;border-top:1px solid var(--line);scroll-margin-top:calc(var(--head) + 25px)}
.partner-group:last-of-type{border-bottom:1px solid var(--line)}
.partner-group header .eyebrow{color:var(--muted);margin-bottom:20px;display:flex;align-items:center;gap:12px}
.partner-group header .eyebrow:before{content:"";height:2px;width:22px;background:var(--accent)}
.partner-group h2{font-size:clamp(27px,3vw,42px);line-height:1.14;letter-spacing:-.04em}
.partner-group p{font-size:12px;color:var(--muted);line-height:1.7;margin-top:16px;max-width:270px}
.brand-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-content:start}
.brand-tile{display:flex;min-height:120px;position:relative;background:#fff;border:1px solid var(--line);padding:24px 36px 24px 22px;align-items:center;justify-content:center;transition:border-color .2s,background .2s;min-width:0;overflow:hidden}
.brand-tile:hover{border-color:#b1b1b1;background:#fafafa}
.brand-tile:after{content:"";position:absolute;bottom:0;left:22px;width:0;height:2px;background:var(--accent);transition:width .2s}
.brand-tile:hover:after{width:32px}
.brand-tile>svg{position:absolute;right:13px;top:13px;width:14px;height:14px;color:#777}
.brand-tile .brand-name{font-size:clamp(20px,2vw,30px);line-height:1.2;letter-spacing:-.035em;text-align:center;overflow-wrap:anywhere}
.brand-tile .partner-logo{width:100%;height:68px;min-height:0;background:transparent;border:0;padding:0;overflow:hidden}
.brand-tile .partner-logo img{width:100%;max-width:160px;height:62px;transform:none}
.brand-tile .partner-logo .logo-fallback{font-size:clamp(20px,2vw,29px);color:var(--ink)}
.brand-tile .partner-logo.dark-logo.loaded{background:var(--dark)}
.partner-group-count{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.home-partner-groups{margin:45px var(--gutter) 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid var(--line)}
.home-partner-groups a{padding:24px 18px 24px 0;min-width:0;border-bottom:1px solid var(--line);position:relative}
.home-partner-groups a>span{font-size:10px;color:var(--muted);display:block;margin-bottom:13px}
.home-partner-groups strong{font-weight:400;font-size:18px;line-height:1.25;letter-spacing:-.03em;display:block}
.home-partner-groups small{font-size:10px;line-height:1.75;color:var(--muted);display:block;margin-top:12px;max-width:240px}
.home-partner-groups a:hover strong{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:6px}
.footer-head{align-items:flex-end;gap:40px}
.footer-head>div{flex:1;max-width:980px}
.footer-head h2{font-size:clamp(42px,6vw,92px);line-height:1.04;letter-spacing:-.05em;max-width:19ch;overflow-wrap:normal}
.footer-head h2 span{display:block}
.footer-head>.pill{flex:none;max-width:280px;margin-bottom:7px}
.footer-head .eyebrow{color:#d9d9d9}
.footer-head .eyebrow:before{content:"";display:inline-block;width:22px;height:2px;background:var(--accent);margin:0 14px 3px 0}
.footer-main{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) minmax(0,1.2fr)}
.footer-main a{overflow-wrap:anywhere}
.footer-bottom{flex-wrap:wrap}
.video-layer{background:transparent;opacity:0;transition:opacity .45s}
.video-ready .video-layer{opacity:1}
.video-layer iframe{position:absolute;border:0;max-width:none;pointer-events:none}
.video-controlbar{left:auto;right:var(--gutter);top:calc(var(--head) + 26px);max-width:calc(100% - 2 * var(--gutter));flex-wrap:wrap;justify-content:flex-end}
.video-controlbar button,.video-controlbar a{min-height:40px;background:#141414b8;backdrop-filter:blur(6px);border:1px solid #ffffff65;font-size:10px;border-radius:24px;padding:10px 15px;color:#fff;line-height:1.4}
.video-controlbar svg{width:16px;height:16px}
.video-controlbar .video-note{flex-basis:100%;max-width:100%;text-align:right;font-size:10px;line-height:1.5}
.video-on .hero-topnote{visibility:hidden}
.video-dialog{padding:0;border:1px solid #ffffff25;color:#fff;background:#141414;width:calc(100% - 32px);max-width:1150px;max-height:calc(100svh - 30px);overflow-y:auto}
.video-dialog::backdrop{background:#111e;backdrop-filter:blur(6px)}
.video-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 22px}
.video-dialog-head h2{font-size:23px;letter-spacing:-.03em}
.video-dialog-head .icon-button{width:40px;height:40px;flex:none}
.video-player-box{aspect-ratio:16/9;min-height:200px;position:relative;background:#111}
.video-player-box>div,.video-player-box>iframe{position:absolute;inset:0;width:100%;height:100%;border:0;max-width:100%}
.video-dialog-foot{font-size:12px;line-height:1.6;padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.video-dialog-foot .text-link{font-size:11px;white-space:normal}
.video-status{color:#c9c9c9}
@media(min-width:961px){.editorial{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.page-intro{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1000px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-partner-groups{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){
 :root{--gutter:22px}
 .hero,.screen-gallery{min-height:580px}
 .hero-content{bottom:116px}
 .hero h1{font-size:clamp(58px,16vw,100px)}
 .hero-topnote{gap:18px}
 .hero-topnote>.eyebrow{max-width:160px}
 .hero-bottom{height:78px;font-size:8px}
 .screen-top{gap:12px}
 .screen-top .gallery-label{display:block;max-width:calc(100% - 105px)}
 .screen-top .gallery-label span{display:block}
 .image-actions{gap:8px}
 .image-actions .icon-button,.gallery-controls .icon-button{width:44px;height:44px}
 .slide-title{font-size:clamp(39px,12.5vw,57px)}
 .gallery-controls{margin-top:16px}
 .slide-description{max-width:100%}
 .partner-rail{gap:15px}
 .partner-card{flex-basis:85%;min-width:0}
 .team-grid{gap:34px 18px;grid-template-columns:repeat(2,minmax(0,1fr))}
 .team-card h3{font-size:23px}
 .team-contact a{font-size:11px}
 .about-cover span{position:static;display:block;font-size:9px;line-height:1.6;padding:13px var(--gutter);background:#dedede;color:#555}
 .partner-directory{padding:20px var(--gutter) 65px}
 .partner-category-nav{gap:7px;margin-bottom:36px}
 .partner-category-nav button{font-size:10px;padding:10px 13px}
 .partner-group{grid-template-columns:1fr;gap:25px;padding:32px 0}
 .partner-group h2{font-size:32px}
 .partner-group header .eyebrow{margin-bottom:12px}
 .partner-group p{max-width:100%;margin-top:12px}
 .brand-tile{min-height:105px;padding:22px 22px 22px 16px}
 .brand-tile .brand-name,.brand-tile .partner-logo .logo-fallback{font-size:21px}
 .brand-tile .partner-logo img{max-width:110px;height:52px}
 .brand-tile .partner-logo{height:52px}
 .home-partner-groups a{padding:20px 12px 20px 0}
 .home-partner-groups strong{font-size:18px}
 .home-partner-groups small{font-size:10px}
 .footer-head{display:block}
 .footer-head h2{font-size:clamp(40px,10.8vw,62px);max-width:18ch}
 .footer-head>.pill{margin-top:30px}
 .footer-main{grid-template-columns:minmax(0,1fr)}
 .footer-bottom{display:block}
 .footer-bottom nav{margin:18px 0;gap:15px}
 .footer-main .brand{margin-bottom:0}
 .video-controlbar{left:var(--gutter);right:var(--gutter);justify-content:flex-start;top:calc(var(--head) + 24px)}
 .video-controlbar .video-note{text-align:left}
 .video-dialog{width:calc(100% - 16px)}
 .video-dialog-head,.video-dialog-foot{padding:14px 16px}
 .video-dialog-head h2{font-size:20px}
 .contact-panel{padding:28px 22px}
 .contact-method{font-size:clamp(20px,5.8vw,32px)}
 .lightbox-top{gap:12px;padding:16px}
 .lightbox-top .actions{gap:6px;flex-shrink:0}
 .lightbox-top .actions .icon-button{width:38px;height:38px}
 .lightbox-top .eyebrow{font-size:8px;line-height:1.6}
 .lightbox-bottom{padding:16px;gap:15px}
 .lightbox-description{font-size:10px}
 .menu-dialog{padding-top:max(22px,env(safe-area-inset-top));padding-bottom:max(22px,env(safe-area-inset-bottom))}
 .menu-dialog nav{margin-top:40px;gap:12px}
 .menu-dialog nav a{font-size:clamp(33px,9.7vw,62px)}
 .menu-bottom{margin-top:30px}
}
@media(max-width:540px){.team-grid{grid-template-columns:minmax(0,1fr);gap:44px}.team-card h3{font-size:28px}.team-contact a{font-size:13px}.team-portrait{aspect-ratio:4/5}.team-card[data-person=katrin] .team-portrait{max-width:100%}}
@media(max-width:360px){:root{--gutter:18px}.hero h1{font-size:58px}.hero-bottom .mobile-bottom{max-width:115px;font-size:7px}.brand-tile .brand-name,.brand-tile .partner-logo .logo-fallback{font-size:18px}.home-partner-groups strong{font-size:16px}.footer-head h2{font-size:40px}.lightbox-top .eyebrow{max-width:110px}.page-intro h1{font-size:54px}.legal-main h1{font-size:43px}.editorial h2{font-size:34px}}
@media(max-height:600px) and (orientation:landscape){
 :root{--head:68px}
 .hero,.screen-gallery{height:100svh;min-height:420px}
 .hero-topnote{top:90px}
 .hero-content{bottom:94px;display:flex;align-items:flex-end;gap:25px}
 .hero h1{font-size:60px;line-height:1}
 .hero-side{max-width:210px;margin-top:0}
 .hero-side p{display:none}
 .hero-bottom{height:66px}
 .hero-bottom .hero-three{display:none}
 .screen-top{top:25px}
 .slide-title{font-size:43px;margin-bottom:12px}
 .slide-bottom{bottom:22px;display:flex;gap:20px}
 .slide-description{max-width:390px;font-size:11px}
 .slide-mini{margin-top:8px}
 .menu-dialog nav{margin-top:22px;gap:8px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 .menu-dialog nav a{font-size:32px}
 .menu-bottom{margin-top:20px;font-size:12px;display:flex;flex-wrap:wrap;gap:10px 22px}
 .menu-bottom a{margin:0}
 .lightbox-description{display:none}
 .lightbox-top,.lightbox-bottom{padding-block:10px}
 .video-dialog{max-width:750px}
 .video-player-box{aspect-ratio:16/7}
}

/* Video revision 2026-09-14: responsive direct embed and local preview fallback. */
.video-local-notice{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:16px;padding:clamp(22px,5vw,64px);background:#1b1b1b;color:#eee;overflow:auto}
.video-local-notice h3{font-size:clamp(23px,3vw,38px);font-weight:400;line-height:1.16;max-width:650px}
.video-local-notice p{font-size:clamp(12px,1.3vw,16px);line-height:1.6;max-width:650px;color:#bfbfbf}
.video-player-box:has(.video-local-notice){min-height:310px}
.video-player-box>iframe{display:block;max-width:100%;border:0}
.video-layer{overflow:hidden}
@media(max-height:500px) and (orientation:landscape){.video-player-box:has(.video-local-notice){min-height:230px}.video-local-notice{padding:20px 26px;gap:10px}.video-local-notice h3{font-size:23px}.video-local-notice p{font-size:12px}}

/* A minimum player height must not widen the 16:9 box on narrow phones. */
.video-player-box{width:100%;max-width:100%;min-width:0}
.video-local-notice h3,.video-local-notice p{width:100%;max-width:650px;overflow-wrap:break-word}

/* Kitchen galleries: original image ratio is preserved in the fullscreen view. */
.project-section-head{padding:76px var(--gutter) 26px}
.project-section-head>.eyebrow{color:var(--muted);margin-bottom:20px}
.project-section-head h2{font-size:clamp(36px,4.2vw,64px);line-height:1.06}
.project-section-head p{font-size:15px;color:var(--muted);max-width:620px;margin-top:20px}
.kitchen-jump{padding:0 var(--gutter) 40px;display:flex;flex-wrap:wrap;gap:10px;max-width:100%}
.kitchen-jump a{padding:11px 17px;border:1px solid var(--line);border-radius:99px;font-size:11px;background:white;line-height:1.4;max-width:100%}
.kitchen-jump a:hover{border-color:var(--ink)}
.project-overview{padding:0 var(--gutter) 90px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px 25px}
.project-card-overview{min-width:0;display:block}
.project-card-overview img{width:100%;aspect-ratio:4/3;height:auto;object-fit:cover}
.project-card-overview .meta{display:flex;justify-content:space-between;gap:12px;margin-top:18px;font-size:9px;color:var(--muted);letter-spacing:.06em}
.project-card-overview h3{font-size:clamp(23px,2.3vw,35px);line-height:1.15;margin:13px 0}
.project-card-overview p{font-size:13px;color:var(--muted)}
.project-card-overview .text-link{font-size:11px;margin-top:14px}
.project-showcase{border-top:1px solid var(--line);scroll-margin-top:var(--head);padding-top:15px}
.project-showcase .project-kicker{font-size:9px;letter-spacing:.12em;color:var(--muted);display:block;margin-bottom:20px}
.project-showcase .project-info h2{font-size:clamp(35px,3.5vw,54px)}
.project-showcase .project-info>*{min-width:0}
.project-facts.single{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.project-facts.single dt{text-transform:uppercase;line-height:1.6}
.project-counter-note{font-size:11px!important;margin-top:24px}
.photo-grid figure{min-width:0}
.photo-grid figure.portrait{grid-column:auto}
.photo-grid figure.portrait img{object-fit:contain;background:#ececec}

.lightbox-stage{min-width:0;min-height:0;touch-action:pan-y pinch-zoom}
#lightbox-image{width:100%;height:100%;object-fit:contain;min-height:0}
@media(max-width:1100px){.project-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){
 .project-section-head{padding-top:55px}
 .project-section-head p{font-size:13px}
 .kitchen-jump{gap:8px;padding-bottom:28px}
 .kitchen-jump a{font-size:10px;padding:10px 13px}
 .project-overview{grid-template-columns:minmax(0,1fr);gap:36px;padding-bottom:60px}
 .project-card-overview h3{font-size:31px}
 .project-facts.single{grid-template-columns:minmax(0,1fr);gap:20px}
 .project-showcase .project-info h2{font-size:37px}
 
 
}

/* Model names may be longer than place names. Keep all text inside the card. */
.project-card-overview h3,.project-showcase .project-info h2{overflow-wrap:break-word;hyphens:manual;text-wrap:balance}
.project-card-overview .meta{align-items:baseline;flex-wrap:wrap}
.kitchen-jump a{white-space:normal;overflow-wrap:break-word}
.photo-grid figcaption{gap:18px;align-items:flex-start}
.photo-grid figcaption>span:last-child{flex-shrink:0}
.slide-description{overflow-wrap:break-word}
.lightbox-bottom>div{min-width:0}
.lightbox-caption{overflow-wrap:break-word;text-wrap:balance}

/* Legal information */
.legal-intro{max-width:780px;margin:0 0 48px;font-size:15px;line-height:1.75;color:var(--muted)}
.legal-provider-hosts{overflow-wrap:anywhere;word-break:normal}
.legal-version{margin-top:44px;font-size:12px;color:var(--muted)}
.agency-credit a{overflow-wrap:anywhere}
@media(max-width:680px){.legal-intro{font-size:13px;margin-bottom:34px}}
