/* A living monogram and a browsable exhibition — spectacle has a clear boundary. */
.hero{min-height:850px}
.hero-intro{margin-top:67px}
.hero-intro h1{letter-spacing:-.08em}
.hero-description{font-size:13px;color:#a5aba8}
.hero-enter{padding:17px 21px;background:#ededE6;color:#101211;border-color:#ededE6;gap:44px}
.hero-enter:hover{background:#141717;color:#fff;border-color:#a8afac}
.sculpture-caption{top:24%;right:4.2%;max-width:177px;line-height:1.6}
.sculpture-caption small{line-height:1.8;margin-top:7px}
.sculpture-control{bottom:14.5%;align-items:flex-start;flex-direction:column;gap:12px}
.sculpture-control .round-button{width:auto;height:66px;border-radius:0;display:flex;align-items:center;gap:17px;padding:0 17px;backdrop-filter:none;background:#0b0e0de6;transition:background .3s,color .3s}
.sculpture-control .round-button:hover,.sculpture-control .round-button[aria-pressed=true]{transform:none;background:#eeeee8;color:#101311}
.transform-symbol{font:35px/1 var(--display);transition:transform .7s}
.round-button[aria-pressed=true] .transform-symbol{transform:rotate(180deg)}
.transform-label{font:8px/1.6 var(--mono);text-align:left;letter-spacing:.03em}.transform-arrow{font-size:24px;margin-left:12px}
.sculpture-control #interaction-hint{font-size:6px;letter-spacing:.09em}
.hero-depth-label{right:4.2%;top:47%;border-left:1px solid #b3c2b766;padding-left:13px}
.hero-peek{position:absolute;left:var(--gutter);bottom:113px;z-index:7;width:350px}
.peek-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px;font-size:7px;color:#a6afa8;letter-spacing:.08em}.peek-label a{color:#eeeee8}
#hero-portals{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;perspective:700px}
.peek-portal{padding:0;position:relative;aspect-ratio:1.5;overflow:hidden;border:1px solid #ffffff38;background:#101312;transition:transform .45s cubic-bezier(.16,1,.3,1),border-color .3s}
.peek-portal img{width:100%;height:100%;object-fit:cover;opacity:.85;transition:transform .6s,opacity .4s}
.peek-portal:after{content:'↗';position:absolute;right:6px;top:3px;font-size:14px;color:#fff;text-shadow:0 1px 4px #000}
.peek-portal>span{position:absolute;bottom:6px;left:7px;font:6px var(--mono);color:#fff;text-shadow:0 1px 4px #000}
.peek-portal:hover,.peek-portal:focus-visible{transform:translateY(-9px) rotateX(9deg);border-color:#fff}.peek-portal:hover img{opacity:1;transform:scale(1.1)}
.hero[data-transformed=true] .hero-depth-label{border-color:#fff}.hero[data-transformed=true] .hero-top .status-dot{box-shadow:0 0 0 5px #fff2,0 0 22px #fff7}
.work{position:relative;padding-top:70px;background:linear-gradient(#080909,#0b0d0d 40%,#080909)}
.work-heading{margin-top:58px;margin-bottom:48px}.work-heading h2{font-size:clamp(62px,7.9vw,140px)}
.gallery-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #fff3;border-bottom:1px solid #fff3;margin-bottom:44px;padding:13px 0;position:sticky;top:0;z-index:12;background:#090b0bf5}
.gallery-filters,.gallery-views{display:flex;gap:5px;align-items:center}
.gallery-toolbar button{padding:12px 14px;font:9px var(--mono);color:#929b96;transition:color .2s,background .2s;white-space:nowrap}
.gallery-toolbar button[aria-pressed=true]{color:#101211;background:#eeeee8}.gallery-toolbar button:hover{color:#fff;background:#ffffff15}.gallery-toolbar button[aria-pressed=true]:hover{color:#101211;background:#fff}
.gallery-toolbar sup{font-size:6px;margin-left:6px}.gallery-views{border-left:1px solid #ffffff25;padding-left:16px}.gallery-views button{font-size:15px}.gallery-views button span{font-size:8px;vertical-align:2px;margin-left:6px}
.portfolio-grid{gap:75px 32px}.portfolio-grid .feature-card[hidden]{display:none!important}
.portfolio-grid:not(.overview):not(.filtered) .feature-card:nth-child(4){grid-column:1/-1;margin-top:25px;margin-bottom:25px;position:relative}
.portfolio-grid:not(.overview):not(.filtered) .feature-card:nth-child(4) .feature-image{aspect-ratio:2.1;min-height:0}
.portfolio-grid:not(.overview):not(.filtered) .feature-card:nth-child(4) .feature-meta h3{font-size:clamp(35px,4.5vw,72px)}
.portfolio-grid:not(.overview):not(.filtered) .feature-card:nth-child(4) .feature-note{max-width:600px}
.portfolio-grid:not(.overview):not(.filtered) .feature-card:nth-child(5){grid-column:1/-1;width:78%;margin:0 0 15px auto}
.portfolio-grid:not(.overview):not(.filtered) .feature-card:nth-child(5) .feature-image{aspect-ratio:1.95}
.portfolio-grid .feature-image{transform:perspective(1000px) rotateX(var(--card-rx,0deg)) rotateY(var(--card-ry,0deg));transition:transform .45s cubic-bezier(.2,.7,.2,1);isolation:isolate}
.portfolio-grid .feature-image:after{background:radial-gradient(ellipse at var(--spot-x,50%) var(--spot-y,50%),#ffffff18,transparent 60%);opacity:0;transition:opacity .4s;z-index:2}
.portfolio-grid .feature-open:hover .feature-image:after{opacity:1}
.portfolio-grid .feature-image>img{transform:scale(1.025)}.portfolio-grid .feature-open:hover .feature-image>img{transform:scale(1.065)}
.portfolio-grid .image-num,.portfolio-grid .image-type{background:#0009;padding:6px 8px;text-shadow:none}
.portfolio-grid .image-num{left:15px;top:15px}.portfolio-grid .image-type{right:15px;top:15px}
.portfolio-grid .image-open{background:#eeeeE9;color:#111}
.portfolio-grid .feature-note{color:#afb4ae}.card-records{color:#a0a8a2}
.portfolio-grid.overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 20px}
.portfolio-grid.overview .feature-card,.portfolio-grid.overview .feature-card:first-child{grid-column:auto;width:100%;margin:0;padding:0}
.portfolio-grid.overview .feature-image,.portfolio-grid.overview .feature-card:first-child .feature-image{aspect-ratio:1.35}
.portfolio-grid.overview .feature-meta{padding-top:14px;display:block}.portfolio-grid.overview .feature-meta h3{font-size:18px;letter-spacing:-.045em;line-height:1.2}.portfolio-grid.overview .feature-meta>span{display:none}
.portfolio-grid.overview .feature-note{display:none}.portfolio-grid.overview .card-records{font-size:6px;gap:6px;margin-top:12px;padding-top:10px}.portfolio-grid.overview .card-records>span:last-child{font-size:0}.portfolio-grid.overview .card-records>span:last-child:after{content:'↗';font-size:13px}
.portfolio-grid.overview .image-type{display:none}.portfolio-grid.overview .image-num{font-size:6px;left:8px;top:8px}.portfolio-grid.overview .image-open{height:33px;width:33px;bottom:10px;right:10px;font-size:18px}
.portfolio-grid.filtered .feature-card:first-child{grid-column:auto}.portfolio-grid.filtered .feature-card:first-child .feature-image{aspect-ratio:1.43}
.home-dock{position:fixed;bottom:22px;right:22px;z-index:35;background:#111514ed;color:#eeeee8;border:1px solid #ffffff50;display:flex;align-items:center;gap:20px;padding:12px 17px;font:8px var(--mono);box-shadow:0 6px 30px #0003}
.home-dock[hidden]{display:none}.home-dock a{display:flex;align-items:center;gap:10px}.home-dock img{width:13px;height:18px;object-fit:contain;filter:invert(1)}.home-dock a:last-child{border-left:1px solid #fff4;padding-left:17px}
.contact .colophon{padding-bottom:50px}
@media(min-width:1800px){.hero-intro{margin-top:100px}.hero-peek{width:420px;bottom:125px}.gallery-toolbar button{font-size:11px}.portfolio-grid.overview .feature-meta h3{font-size:23px}}
@media(min-width:651px) and (max-width:1050px){.hero-peek{width:290px}.hero-intro{width:80%}.sculpture-caption{display:none}.sculpture-control{right:30px}.gallery-toolbar{gap:10px}.gallery-toolbar button{padding:10px;font-size:8px}.gallery-views button span{display:none}.portfolio-grid.overview{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){
 .hero{min-height:930px;max-height:1100px}.hero-intro{margin-top:45px}.hero-description{font-size:11px;margin-top:20px}.hero-intro .hero-enter{font-size:7px;padding:13px 15px;gap:28px}
 .sculpture{inset:335px -42% 105px}.sculpture-caption{display:none}.hero-depth-label{display:none}.sculpture-control{bottom:232px;right:22px;gap:8px}.sculpture-control .round-button{height:49px;padding:0 10px;gap:9px}.transform-symbol{font-size:26px}.transform-label{font-size:6px}.transform-arrow{font-size:19px;margin-left:5px}.sculpture-control #interaction-hint{font-size:5px;letter-spacing:0}
 .hero-peek{width:calc(100% - 44px);bottom:96px}.peek-label{font-size:6px;margin-bottom:10px}#hero-portals{gap:7px}.peek-portal{aspect-ratio:1.85}.peek-portal>span{font-size:5px}
 .work{padding-top:43px}.work-heading{margin-top:42px;margin-bottom:32px}.work-heading h2{font-size:16vw}.gallery-toolbar{padding:10px 0;gap:10px;flex-wrap:wrap;margin-bottom:26px}.gallery-filters{justify-content:space-between;flex:1}.gallery-toolbar button{font-size:7px;padding:11px 9px}.gallery-toolbar sup{font-size:5px;margin-left:3px}.gallery-views{border-left:0;padding-left:0;border-top:1px solid #ffffff15;padding-top:7px;width:100%;justify-content:flex-end}.gallery-views button{font-size:13px;padding:6px 10px}.gallery-views button span{font-size:7px}
 .portfolio-grid{gap:40px}.portfolio-grid:not(.overview):not(.filtered) .feature-card:nth-child(4),.portfolio-grid:not(.overview):not(.filtered) .feature-card:nth-child(5){width:100%;margin:0;grid-column:auto}.portfolio-grid:not(.overview):not(.filtered) .feature-card:nth-child(4) .feature-meta h3{font-size:28px}
 .portfolio-grid .feature-meta h3{font-size:26px}.portfolio-grid .image-num,.portfolio-grid .image-type{font-size:6px;padding:5px;top:10px}.portfolio-grid .image-num{left:10px}.portfolio-grid .image-type{right:10px}
 .portfolio-grid.overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 13px}.portfolio-grid.overview .feature-meta h3{font-size:15px;letter-spacing:-.04em}.portfolio-grid.overview .feature-meta{padding-top:12px}.portfolio-grid.overview .card-records{font-size:5px}.portfolio-grid.overview .image-num{left:6px;top:6px;font-size:5px}.portfolio-grid.overview .image-open{width:26px;height:26px;font-size:15px;bottom:7px;right:7px}
 .home-dock{bottom:13px;right:13px;padding:9px 12px;gap:12px;font-size:7px}.home-dock a:last-child{padding-left:12px}.home-dock img{height:15px;width:11px}
}
@media(prefers-reduced-motion:reduce){.portfolio-grid .feature-image,.peek-portal{transform:none!important}.hero:after{opacity:.9}}
