@font-face{font-family:Anton;src:url('/assets/anton.ttf') format('truetype');font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#f6f5f1;color:#141515;font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}img{max-width:100%;display:block}a:focus-visible,button:focus-visible{outline:3px solid #0b5368;outline-offset:5px}.skip{position:fixed;top:-70px;left:20px;z-index:200;background:white;padding:10px}.skip:focus{top:8px}.site-header{height:96px;display:flex;align-items:center;border-bottom:1px solid #d7d8d2;position:relative;z-index:30;background:#f6f5f1}.brand{align-self:stretch;width:160px;flex-shrink:0;background:#37a4c1;display:grid;place-items:center}.logo-frame{width:74px;height:74px;position:relative;border:1.5px solid white;overflow:hidden}.logo-frame img{width:134px;max-width:none;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.desktop-nav{display:flex;align-items:center;justify-content:flex-end;gap:24px;margin-left:auto;padding:0 40px;font-size:12px}.desktop-nav a{text-decoration:none;white-space:nowrap;position:relative}.desktop-nav a:after{content:'';position:absolute;bottom:-6px;left:0;right:0;height:2px;background:#141515;transform:scaleX(0);transform-origin:left;transition:transform .2s}.desktop-nav a:hover:after,.desktop-nav a[aria-current]:after{transform:scaleX(1)}.menu-button{display:none;margin-left:auto;border:0;background:none;padding:20px;cursor:pointer}.mobile-nav{display:none}.hero{display:grid;grid-template-columns:35% 53% 12%;height:min(630px,calc(100svh - 140px));min-height:520px;overflow:hidden}.hero-copy{padding:32px 0 34px 5vw;position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center}.hero h1{font:clamp(80px,8.8vw,144px)/1.02 Anton,Impact,sans-serif;letter-spacing:-.035em;margin:0 0 25px;width:120%;position:relative;z-index:3}.hero h1 span{display:block;animation:word-enter .9s cubic-bezier(.2,.7,.2,1) both}.hero h1 span:nth-child(2){animation-delay:.13s}.hero h1 span:nth-child(3){animation-delay:.26s}.hero-copy>p{font-size:11px;letter-spacing:.23em;text-transform:uppercase;line-height:1.85;max-width:250px;margin:0 0 24px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;padding:14px 23px;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;border:1px solid #141515;transition:background .2s,color .2s;align-self:flex-start;white-space:nowrap}.button:hover{background:#141515;color:white}.button.accent{background:#d9ed65;border-color:#d9ed65}.button.accent:hover{background:#141515;border-color:#141515}.arrow{font-size:23px;line-height:1;display:inline-block;transition:transform .25s}.button:hover .arrow,.text-link:hover .arrow{transform:translateX(5px)}.hero-image{position:relative;margin-left:-30px;overflow:hidden;clip-path:polygon(10% 0,100% 0,90% 100%,0 100%)}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:37% 50%;animation:photo-enter 1.4s ease-out both}.hero-rail{background:#37a4c1;margin-left:-70px;padding:42px 25px 30px 58px;display:flex;flex-direction:column;justify-content:space-between}.hero-rail p{font-size:10px;letter-spacing:.25em;line-height:1.8;margin:0}.rail-word{font:90px/1 Anton,sans-serif;writing-mode:vertical-rl;color:transparent;-webkit-text-stroke:1px #103d48;align-self:center;letter-spacing:2px}.marquee{background:#37a4c1;color:#092e38;overflow:hidden;padding:13px 0}.marquee-track{display:flex;gap:45px;width:max-content;animation:marquee 36s linear infinite;font-size:11px;letter-spacing:.24em;font-weight:700}.marquee-track span{white-space:nowrap}.marquee:hover .marquee-track,.motion-off .marquee-track{animation-play-state:paused}.section{padding:90px 5vw}.section h2{font:clamp(42px,4.8vw,76px)/1.08 Anton,Impact,sans-serif;letter-spacing:-.015em;margin:0 0 25px}.portfolio{display:grid;grid-template-columns:26% 1fr;gap:5%}.section-intro p{font-size:16px;max-width:280px;margin:0 0 32px}.text-link{font-size:11px;text-transform:uppercase;letter-spacing:.14em;text-decoration:none;display:inline-flex;gap:24px;align-items:center;padding-bottom:7px;border-bottom:1px solid #141515}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}.project-card{display:block;text-decoration:none}.project-card:nth-child(2){margin-top:80px}.project-photo{overflow:hidden;aspect-ratio:4/4.7}.project-photo img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.project-card:hover img{transform:scale(1.045)}.project-meta{border-top:1px solid #bbbdb8;margin-top:16px;padding-top:14px;display:flex;justify-content:space-between;align-items:center}.project-meta h3{font-size:15px;margin:0 0 4px}.project-meta p{font-size:11px;letter-spacing:.06em;margin:0;color:#515454}.approach{padding-top:30px;display:grid;grid-template-columns:1.08fr 1fr;gap:8%;align-items:center}.approach-image{position:relative;aspect-ratio:1.2;overflow:hidden}.approach-image img{width:100%;height:100%;object-fit:cover}.approach-copy>p{max-width:460px;font-size:17px}.services{margin:32px 0 0;padding:0;list-style:none}.services li{padding:15px 0;border-top:1px solid #c7c9c2;display:grid;grid-template-columns:38px 1fr;gap:15px}.services span{font-size:11px;color:#545755;padding-top:3px}.services strong{font-weight:500}.knowledge{padding-top:50px}.knowledge-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:38px}.knowledge-head h2{margin:0}.knowledge-list{border-top:1px solid #202222}.knowledge-item{display:grid;grid-template-columns:55px 1fr 1fr 40px;gap:25px;align-items:center;border-bottom:1px solid #c1c4bd;padding:28px 0;text-decoration:none;transition:padding .25s,background .25s}.knowledge-item:hover{padding-left:14px;padding-right:14px;background:#e9ece4}.knowledge-item .num{font-size:12px}.knowledge-item h3{font-size:30px;letter-spacing:-.04em;font-weight:500;margin:0}.knowledge-item p{font-size:14px;margin:0;max-width:330px}.contact-band{margin:40px 5vw 80px;padding:45px 0;border-top:2px solid #141515;border-bottom:1px solid #141515;display:flex;justify-content:space-between;align-items:center;gap:30px}.contact-band h2{font:clamp(36px,4vw,64px)/1.1 Anton,sans-serif;margin:0 0 10px}.contact-band p{margin:0;max-width:540px}.site-footer{background:#37a4c1;color:#092e38;padding:50px 5vw 22px}.footer-top{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:50px;margin-bottom:50px}.footer-brand{font:30px/1.05 Anton,sans-serif;max-width:180px}.footer-top p{font-size:13px;margin:10px 0}.footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;font-size:13px}.footer-nav a{text-decoration:none}.footer-nav a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid #176579;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:11px}.legal-links{display:flex;gap:18px;flex-wrap:wrap}.legal-links a{text-decoration:none}.motion-toggle{border:0;background:none;font-size:11px;color:inherit;padding:0;cursor:pointer;text-decoration:underline}.legal-layout{display:grid;grid-template-columns:220px minmax(0,780px);gap:65px;max-width:1250px;margin:auto;padding:65px 35px 100px}.legal-sidebar{align-self:start;position:sticky;top:30px}.legal-sidebar a{display:block;text-decoration:none;font-size:14px;padding:9px 0}.legal-sidebar a[aria-current]{font-weight:bold}.legal-content h1{font:clamp(42px,5vw,66px)/1.1 Anton,sans-serif;margin:0 0 25px;overflow-wrap:anywhere}.legal-content h2{font-size:22px;line-height:1.3;margin:34px 0 13px}.legal-content h3{font-size:17px;margin:25px 0 10px}.legal-content p,.legal-content li{font-size:15px;line-height:1.8}.legal-content a{overflow-wrap:anywhere}.legal-notice{border-left:3px solid #37a4c1;background:#e8eef0;padding:14px 18px;font-size:13px!important}.placeholder{padding:90px 6vw 130px;min-height:55vh;max-width:1000px}.placeholder h1{font:clamp(52px,7vw,100px)/1.08 Anton,sans-serif;margin:0 0 22px}.placeholder p{max-width:530px;margin-bottom:30px}.reveal{opacity:1}.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .8s,transform .8s}.js .reveal.visible{opacity:1;transform:none}.motion-off *{animation:none!important;transition:none!important}.motion-off .reveal{opacity:1;transform:none}@keyframes word-enter{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:translateY(0)}}@keyframes photo-enter{from{transform:scale(1.06)}to{transform:scale(1)}}@keyframes marquee{to{transform:translateX(-50%)}}@media(min-width:1180px){.hero-image img{animation:photo-enter 1.4s ease-out both}}@media(max-width:1179px){.desktop-nav{gap:15px;padding:0 22px;font-size:11px}.brand{width:120px}.hero{min-height:490px}.hero-copy{padding-left:4vw}.hero h1{font-size:9.8vw}.hero-rail{padding-right:10px;padding-left:48px}.rail-word{font-size:70px}.portfolio{grid-template-columns:1fr 2fr;gap:5%}}@media(max-width:900px){.site-header{height:84px}.brand{width:115px}.logo-frame{width:64px;height:64px}.logo-frame img{width:116px}.desktop-nav{display:none}.menu-button{display:block}.mobile-nav.is-open{display:grid;position:absolute;top:84px;left:0;right:0;background:#f6f5f1;padding:25px 5vw;grid-template-columns:1fr 1fr;gap:15px;box-shadow:0 15px 20px #0001}.mobile-nav a{text-decoration:none}.hero{grid-template-columns:44% 56%;height:560px;min-height:0}.hero-copy{padding-left:5vw}.hero h1{font-size:12vw}.hero-image{margin-left:-10px;clip-path:polygon(8% 0,100% 0,100% 100%,0 100%)}.hero-rail{display:none}.portfolio{grid-template-columns:1fr}.section-intro{margin-bottom:30px}.section-intro p{max-width:500px}.project-card:nth-child(2){margin-top:45px}.approach{gap:5%}.section{padding:65px 5vw}.footer-top{grid-template-columns:1fr 1fr}.footer-top>div:last-child{grid-column:1/-1}.legal-layout{grid-template-columns:1fr;gap:30px}.legal-sidebar{position:static;display:flex;flex-wrap:wrap;gap:10px 20px}}@media(max-width:600px){.hero{height:auto;display:flex;flex-direction:column}.hero-copy{padding:30px 6vw 32px}.hero h1{font-size:21.5vw;line-height:1.01;margin-bottom:20px;width:100%}.hero-copy>p{font-size:10px;max-width:100%;margin-bottom:20px}.hero-image{height:310px;margin:0;clip-path:none}.hero-image img{object-position:50% 50%}.marquee{padding:10px 0}.marquee-track{font-size:9px}.section{padding:55px 6vw}.section h2{font-size:42px}.project-grid{gap:20px;grid-template-columns:1fr}.project-card:nth-child(2){margin-top:20px}.project-photo{aspect-ratio:4/3}.approach{display:flex;flex-direction:column;gap:30px}.approach-image{width:100%;aspect-ratio:1.3}.knowledge-head{display:block}.knowledge-item{grid-template-columns:25px 1fr 25px;gap:12px;padding:22px 0}.knowledge-item h3{font-size:25px}.knowledge-item p{grid-column:2;grid-row:2}.knowledge-item>.arrow{grid-column:3;grid-row:1/3}.contact-band{display:block;margin:15px 6vw 55px;padding:30px 0}.contact-band .button{margin-top:25px}.footer-top{grid-template-columns:1fr;gap:30px}.footer-top>div:last-child{grid-column:auto}.footer-bottom{display:block}.legal-links{margin:16px 0}.legal-layout{padding:35px 6vw 60px}.legal-content h1{font-size:42px}.placeholder{padding:60px 6vw 90px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}
/* Keep the original logo aspect ratio while tightening the surrounding frame. */
.logo-frame img{height:auto}.hero-rail{padding-left:85px}@media(max-width:1179px) and (min-width:901px){.hero-rail{padding-left:82px}.hero-rail p{font-size:9px;letter-spacing:.13em}}
/* Brand bar, architectural shutter and spatial study. */
.site-header,.mobile-nav.is-open{background:#37a4c1;border-color:#2688a2}.desktop-nav{font-size:13px}.hero-image .hero-slide{position:absolute;inset:0;opacity:0;animation:none;transform:scale(1.045);transition:transform 7s linear}.hero-image .hero-slide.active{opacity:1;z-index:2;transform:scale(1)}.hero-image .hero-slide.leaving{opacity:1;z-index:1}.hero-image .hero-slide.entering{animation:architectural-shutter 1.35s cubic-bezier(.2,.65,.2,1) both}.slide-controls{position:absolute;bottom:24px;left:15%;right:15%;z-index:5;display:flex;align-items:center;color:#fff;background:#142b30e6;max-width:200px;padding:5px 10px;gap:12px}.slide-counter{font-size:11px;letter-spacing:.12em;flex:1}.slide-controls button{border:0;background:transparent;color:#fff;cursor:pointer;font-size:20px;width:30px;height:34px}.slide-controls button:focus-visible{outline-color:white}@keyframes architectural-shutter{from{clip-path:polygon(0 100%,100% 78%,100% 100%,0 100%)}to{clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}}
.eyebrow{font-size:10px!important;font-weight:700;letter-spacing:.18em;margin:0 0 24px}.transformation{display:grid;grid-template-columns:32% 68%;padding-right:0;gap:0;align-items:center;overflow:hidden}.model-intro{padding-right:35px}.model-intro h2{font-size:clamp(40px,4.5vw,72px)}.model-intro>p:not(.eyebrow){max-width:300px;margin:0 0 30px}.model-stage{background:#37a4c1;min-width:0;position:relative;overflow:hidden;color:#093e4d}.model-caption,.model-controls{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:25px 28px;position:relative;z-index:2;font-size:10px;letter-spacing:.1em}.model-caption{border-bottom:1px solid #0b657b44}.model-phase{letter-spacing:0;font-size:12px}.model-controls{border-top:1px solid #0b657b44;letter-spacing:0}.model-controls button{background:none;border:0;border-bottom:1px solid #093e4d;padding:5px 0;font:inherit;font-size:12px;cursor:pointer;color:inherit}.model-controls button span{margin-left:14px}.model-viewport{height:450px;position:relative;perspective:1300px;background:radial-gradient(ellipse at 50% 70%,#0b577238,transparent 62%)}.model-world{position:absolute;left:50%;top:55%;width:360px;height:260px;transform-style:preserve-3d;transform:translate(-50%,-50%) rotateX(55deg) rotateZ(-35deg);transition:transform 2s}.block{position:absolute;left:var(--x);top:var(--y);width:var(--w);height:var(--d);transform-style:preserve-3d;transform:translate3d(0,0,8px);transition:transform 1.8s cubic-bezier(.3,.1,.2,1);transition-delay:var(--delay)}.group-0{transform:translate3d(0,0,0)}.face{display:block;position:absolute;background:var(--tone);backface-visibility:hidden}.face.top{width:var(--w);height:var(--d);transform:translateZ(var(--h));border:1px solid #00000012}.face.front{width:var(--w);height:var(--h);top:var(--d);transform-origin:top;transform:rotateX(90deg);filter:brightness(.78)}.face.side{width:var(--h);height:var(--d);left:var(--w);transform-origin:left;transform:rotateY(-90deg);filter:brightness(.9)}.model-stage.exploded .block{transform:translate3d(var(--dx),var(--dy),var(--lift))}.model-stage.exploded .model-world{transform:translate(-50%,-35%) rotateX(55deg) rotateZ(-35deg)}.manifesto{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding-top:35px}.manifesto>div>p:not(.eyebrow){font-size:20px;margin-top:0;max-width:520px}.manifesto .text-link{margin-top:28px}.motion-off .hero-slide.entering{clip-path:none}.motion-off .hero-slide{transition:none}@media(max-width:1000px){.transformation{grid-template-columns:36% 64%}.model-viewport{height:410px}.model-world{zoom:.83}.model-phase{display:none}.manifesto{gap:5%}}@media(max-width:700px){.transformation{display:block;padding:55px 0 0}.model-intro{padding:0 6vw 35px}.model-intro>p:not(.eyebrow){max-width:460px}.model-stage{width:100%}.model-viewport{height:370px}.model-world{zoom:.78}.model-caption,.model-controls{padding:20px 6vw}.manifesto{display:block;padding-top:55px}.manifesto>div>p:not(.eyebrow){font-size:18px}.slide-controls{left:6%;bottom:18px}.hero-image{height:330px}.model-controls>span{font-size:10px}.model-phase{display:block;font-size:10px}}@media(max-width:370px){.model-world{zoom:.68}.model-viewport{height:320px}}
.face{backface-visibility:visible}
@media(max-width:700px){.model-world{zoom:.6}.model-viewport{height:350px}}@media(max-width:370px){.model-world{zoom:.52}}
/* Retain the supplied detailed illustration; the screenshot's old navigation
   is outside the visible image window. No architectural elements are cropped. */
.transformation{display:block;padding:75px 5vw 65px}.model-intro{display:grid;grid-template-columns:1fr 1fr;column-gap:8%;padding:0 0 35px;align-items:start}.model-intro .eyebrow{grid-column:1/-1}.model-intro h2{grid-column:1;grid-row:2/4;margin:0}.model-intro>p:not(.eyebrow){grid-column:2;max-width:420px}.model-intro .text-link{grid-column:2;justify-self:start}.architecture-study{margin:0;background:#37a4c1;overflow:hidden;position:relative}.architecture-window{overflow:hidden;position:relative;aspect-ratio:1510/1020}.architecture-window img{width:100%;height:auto;max-width:none;margin-top:-5.45%;animation:architecture-drift 18s ease-in-out infinite alternate;transform-origin:50% 60%;animation-play-state:paused}.architecture-study.visible img{animation-play-state:running}.architecture-study figcaption{display:flex;justify-content:space-between;gap:15px;padding:17px 24px;background:#123d49;color:#f3f6f1;font-size:10px;letter-spacing:.13em}.architecture-study figcaption span:last-child{letter-spacing:.04em;color:#c1e5ec}@keyframes architecture-drift{from{transform:scale(1)}to{transform:scale(1.025)}}@media(max-width:700px){.transformation{padding:50px 0 35px}.model-intro{display:block;padding:0 6vw 35px}.model-intro h2{margin-bottom:22px}.model-intro .eyebrow{font-size:9px!important}.architecture-study figcaption{padding:14px 6vw;font-size:8px;letter-spacing:.06em}.architecture-window{aspect-ratio:1510/1020}.manifesto{padding-top:25px}}
/* Full-bleed turquoise architectural canvas, with soft image boundaries. */
.transformation{background:#37a4c1;padding:70px 0 28px;color:#103c47}.model-intro{padding:0 5vw 25px}.architecture-study{background:transparent;overflow:hidden}.architecture-window{aspect-ratio:auto;max-width:1440px;margin:auto;overflow:visible}.architecture-window img{margin:0;width:100%;height:auto;mask-image:linear-gradient(to right,transparent,#000 9%,#000 91%,transparent),linear-gradient(to bottom,transparent,#000 3%,#000 95%,transparent);mask-composite:intersect;animation:architecture-drift 18s ease-in-out infinite alternate;transform-origin:center;animation-play-state:paused}.architecture-study.visible img{animation-play-state:running}.architecture-study figcaption{background:transparent;color:#103c47;margin:0 5vw;padding:20px 0 8px;border-top:1px solid #103c4733}.architecture-study figcaption span:last-child{color:#103c47}.manifesto{padding-top:75px}@keyframes architecture-drift{from{transform:translateY(0)}to{transform:translateY(-8px)}}@media(max-width:700px){.transformation{padding:45px 0 20px}.model-intro{padding:0 6vw 20px}.architecture-window{aspect-ratio:auto}.architecture-study figcaption{margin:0 6vw}.manifesto{padding-top:55px}}
.brand-logo{display:block;width:74px;height:74px;max-width:none;object-fit:contain}@media(max-width:900px){.brand-logo{width:64px;height:64px}}
/* Editorial refinement: clear pale intervals, concentrated brand colour. */
:root{--paper:#faf9f5;--ink:#151b1d;--brand:#37a4c1}body{background:var(--paper);color:var(--ink)}
.site-header{color:#fff;border-bottom:0;height:100px}.desktop-nav{font-size:14px;gap:30px}.desktop-nav a:after{background:#fff}.desktop-nav a{padding:9px 0}.menu-button{color:#fff}.mobile-nav.is-open{color:#fff}.site-header a:focus-visible,.site-header button:focus-visible,.site-footer a:focus-visible,.site-footer button:focus-visible{outline-color:#fff}.brand{width:160px}
.hero{height:clamp(550px,44vw,690px);min-height:0;grid-template-columns:34% 54% 12%}.hero-copy{padding-left:4.5vw}.hero h1{font-size:clamp(82px,9.8vw,152px);letter-spacing:-.035em;line-height:1.02;margin-bottom:24px}.hero-copy>p{border-top:1px solid #929996;padding-top:14px;max-width:260px}.hero-image{margin-left:-15px}.hero-rail{color:white;padding:32px 20px 30px 75px}.hero-rail p{font-size:9px;letter-spacing:.2em}.rail-word{writing-mode:horizontal-tb;align-self:center;font-size:clamp(75px,12vw,185px);line-height:1;-webkit-text-stroke:1px white;letter-spacing:-.04em;transition:opacity .4s,transform .6s}.rail-word.changing{opacity:.25;transform:translateY(12px)}
.marquee{padding:12px 0;color:#fff}.marquee-track{font-size:10px;letter-spacing:.28em;animation-duration:42s}
.transformation{background:var(--paper);color:var(--ink);padding:80px 0 0}.model-intro{padding:0 5vw 50px;grid-template-columns:1.1fr 1fr;align-items:center}.model-intro .eyebrow{margin-bottom:20px}.model-intro h2{font-size:clamp(45px,5.4vw,82px);line-height:1.1}.model-intro>p:not(.eyebrow){font-size:18px;line-height:1.65;max-width:460px;margin-bottom:24px}.architecture-study{background:var(--paper)}.architecture-stage{background:#37a4c1;position:relative;overflow:hidden;perspective:1300px}.architecture-window{max-width:1120px;aspect-ratio:1510/1020;overflow:hidden;margin:auto;transform:rotateX(var(--tilt-y,0deg)) rotateY(var(--tilt-x,0deg));transition:transform .7s ease-out;will-change:transform}.architecture-window img{margin-top:-5.45%;mask-image:linear-gradient(to right,transparent,#000 4%,#000 96%,transparent);mask-composite:add;animation:architecture-breathe 15s ease-in-out infinite alternate;animation-play-state:paused}.architecture-study.visible img{animation-play-state:running}.architecture-study figcaption{color:#384144;background:var(--paper);padding:22px 0;border-top:none;border-bottom:1px solid #d9ddd8;margin:0 5vw;font-size:10px;letter-spacing:.15em}.architecture-study figcaption span:last-child{color:#727977}.architecture-scan{pointer-events:none;position:absolute;inset:0;background:linear-gradient(110deg,transparent 43%,#ffffff16 50%,transparent 57%);transform:translateX(-100%)}.architecture-study.visible .architecture-scan{animation:scan-light 11s ease-in-out infinite}
.manifesto{padding-top:95px;padding-bottom:85px;gap:10%}.manifesto h2{font-size:clamp(40px,4.8vw,70px)}.manifesto>div>p:not(.eyebrow){font-size:20px;line-height:1.65}.services li{transition:padding .3s,color .3s}.services li:hover{padding-left:10px;color:#167c98}.services span{color:#167c98}.knowledge{padding-top:40px;padding-bottom:55px}.knowledge-head h2{font-size:clamp(44px,5vw,76px)}.knowledge-item{position:relative;isolation:isolate;overflow:hidden;padding:32px 0;transition:padding .4s,color .4s}.knowledge-item:before{content:'';position:absolute;inset:0;background:#e8efbc;z-index:-1;transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1)}.knowledge-item:hover,.knowledge-item:focus-visible{background:transparent;padding-left:20px;padding-right:20px}.knowledge-item:hover:before,.knowledge-item:focus-visible:before{transform:scaleX(1)}.knowledge-item .arrow{transition:transform .35s}.knowledge-item:hover .arrow{transform:rotate(45deg)}.knowledge-item h3{font-family:Anton,sans-serif;font-size:clamp(28px,3.2vw,45px);font-weight:400;letter-spacing:0}.contact-band{padding:50px 0;margin-top:30px;margin-bottom:85px}.contact-band .button{background:#d9ed65;border-color:#d9ed65}.contact-band .button:hover{background:#151b1d;border-color:#151b1d}
.site-footer{color:white;padding:65px 5vw 26px}.footer-top{grid-template-columns:1.1fr 1fr 1fr;gap:60px;margin-bottom:60px}.footer-brand{font-size:40px;line-height:1.12;max-width:260px}.footer-nav{font-size:14px;gap:13px 24px}.footer-top p{font-size:14px;line-height:1.7}.site-footer .text-link{border-color:#ffffffa0}.footer-bottom{border-color:#ffffff55;font-size:12px}.legal-links a:hover{text-decoration:underline}.motion-toggle{font-size:12px}.split-heading span{display:block;transition:transform .9s cubic-bezier(.2,.7,.2,1),opacity .8s}.js .split-heading:not(.visible) span{transform:translateY(35px);opacity:0}.split-heading span:nth-child(2){transition-delay:.13s}
@keyframes architecture-breathe{from{transform:scale(1)}to{transform:scale(1.015)}}@keyframes scan-light{0%,35%{transform:translateX(-100%)}75%,100%{transform:translateX(100%)}}
@media(max-width:1100px){.desktop-nav{gap:20px;font-size:13px}.hero-rail{padding-left:55px}.footer-top{gap:35px}}
@media(max-width:900px){.site-header{height:84px}.brand{width:115px}.hero{grid-template-columns:44% 56%;height:550px}.hero h1{font-size:12vw}.hero-image{margin-left:-10px}.hero-rail{display:none}.footer-top{grid-template-columns:1fr 1fr}.footer-top>div:last-child{grid-column:1/-1}}
@media(max-width:700px){.transformation{padding-top:50px}.model-intro{display:block;padding:0 6vw 32px}.model-intro h2{font-size:46px;margin-bottom:24px}.model-intro>p:not(.eyebrow){font-size:16px}.architecture-window{aspect-ratio:1510/1020}.architecture-study figcaption{margin:0 6vw;font-size:8px;letter-spacing:.06em;padding:17px 0}.manifesto{padding-top:55px;padding-bottom:45px}.manifesto>div>p:not(.eyebrow){font-size:18px}.knowledge{padding-top:25px}.contact-band{margin-bottom:55px}.site-footer{padding-top:45px}.footer-top{gap:30px;margin-bottom:35px}.footer-brand{font-size:34px}}
@media(max-width:600px){.hero{height:auto}.hero-copy{padding:30px 6vw}.hero h1{font-size:22vw}.hero-image{margin:0;height:340px}.hero-copy>p{max-width:270px}.footer-top{grid-template-columns:1fr}.footer-top>div:last-child{grid-column:auto}.knowledge-item{padding:25px 0}.knowledge-item h3{font-size:28px}}
@media(prefers-reduced-motion:reduce){.architecture-window{transform:none!important}.split-heading span{opacity:1!important;transform:none!important}}.motion-off .architecture-window{transform:none!important}.motion-off .split-heading span{opacity:1!important;transform:none!important}
.hero-rail p{align-self:flex-end;position:relative;z-index:4;width:84px;flex-shrink:0}
/* Use the complete original plate, not the previously cropped clipboard image. */
.architecture-stage{padding:24px 0 38px}.architecture-window{aspect-ratio:1026/720;max-width:1120px}.architecture-window img{width:149.707602%;margin-left:-49.707602%;margin-top:-5.847953%;height:auto;max-width:none;mask-image:none;animation:none!important;transform:none!important}.architecture-study figcaption{display:flex;flex-wrap:wrap;gap:10px 24px;width:auto;max-width:100%;min-width:0;margin:0;padding:22px 5vw;line-height:1.6}.architecture-study figcaption span{min-width:0;white-space:normal;overflow-wrap:anywhere}.architecture-study figcaption span:last-child{margin-left:auto}@media(max-width:700px){.architecture-stage{padding:16px 0 24px}.architecture-window{aspect-ratio:1026/720}.architecture-study figcaption{margin:0;padding:18px 6vw;font-size:9px}}
/* Repaired artwork now includes all corners: display the complete natural image. */
.architecture-stage{padding:12px 0 20px}.architecture-window{aspect-ratio:auto;overflow:visible}.architecture-window img{width:100%;margin:0;mask-image:linear-gradient(to right,transparent,#000 3%,#000 97%,transparent);height:auto}@media(max-width:700px){.architecture-window{aspect-ratio:auto}.architecture-stage{padding:8px 0 15px}}
/* Light masks track the illustration's original coordinate system. */
.architecture-window{position:relative}.lighting-ready .architecture-window>img{filter:brightness(.84) saturate(.94);transition:filter 1.4s}.room-lighting{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.light-layer{opacity:0;transition:opacity 1.5s ease-in-out}.architecture-study[data-lit="1"] .light-layer-1,.architecture-study[data-lit="2"] .light-layer-2,.architecture-study[data-lit="3"] .light-layer-3{opacity:1}.architecture-scan{display:none}.light-hotspot{position:absolute;left:3.6%;width:12.5%;height:8%;min-height:44px;background:transparent;border:1px solid transparent;border-radius:2px;cursor:pointer;transition:box-shadow .8s,border-color .8s,background .8s}.light-hotspot-1{top:61.8%}.light-hotspot-2{top:38.7%}.light-hotspot-3{top:18%}.light-hotspot[aria-pressed="true"]{border-color:#ffffff88;background:#fff1;box-shadow:0 0 24px #e3f8ff44,inset 0 0 15px #ffffff18}.lighting-controls{display:flex;gap:8px 24px;align-items:center;flex-wrap:wrap;flex-basis:100%;padding-top:15px;margin-top:8px;border-top:1px solid #d9ddd8}.lighting-controls button{font:inherit;letter-spacing:.08em;background:none;border:0;border-bottom:2px solid transparent;padding:8px 0;cursor:pointer;color:#526164;transition:color .3s,border-color .3s}.lighting-controls button[aria-pressed="true"]{color:#126b81;border-color:#37a4c1}.lighting-controls .light-auto{margin-left:auto}.cursor-halo{display:none;position:fixed;z-index:500;left:0;top:0;width:28px;height:28px;border:1px solid #167a93;border-radius:50%;pointer-events:none;opacity:0;transform:translate(-50%,-50%);transition:width .25s,height .25s,background .25s,border-color .25s,opacity .2s}.cursor-halo.over-link{width:48px;height:48px;background:#37a4c118}.cursor-halo.pressing{width:19px;height:19px;background:#37a4c140}.cursor-halo.on-brand{border-color:#fff;background:#ffffff14}.site-header a,.footer-nav a,.legal-links a{transition:transform .2s,color .2s}.site-header a:active,.site-footer a:active{transform:translateY(2px) scale(.97)}.footer-nav a,.legal-links a{position:relative;justify-self:start;text-decoration:none;padding-bottom:3px}.footer-nav a:after,.legal-links a:after{content:'';position:absolute;left:0;bottom:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .35s}.footer-nav a:hover:after,.footer-nav a:focus-visible:after,.legal-links a:hover:after,.legal-links a:focus-visible:after{transform:scaleX(1);transform-origin:left}.footer-nav a:hover{transform:translateX(5px)}.legal-links a:hover{text-decoration:none}.desktop-nav a:hover{transform:translateY(-2px)}@media(hover:hover) and (pointer:fine){.cursor-halo{display:block}}@media(prefers-reduced-motion:reduce){.cursor-halo{display:none!important}}.motion-off .cursor-halo{display:none!important}@media(max-width:600px){.lighting-controls{gap:6px 18px}.lighting-controls button{font-size:10px}.lighting-controls .light-auto{margin-left:0}.light-hotspot{min-height:32px}}
/* Quiet knowledge chapter, with rounded surfaces and no positional hover shifts. */
.manifesto{padding-bottom:90px}.knowledge{background:#edf1ef;border-top:1px solid #d8dfdb;border-bottom:1px solid #d8dfdb;padding:70px 5vw 80px;position:relative}.knowledge:before{content:'';position:absolute;left:5vw;top:-1px;width:76px;height:3px;background:#2a7181}.knowledge-head{display:block;margin-bottom:38px}.knowledge-head .eyebrow{color:#526963;margin-bottom:20px}.knowledge-list{border:0;display:grid;gap:16px}.knowledge-item{border:1px solid #d7dfda;border-radius:20px;background:#f8faf7;padding:30px 28px;overflow:visible;transition:background-color .65s,border-color .65s,box-shadow .65s}.knowledge-item:before{display:none}.knowledge-item:hover,.knowledge-item:focus-visible{padding:30px 28px;background:#fff;border-color:#a7bab3;box-shadow:0 5px 20px #233e3510}.knowledge-item h3{font-size:clamp(28px,3vw,42px)}.knowledge-item .num{color:#6e8178}.knowledge-item p{color:#53605a}.knowledge-item:hover .arrow{transform:none}.contact-band{margin-top:65px}
/* Architectural reference mark replaces every decorative diagonal arrow. */
.arrow{font-size:0!important;position:relative;display:inline-block;width:26px;height:26px;min-width:26px;border:1px solid currentColor;border-radius:50%;opacity:.75;transition:opacity .5s,border-color .5s;transform:none!important}.arrow:before,.arrow:after{content:'';position:absolute;background:currentColor;left:50%;top:50%;transform:translate(-50%,-50%);transition:width .55s,height .55s}.arrow:before{width:10px;height:1px}.arrow:after{width:1px;height:10px}a:hover .arrow,a:focus-visible .arrow{opacity:1}a:hover .arrow:before,a:focus-visible .arrow:before{width:14px}a:hover .arrow:after,a:focus-visible .arrow:after{height:14px}.footer-nav a:hover,.desktop-nav a:hover{transform:none}.site-header a:active,.site-footer a:active{transform:none}
/* Drafting cursor: centre point, thin ring and four short registration ticks. */
.cursor-halo{width:26px;height:26px;color:#155c6d;border-color:currentColor;background:transparent!important;transition:width .4s,height .4s,border-color .3s,opacity .2s}.cursor-halo:before{content:'';position:absolute;width:4px;height:4px;left:50%;top:50%;transform:translate(-50%,-50%);background:currentColor;border-radius:50%}.cursor-halo:after{content:'';position:absolute;inset:-6px;background:linear-gradient(currentColor,currentColor) center top/1px 4px no-repeat,linear-gradient(currentColor,currentColor) center bottom/1px 4px no-repeat,linear-gradient(currentColor,currentColor) left center/4px 1px no-repeat,linear-gradient(currentColor,currentColor) right center/4px 1px no-repeat;opacity:.65}.cursor-halo.over-link{width:34px;height:34px}.cursor-halo.pressing{width:22px;height:22px}.cursor-halo.on-brand{color:#fff;border-color:currentColor}@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.cursor-ready body:not(.motion-off),.cursor-ready body:not(.motion-off) *{cursor:none!important}}@media(max-width:700px){.manifesto{padding-bottom:55px}.knowledge{padding:48px 6vw 55px}.knowledge:before{left:6vw}.knowledge-item,.knowledge-item:hover,.knowledge-item:focus-visible{padding:24px 20px;border-radius:16px}.knowledge-item{grid-template-columns:24px 1fr 26px;gap:12px}.knowledge-item h3{font-size:26px}.knowledge-item p{grid-column:2;grid-row:2}.knowledge-item>.arrow{grid-column:3;grid-row:1/3}.contact-band{margin-top:42px}}
/* Open selection frame, inspired by architectural drawing handles. */
.cursor-halo{width:24px;height:24px;border:0!important;border-radius:0;box-shadow:none;background:none!important;transition:width .35s,height .35s,opacity .2s;color:#155c6d}.cursor-halo:before{display:none}.cursor-halo:after{inset:0;opacity:.9;background:linear-gradient(currentColor,currentColor) left top/7px 1px no-repeat,linear-gradient(currentColor,currentColor) left top/1px 7px no-repeat,linear-gradient(currentColor,currentColor) right top/7px 1px no-repeat,linear-gradient(currentColor,currentColor) right top/1px 7px no-repeat,linear-gradient(currentColor,currentColor) left bottom/7px 1px no-repeat,linear-gradient(currentColor,currentColor) left bottom/1px 7px no-repeat,linear-gradient(currentColor,currentColor) right bottom/7px 1px no-repeat,linear-gradient(currentColor,currentColor) right bottom/1px 7px no-repeat}.cursor-halo.over-link{width:32px;height:32px}.cursor-halo.pressing{width:20px;height:20px}.cursor-halo.on-brand{color:#fff}
/* Fill the clipped right edge of the hero photo with the adjoining brand colour. */
@media(min-width:901px){.hero{background:linear-gradient(to right,var(--paper) 0 60%,var(--brand) 60% 100%)}.hero-image{background:var(--paper)}}

/* Herkunft der kreativ überarbeiteten Projektmotive. */
.hero-image .photo-credit{position:absolute;z-index:5;bottom:20px;left:15%;right:12%;width:fit-content;padding:7px 10px;background:rgba(20,31,32,.65);border-radius:3px;color:#fff;font-size:10px;line-height:1.4;letter-spacing:.04em;pointer-events:none}
@media(max-width:700px){.hero-image .photo-credit{bottom:14px;font-size:9px;left:10%;right:8%}}
/* Reale Projekte: eigenständige, erweiterbare Bildbühnen. */
.projects-page{background:#182a30;color:#f8fbfa;padding:42px max(5vw,22px) 70px}.projects-intro{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:35px}.projects-intro h1{font:clamp(48px,6vw,86px)/1.06 Anton;margin:0}.projects-intro p{margin:0;line-height:1.6}.collection-heading{display:flex;justify-content:space-between;align-items:baseline;gap:25px;padding:20px 0}.collection-heading h2{font:20px/1.4 Arial;margin:0}.collection-heading p{font-size:12px;margin:0;color:#c0ced2}.project-collection+.project-collection{margin-top:90px;border-top:1px solid #506066}.project-panel[hidden]{display:none}.project-panel{animation:project-reveal .65s ease both}.project-stage{position:relative;background:#112025}.project-stage figure{margin:0}.project-after img{width:100%;height:clamp(380px,44vw,620px);object-fit:contain}.project-after img,.project-choice img,.comparison-after{filter:brightness(1.025) contrast(1.025) saturate(1.04)}.project-stage figcaption{position:absolute;bottom:20px;right:22px;border-radius:30px;background:#37a4c1;color:white;padding:6px 15px;font-size:12px}.project-before{position:absolute;left:24px;bottom:24px;width:23%;max-width:285px;border:4px solid #faf9f5;box-shadow:0 8px 30px #0004}.project-before img{width:100%;height:auto;max-height:190px;object-fit:contain;background:#faf9f5}.project-before figcaption{left:9px;right:auto;bottom:9px;background:#faf9f5;color:#182a30;padding:4px 10px}.project-zoom{position:absolute;right:20px;top:20px;border:1px solid #ffffff80;border-radius:30px;background:#182a30db;color:white;padding:9px 14px;font:12px Arial;cursor:pointer}.project-zoom span{padding-left:8px}.project-caption{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:22px 0}.project-caption h3{font:38px/1.15 Anton;margin:0}.project-caption p{max-width:490px;font-size:14px;margin:0}.project-choices{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:13px;border-top:1px solid #506066;padding-top:22px}.project-choice{padding:0;border:0;background:none;color:inherit;text-align:left;font:12px/1.4 Arial;cursor:pointer}.project-choice img{width:100%;height:78px;object-fit:cover;margin-bottom:9px;outline:2px solid transparent;outline-offset:3px;transition:outline-color .35s}.project-choice[aria-pressed=true] img,.project-choice:hover img{outline-color:#62bfd2}.project-choice:focus-visible,.project-zoom:focus-visible{outline:2px solid white;outline-offset:5px}.projects-outro{margin-top:80px;padding-top:36px;border-top:1px solid #506066;display:flex;align-items:center;justify-content:space-between;gap:25px}.projects-outro h2{font:38px/1.15 Anton;margin:0}.projects-page .text-link{color:white}.project-dialog{width:min(1400px,96vw);max-height:94vh;padding:25px;background:#182a30;color:white;border:1px solid #557078;border-radius:6px}.project-dialog::backdrop{background:#081317e8}.comparison-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.comparison-head h2{font:32px Anton;margin:0}.comparison-close{border:1px solid #809399;border-radius:24px;background:transparent;color:white;padding:8px 15px;cursor:pointer}.comparison-images{display:grid;grid-template-columns:1fr 1fr;gap:20px}.comparison-images figure{margin:0}.comparison-images img{width:100%;height:65vh;object-fit:contain;background:#112025}.comparison-images figcaption{padding-top:10px}.project-dialog:focus-visible{outline:2px solid white}.cursor-ready:has(.project-dialog[open]),.cursor-ready:has(.project-dialog[open]) *{cursor:auto!important}@keyframes project-reveal{from{opacity:.4}to{opacity:1}}@media(max-width:900px){.project-choices{grid-template-columns:repeat(5,minmax(0,1fr))}.projects-intro,.collection-heading{display:block}.projects-intro p,.collection-heading p{margin-top:14px}}@media(max-width:600px){.projects-page{padding-top:30px}.project-after img{height:auto;min-height:0;max-height:none}.project-before{position:relative;left:auto;bottom:auto;width:42%;margin:15px!important;border-width:3px}.project-stage{padding-bottom:1px}.project-stage>.project-after>figcaption{top:12px;bottom:auto;right:12px}.project-zoom{top:auto;bottom:30px;right:12px;max-width:46%}.project-caption,.projects-outro{display:block}.project-caption h3{font-size:30px}.project-caption p{margin-top:14px}.project-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 12px}.project-choice img{height:70px}.projects-outro h2{font-size:32px;margin-bottom:20px}.comparison-images{grid-template-columns:1fr}.comparison-images img{height:auto;max-height:60vh}.comparison-head h2{font-size:25px}.project-dialog{padding:16px}}@media(prefers-reduced-motion:reduce){.project-panel{animation:none}}.motion-off .project-panel{animation:none}

/* Originalfotografie: zurückhaltende Farbaufwertung ohne neue Bildinhalte. */
.hero-image .hero-slide{filter:brightness(1.035) contrast(1.025) saturate(1.035)}

/* Ruhiger Markenkopf; Navigation erfolgt im Inhalt und im Footer. */
.header-signature{margin-left:auto;color:white;font-size:12px;letter-spacing:.09em;padding-right:5vw}
/* Individuelle, stärkere Entwicklung der Originalaufnahmen. */
.hero-image .hero-slide:nth-of-type(1){filter:brightness(1.055) contrast(1.10) saturate(1.12)}
.hero-image .hero-slide:nth-of-type(2){filter:brightness(1.09) contrast(1.08) saturate(1.09)}
.hero-image .hero-slide:nth-of-type(3){filter:brightness(1.045) contrast(1.12) saturate(1.07)}
.hero-image .hero-slide:nth-of-type(4){filter:brightness(1.075) contrast(1.08) saturate(1.06)}
@media(max-width:600px){.header-signature{font-size:10px;letter-spacing:.035em}}

.project-before-stack{position:absolute;left:24px;bottom:24px;width:23%;max-width:250px;display:grid;gap:12px}.project-before-stack .project-before{position:relative;left:auto;bottom:auto;width:100%;max-width:none}.project-before-stack .project-before img{max-height:145px}.comparison-images.three-stages{grid-template-columns:repeat(3,minmax(0,1fr))}.project-choices{grid-template-columns:repeat(auto-fit,minmax(85px,1fr))}.project-choice{max-width:160px}@media(max-width:600px){.project-before-stack{position:relative;left:auto;bottom:auto;width:auto;max-width:none;margin:14px;display:flex;gap:12px;padding-bottom:48px}.project-before-stack .project-before{width:46%;margin:0!important;align-self:start}.project-before-stack .project-before img{max-height:none}.project-before-stack .project-before figcaption{font-size:10px;padding:3px 7px;bottom:5px;left:5px}.comparison-images.three-stages{grid-template-columns:1fr}.project-zoom{bottom:14px;max-width:none}.project-choices{grid-template-columns:repeat(3,minmax(0,1fr))}}
.comparison-images.three-stages img{height:auto;aspect-ratio:4/3;object-fit:contain}.project-collection:has(#apartment-title) .project-choices{display:flex;gap:22px}.project-collection:has(#apartment-title) .project-choice{width:140px}@media(max-width:600px){.project-collection:has(#apartment-title) .project-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.project-collection:has(#apartment-title) .project-choice{width:auto}}

.project-floorplan{display:grid;grid-template-columns:1fr 1.65fr;align-items:center;gap:45px;margin-top:45px;padding-top:35px;border-top:1px solid #506066}.project-floorplan h2{font:38px/1.15 Anton;margin:0 0 18px}.project-floorplan p{max-width:320px}.project-floorplan img{width:100%;height:auto;background:white}.project-floorplan .text-link{font-size:11px;white-space:normal}.project-floorplan a:focus-visible{outline:2px solid white;outline-offset:6px}@media(max-width:700px){.project-floorplan{grid-template-columns:1fr;gap:25px}.project-floorplan h2{font-size:32px}}
.project-floorplan+.project-collection{margin-top:85px;padding-top:22px;border-top:1px solid #506066}.project-floorplan img{max-height:580px;object-fit:contain}.project-collection:has(#hutten-title) .project-choices{display:flex;gap:22px}.project-collection:has(#hutten-title) .project-choice{width:140px}@media(max-width:600px){.project-collection:has(#hutten-title) .project-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.project-collection:has(#hutten-title) .project-choice{width:auto}}
/* Permanent overlap follows the actual photo edges, not the browser width. */
.projects-page .project-stage{background:transparent;isolation:isolate;padding-bottom:0}
.projects-page .project-before-stack{position:absolute;left:calc(var(--photo-left, 15%) + var(--photo-width, 70vw)*.035);bottom:calc(var(--photo-bottom, 0px) + 16px);width:clamp(76px,calc(var(--photo-width, 70vw)*.29),225px);max-width:none;display:grid;gap:9px;margin:0;padding:0;z-index:2}
.projects-page .project-before-stack .project-before{position:relative;width:100%;margin:0!important;border:4px solid #faf9f5;border-radius:3px;background:#faf9f5;box-shadow:0 8px 28px #0006;transform:rotate(-2deg);transform-origin:50% 100%;transition:transform .65s cubic-bezier(.2,.65,.25,1),box-shadow .65s}
.projects-page .project-before-stack .project-before:nth-child(2){transform:rotate(2deg);margin-top:-3px!important;margin-left:8px!important}
.projects-page .project-before-stack .project-before img{width:100%;height:auto;max-height:calc(var(--photo-height, 460px)*.28);object-fit:contain}
.projects-page .project-before-stack .project-before:only-child img{max-height:calc(var(--photo-height, 460px)*.39)}
.projects-page .project-before-stack:hover .project-before{transform:rotate(0);box-shadow:0 12px 32px #0007}
.projects-page .project-stage>.project-after>figcaption{top:auto;right:calc(100% - var(--photo-left, 15%) - var(--photo-width, 70vw) + 15px);bottom:calc(var(--photo-bottom, 0px) + 15px);z-index:1}
.projects-page .project-zoom{top:calc(var(--photo-top, 0px) + 15px);right:calc(100% - var(--photo-left, 15%) - var(--photo-width, 70vw) + 15px);bottom:auto;max-width:none;backdrop-filter:blur(8px);transition:background .4s,border-color .4s}
.projects-page .project-zoom:hover{background:#276575;border-color:#ccebf2}
.projects-page .project-caption{padding:27px 0 25px;border-bottom:0}
.projects-page .project-caption h3{border-left:3px solid #62bfd2;padding-left:17px}
.projects-page .project-choices{padding-top:25px;padding-bottom:7px;gap:18px}
.projects-page .project-choice img{border-radius:4px;opacity:.65;transition:opacity .5s,outline-color .5s,transform .65s;outline-offset:5px}
.projects-page .project-choice:hover img,.projects-page .project-choice[aria-pressed=true] img{opacity:1;transform:translateY(-3px)}
.projects-page .project-choice span{display:block;padding-top:3px;color:#c4d1d4;transition:color .4s}
.projects-page .project-choice[aria-pressed=true] span{color:white}
.projects-page .project-panel{animation:project-reveal .8s ease both}
.projects-page .project-panel .project-before-stack{animation:comparison-arrive .9s cubic-bezier(.2,.7,.25,1) both}
@keyframes comparison-arrive{from{opacity:0;translate:0 12px}to{opacity:1;translate:0 0}}
@media(max-width:600px){.projects-page .project-before-stack{bottom:calc(var(--photo-bottom, 0px) + 8px);gap:5px}.projects-page .project-before-stack .project-before{border-width:2px}.projects-page .project-before-stack .project-before figcaption{font-size:8px;left:3px;bottom:3px;padding:2px 5px}.projects-page .project-zoom{font-size:9px;padding:7px 9px;top:8px;right:8px}.projects-page .project-stage>.project-after>figcaption{font-size:10px;padding:4px 8px;bottom:8px;right:8px}.projects-page .project-caption h3{font-size:28px}.projects-page .project-choices{gap:16px}}
@media(prefers-reduced-motion:reduce){.projects-page .project-panel,.projects-page .project-panel .project-before-stack{animation:none}.projects-page .project-choice img,.projects-page .project-before{transition:none!important}}
.motion-off .project-panel .project-before-stack{animation:none}

/* Compact architectural drawing tucked beneath each collection. */
.project-floorplan{display:block;margin-top:30px;padding:0;border:0}
.floorplan-preview{display:flex;align-items:center;gap:24px;width:fit-content;max-width:100%;padding:16px 10px 16px 4px;text-decoration:none;color:#d7e2e4}
.floorplan-paper{position:relative;display:block;flex:0 0 92px;height:68px;isolation:isolate;transform:rotate(-5deg);transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.floorplan-paper::before{content:"";position:absolute;inset:2px;background:#9bafb3;transform:rotate(9deg);z-index:-1;transition:transform .55s}
.project-floorplan .floorplan-paper img{display:block;width:100%;height:100%;max-height:none;object-fit:contain;padding:5px;background:#f4f5f2;opacity:.85;box-shadow:0 3px 9px #0003;transition:opacity .55s}
.floorplan-copy{display:grid;gap:5px}.floorplan-title{font:15px/1.4 Arial}.floorplan-hint{font:12px/1.4 Arial;color:#a5b9be}
.floorplan-plus{display:grid;place-items:center;width:27px;height:27px;border:1px solid #67838c;border-radius:50%;font:17px Arial;transition:transform .55s,color .55s,border-color .55s}
.floorplan-preview:hover .floorplan-paper,.floorplan-preview:focus-visible .floorplan-paper{transform:translateY(-4px) rotate(0)}
.floorplan-preview:hover .floorplan-paper::before,.floorplan-preview:focus-visible .floorplan-paper::before{transform:translate(-4px,3px) rotate(-5deg)}
.floorplan-preview:hover img,.floorplan-preview:focus-visible img{opacity:1}.floorplan-preview:hover .floorplan-plus{transform:rotate(90deg);color:white;border-color:#a2d7e2}
.project-floorplan+.project-collection{margin-top:52px}
.floorplan-dialog .comparison-images{display:block}.floorplan-dialog .comparison-images>img{display:block;width:100%;height:74vh;max-height:74vh;object-fit:contain;background:#f4f5f2;padding:18px}
.floorplan-dialog[open]{animation:plan-open .35s ease both}.floorplan-dialog .comparison-head h2{font:20px/1.4 Arial}
@keyframes plan-open{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:600px){.floorplan-preview{gap:16px}.floorplan-paper{flex-basis:72px;height:56px}.floorplan-title{font-size:13px}.floorplan-hint{font-size:11px}.floorplan-plus{width:24px;height:24px;flex-shrink:0}.floorplan-dialog .comparison-head h2{font-size:16px}.floorplan-dialog .comparison-images>img{height:65vh;max-height:65vh;padding:8px}}
@media(prefers-reduced-motion:reduce){.floorplan-preview *{transition:none!important}.floorplan-dialog[open]{animation:none}}
.motion-off .floorplan-preview *{transition:none!important}.motion-off .floorplan-dialog[open]{animation:none}

.project-collection:has(#moabit-title) .project-choices{grid-template-columns:repeat(3,minmax(0,160px));gap:22px}@media(max-width:600px){.project-collection:has(#moabit-title) .project-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}}
/* Raumwelten: an airy photo essay, with the original image proportions. */
.roomworld-page{background:#edf1ef;color:#182a30;padding:56px max(5vw,22px) 80px}.roomworld-intro{display:grid;grid-template-columns:1fr 1.6fr;gap:6vw;align-items:center;min-height:540px;margin-bottom:75px}.roomworld-back{font:12px Arial;color:#45636b;text-underline-offset:5px}.roomworld-intro h1{font:clamp(56px,7vw,110px)/1.1 Anton;margin:30px 0}.roomworld-intro p{font:clamp(16px,1.5vw,21px)/1.65 Arial;margin:0 0 25px}.roomworld-note{display:block;font:12px/1.5 Arial;color:#50666c;max-width:220px}.roomworld-enter{display:inline-flex;gap:24px;align-items:center;margin-top:35px;font:13px Arial;text-decoration:none;color:inherit}.roomworld-enter span{border:1px solid #607c84;border-radius:50%;padding:5px}.roomworld-cover{text-decoration:none;color:inherit;display:block;transform:rotate(1.5deg)}.roomworld-cover img{display:block;width:100%;height:480px;object-fit:cover;box-shadow:16px 16px 0 #d9e2df}.roomworld-cover>span{display:block;margin-top:27px;font:11px Arial;color:#50666c}.roomworld-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #b8c8c7;padding:24px 0 40px}.roomworld-filters{display:flex;gap:8px;flex-wrap:wrap}.roomworld-filters button{padding:10px 16px;border:1px solid transparent;border-radius:24px;background:transparent;color:#415b62;font:13px Arial;cursor:pointer}.roomworld-filters button[aria-pressed=true]{background:#182a30;color:white}.roomworld-filters button:hover{border-color:#607c84}.roomworld-count{font:12px Arial;color:#50666c;white-space:nowrap}.roomworld-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:55px 4vw;align-items:center}.roomworld-card{grid-column:span 4;color:inherit;text-decoration:none;display:block;min-width:0}.roomworld-card:nth-child(6n+1){grid-column:span 7}.roomworld-card:nth-child(6n+2){grid-column:9/span 4}.roomworld-card:nth-child(6n+3){grid-column:span 4}.roomworld-card:nth-child(6n+4){grid-column:6/span 7}.roomworld-card:nth-child(6n+5){grid-column:2/span 4}.roomworld-card:nth-child(6n+6){grid-column:7/span 5}.roomworld-card[hidden]{display:none}.roomworld-card figure{margin:0}.roomworld-image{position:relative;overflow:hidden}.roomworld-image img{display:block;width:100%;height:auto;max-height:600px;object-fit:contain;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.roomworld-image>span{position:absolute;bottom:14px;right:14px;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#edf1efed;color:#182a30;transition:transform .5s}.roomworld-card:hover img{transform:scale(1.025)}.roomworld-card:hover .roomworld-image>span{transform:rotate(90deg)}.roomworld-card figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-top:14px}.roomworld-card h2{font:17px/1.3 Arial;margin:0}.roomworld-card figcaption>span{font:11px Arial;color:#526970}.roomworld-page a:focus-visible,.roomworld-page button:focus-visible{outline:2px solid #247e97;outline-offset:6px}.roomworld-end{margin-top:90px;padding-top:40px;border-top:1px solid #b8c8c7;display:flex;justify-content:space-between;align-items:center;gap:25px}.roomworld-end h2{font:32px/1.2 Anton;margin:0}.roomworld-dialog{width:min(1250px,96vw);max-height:96dvh;background:#182a30;color:white;border:1px solid #526970;padding:20px 24px;border-radius:5px}.roomworld-dialog::backdrop{background:#0b171aee}.roomworld-dialog-top,.roomworld-dialog-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px}.roomworld-dialog-top{margin-bottom:14px}.roomworld-position{font:12px Arial;color:#b7cbd0}.roomworld-dialog button{background:transparent;border:1px solid #91a9ae;border-radius:25px;color:white;padding:10px 16px;font:13px Arial;cursor:pointer}.roomworld-full{display:block;width:100%;height:66dvh;object-fit:contain}.roomworld-dialog-bottom{padding-top:16px}.roomworld-dialog h2{font:20px Arial;margin:0 0 7px}.roomworld-description{font:12px/1.4 Arial;margin:0;color:#c4d2d5}.roomworld-controls{display:flex;gap:10px}.roomworld-controls button{font-size:25px;min-width:44px;min-height:44px;padding:2px 14px}.roomworld-dialog button:focus-visible{outline:2px solid white;outline-offset:3px}.cursor-ready:has(.roomworld-dialog[open]),.cursor-ready:has(.roomworld-dialog[open]) *{cursor:auto!important}.raumwelten-teaser{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-top:85px;padding:36px 0;border-top:1px solid #506066;color:white;text-decoration:none}.raumwelten-teaser h2{font:clamp(30px,4vw,48px)/1.15 Anton;margin:0 0 16px}.raumwelten-teaser p{max-width:350px;font:14px/1.6 Arial;color:#c4d2d5}.teaser-action{display:inline-block;margin-top:16px;font:13px Arial}.teaser-photos{display:flex;align-items:center;width:40%;padding:20px}.teaser-photos img{width:78%;transform:rotate(-4deg);transition:transform .65s}.teaser-photos img+img{width:35%;margin-left:-13%;transform:rotate(7deg);box-shadow:0 8px 20px #0005}.raumwelten-teaser:hover img{transform:rotate(0)}
@media(max-width:700px){.roomworld-page{padding-top:32px}.roomworld-intro{grid-template-columns:1fr;gap:40px;min-height:0;margin-bottom:45px}.roomworld-intro h1{margin:25px 0}.roomworld-cover{margin:0 8px}.roomworld-cover img{height:auto}.roomworld-toolbar{display:block;padding-bottom:20px}.roomworld-filters{gap:3px}.roomworld-filters button{padding:10px 12px}.roomworld-count{margin:15px 0 0}.roomworld-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 18px}.roomworld-card:nth-child(n){grid-column:span 1}.roomworld-card:nth-child(3n+1){grid-column:1/-1}.roomworld-card figcaption{display:block}.roomworld-card h2{font-size:14px;margin-bottom:5px}.roomworld-card figcaption>span{font-size:10px}.roomworld-image>span{width:27px;height:27px;right:8px;bottom:8px}.roomworld-end{display:block}.roomworld-end h2{margin-bottom:25px}.roomworld-dialog{padding:14px;width:96vw}.roomworld-full{height:58dvh}.roomworld-dialog-bottom{align-items:start}.roomworld-dialog h2{font-size:16px}.roomworld-description{font-size:11px}.roomworld-controls{gap:6px}.raumwelten-teaser{display:block}.teaser-photos{width:80%;margin:25px auto 0}}
@media(prefers-reduced-motion:reduce){.roomworld-image img,.roomworld-image>span,.teaser-photos img{transition:none!important}}.motion-off .roomworld-image img,.motion-off .roomworld-image>span,.motion-off .teaser-photos img{transition:none!important}

.roomworld-grid.is-filtered{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.roomworld-grid.is-filtered .roomworld-card{grid-column:auto}@media(max-width:700px){.roomworld-grid.is-filtered{grid-template-columns:repeat(2,minmax(0,1fr))}.roomworld-grid.is-filtered .roomworld-card:nth-child(3n+1){grid-column:1/-1}}
/* A single-screen photographic universe. */
.universe-body{height:100dvh;overflow:hidden;background:#112329;color:#ecf4f4}.universe-body .site-header{height:70px;min-height:0;padding:10px max(4vw,20px);box-sizing:border-box}.universe-body .brand-logo{width:48px;height:48px}.universe-body .site-footer{display:none}.universe-page{height:calc(100dvh - 70px);display:flex;flex-direction:column;padding:22px max(4vw,20px) 14px;box-sizing:border-box;overflow:hidden;background:radial-gradient(ellipse at 45% 45%,#34505b99 0%,#182d35aa 40%,#102128 80%)}.universe-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-shrink:0;position:relative;z-index:3}.universe-heading h1{font:clamp(28px,4vw,48px)/1.1 Anton;margin:0 0 7px}.universe-heading p{font:12px/1.4 Arial;color:#bdcdd1;margin:0}.universe-heading>a{font:12px Arial;color:#d7e6e9;text-underline-offset:5px;white-space:nowrap}.image-universe{position:relative;flex:1;min-height:0;margin:8px -10px;isolation:isolate}.image-universe::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:2;background:radial-gradient(ellipse at center,transparent 45%,#11232938 100%)}.universe-photo{position:absolute;width:clamp(65px,11vw,170px);height:clamp(50px,11vh,115px);transform:translate(-50%,-50%) rotate(var(--angle));z-index:1;transition:filter .9s,opacity .9s;outline-offset:7px}.universe-photo>span{display:flex;width:100%;height:100%;align-items:center;justify-content:center;animation:universe-drift var(--duration) ease-in-out var(--delay) infinite alternate;transition:scale 1.8s cubic-bezier(.2,.7,.2,1),opacity 1.8s;opacity:var(--depth)}.universe-photo img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 9px 12px #0006);border-radius:2px}.universe-photo.is-near{z-index:4}.universe-photo.is-near>span{scale:1.4;opacity:1}.universe-photo:hover,.universe-photo:focus-visible{z-index:5}.universe-photo:hover>span,.universe-photo:focus-visible>span{scale:1.35;opacity:1;animation-play-state:paused}.universe-photo:focus-visible{outline:2px solid #a5e5ee}.universe-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;font:11px Arial;color:#aabfc5;flex-shrink:0;padding-top:8px;z-index:3}.universe-bottom button{border:1px solid #647f89;border-radius:30px;background:transparent;color:#d8e6e9;padding:8px 14px;font:11px Arial;cursor:pointer}.universe-bottom a{color:inherit;text-underline-offset:4px}.universe-dialog{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:65px 8vw 35px;border:0;background:transparent;color:white;overflow:hidden}.universe-dialog::backdrop{background:#09171cdf;backdrop-filter:blur(8px)}.universe-dialog figure{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0;pointer-events:none}.universe-full{display:block;width:auto;height:auto;max-width:84vw;max-height:calc(100dvh - 210px);object-fit:contain;pointer-events:auto;box-shadow:0 15px 60px #0006}.universe-dialog figcaption{text-align:center;padding-top:20px;pointer-events:auto}.universe-dialog h2{font:22px/1.2 Arial;margin:0 0 8px}.universe-dialog p{font:13px/1.5 Arial;margin:0;color:#d4e1e4}.universe-dialog figcaption>span{display:block;font:11px Arial;color:#9db4bc;margin-top:10px}.universe-close{position:absolute;right:25px;top:20px;border:1px solid #809da6;background:#182f37;color:white;padding:10px 17px;border-radius:30px;cursor:pointer}.universe-looking .universe-photo>span,.universe-still .universe-photo>span{animation-play-state:paused}.universe-looking .universe-photo{opacity:.45}.universe-still .universe-photo>span{transition:none}.cursor-ready:has(.universe-dialog[open]),.cursor-ready:has(.universe-dialog[open]) *{cursor:auto!important}@keyframes universe-drift{0%{transform:translate(-6px,var(--drift)) scale(.94)}100%{transform:translate(7px,calc(var(--drift) * -1)) scale(1.06)}}
@media(max-width:600px){.universe-body .site-header{height:58px}.universe-body .brand-logo{height:38px;width:38px}.universe-page{height:calc(100dvh - 58px);padding:15px 16px 12px}.universe-heading{gap:10px}.universe-heading h1{font-size:30px}.universe-heading p{font-size:10px;max-width:200px}.universe-heading>a{font-size:10px}.universe-photo{width:16vw;height:9vh}.universe-photo.is-near>span{scale:1.3}.universe-bottom{gap:8px;font-size:9px}.universe-bottom>span{max-width:100px;line-height:1.4}.universe-bottom button{font-size:10px;padding:8px 10px}.universe-dialog{padding:60px 5vw 20px}.universe-full{max-width:90vw;max-height:calc(100dvh - 220px)}.universe-dialog h2{font-size:19px}.universe-dialog p{font-size:12px}}
@media(prefers-reduced-motion:reduce){.universe-photo>span{animation:none!important;transition:none!important}}

/* Raumwelten — an inhabitable photographic exhibition, drawn in space. */
.universe-body{background:#e9e9e2;color:#183239}
.universe-page{background:#e9e9e2;padding:22px 4vw 15px}
.universe-heading{align-items:center}
.universe-heading h1{font-size:clamp(40px,5vw,65px);letter-spacing:-.025em;color:#183239;margin:0 0 8px}
.universe-heading p{color:#476068;font-size:12px}
.universe-heading>a{color:#183239}
.image-universe{margin:4px 0 8px;overflow:visible;perspective:1200px;background:none}
.image-universe::before,.image-universe::after{display:none}
.space-linework{position:absolute;inset:3% 3% 2%;color:#63858c;opacity:.29;pointer-events:none}
.space-linework svg{width:100%;height:100%}
.universe-photo{left:var(--x)!important;top:var(--y)!important;width:var(--w);height:var(--h);border-radius:0;animation:none;transform:translate(-50%,-43%) scale(.93);opacity:0;transition:opacity .85s ease,transform 1.3s cubic-bezier(.16,1,.3,1);z-index:1;outline-offset:7px}
.universe-photo[hidden]{display:none}
.universe-photo.is-visible{opacity:1;transform:translate(-50%,-50%) scale(1)}
.universe-photo>span{display:block;position:relative;width:100%;height:100%;border-radius:0;opacity:1;scale:1;box-shadow:0 14px 24px -15px #172b3b80;animation:space-drift 12s ease-in-out var(--float-delay) infinite alternate;transition:scale .65s cubic-bezier(.16,1,.3,1)}
.universe-photo img{width:100%;height:100%;display:block;object-fit:cover;border-radius:0;filter:none;mask-image:none;-webkit-mask-image:none}
.universe-photo>span::after{content:"";position:absolute;inset:-7px;border:1px solid #456c7760;clip-path:polygon(0 0,12px 0,12px 1px,1px 1px,1px 12px,0 12px,0 0,100% 0,100% 12px,calc(100% - 1px) 12px,calc(100% - 1px) 1px,calc(100% - 12px) 1px,calc(100% - 12px) 0,100% 0,100% 100%,calc(100% - 12px) 100%,calc(100% - 12px) calc(100% - 1px),calc(100% - 1px) calc(100% - 1px),calc(100% - 1px) calc(100% - 12px),100% calc(100% - 12px),100% 100%,0 100%,0 calc(100% - 12px),1px calc(100% - 12px),1px calc(100% - 1px),12px calc(100% - 1px),12px 100%,0 100%)}
.universe-photo small{position:absolute;left:0;top:calc(100% + 10px);font:10px/1.3 Arial;color:#3d5860;white-space:nowrap;opacity:.9;pointer-events:none}
.universe-photo[data-slot="0"]{z-index:2}
.universe-photo[data-slot="0"] small{font-size:12px;color:#183239}
.universe-photo:hover,.universe-photo:focus-visible{z-index:5;outline-color:#225c6c}
.universe-photo:hover>span,.universe-photo:focus-visible>span{scale:1.055;animation-play-state:paused;opacity:1}
.universe-bottom{color:#3d5860;border-top:1px solid #9eafb040;padding-top:12px;gap:22px}
.universe-bottom>span{margin-right:auto}
.universe-bottom button{color:#183239;border-color:#69838a;background:transparent;padding:9px 15px;font-size:11px}
.universe-bottom #universe-next{border:0;border-bottom:1px solid #69838a;border-radius:0;padding:8px 0}
.universe-looking .universe-photo{opacity:.3}
.universe-looking .universe-photo>span,.universe-still .universe-photo>span{animation-play-state:paused}
.universe-body ::selection{background:#225c6c;color:#fff}
@keyframes space-drift{from{transform:translateY(-4px)}to{transform:translateY(5px)}}
@media(max-width:600px){.universe-page{padding:18px 20px 13px}.universe-heading h1{font-size:40px}.universe-heading p{font-size:10px;max-width:160px}.universe-heading>a{font-size:10px}.image-universe{margin:10px 0 8px}.space-linework{inset:0 -8%;opacity:.25}.universe-photo{width:var(--w);height:var(--h)}.universe-photo small,.universe-photo[data-slot="0"] small{font-size:9px;white-space:normal;max-width:100%;top:calc(100% + 8px)}.universe-bottom{gap:12px;flex-wrap:wrap}.universe-bottom>span{flex-basis:100%;max-width:none;font-size:10px}.universe-bottom button{font-size:10px;padding:7px 10px}.universe-bottom a{margin-left:auto}}
@media(prefers-reduced-motion:reduce){.universe-photo,.universe-photo>span{transition:none!important;animation:none!important}}

/* A living interior plan, suspended beneath the photographic planes. */
.universe-body,.universe-page{background:#e0e9e8}
.universe-page{background:radial-gradient(ellipse at 43% 40%,#f5f5ed 0%,#e0e9e8 70%,#d4e1e2 100%)}
.space-linework{inset:0;opacity:1;color:#487e89}
.plan-dimensions{stroke-width:.65;opacity:.24}
.plan-walls{stroke-width:1.3;opacity:.44}
.plan-furniture{stroke-width:.8;opacity:.34}
.plan-walls path,.plan-furniture path{stroke-dasharray:100;animation:plan-build 22s ease-in-out var(--build-delay) infinite}
.photo-tethers{stroke:#527e87;stroke-width:.75;opacity:.45}
.photo-tethers circle{fill:#e0e9e8;stroke-width:1}
.photo-tethers g{transition:stroke .4s,opacity .4s}
.photo-tethers g.is-active{stroke:#163f4c;stroke-width:1.4;opacity:1}
.universe-photo{transform:translate(-50%,-50%);transition:opacity 1.4s ease;pointer-events:none}
.universe-photo.is-visible{transform:translate(-50%,-50%);pointer-events:auto}
.universe-photo>span{animation-duration:16s;box-shadow:0 17px 25px -17px #173b4c99}
.universe-photo>span::after{border-color:#527b8538}
.universe-still .plan-walls path,.universe-still .plan-furniture path,.universe-looking .plan-walls path,.universe-looking .plan-furniture path{animation-play-state:paused}
@keyframes plan-build{0%,100%{stroke-dashoffset:100;opacity:.15}26%,68%{stroke-dashoffset:0;opacity:1}90%{stroke-dashoffset:-100;opacity:.15}}
@media(max-width:600px){.space-linework{inset:0}.plan-walls{stroke-width:1.7;opacity:.4}.plan-furniture{stroke-width:1.1}.photo-tethers{stroke-width:1}}
@media(prefers-reduced-motion:reduce){.plan-walls path,.plan-furniture path{animation:none;stroke-dashoffset:0}}

/* The homepage keeps its original diagonal window; only its contents become a photo wall. */
.hero-fold-link{display:block;container-type:inline-size;text-decoration:none}
.mini-fold-track{position:absolute;inset:0 auto 0 0;display:flex;width:max-content;animation:mini-fold-flow 304.39s linear infinite;will-change:transform}
.mini-fold{display:block;flex:0 0 190px;width:190px;height:100%;padding-right:5px;overflow:hidden}
.hero-image .mini-fold img{width:100%;height:100%;object-fit:cover;object-position:center;animation:none;transform:none;pointer-events:none}
.mini-fold-label{position:absolute;bottom:25px;left:15%;padding:8px 12px;background:#f6f5f1;color:#183239;font-size:11px;z-index:2}.mini-fold-label span{margin-left:20px}
@keyframes mini-fold-flow{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){.mini-fold-track{animation:none;transform:translateX(0)}}


/* A photographic doorway from projects into the interactive Raumwelten. */
.room-portal{position:relative;isolation:isolate;display:grid;grid-template-columns:1fr 1.12fr;align-items:center;min-height:580px;margin:95px 0 30px;background:#37a4c1;color:#102f39;text-decoration:none;overflow:hidden}
.portal-copy{position:relative;z-index:2;padding:55px 0 55px 44px}
.portal-kicker{font:15px/1.4 Arial,sans-serif;display:block;margin-bottom:25px}
.room-portal h2{font:normal clamp(44px,5.4vw,76px)/1.02 Georgia,serif;letter-spacing:-.055em;margin:0 0 25px;color:#102f39}
.room-portal p{font:16px/1.65 Arial,sans-serif;max-width:330px;margin:0 0 30px;color:#102f39}
.portal-action{display:inline-flex;align-items:center;gap:28px;padding:18px 22px;background:#102f39;color:#fff;font:16px/1.2 Arial,sans-serif;transition:background .25s,transform .25s}
.portal-action span{font-size:27px;line-height:1;transition:transform .3s}
.portal-scene{height:520px;position:relative;perspective:1000px;min-width:0}
.portal-frame{position:absolute;inset:34px 36px 70px 26px;border:1px solid #e5f4ed99;transform:rotateY(-24deg);box-shadow:24px -19px 0 -1px #37a4c1,24px -19px 0 0 #e5f4ed55}
.portal-pane{position:absolute;display:block;width:68%;height:63%;top:18%;left:12%;box-shadow:0 25px 35px #102f3933;animation:portal-breathe 9s ease-in-out infinite alternate;transform:translate3d(var(--px),var(--py),0) rotateY(-25deg);transform-origin:left center}
.portal-pane img{width:100%;height:100%;object-fit:cover;display:block}
.portal-pane-back{--px:95px;--py:-60px;filter:brightness(.76);animation-delay:-6s}
.portal-pane-middle{--px:43px;--py:0px;filter:brightness(.9);animation-delay:-3s}
.portal-pane-front{--px:-14px;--py:62px}
.portal-caption{position:absolute;bottom:15px;left:0;right:0;text-align:center;font:13px/1.5 Arial,sans-serif;color:#102f39}
.room-portal:hover .portal-action,.room-portal:focus-visible .portal-action{background:#081d25;transform:translateY(-3px)}
.room-portal:hover .portal-action span{transform:translate(3px,-3px)}
.room-portal:focus-visible{outline:3px solid #fff;outline-offset:7px}
@keyframes portal-breathe{to{transform:translate3d(calc(var(--px) - 13px),calc(var(--py) - 12px),12px) rotateY(-15deg)}}
.motion-off .portal-pane{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.portal-pane{animation:none}.portal-action,.portal-action span{transition:none}}
@media(max-width:700px){.room-portal{grid-template-columns:1fr;margin-top:60px}.portal-copy{padding:35px 28px 0}.room-portal h2{font-size:54px}.portal-kicker{margin-bottom:18px}.portal-scene{height:410px;margin:8px 20px 20px}.portal-pane{height:58%;width:62%;left:12%}.portal-pane-back{--px:65px;--py:-25px}.portal-pane-middle{--px:32px;--py:12px}.portal-pane-front{--px:0px;--py:49px}.portal-frame{inset:25px 25px 45px}.portal-caption{bottom:0}.room-portal p{font-size:15px}.portal-action{padding:16px 20px}}

/* Editorial invitation: the number describes the actual photo collection. */
@media(min-width:901px){.hero{grid-template-columns:34% 44% 22%}}
.hero-rail.room-editorial{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:center;gap:27px;padding:30px 25px 30px 65px;color:#102f39;background:#37a4c1}
.rail-plan{position:absolute;width:115%;height:110%;left:0;top:-5%;z-index:-1;opacity:.23;pointer-events:none;transform:translate(var(--plan-x,0px),var(--plan-y,0px)) rotate(-9deg);transition:transform .65s ease-out}
.rail-plan-drawing{transform-origin:center;animation:plan-drift 24s ease-in-out infinite alternate}
.plan-walls,.plan-furniture{stroke-dasharray:1;animation:plan-draw 16s ease-in-out infinite}.plan-furniture{animation-delay:-4s}
.rail-collection{display:flex;flex-direction:column;gap:7px}
.rail-count{font:clamp(85px,8.5vw,135px)/.9 Anton,Impact,sans-serif;letter-spacing:-.055em;color:#102f39}
.rail-count-label{font:14px/1.35 Arial,sans-serif}
.room-editorial h2{font:normal clamp(27px,2.7vw,43px)/1.1 Georgia,serif;letter-spacing:-.04em;margin:0;color:#102f39}
.rail-enter{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #102f3955;padding:18px 0 4px;font:15px/1.35 Arial,sans-serif;text-decoration:none;min-height:62px}
.rail-enter-arrow{font-size:35px;transition:transform .25s}.rail-enter:hover .rail-enter-arrow{transform:translate(4px,-4px)}.rail-enter:focus-visible{outline:2px solid #102f39;outline-offset:6px}
@keyframes plan-drift{to{transform:translate(0,14px) rotate(7deg)}}
@keyframes plan-draw{0%,100%{stroke-dashoffset:1;opacity:.35}30%,70%{stroke-dashoffset:0;opacity:1}}
.motion-off .rail-plan-drawing,.motion-off .plan-walls,.motion-off .plan-furniture{animation-play-state:paused}
@media(max-width:900px){.hero-rail.room-editorial{grid-column:1/-1;margin:0;padding:28px 5vw;display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:24px}.hero:has(.room-editorial){height:auto}.hero:has(.room-editorial) .hero-copy,.hero:has(.room-editorial) .hero-image{min-height:490px}.rail-collection{flex-direction:row;align-items:center;gap:18px}.rail-count{font-size:80px}.rail-plan{width:100%;height:250%;top:-80%}.room-editorial h2{font-size:32px}}
@media(max-width:600px){.hero:has(.room-editorial) .hero-copy{min-height:0}.hero:has(.room-editorial) .hero-image{min-height:340px}.hero-rail.room-editorial{grid-template-columns:1fr 1.3fr;padding:30px 6vw;width:100%;gap:24px 20px}.rail-collection{flex-direction:column;align-items:flex-start;gap:10px}.rail-count{font-size:86px}.rail-count-label{font-size:13px}.room-editorial h2{font-size:32px}.rail-enter{grid-column:1/-1;font-size:16px}.rail-enter br{display:none}.rail-enter span:first-child{display:flex;gap:4px}}
@media(prefers-reduced-motion:reduce){.rail-plan-drawing,.plan-walls,.plan-furniture{animation:none}.rail-plan{transition:none}.plan-walls,.plan-furniture{stroke-dashoffset:0}}

.marquee-nav{padding:0}.marquee-nav .marquee-track{gap:0;animation-duration:55s;font-size:19px;letter-spacing:.065em;font-weight:500}.marquee-links{display:flex;align-items:center;gap:35px;padding-right:35px;flex-shrink:0}.marquee-links a{display:block;padding:18px 0;color:#102f39;text-decoration:none;white-space:nowrap;min-height:56px}.marquee-links>span{color:#102f3980;font-weight:400}.marquee-links a:hover{text-decoration:underline;text-underline-offset:6px}.marquee-nav:focus-within .marquee-track,.marquee-nav:hover .marquee-track{animation-play-state:paused}.marquee-links a:focus-visible{outline-offset:-3px;outline:2px solid #102f39}
@media(max-width:600px),(prefers-reduced-motion:reduce){.marquee-nav .marquee-track{animation:none;width:100%}.marquee-links{flex-wrap:wrap;gap:0 19px;justify-content:center;padding:9px 20px;width:100%}.marquee-links a{font-size:17px;padding:8px 0;min-height:40px}.marquee-links>span{display:none}.marquee-links[aria-hidden]{display:none}}

.social-presence{margin-top:26px;padding-top:20px;border-top:1px solid #ffffff40}.social-presence>p{margin:0 0 12px;font-size:15px}.social-presence nav{display:flex;flex-wrap:wrap;gap:12px 23px}.social-presence a{display:inline-flex;align-items:center;gap:9px;min-height:44px;text-decoration:none;font-size:16px}.social-presence a:hover{text-decoration:underline;text-underline-offset:5px}.social-presence svg{width:20px;height:20px;flex:none}.social-presence small{display:block;font-size:11px;line-height:1.6;opacity:.8;margin-top:10px}

/* Architectural masthead and aligned calls to action. */
.marquee-nav .marquee-links a{color:#fff}.marquee-nav .marquee-links>span{color:#ffffff99}.marquee-nav .marquee-links a:focus-visible{outline-color:#fff}
.site-header .header-dimension{position:relative;display:flex;align-items:center;justify-content:space-between;flex:1;margin:0 40px 0 22px;height:22px;border-top:1px solid #ffffff55;transform:translateY(11px)}
.header-dimension i{height:13px;width:1px;background:#ffffff88;transform:translateY(-18px)}.header-dimension i:nth-child(2){height:7px}
.site-header .header-signature{display:flex;flex-direction:column;align-items:flex-start;gap:7px;width:auto;margin:0;padding:0 4.5vw 0 0;color:#fff;letter-spacing:normal}
.header-signature>span{font:normal 25px/1.1 Georgia,serif;letter-spacing:-.025em}.header-signature small{font:10px/1.3 Arial,sans-serif;letter-spacing:.08em}
.social-presence small a.meta-privacy-link{display:inline;font:inherit;min-height:0;text-decoration:underline;text-underline-offset:3px}
@media(min-width:901px){.hero{grid-template-columns:34% 40% 26%}.hero-copy{padding-bottom:115px}.hero-rail.room-editorial{padding:25px 25px 115px 60px;gap:25px}.hero-copy>.button,.room-editorial>.rail-enter{position:absolute;bottom:36px;width:244px;height:56px;min-height:56px;display:flex;justify-content:center;align-items:center;padding:14px 18px;font:700 11px/1.3 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;border:1px solid #d9ed65;background:#d9ed65;color:#141515;white-space:nowrap}.hero-copy>.button{left:4.5vw;gap:15px}.room-editorial>.rail-enter{left:60px;gap:0}.hero-copy>.button:hover,.room-editorial>.rail-enter:hover{background:#141515;border-color:#141515;color:#fff}}
@media(max-width:900px){.room-editorial>.rail-enter{background:#d9ed65;border:1px solid #d9ed65;color:#141515;justify-content:center;padding:14px 18px;font:700 11px/1.3 Arial,sans-serif;letter-spacing:.14em;min-height:56px;text-transform:uppercase;text-align:center;white-space:normal}}
@media(max-width:600px){.site-header .header-dimension{margin:0 17px 0 0;height:16px}.site-header .header-signature{padding-right:6vw}.header-signature>span{font-size:18px}.header-signature small{font-size:8px;letter-spacing:.03em}.room-editorial>.rail-enter{width:244px;max-width:100%;justify-self:start}}
@media(max-width:600px){.hero-copy>.button{width:244px;max-width:100%;height:56px;min-height:56px;justify-content:center;gap:15px;padding:14px 18px;font:700 11px/1.3 Arial,sans-serif;letter-spacing:.14em}.room-editorial>.rail-enter{height:56px}}

/* Give the photographs more space and lift the editorial type. */
.room-editorial .rail-count,.room-editorial .rail-count-label,.room-editorial h2{color:#fff}
.room-editorial .rail-count{font-size:clamp(100px,10vw,154px)}
.room-editorial .rail-count-label{font-size:16px;line-height:1.4}
.room-editorial h2{font-size:clamp(31px,3vw,47px);line-height:1.12}
.room-editorial>.rail-enter{gap:15px}
@media(min-width:901px){.hero{grid-template-columns:32% 44% 24%}.hero-rail.room-editorial{padding-left:50px;padding-right:16px}.room-editorial>.rail-enter{left:50px;gap:15px}}
@media(max-width:600px){.room-editorial .rail-count{font-size:96px}.room-editorial .rail-count-label{font-size:14px}.room-editorial h2{font-size:34px}.room-editorial>.rail-enter{gap:15px}}

.projects-intro .projects-selection{border-left:2px solid #37a4c1;padding-left:24px;max-width:460px}.projects-selection>span{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#b5dde6;margin-bottom:13px}.projects-intro .projects-selection p{margin:0;font-size:18px;line-height:1.6}@media(max-width:600px){.projects-intro .projects-selection{padding-left:18px}.projects-intro .projects-selection p{font-size:16px}}

.floorplan-dialog .comparison-images.plan-pair{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.floorplan-dialog .comparison-images figure{margin:0;min-width:0}.floorplan-dialog .comparison-images figure img{display:block;width:100%;height:60vh;object-fit:contain;background:#fff;padding:12px}.floorplan-dialog .comparison-images figcaption{font:14px/1.5 Arial;padding:15px 0;color:#fff}.floorplan-dialog .plan-estimate-note{grid-column:1/-1;font:12px/1.6 Arial;color:#cfdbde;margin:0}.floorplan-dialog .comparison-images a:focus-visible{outline:3px solid #d9ed65;outline-offset:3px}@media(max-width:700px){.floorplan-dialog .comparison-images.plan-pair{grid-template-columns:1fr}.floorplan-dialog .comparison-images figure img{height:auto;max-height:65vh}.floorplan-dialog .comparison-images figcaption{font-size:12px}}

/* Aubergine connects the gallery invitation to Raumwelten. */
.room-portal{background:#39243b;color:#fff}.portal-kicker,.portal-copy p,.portal-action{color:#fff}.portal-action{border-color:#ffffff66}
.room-portal .portal-copy h2{color:#faf7ed}.room-portal .portal-action{background:#faf7ed;color:#39243b;border:1px solid #faf7ed}.room-portal:hover .portal-action{background:#e6dce9;color:#39243b}
