/* nextlane landingspagina's: shared styles. Colours, fonts and radius come from the site's
   settings as CSS variables (inc/assets.php); the derived shades follow them. */
:root{
  --nlp-line-strong:color-mix(in srgb,var(--nlp-ink) 11%,var(--nlp-bg));
  --nlp-soft:color-mix(in srgb,var(--nlp-ink) 5%,var(--nlp-bg));
  --nlp-accent-soft:color-mix(in srgb,var(--nlp-accent) 28%,#fff);
  --nlp-accent-pale:color-mix(in srgb,var(--nlp-accent) 14%,#fff);
  --nlp-accent-hover:color-mix(in srgb,var(--nlp-accent) 88%,#000);
  --nlp-star:color-mix(in srgb,var(--nlp-accent) 70%,#8a5200);
  --nlp-shadow:0 20px 50px color-mix(in srgb,var(--nlp-ink) 8%,transparent);
}
body.nlp-canvas{margin:0;background:var(--nlp-bg)}
.nlp-page{display:block;overflow-x:hidden;background:var(--nlp-bg)}
.nlp{font-family:var(--nlp-font-body);color:var(--nlp-ink);font-size:17px;line-height:1.6;box-sizing:border-box;-webkit-font-smoothing:antialiased}
.nlp *,.nlp *::before,.nlp *::after{box-sizing:border-box}
.nlp a{color:inherit}
.nlp img,.nlp video{max-width:100%}
.nlp p{margin:0}
.nlp h1,.nlp h2,.nlp h3{color:inherit}
.nlp details summary{cursor:pointer;list-style:none}
.nlp details summary::-webkit-details-marker{display:none}
.nlp-wrap{max-width:1280px;margin:0 auto;padding-left:32px;padding-right:32px}
@media (max-width:640px){.nlp-wrap{padding-left:20px;padding-right:20px}}
.nlp-d{font-family:var(--nlp-font-head);font-weight:600;letter-spacing:-.035em;margin:0;text-wrap:balance}
.nlp-h1{font-size:clamp(44px,5.6vw,84px);line-height:.95;letter-spacing:-.05em}
.nlp-h2{font-size:clamp(34px,4vw,60px);line-height:1}
.nlp-h3{font-size:22px;line-height:1.2;letter-spacing:-.02em}
.nlp-mut{color:var(--nlp-muted)}
.nlp-lab{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--nlp-muted)}
.nlp-lab::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--nlp-accent)}
.nlp-lead{font-size:19px;color:var(--nlp-muted);margin:0}
.nlp-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:54px;padding:0 28px;border-radius:999px;font-weight:600;font-size:16px;text-decoration:none;border:0;cursor:pointer;font-family:var(--nlp-font-body);line-height:1;transition:background .2s,transform .2s}
.nlp-btn:hover{transform:translateY(-1px)}
.nlp-btn-y{background:var(--nlp-accent);color:var(--nlp-accent-ink)}
.nlp-btn-y:hover{background:var(--nlp-accent-hover)}
.nlp-btn-k{background:var(--nlp-ink);color:#fff}
.nlp a.nlp-btn-k{color:#fff}
.nlp-btn-o{background:transparent;color:var(--nlp-ink);box-shadow:inset 0 0 0 1.5px var(--nlp-ink)}
.nlp-btn-w{background:#fff;color:var(--nlp-ink)}
.nlp-btn:focus-visible,.nlp-opt:focus-visible,.nlp input:focus-visible,.nlp-back:focus-visible{outline:2px solid var(--nlp-ink);outline-offset:2px}
.nlp-opt:focus:not(:focus-visible){outline:none}
.nlp-line{border-top:1px solid var(--nlp-line-strong)}
.nlp-sec{padding-top:120px;padding-bottom:120px}
@media (max-width:760px){.nlp-sec{padding-top:72px;padding-bottom:72px}}
.nlp-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:32px;align-items:end;margin-bottom:56px}
@media (max-width:860px){.nlp-head{grid-template-columns:minmax(0,1fr);margin-bottom:36px}}
.nlp-mark{background:var(--nlp-accent);color:var(--nlp-accent-ink);border-radius:.14em;padding:0 .14em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.nlp-stars{color:var(--nlp-star);letter-spacing:1px}
.nlp-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* entrance: slides in, never starts invisible (no blank first paint) */
.nlp-w{display:inline-block;animation:nlp-in .8s cubic-bezier(.2,.7,.2,1) both}
@keyframes nlp-in{from{transform:translateY(18px)}to{transform:none}}
@keyframes nlp-floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.nlp-cyc{display:inline-block;height:1.05em;overflow:hidden;vertical-align:bottom}
.nlp-cyc>span{display:block}
.nlp-cyc b{display:block;height:1.05em;font-weight:inherit;width:fit-content}
@keyframes nlp-cyc2{0.00%,45.00%{transform:translateY(-0.00em)}50.00%,95.00%{transform:translateY(-1.05em)}100%{transform:translateY(0)}}.nlp-cyc[data-n="2"]>span{animation:nlp-cyc2 5.0s cubic-bezier(.7,0,.2,1) infinite}
@keyframes nlp-cyc3{0.00%,28.33%{transform:translateY(-0.00em)}33.33%,61.67%{transform:translateY(-1.05em)}66.67%,95.00%{transform:translateY(-2.10em)}100%{transform:translateY(0)}}.nlp-cyc[data-n="3"]>span{animation:nlp-cyc3 7.5s cubic-bezier(.7,0,.2,1) infinite}
@keyframes nlp-cyc4{0.00%,20.00%{transform:translateY(-0.00em)}25.00%,45.00%{transform:translateY(-1.05em)}50.00%,70.00%{transform:translateY(-2.10em)}75.00%,95.00%{transform:translateY(-3.15em)}100%{transform:translateY(0)}}.nlp-cyc[data-n="4"]>span{animation:nlp-cyc4 10.0s cubic-bezier(.7,0,.2,1) infinite}
@keyframes nlp-cyc5{0.00%,15.00%{transform:translateY(-0.00em)}20.00%,35.00%{transform:translateY(-1.05em)}40.00%,55.00%{transform:translateY(-2.10em)}60.00%,75.00%{transform:translateY(-3.15em)}80.00%,95.00%{transform:translateY(-4.20em)}100%{transform:translateY(0)}}.nlp-cyc[data-n="5"]>span{animation:nlp-cyc5 12.5s cubic-bezier(.7,0,.2,1) infinite}
@media (prefers-reduced-motion:reduce){.nlp-w,.nlp-cyc>span,.nlp-float{animation:none!important}}

/* Forms (multistep and short call-back form), shared by several blocks */
.nlp-ms{position:relative;background:#fff;border:1px solid var(--nlp-line);border-radius:24px;box-shadow:var(--nlp-shadow);padding:24px;display:flex;flex-direction:column;gap:16px}
.nlp-ms .nlp-top{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px;font-weight:600;color:var(--nlp-muted)}
.nlp-ms .nlp-who{display:flex;align-items:center;gap:8px}
.nlp-ms .nlp-who img{width:26px;height:26px;border-radius:50%;object-fit:cover;flex:none}
.nlp-ms fieldset{border:0;margin:0;padding:0;display:none;flex-direction:column;gap:10px;min-width:0}
.nlp-ms fieldset.is-on,.nlp-ms fieldset.is-done{display:flex}
.nlp-ms legend{font-family:var(--nlp-font-head);font-weight:600;font-size:21px;letter-spacing:-.02em;padding:0;margin-bottom:10px}
.nlp-opts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.nlp-opt{display:flex;align-items:center;gap:10px;padding:14px;border:1.5px solid var(--nlp-line);border-radius:16px;font:inherit;font-size:15px;font-weight:600;cursor:pointer;line-height:1.25;background:#fff;color:var(--nlp-ink);text-align:left}
.nlp-opt:hover{border-color:var(--nlp-ink)}
.nlp-opt .nlp-ic{flex:none;width:36px;height:36px;border-radius:12px;background:var(--nlp-accent-soft);display:grid;place-items:center;font-size:18px}
.nlp-opt[aria-pressed="true"]{border-color:var(--nlp-ink);background:var(--nlp-accent-pale)}
.nlp-ms fieldset.is-done legend{font-size:14px;margin-bottom:4px;color:var(--nlp-muted)}
.nlp-ms fieldset.is-done .nlp-opts{display:flex;flex-wrap:wrap;gap:6px}
.nlp-ms fieldset.is-done .nlp-opt{padding:6px 12px;border-radius:999px;font-size:13px}
.nlp-ms fieldset.is-done .nlp-ic{display:none}
@media (max-width:600px){.nlp-opts{grid-template-columns:1fr}}
.nlp-frow{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (max-width:960px){.nlp-frow{grid-template-columns:1fr}}
.nlp-f{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600}
.nlp-f input{height:48px;padding:0 14px;border:1px solid var(--nlp-line-strong);border-radius:10px;background:var(--nlp-bg);font:inherit;font-size:16px;font-weight:400;color:var(--nlp-ink)}
.nlp-ms .nlp-btn{width:100%;margin-top:4px}
.nlp-note{font-size:13px;text-align:center;color:var(--nlp-muted)}
.nlp-status{font-size:14px;font-weight:600;margin:0}
.nlp-status:empty{display:none}
.nlp-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.nlp-thanks{display:flex;flex-direction:column;gap:8px;padding:8px 0}
.nlp-thanks strong{font-family:var(--nlp-font-head);font-size:22px;letter-spacing:-.02em}
.nlp-cb{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;max-width:560px}
.nlp-cb input{height:52px;padding:0 18px;border:1px solid #fff;border-radius:999px;background:#fff;color:var(--nlp-ink);font:inherit;font-size:16px}
.nlp-cb .nlp-btn,.nlp-cb .nlp-status{grid-column:1/-1}
.nlp-lab.nlp-w{display:inline-flex}

.nlp-ms .nlp-steplab{display:inline-flex;align-items:center;gap:12px}
.nlp-back{all:unset;cursor:pointer;font-size:13px;font-weight:600;color:var(--nlp-ink);padding:4px 10px;border-radius:999px;background:var(--nlp-soft)}
.nlp-back:hover{background:var(--nlp-accent-soft)}
.nlp-back[hidden]{display:none}
/* Co-branding (0.5.0): the dealer and the client, both marks with the words between. */
.nlp-cobrand{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px 10px;color:inherit}
.nlp-cobrand img{height:28px;width:auto;display:block}
.nlp-cobrand-client{display:inline-flex;align-items:center}
.nlp-cobrand-with{font-size:12px;line-height:1.2;color:var(--nlp-muted);white-space:nowrap}
.nlp-cta-cobrand .nlp-cobrand-with{color:inherit;opacity:.8}
.nlp-footer-cobrand img{height:22px}
