.sf{--ink:#3B1F3A;--body:#5A4866;--muted:#857596;--lilac:#B9A0E3;--lilac-lt:#CDB9EE;--purple:#7E5DB8;--purple-lt:#9C80D2;--berry:#9E3D6B;--wash:#F6F1FC;--wash2:#EDE4F8;--card:#FFFEFF;
--clay:inset 2px 2px 6px rgba(255,255,255,.95),inset -5px -7px 14px rgba(110,80,170,.08),0 16px 32px -18px rgba(70,45,130,.30);
--clay-sm:inset 2px 2px 4px rgba(255,255,255,.95),inset -3px -4px 8px rgba(110,80,170,.09),0 8px 18px -12px rgba(70,45,130,.32);
--clay-btn:inset 1px 2px 3px rgba(255,255,255,.55),inset -2px -4px 6px rgba(80,50,150,.18),0 10px 18px -10px rgba(90,60,160,.5);
--clay-in:inset 2px 3px 7px rgba(70,45,130,.09),inset -2px -2px 5px rgba(255,255,255,.95);
color:var(--ink);font-family:var(--font-body--family);padding:var(--sf-pt,40px) 20px var(--sf-pb,64px)}
.sf *{box-sizing:border-box}
.sf [hidden]{display:none!important}
.sf-in{max-width:1180px;margin:0 auto;display:flex;flex-direction:column;gap:26px}
.sf-head{text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}
.sf-eyebrow{font-size:13px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--purple)}
.sf-title{margin:0;font-family:var(--font-heading--family);font-weight:900;font-size:clamp(30px,4.6vw,48px);line-height:1.04;letter-spacing:-.5px;color:var(--ink)}
.sf-sub{margin:0;max-width:620px;font-size:17px;font-weight:600;line-height:1.5;color:var(--body)}
.sf-panel{background:linear-gradient(160deg,#F7F2FD,#ECE2F8);border-radius:36px;box-shadow:var(--clay);padding:clamp(16px,3vw,32px)}
.sf-card{background:var(--card);border-radius:28px;box-shadow:var(--clay);padding:22px}
.sf-h3{margin:0 0 8px;font-family:var(--font-heading--family);font-weight:900;font-size:clamp(22px,2.6vw,28px);line-height:1.15;color:var(--ink)}
.sf-text{font-size:16px;line-height:1.6;color:var(--body)}
.sf-text p{margin:0 0 10px}.sf-text p:last-child{margin-bottom:0}
.sf-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:0 24px;border:0;border-radius:999px;font:inherit;font-weight:800;font-size:16px;cursor:pointer;text-decoration:none;background:linear-gradient(180deg,var(--lilac-lt),#B39AE0);color:var(--ink);box-shadow:var(--clay-btn);transition:transform .15s ease,background .15s ease,color .15s ease}
.sf-btn:hover{background:linear-gradient(180deg,var(--purple-lt),var(--purple));color:#fff;transform:translateY(-2px)}
.sf-btn--light{background:linear-gradient(180deg,#fff,var(--wash));box-shadow:var(--clay-sm)}
.sf-btn--light:hover{background:linear-gradient(180deg,#fff,var(--wash2));color:var(--purple)}
.sf-btn:disabled{opacity:.5;cursor:default;transform:none}
.sf-chips{display:flex;flex-wrap:wrap;gap:8px}
.sf-chip{display:inline-flex;align-items:center;gap:6px;min-height:42px;padding:0 16px;border:2px solid transparent;border-radius:999px;font:inherit;font-weight:800;font-size:14px;cursor:pointer;background:var(--card);color:var(--ink);box-shadow:var(--clay-sm)}
.sf-chip[aria-pressed="true"]{background:linear-gradient(180deg,var(--purple-lt),var(--purple));color:#fff;box-shadow:var(--clay-btn)}
.sf-btn:focus-visible,.sf-chip:focus-visible,.sf a:focus-visible,.sf button:focus-visible{outline:3px solid var(--purple);outline-offset:3px}
.sf-note{margin:0;font-size:13px;font-weight:600;color:var(--muted);line-height:1.5}
.sf-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
@media (prefers-reduced-motion:reduce){.sf *{transition:none!important;animation:none!important}}