/* ---------- Tokens (scoped) — Podia system ---------- */
.dsk-root{
  --dsk-ink-black:#0f1830;
  --dsk-deep-ocean:#1c2640;
  --dsk-crystal:#ffffff;
  --dsk-cloud:#e8f0ea;
  --dsk-sand:#f4f2ec;
  --dsk-mint:#7dd9b0;
  --dsk-rose:#c99cf5;
  --dsk-coral:#f58787;
  --dsk-forest:#1f3548;
  --dsk-navy:#0f1830;
  --dsk-cream:#ffd66b;
  --dsk-azure:#8fbaf5;
  --dsk-peach:#fff4d6;
  --dsk-pop-blue:#3b82f6;
  --dsk-pop-red:#ef4444;
  --dsk-pop-purple:#a855f7;
  --dsk-pop-green:#10b981;
  --dsk-pop-yellow:#fbbf24;
  --dsk-sky:var(--dsk-mint);
  --dsk-lavender:var(--dsk-rose);
  --dsk-sunset:var(--dsk-coral);
  --dsk-plum:var(--dsk-forest);
  --dsk-umber:var(--dsk-navy);

  --dsk-font:'Hanken Grotesk','Inter','StabilGrotesk',ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;

  --dsk-r-link:8px;
  --dsk-r-btn:14px;
  --dsk-r-misc:20px;
  --dsk-r-card:40px;

  font-family:var(--dsk-font);
  font-weight:600;
  font-size:20px;
  color:var(--dsk-ink-black);
  background:var(--dsk-sand);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
  font-feature-settings:"ss01","cv11";
}
.dsk-root .dsk-section{overflow-x:clip}
.dsk-root *,.dsk-root *::before,.dsk-root *::after{box-sizing:border-box;margin:0;padding:0}
.dsk-root img,.dsk-root svg{display:block;max-width:100%}
.dsk-root :focus-visible{outline:2px solid var(--dsk-ink-black);outline-offset:3px;border-radius:4px}

/* ---------- Layout primitives ---------- */
.dsk-root .dsk-container{width:100%;max-width:1440px;margin:0 auto;padding:0 20px}
@media (min-width:1024px){.dsk-root .dsk-container{padding:0 32px}}
.dsk-root .dsk-section{padding:48px 0;position:relative;overflow:hidden}
@media (min-width:640px){.dsk-root .dsk-section{padding:64px 0}}
@media (min-width:1024px){.dsk-root .dsk-section{padding:120px 0}}
.dsk-root .dsk-bg-gradient-sand{
  background:
    radial-gradient(ellipse 60% 40% at 100% 0%,rgba(125,217,176,0.22),transparent 70%),
    radial-gradient(ellipse 50% 40% at 0% 100%,rgba(255,214,107,0.4),transparent 70%),
    var(--dsk-sand);
}

.dsk-root .dsk-section-bg{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  opacity:0.10;mix-blend-mode:luminosity;pointer-events:none;z-index:0;
}
.dsk-root .dsk-section.dsk-has-bg::before{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,rgba(245,245,245,0.5) 0%,transparent 25%,transparent 75%,rgba(245,245,245,0.85) 100%);
}
.dsk-root .dsk-section > .dsk-container{position:relative;z-index:2}

/* Decorative SVG blobs */
.dsk-root .dsk-deco{position:absolute;pointer-events:none;z-index:0}
.dsk-root .dsk-deco svg{display:block;width:100%;height:100%}
.dsk-root .dsk-deco-tr{top:-40px;right:-40px;width:280px;height:280px;opacity:0.4}
.dsk-root .dsk-deco-bl{bottom:-60px;left:-60px;width:320px;height:320px;opacity:0.35}

/* Parallax host */
.dsk-root [data-dsk-parallax]{
  transform:translate3d(0,var(--dsk-py,0px),0);
  will-change:transform;
}

/* ---------- Typography ---------- */
.dsk-root .dsk-h2{
  font-family:var(--dsk-font);font-weight:700;
  font-size:clamp(32px,4.4vw,56px);line-height:1.05;letter-spacing:-0.028em;
  color:var(--dsk-ink-black);
}
.dsk-root .dsk-lead{
  font-size:18px;font-weight:600;line-height:1.4;letter-spacing:-0.025em;
  color:var(--dsk-deep-ocean);max-width:720px;
}
@media (min-width:640px){.dsk-root .dsk-lead{font-size:20px}}
@media (min-width:1024px){.dsk-root .dsk-lead{font-size:24px}}

