/* Single-path opening: the SVG alone paints the veil. */
html{scrollbar-gutter:stable}.archive-page .progress{left:2vw}#menu>[data-catalog]{display:block;font-family:'Bodoni Moda',serif;font-size:clamp(36px,5vw,80px);font-weight:400;line-height:1.12;text-align:left;padding:0;margin:0}
.loader{background:transparent;mask:none!important;-webkit-mask:none!important;transform:none;isolation:auto;will-change:auto;overflow:hidden}.portal-veil{position:absolute;inset:0;width:100%;height:100%;fill:#b6cfd9;pointer-events:none}.loader-content{position:relative;z-index:1}
.brand-orbit{width:168px;height:168px}.language-switch{display:flex;gap:9px;align-items:center;margin-bottom:17px;font-size:13px;letter-spacing:1px;line-height:1.5}.language-switch a{opacity:.52;padding:4px 0;min-width:24px;text-align:center}.language-switch a[aria-current]{opacity:1;border-bottom:1px solid}.language-switch a:hover{opacity:1}header nav>[data-catalog]{font:inherit;letter-spacing:inherit}header nav{align-items:flex-end}.brand-ring{width:100%;height:100%}
.intro{position:relative;margin-top:-38vw!important;border-radius:50% 50% 0 0/50vw 50vw 0 0!important;padding:0 8vw 100px!important;min-height:0;overflow:visible;z-index:5;background:var(--blue,#b6cfd9)}.intro-arc{display:block;width:100vw;height:57.5vw;max-width:none;margin-left:-8vw;overflow:visible;pointer-events:none}.intro-arc text{font-family:'Bodoni Moda',serif;font-size:38px;letter-spacing:1px;fill:var(--ink);word-spacing:4px}.intro-content{margin-top:-27vw;position:relative;padding-top:0}.intro h2{margin-top:35px}.intro-copy{margin:35px auto 0;max-width:530px;line-height:1.9}
.archive-page{background:#edf0ec}.portfolio-heading{display:block;position:relative;min-height:106svh;padding:200px 8vw 100px;overflow:hidden;background:#b6cfd9}.portfolio-art{position:absolute;right:0;top:0;width:59%;height:100%;overflow:hidden;border-radius:46% 0 0 0}.portfolio-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#172c3533,transparent)}.portfolio-art img{width:100%;height:100%;object-fit:cover;object-position:60% center}.portfolio-heading-copy{position:relative;z-index:1;pointer-events:none;max-width:750px}.portfolio-heading-copy a{pointer-events:auto}.portfolio-heading .eyebrow{font-size:13px;margin-bottom:45px}.portfolio-heading h1{font-size:clamp(90px,11vw,180px);line-height:.94;letter-spacing:-.045em;margin:0}.portfolio-heading h1 em{font-size:.98em;line-height:1.25}.portfolio-intro{margin-top:42px;display:block;max-width:310px}.portfolio-intro p{font-size:16px;line-height:1.8;margin:0}.portfolio-art-caption{position:absolute;right:32px;bottom:32px;z-index:1;color:#fff;font-size:11px;letter-spacing:1px}.portfolio-edition{position:absolute;left:8vw;bottom:35px;font-size:11px;letter-spacing:2px}
.archive-page .project-archive{padding:0 6vw 130px}.archive-page .filter-bar{border-bottom:1px solid #202a3725;margin:0 0 90px;padding:35px 0;gap:25px;justify-content:space-between}.archive-page .filter-bar label{font-size:12px;letter-spacing:1px}.archive-page #project-list{display:block}.archive-page .project-card:nth-child(n){display:grid;grid-template-columns:100px minmax(0,1fr);column-gap:4vw;padding:0 0 90px;margin:0 0 85px;border:0;border-bottom:1px solid #202a3733;position:relative}.archive-page .project-card:last-child{margin-bottom:0}.archive-page .project-card .project-cover{grid-column:2;grid-row:1;width:100%;aspect-ratio:16/9;border-radius:46% 46% 0 0/55% 55% 0 0;isolation:isolate;background:#d3dad9;transition:border-radius 1.1s cubic-bezier(.2,.7,.2,1);overflow:hidden}.archive-page .project-card:nth-child(even) .project-cover{border-radius:0 0 46% 0/0 0 65% 0}.archive-page .project-card:hover .project-cover{border-radius:0}.archive-page .project-cover img,.archive-page .project-cover.low-native img{position:static;display:block;width:100%;height:100%;object-fit:cover}.archive-page .project-card h2,.archive-page .project-card:nth-child(5n+1) h2{grid-column:2;font-size:clamp(34px,4.4vw,70px);max-width:100%;margin:10px 0 0;font-weight:400;line-height:1.14}.archive-page .card-meta,.archive-page .project-card:nth-child(5n+1) .card-meta{grid-column:2;display:flex;margin:30px 0 4px;gap:20px;font-size:12px}.archive-page .card-open{grid-column:2;margin-top:24px;font-size:12px}.project-index{grid-column:1;grid-row:1/5;align-self:start;position:sticky;top:80px;font-family:'Bodoni Moda',serif;font-size:clamp(45px,5vw,80px);font-weight:400;line-height:1}.archive-page .image-badge{left:24px;bottom:22px;background:#f3f3e9ed;padding:9px 12px;font-size:10px;letter-spacing:1px}.archive-page #project-count{font-size:13px;white-space:nowrap}
.dossier-page .project-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:50px 30px}.dossier-page .gallery-item:first-child{grid-column:auto}.dossier-page .gallery-item:first-child .gallery-open,.dossier-page .gallery-open{padding:0;aspect-ratio:16/9;min-height:0;display:block}.dossier-page .gallery-item:first-child .gallery-open img,.dossier-page .small-photo img,.dossier-page .gallery-open img{width:100%;height:100%;max-width:100%;max-height:none;object-fit:cover}.archival-gallery{padding-top:35px;margin-top:40px;border-top:1px solid #202a3730}.archival-gallery summary{cursor:pointer;font-size:14px;padding:12px 0}.archival-gallery .project-gallery{margin-top:35px}.archival-gallery .gallery-open{background:#e5e6df;display:grid!important;place-items:center;aspect-ratio:16/9}.archival-gallery .gallery-open img{width:auto!important;height:auto!important;max-width:min(100%,var(--native-width,330px))!important;max-height:100%!important;object-fit:contain!important}.image-viewer .viewer-stage img{max-width:var(--image-max-width,100%);max-height:var(--image-max-height,100%)}
.illustrated-location{padding:70px 6vw 90px;display:grid;grid-template-columns:1fr 1.9fr;gap:4vw;align-items:center;background:#f3f3e9}.location-intro{padding-left:2vw}.location-intro h2{font-size:clamp(35px,4.5vw,75px);line-height:1.13;margin:28px 0}.location-intro h2 em{line-height:1.6}.location-intro p{line-height:1.8;font-size:16px}.location-drawing{position:relative;border-radius:50% 50% 0 0/45% 45% 0 0;overflow:hidden;background:#e7ebe4}.location-drawing img{display:block;width:100%;height:auto}.map-attribution{position:absolute;bottom:12px;right:18px;background:#f3f3e9dc;font-size:10px;padding:3px 5px}.contact-page .contact-map{border-top:1px solid #202a3725}.contact-page .page-heading{padding-bottom:50px}.contact-page .page-heading h1{font-size:10vw}.contact-page .contact-layout{padding-top:80px}
.catalog-dialog{width:calc(100vw - 64px);height:calc(100dvh - 64px);inset:32px;margin:0;max-width:none;max-height:none;border:0;border-radius:4px;box-shadow:0 30px 120px #10222850}.catalog-dialog::backdrop{background:#172c3577;backdrop-filter:blur(8px)}.catalog-shell{height:100%;min-height:0;grid-template-columns:34% 66%}.catalog-preview{padding:75px 25px 20px;min-height:0;display:flex;flex-direction:column}.catalog-paper{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.catalog-paper img{height:100%;width:100%;object-fit:contain;max-height:100%}.catalog-info{padding:65px 3vw 35px}.catalog-info h2{font-size:clamp(35px,4vw,65px)}.catalog-pager{flex:none;display:flex;justify-content:space-between;align-items:center;padding-top:16px;gap:20px}.catalog-pager button{font-size:12px;padding:10px 0}.catalog-page-count{font-size:13px}.catalog-close{top:15px;right:15px}dialog[open]{overscroll-behavior:contain}
@media(max-width:991px){.brand-orbit{width:146.4px;height:146.4px}.portfolio-heading{padding-top:220px}.portfolio-heading h1{font-size:12vw}.portfolio-art{width:62%}.portfolio-intro{max-width:250px}.archive-page .project-card:nth-child(n){grid-template-columns:60px minmax(0,1fr)}.illustrated-location{grid-template-columns:1fr;gap:40px}.location-drawing{max-width:100%}}
@media(max-width:700px){.brand-orbit{width:122.4px;height:122.4px}.language-switch{font-size:12px;gap:7px;margin-bottom:11px}header nav{gap:7px}.intro{margin-top:-25vw!important;border-radius:50% 50% 0 0/50vw 50vw 0 0!important;padding-bottom:70px!important}.intro-arc text{font-size:43px;letter-spacing:0}.intro-content{margin-top:-22vw}.intro h2{font-size:13vw;line-height:1.2;margin-top:25px}.intro-copy{font-size:16px}.portfolio-heading{min-height:100svh;padding:195px 8vw 85px}.portfolio-art{width:100%;height:65%;top:auto;bottom:0;border-radius:45% 45% 0 0/30% 30% 0 0;opacity:.83}.portfolio-art:after{background:linear-gradient(#b6cfd933,#10273166)}.portfolio-heading h1{font-size:20vw;line-height:.94}.portfolio-heading .eyebrow{font-size:11px;margin-bottom:24px}.portfolio-intro{color:#fff;text-shadow:0 1px 15px #10273199;margin-top:35px;max-width:280px}.portfolio-intro p{font-size:15px}.portfolio-edition{color:#fff;font-size:10px;bottom:25px}.portfolio-art-caption{display:none}.archive-page .project-archive{padding:0 6vw 70px}.archive-page .filter-bar{margin-bottom:50px;gap:20px;padding:28px 0}.archive-page .project-card:nth-child(n){grid-template-columns:28px minmax(0,1fr);gap:0 14px;padding-bottom:45px;margin-bottom:45px}.project-index{font-size:25px;top:35px}.archive-page .project-card:nth-child(n) .project-cover{aspect-ratio:16/9}.archive-page .project-card h2,.archive-page .project-card:nth-child(5n+1) h2{font-size:28px}.archive-page .card-meta,.archive-page .project-card:nth-child(5n+1) .card-meta{font-size:10px;gap:12px;margin-top:18px}.archive-page .image-badge{left:10px;bottom:10px;font-size:9px;padding:6px}.archive-page .card-open{font-size:10px;margin-top:17px}.dossier-page .project-gallery{grid-template-columns:1fr}.illustrated-location{padding:40px 6vw 60px}.location-intro h2{font-size:11vw}.location-drawing{border-radius:35% 35% 0 0/25% 25% 0 0}.contact-page .page-heading h1{font-size:14vw}.catalog-dialog{width:calc(100vw - 20px);height:calc(100dvh - 32px);inset:16px 10px;border-radius:3px}.catalog-shell{display:grid;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.catalog-info{padding:65px 22px 15px}.catalog-info h2{font-size:31px;margin:8px 0}.catalog-info p:not(.eyebrow){font-size:13px;line-height:1.6}.catalog-info .eyebrow{font-size:10px}.catalog-preview{padding:15px;min-height:0}.catalog-info .catalog-actions{margin-top:6px}.catalog-close{font-size:11px;padding:9px;top:12px;right:12px}.catalog-pager{padding-top:8px}.catalog-pager button{font-size:11px}}
@media(prefers-reduced-motion:reduce){.portfolio-art img,.project-cover img{transform:none!important}.intro-arc text{word-spacing:6px!important}.brand-ring{animation:none}}
