/* NORLANE authoritative UI normalization */
:root{--nl-font:Inter,"Helvetica Neue",Arial,sans-serif;--nl-orange:#ff684a;--nl-cyan:#1fc8e8;--nl-dark:#171721;--nl-card:#1e1e2a;--nl-ivory:#ededf3;--nl-btn-h:48px;--nl-btn-px:24px}
html,body,button,input,select,textarea,a{font-family:var(--nl-font)!important}button,input,select,textarea{font-style:normal!important}
.quote,.glass,.dark-btn,.cyan-btn,.track,.navcta,.console-fields button,.track-form button,.formnav button{box-sizing:border-box!important;height:var(--nl-btn-h)!important;min-height:var(--nl-btn-h)!important;padding:0 var(--nl-btn-px)!important;border-radius:999px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;font:500 14px/1 var(--nl-font)!important;letter-spacing:0!important;white-space:nowrap!important;text-decoration:none!important;border:1px solid transparent!important;cursor:pointer!important}
.quote,.navcta,.console-fields button,.track-form button,.formnav .next,.formnav .send{background:var(--nl-orange)!important;color:#171717!important}.glass{background:#ffffff08!important;color:#fff!important;border-color:#ffffffb8!important}.dark-btn,.track{background:var(--nl-dark)!important;color:#fff!important;border-color:#ffffff20!important}.cyan-btn{background:var(--nl-cyan)!important;color:#171717!important}.formnav .back{background:#eceeeb!important;color:#171717!important;border-color:#d9ddda!important}
header .quote.small,header .navcta,header .track{height:40px!important;min-height:40px!important;padding:0 20px!important;font:500 14px/1 var(--nl-font)!important}
.console-tabs{display:inline-flex!important;gap:4px!important;padding:3px!important;border-radius:999px!important;background:var(--nl-dark)!important}.console-tabs button,.mode-row span,.tabs button{box-sizing:border-box!important;height:40px!important;min-height:40px!important;padding:0 16px!important;border-radius:999px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font:500 14px/1 var(--nl-font)!important;letter-spacing:0!important;white-space:nowrap!important}.console-tabs button{border:0!important;background:transparent!important;color:#c3c3cc!important}.console-tabs button.active{background:#fff!important;color:#171717!important}.mode-row span,.tabs button{border:1px solid #70707d88!important;background:transparent!important;color:#c3c3cc!important}.mode-row input:checked+span,.tabs button.active{background:var(--nl-cyan)!important;border-color:var(--nl-cyan)!important;color:#171717!important}
.console-fields label,.track-form label{box-sizing:border-box!important;min-height:64px!important;padding:10px 14px!important;border:1px solid #3a3a49!important;border-radius:14px!important;background:var(--nl-dark)!important}.console-fields input,.console-fields select,.track-form input{font:500 16px/1.25 var(--nl-font)!important;color:#fff!important}.console-fields small,.track-form small{font:500 10px/1.2 var(--nl-font)!important;color:#a8a9b3!important;letter-spacing:.08em!important}.console-fields button,.track-form button{height:64px!important;min-height:64px!important}
@media(hover:hover) and (pointer:fine){.quote:hover,.navcta:hover,.console-fields button:hover,.track-form button:hover,.formnav .next:hover,.formnav .send:hover{background:#ff765c!important;transform:translateY(-1px)!important}.glass:hover{background:#fff!important;color:#171717!important}.dark-btn:hover,.track:hover{background:#343443!important}.console-tabs button:hover:not(.active),.mode-row span:hover,.tabs button:hover:not(.active){background:#ffffff0f!important;color:#fff!important}}
.quote:active,.glass:active,.dark-btn:active,.cyan-btn:active,.track:active,.navcta:active,.console button:active,.formnav button:active,.mode-row span:active,.tabs button:active{transform:scale(.975)!important;box-shadow:none!important}
.quote:focus-visible,.glass:focus-visible,.dark-btn:focus-visible,.cyan-btn:focus-visible,.track:focus-visible,.navcta:focus-visible,.console button:focus-visible,.formnav button:focus-visible,.tabs button:focus-visible{outline:3px solid #1fc8e860!important;outline-offset:3px!important}
@media(max-width:760px){header .quote.small,header .navcta,header .track,.quote,.glass,.dark-btn,.cyan-btn,.formnav button{height:48px!important;min-height:48px!important;padding-inline:22px!important}.console-fields button,.track-form button{height:48px!important;min-height:48px!important;border-radius:999px!important}.console-tabs button,.mode-row span,.tabs button{height:40px!important;min-height:40px!important}}

/* Elegant motion system */
:root{--ease-lux:cubic-bezier(.22,1,.36,1);--ease-soft:cubic-bezier(.2,.75,.25,1)}
.hero-media{transform:scale(1.045);will-change:transform;transition:transform .08s linear}
.hero-inner>*{opacity:0;transform:translateY(22px);animation:heroIn .9s var(--ease-lux) forwards}.hero-inner .eyebrow{animation-delay:.08s}.hero-inner h1{animation-delay:.16s}.hero-inner p{animation-delay:.25s}.hero-inner .actions{animation-delay:.34s}
@keyframes heroIn{to{opacity:1;transform:none}}
header{animation:navIn .7s var(--ease-lux) .08s both}@keyframes navIn{from{opacity:0;transform:translate(-50%,-14px)}to{opacity:1;transform:translate(-50%,0)}}
.motion-section{opacity:0;transform:translateY(34px);transition:opacity .8s var(--ease-lux) var(--delay,0ms),transform .8s var(--ease-lux) var(--delay,0ms)}.motion-section.is-visible{opacity:1;transform:none}
.console-wrap{transition:transform .5s var(--ease-lux),box-shadow .5s var(--ease-lux)}.console.is-visible .console-wrap{transform:translateY(0)}
.svc,.container-cards article,.industry-scroll article{transition:transform .45s var(--ease-lux),box-shadow .45s var(--ease-lux),border-color .35s ease;transform-style:preserve-3d;will-change:transform}.svc:hover,.container-cards article:hover,.industry-scroll article:hover{box-shadow:0 18px 45px rgba(17,21,26,.1)}
.svc:before{transition:background .5s ease}.svc:hover:before{background:linear-gradient(0deg,#101319f2,#1013191c 78%)}.svc>div{transition:transform .55s var(--ease-lux)}.svc:hover>div{transform:translateY(-6px)}
.photo-band{background-attachment:fixed}.network-visual .hub{transition:transform .3s var(--ease-lux),background .3s}.network-visual .hub:hover{transform:translateY(-3px);background:#1fc8e8}.network-visual i{transform-origin:left center;animation:routeGlow 3.4s ease-in-out infinite alternate}@keyframes routeGlow{from{opacity:.55}to{opacity:1;filter:drop-shadow(0 0 5px #1fc8e855)}}
.console-pane.active{animation:paneIn .4s var(--ease-lux) both}@keyframes paneIn{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
.console-tabs button,.mode-row span,.tabs button{transition:background .25s var(--ease-soft),color .25s,border-color .25s,transform .18s}.console-tabs button:active,.mode-row span:active,.tabs button:active{transform:scale(.97)}
@media(max-width:900px){.photo-band{background-attachment:scroll}.svc,.container-cards article,.industry-scroll article{will-change:auto}.motion-section{transform:translateY(22px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.hero-inner>*,header,.motion-section{opacity:1!important;transform:none!important;animation:none!important;transition:none!important}.hero-media{transform:none!important;transition:none!important}.network-visual i{animation:none!important}.photo-band{background-attachment:scroll!important}}

/* Motion layer 2 — richer but restrained */
.hero:after{content:"";position:absolute;inset:auto -12% -46% 42%;height:70%;border-radius:50%;background:radial-gradient(circle,rgba(31,200,232,.08),transparent 66%);filter:blur(24px);pointer-events:none;animation:ambientDrift 8s ease-in-out infinite alternate}@keyframes ambientDrift{to{transform:translate3d(-4%,2%,0) scale(1.08)}}
.hero h1{will-change:transform,opacity}.hero .quote:after,.final-cta .quote:after,.svc a:after,.text-link:after{content:"";width:0;height:1px;background:currentColor;display:block;transition:width .35s var(--ease-lux)}.svc a:hover:after,.text-link:hover:after{width:100%}
.console-wrap{position:relative;overflow:hidden}.console-wrap:after{content:"";position:absolute;left:-25%;top:-120%;width:38%;height:300%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.035),transparent);transform:rotate(14deg);animation:consoleSheen 9s ease-in-out infinite;pointer-events:none}@keyframes consoleSheen{0%,55%{transform:translateX(-80%) rotate(14deg)}80%,100%{transform:translateX(430%) rotate(14deg)}}
.service-editorial{perspective:1200px}.svc{background-size:105%;transition:background-size 1s var(--ease-lux),transform .5s var(--ease-lux),box-shadow .5s}.svc:hover{background-size:110%}
.container-cards article{position:relative;overflow:hidden}.container-cards article:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--nl-cyan);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease-lux)}.container-cards article:hover:after{transform:scaleX(1)}
.principles article{transition:padding-left .35s var(--ease-lux),border-color .35s}.principles article:hover{padding-left:12px;border-color:#1fc8e866}
.process-row article i{transition:transform .35s var(--ease-lux),background .35s,color .35s}.process-row article:hover i{transform:translateY(-4px);background:#1fc8e8;color:#171721}
.photo-band{position:relative;background-position:center calc(50% + var(--photoY,0px));transition:background-position .08s linear}.photo-band:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(17,21,26,.18));pointer-events:none}.photo-text{position:relative;z-index:2}
.network-visual{transform:translateY(var(--netY,0px));transition:transform .08s linear}.network-visual:after{content:"";position:absolute;width:220px;height:220px;left:42%;top:34%;border:1px solid #1fc8e82b;border-radius:50%;animation:radar 3.8s ease-out infinite}@keyframes radar{0%{transform:scale(.2);opacity:.8}100%{transform:scale(1.5);opacity:0}}
.industry-scroll article h3{transition:transform .35s var(--ease-lux)}.industry-scroll article:hover h3{transform:translateY(-4px)}
.final-cta{position:relative;overflow:hidden}.final-cta:after{content:"";position:absolute;width:340px;height:340px;right:-120px;top:-170px;border:1px solid rgba(23,23,33,.12);border-radius:50%;box-shadow:0 0 0 60px rgba(23,23,33,.045),0 0 0 120px rgba(23,23,33,.025);transition:transform .8s var(--ease-lux)}.final-cta:hover:after{transform:scale(1.12)}
@media(max-width:900px){.hero:after,.console-wrap:after,.network-visual:after{animation-duration:7s}.svc{background-size:cover!important}.photo-band{background-position:center!important}.network-visual{transform:none!important}}
@media(prefers-reduced-motion:reduce){.hero:after,.console-wrap:after,.network-visual:after{animation:none!important}.svc,.photo-band,.network-visual{transition:none!important}}

/* Master footer */
.site-footer{position:relative!important;z-index:4!important;width:100%!important;padding:0!important;display:block!important;background:#12121a!important;color:#ededf3!important;opacity:1!important;transform:none!important}.footer-main{width:min(1200px,calc(100% - 48px));margin:auto;padding:72px 0 64px;display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:56px}.footer-brand p{margin:20px 0 0;color:#92949f;font-size:15px}.footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer-col>span{margin-bottom:8px;color:#737581;font-size:10px;font-weight:600;letter-spacing:.1em}.footer-col a{color:#c9cad1!important;text-decoration:none!important;font-size:14px;transition:color .2s,transform .2s}.footer-col a:hover{color:#fff!important;transform:translateX(3px)}.footer-bottom{width:min(1200px,calc(100% - 48px));margin:auto;padding:22px 0 30px;display:grid;grid-template-columns:1fr auto 1fr;gap:20px;border-top:1px solid #ffffff14;color:#737581;font-size:10px;letter-spacing:.05em}.footer-bottom span:last-child{text-align:right}
@media(max-width:760px){.footer-main{width:calc(100% - 32px);padding:52px 0 42px;grid-template-columns:1fr 1fr;gap:38px 24px}.footer-brand{grid-column:1/-1}.footer-bottom{width:calc(100% - 32px);padding:20px 0 26px;display:flex;flex-direction:column;gap:8px}.footer-bottom span:last-child{text-align:left}.site-footer .logo{font-size:13px}}

/* Shared NORLANE page shell */
body{background:#f5f5f2;color:#171717}.site-footer{position:relative!important;z-index:4!important;width:100%!important;padding:0!important;display:block!important;background:#12121a!important;color:#ededf3!important;opacity:1!important;transform:none!important}.footer-main{width:min(1200px,calc(100% - 48px));margin:auto;padding:72px 0 64px;display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:56px}.footer-brand p{margin:20px 0 0;color:#92949f;font-size:15px}.footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer-col>span{margin-bottom:8px;color:#737581;font-size:10px;font-weight:600;letter-spacing:.1em}.footer-col a{color:#c9cad1!important;text-decoration:none!important;font-size:14px}.footer-bottom{width:min(1200px,calc(100% - 48px));margin:auto;padding:22px 0 30px;display:grid;grid-template-columns:1fr auto 1fr;gap:20px;border-top:1px solid #ffffff14;color:#737581;font-size:10px}.footer-bottom span:last-child{text-align:right}
header#nav{font-family:var(--nl-font)!important}.hero h1,.statement h2,.split h2,.section-title h2,.case h2,.cta h2{font-family:var(--nl-font)!important;font-weight:420!important;letter-spacing:-.04em!important}.card,.system,.cta{border-radius:20px!important}.card{border:1px solid rgba(255,255,255,.08)!important}
@media(max-width:760px){.footer-main{width:calc(100% - 32px);padding:52px 0 42px;grid-template-columns:1fr 1fr;gap:38px 24px}.footer-brand{grid-column:1/-1}.footer-bottom{width:calc(100% - 32px);display:flex;flex-direction:column;gap:8px}.footer-bottom span:last-child{text-align:left}header#nav{top:10px!important;width:calc(100% - 24px)!important;height:56px!important;padding:0 15px!important;grid-template-columns:1fr auto!important;border-radius:30px!important}header#nav nav,header#nav .nav-actions{display:none!important}header#nav .menu{display:block!important;border:0!important;background:none!important;color:#fff!important;font:500 13px var(--nl-font)!important}}

/* Sitemap dropdown and utility page shell */
.nav-drop{position:relative}.nav-drop>.nav-parent{display:block}.drop-menu{position:absolute;top:44px;left:0;width:210px;padding:8px;display:flex;flex-direction:column;gap:2px;border:1px solid #ffffff18;border-radius:16px;background:#1e1e2af5;box-shadow:0 18px 45px #0003;opacity:0;visibility:hidden;transform:translateY(7px);transition:.2s}.nav-drop:hover .drop-menu,.nav-drop:focus-within .drop-menu{opacity:1;visibility:visible;transform:none}.drop-menu a{padding:10px 12px!important;border-radius:10px!important}.simple-hero{padding:170px max(24px,calc((100% - 1200px)/2)) 80px;background:#171721;color:#fff}.simple-hero>div{max-width:850px}.simple-hero h1{margin:14px 0;font-size:clamp(50px,5.5vw,76px);font-weight:420;line-height:1.04;letter-spacing:-.04em}.simple-hero p{max-width:650px;color:#b9bac4;font-size:18px}.overview-grid{width:min(1200px,calc(100% - 48px));margin:80px auto 110px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.overview-grid>a{min-height:340px;padding:28px;display:flex;flex-direction:column;border:1px solid #dfe2df;border-radius:20px;background:#fff;text-decoration:none;transition:.35s}.overview-grid>a:hover{transform:translateY(-5px);border-color:#1fc8e8}.overview-grid span{font-size:11px;color:#687174}.overview-grid h2{margin:auto 0 8px;font-size:32px;font-weight:450}.overview-grid p{margin:0;color:#687174}.network-page{width:min(1200px,calc(100% - 48px));margin:90px auto 110px;display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:center}.tracking-box{width:min(760px,calc(100% - 48px));margin:90px auto 120px;padding:26px;border-radius:22px;background:#1e1e2a;color:#fff}.tracking-box label{display:block;padding:15px;border:1px solid #ffffff18;border-radius:16px;background:#171721}.tracking-box label span{display:block;color:#92949f;font-size:10px;letter-spacing:.08em}.tracking-box input{width:100%;padding:7px 0 0;border:0;outline:0;background:transparent;color:#fff;font-size:18px}.tracking-box button{margin-top:12px}.tracking-box p{color:#92949f;font-size:12px}
@media(max-width:760px){.drop-menu{position:static;width:100%;padding:0 0 8px 12px;opacity:1;visibility:visible;transform:none;background:transparent;border:0;box-shadow:none}.drop-menu a{font-size:15px!important;padding:6px 0!important;color:#aeb0b9!important}.simple-hero{padding:120px 16px 52px}.simple-hero h1{font-size:44px}.overview-grid{width:calc(100% - 32px);margin:60px auto 76px;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.overview-grid>a{flex:0 0 82vw;min-height:280px;scroll-snap-align:start}.network-page{width:calc(100% - 32px);margin:60px auto 76px;grid-template-columns:1fr}.tracking-box{width:calc(100% - 32px);margin:60px auto 76px}}

/* Final sitemap navigation */
.nav-drop{position:relative}.drop-menu{position:absolute;top:44px;left:0;width:210px;padding:8px;display:flex;flex-direction:column;gap:2px;border:1px solid #ffffff18;border-radius:16px;background:#1e1e2af5;box-shadow:0 18px 45px #0003;opacity:0;visibility:hidden;transform:translateY(7px);transition:.2s}.nav-drop:hover .drop-menu,.nav-drop:focus-within .drop-menu{opacity:1;visibility:visible;transform:none}.drop-menu a{padding:10px 12px!important;border-radius:10px!important}@media(max-width:760px){.drop-menu{position:static;width:100%;padding:0 0 8px 12px;opacity:1;visibility:visible;transform:none;background:transparent;border:0;box-shadow:none}.drop-menu a{font-size:15px!important;padding:6px 0!important;color:#aeb0b9!important}}


/* Single authoritative header logo rule */
header#nav a.header-logo{width:142px!important;min-width:142px!important;height:46px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;background:none!important;margin:0!important;padding:0!important;overflow:visible!important;font-size:0!important}
header#nav a.header-logo::before,header#nav a.header-logo::after{display:none!important;content:none!important}
header#nav a.header-logo .nmark{display:none!important}
header#nav a.header-logo svg.official-logo{display:block!important;width:142px!important;height:auto!important;max-width:none!important;max-height:42px!important;overflow:visible!important;opacity:1!important;visibility:visible!important;fill:#fff!important}
header#nav a.header-logo svg.official-logo *{fill:#fff!important}
@media(max-width:760px){header#nav a.header-logo{width:126px!important;min-width:126px!important;height:42px!important}header#nav a.header-logo svg.official-logo{width:126px!important;max-height:38px!important}}