/* ---------- Section header ---------- */
.dsk-root .dsk-section-head{max-width:760px;margin:0 auto 48px}
@media (min-width:1024px){.dsk-root .dsk-section-head{margin-bottom:64px}}
.dsk-root .dsk-section-head.dsk-center{text-align:center}
.dsk-root .dsk-section-head .dsk-lead{margin-top:20px}
.dsk-root .dsk-section-head.dsk-center .dsk-lead{margin-left:auto;margin-right:auto}

/* ---------- Teams (grouped by partner) ---------- */
.dsk-root .dsk-team-group{margin-top:80px}
.dsk-root .dsk-team-group:first-of-type{margin-top:48px}
@media (min-width:1024px){.dsk-root .dsk-team-group{margin-top:112px}}
.dsk-root .dsk-team-group-header{
  display:flex;align-items:center;gap:16px;flex-wrap:wrap;
  margin-bottom:36px;padding-bottom:24px;
  border-bottom:1px solid rgba(15,24,48,0.12);
}
@media (min-width:640px){.dsk-root .dsk-team-group-header{gap:20px}}
.dsk-root .dsk-team-logo{
  height:48px;flex-shrink:0;display:flex;align-items:center;
  padding:6px 12px;background:var(--dsk-crystal);
  border:1px solid rgba(15,24,48,0.1);border-radius:12px;
  max-width:100%;
}
@media (min-width:640px){.dsk-root .dsk-team-logo{height:56px;padding:8px 14px;border-radius:14px}}
.dsk-root .dsk-team-logo img{max-height:32px;width:auto;max-width:120px;object-fit:contain;display:block}
@media (min-width:640px){.dsk-root .dsk-team-logo img{max-height:36px}}
.dsk-root .dsk-team-logo > span{font-weight:700;font-size:20px;letter-spacing:-0.03em;color:var(--dsk-ink-black);line-height:1}
@media (min-width:640px){.dsk-root .dsk-team-logo > span{font-size:22px}}
.dsk-root .dsk-team-headline{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1 1 200px}
.dsk-root .dsk-team-name{
  font-weight:700;font-size:clamp(20px,2.6vw,30px);line-height:1.15;letter-spacing:-0.028em;
  color:var(--dsk-ink-black);overflow-wrap:break-word;word-break:break-word;hyphens:auto;
}
.dsk-root .dsk-team-tag{
  display:inline-flex;align-items:center;gap:8px;align-self:flex-start;max-width:100%;
  padding:4px 12px 4px 10px;border-radius:999px;
  background:var(--dsk-cloud);
  font-size:12px;font-weight:600;color:var(--dsk-deep-ocean);letter-spacing:-0.02em;line-height:1.4;
  overflow-wrap:break-word;word-break:break-word;
}
.dsk-root .dsk-team-tag::before{
  content:"";width:7px;height:7px;border-radius:50%;
  background:var(--dsk-pop-blue);flex-shrink:0;
}

.dsk-root .dsk-team-group-photo{
  margin:0 auto 36px;width:100%;max-width:880px;
  border-radius:28px;overflow:hidden;
  border:1px solid var(--dsk-ink-black);
  box-shadow:8px 8px 0 0 var(--dsk-rose);
}
.dsk-root .dsk-team-group-photo img{width:100%;height:auto;display:block}

.dsk-root .dsk-team-grid{display:grid;gap:20px;grid-template-columns:1fr}
@media (min-width:640px){.dsk-root .dsk-team-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.dsk-root .dsk-team-grid{grid-template-columns:repeat(4,1fr);gap:24px}}
.dsk-root .dsk-member{
  padding:20px;border-radius:var(--dsk-r-card);
  background:var(--dsk-crystal);
  display:flex;flex-direction:column;gap:18px;
  transition:transform .35s cubic-bezier(.22,.61,.36,1);
}
.dsk-root .dsk-member:not(:has(.dsk-member-photo)){align-self:start}
.dsk-root .dsk-member:hover{transform:translateY(-3px)}
.dsk-root .dsk-member-photo{
  position:relative;width:100%;max-width:200px;aspect-ratio:4/5;
  margin-left:auto;margin-right:auto;
  border-radius:20px;overflow:hidden;
  background:var(--dsk-cloud);
  border:1px solid var(--dsk-ink-black);
  transition:transform .45s cubic-bezier(.34,1.56,.64,1);
}
.dsk-root .dsk-member-photo img{
  width:100%;height:100%;object-fit:cover;object-position:center top;display:block;
}
.dsk-root .dsk-member:hover .dsk-member-photo{transform:rotate(-1.2deg) scale(1.015)}

