:root{--bg:#f3f0e8;--bg-alt:#e7e5dc;--card:#faf8f2;--ink:#252923;--ink-soft:#62685d;--line:#d5d6c9;--forest:#4d5b3e;--forest-deep:#252e25;--on-accent:#f3f0e8;--clay:#4d5b3e;--clay-soft:#e5e7dc;--ring:#4d5b3e; color-scheme:light}.support-page{font-family:Arial,sans-serif}.support-page h1,.support-page h2,.support-page h3{font-family:Georgia,serif;font-weight:400}.portfolio-footer span{color:var(--ink-soft,#62685d)}
.portfolio-head,.portfolio-footer{font:13px/1.5 Arial,sans-serif;box-sizing:border-box}.portfolio-head{display:flex;align-items:center;gap:28px;justify-content:space-between;padding:24px 0;border-bottom:1px solid #d5d6c9}.portfolio-head a{color:inherit;text-decoration:none}.nameplate{font:26px/1.1 Georgia,serif;white-space:nowrap}.nameplate span{display:block;font:10px/1.5 Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase;margin-top:6px}.portfolio-head nav{display:flex;gap:22px;align-items:center;flex-wrap:wrap}.portfolio-head nav a:hover,.portfolio-footer a:hover{text-decoration:underline;text-underline-offset:5px}.language{font-size:11px;border:1px solid #d5d6c9;padding:5px 9px}.portfolio-head.shell,.portfolio-footer.shell{width:min(1320px,calc(100% - 96px));margin:auto}.artist-hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:80px;padding-top:65px;padding-bottom:70px}.artist-intro h1{font-size:clamp(68px,7.8vw,118px)}.artist-intro h1 em{color:#59634e}.hero-lede{font:clamp(22px,2.2vw,30px)/1.4 Georgia,serif;max-width:28ch}.artist-intro>.muted{font-size:14px;max-width:48ch}.hero-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:30px}.artist-image img{width:100%;aspect-ratio:4/5;object-fit:cover}.artist-image figcaption,.featured-series figcaption{font-size:11px;color:var(--muted);margin-top:12px}.practice-list{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;border-top:1px solid var(--line);padding:30px 0}.practice-list h3{font-size:32px}.practice-list p{color:var(--muted);font-size:14px}.featured-series{background:#e7e5dc;padding:80px 0}.featured-series img{width:100%;aspect-ratio:16/9;object-fit:contain;background:#252923}.featured-series .section-top>div>p{max-width:47ch}.series-note{font-size:12px;color:var(--muted);margin-top:24px;max-width:85ch}.workshop-records{display:grid;grid-template-columns:1fr 1fr;gap:55px}.workshop-records article{border-top:1px solid var(--line);padding-top:28px}.workshop-records h3{font-size:34px}.workshop-records p{color:var(--muted);font-size:14px}.workshop-records a{font-size:12px}.platform-section{background:#252e25;color:#f3f0e8;padding:90px 0}.platform-section h2{font-size:clamp(38px,4.4vw,64px);overflow-wrap:anywhere}.platform-section .section-top{margin-bottom:0;align-items:start}.platform-section .section-top p{color:#c5cbbd}.platform-section a{color:inherit}.platform-section .button{background:#f3f0e8;color:#252923}.about-artist{border-top:1px solid var(--line)}.about-artist>p{max-width:68ch;color:var(--muted)}.portfolio-footer{padding:30px 0;display:flex;gap:30px;justify-content:space-between}.portfolio-footer span{display:block;font-size:11px;color:#62685d;margin-top:6px}.portfolio-footer nav{display:flex;gap:18px;flex-wrap:wrap;align-items:start;max-width:580px}.portfolio-footer a{font-size:11px;color:inherit}.page-local-nav{display:flex;gap:25px;flex-wrap:wrap;font-size:12px;padding-top:25px}.commission-intro h1{font-size:clamp(54px,6.5vw,92px)}.commission-intro .hero-lede{max-width:35ch}.commission-photo img{width:100%;aspect-ratio:4/5;object-fit:cover}.commission-photo figcaption{font-size:11px;color:var(--muted);padding-top:12px}.commission-faq details{padding:20px 0;border-top:1px solid var(--line)}.commission-faq summary{cursor:pointer;font-size:18px}.commission-faq details p{margin:15px 0;color:var(--muted)}
@media(max-width:1100px){.portfolio-head{flex-wrap:wrap;gap:20px}.portfolio-head nav{order:3;width:100%;gap:14px 24px}.artist-hero{gap:35px}.portfolio-footer{flex-direction:column}.portfolio-head.shell,.portfolio-footer.shell{width:calc(100% - 48px)}}
@media(max-width:640px){.portfolio-head.shell,.portfolio-footer.shell{width:calc(100% - 36px)}.portfolio-head{padding:19px 0}.portfolio-head nav{font-size:12px;gap:12px 20px}.artist-hero{grid-template-columns:1fr;padding-top:42px;padding-bottom:25px;gap:35px}.artist-intro h1{font-size:clamp(56px,16vw,76px)}.artist-image img{aspect-ratio:4/5;max-height:600px}.hero-lede{font-size:26px}.hero-actions{gap:20px}.practice-list{grid-template-columns:1fr;gap:20px}.practice-list article{border-bottom:1px solid var(--line);padding-bottom:10px}.featured-series,.platform-section{padding:60px 0}.workshop-records{grid-template-columns:1fr;gap:30px}.portfolio-footer nav{gap:14px}.portfolio-footer{padding:25px 0}.commission-intro h1{font-size:58px}.commission-photo img{max-height:540px}}

/* Equal visibility for physical and digital work on the first screen. */
.portfolio-head{flex-wrap:wrap;gap:18px 28px}.portfolio-head nav{order:3;width:100%;gap:14px 26px}.portfolio-head .language{margin-left:auto}.identity-hero{grid-template-columns:1.65fr .8fr;gap:70px;padding-top:48px;padding-bottom:52px}.identity-hero h1{font-size:clamp(60px,7vw,100px);margin-bottom:20px}.identity-hero .hero-lede{max-width:36ch;font-size:clamp(23px,2.2vw,30px);margin-bottom:18px}.identity-roles{font-size:15px;color:var(--muted);max-width:57ch}.identity-paths{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;margin-top:26px}.identity-paths a{display:block;padding:12px 0;border-top:1px solid var(--line);font-size:13px;text-decoration:none}.identity-paths a:hover{text-decoration:underline}.identity-image{align-self:center}.identity-image img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center;max-height:430px}.digital-options{display:grid;grid-template-columns:1fr 1fr;gap:60px}.digital-options article{border-top:1px solid var(--line);padding-top:28px}.digital-options h3{font-size:36px}.digital-options p{color:var(--muted);font-size:15px}.service-intro h1{font-size:clamp(54px,7vw,96px);max-width:16ch}.service-intro .hero-lede{max-width:40ch}.service-intro>p{max-width:65ch}
@media(max-width:900px){.identity-hero{grid-template-columns:1.5fr .8fr;gap:35px}.identity-hero h1{font-size:64px}.identity-paths{gap:0 16px}.digital-options{gap:30px}}
@media(max-width:640px){.identity-hero{grid-template-columns:1fr;gap:30px;padding-top:32px}.identity-hero h1{font-size:clamp(52px,13vw,72px)}.identity-hero .hero-lede{font-size:25px}.identity-roles{font-size:14px}.identity-paths{grid-template-columns:1fr;gap:0;margin-top:20px}.identity-paths a{padding:11px 0;font-size:14px}.identity-image{max-width:280px;justify-self:center}.identity-image img{max-height:350px}.digital-options{grid-template-columns:1fr;gap:35px}.portfolio-head nav{gap:12px 19px}.service-intro h1{font-size:54px}}

.identity-image img{aspect-ratio:1;border-radius:50%;object-fit:cover}

.rotation-preview{position:relative;aspect-ratio:16/9;background:#252923}.rotation-preview .rotation-photo,.rotation-preview .work-media{width:100%;height:100%;aspect-ratio:16/9;object-fit:contain}.rotation-preview .work-media{position:absolute;inset:0}.rotation-preview [hidden]{display:none}.rotation-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:90%;padding:12px 18px;border:1px solid #f3f0e8;background:#252923e8;color:#f3f0e8;font:13px/1.5 Arial,sans-serif;cursor:pointer}.rotation-play:disabled{cursor:progress}.rotation-preview noscript a{color:#f3f0e8}

/* Shared visual language: quiet type, clear links, comfortable touch targets. */
:root{--paper:#f7f5ef;--bg:#f7f5ef;--bg-alt:#eeece4;--ink:#242b26;--ink-soft:#596358;--muted:#596358;--line:#d9ddd2;--accent:#465d48;--forest:#465d48;--serif:Baskerville,"Palatino Linotype",Georgia,serif;--ui:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
html{-webkit-text-size-adjust:100%;scroll-padding-top:28px}body,.support-page{font-family:var(--ui);line-height:1.7;-webkit-font-smoothing:antialiased}button,input,textarea{font-family:var(--ui)}h1,h2,h3,.support-page h1,.support-page h2,.support-page h3{font-family:var(--serif);font-weight:400;text-wrap:balance}p{text-wrap:pretty}a{color:inherit;text-decoration-color:#a3b09b;text-decoration-thickness:1px;text-underline-offset:.22em;transition:color .18s ease,text-decoration-color .18s ease}a:hover{color:var(--accent);text-decoration-color:currentColor}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #647c59;outline-offset:5px;border-radius:3px}.shell,.portfolio-head.shell,.portfolio-footer.shell{width:min(1240px,calc(100% - 80px))}.section{padding:88px 0}.eyebrow{font:500 11px/1.6 var(--ui);letter-spacing:.13em;color:var(--muted)}.section-top{gap:70px;align-items:start}.section-top p{font-size:16px;line-height:1.8;max-width:52ch}.section-top h2{margin-bottom:20px}.section-top h3{font-size:clamp(26px,3vw,38px);margin-top:30px}.section-top>article>h3:first-of-type{margin-top:0}.portfolio-head{padding:26px 0 16px;gap:18px 25px;font-family:var(--ui);border-bottom:1px solid var(--line)}.nameplate{font-family:var(--serif);font-size:29px;letter-spacing:-.025em}.nameplate span{font-family:var(--ui);font-size:10px;letter-spacing:.1em;margin-top:7px;color:var(--muted)}.portfolio-head nav{gap:4px 24px}.portfolio-head nav a{font-size:13px;line-height:1.5;padding:10px 0;position:relative}.portfolio-head nav a[aria-current="page"]{color:var(--accent);box-shadow:inset 0 -2px var(--accent)}.language{border:1px solid var(--line);border-radius:100px;padding:9px 13px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;font:600 11px/1 var(--ui);letter-spacing:.05em}.menu-toggle{display:none}.identity-hero{gap:64px;padding-top:65px;padding-bottom:65px}.identity-hero h1{font-size:clamp(68px,7.5vw,108px);line-height:.99;letter-spacing:-.055em}.hero-lede{line-height:1.45}.identity-roles{font-size:16px;line-height:1.8;max-width:55ch}.identity-image{padding:10px}.identity-image img{box-shadow:0 12px 45px #253a2510}.identity-image figcaption{text-align:center;font-size:12px;line-height:1.6;margin-top:18px}.identity-paths{gap:12px;margin-top:30px}.identity-paths a{padding:17px 19px;border:1px solid var(--line);border-radius:12px;font-size:14px;line-height:1.4;background:#ffffff4d;display:flex;align-items:center;min-height:62px;text-decoration:none;transition:background .18s,border-color .18s}.identity-paths a:hover{background:#e9ede2;border-color:#a5b49a;text-decoration:none}.button,.btn{font:500 14px/1.4 var(--ui);letter-spacing:.01em;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 23px;border-radius:100px;border:1px solid transparent;text-decoration:none;box-shadow:none;transition:background .18s,box-shadow .18s}.button,.btn-primary{background:#354b38;color:#fff}.button:hover,.btn-primary:hover{background:#253a28;color:#fff;text-decoration:none;box-shadow:0 5px 18px #253a2518}.btn-ghost{border-color:#bac6b2;background:transparent;color:var(--ink)}.btn-ghost:hover{background:#e9ede2;color:var(--ink)}.text-link,.work-links a,.workshop-records a,.archive-copy>.text-link,.hero-actions>.text-link{font:500 14px/1.6 var(--ui);display:inline-block;padding:7px 0;text-decoration:underline;text-decoration-color:#9eaf94;text-underline-offset:5px}.hero-actions{gap:12px 24px}.practice-list{gap:32px;padding-top:30px}.practice-list h3{font-size:30px;line-height:1.15;letter-spacing:-.025em}.practice-list p,.work-info p,.archive-copy p,.artist-note p,.digital-options p,.workshop-records p{font-size:15px;line-height:1.8}.practice-list .eyebrow{color:#78876e}.digital-options article,.workshop-records article{padding-top:26px}.digital-options h3,.workshop-records h3{font-size:32px}.featured-series{background:#eeece4;padding:80px 0}.works-grid{gap:30px}.works-grid figure{min-width:0}.rotation-preview{border-radius:16px;overflow:hidden;box-shadow:0 7px 28px #222b2212}.rotation-preview .rotation-photo{border-radius:0}.rotation-play{border:1px solid #ffffff70;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#223325e8;min-height:48px;border-radius:100px;font:500 13px/1.4 var(--ui);padding:13px 19px;display:flex;align-items:center;gap:10px;white-space:normal;width:max-content}.rotation-play::before{content:"";width:10px;height:12px;display:block;flex:none;background:currentColor;clip-path:polygon(0 0,100% 50%,0 100%)}.rotation-play:disabled::before{clip-path:none;width:10px;height:10px;border-radius:50%;background:transparent;border:1.5px solid currentColor;border-right-color:transparent;animation:rotation-loading .8s linear infinite}.rotation-preview [hidden]{display:none}.featured-series figcaption{font:12px/1.8 var(--ui);margin-top:16px;color:var(--muted)}.series-note{font-size:13px;line-height:1.7;max-width:75ch;margin-top:26px}.hero-note .hero-image,.commission-photo img,.archive-feature img,.archive-details img,.scene-image img,.process-strip img{border-radius:16px}.work-media,.process-grid video,.archive-film video{border-radius:14px}.caption{font-size:12px;line-height:1.7;gap:20px;padding-top:16px}.work-links{gap:5px 24px}.spec{font-size:13px;padding:13px 0}.scene-tag{border-radius:100px;padding:7px 12px}.contexts{background:#253127}.contexts p,.contexts .section-top p{color:#c2ccbc}.contexts a:hover{color:#fff}.platform-section{background:#253127}.platform-section .button{background:#f3f4ed;color:#253127}.platform-section .button:hover{background:white}.page-local-nav{gap:8px 20px;font-size:13px;padding-top:24px}.page-local-nav a{padding:8px 0}.intro{padding-top:64px;gap:55px}.intro .intro-copy p{font-size:17px;line-height:1.8}.intro h1{font-size:clamp(62px,7.6vw,110px)}#story .section-top>div:last-child>p{max-width:53ch;line-height:1.85}#materials ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0 0 26px}#materials li{border:1px solid var(--line);background:#ffffff4d;border-radius:9px;padding:7px 11px;font-size:14px;line-height:1.5}#materials h3{font-size:24px;margin:24px 0 14px}.contact{background:#e9ede2;padding:80px 0}.contact-form{gap:22px}.contact-form label{font:500 13px/1.6 var(--ui);margin-bottom:8px}.contact-form input:not(.trap),.contact-form textarea{font:16px/1.6 var(--ui);min-height:48px;border:1px solid #bbc8b2;background:#ffffff73;padding:12px 14px;border-radius:10px;color:var(--ink)}.contact-form input:not(.trap):focus,.contact-form textarea:focus{outline:2px solid #718b62;outline-offset:2px}.contact-form .trap{min-height:0}.contact-form textarea{min-height:150px}.contact-form .button,.contact-form .btn{justify-self:start}.contact .contact-small,.form-note{font-size:13px;line-height:1.7}.commission-faq summary{font-size:17px;line-height:1.6;padding:5px 0}.commission-faq details{padding:15px 0}.portfolio-footer{padding:34px 0;font:14px/1.7 var(--ui);border-top:1px solid var(--line)}.portfolio-footer span{font-size:12px;max-width:45ch}.portfolio-footer nav{gap:5px 20px}.portfolio-footer a{font-size:12px;display:inline-block;padding:9px 0}.wrap[data-lmml-skip]{font-size:12px;padding:12px 0;line-height:1.8}.support-page .hero-photo{box-shadow:none;border:0}.support-page .card,.support-page .case,.support-page .quote,.support-page .service-link,.support-page .process-step{border:1px solid var(--line);border-radius:16px;box-shadow:none;background:#ffffff59}.support-page .hero{padding-top:64px;padding-bottom:64px}.support-page .hero h1{font-size:clamp(38px,5vw,68px);letter-spacing:-.035em}.support-page section{padding-block:70px}.support-page .hero .lede{font-size:18px;line-height:1.75}.support-page .engagement-note,.support-page .engagement-details{border-radius:10px}.support-page summary{padding-block:10px}.support-page .eyebrow{color:var(--muted)}.support-page .contact-form{max-width:760px}.support-page .article-page h1{font-size:clamp(40px,6vw,76px);letter-spacing:-.04em}.support-page .article-copy{font-size:18px;line-height:1.85}.support-page .chip{box-shadow:none;border-radius:100px;padding:9px 14px;font-size:12px}.support-page .logo-chip{border-radius:9px}.support-page .contact-form button{width:auto}
@keyframes rotation-loading{to{transform:rotate(360deg)}}
@media(max-width:900px){.shell,.portfolio-head.shell,.portfolio-footer.shell{width:calc(100% - 48px)}.section-top{gap:35px}.identity-hero{gap:35px}.identity-hero h1{font-size:74px}.contact-grid{gap:38px}.portfolio-footer{gap:18px}.section{padding:70px 0}}
@media(max-width:640px){.shell,.portfolio-head.shell,.portfolio-footer.shell{width:calc(100% - 40px)}.portfolio-head{padding:21px 0 18px;gap:12px}.nameplate{font-size:27px;max-width:calc(100% - 126px)}.nameplate span{font-size:8px;letter-spacing:.075em;white-space:normal;max-width:190px;line-height:1.5}.language{order:2;min-height:42px;padding:10px 12px;margin-left:0!important}.has-site-ui .menu-toggle{order:1;display:inline-flex;align-items:center;gap:8px;margin-left:auto;min-height:42px;padding:9px 12px;border:1px solid var(--line);border-radius:100px;background:transparent;font:500 12px/1.4 var(--ui);color:var(--ink)}.menu-bars{display:inline-block;width:13px;height:8px;border-block:1px solid currentColor;transition:transform .2s}.nav-open .menu-bars{transform:rotate(90deg)}.portfolio-head nav{order:3;display:grid;grid-template-columns:1fr 1fr;gap:0 20px;width:100%;padding:10px 0 0}.has-site-ui .portfolio-head:not(.nav-open) nav{display:none}.portfolio-head nav a{font-size:14px;line-height:1.5;padding:13px 0;border-bottom:1px solid var(--line)}.portfolio-head nav a[aria-current="page"]{box-shadow:none;font-weight:600}.identity-hero{padding:40px 0 38px;gap:30px}.identity-hero h1{font-size:clamp(51px,14vw,70px);margin-bottom:24px}.identity-hero .eyebrow{font-size:10px;margin-bottom:17px}.identity-hero .hero-lede{font-size:24px;line-height:1.45}.identity-roles{font-size:15px;line-height:1.8;margin-top:20px}.identity-paths{grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}.identity-paths a{font-size:13px;padding:16px 14px;min-height:76px;line-height:1.5;border-radius:12px}.identity-image{max-width:190px;padding:0;margin-top:6px}.identity-image figcaption{font-size:11px;margin-top:15px}.section,.support-page section{padding-block:56px}.section-top{gap:22px;margin-bottom:28px}.section-top h2,h2{font-size:clamp(34px,9.5vw,46px);line-height:1.1;letter-spacing:-.035em;overflow-wrap:break-word}.section-top p{font-size:16px;margin-bottom:16px}.eyebrow{font-size:10px;letter-spacing:.12em}.practice-list{gap:18px;padding-top:22px}.practice-list article{padding-bottom:16px}.practice-list h3,.digital-options h3,.workshop-records h3{font-size:28px;line-height:1.16}.practice-list p{font-size:15px}.practice-list .eyebrow{margin-bottom:12px}.featured-series,.platform-section,.contexts{padding:56px 0}.works-grid{gap:32px}.work-info{padding-top:22px}.work-info h3{font-size:34px}.work-info p{font-size:15px}.work-info .eyebrow{font-size:10px}.work-links a{font-size:14px;min-height:42px}.hero-actions{align-items:flex-start;gap:8px 18px}.button,.btn{font-size:14px;min-height:48px;padding:13px 21px}.intro{padding:42px 0 30px;gap:14px}.intro h1{font-size:clamp(46px,12vw,64px);line-height:1.05;letter-spacing:-.045em}.intro .intro-copy p{font-size:16px}.page-local-nav{font-size:12px;gap:0 20px;padding-top:14px}.page-local-nav a{padding:10px 0}.caption{font-size:11px;gap:8px}.hero-image{aspect-ratio:1.25}.hero-note{padding-bottom:26px}.rotation-play{font-size:12px;padding:12px 16px;max-width:88%}.featured-series figcaption{font-size:12px;line-height:1.8}.commission-intro h1,.service-intro h1{font-size:clamp(42px,11vw,58px);line-height:1.07}.commission-intro .hero-lede,.service-intro .hero-lede{font-size:23px}.commission-photo img{max-height:420px}.archive-copy h3{font-size:36px}.archive-details{gap:22px}.archive-feature figcaption,.archive-details figcaption,.archive-film figcaption{font-size:12px}.scene-tag{font-size:10px;left:12px;bottom:12px}.context-grid p{font-size:15px}.context-grid .wide h3{font-size:34px}.context-nav{gap:4px 18px}.context-nav a{padding:8px 0}.disclosure{font-size:12px}.contact{padding:56px 0}.contact-grid{gap:28px}.contact h2{font-size:44px}.contact-form input:not(.trap),.contact-form textarea{font-size:16px}.contact-form .button{justify-self:stretch}.portfolio-footer{padding:28px 0;gap:20px}.portfolio-footer span{font-size:12px}.portfolio-footer nav{gap:0 18px}.portfolio-footer a{font-size:13px;min-height:44px}.support-page .wrap{padding-inline:20px}.support-page .hero{padding-top:40px;padding-bottom:42px}.support-page .hero h1{font-size:42px;line-height:1.1}.support-page .hero .lede{font-size:17px}.support-page .card,.support-page .case,.support-page .quote{padding:23px}.support-page .article-copy{font-size:17px}.support-page .article-page h1{font-size:44px}.platform-section h2{font-size:clamp(32px,8.7vw,44px)}#materials li{font-size:13px;padding:7px 10px}#story h2{font-size:clamp(31px,8.5vw,42px)}.wrap[data-lmml-skip]{padding:10px 0;font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

@media(max-width:360px){.menu-toggle span:last-child{display:none}.has-site-ui .menu-toggle{width:42px;padding:12px;justify-content:center}.portfolio-head{gap:10px}.nameplate{max-width:calc(100% - 110px)}}

@media(max-width:640px){.text-link,.workshop-records a{min-height:44px;display:inline-flex;align-items:center}}

/* The flying eye is the site identity, with its original animation intact. */
.brand-logo {
  position: relative;
  display: inline-block;
  line-height: 0;
  opacity: 0.9;
  /* separate glide / rise / fade so each eases once over the whole flight
     (a timing function on one multi-keyframe animation restarts per segment).
     Fill "backwards", not "both": once landed, logo.js moves it via inline translate/rotate */
  animation:
    logo-glide 3s cubic-bezier(.25, .6, .3, 1) backwards,
    logo-rise 3s cubic-bezier(.45, 0, .3, 1) backwards,
    logo-fade .9s ease-out backwards;
}
/* eye: the middle of the image, minus the beak (which gets its own layer below) */
.brand-logo img {
  position: relative;
  z-index: 1;
  height: 24px;
  width: auto;
  clip-path: polygon(32% 0, 68% 0, 68% 100%, 49.3% 100%, 47.4% 66.9%, 45.3% 61.8%, 43.4% 58.1%,
                     41.4% 54.4%, 39.5% 50.7%, 38.6% 47%, 36.2% 100%, 32% 100%);
}
/* beak: the cut-out beak (beak.png, 68x69 at 293,64 in logo.png) placed where it
   is drawn, behind the eye. logo.js slides it along the lower eyelid, turning it
   about the point where it meets the lid (328,80) so it keeps pointing outward. */
.brand-beak {
  position: absolute;
  left: 38.553%;
  top: 47.059%;
  width: 8.947%;
  height: 50.735%;
  z-index: 0;
  background: url("../img/beak.png?v=2") center / 100% 100% no-repeat;
  transform-origin: 51.47% 23.19%;
}
.brand-logo::before,
.brand-logo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: url("../img/logo.png?v=2") center / 100% 100% no-repeat;
  animation: 0.85s cubic-bezier(.45, 0, .55, 1) 3 both;
}
.brand-logo::before { clip-path: inset(0 64% 0 0); transform-origin: 36% 35%; animation-name: logo-flap-left; }
.brand-logo::after  { clip-path: inset(0 0 0 64%); transform-origin: 64% 35%; animation-name: logo-flap-right; }

/* one long ease-out from the left: keeps slowing down until it lands */
@keyframes logo-glide {
  from { translate: -60vw 0; }
  to   { translate: 0 0; }
}
/* rises from below, floats a few px above its spot, then settles down onto it */
@keyframes logo-rise {
  0%   { transform: translateY(46px) scale(.7) rotate(-5deg); }
  70%  { transform: translateY(-5px) scale(1) rotate(.5deg); }
  100% { transform: none; }
}
@keyframes logo-fade {
  from { opacity: 0; }
  to   { opacity: .9; }
}
/* each beat: a long, lifting upstroke, then a softer downstroke back to rest */
@keyframes logo-flap-left {
  0%, 100% { transform: none; }
  40%      { transform: rotate(32deg) scaleY(.9); }
  75%      { transform: rotate(-8deg) scaleY(1.02); }
}
@keyframes logo-flap-right {
  0%, 100% { transform: none; }
  40%      { transform: rotate(-32deg) scaleY(.9); }
  75%      { transform: rotate(8deg) scaleY(1.02); }
}

@media (prefers-reduced-motion: reduce) {
  .brand-logo, .brand-logo::before, .brand-logo::after { animation: none; }
}

.identity-brand{display:flex;align-items:center;gap:20px;text-decoration:none;min-width:0;color:var(--ink)}.identity-brand:hover{color:var(--ink);text-decoration:none}.identity-brand .brand-logo{flex:none;z-index:20}.identity-brand .brand-logo img{height:28px;max-width:none}.identity-brand .nameplate{display:block;max-width:none;white-space:nowrap}.identity-brand .nameplate>span{display:block}.identity-paths{display:block;border-top:1px solid var(--line);margin-top:26px}.identity-paths a{display:block;min-height:0;padding:10px 0;border:0;border-radius:0;background:none;font:400 16px/1.65 var(--ui);text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:#a3b09b;text-underline-offset:5px;transition:color .18s,text-decoration-color .18s}.identity-paths a:hover{background:none;border:0;color:var(--accent);text-decoration:underline;text-decoration-color:currentColor}
@media(max-width:640px){.identity-brand{flex-direction:column;align-items:flex-start;gap:10px;max-width:calc(100% - 120px)}.identity-brand .brand-logo img{height:24px}.identity-brand .nameplate{font-size:24px;max-width:none}.identity-brand .nameplate>span{font-size:8px;max-width:155px;white-space:normal}.portfolio-head{padding-top:24px;padding-bottom:20px;column-gap:10px}.identity-paths{display:block;margin-top:24px}.identity-paths a{font-size:16px;padding:10px 0;min-height:44px;line-height:1.6;border:0;border-radius:0;background:none}.identity-paths a:hover{background:none}}
@media(max-width:360px){.identity-brand{max-width:calc(100% - 105px)}.identity-brand .nameplate{font-size:23px}.identity-brand .nameplate>span{font-size:7px;max-width:145px}}

/* Light green sampled from the shirt in miha.jpg, with dark readable text. */
:root {
  --paper:#ffffff; --bg:#ffffff; --bg-alt:#f3f5f0; --card:#ffffff;
  --ink:#17252b; --ink-soft:#40515a; --muted:#40515a; --line:#bcc9ce;
  --shirt:#d1dfc1; --accent:#3e5735; --forest:#3e5735; --forest-deep:#293d22;
  --clay:#3e5735; --clay-soft:#edf2e7; --ring:#3e5735; --on-accent:#ffffff;
  --panel-bg:#f3f5f6; --panel-ink:#17252b; --panel-ink-soft:#40515a; --panel-accent:#3e5735;
  --serif:var(--ui);
  color-scheme:light;
}
body,.support-page { font-size:18px; line-height:1.75; }
h1,h2,h3,.support-page h1,.support-page h2,.support-page h3 { font-weight:600; letter-spacing:-.025em; line-height:1.15; }
a { text-decoration-color:currentColor; }
a:hover { color:var(--forest-deep); }
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
.identity-hero { position:relative; color:var(--ink); padding-block:64px; }
.identity-hero::before { content:"";position:absolute;inset:0 calc((min(1240px,100vw - 80px) - 100vw)/2);background:var(--shirt);border-top:4px solid var(--shirt);z-index:-1; }
.identity-hero h1 { color:var(--ink);font-size:clamp(54px,6.5vw,88px);line-height:1.08;letter-spacing:-.035em; }
.artist-intro h1 em,.intro h1 em,.contexts h2 em { color:var(--accent);font-style:normal; }
.identity-hero .hero-lede { font:400 clamp(24px,2.4vw,32px)/1.5 var(--ui); }
.identity-roles,.artist-intro>.muted { font-size:18px;line-height:1.75; }
.identity-hero .identity-paths { border-color:var(--line); }
.identity-paths a,.identity-hero .identity-paths a { color:var(--accent);font-size:18px;line-height:1.6;padding:12px 0;min-height:48px;text-decoration-color:currentColor; }
.identity-paths a:hover { color:var(--forest-deep); }
.identity-brand .brand-logo { opacity:1; }
.nameplate,.identity-brand .nameplate { font-family:var(--ui);font-weight:600; }
.nameplate span,.identity-brand .nameplate>span { font-size:14px;letter-spacing:.02em;line-height:1.5;color:var(--muted);text-transform:none; }
.portfolio-head nav a { font-size:17px;min-height:48px;display:inline-flex;align-items:center; }
.language,.has-site-ui .menu-toggle { font-size:16px;min-height:48px; }
.eyebrow,.practice-list .eyebrow,.work-info .eyebrow,.identity-hero .eyebrow,.support-page .eyebrow { font:600 15px/1.6 var(--ui);letter-spacing:.04em;color:var(--muted); }
.section-top p,.practice-list p,.workshop-records p,.archive-copy p,.artist-note p,.digital-options p,.work-info p,.context-grid p,.intro .intro-copy p,.support-page .hero .lede,.support-page .lede,.contact p,.timelapse-gallery>p { font-size:18px;line-height:1.75;color:var(--ink-soft); }
.featured-series,.platform-section,.contexts,.contact { background:var(--bg-alt);color:var(--ink); }
.platform-section h2,.platform-section .section-top p,.contexts .section-top p,.contexts p,.contexts .disclosure,.contact p { color:var(--ink); }
.platform-section .eyebrow,.contexts .eyebrow { color:var(--muted); }
.contexts a,.context-nav a { color:var(--accent);text-decoration:underline; }
.contexts a:hover { color:var(--forest-deep); }
.contexts .scene-tag { background:#fff;color:var(--ink); }
.button,.btn,.platform-section .button,.support-page .btn-primary { font-size:18px;min-height:52px; }
.button,.btn-primary,.platform-section .button { background:var(--shirt);color:var(--ink);border-color:var(--accent); }
.button:hover,.btn-primary:hover,.platform-section .button:hover { background:var(--forest-deep);color:#fff; }
.btn-ghost { color:var(--accent);border-color:var(--accent); }
.btn-ghost:hover,.identity-paths a:hover { background:transparent; }
.text-link,.work-links a,.workshop-records a,.archive-copy>.text-link,.hero-actions>.text-link { font-size:18px;color:var(--accent);text-decoration-color:currentColor; }
.series-note,.caption,.artist-image figcaption,.identity-image figcaption,.featured-series figcaption,.commission-photo figcaption,.archive-feature figcaption,.archive-details figcaption,.archive-film figcaption,.process-strip figcaption,.disclosure,.spec,.scene-tag,.contact .contact-small,.contact .form-note,.form-note,.portfolio-footer span,.portfolio-footer a,.wrap[data-lmml-skip],.support-page .chip { font-size:16px;line-height:1.65;color:var(--muted); }
.page-local-nav,.context-nav { font-size:17px; }
.contact-form label { font-size:18px;color:var(--ink); }
.contact-form input:not(.trap),.contact-form textarea { font-size:18px;line-height:1.6;background:#fff;color:var(--ink);border-color:#738991; }
.contact-form input:not(.trap):focus,.contact-form textarea:focus { outline:3px solid var(--accent); }
.commission-faq summary { font-size:20px; }
#materials li { font-size:17px;background:#fff;border-color:var(--line); }
.support-page .article-copy { font-size:20px;line-height:1.8; }
.support-page .card,.support-page .case,.support-page .quote,.support-page .service-link,.support-page .process-step { background:#fff;border-color:var(--line); }
.rotation-play { font-size:16px;background:#17252bee;color:#fff; }
.portfolio-footer { font-size:18px; }
.support-page .card p,.support-page .quote p.text,.support-page .tl-item p,.support-page summary { font:400 18px/1.75 var(--ui); }
.support-page .meta-line,.support-page .side-note,.support-page .tl-item time,.support-page .quote .who b,.support-page .quote .who span,.support-page .stat span,.support-page .breadcrumb,.support-page .article-comic figcaption,.support-page .sculpture-showcase { font-size:16px;line-height:1.65; }
.support-page .case .label { color:var(--muted); }
@media(max-width:900px) { .identity-hero::before { inset:0 -24px; } }
@media(max-width:640px) {
  .identity-hero::before { inset:0 -20px; }
  .identity-hero { padding-block:40px; }
  .identity-hero h1 { font-size:clamp(44px,12vw,64px); }
  .identity-hero .hero-lede { font-size:24px; }
  .identity-brand { max-width:100%;flex-basis:100%; }
  .identity-brand .nameplate { font-size:26px; }
  .identity-brand .nameplate>span { font-size:14px;max-width:none; }
  .has-site-ui .menu-toggle { margin-left:0; }
  .portfolio-head .language { margin-left:auto!important; }
  .portfolio-head nav { grid-template-columns:1fr; }
  .portfolio-head nav a { font-size:18px;padding:10px 0; }
  .portfolio-head.nav-open { max-height:85dvh;overflow-y:auto; }
  .section-top h2,h2 { font-size:clamp(32px,8.5vw,44px);line-height:1.2; }
  .identity-hero+.section { padding-top:56px; }
  .hero-actions { gap:16px; }
  .contact h2 { font-size:40px; }
  .caption { gap:8px; }
}

.identity-hero{isolation:isolate}.identity-image{min-width:0}

/* Flight needs the same persistent viewport anchor as the original header. */
.portfolio-head{position:sticky;top:0;z-index:40;background:var(--paper)}
.portfolio-head::before{content:"";position:absolute;inset:0 calc((100% - 100vw)/2);background:var(--paper);z-index:-1;pointer-events:none}
html{scroll-padding-top:210px}
@media(max-width:640px){html{scroll-padding-top:225px}}

/* Decorative symbols reinforce the four introductory destinations. */
.identity-paths a,.identity-hero .identity-paths a{display:flex;align-items:center;gap:16px}
.path-icon{width:28px;height:28px;flex:0 0 28px;color:var(--accent)}

/* Original Shamir shop drawing, tinted to match the navigation symbols. */
.path-icon-shamir{background:currentColor;mask:url("../img/shamir-shop-icon.png") center / 44px auto no-repeat;-webkit-mask:url("../img/shamir-shop-icon.png") center / 44px auto no-repeat}

/* The original flying eye perched on a browser and phone; the header bird stays independent. */
.identity-paths .path-icon{width:40px;height:36px;flex-basis:40px}
.identity-paths .path-icon-shamir{mask-size:52px auto;-webkit-mask-size:52px auto}


/* Match the Shamir drawing with a single currentColor silhouette. */
.path-icon-device{position:relative;display:inline-block}
.path-icon-device>svg{display:block;width:100%;height:100%}
.device-eye{position:absolute;display:block;background:currentColor;mask:url("../img/logo.png?v=2") center / contain no-repeat;-webkit-mask:url("../img/logo.png?v=2") center / contain no-repeat;pointer-events:none}
.device-eye-web{left:7px;top:17px;width:26px;height:8px}
.device-eye-phone{left:0;top:3px;width:40px;height:7.16px}

.device-eye-advice{left:8px;top:12px;width:24px;height:9px}
