html,
body{
  overflow-x:clip;
}

.page-transition{
  position:fixed;
  inset:0;
  z-index:9999;
  pointer-events:none;
  background:
    linear-gradient(135deg,#fff 0%,var(--page,#f5f7f6) 54%,#edf3f0 100%);
  opacity:1;
  transform:translateY(0);
  transition:opacity .28s ease, transform .28s ease;
}

.page-transition.is-hidden{
  opacity:0;
  transform:translateY(-8px);
}

body.is-leaving .page-transition{
  opacity:1;
  transform:translateY(0);
}

.button{
  position:relative;
  z-index:1;
  overflow:hidden;
  min-height:50px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border-radius:999px;
  padding:0 24px;
  font-weight:950;
  font-size:14px;
  text-decoration:none;
  border:2px solid transparent;
  cursor:pointer;
  max-width:100%;
  text-align:center;
  transition:transform .22s ease,box-shadow .28s ease,border-color .34s ease,background .34s ease,color .34s ease;
}
.button::after{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle,rgba(255,255,255,.26) 0%,rgba(255,255,255,0) 70%);
  transform:scale(0);
  transition:transform .52s ease;
  pointer-events:none;
}
.button:hover{
  transform:translateY(-2px);
}
.button:hover::after{transform:scale(4)}
.button.primary{
  background:#1a1a1a;
  color:#fff;
  border:2px solid #2c2c2c;
  box-shadow:0 18px 38px rgba(13,17,16,.14);
}
.button.primary:hover{
  background:#292929;
  border-color:#666;
  box-shadow:0 22px 44px rgba(13,17,16,.18);
}
.button.secondary{
  background:#fff;
  border:2px solid rgba(13,17,16,.14);
  color:var(--ink,#0d1110);
  box-shadow:0 12px 26px rgba(13,17,16,.05);
}
.button.secondary::after{
  background:radial-gradient(circle,rgba(13,17,16,.1) 0%,rgba(13,17,16,0) 70%);
}
.button.secondary:hover{
  background:#f8fbf9;
  border-color:rgba(13,17,16,.28);
  box-shadow:0 14px 30px rgba(13,17,16,.07);
}
.cta .button.primary{
  background:var(--green,#19b874);
  color:var(--green-dark,#062116);
  border:2px solid rgba(25,184,116,.5);
  box-shadow:0 18px 38px rgba(25,184,116,.2);
}
.cta .button.primary:hover{
  background:#20c77f;
  border-color:rgba(255,255,255,.38);
  box-shadow:0 22px 44px rgba(25,184,116,.25);
}
.nav .nav-cta{
  position:relative;
  overflow:hidden;
  color:#fff;
  background:var(--dark,#0d1411);
  border:2px solid #2c2c2c;
  padding:10px 17px;
  border-radius:999px;
  transition:background .34s ease,border-color .34s ease,transform .2s ease,box-shadow .2s ease;
}
.nav a.nav-cta.active{color:#fff}
.nav .nav-cta::after{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle,rgba(255,255,255,.28) 0%,rgba(255,255,255,0) 70%);
  transform:scale(0);
  transition:transform .52s ease;
  pointer-events:none;
}
.nav .nav-cta:hover{
  color:#fff;
  background:#292929;
  border-color:#666;
  transform:translateY(-1px);
  box-shadow:0 16px 34px rgba(13,17,16,.14);
}
.nav .nav-cta:hover::after{transform:scale(4)}

.topbar{
  position:sticky!important;
  top:0;
  z-index:50;
  isolation:isolate;
  padding-inline:0;
  transition:top .28s ease,padding .28s ease;
}
.topbar::before{
  content:"";
  position:absolute;
  left:50%;
  top:0;
  width:100vw;
  height:100%;
  transform:translateX(-50%);
  z-index:0;
  pointer-events:none;
  background:rgba(248,251,249,.9);
  border-bottom:1px solid rgba(13,17,16,.08);
  box-shadow:0 8px 24px rgba(13,17,16,.035);
  transition:width .28s ease,border-radius .28s ease,top .28s ease,height .28s ease,box-shadow .28s ease,background .28s ease;
}
.topbar > *{position:relative;z-index:1}
body.has-scrolled .topbar{
  top:12px;
  padding-inline:clamp(10px,2vw,18px);
}
body.has-scrolled .topbar::before{
  top:0;
  width:min(1180px,calc(100vw - 28px));
  height:100%;
  border-radius:22px;
  background:rgba(248,251,249,.92);
  border:1px solid rgba(13,17,16,.09);
  box-shadow:0 18px 48px rgba(13,17,16,.1);
}

.brand-mark{
  width:58px!important;
  height:44px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.brand-mark img{
  width:178px!important;
  transform:translate(-50%,-45%)!important;
}
@supports(backdrop-filter:blur(16px)){
  .topbar::before{
    background:rgba(248,251,249,.72);
    backdrop-filter:blur(18px);
  }
  body.has-scrolled .topbar::before{
    background:rgba(248,251,249,.86);
  }
}

.mobile-menu{display:none}
.mobile-menu summary{list-style:none}
.mobile-menu summary::-webkit-details-marker{display:none}
.mobile-menu-panel a{text-decoration:none}

@media(max-width:680px){
  .topbar{align-items:center!important;gap:12px!important}
  .topbar .nav{display:none!important}
  .mobile-menu{
    display:block;
    width:100%;
    margin-left:0;
    position:relative;
    z-index:20;
  }
  .mobile-menu summary{display:none}
  .mobile-menu-panel{
    display:flex;
    gap:6px;
    width:100%;
    overflow-x:auto;
    padding:2px 0 4px;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    scrollbar-width:none;
  }
  .mobile-menu-panel::-webkit-scrollbar{
    display:none;
  }
  .mobile-menu-panel a{
    flex:0 0 auto;
    min-height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0 12px;
    border-radius:999px;
    color:var(--ink,#0d1110);
    background:rgba(255,255,255,.84);
    border:1px solid var(--line,rgba(13,17,16,.12));
    font-size:13px;
    font-weight:850;
    text-decoration:none;
  }
  .mobile-menu-panel > a:first-child{display:none}
  .mobile-menu-panel > a[href="/website-scan"]{
    position:relative;
    overflow:hidden;
    justify-content:center;
    color:#fff;
    background:var(--dark,#0d1411);
    border:2px solid #2c2c2c;
    padding:0 14px;
    transition:background .34s ease,border-color .34s ease,box-shadow .28s ease;
  }
  .mobile-menu-panel > a[href="/website-scan"]::after{
    content:"";
    position:absolute;
    inset:0;
    background:radial-gradient(circle,rgba(255,255,255,.28) 0%,rgba(255,255,255,0) 70%);
    transform:scale(0);
    transition:transform .52s ease;
    pointer-events:none;
  }
  .mobile-menu-panel > a[href="/website-scan"]:hover{
    background:#292929;
    border-color:#666;
    box-shadow:0 14px 30px rgba(13,17,16,.12);
  }
  .mobile-menu-panel > a[href="/website-scan"]:hover::after{
    transform:scale(4);
  }
}

.dnb-service-card{
  position:relative;
  transition:border-color .35s ease,box-shadow .35s ease,transform .35s ease;
}
.dnb-service-card:hover,
.dnb-service-card:focus-within{
  border-color:rgba(22,165,109,.48)!important;
  box-shadow:0 18px 48px rgba(22,165,109,.16),0 20px 54px rgba(13,17,16,.09)!important;
}
.dnb-service-card .dnb-service-card-button{
  min-height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  max-width:100%;
  margin-top:16px;
  padding:0 15px;
  border:1px solid rgba(13,17,16,.1);
  border-radius:999px;
  background:var(--accent-soft,#e9f6ef);
  color:var(--ink,#0d1110);
  font-size:13px;
  font-weight:950;
  text-decoration:none;
  transition:background .3s ease,color .3s ease,border-color .3s ease,transform .3s ease,box-shadow .3s ease;
}
.dnb-service-card:hover .dnb-service-card-button,
.dnb-service-card:focus-within .dnb-service-card-button{
  background:#16a56d;
  color:#062116;
  border-color:rgba(22,165,109,.46);
  transform:translateY(-2px);
  box-shadow:0 14px 28px rgba(22,165,109,.18);
}

.dnb-scan-card.form-card,
.dnb-scan-card.success-card{
  background:#0c0c0e;
  color:#fafaf8;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 26px 70px rgba(8,8,8,.22),0 0 38px rgba(22,165,109,.08);
}
.dnb-scan-card h2{color:#fafaf8}
.dnb-scan-card .form-note,
.dnb-scan-card .form-message,
.dnb-scan-card p{color:rgba(250,250,248,.68)}
.dnb-scan-card .form-note a{color:#fafaf8}
.dnb-scan-card .button.primary{
  background:#16a56d;
  color:#062116;
  border:2px solid rgba(22,165,109,.52);
  box-shadow:0 18px 38px rgba(22,165,109,.22);
}
.dnb-scan-card .button.primary:hover{
  background:#19b874;
  border-color:rgba(250,250,248,.36);
}
.dnb-scan-card .button.secondary{
  background:rgba(250,250,248,.06);
  color:#fafaf8;
  border-color:rgba(250,250,248,.18);
}
.scan-form .dnb-form-control{
  position:relative;
  width:100%;
  margin:18px 0 28px;
}
.scan-form .dnb-form-control input,
.scan-form .dnb-form-control textarea{
  display:block;
  width:100%;
  border:0;
  border-bottom:2px solid rgba(250,250,248,.55);
  border-radius:0;
  background:transparent;
  color:#fafaf8;
  outline:0;
  padding:15px 0 10px;
  font:inherit;
  font-size:16px;
  resize:vertical;
}
.scan-form .dnb-form-control textarea{min-height:92px}
.scan-form .dnb-form-control input:focus,
.scan-form .dnb-form-control input:valid,
.scan-form .dnb-form-control textarea:focus,
.scan-form .dnb-form-control textarea:valid{
  border-bottom-color:#16a56d;
}
.scan-form .dnb-form-control label{
  position:absolute;
  top:15px;
  left:0;
  display:block;
  color:rgba(250,250,248,.78);
  pointer-events:none;
}
.scan-form .dnb-form-control label span{
  display:inline-block;
  min-width:.28em;
  font-size:15px;
  color:rgba(250,250,248,.78);
  transform-origin:left center;
  transition:color .3s cubic-bezier(.68,-.55,.265,1.55),transform .3s cubic-bezier(.68,-.55,.265,1.55);
}
.scan-form .dnb-form-control input:focus + label span,
.scan-form .dnb-form-control input:valid + label span,
.scan-form .dnb-form-control textarea:focus + label span,
.scan-form .dnb-form-control textarea:valid + label span,
.scan-form .dnb-form-control.is-filled label span{
  color:#16a56d;
  transform:translateY(-32px) scale(.86);
}
.scan-form.is-preparing{
  display:none;
}
.dnb-scan-flow[hidden]{display:none}
.dnb-scan-flow{
  margin-top:20px;
  padding:20px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  background:radial-gradient(circle at 22% 10%,rgba(22,165,109,.18),transparent 18rem),#080808;
  box-shadow:inset 0 0 0 1px rgba(22,165,109,.08),0 18px 44px rgba(0,0,0,.24);
}
.dnb-scan-stage{
  display:grid;
  justify-items:center;
  gap:16px;
}
.dnb-scan-loader{
  position:relative;
  width:150px;
  height:150px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border:1px solid rgba(22,165,109,.35);
  border-radius:50%;
  background:radial-gradient(circle,rgba(22,165,109,.08),rgba(8,8,8,.95));
  box-shadow:0 0 35px rgba(22,165,109,.18),inset 0 0 30px rgba(0,0,0,.55);
}
.dnb-scan-loader::before{
  content:"";
  position:absolute;
  inset:22px;
  border:1px dashed rgba(250,250,248,.18);
  border-radius:50%;
}
.dnb-scan-loader::after{
  content:"";
  position:absolute;
  width:52px;
  height:52px;
  border:1px dashed rgba(22,165,109,.35);
  border-radius:50%;
}
.dnb-scan-loader span{
  position:absolute;
  top:50%;
  left:50%;
  width:50%;
  height:100%;
  border-top:1px solid rgba(250,250,248,.55);
  transform-origin:top left;
  animation:dnb-radar-spin 2s linear infinite;
}
.dnb-scan-loader span::before{
  content:"";
  position:absolute;
  inset:0;
  background:#16a56d;
  transform-origin:top left;
  transform:rotate(-55deg);
  filter:blur(28px) drop-shadow(0 0 18px rgba(22,165,109,.8));
  opacity:.75;
}
@keyframes dnb-radar-spin{to{transform:rotate(360deg)}}
.dnb-scan-word-card{
  --bg-color:#080808;
  width:100%;
  max-width:360px;
  padding:.75rem 1rem;
  border:1px solid rgba(255,255,255,.1);
  border-radius:1.25rem;
  background:var(--bg-color);
  box-shadow:0 0 24px rgba(22,165,109,.1);
}
.dnb-scan-word-loader{
  height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:8px;
  color:rgba(250,250,248,.68);
  font-family:inherit;
  font-size:clamp(.95rem,3vw,1.2rem);
  font-weight:600;
  border-radius:8px;
}
.dnb-scan-words{
  position:relative;
  height:40px;
  overflow:hidden;
}
.dnb-scan-words::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(var(--bg-color) 10%,transparent 30%,transparent 70%,var(--bg-color) 90%);
}
.dnb-scan-word{
  display:block;
  height:100%;
  padding-left:8px;
  color:#16a56d;
  line-height:40px;
  white-space:nowrap;
  animation:dnb-scan-word-spin 4s infinite;
}
@keyframes dnb-scan-word-spin{
  10%{transform:translateY(-102%)}
  25%{transform:translateY(-100%)}
  35%{transform:translateY(-202%)}
  50%{transform:translateY(-200%)}
  60%{transform:translateY(-302%)}
  75%{transform:translateY(-300%)}
  85%{transform:translateY(-402%)}
  100%{transform:translateY(-400%)}
}
.dnb-scan-status{
  list-style:none;
  display:grid;
  gap:8px;
  margin-top:18px;
}
.dnb-scan-step{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:38px;
  padding:0 13px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:999px;
  color:rgba(250,250,248,.56);
  font-size:13px;
  font-weight:850;
  background:rgba(250,250,248,.04);
  transition:color .25s ease,border-color .25s ease,background .25s ease,transform .25s ease;
}
.dnb-scan-step::before{
  content:"";
  width:9px;
  height:9px;
  border-radius:50%;
  background:rgba(250,250,248,.22);
  box-shadow:0 0 0 0 rgba(22,165,109,0);
}
.dnb-scan-step.is-active{
  color:#fafaf8;
  border-color:rgba(22,165,109,.44);
  background:rgba(22,165,109,.09);
  transform:translateY(-1px);
}
.dnb-scan-step.is-active::before{
  background:#16a56d;
  box-shadow:0 0 0 6px rgba(22,165,109,.12);
}
.dnb-scan-step.is-done{
  color:rgba(250,250,248,.78);
  border-color:rgba(22,165,109,.28);
}
.dnb-scan-step.is-done::before{
  content:"✓";
  width:18px;
  height:18px;
  display:grid;
  place-items:center;
  color:#062116;
  font-size:12px;
  font-weight:950;
  background:#16a56d;
}

.dnb-input-group{position:relative}
.dnb-input{
  width:100%;
  border:1.5px solid rgba(250,250,248,.35);
  border-radius:1rem;
  background:transparent;
  padding:1rem;
  font:inherit;
  color:#fafaf8;
  transition:border-color 150ms cubic-bezier(.4,0,.2,1);
}
.dnb-user-label{
  position:absolute;
  left:15px;
  color:rgba(250,250,248,.75);
  pointer-events:none;
  transform:translateY(1rem);
  transition:transform 150ms cubic-bezier(.4,0,.2,1),color 150ms cubic-bezier(.4,0,.2,1),background 150ms cubic-bezier(.4,0,.2,1);
}
.dnb-input:focus,
.dnb-input:valid{outline:none;border-color:#16a56d}
.dnb-input:focus ~ .dnb-user-label,
.dnb-input:valid ~ .dnb-user-label{
  transform:translateY(-50%) scale(.8);
  background:#080808;
  padding:0 .2em;
  color:#16a56d;
}

@media(max-width:680px){
  .topbar{justify-content:space-between!important;flex-wrap:nowrap!important}
  .brand-mark{width:54px!important;height:40px!important}
  .brand-mark img{width:164px!important}
  .mobile-menu{
    display:block;
    width:auto;
    margin-left:auto;
    position:relative;
    z-index:20;
  }
  .mobile-menu summary.dnb-burger{
    position:relative;
    display:block;
    width:44px;
    height:38px;
    border:1px solid rgba(13,17,16,.12);
    border-radius:15px;
    background:#0d1411;
    cursor:pointer;
    box-shadow:0 14px 28px rgba(13,17,16,.12);
  }
  .dnb-burger span{
    position:absolute;
    left:10px;
    display:block;
    width:22px;
    height:3px;
    border-radius:9px;
    background:#fafaf8;
    opacity:1;
    transform:rotate(0deg);
    transform-origin:left center;
    transition:top .25s ease-in-out,left .25s ease-in-out,width .25s ease-in-out,opacity .25s ease-in-out,transform .25s ease-in-out,background .2s ease;
  }
  .dnb-burger span:nth-of-type(1){top:10px}
  .dnb-burger span:nth-of-type(2){top:50%;transform:translateY(-50%)}
  .dnb-burger span:nth-of-type(3){top:25px}
  .mobile-menu[open] .dnb-burger span:nth-of-type(1){top:9px;left:12px;transform:rotate(45deg)}
  .mobile-menu[open] .dnb-burger span:nth-of-type(2){width:0;opacity:0}
  .mobile-menu[open] .dnb-burger span:nth-of-type(3){top:25px;left:12px;transform:rotate(-45deg)}
  .dnb-burger:hover span,
  .dnb-burger:focus-visible span{background:#16a56d}
  .mobile-menu-panel{
    display:none;
    position:absolute;
    top:calc(100% + 14px);
    right:0;
    width:min(290px,calc(100vw - 36px));
    padding:10px;
    border:1px solid rgba(13,17,16,.12);
    border-radius:18px;
    background:rgba(248,251,249,.94);
    box-shadow:0 22px 54px rgba(13,17,16,.16);
    overflow:visible;
    backdrop-filter:blur(16px);
  }
  .mobile-menu[open] .mobile-menu-panel{display:grid;gap:8px}
  .mobile-menu-panel a,
  .mobile-menu-panel a:first-child{
    width:100%;
    min-height:40px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:0 14px;
  }
  .dnb-scan-loader{width:128px;height:128px}
  .dnb-scan-word-loader{justify-content:flex-start;font-size:.95rem}
  .dnb-service-card .dnb-service-card-button{
    position:static;
    width:max-content;
    opacity:1;
    transform:none;
  }
}

.nav-services{
  position:relative;
  display:flex;
  align-items:center;
}
.nav-services-trigger{
  display:inline-flex;
  align-items:center;
  gap:7px;
}
.nav-services-trigger > span{
  width:7px;
  height:7px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:translateY(-2px) rotate(45deg);
  transition:transform .2s ease;
}
.nav-services-menu{
  position:absolute;
  top:calc(100% + 26px);
  left:50%;
  width:350px;
  padding:8px;
  border:1px solid rgba(13,17,16,.12);
  border-radius:14px;
  background:rgba(250,252,251,.97);
  box-shadow:0 24px 60px rgba(13,17,16,.16);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translate(-50%,-8px);
  transition:opacity .2s ease,transform .2s ease,visibility .2s ease;
}
.nav-services-menu::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:-28px;
  height:30px;
}
.nav-services-menu a{
  width:100%;
  min-height:0!important;
  display:grid!important;
  gap:3px;
  justify-content:start!important;
  padding:11px 12px!important;
  border:0!important;
  border-radius:8px!important;
  color:var(--ink,#0d1110)!important;
  background:transparent!important;
  text-align:left!important;
}
.nav-services-menu a:hover,
.nav-services-menu a:focus-visible{background:var(--accent-soft,#e9f6ef)!important}
.nav-services-menu strong{font-size:14px;line-height:1.25}
.nav-services-menu small{
  color:var(--muted,#616b66);
  font-size:12px;
  font-weight:650;
  line-height:1.4;
}
.nav-services:hover .nav-services-menu,
.nav-services:focus-within .nav-services-menu{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translate(-50%,0);
}
.nav-services:hover .nav-services-trigger > span,
.nav-services:focus-within .nav-services-trigger > span{
  transform:translateY(2px) rotate(225deg);
}
.nav-services.active > .nav-services-trigger{color:var(--ink,#0d1110)}

@media(min-width:681px) and (max-width:980px){
  .nav-services{min-width:0}
  .nav-services-trigger{width:100%;justify-content:center}
  .nav-services-menu{left:0;transform:translate(0,-8px)}
  .nav-services:hover .nav-services-menu,
  .nav-services:focus-within .nav-services-menu{transform:translate(0,0)}
}

@media(max-width:680px){
  .mobile-menu-panel > a:first-child{display:flex}
  .mobile-services{width:100%}
  .mobile-services summary{
    width:100%;
    min-height:42px;
    display:flex!important;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:0 14px;
    border:1px solid var(--line,rgba(13,17,16,.12));
    border-radius:999px;
    color:var(--ink,#0d1110);
    background:rgba(255,255,255,.84);
    font-size:13px;
    font-weight:900;
    cursor:pointer;
  }
  .mobile-services summary span{
    width:24px;
    height:24px;
    display:grid;
    place-items:center;
    border-radius:999px;
    color:var(--green-dark,#062116);
    background:var(--accent-soft,#e9f6ef);
    transition:transform .2s ease,background .2s ease;
  }
  .mobile-services[open] summary span{
    background:var(--green,#19b874);
    transform:rotate(45deg);
  }
  .mobile-services-list{
    display:grid;
    gap:6px;
    margin:7px 6px 2px;
    padding:6px 0 2px 10px;
    border-left:2px solid rgba(25,184,116,.35);
  }
  .mobile-menu-panel .mobile-services-list > a,
  .mobile-menu-panel .mobile-services-list > a:last-child{
    min-height:38px;
    justify-content:flex-start;
    padding:0 12px;
    border:1px solid rgba(13,17,16,.08);
    border-radius:8px;
    color:var(--ink,#0d1110);
    background:#f2f8f5;
    font-size:12px;
    text-align:left;
    box-shadow:none;
  }
  .mobile-menu-panel .mobile-services-list > a::after{display:none}
}

@media(max-width:680px){
  .mobile-menu summary.dnb-burger{
    width:44px;
    height:40px;
    border:2px solid var(--ink,#0d1110);
    border-radius:999px;
    background:transparent;
    box-shadow:none;
  }
  .dnb-burger span{
    height:2px;
    background:var(--ink,#0d1110);
  }
  .mobile-menu[open] summary.dnb-burger{background:var(--dark,#0d1411)}
  .mobile-menu[open] .dnb-burger span{background:#fff}
  .dnb-burger:hover span,
  .dnb-burger:focus-visible span{background:var(--green,#19b874)}

  .mobile-menu-panel{
    top:calc(100% + 12px);
    right:0;
    width:min(340px,calc(100vw - 28px));
    max-height:calc(100dvh - 104px);
    padding:8px 16px 14px;
    border:1px solid rgba(13,17,16,.12);
    border-radius:8px;
    background:rgba(255,255,255,.98);
    box-shadow:0 24px 64px rgba(13,17,16,.18);
    overflow-y:auto;
    backdrop-filter:blur(18px);
  }
  .mobile-menu[open] .mobile-menu-panel{display:block}
  .mobile-menu-panel > a,
  .mobile-menu-panel > a:first-child{
    min-height:48px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    padding:0 2px;
    border:0;
    border-bottom:1px solid var(--line,rgba(13,17,16,.12));
    border-radius:0;
    color:var(--ink,#0d1110);
    background:transparent;
    font-size:15px;
    font-weight:850;
    text-align:left;
  }
  .mobile-services{border-bottom:1px solid var(--line,rgba(13,17,16,.12))}
  .mobile-services summary{
    min-height:48px;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    padding:0 2px;
    border:0;
    border-radius:0;
    background:transparent;
    font-size:15px;
    text-align:left;
  }
  .mobile-services summary span{
    justify-self:end;
    width:auto;
    height:auto;
    color:var(--accent-strong,#128556);
    background:transparent;
    font-size:20px;
  }
  .mobile-services[open] summary span{
    color:var(--ink,#0d1110);
    background:transparent;
  }
  .mobile-services-list{
    gap:0;
    margin:0 0 8px 2px;
    padding:0 0 4px 14px;
    border-left:1px solid rgba(25,184,116,.5);
  }
  .mobile-menu-panel .mobile-services-list > a,
  .mobile-menu-panel .mobile-services-list > a:last-child{
    min-height:38px;
    padding:0 4px;
    border:0;
    border-radius:0;
    color:var(--muted,#616b66);
    background:transparent;
    font-size:13px;
    font-weight:800;
  }
  .mobile-menu-panel > a[href="/website-scan"]{
    min-height:46px;
    justify-content:center;
    margin-top:12px;
    border:0;
    border-radius:999px;
    color:var(--green-dark,#062116);
    background:var(--green,#19b874);
    box-shadow:0 14px 30px rgba(25,184,116,.2);
  }
  .mobile-menu-panel > a[href="/website-scan"]:hover{
    color:var(--green-dark,#062116);
    background:#20c77f;
    border-color:transparent;
  }
}

@media(prefers-reduced-motion:reduce){
  .dnb-form-control *,
  .dnb-input-group *,
  .dnb-burger *,
  .dnb-service-card,
  .dnb-service-card *,
  .dnb-scan-loader,
  .dnb-scan-loader *,
  .dnb-scan-word,
  .dnb-scan-step{
    animation:none!important;
    transition:none!important;
  }
  .page-transition{
    display:none;
  }
}


.footer-trust{
  flex-basis:100%;
  max-width:760px;
  color:#4d5752;
  line-height:1.55;
}

.site-footer{
  position:relative;
  margin-top:72px;
  color:#eef7f2;
  background:#07130e;
  border-top:1px solid rgba(25,184,116,.42);
  overflow:hidden;
}
.site-footer::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(rgba(25,184,116,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(25,184,116,.04) 1px,transparent 1px);
  background-size:56px 56px;
  mask-image:linear-gradient(to bottom,#000,transparent 78%);
}
.footer-main,
.footer-bottom{position:relative;z-index:1}
.footer-main{
  display:grid;
  grid-template-columns:minmax(280px,1.35fr) repeat(3,minmax(150px,.58fr));
  gap:44px;
  padding-top:58px;
  padding-bottom:46px;
}
.footer-brand-block{max-width:390px}
.footer-brand{
  display:inline-flex;
  align-items:center;
  gap:13px;
  color:#fff;
  text-decoration:none;
  font-size:20px;
  font-weight:950;
}
.footer-logo{
  width:54px;
  height:38px;
  flex:0 0 auto;
  position:relative;
  overflow:hidden;
}
.footer-logo img{
  position:absolute;
  left:50%;
  top:50%;
  width:160px;
  max-width:none;
  height:auto;
  transform:translate(-50%,-44.5%);
  filter:invert(1);
}
.footer-brand-block p{
  max-width:360px;
  margin:20px 0 24px;
  color:#aabbb2;
  font-size:14px;
  line-height:1.7;
}
.footer-primary{
  max-width:340px;
  min-height:50px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:0 8px 0 18px;
  border:1px solid rgba(25,184,116,.42);
  border-radius:999px;
  color:#eafff4;
  background:rgba(25,184,116,.09);
  text-decoration:none;
  font-size:13px;
  font-weight:900;
  transition:background .25s ease,border-color .25s ease,transform .25s ease;
}
.footer-primary b{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:50%;
  color:#062116;
  background:#19b874;
  font-size:18px;
}
.footer-primary:hover{
  color:#fff;
  background:rgba(25,184,116,.16);
  border-color:rgba(25,184,116,.72);
  transform:translateY(-2px);
}
.footer-column{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
}
.footer-column small{
  margin-bottom:5px;
  color:#6f8c7d;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.footer-column a{
  color:#c4d1ca;
  text-decoration:none;
  font-size:13px;
  line-height:1.4;
  transition:color .2s ease,transform .2s ease;
}
.footer-column a:hover{
  color:#20c77f;
  transform:translateX(3px);
}
.footer-bottom{
  min-height:70px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  border-top:1px solid rgba(255,255,255,.1);
  color:#71847a;
  font-size:12px;
}
@media(max-width:980px){
  .footer-main{
    grid-template-columns:minmax(260px,1.2fr) repeat(2,minmax(150px,.7fr));
    gap:34px 26px;
  }
  .footer-column:last-child{grid-column:2}
}
@media(max-width:680px){
  .site-footer{margin-top:54px}
  .footer-main{
    grid-template-columns:1fr 1fr;
    gap:34px 22px;
    padding-top:44px;
    padding-bottom:34px;
  }
  .footer-brand-block{
    grid-column:1 / -1;
    max-width:none;
  }
  .footer-brand-block p{max-width:520px}
  .footer-primary{max-width:none}
  .footer-column:last-child{grid-column:auto}
  .footer-bottom{
    min-height:auto;
    align-items:flex-start;
    flex-direction:column;
    padding-top:22px;
    padding-bottom:96px;
  }
}

/* Rustige utility-link voor bestaande klanten */
.nav a.utility-login{
  color:var(--ink,#0d1110);
  background:transparent;
  border:1px solid rgba(13,17,16,.28);
  border-radius:999px;
  padding:10px 15px;
}
.nav a.utility-login:hover{
  color:var(--ink,#0d1110);
  border-color:var(--green,#19b874);
  background:rgba(255,255,255,.72);
}
@media(max-width:680px){
  .mobile-menu summary.dnb-burger{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:5px;
    border-radius:50%;
    background:#fff;
  }
  .dnb-burger span{
    position:static;
    left:auto;
    top:auto;
    width:18px;
    height:2px;
    transform-origin:center;
  }
  .mobile-menu[open] summary.dnb-burger{background:#fff}
  .mobile-menu[open] .dnb-burger span{background:var(--ink,#0d1110)}
  .mobile-menu[open] .dnb-burger span:nth-of-type(1){transform:translateY(7px) rotate(45deg)}
  .mobile-menu[open] .dnb-burger span:nth-of-type(2){width:18px;opacity:0;transform:none}
  .mobile-menu[open] .dnb-burger span:nth-of-type(3){transform:translateY(-7px) rotate(-45deg)}
  .mobile-menu-panel a.utility-login{
    margin-top:4px;
    color:#fff;
    background:var(--dark,#0d1411);
    border:1px solid var(--dark,#0d1411);
    border-radius:999px;
  }
}
