/* Shared presentation rules. Project images and original media stay intact. */
:root{--pf-ink:#eeece7;--pf-muted:#a5a5a0;--pf-paper:#f1efe9;--pf-font:Arial,"Microsoft YaHei","PingFang SC",sans-serif;--pf-radius:12px}
.new-home,.studio-detail-layer{font-family:var(--pf-font)}
.nh-section-head h2{letter-spacing:-.035em;line-height:1.15}
.nh-section-head p,.nh-card-caption>span{color:var(--pf-muted)}
.nh-tool-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.nh-tool-media{height:auto;aspect-ratio:1.6;border-radius:var(--pf-radius);background:#eae8e2}
.nh-tool-media img,.nh-tool-card:nth-child(3) .nh-tool-media img{object-fit:contain;padding:0;background:transparent}
.nh-tool-card:nth-child(2) .nh-tool-media{background:#202427}
.nh-tool-card:nth-child(2) .nh-tool-media img{padding:22px}
.nh-footer .nh-shell{justify-content:flex-start}
.nh-footer{border-top-color:rgba(255,255,255,.06)}
.ps-feature{padding-top:104px}
.ps-feature-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:32px}
.ps-feature-head h3{font-size:clamp(34px,3vw,44px);font-weight:400;line-height:1.2;letter-spacing:-.03em}
.ps-feature-head p{font-size:16px;color:var(--pf-muted);margin-bottom:4px}
.ps-feature-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(38px,6vw,88px);align-items:center}
.ps-preview{background:#eeebe3;border-radius:var(--pf-radius);overflow:hidden;color:#34342e}
.ps-stage{height:410px;position:relative;display:grid;place-items:end center;padding-bottom:18px;isolation:isolate}
.ps-stage-label{position:absolute;left:26px;top:24px;font-size:16px;color:#696961}
.ps-floor{position:absolute;bottom:23px;width:146px;height:12px;background:#a8a398;border-radius:50%;filter:blur(7px);opacity:.27;z-index:-1}
.ps-sprite{--sprite-size:340px;width:var(--sprite-size);height:var(--sprite-size);background-image:url('assets/pet/expressions-display.png');background-size:400% 300%;background-position:0 0;image-rendering:pixelated;flex:none}
.ps-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 22px;border-top:1px solid #d9d6cf}
.ps-controls>div{display:flex;gap:4px;flex-wrap:wrap}
.ps-controls button{padding:9px 15px;min-height:44px;border-radius:24px;font-size:16px;color:#64645e;transition:color .2s,background .2s}
.ps-controls button[aria-pressed="true"]{background:#d8d5cd;color:#25251f}
.ps-controls #ps-pause{font-size:15px;padding-inline:10px}
.ps-controls button:hover{color:#111}
.ps-feature-copy h4{font-size:clamp(30px,3vw,42px);font-weight:400;line-height:1.3;letter-spacing:-.04em}
.ps-feature-copy p{font-size:18px;line-height:1.9;color:#b1b1ab;margin-top:24px;max-width:450px}
.ps-feature-copy p.ps-caption{font-size:15px;color:#a0a09a;margin-top:16px}
.ps-text-link{display:inline-flex;align-items:center;gap:34px;margin-top:34px;padding:13px 0;border-bottom:1px solid #777871;font-size:18px;color:#eeece7}
.ps-text-link>span:last-child{font-size:23px;transition:transform .2s}
.ps-text-link:hover>span:last-child{transform:translate(3px,-3px)}
.ps-scope{display:flex;flex-wrap:wrap;gap:12px 25px;margin-top:40px;color:#a0a09a;font-size:15px}
.ps-scope span{white-space:nowrap}
.studio-detail-layer .studio-detail-nav{padding:18px max(24px,calc((100vw - 1296px)/2));background:rgba(241,239,233,.96);backdrop-filter:blur(12px);border-bottom:1px solid #dedcd5}
.studio-detail-layer .studio-detail-back,.studio-detail-layer .studio-detail-pill{font-family:var(--pf-font);font-size:15px;letter-spacing:0;font-weight:400}
.studio-detail-layer .studio-detail-back{border:0;border-radius:0;background:transparent;color:#22251f;padding:9px 0}
.studio-detail-layer .studio-detail-back::before{content:'←';margin-right:12px}
.studio-detail-layer .studio-detail-pill{border:0;background:transparent;color:#6a6b65;padding-right:0}
.tool-detail-page{background:var(--pf-paper);font-family:var(--pf-font);color:#252722}
.tool-detail-title,.tool-detail-head h2,.tool-writing-release-copy h3,.tool-writing-scene blockquote,.tool-monitor-reading strong{font-family:var(--pf-font);font-weight:400;letter-spacing:-.035em}
.tool-detail-shell{width:min(1296px,calc(100% - 112px))}
.tool-detail-hero{gap:64px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);padding:80px 0;min-height:0;align-items:center}
.tool-detail-title{font-size:clamp(38px,4.5vw,64px);line-height:1.2;word-break:normal;text-wrap:balance}
.tool-detail-lead{font-size:17px;line-height:1.85;margin-top:24px}
.tool-detail-kicker{display:none}
.blood-meta{display:none}
.tool-detail-head h2{font-size:clamp(30px,3.1vw,44px);line-height:1.3}
.tool-detail-head p{font-size:16px;color:#666861;line-height:1.8}
.tool-detail-index{font-size:14px;letter-spacing:0;color:#6b6c65}
.tool-detail-hero-media,.tool-monitor-evidence,.tool-detail-wide,.tool-detail-frame,.tool-detail-monitor,.tool-detail-action-media,.tool-writing-hero,.tool-writing-release,.tool-writing-scene{border-radius:var(--pf-radius)}
.tool-detail-hero-media{height:430px;min-height:0}
.tool-monitor-evidence{height:430px}
.tool-detail-section{padding:80px 0}
.tool-detail-action figcaption{font-size:16px;color:#53564f}
.tool-detail-action figcaption span:last-child{font-size:14px;color:#6e716b}
.tool-detail-step p{font-size:15px;color:#63665e}
.tool-detail-footer{font-size:13px;color:#656960;letter-spacing:0}
.tool-writing-chapter h3,.tool-writing-scene-copy blockquote,.tool-writing-release-copy h3{font-family:var(--pf-font)!important}
.ps-project-intro{display:flex;justify-content:space-between;align-items:end;gap:32px;padding:76px 0 46px}
.ps-project-intro h1{font-size:clamp(42px,5vw,68px);font-weight:400;line-height:1.2;letter-spacing:-.04em}
.ps-project-intro p{font-size:18px;line-height:1.7;color:#6c6e65;max-width:340px;margin-bottom:5px}
.ps-project-tabs{display:flex;gap:30px;border-bottom:1px solid #d7d7ce;margin-bottom:36px}
.ps-project-tabs button{padding:0 0 16px;color:#787a70;font-size:20px;border-bottom:2px solid transparent;margin-bottom:-1px;min-height:44px}
.ps-project-tabs button[aria-selected="true"]{color:#252722;border-bottom-color:#252722}
.ps-project-panel[hidden]{display:none!important}
.ps-design-image{display:block;width:100%;border-radius:var(--pf-radius);overflow:hidden;background:#ede5d8;cursor:zoom-in}
.ps-design-image img{display:block;width:100%;height:auto}
.ps-project-description{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding:64px 0}
.ps-project-description h2,.ps-cat-intro h2{font-size:clamp(28px,3vw,42px);font-weight:400;line-height:1.35;letter-spacing:-.03em}
.ps-project-description p,.ps-cat-intro p{font-size:17px;line-height:1.85;color:#63675f;max-width:560px}
.ps-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;padding:64px 0 42px}
.ps-principles h3{font-size:25px;font-weight:400;margin-bottom:18px}
.ps-principles p{font-size:16px;line-height:1.8;color:#63675f}
.ps-project-note{font-size:15px;line-height:1.8;color:#6b6f65;padding:25px 0;border-top:1px solid #d4d5cb}
.ps-cat-intro{display:flex;justify-content:space-between;align-items:center;gap:40px;margin:46px 0 32px}
.ps-cat-intro p{max-width:430px}
.ps-cat-video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#182438;border-radius:var(--pf-radius)}
.ps-project-panel .vo-reveal{opacity:1;transform:none}
.ps-project-panel .tool-detail-head{grid-template-columns:1fr}
.ps-project-panel .tool-detail-index{display:none}
.ps-feature button:focus-visible,.ps-feature a:focus-visible,.ps-project button:focus-visible{outline:2px solid currentColor;outline-offset:5px}
@media(max-width:1000px){.ps-feature-grid{grid-template-columns:1fr 1fr;gap:32px}.ps-stage{height:360px}.ps-sprite{--sprite-size:290px}.ps-feature-copy p{font-size:16px}.tool-detail-shell{width:calc(100% - 48px)}.tool-detail-hero{gap:36px}.ps-project-intro{align-items:start}.ps-controls{padding:12px}.ps-controls button{padding-inline:12px}}
@media(max-width:760px){.ps-feature{padding-top:78px}.ps-feature-head{display:block}.ps-feature-head p{margin-top:12px}.ps-feature-grid{grid-template-columns:1fr;gap:34px}.ps-stage{height:350px}.ps-feature-copy h4{font-size:32px}.ps-feature-copy p{max-width:100%}.ps-scope{margin-top:28px}.nh-tool-grid{grid-template-columns:1fr;gap:32px}.nh-tool-media{aspect-ratio:1.65}.nh-tool-card .nh-card-caption strong{font-size:20px}.nh-tool-card:nth-child(2) .nh-tool-media img{padding:18px}.tool-detail-hero{grid-template-columns:1fr}.tool-detail-hero-media{height:auto;aspect-ratio:4/3}.tool-detail-shell{width:calc(100% - 34px)!important}.tool-detail-title{font-size:44px!important}.ps-project-intro{display:block;padding:45px 0 32px}.ps-project-intro p{font-size:16px;margin-top:20px}.ps-project-tabs{gap:28px;margin-bottom:24px}.ps-project-tabs button{font-size:18px}.ps-project-description{grid-template-columns:1fr;gap:22px;padding:38px 0}.ps-project-description p{font-size:16px}.ps-principles{grid-template-columns:1fr;gap:30px;padding:40px 0}.ps-principles h3{font-size:23px;margin-bottom:10px}.ps-cat-intro{display:block;margin-top:32px}.ps-cat-intro p{margin-top:20px}.ps-cat-video{aspect-ratio:16/10}.studio-detail-layer .studio-detail-nav{padding:12px 17px}}
@media(prefers-reduced-motion:reduce){.ps-feature *, .ps-project *{scroll-behavior:auto!important;transition:none!important}}
/* Final review: a shared rhythm for adjacent project groups. */
#tools{--pf-group-gap:clamp(76px,7.2vw,104px)}
#tools .sc-edc{margin-bottom:0}
#tools .ps-feature{padding-top:var(--pf-group-gap)}
#tools .sc-tools-subtitle{margin:var(--pf-group-gap) 0 32px;font-size:clamp(29px,2.7vw,39px);line-height:1.25;letter-spacing:-.035em}
#tools .nh-gallery{padding-top:var(--pf-group-gap)}
#tools .nh-gallery h3{line-height:1.25;letter-spacing:-.035em}
#tools .sc-edc-top h3{font-size:clamp(34px,3vw,44px);line-height:1.2;letter-spacing:-.03em}
.tool-detail-hero>*{min-width:0;max-width:100%}
.tool-monitor-evidence{width:100%;min-width:0;grid-template-columns:minmax(0,1fr)}
.tool-monitor-evidence img{width:min(349px,calc(100% - 48px));max-width:100%}
.tool-detail-monitor{min-width:0;max-width:100%}
.tool-detail-monitor>*{min-width:0}
.tool-monitor-row{grid-template-columns:50px minmax(0,1fr) 46px}
@media(max-width:760px){#tools .sc-tools-subtitle{margin-bottom:28px}.tool-monitor-evidence{height:auto;aspect-ratio:4/3}.tool-detail-monitor{grid-template-columns:minmax(0,1fr)}}
