/* Shared 10px radius matches the homepage curated case photos. */
:root{--sl-image-radius:10px;--sl-image-border:#e1e6ed}
.page-about main img,.page-services main img,.page-work main img{border-radius:var(--sl-image-radius)}
.page-about .detail-visual,.page-services .detail-visual,.page-work .case-image,.page-work .work-image,.page-work .photo,.page-work .video-card>div,.page-services .r-photo{border:1px solid var(--sl-image-border);border-radius:var(--sl-image-radius);overflow:hidden}
.page-services .r-photo img{border-radius:0}
.page-services .service-tile{display:flex;flex-direction:column;border:1px solid var(--sl-image-border);border-radius:var(--sl-image-radius);overflow:hidden;background:#fff;transition:box-shadow .25s,transform .25s}
.page-services .service-tile:hover{box-shadow:0 12px 32px #1024440d;transform:translateY(-3px)}
.page-services .service-tile .tile-img,.page-services .service-tile .factory-tile{height:auto;aspect-ratio:16/9;overflow:hidden;border-radius:0;min-height:0}
.page-services .service-tile .tile-img img{border-radius:0;display:block}
.page-services .service-tile .tile-copy{padding:23px 24px 26px;flex:1}
.page-services .service-tile .tile-copy h2{font-size:21px;line-height:1.5}
.page-services .service-tile .factory-tile{padding:24px;display:flex;flex-direction:column;justify-content:center}
.page-services .service-tile .factory-tile strong{font-size:27px}
.about-numbers{max-width:1440px;margin:0 auto;padding:0 7% 42px}
.number-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.number-grid article{padding:28px 20px;border:1px solid var(--sl-image-border);border-radius:10px;background:#f6f8fc;min-width:0}
.stat-value{display:flex;align-items:baseline;justify-content:flex-start;gap:5px;white-space:nowrap;line-height:1.15;font-variant-numeric:tabular-nums;color:#1254e8}
.stat-value strong{font-size:clamp(34px,3.8vw,55px);font-weight:500;letter-spacing:-.04em}
.stat-prefix,.stat-unit{font-size:16px;letter-spacing:0}.stat-prefix:empty{display:none}
.number-grid h2{font-size:17px;line-height:1.5;letter-spacing:0;font-weight:500;margin:18px 0 6px}
.number-grid p{font-size:12px;line-height:1.8;color:#68758a;margin:0}
.page-work [data-category][hidden]{display:none!important}
.page-work .portfolio-filters{display:flex;flex-direction:column;gap:16px;align-items:stretch;padding:23px;background:#f6f8fc;border:1px solid var(--sl-image-border);border-radius:10px;margin-bottom:14px}
.filter-row{display:flex;gap:20px;align-items:baseline}.filter-label{flex:none;font-size:12px;color:#64748b;line-height:2.5}.filter-options{display:flex;flex-wrap:wrap;gap:8px}
.page-work .portfolio-filters button{font:inherit;font-size:13px;padding:8px 13px;border:1px solid #dbe3ee;border-radius:999px;line-height:1.5;color:#102444;background:#fff;cursor:pointer;white-space:nowrap}
.page-work .portfolio-filters button.active{background:#1254e8;color:#fff;border-color:#1254e8}.portfolio-filters sup{font-size:9px;margin-left:6px;opacity:.65}
.work-filter-status{font-size:12px;color:#68758a;margin:0 0 28px}
.page-work .category-project{text-align:left;background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;display:block;width:100%;min-width:0}
.page-work .work-grid.portfolio{align-items:start}
.page-work .work-grid .work-image,.page-work .work-grid .photo{aspect-ratio:3/4;position:relative;width:100%;box-sizing:border-box;background:#f5f7fa}
.page-work .work-grid .photo img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0}
.page-work .work-grid .design-project .photo img{object-fit:contain;background:#fff;padding:10px;box-sizing:border-box}
.page-work .work-meta,.page-work .project-caption{display:block;margin-top:16px}
.page-work .work-grid h3{font-size:17px;line-height:1.5;margin:0 0 7px;font-weight:500;letter-spacing:0}
.page-work .work-grid .project-caption>span{display:block;font-size:11px;color:#68758a}
.original-footer .social-buttons .cn-social{width:46px;height:46px;flex:0 0 46px;padding:10px;gap:0}
.original-footer .social-buttons .cn-social svg{width:24px;height:24px}
.process-hero .actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:26px}
.process-keywords{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px;color:#64748b;font-size:12px}
.process-keywords span+span{padding-left:12px;border-left:1px solid #dce3ee}
.process-visual{margin:0;min-width:0}.process-visual img{display:block;aspect-ratio:4/3;width:100%;height:auto;object-fit:cover;border-radius:10px;border:1px solid var(--sl-image-border)}
.process-visual figcaption{font-size:12px;color:#68758a;margin-top:12px;line-height:1.7}
.page-process h2{line-height:1.45;letter-spacing:-.025em}.process-section{padding-top:35px}.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;list-style:none;margin:0;padding:0;counter-reset:step}
.process-step{background:#fff;border:1px solid #dce3ee;border-radius:10px;padding:28px;min-width:0;display:flex;flex-direction:column}
.step-index{color:#1254e8;font-size:34px;font-weight:400;letter-spacing:-.05em;line-height:1}
.process-step h3{font-size:23px;font-weight:500;line-height:1.45;margin:22px 0 12px}.process-step>p{font-size:14px;line-height:1.9;margin:0 0 24px;color:#5b6b80}
.process-step dl{margin:auto 0 0;padding-top:18px;border-top:1px solid #e1e6ed;font-size:12px;line-height:1.8}.process-step dl>div+div{margin-top:10px}.process-step dt{color:#1254e8;margin-bottom:3px}.process-step dd{margin:0;color:#45566f}
.process-routes{background:#f4f7fc}.route-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.route-grid article{display:flex;flex-direction:column;padding:27px;background:white;border:1px solid #dce3ee;border-radius:10px}.route-grid h3{font-size:24px;font-weight:500;margin:18px 0 12px}.route-grid p{font-size:14px;line-height:1.9;margin:0 0 24px}.route-grid .text-link{margin-top:auto;align-self:flex-start}
.process-prepare{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:start}.process-prepare h2{margin:20px 0}.process-prepare>div>p{font-size:15px;line-height:1.9;margin-bottom:26px}.process-prepare ul{list-style:none;margin:0;padding:0}.process-prepare li{display:flex;gap:22px;padding:20px 0;border-bottom:1px solid #dce3ee}.process-prepare li:first-child{padding-top:0}.process-prepare li>span{color:#1254e8;font-size:13px;line-height:2}.process-prepare h3{font-size:18px;font-weight:500;line-height:1.6;margin:0 0 7px}.process-prepare li p{font-size:13px;line-height:1.8;margin:0}
.process-faq{display:grid;grid-template-columns:1fr 1.4fr;gap:8%;padding-top:20px}.process-faq h2{margin-top:18px}.page-process .process-faq .faq{margin-top:0;max-width:none}
.page-process :is(a,button):focus-visible,.portfolio-filters button:focus-visible,.category-project:focus-visible{outline:3px solid #1254e8;outline-offset:5px}
@media(max-width:1000px){.number-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-value strong{font-size:48px}.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.route-grid{gap:16px}.route-grid article{padding:22px}.filter-row{gap:14px}}
@media(max-width:720px){.about-numbers{padding:0 6% 25px}.number-grid{gap:12px}.number-grid article{padding:24px 15px}.stat-value{gap:3px}.stat-value strong{font-size:clamp(28px,8vw,44px)}.stat-prefix,.stat-unit{font-size:13px}.number-grid h2{font-size:15px;margin-top:15px}.number-grid p{font-size:11px}.page-services .service-tile .tile-copy{padding:20px}.page-work .work-grid.portfolio{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 14px}.page-work .work-grid h3{font-size:15px}.page-work .portfolio-filters{padding:16px;gap:14px}.filter-row{display:block}.filter-label{display:block;margin-bottom:6px}.page-work .portfolio-filters button{font-size:12px;padding:7px 10px}.filter-options{gap:7px}.process-grid,.route-grid,.process-prepare,.process-faq{grid-template-columns:1fr}.process-prepare,.process-faq{gap:34px}.process-step{padding:25px}.process-step h3{margin-top:16px}.process-step>p{margin-bottom:20px}.process-hero .actions{gap:20px}.process-hero h1{font-size:36px}.process-section{padding-top:24px}.process-keywords{margin-top:24px}}
@media(prefers-reduced-motion:reduce){.page-services .service-tile{transition:none}.page-services .service-tile:hover{transform:none}}
