.swap-page{background:var(--white)}
.sb-hero{padding-block:64px 48px;background:linear-gradient(var(--cream-light),var(--white));text-align:center}
.sb-hero h1{font-size:clamp(2.4rem,5vw,4rem);line-height:1.1;letter-spacing:-.035em}
.sb-hero h1 em{font-style:normal;color:var(--green)}
.sb-intro{font-size:1.08rem;color:var(--gray);max-inline-size:42em;margin:18px auto 0}
.sb-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-block-start:26px}
.sb-film{margin-block-start:40px}
.sb-film figcaption{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px 18px;text-align:start;margin-block-end:12px;font-size:.85rem;font-weight:600}
.sb-film figcaption span+span{color:var(--gray);font-weight:400}
.sb-player{border:1px solid var(--line);border-radius:16px;background:var(--white)}
.sb-film video{display:block;inline-size:100%;block-size:auto;aspect-ratio:16 / 9;background:var(--white);border:0;border-radius:inherit}
.sb-film video:focus-visible{outline:2px solid var(--green);outline-offset:4px}
.sb-accordion-group{display:grid;align-content:start;gap:12px}
.sb-accordion{border:1px solid #ddd;border-radius:12px;background:var(--white);font-size:.94rem}
.sb-accordion>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;min-block-size:60px;padding:18px 20px;border-radius:12px;background:#f5f5f5;font-weight:600;line-height:1.4;color:var(--black)}
.sb-accordion>summary::-webkit-details-marker{display:none}
.sb-accordion>summary::marker{content:''}
.sb-accordion>summary:hover{background:#eaeaea}
.sb-accordion>summary:focus-visible{outline:2px solid #333;outline-offset:-4px;border-radius:12px}
.sb-accordion[open]{border-color:#ccc}
.sb-accordion[open]>summary{background:#f0f0f0;color:var(--black);border-end-start-radius:0;border-end-end-radius:0}
.sb-accordion[open]>summary:hover{background:#eaeaea}
.sb-accordion-content{padding:16px 20px 20px;color:var(--gray);line-height:1.7}
.sb-accordion-content>p+p{margin-block-start:12px}
@media(prefers-reduced-motion:no-preference){
  .sb-accordion{transition:border-color .2s ease}
  .sb-accordion>summary{transition:background-color .2s ease,color .2s ease}
  @supports (interpolate-size:allow-keywords) and (transition-behavior:allow-discrete) and selector(details::details-content){
    .sb-accordion{interpolate-size:allow-keywords}
    .sb-accordion::details-content{block-size:0;opacity:0;overflow:clip;transition:block-size .25s ease,opacity .2s ease,content-visibility .25s allow-discrete}
    .sb-accordion[open]::details-content{block-size:auto;opacity:1}
  }
}
.sb-use-cases{padding-block:48px 88px}
.swap-page h2{font-size:clamp(1.65rem,3vw,2.15rem);line-height:1.2;letter-spacing:-.025em}
.sb-cards,.sb-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-block-start:36px}
.sb-card{min-inline-size:0;display:grid;grid-template-rows:auto auto 1fr;background:var(--white);border:1px solid #e1e5e2;border-radius:18px;padding:16px 22px 26px}
.sb-card-art{aspect-ratio:15 / 8;background:#f3f5f3;border-radius:10px;margin-block-end:22px;display:grid;place-items:center}
.sb-card-art svg{display:block;inline-size:100%;block-size:auto;max-inline-size:300px}
.swap-page h3{font-size:1.1rem;line-height:1.3;margin-block-end:12px}
.sb-card p,.sb-steps p,.sb-faq p{color:var(--gray);font-size:.94rem}
.sb-how{padding-block:0 16px}
.sb-how>.wrap{display:grid;gap:32px}
.sb-process{padding:36px;border:1px solid #e1e5e2;border-radius:18px;background:#f5f6f5}
.sb-steps{list-style:none;padding:0;gap:32px;margin:0}
.sb-steps li{position:relative;min-inline-size:0}
.sb-steps li:not(:last-child)::after{content:'';position:absolute;inset-block-start:23px;inset-inline-start:62px;inline-size:calc(100% - 44px);border-block-start:1px dashed #becac2}
.sb-step-number{display:grid;place-items:center;inline-size:48px;block-size:48px;border:1px solid #ccd6cf;border-radius:50%;background:var(--white);color:var(--black);font-family:var(--mono);font-size:.8rem;font-weight:600;margin-block-end:20px}
.sb-steps h3{margin-block-end:10px}
.sb-faq{padding-block:72px}
.sb-faq-layout{display:grid;grid-template-columns:.8fr 1.4fr;gap:56px;align-items:start}
.sb-faq-layout>div{min-inline-size:0}
.sb-faq-intro{padding-block:22px}
.sb-faq-intro>p:last-child{margin-block-start:18px;max-inline-size:29em;line-height:1.75}
.sb-faq .sb-accordion-group{display:block;border:1px solid #e1e5e2;border-radius:18px;background:var(--white);overflow:clip}
.sb-faq .sb-accordion{border:0;border-radius:0;background:transparent;font-size:1rem}
.sb-faq .sb-accordion+.sb-accordion{border-block-start:1px solid #e6e9e7}
.sb-faq .sb-accordion:first-child{border-start-start-radius:18px;border-start-end-radius:18px}
.sb-faq .sb-accordion:last-child{border-end-start-radius:18px;border-end-end-radius:18px}
.sb-faq .sb-accordion>summary{display:grid;grid-template-columns:24px minmax(0,1fr) 32px;gap:16px;min-block-size:84px;padding:22px 24px;border-radius:inherit;background:transparent;font-size:1rem;line-height:1.45}
.sb-faq .sb-accordion>summary:hover{background:#f5f6f5}
.sb-faq .sb-accordion>summary:focus-visible{outline-offset:-5px;border-radius:12px}
.sb-faq .sb-accordion[open]{background:#f5f6f5}
.sb-faq .sb-accordion[open]>summary{background:transparent;color:var(--black);border-end-start-radius:0;border-end-end-radius:0}
.sb-faq-number{font-family:var(--mono);font-size:.7rem;font-weight:500;color:#7b857e}
.sb-faq-toggle{position:relative;display:block;inline-size:32px;block-size:32px;border:1px solid #d8ded9;border-radius:50%;background:var(--white)}
.sb-faq-toggle::before,.sb-faq-toggle::after{content:'';position:absolute;inset:0;margin:auto;inline-size:12px;block-size:1.5px;background:#27332c}
.sb-faq-toggle::after{transform:rotate(90deg)}
.sb-faq .sb-accordion[open] .sb-faq-toggle{background:#27332c;border-color:#27332c}
.sb-faq .sb-accordion[open] .sb-faq-toggle::before,.sb-faq .sb-accordion[open] .sb-faq-toggle::after{background:var(--white)}
.sb-faq .sb-accordion[open] .sb-faq-toggle::after{transform:rotate(90deg) scaleX(0)}
.sb-faq .sb-accordion-content{padding:0 72px 24px 64px;line-height:1.75}
@media(prefers-reduced-motion:no-preference){
  .sb-faq .sb-accordion{transition:background-color .2s ease}
  .sb-faq-toggle{transition:background-color .2s ease,border-color .2s ease}
  .sb-faq-toggle::after{transition:transform .2s ease}
}
.sb-cta{padding-block:56px 64px;background:var(--cream-light);text-align:center}
.sb-cta h2{max-inline-size:24em;margin-inline:auto}
.sb-cta .btn{margin-block-start:24px}
@media(max-width:820px){
  .sb-cards,.sb-steps,.sb-faq-layout{grid-template-columns:minmax(0,1fr);gap:20px}
  .sb-faq-layout{gap:28px}
  .sb-faq-intro{padding:0}
  .sb-card{grid-template-columns:minmax(140px,.65fr) minmax(0,1fr);grid-template-rows:auto 1fr;column-gap:24px;padding:20px}
  .sb-card-art{grid-row:span 2;margin:0}
  .sb-process{padding:28px}
  .sb-steps{gap:28px}
  .sb-steps li{display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:20px}
  .sb-step-number{grid-row:span 2;margin:0}
  .sb-steps li:not(:last-child)::after{inset-block-start:60px;inset-inline-start:23px;inline-size:0;block-size:calc(100% - 44px);border-block-start:0;border-inline-start:1px dashed #becac2}
}
@media(max-width:560px){
  .sb-hero{padding-block:42px 32px}
  .sb-hero h1 em{display:block}
  .sb-intro{font-size:1rem}
  .sb-film{margin-block-start:30px}
  .sb-player{border-radius:10px}
  .sb-accordion>summary{padding:16px;gap:16px}
  .sb-accordion-content{padding:14px 16px 18px}
  .sb-use-cases{padding-block:32px 56px}
  .sb-cards{margin-block-start:28px}
  .sb-card{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto 1fr;padding:16px 20px 24px}
  .sb-card-art{grid-row:auto;margin-block-end:22px;max-block-size:154px;aspect-ratio:auto}
  .sb-card-art svg{max-inline-size:260px;max-block-size:154px}
  .sb-how{padding-block:0 16px}
  .sb-how>.wrap{gap:24px}
  .sb-process{padding:24px 20px}
  .sb-steps li{column-gap:16px}
  .sb-faq{padding-block:48px}
  .sb-faq .sb-accordion>summary{grid-template-columns:20px minmax(0,1fr) 30px;gap:10px;padding:20px 16px;font-size:.94rem}
  .sb-faq-toggle{inline-size:30px;block-size:30px}
  .sb-faq .sb-accordion-content{padding:0 20px 22px 46px}
  .sb-cta{padding-block:44px 48px}
}
