.studio-video-widget{z-index:45;color:#f8f6ef;width:124px;transition:opacity .2s,visibility .2s;position:fixed;bottom:24px;right:24px}.studio-video-widget.is-blocked{opacity:0;visibility:hidden;pointer-events:none}.studio-video-teaser{aspect-ratio:3/4;cursor:pointer;transform-origin:100% 100%;background:#30372c;border:1px solid #ffffff80;border-radius:10px;width:100%;padding:0;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s;display:block;position:relative;overflow:hidden;box-shadow:0 8px 32px #151d1845}.studio-video-teaser>img{object-fit:cover;object-position:center 15%;transform-origin:50% 15%;width:100%;height:100%;display:block;transform:scale(1.25)}.studio-video-teaser:after{content:"";background:linear-gradient(#0000 35%,#152014d9);position:absolute;inset:0}.studio-video-play{z-index:1;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff20;border:1px solid #ffffffb0;border-radius:50%;place-items:center;width:32px;height:32px;display:grid;position:absolute;top:12px;left:12px}.studio-video-teaser-copy{z-index:1;text-align:left;font-size:12px;line-height:1.35;position:absolute;bottom:12px;left:12px;right:8px}.studio-video-teaser-copy small{opacity:.8;white-space:nowrap;align-items:center;gap:5px;margin-top:5px;font-size:10px;display:flex}.studio-video-dismiss{z-index:2;color:#fff;cursor:pointer;background:#30372c;border:1px solid #c5cbbb;border-radius:50%;place-items:center;width:36px;height:36px;display:grid;position:absolute;top:-12px;right:-12px}.studio-video-widget button:focus-visible{outline-offset:4px;outline:2px solid #8d9b77}.studio-video-widget.is-expanded{width:min(320px,100vw - 32px);bottom:100px}.studio-video-panel{transform-origin:100% 100%;background:#30372c;border:1px solid #b4bca5;border-radius:12px;animation:.3s cubic-bezier(.2,.8,.2,1) studio-video-open;overflow:hidden;box-shadow:0 16px 70px #111c1855}.studio-video-heading{justify-content:space-between;align-items:center;gap:10px;padding:14px 10px 14px 16px;font-size:16px;line-height:1.3;display:flex}.studio-video-heading>span{flex:1;min-width:0}.studio-video-heading small{opacity:.75;margin-top:5px;font-size:10px;display:block}.studio-video-heading button{cursor:pointer;width:40px;height:40px;color:inherit;flex:none;place-items:center;display:grid}.studio-video-panel video{aspect-ratio:9/16;object-fit:contain;background:#111;width:100%;height:auto;max-height:calc(100dvh - 235px);display:block}.studio-video-caption{opacity:.75;padding:12px 16px;font-size:10px;display:block}.studio-video-error{padding:12px 16px;font-size:12px}.studio-video-error a{text-decoration:underline}@media (hover:hover) and (pointer:fine){.studio-video-teaser:hover{transform:scale(1.09)translateY(-3px);box-shadow:0 15px 42px #151d1860}}@media (max-width:1000px){.studio-video-widget{right:18px;bottom:calc(102px + env(safe-area-inset-bottom));width:100px}.studio-video-widget.is-expanded{bottom:calc(100px + env(safe-area-inset-bottom))}}@media (max-width:600px){.studio-video-widget{width:90px;right:16px}.studio-video-teaser-copy{font-size:10px;bottom:9px;left:8px}.studio-video-teaser-copy small{font-size:9px}.studio-video-play{width:28px;height:28px;top:8px;left:8px}.studio-video-dismiss{top:-14px;right:-9px}.studio-video-widget.is-expanded{width:min(300px,100vw - 32px)}.studio-video-panel video{max-height:calc(100dvh - 245px)}}@keyframes studio-video-open{0%{opacity:0;transform:translateY(14px)scale(.9)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.studio-video-widget,.studio-video-teaser{transition:none}.studio-video-panel{animation:none}.studio-video-teaser:hover{transform:none}}
.privacy-banner{z-index:150;color:#374031;background:#f6f5f1;border:1px solid #b5bcaa;width:min(570px,100vw - 48px);max-height:calc(100dvh - 48px);padding:26px;position:fixed;bottom:24px;left:24px;overflow:auto;box-shadow:0 14px 60px #1d271a30}.privacy-banner h2{margin:0 0 12px;font-size:22px;font-weight:400}.privacy-banner p{margin:0 0 16px;font-size:13px;line-height:1.6}.privacy-banner a{text-underline-offset:3px;text-decoration:underline}.privacy-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.privacy-actions button{white-space:normal;min-height:44px;font-size:12px}.cookie-option input{accent-color:#374031;flex:none;width:22px;height:22px}.cookie-option h3{margin-bottom:8px;font-size:16px}.cookie-option a{font-size:12px;text-decoration:underline}.cookie-dialog{max-height:90dvh;overflow-y:auto}.privacy-banner button:disabled{opacity:.5;cursor:wait}@media (max-width:600px){.privacy-banner{width:calc(100vw - 24px);padding:20px;bottom:12px;left:12px}.privacy-actions>.dark-button,.privacy-actions>.outline-button{flex:45%;padding:12px}.privacy-actions>.text-link{text-align:center;width:100%}}@media (prefers-reduced-motion:no-preference){.privacy-banner{animation:.3s ease-out privacy-appear}@keyframes privacy-appear{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}}.footer-credit{max-width:260px;font-size:12px;line-height:1.6;text-decoration:none}.footer-credit:hover{text-decoration:underline}
.project-heart{color:#343b32;min-width:64px;min-height:44px;font:inherit;cursor:pointer;background:#f6f5f1ed;border:1px solid #dbdcd5;border-radius:99px;justify-content:center;align-items:center;gap:7px;padding:10px 13px;font-size:13px;transition:color .25s,background .25s,transform .25s;display:inline-flex}.project-heart:hover{background:#fff;transform:translateY(-2px)}.project-heart:disabled{cursor:wait;opacity:.6}.project-heart.is-liked{color:#743d31;background:#f6ece6}.project-heart.is-liked svg{fill:currentColor;animation:.4s heart-pop}.project-heart:focus-visible,.case-photo button:focus-visible{outline-offset:4px;outline:2px solid #984b34}.catalog-card{position:relative}.catalog-heart{z-index:3;position:absolute;top:16px;right:16px}.header-favorites{color:#743d31;flex:none;justify-content:center;align-items:center;gap:5px;min-width:42px;min-height:44px;font-size:12px;display:inline-flex}.favorites-error{z-index:110;background:#fff;align-items:center;gap:14px;width:min(92vw,550px);padding:18px;font-size:14px;display:flex;position:fixed;top:100px;left:50%;transform:translate(-50%);box-shadow:0 6px 30px #0002}.favorites-error button{cursor:pointer;text-decoration:underline}.favorites-page{min-height:65vh}.favorites-page h1{letter-spacing:-.04em;margin:28px 0 36px;font-size:clamp(36px,5vw,76px);font-weight:400;line-height:1.1}.favorites-count{color:#686c63;margin:0 0 30px}.favorites-empty{flex-direction:column;align-items:flex-start;gap:22px;max-width:620px;padding:65px 0 90px;display:flex}.favorites-empty h2{font-size:32px}.favorites-empty p{line-height:1.7}.detailed-case-intro{padding-top:32px!important;padding-bottom:44px!important}.case-title-row{justify-content:space-between;align-items:flex-end;gap:20px;margin-top:52px;display:flex}.case-title-row h1{letter-spacing:-.05em;max-width:1000px;margin:22px 0 0;font-size:clamp(35px,5.1vw,76px);font-weight:400;line-height:1.07}.case-title-row>.project-heart{flex:none;margin-bottom:8px}.case-intro-bottom{gap:28px;margin-top:34px;display:grid}.case-intro-bottom>p{color:#686c63;max-width:540px;font-size:18px;line-height:1.65}.case-intro-bottom>div{flex-wrap:wrap;align-items:center;gap:15px 24px;font-size:14px;display:flex}.case-intro-bottom>div>span:first-child{font-size:24px}.case-intro-bottom .text-link{min-height:44px;color:inherit;background:0 0;border-bottom:1px solid #8c9085;border-radius:0;padding:0}.case-hero-image{padding:0 var(--gutter,4.4vw);max-width:1720px;margin:auto}.case-photo{min-width:0;margin:0}.case-photo>button{cursor:zoom-in;background:#e8e7e1;width:100%;display:block;position:relative;overflow:hidden}.case-photo img{width:100%;height:auto;transition:filter .3s;display:block}.case-photo>button:hover img{filter:brightness(.96)}.case-photo-expand{color:#fff;background:#24292399;border-radius:50%;place-items:center;width:42px;height:42px;display:grid;position:absolute;bottom:18px;right:18px}.case-photo figcaption{color:#777b72;gap:20px;padding:13px 0 0;font-size:12px;line-height:1.5;display:flex}.case-photo figcaption>span{text-align:right;max-width:70%;margin-left:auto}.case-room-nav{z-index:35;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:0 var(--gutter,4.4vw);background:#f6f5f1f5;border-bottom:1px solid #d7d9d0;margin-top:30px;position:sticky;top:0}.case-room-nav>div{scrollbar-width:thin;gap:28px;max-width:1560px;margin:auto;display:flex;overflow-x:auto}.case-room-nav a{border-bottom:2px solid #0000;flex:none;min-height:55px;padding:20px 0 17px;font-size:14px;transition:border .2s}.case-room-nav a[aria-current],.case-room-nav a:hover{border-bottom-color:#363e36}.case-story{border-bottom:1px solid #ddded7;gap:26px;display:grid;padding-top:70px!important;padding-bottom:70px!important}.case-story h2{letter-spacing:-.04em;max-width:700px;margin:0 0 30px;font-size:clamp(30px,3.5vw,52px);font-weight:400;line-height:1.15}.case-story p,.case-room-heading p,.case-video-section p{color:#686c63;margin:0 0 20px;font-size:16px;line-height:1.85}.case-story>div{max-width:820px}.case-room,.case-comparison-section,.case-video-section{scroll-margin-top:75px}.case-room-heading{gap:26px;margin-bottom:42px;display:grid}.case-room-heading h2{letter-spacing:-.04em;margin:20px 0 0;font-size:clamp(32px,4vw,58px);font-weight:400;line-height:1.12}.case-room-heading>div:last-child{max-width:690px}.case-photo-grid{grid-template-columns:1fr;align-items:start;gap:30px 22px;display:grid}.case-inline-cta{background:#e9eae2;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:25px;margin-top:55px;padding:32px;display:flex}.case-inline-cta p{font-size:26px;line-height:1.35}.case-inline-cta p span{color:#686c63;margin-top:12px;font-size:15px;display:block}.case-compare{max-width:950px;margin:40px auto 0}.case-compare-images{aspect-ratio:4/3;background:#ddd;position:relative;overflow:hidden}.case-compare-images>img{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.case-compare-control{align-items:center;gap:25px;margin-top:22px;font-size:14px;display:flex}.case-compare-control input{accent-color:#363e36;cursor:ew-resize;flex:1;min-width:80px;height:36px}.case-compare>p{color:#777b72;margin-top:8px;font-size:12px}.case-video-section{background:#e9eae2;gap:36px;display:grid}.case-video-section h2{letter-spacing:-.04em;margin:22px 0;font-size:clamp(32px,4vw,58px);font-weight:400;line-height:1.1}.case-video-section .video-poster{aspect-ratio:16/9;width:100%}.case-video-section .video-poster>img{object-fit:cover;width:100%;height:100%}.case-faq h2{letter-spacing:-.04em;margin:20px 0 32px;font-size:clamp(32px,4vw,56px);font-weight:400}.case-faq details{border-top:1px solid #d4d6cc;padding:22px 0}.case-faq summary{cursor:pointer;font-size:18px;line-height:1.5}.case-faq details p{color:#686c63;max-width:820px;margin-top:20px;font-size:16px;line-height:1.85}.case-lightbox{color:#f6f5f1;flex-direction:column;height:94dvh;max-height:100dvh;background:#191d19!important;border:none!important;border-radius:0!important;gap:10px!important;width:96vw!important;max-width:1600px!important;padding:30px 26px 18px!important;display:flex!important}.case-lightbox-stage{flex:1;justify-content:center;align-items:center;min-height:0;display:flex;position:relative}.case-lightbox-stage>img{object-fit:contain;width:100%;height:100%}.case-lightbox button{cursor:pointer}.case-lightbox-close{z-index:2;background:#191d19cc;border-radius:50%;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:12px;right:14px}.lightbox-prev,.lightbox-next{background:#191d19bb;border-radius:50%;place-items:center;width:46px;height:46px;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-prev{left:8px}.lightbox-next{right:8px}.case-lightbox-caption{justify-content:space-between;gap:15px;font-size:12px;line-height:1.5;display:flex;margin:0!important}.case-lightbox-caption span{color:#b7bdb3;text-align:right}.case-thumbnails{scrollbar-width:thin;flex:none;gap:8px;padding:4px 0;display:flex;overflow-x:auto}.case-thumbnails button{opacity:.5;border:2px solid #0000;flex:none;width:70px;height:56px}.case-thumbnails button[aria-pressed=true]{opacity:1;border-color:#f6f5f1}.case-thumbnails img{object-fit:cover;width:100%;height:100%}@keyframes heart-pop{0%,to{transform:scale(1)}40%{transform:scale(1.3)}70%{transform:scale(.9)}}@media (min-width:641px){.case-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-photo.is-landscape{grid-column:1/-1}.case-photo-grid .is-portrait>button{aspect-ratio:3/4}.case-photo-grid .is-portrait img{object-fit:contain;width:100%;height:100%}.case-intro-bottom{grid-template-columns:1fr 1fr}.case-intro-bottom>div{justify-content:flex-end}.case-story{grid-template-columns:1fr 2fr}.case-room-heading{grid-template-columns:1fr 1fr;gap:8%}.case-video-section{grid-template-columns:1fr 1.4fr;gap:7%}}@media (max-width:640px){.case-title-row{align-items:flex-start;margin-top:30px}.case-title-row .project-heart{min-width:48px;margin-top:32px;padding:10px 8px}.case-title-row h1{letter-spacing:-.04em;font-size:34px}.case-intro-bottom>p{font-size:16px}.case-intro-bottom>div{gap:16px}.case-intro-bottom>div .text-link{justify-content:flex-start;width:100%}.case-photo figcaption>span{display:none}.case-hero-image{padding:0}.case-hero-image figcaption{padding-left:24px}.case-room-nav{padding:0 24px}.case-room-nav>div{gap:23px}.case-story{padding-top:45px!important;padding-bottom:45px!important}.case-room-heading{margin-bottom:24px}.case-photo-grid{gap:24px}.case-inline-cta{padding:24px}.case-compare-images{aspect-ratio:3/4}.case-compare-control{gap:12px;font-size:12px}.case-lightbox{height:100dvh;width:100vw!important;padding:52px 10px 12px!important}.case-lightbox-caption{display:block}.case-lightbox-caption>span{text-align:left;margin-top:3px;display:block}.case-thumbnails button{width:58px;height:48px}.site-header:has(.header-favorites){gap:10px}.site-header:has(.header-favorites)>.header-contact{display:none}.header-favorites{margin-left:auto}.favorites-page h1{font-size:38px}.catalog-heart{top:12px;right:12px}}@media (prefers-reduced-motion:reduce){.project-heart,.case-photo img{transition:none}.project-heart.is-liked svg{animation:none}}.is-design .case-hero-image .is-portrait{max-width:780px;margin-inline:auto}@media (min-width:641px){.is-design .case-photo-grid.has-odd-portraits .is-portrait:nth-last-child(1 of .is-portrait){grid-column:1/-1;justify-self:center;width:calc(50% - 11px)}}
