.elementor-kit-7{--e-global-color-primary:#0E3A2D;--e-global-color-secondary:#F2A93B;--e-global-color-text:#5B6862;--e-global-color-accent:#14523F;--e-global-color-nlink:#14201B;--e-global-color-nlpaper:#FBFAF7;--e-global-color-nlpaper2:#F1EEE6;--e-global-color-nlline:#DAD6CB;--e-global-color-nlsage:#C4D6CE;--e-global-color-nlsaffink:#7A4A00;--e-global-typography-primary-font-family:"Bricolage Grotesque";--e-global-typography-primary-font-weight:800;--e-global-typography-secondary-font-family:"Bricolage Grotesque";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Instrument Sans";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Instrument Sans";--e-global-typography-accent-font-weight:600;--e-global-typography-nlmono-font-family:"JetBrains Mono";--e-global-typography-nlmono-font-size:12px;--e-global-typography-nlmono-font-weight:400;--e-global-typography-nlmono-text-transform:uppercase;--e-global-typography-nlmono-letter-spacing:1.7px;background-color:#FBFAF7;color:#14201B;font-family:"Instrument Sans", Sans-serif;font-size:17px;line-height:1.6em;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{background-color:#F2A93B;font-family:"Instrument Sans", Sans-serif;font-size:16px;font-weight:600;color:#14201B;border-radius:999px 999px 999px 999px;padding:15px 26px 15px 26px;}.elementor-kit-7 button:hover,.elementor-kit-7 button:focus,.elementor-kit-7 input[type="button"]:hover,.elementor-kit-7 input[type="button"]:focus,.elementor-kit-7 input[type="submit"]:hover,.elementor-kit-7 input[type="submit"]:focus,.elementor-kit-7 .elementor-button:hover,.elementor-kit-7 .elementor-button:focus{background-color:#FFB94F;color:#14201B;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 a{color:#14523F;}.elementor-kit-7 a:hover{color:#0E3A2D;}.elementor-kit-7 h1{color:#14201B;font-family:"Bricolage Grotesque", Sans-serif;}.elementor-kit-7 h2{color:#14201B;font-family:"Bricolage Grotesque", Sans-serif;}.elementor-kit-7 h3{color:#14201B;font-family:"Bricolage Grotesque", Sans-serif;}.elementor-kit-7 h4{color:#14201B;font-family:"Bricolage Grotesque", Sans-serif;}.elementor-kit-7 h5{color:#14201B;font-family:"Bricolage Grotesque", Sans-serif;}.elementor-kit-7 h6{color:#14201B;font-family:"Bricolage Grotesque", Sans-serif;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:0px;--container-default-padding-right:20px;--container-default-padding-bottom:0px;--container-default-padding-left:20px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ===== N Link Solutions - animations & effects (edit colors in Global Colors) ===== */
html{scroll-behavior:smooth}
body{overflow-x:hidden}
.nl-hl{color:var(--e-global-color-secondary)}
.nl-eyebrow .elementor-heading-title{display:flex;align-items:center;gap:10px}
.nl-eyebrow .elementor-heading-title:before{content:"";width:22px;height:2px;background:var(--e-global-color-secondary);flex:none}
.nl-eyebrow.nl-center .elementor-heading-title{justify-content:center}
/* Hero rotating headline underline */
.nl-hero-title .elementor-headline-dynamic-wrapper{position:relative;z-index:0}
.nl-hero-title .elementor-headline-dynamic-wrapper:after{content:"";position:absolute;left:0;right:0;bottom:.08em;height:.14em;background:var(--e-global-color-secondary);z-index:-1;transform-origin:left;animation:nlGrowX 1s .8s cubic-bezier(.2,.7,.2,1) both}
/* Ticket rail */
.nl-rail{position:relative;overflow:hidden}
.nl-rail:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 0%,rgba(242,169,59,.28),transparent 55%);pointer-events:none}
.nl-rail:after{content:"";position:absolute;top:26px;left:24px;right:24px;height:12px;border-radius:6px;background:linear-gradient(#C9CFCB,#8E9792);box-shadow:0 3px 0 rgba(0,0,0,.25)}
.nl-rail>.elementor-element{position:relative;z-index:1}
.nl-live .elementor-heading-title:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--e-global-color-secondary);margin-right:8px;vertical-align:middle;animation:nlPulse 1.6s infinite}
.nl-ticket{box-shadow:0 12px 24px rgba(0,0,0,.25);transform-origin:top center;animation:nlHang 1s cubic-bezier(.2,.9,.3,1.3) both;transition:transform .35s,rotate .35s}
.nl-ticket:after,.nl-res:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:8px;background:linear-gradient(-45deg,transparent 6px,var(--e-global-color-nlpaper) 0) 0 0/12px 8px,linear-gradient(45deg,transparent 6px,var(--e-global-color-nlpaper) 0) 0 0/12px 8px}
.nl-ticket.nl-t1{rotate:-1.2deg;animation-delay:.5s}
.nl-ticket.nl-t2{rotate:.8deg;animation-delay:.8s}
.nl-ticket.nl-t3{rotate:-.5deg;animation-delay:1.1s}
.nl-ticket:hover{rotate:0deg;transform:translateY(-4px)}
.nl-ticket .elementor-progress-bar{transition:width 1.6s cubic-bezier(.2,.7,.2,1)!important}
/* Marquee */
.nl-marquee{overflow:hidden}
.nl-marquee-track{width:max-content!important;max-width:none!important;flex-wrap:nowrap!important;animation:nlScroll 32s linear infinite}
.nl-marquee:hover .nl-marquee-track{animation-play-state:paused}
.nl-marquee-track>.elementor-element{margin-right:56px;flex:none!important;width:auto!important}
.nl-marquee-track .elementor-heading-title{white-space:nowrap}
.nl-marquee-track .elementor-heading-title:after{content:"\2726";color:var(--e-global-color-secondary);font-size:.6em;margin-left:56px;vertical-align:middle}
/* Stats */
.nl-stat .elementor-counter-number-suffix{color:var(--e-global-color-secondary)}
/* Service cards: green fill on hover */
.nl-svc{position:relative;overflow:hidden;transition:color .4s}
.nl-svc:before{content:"";position:absolute;inset:0;background:var(--e-global-color-primary);transform:translateY(101%);transition:transform .55s cubic-bezier(.2,.7,.2,1);z-index:0}
.nl-svc:hover:before{transform:none}
.nl-svc .elementor-icon-box-wrapper{position:relative;z-index:1}
.nl-svc .elementor-icon-box-title,.nl-svc .elementor-icon-box-title a,.nl-svc .elementor-icon-box-description{transition:color .4s}
.nl-svc:hover .elementor-icon-box-title,.nl-svc:hover .elementor-icon-box-title a{color:#FBFAF7!important}
.nl-svc:hover .elementor-icon-box-description{color:#C4D6CE!important}
.nl-svc .elementor-icon{transition:background .4s,transform .4s,color .4s}
.nl-svc:hover .elementor-icon{background:var(--e-global-color-secondary)!important;transform:rotate(-8deg) scale(1.06)}
/* Process line + dots */
.nl-steps{position:relative}
.nl-steps:before,.nl-steps:after{content:"";position:absolute;top:27px;left:0;right:0;height:2px;background:rgba(255,255,255,.15)}
.nl-steps:after{background:var(--e-global-color-secondary);transform:scaleX(0);transform-origin:left;transition:transform 2s .3s cubic-bezier(.2,.7,.2,1)}
.nl-steps.animated:after,.elementor-editor-active .nl-steps:after{transform:scaleX(1)}
.nl-step{position:relative;z-index:1}
.nl-dot .elementor-heading-title{width:56px;height:56px;border-radius:50%;border:2px solid var(--e-global-color-secondary);background:var(--e-global-color-primary);display:grid;place-items:center;transition:background .4s,color .4s}
.nl-step:hover .nl-dot .elementor-heading-title{background:var(--e-global-color-secondary);color:var(--e-global-color-nlink)}
/* Who we serve + results lift */
.nl-serve,.nl-res{transition:transform .35s,box-shadow .35s,border-color .35s}
.nl-serve:hover{transform:translateY(-6px);border-color:var(--e-global-color-nlink)!important;box-shadow:0 18px 30px -18px rgba(20,32,27,.4)}
.nl-res{position:relative;box-shadow:0 18px 32px -24px rgba(20,32,27,.45)}
.nl-res:hover{transform:translateY(-6px) rotate(-.6deg)}
/* Testimonials */
.nl-testi .swiper-pagination-bullet{width:34px;height:6px;border-radius:3px;transition:width .3s}
.nl-testi .swiper-pagination-bullet-active{width:56px}
/* CTA glow */
.nl-cta{position:relative;overflow:hidden}
.nl-cta:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(242,169,59,.35),transparent 65%);right:-140px;top:-180px;animation:nlFloat 9s ease-in-out infinite;pointer-events:none}
.nl-cta>.elementor-element,.nl-cta>.e-con-inner{position:relative;z-index:1}
/* Buttons */
.elementor-button{transition:transform .25s,background-color .25s,color .25s,border-color .25s!important}
.elementor-button:hover{transform:translateY(-2px)}
/* Header */
.nl-header{transition:background-color .3s,box-shadow .3s,border-color .3s}
.nl-header.elementor-sticky--effects{background-color:rgba(251,250,247,.9)!important;backdrop-filter:blur(10px);box-shadow:0 1px 0 var(--e-global-color-nlline)}
.nl-logo .elementor-heading-title a{display:flex;align-items:center;gap:10px}
.nl-logo .elementor-heading-title:before{content:"N";width:38px;height:38px;border-radius:10px;background:var(--e-global-color-primary);color:var(--e-global-color-secondary);display:inline-grid;place-items:center;font-size:20px;margin-right:10px;flex:none}
.nl-logo .elementor-heading-title{display:flex;align-items:center}
/* Footer wordmark */
.nl-giant .elementor-heading-title{-webkit-text-stroke:1px var(--e-global-color-nlline);white-space:nowrap}
@keyframes nlHang{from{transform:translateY(-40px) rotate(-6deg);opacity:0}to{transform:none;opacity:1}}
@keyframes nlPulse{50%{opacity:.25}}
@keyframes nlScroll{to{transform:translateX(-50%)}}
@keyframes nlGrowX{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes nlFloat{50%{transform:translate(-40px,40px)}}
@media (prefers-reduced-motion:reduce){.nl-marquee-track,.nl-ticket,.nl-cta:before{animation:none!important}}
@media (max-width:767px){.nl-steps:before,.nl-steps:after{display:none}.nl-giant .elementor-heading-title{white-space:normal}}/* End custom CSS */