:root{--orange:#bad52e;--accent-text:#56640b}
.hero-meta>span{display:flex;align-items:center;gap:10px;font-size:15px;white-space:nowrap;line-height:1.2}.meta-divider{color:var(--muted);font-weight:400}.hero-meta>a{font-size:9px;border-bottom:1px solid var(--ink);padding-bottom:4px}.hero-meta>a:hover{border-color:var(--accent-text);color:var(--accent-text)}
.hero h1{top:132px;font-size:clamp(30px,3.25vw,49px)}
.hero-name{font-size:26vw;top:290px;left:33px;letter-spacing:-.075em;line-height:.85;color:#abc51e}
.hero-portrait{width:49vw;max-width:740px;right:-55px;bottom:-65px;filter:none}
.hero-intro{bottom:90px;font-size:15px;line-height:1.4;max-width:340px}.hero-intro .text-link{margin-top:18px}
.text-link{color:var(--ink);gap:0;border-bottom:2px solid var(--orange);padding-bottom:3px;transition:background .2s}.text-link:hover{background:var(--orange)}
.rail-contact{padding-bottom:4px;border-bottom:2px solid transparent}.rail-contact:hover{color:var(--ink);border-color:var(--orange)}.rail-brand span{color:var(--accent-text)}.menu-inner>a:hover{color:var(--ink);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:8px}
.service summary:hover h3{color:var(--accent-text)}.service[open] .service-symbol,.service summary:hover .service-symbol{color:var(--accent-text);transform:rotate(45deg)}.mini-code span,.mini-motion span,.work-note>span{color:var(--accent-text)}
.tool-card-featured .tool-top>span:last-child{color:var(--paper)}.tool-top>span:last-child{color:inherit;margin-top:0;font-size:9px}.formatted-badge{color:var(--ink)}.journal-art-motion>span:nth-child(2){color:var(--paper)}.contact .tiny{color:#49511e}.contact-title em{color:var(--ink)}.contact-title:hover{color:var(--paper)}.footer-line{border-color:#8da226}.product-buy:hover{color:var(--accent-text)}.project-visit:hover{background:var(--orange)}
.contact-title{font-size:clamp(70px,11.8vw,185px)}.contact-title:after{content:"";display:block;position:absolute;bottom:-15px;left:0;width:0;height:3px;background:var(--ink);transition:width .5s}.contact-title:hover:after{width:100%}
@media(min-width:1600px){.hero-name{font-size:420px;top:290px}.hero-portrait{width:760px;right:-45px;bottom:-65px}}
@media(min-width:701px) and (max-width:1050px){.hero-name{font-size:27vw;top:280px;left:22px}.hero-portrait{width:54vw;right:-65px;bottom:-20px}.hero h1{top:130px;font-size:33px}.hero-meta>span{font-size:12px;gap:8px}.hero-meta>a{font-size:8px}.hero-intro{font-size:13px;bottom:85px;max-width:280px}}
@media(max-width:700px){.hero{height:850px}.hero-meta{padding-top:23px}.hero-meta>span{font-size:10px;gap:7px}.hero-meta>a{display:none}.hero h1{top:106px;font-size:32px;letter-spacing:-.055em}.hero-name{top:244px;left:12px;font-size:40vw;letter-spacing:-.075em}.hero-portrait{width:82%;max-width:380px;right:-28px;bottom:114px;filter:none}.hero-intro{bottom:61px;left:20px;font-size:12px;line-height:1.4;max-width:310px}.hero-intro p br{display:none}.hero-intro .text-link{font-size:12px;margin-top:11px}.contact-title{font-size:20vw}}
@media(max-width:370px){.hero{height:790px}.hero h1{font-size:28px}.hero-name{top:228px}.hero-portrait{bottom:125px;width:83%}.hero-meta>span{font-size:9px;gap:6px}.hero-intro{max-width:270px;font-size:11px}}

/* Open only the r–t pair at every responsive size. */
.hero-name>.hero-letter-t{position:static;display:inline;font-size:inherit;line-height:inherit;letter-spacing:inherit;margin-left:.055em}
