*{box-sizing:border-box}
body{margin:0;background:var(--surface-page);color:var(--text-strong);font:var(--type-body);-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
a:hover{color:var(--gold-deep)}
h1,h2,h3{font-family:var(--font-display);font-weight:var(--weight-bold);letter-spacing:var(--tracking-display);margin:0;line-height:var(--leading-display);text-wrap:balance}
h1{font-size:clamp(1.85rem,4.2vw,var(--size-display-1))}
h2{font-size:clamp(1.5rem,2.6vw,var(--size-display-2));line-height:1.08}
h3{font-size:var(--size-heading);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-heading);line-height:var(--leading-heading)}
p{margin:0;text-wrap:pretty}
:focus-visible{outline:none;box-shadow:var(--focus-ring)}
input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,
textarea:-webkit-autofill,textarea:-webkit-autofill:hover,textarea:-webkit-autofill:focus,
select:-webkit-autofill,select:-webkit-autofill:hover,select:-webkit-autofill:focus{
  -webkit-box-shadow:0 0 0 1000px #FFFFFF inset;
  box-shadow:0 0 0 1000px #FFFFFF inset;
  -webkit-text-fill-color:#0B0C0E;
  caret-color:#0B0C0E;
  transition:background-color 9999s ease-in-out 0s;
}
.mlc-wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter-page)}
.mlc-rise{opacity:0;transform:translateY(var(--reveal-offset));transition:var(--transition-reveal)}
.mlc-rise.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.mlc-rise{opacity:1;transform:none;transition:none}*{animation:none!important}}

/* Desktop nav gets tight between the mobile breakpoint and ~1500px.
   Compress the pills and CTA; the logo tagline always stays visible. */
@media (min-width:1180px){
  [data-desknav] nav > div > div > button{padding-left:9px!important;padding-right:9px!important;font-size:14px!important}
  [data-desknav] nav > div > button{padding-left:12px!important;padding-right:12px!important;font-size:14px!important}
  [data-desknav] nav > div{gap:12px!important}
}


/* Animated success panel - shared by the lead form and the centre-partner form.
   No gradients: solid success green + soft green badge. */
.mlc-success{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;padding:48px 32px}
.mlc-success__badge{width:84px;height:84px;border-radius:999px;background:var(--status-ok-bg);display:flex;align-items:center;justify-content:center;animation:mlcPop .45s cubic-bezier(.2,.8,.2,1) both}
.mlc-success__svg{width:52px;height:52px}
.mlc-success__circle{stroke-dasharray:151;stroke-dashoffset:151;animation:mlcDraw .5s .1s ease forwards}
.mlc-success__check{stroke-dasharray:40;stroke-dashoffset:40;animation:mlcDraw .35s .55s ease forwards}
.mlc-success__title{margin:0;font-size:26px;font-weight:700;letter-spacing:-.02em;color:var(--ink);animation:mlcFadeUp .4s .4s both}
.mlc-success__text{margin:0;font-size:16px;line-height:1.6;color:var(--text-body);max-width:44ch;animation:mlcFadeUp .4s .55s both}
.mlc-success__ref{margin:0;font-size:14px;color:var(--text-body);animation:mlcFadeUp .4s .7s both}
.mlc-success__ref b{color:var(--ink);font-family:'JetBrains Mono',monospace}
@keyframes mlcPop{0%{transform:scale(0)}60%{transform:scale(1.06)}100%{transform:scale(1)}}
@keyframes mlcDraw{to{stroke-dashoffset:0}}
@keyframes mlcFadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media (prefers-reduced-motion:reduce){.mlc-success__circle,.mlc-success__check{stroke-dashoffset:0!important}}
