/* Shared editorial treatment for the five expertise pages. */
.studio-service { background:#0e0d11; }
.studio-service main { padding-top:80px; }
.studio-service:not(.st-has-project) .xp-project-trigger { visibility:hidden; }
.st-service-hero { position:relative; isolation:isolate; overflow:hidden; padding:36px 0 34px; background:#0e0d11; }
.st-service-art { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 47%; z-index:-1; opacity:.5; }
.st-breadcrumb { display:flex; align-items:center; gap:14px; margin-bottom:36px; color:#d0c6db; font-size:12px; }
.st-breadcrumb a { color:inherit; text-decoration:none; padding-block:6px; }
.st-breadcrumb a:hover { color:#fff; text-decoration:underline; }
.st-breadcrumb i { font-size:10px; color:#c5a0fa; }
.st-service-index { display:flex; align-items:center; gap:24px; color:#c5a0fa; font-size:12px; margin:0 0 22px; }
.st-service-index span { color:#cfc9d7; }
.st-service-hero h1 { font-size:72px; line-height:1.06; font-weight:650; max-width:14ch; margin:0 0 26px; color:#fff; overflow-wrap:normal; }
.st-service-promise { font-size:24px; line-height:1.35; max-width:32ch; margin:0 0 16px; color:#f0eaf7; }
.st-service-lead { color:#c1bacb; font-size:16px; line-height:1.8; max-width:47ch; margin:0; }
.st-service-actions { display:flex; align-items:center; gap:24px; flex-wrap:wrap; margin-top:28px; }
.st-service-actions .btn-primary { background:#f5f5f4; color:#18131f; border:1px solid #f5f5f4; padding:14px 20px; gap:18px; font-size:14px; }
.st-service-actions .btn-primary:hover { background:#c5a0fa; border-color:#c5a0fa; transform:translateY(-2px); }
.st-service-actions .ix-link { font-size:14px; color:#e4d6f6; gap:12px; }
.st-service-signature { margin:40px 0 0; padding-top:20px; border-top:1px solid #ffffff30; color:#c0b8ca; font-size:12px; }
.st-section-nav { position:sticky; top:80px; z-index:50; background:#f5f5f4; border-bottom:1px solid #17121d25; }
.st-section-nav .container { display:flex; gap:32px; overflow-x:auto; scrollbar-width:thin; }
.st-section-nav a { color:#655d6d; text-decoration:none; white-space:nowrap; font-size:13px; font-weight:550; min-height:58px; display:flex; align-items:center; border-bottom:2px solid transparent; }
.st-section-nav a[aria-current=location] { color:#241b2c; border-color:#8138ba; }
.st-section-nav a:hover { color:#7037a5; }
.studio-service :is(section,article)[id] { scroll-margin-top:164px; }
.studio-service h2 { font-size:42px; line-height:1.12; font-weight:650; }
.studio-service .ex-definition { background:#f5f5f4; padding:72px 0; }
.studio-service .ex-definition-grid { grid-template-columns:.9fr 1.1fr; gap:88px; }
.studio-service .ex-definition h2 { font-size:36px; color:#211a29; max-width:20ch; }
.studio-service .ex-definition p { font-size:18px; line-height:1.85; color:#655b6e; }
.studio-service .ex-definition .ex-source { color:#6e369a; font-size:13px; }
.studio-service .xp-automation .ix-kicker { color:#6e369a; }
.studio-service .ex-use-grid { gap:40px; margin-top:40px; }
.studio-service .ex-use { padding:24px 0 0; border-top:1px solid #b6a0ca55; }
.studio-service .ex-use h3 { font-size:26px; line-height:1.2; max-width:20ch; margin:28px 0 18px; }
.studio-service .ex-use p { font-size:15px; line-height:1.8; max-width:36ch; }
.studio-service .ex-number { font-size:12px; color:#c5a0fa; }
.studio-service .ex-delivery { padding:0 0 96px; }
.studio-service .ex-delivery-grid { grid-template-columns:1.1fr .9fr; gap:88px; align-items:start; border-top:1px solid #ffffff25; padding-top:64px; }
.studio-service .ex-delivery h2 { max-width:20ch; margin-top:18px; }
.st-delivery-list { list-style:none; padding:0; margin:32px 0 0; }
.st-delivery-list li { display:grid; grid-template-columns:28px 1fr; gap:18px; padding:20px 0; margin:0; border-bottom:1px solid #ffffff22; font-size:16px; line-height:1.65; color:#d3cbdc; }
.st-delivery-list li::before { content:attr(data-step); color:#c5a0fa; font-size:12px; padding-top:4px; }
.studio-service .ex-focus { background:none; border:0; border-left:2px solid #c5a0fa; border-radius:0; padding:8px 0 8px 32px; margin-top:58px; }
.studio-service .ex-focus h3 { font-size:28px; line-height:1.25; color:#f2e8fe; margin:22px 0; }
.studio-service .ex-focus p { color:#bab0c7; font-size:15px; line-height:1.85; }
.st-service-proof { background:#f5f5f4; color:#201827; padding:88px 0; }
.st-proof-grid { display:grid; grid-template-columns:.65fr 1.35fr; gap:72px; align-items:center; }
.st-service-proof .ix-kicker { color:#70448c; }
.st-service-proof h2 { color:#201827; font-size:44px; margin:20px 0 14px; }
.st-proof-subtitle { color:#3f314c; font-size:17px; line-height:1.55; margin-bottom:22px; }
.st-proof-description { font-size:16px; line-height:1.8; color:#6b6075; margin-bottom:28px; }
.st-service-proof .ix-link { color:#683591; font-size:14px; }
.st-proof-visual { display:block; color:#211829; text-decoration:none; min-width:0; }
.st-proof-visual>img { display:block; width:100%; height:auto; border-radius:4px; background:#e4e1e8; box-shadow:0 16px 42px #24162d18; transition:transform .55s cubic-bezier(.2,.7,.2,1); }
.st-proof-visual:hover>img { transform:translateY(-5px); }
.st-proof-caption { display:flex; justify-content:space-between; align-items:center; gap:12px; padding-top:18px; font-size:13px; border-top:1px solid #23162c25; margin-top:18px; }
.st-proof-caption i { font-size:20px; }
.st-proof-note { color:#796d82; font-size:12px; line-height:1.7; }
.st-web3-proof .ex-network { transform:none; padding:32px; width:100%; max-width:none; border-radius:4px; margin:0; background:#18131e; color:#fff; }
.st-web3-proof .ex-network-title { color:#fff; }
.st-web3-proof .ex-network figcaption { color:#c7b8d5; }
.studio-service .st-service-faq { padding-block:88px; }
.studio-service .ex-faq { max-width:980px; }
.studio-service .ex-faq h2 { margin-bottom:36px; }
.studio-service .ex-faq details { border-top:1px solid #ffffff30; border-bottom:0; border-radius:0; background:none; padding:0; }
.studio-service .ex-faq details:last-child { border-bottom:1px solid #ffffff30; }
.studio-service .ex-faq summary { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:26px 0; font-size:20px; font-weight:500; line-height:1.45; list-style:none; color:#efe7f6; }
.studio-service .ex-faq summary::-webkit-details-marker { display:none; }
.studio-service .ex-faq summary::after { content:'+'; font-size:27px; font-weight:400; color:#c5a0fa; flex:0 0 24px; text-align:center; transition:transform .2s; }
.studio-service .ex-faq details[open] summary::after { transform:rotate(45deg); }
.studio-service .ex-faq details p { color:#bfb4cc; font-size:16px; line-height:1.8; max-width:78ch; padding:0 40px 28px 0; margin:0; }
.studio-service .st-service-cta { background:#c5a0fa; padding-block:80px; border:0; }
.studio-service .st-service-cta h2 { color:#241330; font-size:48px; max-width:19ch; margin:0 0 24px; }
.studio-service .st-service-cta p { color:#493158; max-width:48ch; font-size:17px; line-height:1.8; margin-bottom:28px; }
.studio-service .st-service-cta .btn-primary { background:#21152c; color:#fff; border-color:#21152c; padding:15px 22px; margin-right:16px; }
.studio-service .st-service-cta .xp-button { color:#2b1836; border-color:#77528f; }
.st-other-expertises { padding:88px 0; }
.st-other-expertises h2 { max-width:24ch; margin:18px 0 40px; }
.st-related-services { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 52px; }
.st-related-services a { display:grid; grid-template-columns:24px 1fr 24px; gap:18px; align-items:center; text-decoration:none; color:#eee5f9; padding:28px 0; border-top:1px solid #ffffff35; }
.st-related-services a>span { font-size:12px; color:#b59fcc; }
.st-related-services h3 { font-size:24px; line-height:1.25; font-weight:550; margin:0; }
.st-related-services i { font-size:22px; color:#c5a0fa; transition:transform .2s; }
.st-related-services a:hover i { transform:translate(3px,-3px); }
.studio-service .site-footer { padding:48px 0 36px; border-top:1px solid #ffffff20; }
.studio-service .site-footer .ex-links { margin-block:28px; gap:24px; }
.studio-service .site-footer .ex-links a { border:0; border-radius:0; padding:5px 0; font-size:14px; }
.studio-service .footer-copy { font-size:12px; color:#a49aaa; margin-top:28px; }
.st-service-enter { transition:opacity .65s,transform .65s cubic-bezier(.2,.7,.2,1); }
.st-service-enter.st-service-pending { opacity:0; transform:translateY(18px); }
@media (prefers-reduced-motion:no-preference) {
  .st-service-hero h1 { animation:st-entrance .65s both; }
  .st-service-promise { animation:st-entrance .65s .1s both; }
}
@media (max-width:1100px) {
  .studio-service main { padding-top:72px; }
  .st-section-nav { top:72px; }
  .st-section-nav .container { gap:24px; }
  .st-service-hero h1 { font-size:60px; max-width:13ch; }
  .st-service-art { object-position:left center; opacity:.4; }
  .st-service-promise { max-width:28ch; }
  .st-service-lead { max-width:43ch; }
  .st-proof-grid { gap:40px; grid-template-columns:.8fr 1.2fr; }
  .studio-service .ex-delivery-grid, .studio-service .ex-definition-grid { gap:40px; }
  .studio-service .ex-use-grid { gap:26px; }
}
@media (max-width:760px) {
  .st-service-hero { padding:24px 0; }
  .st-service-art { height:100%; object-position:40% center; opacity:.16; }
  .st-breadcrumb { margin-bottom:28px; }
  .st-service-index { font-size:11px; gap:18px; margin-bottom:20px; }
  .st-service-hero h1 { font-size:46px; margin-bottom:22px; max-width:14ch; }
  .st-service-promise { font-size:20px; max-width:100%; line-height:1.4; }
  .st-service-lead { font-size:15px; line-height:1.75; max-width:100%; }
  .st-service-actions { gap:18px; margin-top:24px; }
  .st-service-actions .btn-primary { font-size:13px; }
  .st-service-actions .ix-link { font-size:13px; }
  .st-service-signature { margin-top:28px; font-size:11px; }
  .st-section-nav .container { width:100%; padding-inline:20px; gap:0 20px; flex-wrap:wrap; }
  .st-section-nav a { min-height:42px; font-size:12px; }
  .studio-service :is(section,article)[id] { scroll-margin-top:180px; }
  .studio-service h2, .studio-service .ix-section h2, .studio-service .ex-definition h2 { font-size:32px; max-width:100%; }
  .studio-service .ex-definition { padding-block:48px; }
  .studio-service .ex-definition-grid, .studio-service .ex-delivery-grid, .st-proof-grid { grid-template-columns:1fr; gap:28px; }
  .studio-service .ex-definition p { font-size:16px; line-height:1.8; }
  .studio-service .ex-use-grid { grid-template-columns:1fr; margin-top:32px; gap:32px; }
  .studio-service .ex-use { padding-top:20px; }
  .studio-service .ex-use h3 { margin:16px 0 12px; font-size:24px; max-width:100%; }
  .studio-service .ex-use p { max-width:100%; margin:0; }
  .studio-service .ex-number { margin:0; }
  .studio-service .ex-delivery { padding-bottom:64px; }
  .studio-service .ex-delivery-grid { padding-top:40px; }
  .st-delivery-list { margin-top:24px; }
  .st-delivery-list li { font-size:15px; padding-block:18px; gap:14px; }
  .studio-service .ex-focus { margin-top:14px; padding-left:22px; }
  .studio-service .ex-focus h3 { font-size:24px; margin:18px 0; }
  .st-service-proof { padding:56px 0; }
  .st-service-proof h2 { font-size:34px; }
  .st-proof-description { font-size:15px; }
  .st-proof-grid { gap:36px; }
  .st-web3-proof .ex-network { padding:24px; }
  .studio-service .st-service-faq { padding-block:60px; }
  .studio-service .ex-faq h2 { margin-bottom:26px; }
  .studio-service .ex-faq summary { font-size:18px; padding:22px 0; }
  .studio-service .ex-faq details p { font-size:15px; padding:0 0 24px; }
  .studio-service .st-service-cta { padding:56px 0; }
  .studio-service .st-service-cta h2 { font-size:34px; }
  .studio-service .st-service-cta p { font-size:16px; }
  .studio-service .st-service-cta .btn-primary { margin:0 0 14px; display:flex; }
  .st-other-expertises { padding:64px 0; }
  .st-related-services { grid-template-columns:1fr; }
  .st-related-services a { padding-block:24px; }
  .st-related-services h3 { font-size:22px; }
}
@media (max-width:380px) {
  .st-service-hero h1 { font-size:38px; }
  .st-service-promise { font-size:18px; }
  .st-service-lead { font-size:14px; }
  .st-service-actions { gap:14px; }
}
@media (max-width:760px) and (max-height:740px) {
  .st-service-hero { padding-top:16px; }
  .st-breadcrumb { margin-bottom:18px; }
  .st-service-index, .st-service-hero h1 { margin-bottom:16px; }
  .st-service-promise { font-size:18px; margin-bottom:12px; }
  .st-service-lead { font-size:14px; line-height:1.65; }
  .st-service-actions { margin-top:20px; gap:14px; }
  .st-service-signature { display:none; }
  .studio-service .ex-definition { padding-block:32px; }
}
@media (min-width:761px) and (max-height:800px) {
  .st-service-hero { padding-block:20px; }
  .st-breadcrumb { margin-bottom:20px; }
  .st-service-hero h1 { font-size:56px; margin-bottom:20px; }
  .st-service-promise { font-size:20px; }
  .st-service-lead { font-size:14px; }
  .st-service-signature { margin-top:24px; padding-top:16px; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .st-service-enter.st-service-pending { opacity:1; transform:none; }
}