/* Auto-cycle the sticker shadow color per card within each team grid */
.dsk-root .dsk-team-grid .dsk-member:nth-of-type(5n+1) .dsk-member-photo{box-shadow:6px 6px 0 0 var(--dsk-mint)}
.dsk-root .dsk-team-grid .dsk-member:nth-of-type(5n+2) .dsk-member-photo{box-shadow:6px 6px 0 0 var(--dsk-coral)}
.dsk-root .dsk-team-grid .dsk-member:nth-of-type(5n+3) .dsk-member-photo{box-shadow:6px 6px 0 0 var(--dsk-rose)}
.dsk-root .dsk-team-grid .dsk-member:nth-of-type(5n+4) .dsk-member-photo{box-shadow:6px 6px 0 0 var(--dsk-cream)}
.dsk-root .dsk-team-grid .dsk-member:nth-of-type(5n+5) .dsk-member-photo{box-shadow:6px 6px 0 0 var(--dsk-azure)}

/* Placeholder photo (initials) for members without a portrait yet */
.dsk-root .dsk-photo-placeholder{display:grid;place-items:center;background:var(--dsk-sand)}
.dsk-root .dsk-photo-placeholder span{
  font-weight:700;font-size:64px;letter-spacing:-0.04em;color:var(--dsk-ink-black);
  font-feature-settings:"ss01","cv11";
}
.dsk-root .dsk-team-grid .dsk-member:nth-of-type(5n+1) .dsk-photo-placeholder{
  background:radial-gradient(circle at 30% 30%,#cdefdf 0%,var(--dsk-mint) 70%,#4fc894 100%)
}
.dsk-root .dsk-team-grid .dsk-member:nth-of-type(5n+2) .dsk-photo-placeholder{
  background:radial-gradient(circle at 30% 30%,#fbb4b4 0%,var(--dsk-coral) 70%,#e05858 100%)
}
.dsk-root .dsk-team-grid .dsk-member:nth-of-type(5n+3) .dsk-photo-placeholder{
  background:radial-gradient(circle at 30% 30%,#e9d3fa 0%,var(--dsk-rose) 70%,#b07ae0 100%)
}
.dsk-root .dsk-team-grid .dsk-member:nth-of-type(5n+4) .dsk-photo-placeholder{
  background:radial-gradient(circle at 30% 30%,#ffe8ac 0%,var(--dsk-cream) 70%,#ffb833 100%)
}
.dsk-root .dsk-team-grid .dsk-member:nth-of-type(5n+5) .dsk-photo-placeholder{
  background:radial-gradient(circle at 30% 30%,#c3dafa 0%,var(--dsk-azure) 70%,#5d96e5 100%)
}

.dsk-root .dsk-member-body{display:flex;flex-direction:column;gap:8px;min-width:0}
.dsk-root .dsk-member-name{
  font-weight:700;font-size:20px;line-height:1.15;letter-spacing:-0.03em;
  color:var(--dsk-ink-black);overflow-wrap:break-word;word-break:break-word;hyphens:auto;
}
@media (min-width:1024px){.dsk-root .dsk-member-name{font-size:19px}}
.dsk-root .dsk-member-role{
  display:inline-flex;align-items:center;gap:8px;align-self:flex-start;max-width:100%;
  padding:4px 12px 4px 10px;border-radius:999px;
  background:var(--dsk-sand);
  font-size:12px;font-weight:600;color:var(--dsk-deep-ocean);letter-spacing:-0.02em;line-height:1.4;
  overflow-wrap:break-word;word-break:break-word;
}
.dsk-root .dsk-member-role::before{
  content:"";width:7px;height:7px;border-radius:50%;
  background:var(--dsk-pop-blue);flex-shrink:0;
}
.dsk-root .dsk-team-grid .dsk-member:nth-of-type(5n+2) .dsk-member-role::before{background:var(--dsk-pop-red)}
.dsk-root .dsk-team-grid .dsk-member:nth-of-type(5n+3) .dsk-member-role::before{background:var(--dsk-pop-purple)}
.dsk-root .dsk-team-grid .dsk-member:nth-of-type(5n+4) .dsk-member-role::before{background:var(--dsk-pop-yellow)}
.dsk-root .dsk-team-grid .dsk-member:nth-of-type(5n+5) .dsk-member-role::before{background:var(--dsk-pop-green)}
.dsk-root .dsk-member-bio{
  margin-top:4px;font-size:16px;font-weight:600;line-height:1.5;color:var(--dsk-deep-ocean);letter-spacing:-0.02em;
}
@media (min-width:1024px){.dsk-root .dsk-member-bio{font-size:15px;line-height:1.55}}

/* ---------- Reveal on scroll ---------- */
.dsk-root .dsk-reveal{
  opacity:0;
  transition:opacity .75s cubic-bezier(.22,.61,.36,1),transform .85s cubic-bezier(.22,.61,.36,1);
  transition-delay:var(--dsk-delay,0ms);
  will-change:opacity,transform;
}
.dsk-root .dsk-reveal.is-visible{opacity:1;transform:translate3d(0,0,0) scale(1)}
.dsk-root .dsk-reveal:not([class*="dsk-reveal-"]){transform:translate3d(0,18px,0)}
.dsk-root .dsk-reveal-up{transform:translate3d(0,36px,0)}
.dsk-root .dsk-reveal-left{transform:translate3d(-42px,0,0)}
.dsk-root .dsk-reveal-right{transform:translate3d(42px,0,0)}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  .dsk-root .dsk-reveal,
  .dsk-root .dsk-reveal-up,
  .dsk-root .dsk-reveal-left,
  .dsk-root .dsk-reveal-right{
    opacity:1 !important;transform:none !important;transition:none !important;
  }
  .dsk-root *,.dsk-root *::before,.dsk-root *::after{
    animation:none !important;transition:none !important;
  }
}

/* ---------- Buttons ---------- */
.dsk-root .dsk-btn{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--dsk-font);font-weight:500;font-size:16px;
  letter-spacing:-0.03em;line-height:1;
  border-radius:var(--dsk-r-btn);
  padding:16px 24px;
  transition:transform .15s ease,background .2s ease,color .2s ease,border-color .2s ease;
  cursor:pointer;white-space:nowrap;text-decoration:none;
}
.dsk-root .dsk-btn:hover{transform:translateY(-1px)}
.dsk-root .dsk-btn-secondary{
  background:var(--dsk-deep-ocean);color:var(--dsk-cloud);
  border:1px solid var(--dsk-deep-ocean);
  padding:10px 16px;border-radius:8px;
}
.dsk-root .dsk-btn-secondary:hover{background:#0a1922}

/* ---------- NAV ---------- */
.dsk-root .dsk-nav{
  position:fixed;top:0;left:0;right:0;z-index:50;
  margin:0 auto;padding:12px 16px 0;
  max-width:1440px;
}
.dsk-root .dsk-section:first-of-type{padding-top:112px}
@media (min-width:1024px){.dsk-root .dsk-section:first-of-type{padding-top:144px}}
.dsk-root .dsk-nav-inner{
  display:flex;align-items:center;justify-content:space-between;
  height:64px;padding:0 12px 0 24px;
  background:var(--dsk-crystal);
  border:1px solid var(--dsk-ink-black);
  border-radius:999px;
}
.dsk-root .dsk-logo{
  display:inline-flex;align-items:center;gap:8px;
  font-weight:700;font-size:18px;letter-spacing:-0.04em;
  color:var(--dsk-ink-black);line-height:1;text-decoration:none;
}
.dsk-root .dsk-logo-img{
  height:34px;width:auto;display:block;
}
@media (max-width:1023px){.dsk-root .dsk-logo-img{height:28px}}
.dsk-root .dsk-logo-mark{
  width:24px;height:24px;border-radius:50%;background:var(--dsk-coral);
  flex-shrink:0;display:grid;place-items:center;
  border:1px solid var(--dsk-ink-black);
}
.dsk-root .dsk-nav-links{display:none;gap:4px;align-items:center;list-style:none;margin:0;padding:0}
@media (min-width:1024px){.dsk-root .dsk-nav-links{display:flex}}
.dsk-root .dsk-nav-link{
  padding:10px 16px;border-radius:8px;
  font-size:16px;font-weight:400;letter-spacing:-0.03em;
  color:var(--dsk-ink-black);text-decoration:none;
  transition:background .15s ease;
}
.dsk-root .dsk-nav-link:hover{background:var(--dsk-sand)}
.dsk-root .dsk-nav-link[aria-current="page"]{background:var(--dsk-sand);font-weight:500}
.dsk-root .dsk-nav-cta{display:none;text-decoration:none}
@media (min-width:1024px){.dsk-root .dsk-nav-cta{display:inline-flex}}
.dsk-root .dsk-nav-toggle{
  display:inline-flex;width:40px;height:40px;border-radius:50%;
  background:var(--dsk-ink-black);color:var(--dsk-cloud);
  align-items:center;justify-content:center;
  font:inherit;border:none;cursor:pointer;
}
@media (min-width:1024px){.dsk-root .dsk-nav-toggle{display:none}}
.dsk-root .dsk-mobile-menu{
  display:none;position:fixed;inset:96px 16px auto;
  background:var(--dsk-crystal);
  border:1px solid var(--dsk-ink-black);border-radius:24px;
  padding:12px;z-index:49;flex-direction:column;gap:2px;
}
.dsk-root .dsk-mobile-menu.is-open{display:flex}
.dsk-root .dsk-mobile-menu a{
  padding:14px 16px;border-radius:8px;
  font-size:16px;font-weight:500;color:var(--dsk-ink-black);letter-spacing:-0.03em;text-decoration:none;
}
.dsk-root .dsk-mobile-menu a:hover{background:var(--dsk-sand)}
.dsk-root .dsk-mobile-menu a[aria-current="page"]{background:var(--dsk-sand);font-weight:600}

/* ---------- Footer ---------- */
.dsk-root .dsk-footer{
  background:
    radial-gradient(ellipse 60% 40% at 0% 0%,rgba(125,217,176,0.22),transparent 70%),
    radial-gradient(ellipse 50% 40% at 100% 100%,rgba(201,156,245,0.22),transparent 70%),
    var(--dsk-sand);
  color:var(--dsk-ink-black);padding:80px 0 32px;margin-top:40px;
  position:relative;
}
.dsk-root .dsk-footer-grid{display:grid;gap:48px;grid-template-columns:1fr}
@media (min-width:768px){.dsk-root .dsk-footer-grid{grid-template-columns:1.2fr 1fr 1.4fr}}
.dsk-root .dsk-footer-col h5{
  font-size:13px;font-weight:500;letter-spacing:0.06em;text-transform:uppercase;
  color:var(--dsk-deep-ocean);margin-bottom:16px;
}
.dsk-root .dsk-footer-logo{
  display:inline-flex;align-items:center;gap:8px;
  font-weight:700;font-size:20px;letter-spacing:-0.04em;color:var(--dsk-ink-black);line-height:1;
  margin-bottom:16px;text-decoration:none;
}
.dsk-root .dsk-footer-tagline{font-size:16px;font-weight:600;line-height:1.5;color:var(--dsk-deep-ocean);max-width:320px;letter-spacing:-0.02em}
.dsk-root .dsk-footer-links{display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0}
.dsk-root .dsk-footer-links a{font-size:17px;font-weight:600;color:var(--dsk-deep-ocean);letter-spacing:-0.02em;transition:color .2s;text-decoration:none}
.dsk-root .dsk-footer-links a:hover{color:var(--dsk-ink-black)}
.dsk-root .dsk-footer-disclaimer{font-size:15px;font-weight:600;line-height:1.55;color:var(--dsk-deep-ocean);margin-bottom:20px;letter-spacing:-0.02em}
.dsk-root .dsk-footer-logos{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.dsk-root .dsk-eu-logo{
  display:inline-flex;align-items:center;gap:10px;
  padding:8px 14px;border-radius:999px;
  background:var(--dsk-crystal);border:1px solid var(--dsk-ink-black);
  font-size:13px;font-weight:500;color:var(--dsk-ink-black);letter-spacing:-0.02em;
}
.dsk-root .dsk-eu-flag{width:24px;height:16px;background:#003399;border-radius:2px;display:grid;place-items:center;flex-shrink:0}
.dsk-root .dsk-footer-bottom{
  margin-top:64px;padding-top:24px;border-top:1px solid rgba(15,20,16,0.1);
  display:flex;flex-direction:column;gap:12px;
  font-size:13px;color:var(--dsk-deep-ocean);letter-spacing:-0.02em;
}
@media (min-width:768px){.dsk-root .dsk-footer-bottom{flex-direction:row;justify-content:space-between;align-items:center}}
.dsk-root .dsk-project-code{
  font-family:'JetBrains Mono','Consolas',ui-monospace,monospace;
  background:var(--dsk-cloud);padding:4px 10px;border-radius:6px;
  font-size:12px;color:var(--dsk-ink-black);
}