.sapr-page .site-header{position:relative}
.product-hero{
  position:relative;
  display:block;
  min-height:500px;
  padding:72px var(--page-padding) 78px;
  border-bottom:1px solid var(--line);
}
.product-hero::before{
  content:"";
  position:absolute;
  z-index:0;
  inset:0 0 0 45%;
  background:url("/design/images/sapr-hero-abstract.svg") right 10% center / min(58vw,760px) auto no-repeat;
  opacity:.11;
  pointer-events:none;
}
.product-hero-copy{position:relative;z-index:1;max-width:min(65%,720px)}
.product-hero h1{max-width:650px;margin:0 0 22px;font-size:clamp(42px,4.2vw,64px);line-height:1.04;font-weight:500;letter-spacing:-.05em}
.product-hero-description{max-width:540px;margin:0 0 24px;color:var(--gray);font-size:17px;line-height:26px}
.product-hero-caption{max-width:420px;margin:18px 0 0;color:var(--gray);font-size:13px;line-height:19px}
.sapr-logic,.sapr-value{padding-block:74px}
.sapr-page .section-intro{grid-template-columns:minmax(0,1fr);justify-content:start;margin-bottom:34px}
.sapr-page .section h2{max-width:720px}
.logic-flow{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.logic-step{position:relative;min-height:285px;padding:20px 22px 28px 0;border-right:1px solid var(--line)}
.logic-step+.logic-step{padding-left:22px}
.logic-step:last-child{border-right:0}
.logic-step::after{content:"";position:absolute;top:-4px;right:-4px;width:7px;height:7px;border-radius:50%;background:var(--black)}
.logic-step:last-child::after{display:none}
.logic-step-accent::after{background:#6b86a0}
.logic-step-number,.value-number{display:block;margin-bottom:26px;font-size:15px;line-height:21px;color:var(--gray)}
.logic-step h3{max-width:220px;margin:0 0 12px;font-size:15px;line-height:21px;font-weight:600;letter-spacing:.02em}
.logic-step p{max-width:230px;margin:0;color:var(--gray);font-size:14px;line-height:21px}
.sapr-value{border-top:1px solid var(--line)}
.sapr-page .sapr-value .section-intro{margin-bottom:28px}
.value-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.value-grid article{min-height:250px;padding:20px 22px 24px 0;border-right:1px solid var(--line)}
.value-grid article+article{padding-left:22px}
.value-grid article:last-child{border-right:0}
.value-number{margin-bottom:28px}
.value-grid h3{max-width:260px;margin:0 0 12px;font-size:18px;line-height:24px;font-weight:500}
.value-grid p{max-width:300px;margin:0;color:var(--gray);font-size:14px;line-height:21px}
.sapr-cta-band{position:relative;display:block;margin-top:62px;padding:42px 0 58px;border-top:1px solid var(--black);overflow:hidden}
.sapr-cta-content{position:relative;z-index:1;max-width:720px}
.sapr-cta-band h2{max-width:640px;margin:0 0 12px;font-size:32px;line-height:38px}
.sapr-cta-band p{max-width:600px;margin:0;color:var(--gray);font-size:15px;line-height:22px}
.sapr-cta-band .button{margin-top:26px}
.sapr-cta-visual{position:absolute;z-index:0;top:50%;right:0;width:40%;max-width:520px;height:auto;transform:translateY(-50%);opacity:.16;pointer-events:none}
.sapr-cta-visual img{display:block;width:100%;height:auto}
@media(max-width:900px){
  .product-hero{min-height:0;padding-block:52px 60px}
  .product-hero::before{display:none}
  .product-hero-copy{max-width:100%}
  .product-hero h1{font-size:clamp(40px,7vw,56px)}
  .logic-flow{grid-template-columns:1fr;border-top:0;border-left:1px solid var(--line)}
  .logic-step,.logic-step+.logic-step{min-height:0;padding:0 0 28px 24px;border-right:0;border-bottom:1px solid var(--line)}
  .logic-step+.logic-step{padding-top:28px}
  .logic-step:last-child{padding-bottom:0;border-bottom:0}
  .logic-step::after{top:0;right:auto;left:-4px}
  .logic-step:last-child::after{display:block;top:auto;bottom:-4px}
  .value-grid{grid-template-columns:1fr;border-top:0}
  .value-grid article,.value-grid article+article{min-height:0;padding:22px 0;border-right:0;border-bottom:1px solid var(--line)}
  .value-grid article:last-child{border-bottom:0}
  .sapr-cta-band{margin-top:52px;padding-block:34px 42px}
  .sapr-cta-visual{display:none}
  .sapr-cta-band .button{width:max-content}
}
@media(max-width:520px){
  .product-hero{padding-block:34px 48px}
  .product-hero h1{font-size:38px;line-height:42px;overflow-wrap:break-word}
  .product-hero-description{font-size:16px;line-height:24px}
  .sapr-logic,.sapr-value{padding-block:52px}
  .sapr-cta-band h2{font-size:28px;line-height:34px}
}
