/* Progressive enhancement: content stays visible without motion support. */
.scroll-progress{position:fixed;inset:0 0 auto;height:3px;background:#925568;transform:scaleX(0);transform-origin:left;z-index:40;pointer-events:none}
.hero-signature{display:flex;align-items:center;gap:12px;margin-top:25px;font-size:13px;color:#57464d}
.hero-signature img{width:46px;height:46px;object-fit:cover;border-radius:50%;border:1px solid #cba5b0}
.hero-signature strong{display:block;color:#30282b;font-size:14px}.hero-signature span{display:block}
.hero-type>a{display:block;position:relative;padding:10px 0}
.hero-type>a strong{transition:color .28s,-webkit-text-stroke-color .28s,transform .45s cubic-bezier(.2,.8,.2,1)}
.hero-type>a:is(:hover,:focus-visible) strong{color:#925568;-webkit-text-stroke-color:#925568;transform:translateX(8px)}
.hero-type>a span:after{transform-origin:left;transition:transform .5s,background .4s}
.hero-type>a:is(:hover,:focus-visible) span:after{transform:scaleX(.85);background:#925568}
.about-intro{display:flex;flex-direction:column;align-items:flex-start;gap:28px}
.portrait-wrap{position:relative;width:220px;max-width:100%;margin:0;padding:12px 12px 0 0}
.portrait-wrap:before{content:'';position:absolute;inset:0 0 12px 12px;background:#ead5db;border-radius:48% 48% 10px 10px;transition:transform .5s}
.portrait-wrap img{position:relative;display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:48% 48% 8px 8px;filter:saturate(.88);transition:filter .5s,transform .5s}
.portrait-wrap:hover:before{transform:translate(5px,-5px)}.portrait-wrap:hover img{filter:saturate(1);transform:translate(-2px,2px)}
.about-text{align-self:center}
.channel-icon{width:42px;height:42px;display:grid;place-items:center;border:1px solid #cba5b0;border-radius:12px;background:#f8eef1;margin-bottom:18px;color:#57464d;transition:transform .45s,background .3s}
.channel-icon svg{width:23px;height:23px;stroke-width:1.6}
.channel-card{transition:transform .35s,border-color .35s}.channel-card:hover{transform:translateY(-5px);border-color:#925568}.channel-card:hover .channel-icon{transform:rotate(-8deg);background:#ead5db}
.case-select svg,.text-link svg,.button svg,.contact-link svg{transition:transform .3s}.case-select:hover svg,.text-link:hover svg,.button:hover svg{transform:translateX(4px)}.contact-link:hover svg{transform:translate(3px,-3px)}
.feed-preview{transition:box-shadow .35s}.feed-preview:hover{box-shadow:0 12px 35px #30282b12}.feed-image{transition:filter .4s}.feed-preview:hover .feed-image{filter:saturate(1.08)}
.case-result-metric{position:relative;overflow:hidden}.case-result-metric:after{content:'';position:absolute;left:0;bottom:0;height:3px;width:100%;background:#cba5b0;transform-origin:left}
.method li{position:relative}.method li:before{content:'';position:absolute;top:-1px;left:0;height:2px;width:48px;background:#925568;transform-origin:left}
.motion-enabled [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .65s ease var(--reveal-delay,0ms),transform .8s cubic-bezier(.16,1,.3,1) var(--reveal-delay,0ms)}
.motion-enabled [data-reveal].is-visible,.motion-enabled [data-reveal]:focus-within{opacity:1;transform:translateY(0)}
.motion-enabled .case-result-metric:after{transform:scaleX(0);transition:transform 1.1s cubic-bezier(.16,1,.3,1) .2s}.motion-enabled .case-result-metric.is-visible:after{transform:scaleX(1)}
.motion-enabled .metric-value{display:inline-block;transform:translateY(16px);opacity:0;transition:transform .8s cubic-bezier(.16,1,.3,1) .18s,opacity .6s .18s}.motion-enabled .is-visible .metric-value{transform:none;opacity:1}
.motion-enabled .method li:before{transform:scaleX(0);transition:transform .8s .2s}.motion-enabled .method li.is-visible:before{transform:scaleX(1)}
@media(max-width:700px){.hero-signature{margin-top:22px}.hero-type>a{padding:3px 0}.hero-type>a:is(:hover,:focus-visible) strong{transform:translateX(3px)}.about-intro{gap:24px}.portrait-wrap{width:180px}.channel-icon{width:36px;height:36px;margin-bottom:13px}.motion-enabled [data-reveal]{transform:translateY(14px)}}
@media(prefers-reduced-motion:reduce){.scroll-progress{display:none}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-enabled [data-reveal],.motion-enabled .metric-value{opacity:1;transform:none}.motion-enabled .case-result-metric:after,.motion-enabled .method li:before{transform:scaleX(1)}}
