.dorsa{--d-bg:#FAF9F7;--d-bg2:#EFEDE8;--d-accent:#EDE7E2;--d-text:#141414;--d-muted:#6B6B66;--d-line:rgba(20,20,20,.10);--d-cta:#1F6F4A;--d-cta-text:#FFFFFF;--d-star:#D9A521;--d-radius:14px;--d-page:1400px;color:var(--d-text);font-family:inherit}
.dorsa *,.dorsa *::before,.dorsa *::after{box-sizing:border-box}
.dorsa__inner{max-width:var(--d-page);margin:0 auto;padding:0 2rem}
.dorsa h1,.dorsa h2,.dorsa h3{letter-spacing:-.01em}
.dorsa h2{font-size:clamp(24px,3vw,34px);font-weight:700;line-height:1.15;margin:0 0 8px}
.dorsa h3{font-size:18px;font-weight:700;margin:0 0 8px}
.dorsa p{font-size:16px;line-height:1.65;margin:0 0 14px}
.dorsa__sub{color:var(--d-muted);font-size:16px;margin:0 0 32px}
.dorsa__center{text-align:center}
.dorsa__mock{background:var(--d-bg2);border:1px dashed rgba(20,20,20,.18);display:flex;align-items:center;justify-content:center;color:var(--d-muted);font-size:13px;letter-spacing:.04em;text-align:center;padding:12px;border-radius:var(--d-radius)}
.dorsa__card{background:#FFFFFF;border:1px solid var(--d-line);border-radius:var(--d-radius);box-shadow:0 1px 2px rgba(20,20,20,.04),0 8px 24px rgba(20,20,20,.05);padding:26px}
.dorsa__grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.dorsa__grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.dorsa__grid2{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.dorsa__btn{display:inline-block;background:var(--d-cta);color:var(--d-cta-text);padding:16px 32px;font-weight:700;font-size:16px;text-decoration:none;border:0;border-radius:6px;cursor:pointer;text-align:center;transition:opacity .15s ease}
.dorsa__btn:hover{opacity:.88}
.dorsa__btn--full{display:block;width:100%}
.dorsa__btn--outline{background:transparent;color:var(--d-text);border:1px solid var(--d-text)}
.dorsa__stars{color:var(--d-star);letter-spacing:2px;font-size:18px}
.dorsa__wave{display:block;width:100%;height:auto}
@media screen and (max-width:989px){.dorsa__grid4{grid-template-columns:repeat(2,1fr)}.dorsa__grid3{grid-template-columns:1fr}.dorsa__grid2{grid-template-columns:1fr;gap:28px}.dorsa__inner{padding:0 1.5rem}}
