@font-face{font-family:"Space Grotesk";src:url("/assets/fonts/space-grotesk-v22-latin-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Space Grotesk";src:url("/assets/fonts/space-grotesk-v22-latin-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url("/assets/fonts/ibm-plex-sans-v23-latin-500.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url("/assets/fonts/ibm-plex-sans-v23-latin-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"IBM Plex Sans";src:url("/assets/fonts/ibm-plex-sans-v23-latin-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}

:root{
  --dp-void:#131117;
  --dp-void-2:#0E0C12;
  --dp-surface:#1E1B24;
  --dp-surface-2:#2C2C2C;
  --dp-plum:#612D53;
  --dp-violet:#8B3FD9;
  --dp-violet-lo:#5A2A8F;
  --dp-rose:#C43A6E;
  --dp-text:#F3F4F4;
  --dp-muted:#BCB6C8;
  --dp-dim:#8E8799;
  --dp-line:rgba(139,63,217,.16);
  --dp-glow:rgba(139,63,217,.5);
  --dp-glow-rose:rgba(196,58,110,.45);
  --dp-font-display:"Space Grotesk",system-ui,-apple-system,sans-serif;
  --dp-font-body:"IBM Plex Sans",system-ui,-apple-system,sans-serif;
  --dp-fw-md:500;
  --dp-fw-bd:600;
  --dp-fw-bk:700;
  --dp-radius:24px;
  --dp-radius-sm:12px;
  --dp-btn-radii:12px;
  --dp-header-h:88px;
  --dp-maxw:1160px;
}

*,*::before,*::after{box-sizing:border-box}
*{margin:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--dp-header-h) + 46px)}
body{background:var(--dp-void);color:var(--dp-text);font-family:var(--dp-font-body);font-weight:var(--dp-fw-bd);font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg,video{display:block;max-width:100%}
svg{fill:none}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}
input,textarea,select{font:inherit;color:inherit}
ul,ol{list-style:none;padding:0}
strong,b{font-weight:var(--dp-fw-bk)}
[hidden]{display:none!important}
.js [data-reveal]{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease,box-shadow .35s ease}
[data-reveal].is-in{opacity:1;transform:none}

h1,h2,h3,h4,h5,h6{font-family:var(--dp-font-display);font-weight:var(--dp-fw-bk);line-height:1.12;color:var(--dp-text)}
p{color:var(--dp-text)}
.dp-h1{font-size:clamp(2.3rem,5.2vw,3.6rem);letter-spacing:-.01em}
.dp-h2{font-size:clamp(1.8rem,4vw,2.7rem);letter-spacing:-.01em}
.dp-h3{font-size:clamp(1.25rem,2.2vw,1.55rem)}
.dp-lead{font-size:clamp(1.05rem,1.6vw,1.2rem);color:var(--dp-muted);font-weight:var(--dp-fw-bd);line-height:1.62}
.dp-muted{color:var(--dp-muted)}
.dp-small{font-size:.8125rem;font-weight:var(--dp-fw-md);color:var(--dp-dim);line-height:1.5}
.dp-tc{font-size:.8125rem;font-weight:var(--dp-fw-md);color:var(--dp-dim);line-height:1.5}

.dp-wrap{width:min(100% - 2.4rem,var(--dp-maxw));margin-inline:auto}
.dp-section{padding-block:clamp(3.5rem,7vw,6rem);position:relative;overflow-x:clip}

.dp-section-title{text-align:center;margin-inline:auto}
.dp-section-title h2{font-size:clamp(2rem,4.6vw,3rem);letter-spacing:-.015em;line-height:1.1}
.dp-section-title p{margin:1.1rem auto 0;color:var(--dp-muted);font-size:clamp(1.02rem,1.5vw,1.15rem);line-height:1.6;max-width:64ch}

.dp-btn{
  --b1:var(--dp-violet);
  --b2:var(--dp-rose);
  display:inline-flex;align-items:center;justify-content:center;gap:.55rem;
  padding:.95em 1.6em;min-height:48px;min-width:132px;
  font-family:var(--dp-font-display);font-size:1rem;font-weight:var(--dp-fw-bd);line-height:1;letter-spacing:.01em;
  color:var(--dp-text);
  border-radius:var(--dp-btn-radii);
  background-size:280% auto;
  background-image:linear-gradient(325deg,var(--b2) 0%,var(--b1) 55%,var(--b2) 90%);
  box-shadow:0 0 22px rgba(139,63,217,.42),0 6px 14px -4px rgba(196,58,110,.34),inset 4px 4px 10px rgba(200,150,255,.28),inset -4px -4px 10px rgba(90,30,150,.4);
  transition:background-position .8s ease,transform .3s ease,box-shadow .3s ease;
}
.dp-btn:hover{background-position:right top;transform:scale(1.05)}
.dp-btn:is(:focus,:focus-visible,:active){outline:none;box-shadow:0 0 0 3px var(--dp-text),0 0 0 6px var(--dp-violet)}
.dp-btn--alt{--b1:var(--dp-rose);--b2:var(--dp-violet)}
.dp-btn--ghost{background-image:none;background-color:transparent;box-shadow:inset 0 0 0 2px rgba(139,63,217,.55);color:var(--dp-text)}
.dp-btn--ghost:hover{background-color:rgba(139,63,217,.1);transform:scale(1.05);box-shadow:inset 0 0 0 2px rgba(139,63,217,.9)}
.dp-btn--icon svg{width:18px;height:18px;color:currentColor}

.dp-card{
  position:relative;
  background:linear-gradient(160deg,var(--dp-surface),var(--dp-void-2));
  border-radius:var(--dp-radius);
  padding:2.1rem;
  overflow:clip;
  box-shadow:0 18px 42px -22px rgba(0,0,0,.85);
  transition:box-shadow .35s ease;
}
.dp-card > *{position:relative;z-index:1}
.dp-card::before{content:"";position:absolute;inset:0;border-radius:inherit;z-index:0;pointer-events:none;background:radial-gradient(130% 90% at 6% 4%,rgba(139,63,217,.15),transparent 48%)}
.dp-card:hover{box-shadow:0 0 40px -14px var(--dp-glow),0 22px 48px -22px rgba(0,0,0,.9)}

.dp-chip{
  display:inline-flex;align-items:center;gap:.55rem;
  padding:.6rem 1.5rem .6rem .95rem;
  font-family:var(--dp-font-display);font-size:.9rem;font-weight:var(--dp-fw-bd);color:var(--dp-text);
  background:linear-gradient(180deg,var(--dp-surface-2),var(--dp-surface));
  clip-path:polygon(0 0,calc(100% - 13px) 0,100% 50%,calc(100% - 13px) 100%,0 100%);
  filter:drop-shadow(0 0 10px rgba(139,63,217,.24));
}
.dp-chip__mark{width:16px;height:16px;flex:none;color:var(--dp-violet);filter:drop-shadow(0 0 4px var(--dp-glow))}
.dp-chip__mark svg{width:100%;height:100%;color:currentColor}

.dp-badge{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:radial-gradient(circle at 32% 28%,var(--dp-violet),var(--dp-violet-lo));box-shadow:0 0 22px rgba(139,63,217,.5),inset 0 0 12px rgba(255,255,255,.16)}
.dp-badge svg{width:24px;height:24px;color:var(--dp-text)}

.dp-score{display:flex;align-items:center;gap:1rem}
.dp-score__num{font-family:var(--dp-font-display);font-size:2.6rem;font-weight:var(--dp-fw-bk);line-height:1;color:var(--dp-text);text-shadow:0 0 18px rgba(139,63,217,.45)}
.dp-score__num span{display:block;font-size:.72rem;font-weight:var(--dp-fw-bd);color:var(--dp-dim);margin-top:.35rem;letter-spacing:.02em}
.dp-score__tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:.4rem}
.dp-score__tile{display:flex;flex-direction:column;gap:.15rem;padding:.55rem .7rem;border-radius:var(--dp-radius-sm);background:rgba(139,63,217,.08)}
.dp-score__tile b{font-family:var(--dp-font-display);font-size:.95rem;color:var(--dp-text)}
.dp-score__tile em{font-style:normal;font-size:.7rem;font-weight:var(--dp-fw-bd);color:var(--dp-dim)}

@keyframes dp-pulse{0%,100%{filter:drop-shadow(0 0 12px rgba(139,63,217,.4))}50%{filter:drop-shadow(0 0 22px rgba(139,63,217,.72))}}
@keyframes dp-trailflow{to{background-position:200% 0}}
@keyframes dp-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}

@media (prefers-reduced-motion:reduce){
  *{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
