/* The next chapter: film portal, interactive sculptures and viewing notes. */
.showreel-portal{position:absolute;right:7%;bottom:12%;width:clamp(230px,23vw,360px);padding:0;border:1px solid #ba85ff75;background:#110d1cd9;box-shadow:0 18px 80px #0008,0 0 35px #8845cc22;text-align:left;transform:perspective(900px) rotateY(-12deg) rotateX(5deg);transform-style:preserve-3d;transition:transform .6s,border-color .6s;z-index:5;color:var(--ink)}
.showreel-portal::before,.showreel-portal::after{content:'';position:absolute;inset:-9px;border:1px solid #b984ff36;transform:translateZ(-18px);pointer-events:none}.showreel-portal::after{inset:-18px;border-color:#b984ff16;transform:translateZ(-36px)}
.showreel-portal:hover,.showreel-portal:focus-visible{transform:perspective(900px) rotateY(0) rotateX(0) translateY(-8px);border-color:#dab7ff}
.portal-picture{display:block;position:relative;height:135px;overflow:hidden}.portal-picture img{width:100%;height:100%;object-fit:cover;opacity:.8;transition:transform .7s}.showreel-portal:hover img{transform:scale(1.06)}.portal-picture::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#100818aa,transparent 65%)}.portal-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:42px;height:42px;background:#e9d7ffdf;border-radius:50%;color:#241337;font-size:12px;z-index:1;box-shadow:0 0 30px #d9a7ff77}.portal-caption{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 18px}.portal-caption b{font:600 19px 'Barlow Condensed',sans-serif;letter-spacing:.06em}.portal-caption small{display:block;font:8px 'DM Sans',sans-serif;color:#bcb0c8;letter-spacing:.18em;margin-top:5px}.portal-duration{font:12px monospace;color:#d2b3ed}.hero-object-label{bottom:35%}
.premium-dialog{background:#0c0913;color:var(--ink);border:1px solid #8d63bc70;padding:24px;width:min(1000px,92vw);max-height:90svh;overflow:auto;box-shadow:0 25px 140px #000b}.premium-dialog::backdrop{background:#030107dc;backdrop-filter:blur(14px)}.showreel-stage{position:relative;aspect-ratio:16/9;background:#020104;margin-top:18px}.showreel-stage video{width:100%;height:100%;object-fit:contain;display:block}.reel-status{position:absolute;left:20px;top:10px;max-width:70%;font-size:12px;color:#efdefa;background:#0c0716d9;padding:10px}.reel-bottom{display:flex;gap:24px;align-items:center;justify-content:space-between;margin-top:20px}.reel-bottom h2{font:600 clamp(26px,4vw,48px)/1 'Barlow Condensed',sans-serif;margin:0}.reel-bottom p{color:var(--muted);font-size:11px;line-height:1.7;margin:10px 0 0}.reel-bottom .text-link{white-space:nowrap}.portal-travelling #showreel-dialog{animation:portal-arrive .7s cubic-bezier(.16,1,.3,1)}@keyframes portal-arrive{from{opacity:0;transform:perspective(1200px) translateZ(-500px) rotateY(-8deg)}to{opacity:1;transform:none}}
.tool-labels button{border:0;border-top:1px solid #a673d755;background:#0c081c66;padding:12px 6px;color:#dcd2e9;font:10px 'DM Sans',sans-serif;letter-spacing:.1em;text-align:left;transition:background .3s,color .3s,transform .3s}.tool-labels button small{display:block;margin-top:8px;font-size:7px;color:#a298ad;letter-spacing:.07em}.tool-labels button:hover,.tool-labels button.is-hovered,.tool-labels button:focus-visible{background:#a867ef33;color:white;transform:translateY(-5px)}.tool-labels button::after{content:'EXPLORE ↗';display:block;font-size:8px;color:#c195fa;margin-top:12px;letter-spacing:.15em}.tool-dialog-grid{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:45px;padding:35px 10px 20px}.tool-dialog-grid h2{font:600 clamp(38px,5vw,66px)/.98 'Barlow Condensed',sans-serif;margin:20px 0}.tool-dialog-grid p{font-size:13px;line-height:1.8;color:#b9acc8}.tool-dialog-grid .tool-disclosure{font-size:10px;line-height:1.7;color:#8c809c;border-top:1px solid #ffffff16;margin-top:25px;padding-top:16px}.tool-study{height:330px;position:relative;perspective:800px;display:grid;place-items:center;overflow:hidden;background:radial-gradient(ellipse,#60219c35,transparent 68%);border:1px solid #986ac132}.study-core{position:absolute;width:140px;height:140px;display:grid;place-items:center;border:2px solid #b98feb;background:linear-gradient(145deg,#361058e0,#0d081dec);box-shadow:15px 18px 0 #271038,28px 33px 0 #160921,0 0 50px #804ac42b;color:#e0c7ff;font:600 78px 'Barlow Condensed';animation:study-float 7s ease-in-out infinite;transform:rotateY(-24deg) rotateX(14deg)}.study-plane{position:absolute;inset:18%;border:1px solid #b593ec66;transform:rotateY(-25deg) rotateX(25deg) translateZ(-60px);animation:study-orbit 12s linear infinite}.study-plane:nth-child(2){inset:25%;animation-direction:reverse}.study-plane:nth-child(3){inset:10%;border-color:#b593ec22;animation-duration:18s}.study-scan{position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,#bd8df53b 49%,transparent 52%);animation:study-scan 4s ease-in-out infinite;mix-blend-mode:screen}.study-logo{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none}.study-form .study-core{clip-path:none;background:none;border:0;box-shadow:none;color:inherit;width:210px;height:172px}.study-form .study-logo{filter:drop-shadow(3px 4px 0 #914215) drop-shadow(3px 4px 0 #331809) drop-shadow(0 0 20px #ed812024)}.study-form .study-plane{border-radius:50%;border-color:#fc9e6480}.study-world .study-core{width:150px;height:150px;padding:9px;border:2px solid #d3c6e7;border-radius:50%;background:radial-gradient(circle at 30% 20%,#524d5e,#100b18 68%);box-shadow:3px 4px 0 #64576e,6px 8px 0 #282130,9px 12px 0 #0b0810,0 0 25px #ba8cee44;outline:1px solid #e1c5ff55;outline-offset:15px}.study-world .study-logo{border-radius:50%}.study-world .study-plane{animation:study-depth 6s linear infinite}.study-world .study-plane:nth-child(2){animation-delay:-2s}.study-world .study-plane:nth-child(3){animation-delay:-4s}@keyframes study-float{50%{transform:rotateY(18deg) rotateX(-8deg) translateY(-14px)}}@keyframes study-orbit{to{transform:rotateY(335deg) rotateX(25deg) translateZ(-60px)}}@keyframes study-depth{from{transform:translateZ(-250px);opacity:0}50%{opacity:1}to{transform:translateZ(240px);opacity:0}}@keyframes study-scan{0%,100%{transform:translateX(-80%)}70%{transform:translateX(80%)}}
.project-notes{display:grid;grid-template-columns:160px 1fr;gap:24px;margin-top:28px;padding-top:24px;border-top:1px solid #a880ca33;align-items:center}.project-notes>img{width:160px;height:112px;object-fit:cover;border:1px solid #aa81ce33}.project-notes .eyebrow{font-size:8px}.project-notes h3{font:500 28px 'Barlow Condensed',sans-serif;margin:8px 0}.project-notes p{font-size:12px;line-height:1.7;color:#b9abc8;max-width:55ch;margin:0 0 10px}.project-notes .text-link{font-size:9px}.player-dialog{max-height:94svh;overflow:auto}
.entry-assembly{position:absolute;width:240px;height:120px;left:50%;top:30%;transform:translate(-50%,-50%);pointer-events:none;opacity:0}.entry-assembly i{position:absolute;inset:0;background:url('/assets/hma-wordmark.webp') center/contain no-repeat;clip-path:polygon(var(--a) 0,var(--b) 0,var(--b) 100%,var(--a) 100%);transform:translate(var(--x),var(--y)) rotate(var(--r));opacity:0}.entry.activating .entry-assembly{opacity:1}.entry.activating .entry-assembly i{animation:assemble-wordmark 2.5s cubic-bezier(.16,1,.3,1) both;animation-delay:var(--delay)}@keyframes assemble-wordmark{0%{opacity:0}30%{opacity:1}75%,100%{opacity:1;transform:translate(0,0) rotate(0)}}
.returning-visitor .entry-center h1{font-size:clamp(38px,7vw,90px)}.entry-status{font:9px 'DM Sans',sans-serif!important;letter-spacing:.2em!important}
@media(min-width:701px) and (max-height:650px){.showreel-portal{width:230px;bottom:14%}.portal-picture{height:95px}}
@media(max-width:700px){.showreel-portal{right:8%;bottom:10%;width:205px;transform:perspective(900px) rotateY(-7deg)}.portal-picture{height:95px}.portal-caption{padding:11px}.portal-caption b{font-size:16px}.portal-caption small{font-size:7px}.hero-object-label{display:none}.hero{min-height:1060px}.hero-copy{top:33%}.hero-bottom{bottom:24px}.hero-bottom>span{display:none}.hero-actions{flex-wrap:wrap}.tool-dialog-grid{grid-template-columns:1fr;gap:15px;padding:20px 0}.tool-study{height:230px}.tool-dialog-grid h2{font-size:42px}.premium-dialog{padding:17px}.reel-bottom{align-items:flex-start;flex-direction:column;gap:15px}.project-notes{grid-template-columns:90px 1fr;gap:15px}.project-notes>img{width:90px;height:120px}.project-notes h3{font-size:23px}.project-notes p{font-size:11px}.entry-assembly{top:26%}.tool-labels button{font-size:8px;padding:9px 5px}.tool-labels button small{font-size:6px}}
@media(prefers-reduced-motion:reduce){.study-core,.study-plane,.study-scan,.entry-assembly i{animation:none!important}.showreel-portal{transform:none}.portal-travelling #showreel-dialog{animation:none}.entry-assembly{display:none}}
.reduced-motion .study-core,.reduced-motion .study-plane,.reduced-motion .study-scan,.reduced-motion .entry-assembly i{animation:none!important}.reduced-motion .portal-travelling #showreel-dialog{animation:none}.reduced-motion .showreel-portal{transform:none}
@media(max-width:700px){.hero{height:auto;max-height:none;min-height:1060px}.hero-copy{position:relative;top:auto;bottom:auto;left:auto;max-width:none;padding:340px 7% 0}.showreel-portal{position:relative;right:auto;bottom:auto;display:block;margin:40px 8% 110px auto}}
