/* Visual chemistry / Genius concepts — one identity, two signatures. */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.baseline-switch{display:inline-grid;position:relative;vertical-align:bottom;overflow:hidden;line-height:1.28;padding-bottom:.08em;letter-spacing:inherit}
.baseline-line{grid-area:1/1;white-space:nowrap;transition:transform 1s var(--ease),opacity .75s,filter .75s;transform:translateY(0);opacity:1}
.baseline-line+ .baseline-line{transform:translateY(110%);opacity:0;filter:blur(5px)}
.baseline-switch.is-second .baseline-line:not(:last-child){transform:translateY(-110%);opacity:0;filter:blur(5px)}
.baseline-switch.is-second .baseline-line:last-child{transform:translateY(0);opacity:1;filter:none}
.brand small .baseline-switch{text-transform:uppercase;line-height:1.45;vertical-align:top}
.brand small em{font:inherit;letter-spacing:inherit}
.brand small,.brand>span:last-child{font-size:14px}
.footer-identity .baseline-switch{line-height:1.2}
.reading-progress{position:fixed;top:0;left:0;right:0;height:2px;background:var(--copper);z-index:110;transform:scaleX(0);transform-origin:left;pointer-events:none}
.work-slider-top,.work-slider-controls{display:none}
.work-track:focus-visible{outline:2px solid #a26f49;outline-offset:8px}

@media(min-width:901px){
 .hero{overflow:clip}
 .hero-art{transform:translate3d(0,var(--hero-drift,0px),0);will-change:transform}
 .hero-copy{transform:translate3d(0,var(--copy-drift,0px),0)}
 .scroll-word{transition:opacity .28s ease-out}
 .heading-unfold{clip-path:inset(0);transition:clip-path 1.3s var(--ease),opacity 1s,transform 1.2s var(--ease)}
 .will-reveal:not(.in-view) .heading-unfold,.heading-unfold.will-reveal:not(.in-view){clip-path:inset(0 0 85%)}
 .footer-identity>.baseline-switch,.footer-identity>span{transform:translateY(var(--identity-drift,0px));transition:transform .5s ease-out}
 .work-slider{margin:0 calc(-1 * var(--gutter));--slide-progress:0}
 .work-slider-top{padding:0 var(--gutter) 22px;display:flex;justify-content:space-between;align-items:center;color:#79685a}
 .work-drag-hint{display:flex;align-items:center;gap:14px;font-size:16px}
 .work-drag-hint>span{font-size:27px;line-height:1}
 .work-track{position:relative;display:flex;gap:32px;padding:0 var(--gutter) 8px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter);scrollbar-width:none;cursor:grab}
 .work-track::-webkit-scrollbar{display:none}
 .work-track:after{content:'';flex:0 0 calc(10vw - 32px)}
 .work-track .project{flex:0 0 78vw;min-width:0;scroll-snap-align:start;scroll-snap-stop:always;opacity:1!important;transform:none!important;transition:filter .8s}
 .work-track .project-image,.work-track .project-large .project-image{height:clamp(390px,63vh,760px);aspect-ratio:auto;cursor:grab;isolation:isolate}
 .work-track .project-image>img{transform:translateY(var(--work-parallax,0px)) scale(1.16);transition:transform 1.1s var(--ease),filter 1s;filter:saturate(.65)}
 .work-track .work-active .project-image>img{transform:translateY(var(--work-parallax,0px)) scale(1.11);filter:saturate(1)}
 .work-track .project-image:hover>img{transform:translateY(var(--work-parallax,0px)) scale(1.15)}
 .work-track .project-label{padding:22px 0 0}
 .work-track .project-label h3{font-size:38px}
 .work-track .project-label p{font-size:18px}
 .work-track.is-dragging{scroll-snap-type:none;cursor:grabbing;user-select:none}
 .work-track.is-dragging .project-image{cursor:grabbing}
 .work-track .project-image img{pointer-events:none}
 .work-slider-controls{margin:35px var(--gutter) 0;display:flex;justify-content:space-between;align-items:center;gap:36px;border-top:1px solid #19120f30}
 .work-tabs{display:flex;gap:40px;align-self:stretch}
 .work-tabs>button{display:flex;position:relative;align-items:center;gap:14px;padding:22px 0;font-size:18px;white-space:nowrap;color:#79685a;transition:color .4s}
 .work-tabs>button[aria-current=true]{color:var(--ink)}
 .work-tabs>button:before{content:'';position:absolute;top:-1px;left:0;right:0;height:2px;background:#a14c24;transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}
 .work-tabs>button[aria-current=true]:before{transform:scaleX(1)}
 .work-tab-progress{position:absolute;left:0;right:0;top:-1px;height:3px;background:#d96528;transform:scaleX(0);transform-origin:left}
 .is-auto .work-tabs>button[aria-current=true] .work-tab-progress{transform:scaleX(var(--slide-progress))}
 .work-transport{display:flex;align-items:center;gap:10px}
 .work-step{height:48px;width:48px;display:grid;place-items:center;border:1px solid #19120f35;border-radius:50%;transition:background .4s,color .4s,transform .5s}
 .work-step:hover{background:var(--ink);color:var(--paper)}
 .work-step:disabled{opacity:.3;cursor:default;background:none;color:var(--ink)}
 .work-auto{display:flex;gap:8px;align-items:center;font-size:14px;padding:12px;margin-right:7px}
 .work-auto:disabled{opacity:.4;cursor:default}
 .auto-icon{display:grid;place-items:center}
 .auto-icon svg{width:18px;height:18px}
 .expertise-strip{overflow:hidden;position:relative;padding-inline:18px}
 .expertise-strip>span,.expertise-strip>i{transform:translateX(var(--strip-drift,0px));transition:transform .4s ease-out}
 .depth-photo{position:relative;isolation:isolate}
 .practice-visual{position:sticky;top:115px}
 .practice-visual.depth-photo>img,.about-portrait.depth-photo>img{transform:translate3d(var(--photo-x,0px),calc(var(--photo-y,0px) + var(--photo-scroll,0px)),0) scale(1.08);transition:transform .7s var(--ease)}
 .gallery-item>.depth-photo{overflow:hidden}
 .gallery-item>.depth-photo img{transform:translate3d(var(--photo-x,0px),var(--photo-y,0px),0) scale(1.025);transition:transform 1.1s var(--ease),filter .6s}
 .gallery-item>.depth-photo:after{content:'';position:absolute;inset:0;pointer-events:none;opacity:0;background:radial-gradient(circle at var(--light-x,50%) var(--light-y,50%),#ffffff20,transparent 60%);transition:opacity .5s}
 .gallery-item>.depth-photo:hover:after{opacity:1}
 .practice-visual.will-reveal,.about-title.will-reveal .about-portrait,.gallery-item.will-reveal{clip-path:inset(10% 0 0);transition:clip-path 1.4s var(--ease),opacity 1.2s,transform 1.2s var(--ease)}
 .practice-visual.in-view,.about-title.in-view .about-portrait,.gallery-item.in-view{clip-path:inset(0)}
 .element:before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(140px circle at var(--spot-x,50%) var(--spot-y,50%),#ffffff25,transparent 80%);opacity:0;transition:opacity .4s}
 .element:hover:before{opacity:1}
 .element-symbol{transition:transform .65s var(--ease)}
 .element:hover .element-symbol{transform:translateY(-5px)}
 .element.selected .element-symbol{transform:translateY(-3px)}
 .chem-logo .logo{transition:transform .9s var(--ease)}
 .chem-logo:hover .logo{transform:translateY(-6px)}
 .contact .footer-identity{perspective:1000px}
 .footer-identity>a{transition:transform .7s var(--ease)}
 .footer-identity>a:hover{transform:translateY(-6px) rotate(-3deg)}
}
@media(min-width:901px) and (hover:hover) and (pointer:fine){
 .magnetic{translate:var(--mag-x,0px) var(--mag-y,0px);transition:translate .45s var(--ease),background .4s,color .4s,transform .5s}
 .pill{position:relative;overflow:hidden;isolation:isolate}
 .pill:before{content:'';position:absolute;inset:0;border-radius:inherit;background:#f68a47;z-index:-1;transform:translateY(101%);transition:transform .55s var(--ease)}
 .pill:hover:before{transform:translateY(0)}
 .pill:hover{color:var(--ink)}
 .pill svg,.header-cta svg,.film-link svg{transition:transform .5s var(--ease)}
 .pill:hover svg,.header-cta:hover svg{transform:translateX(5px)}
 .film-link>span{transition:background .5s,border-color .5s,transform .5s var(--ease)}
 .film-link:hover>span{background:var(--copper);border-color:var(--copper);color:var(--ink);transform:scale(1.1)}
 .line-link{position:relative}
 .line-link:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .6s var(--ease)}
 .line-link:hover:after{transform:scaleX(1);transform-origin:left}
 .reel-slide>button:hover .reel-photo{transform:scale(1.035)}
 .reel-zoom{transition:transform .5s var(--ease),background .5s}
 .reel-slide>button:hover .reel-zoom{transform:rotate(90deg);background:#a67850}
 .reel-thumbnails>button:hover{opacity:1;transform:translateY(-4px)}
 .reel-thumbnails>button{transition:opacity .4s,transform .5s var(--ease),border-color .4s}
 .reel-thumbnails{padding-bottom:5px}
}
@media(max-width:900px){
 .work-track>.project+.project{margin-top:52px}
 .work-track{outline:none}
 .footer-identity .baseline-switch{font-size:clamp(32px,7.5vw,65px)}
}
@media(min-width:901px) and (max-width:1100px){.work-tabs{gap:22px}.work-tabs>button{font-size:16px;gap:8px}.work-slider-controls{gap:14px}.work-auto{margin-right:0;padding:10px 3px}.work-step{width:44px;height:44px}}
.reduced .magnetic{translate:none!important}.reduced .depth-photo>img,.reduced .expertise-strip>*{transform:none!important}.reduced .baseline-line{transition:none!important}.reduced .practice-visual,.reduced .about-portrait{clip-path:none!important}
.reduced .work-track .project-image>img,.reduced .reel-photo{transform:none!important;transition:none!important}.reduced .element-symbol,.reduced .chem-logo .logo{transform:none!important}.reduced .reading-progress{display:none}
.reduced .hero-art,.reduced .hero-copy,.reduced .footer-identity>span{transform:none!important}.reduced .scroll-word{opacity:1!important}.reduced .heading-unfold{clip-path:none!important}
@media(prefers-reduced-motion:reduce){.magnetic{translate:none!important}.depth-photo>img,.expertise-strip>*{transform:none!important}.baseline-line{transition:none!important}.practice-visual,.about-portrait{clip-path:none!important}.work-track .project-image>img{transform:none!important}}
