/* Senya / 2026 — product evidence, AI practice and readable case studies. */
:root{--v2-paper:#f7f7f2;--v2-ink:#252a24;--v2-muted:#67715f;--v2-line:#d9ded2;--v2-blue:#3158d9;--v2-sage:#e9eee1;--v2-violet:#7458b3}
body.v2-page{margin:0;background:var(--v2-paper);color:var(--v2-ink);font:400 14px/1.85 -apple-system,BlinkMacSystemFont,"PingFang SC","Helvetica Neue",sans-serif;-webkit-font-smoothing:antialiased}body.v2-page *,body.v2-page *:before{box-sizing:border-box}.v2-page h1,.v2-page h2,.v2-page h3,.v2-page p,.v2-page figure{margin:0}.v2-page a{color:inherit;text-decoration:none}.v2-page button,.v2-page input,.v2-page select{font:inherit}.v2-page img{max-width:100%;display:block}.v2-page button{cursor:pointer}.v2-page h1,.v2-page h2,.v2-page h3{font-weight:550;letter-spacing:-.045em;text-wrap:balance}.v2-page [hidden]{display:none!important}.v2-shell{width:min(1240px,calc(100% - 96px));margin-inline:auto}.v2-kicker{font-size:10px;letter-spacing:.13em;color:var(--v2-muted);font-weight:500}.v2-hero{padding-block:46px 58px}.v2-hero-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--v2-line);padding-bottom:24px;gap:20px}.v2-hero-top .v2-kicker:last-child{text-align:right}.v2-hero h1{font-size:clamp(42px,4.8vw,70px);line-height:1.24;letter-spacing:-.065em;margin:36px 0 26px}.v2-hero h1 span{color:var(--v2-blue)}.v2-lead{font-size:16px;line-height:1.9;color:var(--v2-muted);max-width:660px}.v2-hero-grid{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:55px}.v2-hero-grid .v2-lead{font-size:14px}.v2-actions{display:flex;gap:13px;flex-wrap:wrap;align-items:center;margin-top:27px}.v2-button{display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:11px 21px;border:1px solid var(--v2-ink);border-radius:999px;font-size:12px;line-height:1.7;min-height:44px;background:var(--v2-ink);color:#fff!important}.v2-button.secondary{background:transparent;color:var(--v2-ink)!important;border-color:#bbc5b0}.v2-button:hover{background:var(--v2-blue);color:#fff!important;border-color:var(--v2-blue)}.v2-link{display:inline-flex;gap:20px;align-items:center;border-bottom:1px solid #b4bfaa;padding-bottom:5px;font-size:12px}.v2-link:hover{color:var(--v2-blue)}.v2-hero-figure{position:relative;background:var(--v2-sage);border-radius:7px;padding:25px;min-width:0}.v2-hero-figure img{width:100%;border-radius:4px}.v2-hero-figure figcaption{display:flex;justify-content:space-between;font-size:9px;color:var(--v2-muted);margin-top:16px}.v2-meta{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:25px;font-size:11px;color:var(--v2-muted)}.v2-meta span:before{content:'●';color:#78916c;font-size:7px;vertical-align:middle;margin-right:7px}.v2-section{padding-block:58px;border-top:1px solid var(--v2-line)}.v2-section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:30px}.v2-section h2,.v2-section-head h2{font-size:32px;line-height:1.5;margin-top:9px}.v2-section-head>p,.v2-section-head>div>p:last-child:not(.v2-kicker){font-size:12px;color:var(--v2-muted);max-width:420px;margin-top:9px}.v2-section-head>.v2-link{white-space:nowrap}.v2-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.v2-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.v2-card{min-width:0}.v2-card>figure,.v2-card>a>figure{background:var(--v2-sage);border-radius:5px;overflow:hidden;aspect-ratio:1.6}.v2-card img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.v2-card:hover img{transform:scale(1.02)}.v2-card small{display:block;font-size:9px;color:var(--v2-muted);letter-spacing:.08em;margin-top:19px}.v2-card h3{font-size:23px;margin-top:7px;line-height:1.5}.v2-card p{font-size:13px;color:var(--v2-muted);line-height:1.9;margin-top:12px}.v2-card .v2-link{margin-top:20px;font-size:11px}.v2-card-tags{display:flex;flex-wrap:wrap;gap:7px;font-size:10px;color:var(--v2-muted);margin-top:17px}.v2-card-tags>span{border:1px solid var(--v2-line);border-radius:99px;padding:3px 9px}.v2-feature{display:grid;grid-template-columns:1.2fr 1fr;gap:0;background:var(--v2-sage);border-radius:7px;overflow:hidden}.v2-feature>figure{min-height:350px;background:#e2e6dc;align-content:center;padding:26px}.v2-feature>figure>img{width:100%;height:auto;display:block;border-radius:5px}.v2-feature-copy{padding:42px;align-content:center}.v2-feature h3{font-size:34px;line-height:1.45;margin:14px 0 18px}.v2-feature p:not(.v2-kicker){color:var(--v2-muted);font-size:13px;line-height:1.9}.v2-feature .v2-actions{margin-top:25px}.v2-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.v2-columns>article{border-top:1px solid #bcc8b0;padding-top:19px}.v2-columns h3{font-size:21px;margin:12px 0}.v2-columns p{font-size:13px;color:var(--v2-muted)}.v2-columns .v2-link{margin-top:22px;font-size:11px}.v2-status{display:inline-flex;align-items:center;gap:7px;background:#e7edde;color:#526a44;border-radius:99px;font-size:10px;padding:4px 10px}.v2-status.concept{background:#eee8f8;color:#79648e}.v2-states{display:flex;flex-wrap:wrap;gap:9px;margin:23px 0}.v2-states span{display:inline-flex;border:1px solid #cfd8c5;border-radius:4px;padding:8px 13px;font-size:11px;color:#6d7c62}.v2-note{padding:20px 24px;border-left:2px solid #91a47e;background:#edf1e7;color:#65735a;font-size:12px;line-height:1.9;margin-top:25px}.v2-table-wrap{overflow:auto}.v2-table{width:100%;border-collapse:collapse;text-align:left;font-size:13px;line-height:1.9;margin-top:20px}.v2-table th{font-size:10px;letter-spacing:.04em;color:#7d8973;font-weight:450;background:#ebefe4}.v2-table th,.v2-table td{padding:17px 19px;border-bottom:1px solid var(--v2-line);vertical-align:top}.v2-table td{color:#64705b}.v2-table td:first-child{color:#30392b;font-weight:500}.v2-table code{font-size:11px;word-break:break-word}.v2-prose{max-width:820px}.v2-prose p{color:var(--v2-muted);font-size:14px;margin-top:18px}.v2-prose h2{margin-top:35px}.v2-prose h3{font-size:21px;margin-top:28px}.v2-prose ul,.v2-prose ol{padding-left:22px;color:var(--v2-muted);font-size:14px}.v2-prose li+li{margin-top:9px}.v2-prose a{border-bottom:1px solid #c3cdb9;color:#526eaa}.v2-prose figure{margin-block:30px}.v2-prose figcaption{font-size:11px;color:var(--v2-muted);margin-top:10px}.v2-prose blockquote{margin:25px 0;padding:20px 25px;border-left:2px solid #9eae8e;background:#edf0e7;color:#607454;font-size:16px}.v2-steps{list-style:none;padding:0!important;margin:25px 0;counter-reset:steps}.v2-steps>li{display:grid;grid-template-columns:35px 1fr;gap:15px;padding-block:22px;border-top:1px solid var(--v2-line);counter-increment:steps}.v2-steps>li:before{content:counter(steps,decimal-leading-zero);color:#7f936c;font-size:11px;padding-top:5px}.v2-steps h3{font-size:21px}.v2-steps p{font-size:13px;color:var(--v2-muted);margin-top:8px}.v2-footer{border-top:1px solid var(--v2-line);padding-block:28px;display:flex;gap:25px;justify-content:space-between;align-items:center;font-size:10px;color:#7d8774}.v2-footer .v2-wordmark{font-size:26px;font-weight:600;letter-spacing:-1.5px;color:var(--v2-ink)}.v2-contact{padding-block:45px;background:#e8eddf}.v2-contact>div{display:flex;justify-content:space-between;gap:30px;align-items:center}.v2-contact h2{font-size:30px;margin-top:9px;font-weight:550;letter-spacing:-1px}.v2-evidence{font:400 14px/1.9 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;color:var(--v2-ink);background:#f3f5ed;border-block:1px solid #d3dccc;padding:42px 0}.v2-evidence>.v2-shell{width:min(1240px,calc(100% - 80px))}.v2-evidence h2{font-size:28px;letter-spacing:-1px;font-weight:550;line-height:1.5;margin:10px 0 22px}.v2-evidence p{font-size:13px;color:#627256;line-height:1.9;margin:0}.v2-evidence .v2-columns{margin-top:22px}.v2-evidence .v2-columns h3{font-size:18px}.v2-evidence a{color:inherit}.v2-evidence .v2-kicker{font-size:10px;letter-spacing:.13em}.v2-evidence figure img{max-width:100%;display:block}.v2-evidence figcaption{font-size:11px;color:#718264;margin-top:9px}.v2-evidence .v2-grid{margin-top:25px}.v2-evidence .v2-grid figure{margin:0}.v2-evidence .v2-grid img{border-radius:5px}.v2-contract{background:#242d28;color:#d7dfd3;border-radius:5px;padding:25px;font:12px/1.9 ui-monospace,monospace;white-space:pre-wrap;overflow:auto;margin-top:22px}.v2-brief-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:22px}.v2-brief-meta>span{font-size:11px;color:#718064}.v2-role-paths{display:flex;gap:9px;flex-wrap:wrap;margin-block:25px}.v2-role-paths a{font-size:11px;border:1px solid #d1dac6;padding:8px 13px;border-radius:99px}.v2-role-paths a:hover{background:#e6ecdf}.v2-pattern-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.v2-pattern-tabs button{padding:10px 16px;background:none;border:1px solid #d2dac9;border-radius:99px;color:#738466;font-size:12px}.v2-pattern-tabs button[aria-selected=true]{background:#303a29;color:#fff}.v2-pattern-panel{margin-top:25px;padding:30px;border:1px solid #d1dcc6;background:#edf1e6;border-radius:7px}.v2-pattern-panel h3{font-size:25px;margin-bottom:12px}.v2-pattern-sample{padding:22px;margin-top:20px;background:#fafcf6;border:1px solid #d4dec9;border-radius:5px;font-size:13px;line-height:2}.v2-inline-options{display:flex;gap:8px;flex-wrap:wrap;margin-top:17px}.v2-inline-options button{font-size:12px;border:1px solid #b9c8a9;background:#f9fbf5;padding:8px 15px;border-radius:5px}.v2-inline-options button[aria-pressed=true]{background:#3d5331;color:#fff}.v2-cv-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px}.v2-cv-aside{align-self:start}.v2-cv-aside h2{font-size:21px}.v2-cv-aside p{font-size:13px;color:#6d7b61;margin-top:13px}.v2-experience{padding:25px 0;border-top:1px solid #d4ddca}.v2-experience h3{font-size:22px}.v2-experience>p{font-size:12px;color:#79866d;margin:7px 0 13px}.v2-experience ul{font-size:13px;color:#627256;line-height:1.9;padding-left:19px}.v2-experience li+li{margin-top:8px}.v2-cv-contact{display:flex;gap:25px;flex-wrap:wrap;font-size:12px;color:#607252;margin-top:25px}.v2-cv-contact a{border-bottom:1px solid #bdc9b0}.v2-profile-portrait{background:#e9eee1;min-height:300px;display:grid;place-items:center;border-radius:7px}.v2-profile-portrait>span{font-size:160px;font-weight:500;color:#849774;letter-spacing:-12px}.v2-legacy-summary{padding:35px max(24px,calc((100% - 1240px)/2));background:#edf1e7;border-bottom:1px solid #d6dfca;color:#56694a;font:13px/1.9 -apple-system,"PingFang SC",sans-serif}.v2-legacy-summary .v2-kicker{font-size:10px}.v2-legacy-summary h1{font-size:clamp(28px,4vw,44px);line-height:1.5;letter-spacing:-1px;margin:10px 0 14px;font-weight:550}.v2-legacy-summary p{max-width:800px}.v2-legacy-summary a{display:inline-block;font-size:12px;margin-top:18px;border-bottom:1px solid #acbda0}.v2-legacy-summary .v2-brief-meta{margin-bottom:0;margin-top:18px}.v2-legacy-image{display:block!important;max-width:1100px!important;width:calc(100% - 40px)!important;height:auto!important;margin:25px auto!important}
.pf-hero-v2{position:relative;border:1px solid #d9dfd0;background:#e8eddf;border-radius:6px;overflow:hidden;display:grid;align-content:center;min-height:430px;padding:26px}.pf-hero-v2 .hero-app-bar{display:flex;justify-content:space-between;font-size:10px;color:#5c6e4e;margin-bottom:20px}.pf-hero-v2 img{width:100%;height:auto;border:1px solid #ccd6c0;border-radius:5px}.pf-hero-v2 .hero-app-foot{display:flex;align-items:center;justify-content:space-between;margin-top:19px;gap:15px;font-size:11px;color:#607352}.pf-hero-v2 .hero-app-foot span:last-child{font-size:23px}.pf-hero-copy .v2-role-title{color:#5f7052;font-size:11px;letter-spacing:.02em;margin-bottom:18px}.pf-hero-copy .pf-hero-intro{max-width:470px}.pf-ai-strip{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:22px 25px;background:#e9eee1;border:1px solid #dce3d1;margin-top:28px;border-radius:5px}.pf-ai-strip p{font-size:12px;color:#718063}.pf-ai-strip h3{font-size:18px;font-weight:500;letter-spacing:-.5px;margin:3px 0 0}.pf-ai-strip a{font-size:12px;color:#536a42;white-space:nowrap}.wi-role-routes{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:25px}.wi-role-routes a{padding:8px 13px;font-size:11px;border:1px solid #d5ddca;border-radius:99px;color:#687c57}.wi-role-routes a:hover{background:#e7edde}.v2-page :focus-visible,.v2-evidence :focus-visible{outline:3px solid #6981cd;outline-offset:4px}
@media(min-width:769px){header.top-title nav{gap:23px!important}header.top-title nav a{font-size:12px!important}}
@media(max-width:1100px){.v2-shell{width:calc(100% - 64px)}.v2-hero-grid{gap:30px}.v2-feature-copy{padding:30px}.v2-feature h3{font-size:28px}.v2-hero h1{font-size:46px}.v2-hero-grid .v2-lead{font-size:13px}.v2-grid{gap:23px}.v2-card h3{font-size:21px}.v2-columns{gap:23px}.v2-cv-grid{gap:35px}.pf-hero-v2{min-height:340px;padding:20px}header.top-title nav{gap:18px!important}}
@media(max-width:800px){.v2-hero-grid,.v2-feature{grid-template-columns:1fr}.v2-hero-figure{margin-top:25px}.v2-hero{padding-top:30px;padding-bottom:40px}.v2-hero h1{font-size:48px;margin-top:28px}.v2-section{padding-block:42px}.v2-section-head{align-items:start;gap:18px}.v2-section h2,.v2-section-head h2{font-size:27px}.v2-grid{grid-template-columns:1fr 1fr}.v2-columns{grid-template-columns:1fr;gap:25px}.v2-feature>figure{min-height:0;padding:25px}.v2-feature-copy{padding:30px}.v2-evidence{padding:32px 0}.v2-evidence .v2-columns{grid-template-columns:1fr}.v2-cv-grid{grid-template-columns:1fr;gap:30px}.v2-contact h2{font-size:25px}.v2-profile-portrait{min-height:220px}.v2-profile-portrait>span{font-size:130px}.v2-hero-top .v2-kicker:last-child{font-size:8px}.pf-hero-v2{min-height:0}.pf-hero-v2 .hero-app-bar{margin-bottom:15px}}
@media(max-width:650px){.v2-shell{width:calc(100% - 40px)}.v2-hero{padding-top:25px}.v2-hero h1{font-size:38px;line-height:1.35;letter-spacing:-.055em}.v2-lead,.v2-hero-grid .v2-lead{font-size:13px}.v2-hero-grid{gap:10px}.v2-kicker{font-size:9px}.v2-hero-top{padding-bottom:18px}.v2-hero-top .v2-kicker:last-child{display:none}.v2-section-head{flex-direction:column;gap:18px}.v2-section-head>.v2-link{align-self:flex-start}.v2-section h2,.v2-section-head h2{font-size:25px}.v2-grid,.v2-grid.two{grid-template-columns:1fr;gap:33px}.v2-card h3{font-size:24px}.v2-card small{font-size:9px;margin-top:16px}.v2-card p{font-size:13px}.v2-feature-copy{padding:25px}.v2-feature>figure{padding:18px}.v2-feature h3{font-size:28px}.v2-actions{gap:12px}.v2-button{font-size:12px;padding:10px 17px}.v2-columns h3{font-size:20px}.v2-contact>div{flex-direction:column;align-items:start;gap:25px}.v2-contact h2{font-size:25px}.v2-footer{flex-wrap:wrap;gap:15px;font-size:9px}.v2-footer>span{order:3;width:100%}.v2-footer .v2-wordmark{font-size:25px}.v2-prose p,.v2-prose ul,.v2-prose ol{font-size:13px}.v2-prose h2{font-size:25px}.v2-table{font-size:12px;min-width:580px}.v2-table th,.v2-table td{padding:13px}.v2-evidence>.v2-shell{width:calc(100% - 40px)}.v2-evidence h2{font-size:24px}.v2-pattern-panel{padding:20px}.v2-pattern-panel h3{font-size:23px}.v2-contract{font-size:10px;padding:17px}.pf-ai-strip{padding:20px;align-items:start;flex-direction:column;gap:12px}.pf-ai-strip h3{font-size:18px}.pf-hero-v2{padding:18px}.pf-hero-v2 .hero-app-foot{font-size:10px}.wi-role-routes{gap:7px;margin-top:0}.wi-role-routes a{font-size:10px;padding:7px 10px}}
.wi-project-grid[data-layout=featured]{grid-template-columns:repeat(2,minmax(0,1fr))}
.v2-demo-wrap{height:auto!important}.v2-embedded-preview{display:block;border:1px solid #d1dbca;background:#f7f9f2;border-radius:7px;overflow:hidden;font:13px/1.7 -apple-system,"PingFang SC",sans-serif;color:#526a45!important}.v2-embedded-preview>img{display:block;width:100%;height:auto;max-height:620px;object-fit:contain}.v2-embedded-preview>span{display:flex;align-items:center;justify-content:space-between;padding:17px 22px;background:#e8eede}.v2-embedded-preview>span>b{font-size:23px;font-weight:400}.v2-embedded-preview:hover>span{background:#dce6d0}
.pf-hero-copy .v2-role-title{font-size:14px;font-weight:500}
.pf-project-grid:not(.is-single):not(.is-filtered) .pf-project:last-child:nth-child(odd){grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:38px;align-items:center}
@media(max-width:650px){.wi-project-grid[data-layout=featured]{grid-template-columns:1fr}.pf-project-grid:not(.is-single):not(.is-filtered) .pf-project:last-child:nth-child(odd){display:block}}
@media print{header.top-title,.v2-actions,.v2-contact,.v2-footer,.v2-role-paths,.skip-link{display:none!important}body.v2-page{background:#fff!important;padding-top:0!important}.v2-shell{width:100%!important}.v2-hero{padding-top:0}.v2-hero h1{font-size:34px}.v2-section{padding-block:20px}.v2-experience{break-inside:avoid}.v2-section h2{font-size:22px}.v2-cv-grid{display:block}.v2-hero-top{padding-bottom:10px}.v2-kicker{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
