/* THE FROST IDENTITY / 52. Illustration adds narrative; controls keep their ink. */
.frost-character{position:absolute;pointer-events:none;width:77%;height:570px;right:-30%;top:-58px;transform:translate(calc(var(--device-star-x,0px)*.45),calc(var(--device-star-y,0px)*.4));transform-origin:65% 40%}.frost-character-body{z-index:0}.frost-character-front{z-index:6}.frost-character>img,.frost-character>svg{width:100%;height:100%;display:block;object-fit:contain;object-position:center}.hero-type-stage{overflow:visible}.v2-hero-title{position:relative;z-index:auto}.v2-title-make,.v2-title-own{z-index:4}.v2-title-your{z-index:1}.v2-title-make>span{position:relative}.v2-title-own{letter-spacing:-.055em}.v2-hero .hero-copy .v2-hero-art{width:57%;height:330px;right:-31%;top:112px;z-index:2}.v2-hero .v2-hero-grid{opacity:.23}.v2-hero-description,.v2-cta{z-index:8}.v2-hero .hero-copy p{line-height:1.95}.hero-type-stage:after{content:'F / 52 · ORIGINAL FIGURE';position:absolute;right:-28%;top:6%;font:900 8px monospace;letter-spacing:1.4px;color:var(--paper);background:var(--black);padding:8px 12px;transform:rotate(7deg);z-index:7;pointer-events:none}.intro-arrival .frost-character-body,.enter .frost-character-body{animation:frost-body-enter 440ms 90ms var(--scene-snap) both}.intro-arrival .frost-character-front,.enter .frost-character-front{animation:frost-paper-enter 350ms 190ms var(--scene-snap) both}@keyframes frost-body-enter{from{translate:75px -34px;opacity:0}to{translate:0 0;opacity:1}}@keyframes frost-paper-enter{from{translate:22px -12px;rotate:4deg}to{translate:0 0;rotate:0deg}}
/* The new portrait stays behind the existing giant numbers and selected controls. */
.composition-character{position:absolute;right:-37%;top:0;width:124%;height:89%;pointer-events:none;z-index:0;transform:rotate(12deg);transform-origin:60% 45%;transition:transform 280ms var(--scene-snap)}.composition-character img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}.composition-digit{z-index:2}.composition-anchor{z-index:3}.composition-archive{z-index:1}.composition-paper{z-index:0}.composition-cross{z-index:4}[data-poster="about"] .composition-character{transform:rotate(-8deg);right:-32%;top:5%}[data-poster="projects"] .composition-character{transform:rotate(22deg);right:-39%;top:-4%}[data-poster="journal"] .composition-character{transform:rotate(2deg);right:-44%;top:7%;height:76%}[data-poster="contact"] .composition-character{transform:rotate(-16deg);right:-46%;top:5%}.poster-heading{z-index:5}.poster-snap .composition-character{animation:frost-menu-snap 320ms var(--scene-snap) both}@keyframes frost-menu-snap{from{translate:25px -10px}to{translate:0 0}}
#character-bridge{position:fixed;z-index:29;pointer-events:none;transform-origin:center;will-change:transform}#character-bridge[hidden]{display:none}#character-bridge img{width:100%;height:100%;object-fit:contain;display:block}.portrait-transferring #main .frost-character,.portrait-transferring #live-poster .composition-character{visibility:hidden}.portrait-unavailable .frost-character,.portrait-unavailable .composition-character,.portrait-unavailable #character-bridge{display:none!important}
/* The same outline becomes two ink strips during the existing paper slash. */
.slash-composition .composition-character{right:-14%;width:100%;top:-3%;height:101%;filter:brightness(0);transform:rotate(-12deg);opacity:1;clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}.slash-running .composition-character{animation:frost-ink-cut 650ms var(--scene-snap) both}.route-departing .frost-character-body{animation:frost-subject-depart 240ms var(--scene-snap) both}.route-arriving .frost-character-body{animation:frost-body-enter 350ms 90ms var(--scene-snap) both}@keyframes frost-ink-cut{0%{translate:-55px 25px;clip-path:polygon(45% 0,100% 0,100% 100%,66% 100%)}38%,65%{translate:0 0;clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}100%{translate:100px -35px;clip-path:polygon(0 0,19% 0,64% 100%,0 100%)}}@keyframes frost-subject-depart{to{translate:-25px 15px;rotate:-3deg}}
/* Original concept covers: a consistent paper border, natural 2:1 ratio. */
.project-cover{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:var(--paper)}.project-cover[hidden]{display:none}.project-cover-fallback{position:absolute;inset:0}.project-cover-fallback[hidden]{display:none}.project-cover-fallback>svg{width:100%;height:100%;display:block}.project-visual{height:auto;aspect-ratio:2/1;background:var(--paper);border:3px solid var(--black);overflow:hidden}.dossier-media{aspect-ratio:2/1}.dossier-media .project-cover{width:100%;height:100%;object-fit:contain}.shared-cover img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}.project .label{z-index:3}.project-selected .project-visual{outline-offset:5px}
/* CONTACT: a bounded illustrated gesture, with the original glyphs above it. */
.contact-title-stage:before{content:none}.contact-letter{position:absolute;pointer-events:none;right:-2%;top:18%;width:36%;height:57%;z-index:0}.contact-letter .frost-mail{width:100%;height:100%;overflow:visible}.contact-title-stage .contact-opening,.contact-title-stage .contact-editorial{position:relative;z-index:2}.contact-editorial .contact-say{background:var(--paper);padding-left:6px;width:max-content}.contact-editorial .contact-hello-word{z-index:3}.contact-stage .moment-play .contact-letter{animation:mail-deploy 400ms 110ms var(--scene-snap) both}@keyframes mail-deploy{from{translate:35px 18px;rotate:6deg;opacity:0}to{translate:0 0;rotate:0deg;opacity:1}}
@media(max-width:1000px){.frost-character{right:-24%;width:72%;height:505px;top:-32px}.v2-hero .hero-copy .v2-hero-art{right:-24%;width:53%;height:290px;top:119px}.hero-type-stage:after{right:-19%;font-size:7px}.contact-letter{width:38%;right:-1%}}
@media(max-width:600px){.frost-character{top:5px;right:0;width:56%;height:310px}.v2-hero .hero-copy .v2-hero-art{top:128px;right:-5%;width:45%;height:190px;z-index:2}.hero-type-stage:after{right:0;top:3%;font-size:6px;letter-spacing:.7px;padding:6px 8px}.v2-hero-title{font-size:clamp(60px,17.5vw,80px);margin-bottom:38px}.v2-title-make{font-size:.91em}.v2-title-your{margin-left:3%;padding-right:38px}.v2-title-own{margin-left:17%;letter-spacing:-.055em}.frost-character-front{z-index:5}.composition-character{width:141%;height:79%;right:-52%;top:5%}.composition-character img{object-fit:contain}[data-poster="about"] .composition-character{right:-53%;height:75%;top:8%}[data-poster="projects"] .composition-character{right:-50%;top:7%;height:82%}[data-poster="journal"] .composition-character{right:-68%;height:68%;top:8%}[data-poster="contact"] .composition-character{right:-54%;height:76%;top:2%}.contact-letter{right:-2%;top:27%;width:35%;height:44%}.frost-mail text{display:none}.contact-title-stage .contact-editorial{margin-bottom:16px}.contact-stage .contact-conversation{background:var(--paper)}.project-visual{border-width:2px}.v2-hero .hero-copy p{font-size:15px}.slash-composition .composition-character{right:-21%;width:110%;height:87%;top:6%}}
@media(max-width:360px){.frost-character{width:54%;height:270px;top:7px}.v2-hero .hero-copy .v2-hero-art{top:122px;height:164px;width:44%;right:-4%}.v2-hero-title{font-size:56px}.hero-type-stage:after{font-size:5.5px;right:0;top:0}.contact-letter{top:29%;right:0;width:32%;height:39%}}
.reduced .frost-character,.reduced .composition-character,.reduced .contact-letter{animation:none!important;transition:none!important}.reduced .frost-character{transform:none}.reduced .hero-type-stage{clip-path:none}.reduced .frost-character-body,.reduced .frost-character-front{opacity:1;translate:0 0}.reduced .slash-composition .composition-character{filter:none;clip-path:none}
@media(prefers-reduced-motion:reduce){.frost-character,.composition-character,.contact-letter{animation:none!important;transition:none!important}.frost-character{transform:none}.hero-type-stage{clip-path:none}.frost-character-body,.frost-character-front{opacity:1;translate:0 0}.slash-composition .composition-character{filter:none;clip-path:none}}
