/* ==========================================================================
   NLS Xpress – main stylesheet
   ========================================================================== */

@font-face{font-family:'Sora';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/sora-latin-500-normal.woff2') format('woff2');}
@font-face{font-family:'Sora';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/sora-latin-600-normal.woff2') format('woff2');}
@font-face{font-family:'Sora';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/sora-latin-700-normal.woff2') format('woff2');}
@font-face{font-family:'Sora';font-style:normal;font-weight:800;font-display:swap;src:url('../fonts/sora-latin-800-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/inter-latin-400-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/inter-latin-500-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/inter-latin-600-normal.woff2') format('woff2');}

:root {
	--nls-primary: #03283a;
	--nls-accent: #0b8a45;
	--nls-dark: #021c2a;
	--nls-light: #eef3fb;
	--nls-accent-d: color-mix(in srgb, var(--nls-accent) 82%, #000);
	--nls-accent-l: color-mix(in srgb, var(--nls-accent) 14%, #fff);
	--nls-text: #4a5670;
	--nls-head: var(--nls-primary);
	--nls-line: #e3e8f1;
	--nls-white: #fff;
	--nls-radius: 18px;
	--nls-radius-s: 12px;
	--nls-shadow: 0 18px 50px -18px rgba(10, 31, 68, .28);
	--nls-shadow-s: 0 8px 24px -10px rgba(10, 31, 68, .22);
	--nls-font: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
	--nls-font-h: 'Sora', 'Inter', system-ui, sans-serif;
	--nls-ease: cubic-bezier(.22, .8, .24, 1);
	--nls-w: 1240px;
}

/* ---------- Reset / base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
html body.nls-theme { background: #fff !important; background-image: none !important; }
body {
	margin: 0; font-family: var(--nls-font); font-size: 16px; line-height: 1.7;
	color: var(--nls-text); background: #fff; -webkit-font-smoothing: antialiased; overflow-x: hidden;
}
body.menu-open, body.panel-open { overflow: hidden; }
img, svg, video, iframe { max-width: 100%; }
img { height: auto; display: block; }
a { color: inherit; text-decoration: none; transition: color .25s; }
h1, h2, h3, h4, h5 { font-family: var(--nls-font-h); color: var(--nls-head); line-height: 1.18; margin: 0 0 .6em; letter-spacing: -.01em; }
h1 { font-size: clamp(2.2rem, 4.6vw, 4rem); font-weight: 800; }
h2 { font-size: clamp(1.8rem, 3.4vw, 2.9rem); font-weight: 700; }
h3 { font-size: 1.25rem; font-weight: 600; }
p { margin: 0 0 1.1em; }
ul, ol { margin: 0; padding: 0; list-style: none; }
button { font: inherit; cursor: pointer; }
:focus-visible { outline: 2px solid var(--nls-accent); outline-offset: 3px; }
.screen-reader-text { position: absolute !important; clip: rect(1px, 1px, 1px, 1px); width: 1px; height: 1px; overflow: hidden; }
.nls-skip { position: fixed; left: 12px; top: -60px; z-index: 10001; background: var(--nls-accent); color: #fff; padding: 10px 16px; border-radius: 8px; transition: top .2s; }
.nls-skip:focus { top: 12px; }
.nls-i { width: 1.25em; height: 1.25em; flex: none; }
.nls-i.flip { transform: scaleX(-1); }
.nls-container { width: 100%; max-width: var(--nls-w); margin: 0 auto; padding: 0 24px; }
.nls-narrow { max-width: 920px; }
.nls-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* ---------- Buttons / links ---------- */
.nls-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: .6em;
	padding: 14px 28px; border-radius: 999px; font-family: var(--nls-font-h); font-weight: 600; font-size: .95rem;
	border: 2px solid transparent; transition: transform .3s var(--nls-ease), box-shadow .3s, background .3s, color .3s, border-color .3s;
	line-height: 1.2; position: relative; overflow: hidden; cursor: pointer; white-space: nowrap;
}
.nls-btn .nls-i { width: 1.1em; height: 1.1em; transition: transform .3s var(--nls-ease); }
.nls-btn:hover .nls-i { transform: translateX(4px); }
.nls-btn--accent { background: var(--nls-accent); color: #fff; box-shadow: 0 12px 28px -10px color-mix(in srgb, var(--nls-accent) 80%, transparent); }
.nls-btn--accent:hover { background: var(--nls-accent-d); transform: translateY(-2px); color: #fff; }
.nls-btn--ghost { border-color: var(--nls-primary); color: var(--nls-primary); background: transparent; }
.nls-btn--ghost:hover { background: var(--nls-primary); color: #fff; }
.nls-btn--ghost-light { border-color: rgba(255, 255, 255, .5); color: #fff; background: rgba(255, 255, 255, .06); backdrop-filter: blur(6px); }
.nls-btn--ghost-light:hover { background: #fff; color: var(--nls-primary); }
.nls-btn[disabled] { opacity: .6; pointer-events: none; }
.nls-link { display: inline-flex; align-items: center; gap: .5em; font-weight: 600; color: var(--nls-accent); background: none; border: 0; padding: 0; font-family: var(--nls-font-h); font-size: .95rem; cursor: pointer; }
.nls-link .nls-i { width: 1em; height: 1em; transition: transform .3s; }
.nls-link:hover .nls-i { transform: translateX(5px); }
.nls-link.is-light { color: #fff; }
.nls-eyebrow {
	display: inline-flex; align-items: center; gap: 10px; font-family: var(--nls-font-h); font-weight: 600;
	font-size: .78rem; letter-spacing: .18em; text-transform: uppercase; color: var(--nls-accent); margin-bottom: 14px;
}
.nls-eyebrow::before { content: ''; width: 34px; height: 2px; background: currentColor; border-radius: 2px; }
.nls-eyebrow.is-light { color: var(--nls-accent); }

/* ---------- Preloader ---------- */
.nls-preloader { position: fixed; inset: 0; z-index: 10000; background: var(--nls-dark); display: grid; place-items: center; transition: opacity .5s, visibility .5s; }
.nls-preloader.is-done { opacity: 0; visibility: hidden; pointer-events: none; }
/* CSS-only failsafe: loader always disappears, even if JS fails to load */
.nls-preloader { animation: nlsPreOut .5s 3s forwards; }
@keyframes nlsPreOut { to { opacity: 0; visibility: hidden; pointer-events: none; } }
.nls-preloader__in { text-align: center; }
.nls-preloader__in img { width: 120px; margin: 0 auto 22px; animation: nlsPulse 1.4s ease-in-out infinite; }
.nls-preloader__bar { display: block; width: 160px; height: 3px; background: rgba(255, 255, 255, .15); border-radius: 3px; overflow: hidden; position: relative; margin: 0 auto; }
.nls-preloader__bar::after { content: ''; position: absolute; inset: 0; width: 40%; background: var(--nls-accent); border-radius: 3px; animation: nlsBar 1s ease-in-out infinite; }
@keyframes nlsBar { 0% { transform: translateX(-100%); } 100% { transform: translateX(260%); } }
@keyframes nlsPulse { 50% { transform: scale(1.06); opacity: .8; } }

/* ---------- Topbar ---------- */
.nls-topbar { background: var(--nls-dark); color: #b9c5de; font-size: .86rem; }
.nls-topbar__in { display: flex; justify-content: space-between; align-items: center; min-height: 42px; gap: 20px; }
.nls-topbar__left, .nls-topbar__right { display: flex; align-items: center; gap: 24px; }
.nls-topbar a, .nls-topbar__hours { display: inline-flex; align-items: center; gap: 8px; }
.nls-topbar a:hover { color: var(--nls-accent); }
.nls-topbar .nls-i { width: 1em; height: 1em; color: var(--nls-accent); }
.nls-social { display: flex; gap: 8px; }
.nls-social a { width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; background: rgba(255, 255, 255, .08); color: #fff; transition: background .3s, transform .3s; }
.nls-social a .nls-i { width: 15px; height: 15px; color: currentColor; }
.nls-social a:hover { background: var(--nls-accent); transform: translateY(-3px); color: #fff; }
.nls-topbar .nls-social a { width: 28px; height: 28px; }

/* ---------- Header ---------- */
.nls-header { position: sticky; top: 0; z-index: 900; background: rgba(255, 255, 255, .94); backdrop-filter: saturate(1.4) blur(14px); transition: box-shadow .3s, background .3s; }
.nls-header.is-stuck { box-shadow: 0 10px 34px -18px rgba(10, 31, 68, .4); }
.nls-header__in { display: flex; align-items: center; justify-content: space-between; gap: 28px; min-height: 84px; }
.nls-header.is-stuck .nls-header__in { min-height: 72px; }
.nls-logo img { max-height: 58px; width: auto; transition: max-height .3s; }
.nls-header.is-stuck .nls-logo img { max-height: 50px; }
.nls-nav { margin-left: auto; }
.nls-menu { display: flex; align-items: center; gap: 6px; }
.nls-menu li { position: relative; }
.nls-menu > li > a { display: block; white-space: nowrap; padding: 10px 14px; font-family: var(--nls-font-h); font-weight: 600; font-size: .95rem; color: var(--nls-primary); border-radius: 999px; position: relative; }
.nls-menu > li > a::after { content: ''; position: absolute; left: 16px; right: 16px; bottom: 4px; height: 2px; background: var(--nls-accent); transform: scaleX(0); transform-origin: left; transition: transform .35s var(--nls-ease); }
.nls-menu > li:hover > a, .nls-menu > li.current-menu-item > a, .nls-menu > li.current_page_item > a { color: var(--nls-accent); }
.nls-menu > li:hover > a::after, .nls-menu > li.current-menu-item > a::after, .nls-menu > li.current_page_item > a::after { transform: scaleX(1); }
.nls-menu .sub-menu { position: absolute; left: 0; top: 100%; min-width: 220px; background: #fff; border-radius: 14px; box-shadow: var(--nls-shadow); padding: 10px; opacity: 0; visibility: hidden; transform: translateY(10px); transition: .3s var(--nls-ease); z-index: 20; }
.nls-menu li:hover > .sub-menu, .nls-menu li:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: none; }
.nls-menu .sub-menu a { display: block; padding: 10px 14px; border-radius: 8px; font-size: .92rem; font-weight: 500; }
.nls-menu .sub-menu a:hover { background: var(--nls-light); color: var(--nls-accent); }
.nls-menu .sub-menu .sub-menu { left: 100%; top: 0; }
.nls-header__actions { display: flex; align-items: center; gap: 16px; }
.nls-header__phone { display: flex; align-items: center; gap: 10px; line-height: 1.2; }
.nls-header__phone span { width: 42px; height: 42px; border-radius: 50%; background: var(--nls-accent-l); color: var(--nls-accent); display: grid; place-items: center; }
.nls-header__phone em { display: block; font-style: normal; font-size: .72rem; text-transform: uppercase; letter-spacing: .1em; }
.nls-header__phone strong { font-family: var(--nls-font-h); color: var(--nls-primary); font-size: .95rem; white-space: nowrap; }
.nls-header__phone { white-space: nowrap; }
.nls-header__cta { padding: 12px 22px; white-space: nowrap; }
.nls-iconbtn { width: 46px; height: 46px; border-radius: 50%; border: 1px solid var(--nls-line); background: #fff; color: var(--nls-primary); display: grid; place-items: center; transition: .3s; }
.nls-iconbtn:hover { background: var(--nls-primary); color: #fff; }
.nls-burger { display: none; flex-direction: column; justify-content: center; gap: 5px; padding: 0 13px; }
.nls-burger span { display: block; width: 20px; height: 2px; background: currentColor; border-radius: 2px; transition: .3s; }
.nls-burger { align-items: center; }
body.menu-open .nls-burger span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
body.menu-open .nls-burger span:nth-child(2) { opacity: 0; }
body.menu-open .nls-burger span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* mobile menu */
.nls-mobile { position: fixed; inset: 0; z-index: 880; background: var(--nls-dark); padding: 130px 28px 40px; transform: translateY(-100%); transition: transform .5s var(--nls-ease); overflow-y: auto; visibility: hidden; }
body.menu-open .nls-mobile { transform: none; visibility: visible; }
.nls-mobile__in { max-width: 560px; margin: 0 auto; display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; }
.nls-mobile__menu a { display: block; padding: 14px 0; font-family: var(--nls-font-h); font-size: 1.5rem; font-weight: 600; color: #fff; border-bottom: 1px solid rgba(255, 255, 255, .1); }
.nls-mobile__menu a:hover { color: var(--nls-accent); }
.nls-mobile__menu .sub-menu a { font-size: 1.05rem; padding-left: 16px; color: #b9c5de; }
.nls-mobile__contact { display: grid; gap: 10px; color: #b9c5de; margin-top: 10px; }
.nls-mobile__contact a { display: flex; gap: 10px; align-items: center; }
.nls-mobile__contact .nls-i { color: var(--nls-accent); }
.nls-mobile .nls-btn { width: 100%; margin-top: 8px; }

/* side panel */
.nls-overlay { position: fixed; inset: 0; background: rgba(4, 12, 30, .6); backdrop-filter: blur(4px); z-index: 1000; opacity: 0; visibility: hidden; transition: .4s; }
body.panel-open .nls-overlay { opacity: 1; visibility: visible; }
.nls-panel { position: fixed; top: 0; right: 0; bottom: 0; width: min(420px, 92vw); background: var(--nls-dark); color: #b9c5de; z-index: 1001; padding: 40px 34px; overflow-y: auto; transform: translateX(100%); transition: transform .5s var(--nls-ease); }
body.panel-open .nls-panel { transform: none; }
.nls-panel__close { position: absolute; top: 18px; right: 18px; width: 42px; height: 42px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, .2); background: transparent; color: #fff; display: grid; place-items: center; }
.nls-panel__close:hover { background: var(--nls-accent); border-color: var(--nls-accent); }
.nls-panel__logo img { max-height: 54px; margin-bottom: 26px; }
.nls-panel h4 { color: #fff; font-size: 1.05rem; margin: 28px 0 12px; }
.nls-panel__gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.nls-panel__gallery img { aspect-ratio: 1; width: 100%; object-fit: cover; border-radius: 10px; transition: transform .4s; }
.nls-panel__gallery a { display: block; overflow: hidden; border-radius: 10px; }
.nls-panel__gallery a:hover img { transform: scale(1.1); }

/* ---------- Hero ---------- */
.nls-hero { position: relative; background: var(--nls-dark); color: #fff; overflow: hidden; }
.nls-hero__slides { position: relative; min-height: clamp(560px, 84vh, 800px); }
.nls-hero__slide { position: absolute; inset: 0; opacity: 0; visibility: hidden; transition: opacity 1s, visibility 1s; display: flex; align-items: center; }
.nls-hero__slide.is-active { opacity: 1; visibility: visible; z-index: 2; }
.nls-hero__bg { position: absolute; inset: 0; background-size: cover; background-position: center; transform: scale(1.12); transition: transform 9s ease-out; }
.nls-hero__slide.is-active .nls-hero__bg { transform: scale(1); }
.nls-hero__shade { position: absolute; inset: 0; background: linear-gradient(95deg, color-mix(in srgb, var(--nls-dark) 94%, transparent) 8%, color-mix(in srgb, var(--nls-dark) 66%, transparent) 48%, color-mix(in srgb, var(--nls-dark) 18%, transparent) 100%); }
.nls-hero__in { position: relative; z-index: 2; padding-top: 70px; padding-bottom: 130px; }
.nls-hero__copy { max-width: 720px; }
.nls-hero h1 { color: #fff; margin-bottom: 22px; }
.nls-hero p { font-size: clamp(1.05rem, 1.6vw, 1.3rem); color: #d3dcee; max-width: 560px; margin-bottom: 34px; }
.nls-hero__btns { display: flex; gap: 14px; flex-wrap: wrap; }
.nls-hero__slide .nls-eyebrow, .nls-hero__slide h1, .nls-hero__slide p, .nls-hero__slide .nls-hero__btns { opacity: 0; transform: translateY(34px); }
.nls-hero__slide.is-active .nls-eyebrow { animation: nlsUp .9s .25s var(--nls-ease) forwards; }
.nls-hero__slide.is-active h1 { animation: nlsUp .9s .4s var(--nls-ease) forwards; }
.nls-hero__slide.is-active p { animation: nlsUp .9s .55s var(--nls-ease) forwards; }
.nls-hero__slide.is-active .nls-hero__btns { animation: nlsUp .9s .7s var(--nls-ease) forwards; }
@keyframes nlsUp { to { opacity: 1; transform: none; } }
.nls-hero__ctl { position: absolute; left: 50%; transform: translateX(-50%); bottom: 96px; z-index: 5; display: flex; align-items: center; justify-content: space-between; pointer-events: none; }
.nls-hero__ctl > * { pointer-events: auto; }
.nls-hero__dots { display: flex; gap: 10px; }
.nls-hero__dots button { width: 54px; height: 20px; background: none; border: 0; padding: 0; position: relative; }
.nls-hero__dots button span { position: absolute; left: 0; right: 0; top: 9px; height: 3px; background: rgba(255, 255, 255, .3); border-radius: 3px; overflow: hidden; }
.nls-hero__dots button span::after { content: ''; position: absolute; inset: 0; background: var(--nls-accent); transform: scaleX(0); transform-origin: left; }
.nls-hero__dots button.is-active span::after { animation: nlsProg var(--delay, 7s) linear forwards; }
@keyframes nlsProg { to { transform: scaleX(1); } }
.nls-hero__arrows { display: flex; gap: 10px; }
.nls-hero__arrows button { width: 50px; height: 50px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, .35); background: rgba(255, 255, 255, .08); color: #fff; display: grid; place-items: center; backdrop-filter: blur(6px); transition: .3s; }
.nls-hero__arrows button:hover { background: var(--nls-accent); border-color: var(--nls-accent); }

/* ---------- Track bar ---------- */
.nls-trackbar { position: relative; z-index: 10; margin-top: -64px; }
.nls-trackbar__card { background: #fff; border-radius: 22px; padding: 22px; box-shadow: var(--nls-shadow); }
.nls-trackbox { display: flex; align-items: center; gap: 14px; }
.nls-trackbox__label { display: flex; align-items: center; gap: 10px; font-family: var(--nls-font-h); font-weight: 700; color: var(--nls-primary); white-space: nowrap; }
.nls-trackbox__label .nls-i { color: var(--nls-accent); width: 1.5em; height: 1.5em; }
.nls-trackbox input { flex: 1; min-width: 0; height: 58px; border-radius: 999px; border: 1.5px solid var(--nls-line); background: var(--nls-light); padding: 0 24px; font: inherit; color: var(--nls-primary); transition: .3s; }
.nls-trackbox input:focus { outline: none; border-color: var(--nls-accent); background: #fff; box-shadow: 0 0 0 5px var(--nls-accent-l); }
.nls-trackbox .nls-btn { height: 58px; }
.nls-trackbox.is-inline { background: rgba(255, 255, 255, .08); padding: 10px; border-radius: 999px; flex-wrap: wrap; }
.nls-trackbox.is-inline .nls-trackbox__label { display: none; }
.nls-trackbox.is-inline input { background: rgba(255, 255, 255, .1); border-color: transparent; color: #fff; }
.nls-trackbox.is-inline input::placeholder { color: #b9c5de; }
.nls-trackbar__res { margin-top: 18px; }
.nls-trackbar__res[hidden] { display: none; }
.nls-global .nls-trackbar__res { color: var(--nls-text); }
.nls-track { border: 1px solid var(--nls-line); border-radius: var(--nls-radius); padding: 24px; background: #fff; text-align: left; color: var(--nls-text); }
.nls-track--nf { text-align: center; }
.nls-track--nf h4 { margin-bottom: 6px; }
.nls-track__err { color: #c0392b; margin: 0; }
.nls-track__head { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; align-items: center; margin-bottom: 18px; }
.nls-track__head small, .nls-track__meta small { display: block; font-size: .72rem; text-transform: uppercase; letter-spacing: .1em; color: #8592ab; }
.nls-track__head strong { font-family: var(--nls-font-h); font-size: 1.35rem; color: var(--nls-primary); }
.nls-badge { padding: 7px 16px; border-radius: 999px; font-weight: 600; font-size: .85rem; background: var(--nls-accent-l); color: var(--nls-accent-d); }
.nls-badge.is-delivered { background: #e3f7ea; color: #15803d; }
.nls-badge.is-on_hold, .nls-badge.is-returned { background: #fde8e6; color: #b42318; }
.nls-track__meta { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 14px; background: var(--nls-light); border-radius: var(--nls-radius-s); padding: 16px; margin-bottom: 24px; }
.nls-track__meta span { font-weight: 600; color: var(--nls-primary); }
.nls-track__steps { display: flex; margin-bottom: 26px; }
.nls-track__steps li { flex: 1; text-align: center; position: relative; font-size: .78rem; font-weight: 600; color: #8592ab; }
.nls-track__steps li i { display: block; width: 18px; height: 18px; border-radius: 50%; background: #dbe2ee; margin: 0 auto 8px; position: relative; z-index: 2; border: 4px solid #fff; box-shadow: 0 0 0 1px #dbe2ee; }
.nls-track__steps li::before { content: ''; position: absolute; top: 8px; left: -50%; width: 100%; height: 3px; background: #dbe2ee; z-index: 1; }
.nls-track__steps li:first-child::before { display: none; }
.nls-track__steps li.is-done { color: var(--nls-primary); }
.nls-track__steps li.is-done i { background: var(--nls-accent); box-shadow: 0 0 0 1px var(--nls-accent); }
.nls-track__steps li.is-done::before { background: var(--nls-accent); }
.nls-track__events { border-left: 2px solid var(--nls-line); margin-left: 8px; }
.nls-track__events li { display: grid; grid-template-columns: 130px 1fr; gap: 16px; padding: 0 0 20px 22px; position: relative; }
.nls-track__events li::before { content: ''; position: absolute; left: -7px; top: 6px; width: 12px; height: 12px; border-radius: 50%; background: #fff; border: 3px solid #cfd8e6; }
.nls-track__events li.is-first::before { border-color: var(--nls-accent); background: var(--nls-accent); }
.nls-track__events strong { display: block; color: var(--nls-primary); font-size: .95rem; }
.nls-track__events small, .nls-track__what span { color: #7a879f; font-size: .85rem; }
.nls-track__what span, .nls-track__what em { display: block; }
.nls-track__what em { font-size: .85rem; }

/* ---------- Sections ---------- */
.nls-section { padding: clamp(64px, 8vw, 120px) 0; position: relative; }
.nls-section.is-light { background: var(--nls-light); }
.nls-section.is-dark, .is-dark { background: radial-gradient(1200px 500px at 85% -10%, color-mix(in srgb, var(--nls-accent) 14%, transparent), transparent 60%), var(--nls-dark); color: #b9c5de; }
.is-dark h2, .is-dark h3 { color: #fff; }
.nls-sechead { max-width: 760px; margin-bottom: 54px; }
.nls-sechead.is-center { margin-left: auto; margin-right: auto; text-align: center; }
.nls-sechead.is-center .nls-eyebrow { justify-content: center; }
.nls-sechead.is-light h2 { color: #fff; }
.nls-sechead p { color: var(--nls-text); font-size: 1.05rem; }
.nls-grid { display: grid; gap: 28px; }
.nls-grid--2 { grid-template-columns: repeat(2, 1fr); }
.nls-grid--3 { grid-template-columns: repeat(3, 1fr); }
.nls-grid--4 { grid-template-columns: repeat(4, 1fr); }

/* reveal */
.js .nls-reveal { opacity: 0; transform: translateY(28px); transition: opacity .8s var(--nls-ease), transform .8s var(--nls-ease); transition-delay: var(--d, 0ms); animation: nlsRevealFail .1s 5s forwards; }
.js .nls-reveal.is-in { opacity: 1; transform: none; animation: none; }
@keyframes nlsRevealFail { to { opacity: 1; transform: none; } }

/* core 3 */
.nls-core { padding-top: 70px; padding-bottom: 20px; }
.nls-core__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.nls-core__item { display: flex; align-items: center; gap: 18px; padding: 26px; border-radius: var(--nls-radius); background: #fff; border: 1px solid var(--nls-line); box-shadow: var(--nls-shadow-s); transition: .4s var(--nls-ease); position: relative; overflow: hidden; }
.nls-core__item:hover { transform: translateY(-6px); border-color: var(--nls-accent); box-shadow: var(--nls-shadow); }
.nls-core__icon { width: 62px; height: 62px; flex: none; border-radius: 18px; background: var(--nls-accent-l); color: var(--nls-accent); display: grid; place-items: center; transition: .4s; }
.nls-core__icon .nls-i { width: 28px; height: 28px; }
.nls-core__item:hover .nls-core__icon { background: var(--nls-accent); color: #fff; transform: rotate(-8deg); }
.nls-core__item h3 { margin-bottom: 4px; font-size: 1.12rem; }
.nls-core__item p { margin: 0; font-size: .9rem; line-height: 1.5; }
.nls-core__arrow { margin-left: auto; color: var(--nls-accent); opacity: 0; transform: translateX(-10px); transition: .4s; }
.nls-core__item:hover .nls-core__arrow { opacity: 1; transform: none; }

/* cards */
.nls-card { background: #fff; border-radius: var(--nls-radius); overflow: hidden; border: 1px solid var(--nls-line); transition: .45s var(--nls-ease); position: relative; display: flex; flex-direction: column; }
.nls-card:hover { transform: translateY(-8px); box-shadow: var(--nls-shadow); border-color: transparent; }
.nls-card__media { display: block; aspect-ratio: 16 / 11; overflow: hidden; background: var(--nls-light); }
.nls-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--nls-ease); }
.nls-card:hover .nls-card__media img { transform: scale(1.08); }
.nls-card__icon { position: relative; z-index: 3; align-self: flex-end; margin: -29px 24px 0 auto; width: 58px; height: 58px; border-radius: 16px; background: var(--nls-accent); color: #fff; display: grid; place-items: center; box-shadow: 0 10px 24px -8px color-mix(in srgb, var(--nls-accent) 70%, transparent); transition: transform .5s var(--nls-ease); }
.nls-card:hover .nls-card__icon { transform: rotate(-8deg) scale(1.08); }
.nls-card--service .nls-card__body { padding-top: 6px; }
.nls-card__body { padding: 28px 28px 30px; display: flex; flex-direction: column; flex: 1; }
.nls-card__body h3 { margin-bottom: 4px; }
.nls-card__body h3 a:hover { color: var(--nls-accent); }
.nls-card__sub { color: var(--nls-accent); font-weight: 600; font-size: .85rem; margin-bottom: 12px; display: block; }
.nls-card__body p { flex: 1; font-size: .95rem; }
.nls-card--post .nls-card__body p { flex: 1; }

/* process */
.nls-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; counter-reset: s; position: relative; }
.nls-steps::before { content: ''; position: absolute; top: 56px; left: 16%; right: 16%; border-top: 2px dashed color-mix(in srgb, var(--nls-accent) 55%, transparent); }
.nls-step { position: relative; text-align: center; padding: 0 20px; }
.nls-step__icon { width: 112px; height: 112px; margin: 0 auto 24px; border-radius: 50%; background: #fff; border: 2px solid var(--nls-accent); color: var(--nls-accent); display: grid; place-items: center; position: relative; box-shadow: 0 0 0 10px var(--nls-accent-l); transition: .5s var(--nls-ease); z-index: 2; }
.nls-step__icon .nls-i { width: 40px; height: 40px; }
.nls-step:hover .nls-step__icon { background: var(--nls-accent); color: #fff; transform: scale(1.06); }
.nls-step__num { position: absolute; top: -6px; left: calc(50% + 28px); z-index: 3; width: 38px; height: 38px; border-radius: 50%; background: var(--nls-primary); color: #fff; font-family: var(--nls-font-h); font-weight: 700; font-size: .85rem; display: grid; place-items: center; border: 3px solid #fff; }
.nls-step h3 { margin-bottom: 8px; }
.nls-step p { margin: 0; }

/* showcase */
.nls-showcase { padding: clamp(64px, 8vw, 110px) 0; position: relative; overflow: hidden; }
.nls-showcase__bg { position: absolute; inset: 0; background-size: cover; background-position: center; opacity: .12; }
.nls-showcase .nls-container { position: relative; }
.nls-showcase__panels { display: flex; gap: 18px; height: 440px; }
.nls-panelcard { flex: 1; position: relative; border-radius: 24px; overflow: hidden; background-size: cover; background-position: center; display: flex; flex-direction: column; justify-content: flex-end; padding: 30px; color: #fff; transition: flex .7s var(--nls-ease); isolation: isolate; }
.nls-panelcard::before { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 20%, rgba(4, 12, 30, .92)); z-index: -1; }
.nls-panelcard::after { content: ''; position: absolute; inset: 0; background: color-mix(in srgb, var(--nls-primary) 55%, transparent); z-index: -1; transition: opacity .6s; }
.nls-panelcard.is-active { flex: 2.6; }
.nls-panelcard.is-active::after { opacity: 0; }
.nls-panelcard h3 { color: #fff; margin: 14px 0 0; font-size: 1.3rem; letter-spacing: .06em; }
.nls-panelcard__icon { width: 58px; height: 58px; border-radius: 16px; background: var(--nls-accent); display: grid; place-items: center; }
.nls-panelcard__go { position: absolute; right: 26px; top: 26px; width: 44px; height: 44px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, .5); display: grid; place-items: center; transition: .4s; }
.nls-panelcard:hover .nls-panelcard__go { background: var(--nls-accent); border-color: var(--nls-accent); transform: rotate(-45deg); }
.nls-showcase__info { display: grid; grid-template-columns: 1.2fr .8fr 1.4fr; gap: 28px; margin-top: 40px; align-items: stretch; }
.nls-showcase__info > div { background: rgba(255, 255, 255, .05); border: 1px solid rgba(255, 255, 255, .1); border-radius: var(--nls-radius); padding: 28px; backdrop-filter: blur(8px); }
.nls-showcase__hq h3 { display: flex; align-items: center; gap: 10px; font-size: 1.05rem; }
.nls-showcase__hq .nls-i { color: var(--nls-accent); }
.nls-showcase address { font-style: normal; line-height: 1.8; }
.nls-showcase__num strong { display: block; font-family: var(--nls-font-h); font-size: clamp(2.6rem, 5vw, 4rem); color: var(--nls-accent); line-height: 1; margin-bottom: 8px; }
.nls-showcase__txt h3 { font-size: 1.3rem; }

/* know us */
.nls-know__wrap { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(30px, 6vw, 90px); align-items: center; }
.nls-know__media { position: relative; border-radius: 28px; }
.nls-know__media > img:first-child { border-radius: 28px; width: 100%; aspect-ratio: 5 / 5.2; object-fit: cover; box-shadow: var(--nls-shadow); }
.nls-know__truck { position: absolute; left: -6%; bottom: -8%; width: 62%; filter: drop-shadow(0 20px 24px rgba(0, 0, 0, .35)); animation: nlsFloat 5s ease-in-out infinite; }
@keyframes nlsFloat { 50% { transform: translateY(-10px); } }
.nls-know__badge { position: absolute; right: -14px; top: 30px; background: var(--nls-accent); color: #fff; border-radius: 20px; padding: 20px 26px; text-align: center; box-shadow: var(--nls-shadow); }
.nls-know__badge strong { display: block; font-family: var(--nls-font-h); font-size: 2.2rem; line-height: 1; }
.nls-know__badge span { font-size: .8rem; }
.nls-features { display: grid; gap: 12px; margin-bottom: 28px; }
.nls-features li { display: flex; align-items: center; gap: 14px; font-weight: 600; color: var(--nls-primary); font-family: var(--nls-font-h); }
.nls-features li span { width: 44px; height: 44px; border-radius: 12px; background: var(--nls-accent-l); color: var(--nls-accent); display: grid; place-items: center; }
.nls-tabs__nav { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 18px; }
.nls-tabs__nav button { padding: 10px 20px; border-radius: 999px; border: 1.5px solid var(--nls-line); background: #fff; font-weight: 600; color: var(--nls-primary); transition: .3s; }
.nls-tabs__nav button.is-active, .nls-tabs__nav button:hover { background: var(--nls-primary); border-color: var(--nls-primary); color: #fff; }
.nls-tabs__pane { display: none; }
.nls-tabs__pane.is-active { display: block; animation: nlsUp .5s var(--nls-ease) both; }
.nls-know__btns { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 8px; }

/* calculator */
.nls-calc { display: grid; grid-template-columns: 1.4fr 1fr; gap: 0; background: #fff; border-radius: 28px; overflow: hidden; box-shadow: var(--nls-shadow); }
.nls-calc__form { padding: clamp(24px, 4vw, 48px); }
.nls-calc__note { font-size: .82rem; color: #7a879f; margin: 18px 0 0; }
.nls-calc__result { background: linear-gradient(160deg, var(--nls-primary), var(--nls-dark)); color: #cfd9ee; padding: clamp(24px, 4vw, 48px); display: flex; flex-direction: column; justify-content: center; gap: 14px; position: relative; overflow: hidden; }
.nls-calc__result::after { content: ''; position: absolute; right: -80px; bottom: -80px; width: 260px; height: 260px; border-radius: 50%; background: radial-gradient(circle, color-mix(in srgb, var(--nls-accent) 45%, transparent), transparent 70%); }
.nls-calc__label { font-size: .78rem; text-transform: uppercase; letter-spacing: .16em; color: var(--nls-accent); font-weight: 600; }
.nls-calc__price { font-family: var(--nls-font-h); font-size: clamp(2.1rem, 4vw, 3.2rem); color: #fff; line-height: 1.1; }
.nls-calc__meta { display: grid; gap: 8px; margin-bottom: 8px; }
.nls-calc__meta li { display: flex; align-items: center; gap: 10px; font-size: .95rem; }
.nls-calc__meta .nls-i { color: var(--nls-accent); }
.nls-calc__result .nls-btn { align-self: flex-start; position: relative; z-index: 2; }
.nls-dims { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }

/* network */
.nls-network__wrap { display: grid; grid-template-columns: 1.1fr .9fr; gap: 60px; align-items: center; }
.nls-chips { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }
.nls-chips li { display: inline-flex; align-items: center; gap: 8px; padding: 10px 18px; border-radius: 999px; background: #fff; border: 1px solid var(--nls-line); font-weight: 600; color: var(--nls-primary); font-size: .92rem; transition: .3s; }
.nls-chips li .nls-i { color: var(--nls-accent); width: 1.05em; height: 1.05em; }
.nls-chips li:hover { background: var(--nls-primary); color: #fff; border-color: var(--nls-primary); transform: translateY(-3px); }
.nls-globe { position: relative; width: min(440px, 100%); aspect-ratio: 1; margin: 0 auto; display: grid; place-items: center; }
.nls-globe__ring { position: absolute; border-radius: 50%; border: 1.5px dashed color-mix(in srgb, var(--nls-primary) 25%, transparent); }
.nls-globe__ring.r1 { inset: 0; animation: nlsSpin 40s linear infinite; }
.nls-globe__ring.r2 { inset: 14%; animation: nlsSpin 28s linear infinite reverse; }
.nls-globe__ring.r3 { inset: 28%; border-style: solid; border-color: color-mix(in srgb, var(--nls-accent) 35%, transparent); }
@keyframes nlsSpin { to { transform: rotate(360deg); } }
.nls-globe__core { width: 32%; aspect-ratio: 1; border-radius: 50%; background: linear-gradient(145deg, var(--nls-accent), var(--nls-accent-d)); color: #fff; display: grid; place-items: center; box-shadow: 0 20px 50px -12px color-mix(in srgb, var(--nls-accent) 70%, transparent); }
.nls-globe__core .nls-i { width: 52%; height: 52%; }
.nls-globe__dot { position: absolute; width: 14px; height: 14px; border-radius: 50%; background: var(--nls-primary); box-shadow: 0 0 0 6px color-mix(in srgb, var(--nls-primary) 18%, transparent); animation: nlsPing 2.4s ease-in-out infinite; }
.nls-globe__dot.d1 { top: 6%; left: 48%; } .nls-globe__dot.d2 { top: 22%; right: 8%; animation-delay: .4s; }
.nls-globe__dot.d3 { bottom: 14%; right: 18%; animation-delay: .8s; } .nls-globe__dot.d4 { bottom: 6%; left: 40%; animation-delay: 1.2s; }
.nls-globe__dot.d5 { top: 40%; left: 2%; animation-delay: 1.6s; } .nls-globe__dot.d6 { top: 16%; left: 16%; animation-delay: 2s; background: var(--nls-accent); box-shadow: 0 0 0 6px var(--nls-accent-l); }
@keyframes nlsPing { 50% { transform: scale(1.5); } }

/* testimonials */
.nls-slider { position: relative; overflow: hidden; }
.nls-slider__track { display: flex; transition: transform .7s var(--nls-ease); }
.nls-slide { flex: 0 0 100%; padding: 0 14px 6px; margin: 0; }
@media (min-width: 900px) { .nls-slide { flex-basis: 50%; } }
.nls-testi__card { background: #fff; border-radius: 24px; padding: 36px; border: 1px solid var(--nls-line); position: relative; box-shadow: var(--nls-shadow-s); height: 100%; display: flex; flex-direction: column; }
.nls-slider .nls-slide { display: block; }
.nls-testi__top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; }
.nls-testi__quote { font-family: Georgia, serif; font-size: 5rem; line-height: .6; height: 36px; color: var(--nls-accent); opacity: .85; }
.nls-stars { display: inline-flex; color: #f5b301; }
.nls-stars .nls-i { width: 1.05em; height: 1.05em; }
.nls-testi__card h3 { font-size: 1.15rem; }
.nls-testi__card blockquote { margin: 0 0 24px; font-size: 1.02rem; flex: 1; font-style: italic; }
.nls-testi__card figcaption { display: flex; align-items: center; gap: 14px; }
.nls-testi__card figcaption img, .nls-avatar { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; }
.nls-avatar { background: var(--nls-primary); color: #fff; display: grid; place-items: center; font-family: var(--nls-font-h); font-weight: 700; }
.nls-testi__card figcaption strong { display: block; color: var(--nls-primary); font-family: var(--nls-font-h); }
.nls-testi__card figcaption small { color: #7a879f; }
.nls-slider__nav { display: flex; justify-content: center; gap: 12px; margin-top: 30px; }
.nls-slider__nav button { width: 50px; height: 50px; border-radius: 50%; border: 1.5px solid var(--nls-primary); background: transparent; color: var(--nls-primary); display: grid; place-items: center; transition: .3s; }
.nls-slider__nav button:hover { background: var(--nls-primary); color: #fff; }

/* stats */
.nls-stats { padding: 70px 0; }
.nls-stats__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; text-align: center; }
.nls-stat { position: relative; padding: 10px; }
.nls-stat:not(:last-child)::after { content: ''; position: absolute; right: -10px; top: 12%; height: 76%; width: 1px; background: rgba(255, 255, 255, .15); }
.nls-stat strong { display: block; font-family: var(--nls-font-h); font-size: clamp(2.4rem, 5vw, 3.8rem); color: #fff; line-height: 1.1; }
.nls-stat strong::first-line { color: #fff; }
.nls-stat span { color: #b9c5de; font-weight: 500; letter-spacing: .04em; }

/* gallery */
.nls-gallery__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.nls-gallery__item { position: relative; border-radius: var(--nls-radius); overflow: hidden; aspect-ratio: 4 / 3; display: block; background: var(--nls-light); }
.nls-gallery__item img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--nls-ease); }
.nls-gallery__item span { position: absolute; inset: 0; background: color-mix(in srgb, var(--nls-primary) 70%, transparent); display: grid; place-items: center; color: #fff; opacity: 0; transition: .4s; }
.nls-gallery__item span .nls-i { width: 38px; height: 38px; transform: scale(.6); transition: .4s var(--nls-ease); }
.nls-gallery__item:hover img { transform: scale(1.1); }
.nls-gallery__item:hover span { opacity: 1; }
.nls-gallery__item:hover span .nls-i { transform: none; }
.nls-lightbox { position: fixed; inset: 0; z-index: 10002; background: rgba(4, 12, 30, .92); display: grid; place-items: center; padding: 30px; opacity: 0; visibility: hidden; transition: .35s; }
.nls-lightbox.is-open { opacity: 1; visibility: visible; }
.nls-lightbox img { max-height: 88vh; max-width: 92vw; border-radius: 14px; box-shadow: 0 30px 80px rgba(0, 0, 0, .6); }
.nls-lightbox__close { position: absolute; top: 22px; right: 22px; width: 48px; height: 48px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, .3); background: rgba(255, 255, 255, .08); color: #fff; display: grid; place-items: center; }

/* CTA */
.nls-cta { background: linear-gradient(110deg, var(--nls-accent), var(--nls-accent-d)); color: #fff; padding: 70px 0; position: relative; overflow: hidden; }
.nls-cta::before { content: ''; position: absolute; right: -120px; top: -120px; width: 420px; height: 420px; border-radius: 50%; border: 60px solid rgba(255, 255, 255, .08); }
.nls-cta__wrap { display: flex; justify-content: space-between; align-items: center; gap: 40px; flex-wrap: wrap; position: relative; }
.nls-cta h2 { color: #fff; max-width: 620px; margin: 0; }
.nls-cta .nls-eyebrow { color: #fff; }
.nls-cta__links { display: flex; gap: 18px; flex-wrap: wrap; }
.nls-cta__link { display: grid; grid-template-columns: 54px 1fr; column-gap: 14px; align-items: center; background: rgba(255, 255, 255, .14); border: 1px solid rgba(255, 255, 255, .3); border-radius: 18px; padding: 16px 22px; backdrop-filter: blur(6px); transition: .35s; }
.nls-cta__link:hover { background: #fff; color: var(--nls-primary); transform: translateY(-4px); }
.nls-cta__link span { grid-row: 1 / 3; width: 54px; height: 54px; border-radius: 50%; background: #fff; color: var(--nls-accent); display: grid; place-items: center; }
.nls-cta__link em { font-style: normal; font-size: .8rem; opacity: .85; align-self: end; }
.nls-cta__link strong { font-family: var(--nls-font-h); font-size: 1.05rem; }

/* page hero */
.nls-pagehero { background: var(--nls-dark); color: #fff; padding: clamp(70px, 9vw, 130px) 0 clamp(60px, 7vw, 100px); position: relative; overflow: hidden; }
.nls-pagehero__bg { position: absolute; inset: 0; background: radial-gradient(900px 400px at 80% 0, color-mix(in srgb, var(--nls-accent) 30%, transparent), transparent 60%), linear-gradient(135deg, var(--nls-primary), var(--nls-dark)); }
.nls-pagehero__bg::after { content: ''; position: absolute; inset: 0; background-image: radial-gradient(rgba(255, 255, 255, .09) 1.2px, transparent 1.2px); background-size: 26px 26px; mask-image: linear-gradient(90deg, transparent, #000 90%); -webkit-mask-image: linear-gradient(90deg, transparent, #000 90%); }
.nls-pagehero .nls-container { position: relative; }
.nls-pagehero__title { color: #fff; margin: 0 0 12px; }
.nls-pagehero__sub { color: #b9c5de; font-size: 1.1rem; margin: 0; max-width: 620px; letter-spacing: .02em; }
.nls-crumbs { display: flex; gap: 10px; font-size: .9rem; color: #b9c5de; margin-bottom: 18px; }
.nls-crumbs a:hover { color: var(--nls-accent); }
.nls-crumbs [aria-current] { color: var(--nls-accent); }

/* about */
.nls-about__wrap { display: grid; grid-template-columns: 1fr 1.1fr; gap: clamp(30px, 6vw, 80px); align-items: center; }
.nls-about__media { position: relative; }
.nls-about__media > img { border-radius: 28px; width: 100%; aspect-ratio: 4 / 4.6; object-fit: cover; box-shadow: var(--nls-shadow); }
.nls-about__stat { position: absolute; background: #fff; border-radius: 18px; padding: 16px 22px; display: flex; align-items: center; gap: 14px; box-shadow: var(--nls-shadow); }
.nls-about__stat span { width: 48px; height: 48px; border-radius: 14px; background: var(--nls-accent-l); color: var(--nls-accent); display: grid; place-items: center; }
.nls-about__stat em { font-style: normal; font-size: .8rem; display: block; }
.nls-about__stat strong { font-family: var(--nls-font-h); font-size: 1.6rem; color: var(--nls-primary); line-height: 1; }
.nls-about__stat.s1 { left: -20px; top: 40px; } .nls-about__stat.s2 { right: -20px; bottom: 40px; }
.nls-safe__wrap { display: grid; grid-template-columns: 1.2fr 1fr; gap: 50px; align-items: center; }
.nls-safe__img img { filter: drop-shadow(0 30px 40px rgba(0, 0, 0, .45)); animation: nlsFloat 5s ease-in-out infinite; }
.nls-phonebtn { display: inline-flex; align-items: center; gap: 14px; font-family: var(--nls-font-h); font-weight: 700; font-size: 1.2rem; color: #fff; margin-top: 10px; }
.nls-phonebtn span { width: 56px; height: 56px; border-radius: 50%; background: var(--nls-accent); display: grid; place-items: center; transition: .3s; }
.nls-phonebtn:hover span { transform: rotate(-12deg) scale(1.08); }
.nls-phonebtn.is-dark { color: var(--nls-primary); }
.nls-why__item { background: #fff; border: 1px solid var(--nls-line); border-radius: var(--nls-radius); padding: 34px 26px; text-align: center; transition: .4s var(--nls-ease); }
.nls-why__item:hover { background: var(--nls-primary); transform: translateY(-8px); box-shadow: var(--nls-shadow); }
.nls-why__item span { width: 72px; height: 72px; border-radius: 22px; background: var(--nls-accent-l); color: var(--nls-accent); display: grid; place-items: center; margin: 0 auto 18px; transition: .4s; }
.nls-why__item span .nls-i { width: 32px; height: 32px; }
.nls-why__item:hover span { background: var(--nls-accent); color: #fff; }
.nls-why__item h3 { margin: 0; font-size: 1.05rem; }
.nls-why__item:hover h3 { color: #fff; }
.nls-freight__card { position: relative; min-height: 380px; border-radius: 24px; overflow: hidden; background-size: cover; background-position: center; display: flex; flex-direction: column; justify-content: flex-end; padding: 28px; color: #fff; isolation: isolate; transition: .5s var(--nls-ease); }
.nls-freight__card::before { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 25%, rgba(4, 12, 30, .92)); z-index: -1; }
.nls-freight__card:hover { transform: translateY(-8px); box-shadow: var(--nls-shadow); }
.nls-freight__card h3 { color: #fff; margin: 12px 0 0; font-size: 1.4rem; }
.nls-freight__tag { position: absolute; top: 22px; left: 22px; background: rgba(255, 255, 255, .18); backdrop-filter: blur(8px); border-radius: 999px; padding: 6px 16px; font-size: .8rem; font-weight: 600; }
.nls-freight__icon { width: 58px; height: 58px; border-radius: 16px; background: var(--nls-accent); display: grid; place-items: center; }

/* services page */
.nls-modes { padding: 60px 0 0; }
.nls-modes__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.nls-mode { display: flex; align-items: center; gap: 16px; background: #fff; border: 1px solid var(--nls-line); border-radius: var(--nls-radius); padding: 22px 24px; box-shadow: var(--nls-shadow-s); transition: .4s; }
.nls-mode:hover { transform: translateY(-5px); border-color: var(--nls-accent); }
.nls-mode span { width: 54px; height: 54px; border-radius: 16px; background: var(--nls-accent-l); color: var(--nls-accent); display: grid; place-items: center; }
.nls-mode strong { font-family: var(--nls-font-h); color: var(--nls-primary); }
.nls-global__wrap { display: grid; grid-template-columns: 1.1fr .9fr; gap: 50px; align-items: center; }
.nls-global__side { display: grid; gap: 22px; }
.nls-global__num { background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .12); border-radius: var(--nls-radius); padding: 26px 30px; }
.nls-global__num strong { font-family: var(--nls-font-h); font-size: 3.6rem; color: #fff; line-height: 1; }
.nls-global__num sup { color: var(--nls-accent); font-size: .5em; vertical-align: super; }
.nls-global__num span { display: block; font-weight: 600; color: #fff; }
.nls-global__track h3 { font-size: 1.1rem; }
.nls-svc { display: grid; grid-template-columns: 1fr 340px; gap: 48px; align-items: start; }
.nls-svc__img { width: 100%; border-radius: 24px; margin-bottom: 30px; box-shadow: var(--nls-shadow); max-height: 460px; object-fit: cover; }
.nls-sidecard { background: var(--nls-light); border-radius: var(--nls-radius); padding: 28px; margin-bottom: 24px; }
.nls-sidecard .nls-btn { width: 100%; margin-bottom: 16px; }
.nls-sidelist li a { display: flex; justify-content: space-between; align-items: center; padding: 12px 0; border-bottom: 1px solid var(--nls-line); font-weight: 600; color: var(--nls-primary); font-size: .95rem; }
.nls-sidelist li a:hover { color: var(--nls-accent); }
.nls-sidelist .nls-i { width: 1em; height: 1em; }

/* modal */
.nls-modal { border: 0; padding: 0; border-radius: 24px; width: min(860px, 92vw); max-height: 90vh; overflow: hidden; box-shadow: 0 40px 100px -20px rgba(0, 0, 0, .55); background: #fff; color: var(--nls-text); }
.nls-modal::backdrop { background: rgba(4, 12, 30, .7); backdrop-filter: blur(5px); }
.nls-modal[open] { animation: nlsModal .45s var(--nls-ease); }
@keyframes nlsModal { from { opacity: 0; transform: translateY(30px) scale(.97); } }
.nls-modal__inner { display: grid; grid-template-columns: 1fr 1.2fr; max-height: 90vh; position: relative; }
.nls-modal__img img { width: 100%; height: 100%; object-fit: cover; }
.nls-modal__body { padding: 40px; overflow-y: auto; }
.nls-modal__body h3 { font-size: 1.4rem; }
.nls-modal__close { position: absolute; top: 14px; right: 14px; width: 42px; height: 42px; border-radius: 50%; border: 0; background: #fff; box-shadow: var(--nls-shadow-s); color: var(--nls-primary); display: grid; place-items: center; z-index: 3; }
.nls-modal__close:hover { background: var(--nls-accent); color: #fff; }

/* forms */
.nls-form__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.nls-form label span:first-child { display: block; font-size: .85rem; font-weight: 600; color: var(--nls-primary); margin-bottom: 6px; font-family: var(--nls-font-h); }
.nls-form label.is-full { grid-column: 1 / -1; }
.nls-form input, .nls-form select, .nls-form textarea, .nls-calc input, .nls-calc select {
	width: 100%; font: inherit; color: var(--nls-primary); background: var(--nls-light); border: 1.5px solid transparent; border-radius: 14px; padding: 14px 18px; transition: .3s; min-width: 0;
}
.nls-form textarea { resize: vertical; min-height: 120px; }
.nls-form input:focus, .nls-form select:focus, .nls-form textarea:focus, .nls-calc input:focus, .nls-calc select:focus { outline: none; background: #fff; border-color: var(--nls-accent); box-shadow: 0 0 0 5px var(--nls-accent-l); }
.nls-form .is-bad { border-color: #d92d20; background: #fff6f5; }
.nls-calc label span:first-child { display: block; font-size: .85rem; font-weight: 600; color: var(--nls-primary); margin-bottom: 6px; font-family: var(--nls-font-h); }
.nls-calc .nls-form__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; }
.nls-form__foot { display: flex; align-items: center; gap: 20px; margin-top: 24px; flex-wrap: wrap; }
.nls-form__msg { margin: 0; font-weight: 600; font-size: .95rem; }
.nls-form__msg.is-ok { color: #15803d; }
.nls-form__msg.is-err { color: #d92d20; }
.nls-formcard { background: #fff; border-radius: 28px; padding: clamp(24px, 4vw, 48px); box-shadow: var(--nls-shadow); border: 1px solid var(--nls-line); }

/* contact */
.nls-contact__wrap { display: grid; grid-template-columns: 1.25fr 1fr; gap: 48px; align-items: start; }
.nls-contact__form { background: #fff; border-radius: 28px; padding: clamp(26px, 4vw, 52px); box-shadow: var(--nls-shadow); border: 1px solid var(--nls-line); }
.nls-contact__form > p { margin-bottom: 28px; }
.nls-infocards { display: grid; gap: 18px; }
.nls-infocard { display: flex; gap: 18px; background: var(--nls-light); border-radius: var(--nls-radius); padding: 24px; transition: .4s; border: 1px solid transparent; }
.nls-infocard:hover { background: #fff; border-color: var(--nls-accent); box-shadow: var(--nls-shadow-s); transform: translateX(6px); }
.nls-infocard__i { width: 54px; height: 54px; flex: none; border-radius: 16px; background: var(--nls-accent); color: #fff; display: grid; place-items: center; }
.nls-infocard h3 { font-size: 1.05rem; margin-bottom: 6px; }
.nls-infocard p { margin: 0; line-height: 1.65; }
.nls-map iframe { width: 100%; height: 440px; border: 0; display: block; filter: grayscale(.25) contrast(1.05); }

/* tracking page */
.nls-tracking__card { background: #fff; border-radius: 28px; padding: clamp(22px, 4vw, 40px); box-shadow: var(--nls-shadow); border: 1px solid var(--nls-line); margin-bottom: 40px; }
.nls-tracking__hint { margin: 18px 0 0; font-size: .9rem; text-align: center; }
.nls-tracking__hint a { color: var(--nls-accent); font-weight: 600; }

/* footer */
.nls-footer { background: var(--nls-dark); color: #a9b7d3; }
.nls-footer__top { padding: 84px 0 56px; }
.nls-footer__grid { display: grid; grid-template-columns: 1.4fr .8fr 1fr 1.3fr; gap: 44px; }
.nls-footer h4 { color: #fff; font-size: 1.1rem; margin-bottom: 22px; position: relative; padding-bottom: 14px; }
.nls-footer h4::after { content: ''; position: absolute; left: 0; bottom: 0; width: 34px; height: 3px; border-radius: 3px; background: var(--nls-accent); }
.nls-footer__logo img { max-height: 70px; margin-bottom: 20px; }
.nls-footer__brand .nls-social { margin-top: 22px; }
.nls-footer__menu { display: grid; gap: 12px; }
.nls-footer__menu a { position: relative; padding-left: 0; transition: .3s; }
.nls-footer__menu a:hover { color: var(--nls-accent); padding-left: 8px; }
.nls-footer__contact { display: grid; gap: 16px; }
.nls-footer__contact li { display: flex; gap: 12px; align-items: flex-start; }
.nls-footer__contact .nls-i { color: var(--nls-accent); margin-top: 3px; }
.nls-footer__contact em { font-style: normal; color: #fff; font-weight: 600; }
.nls-footer__contact a:hover { color: var(--nls-accent); }
.nls-footer__bar { border-top: 1px solid rgba(255, 255, 255, .1); padding: 22px 0; font-size: .9rem; }
.nls-footer__bar-in { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.nls-footer__tag { letter-spacing: .14em; font-size: .76rem; color: var(--nls-accent); }

/* floating buttons */
.nls-float { position: fixed; right: 22px; z-index: 800; width: 54px; height: 54px; border-radius: 50%; display: grid; place-items: center; border: 0; box-shadow: var(--nls-shadow); transition: .4s var(--nls-ease); }
.nls-float--wa { bottom: 90px; background: #25d366; color: #fff; }
.nls-float--wa:hover { transform: scale(1.1) rotate(-6deg); }
.nls-float--wa::before { content: ''; position: absolute; inset: 0; border-radius: 50%; border: 2px solid #25d366; animation: nlsRipple 2s infinite; }
@keyframes nlsRipple { to { transform: scale(1.7); opacity: 0; } }
.nls-float--top { bottom: 22px; background: var(--nls-accent); color: #fff; opacity: 0; visibility: hidden; transform: translateY(20px); }
.nls-float--top.is-show { opacity: 1; visibility: visible; transform: none; }
.nls-float--top:hover { background: var(--nls-primary); }

/* blog & generic content */
.nls-blog { display: grid; grid-template-columns: 1fr 340px; gap: 48px; }
.nls-sidebar .widget { background: var(--nls-light); border-radius: var(--nls-radius); padding: 26px; margin-bottom: 24px; }
.nls-sidebar .widget-title { font-size: 1.1rem; }
.nls-sidebar ul { display: grid; gap: 8px; }
.nls-sidebar a:hover { color: var(--nls-accent); }
.nls-search { display: flex; background: #fff; border-radius: 999px; border: 1.5px solid var(--nls-line); overflow: hidden; }
.nls-search input { flex: 1; border: 0; padding: 12px 18px; font: inherit; background: transparent; min-width: 0; }
.nls-search input:focus { outline: none; }
.nls-search button { border: 0; background: var(--nls-accent); color: #fff; padding: 0 18px; display: grid; place-items: center; }
.nls-content > * + * { margin-top: 1.1em; }
.nls-content h2, .nls-content h3, .nls-content h4 { margin-top: 1.6em; }
.nls-content a { color: var(--nls-accent); text-decoration: underline; }
.nls-content img { border-radius: var(--nls-radius-s); }
.nls-content ul { list-style: disc; padding-left: 1.4em; }
.nls-content ol { list-style: decimal; padding-left: 1.4em; }
.nls-content blockquote { border-left: 4px solid var(--nls-accent); padding: 6px 0 6px 22px; margin-left: 0; font-style: italic; color: var(--nls-primary); }
.nls-single__img img { width: 100%; border-radius: 22px; margin-bottom: 20px; }
.nls-single__meta { display: flex; align-items: center; gap: 8px; color: #7a879f; font-size: .9rem; }
.nls-single__meta .nls-i { width: 1em; height: 1em; color: var(--nls-accent); }
.nls-tags a { display: inline-block; padding: 4px 12px; border-radius: 999px; background: var(--nls-light); font-size: .85rem; margin: 0 4px 4px 0; text-decoration: none; }
.navigation.pagination, .post-navigation { margin-top: 40px; }
.nav-links { display: flex; gap: 8px; flex-wrap: wrap; justify-content: center; }
.page-numbers { min-width: 44px; height: 44px; padding: 0 14px; display: grid; place-items: center; border-radius: 999px; border: 1.5px solid var(--nls-line); font-weight: 600; color: var(--nls-primary); }
.page-numbers.current, .page-numbers:hover { background: var(--nls-accent); border-color: var(--nls-accent); color: #fff; }
.post-navigation .nav-links { justify-content: space-between; }
.post-navigation a { font-weight: 600; color: var(--nls-primary); }
.nls-comments { margin-top: 50px; }
.nls-comments__list { display: grid; gap: 20px; margin: 20px 0 40px; }
.nls-comments .comment-body { background: var(--nls-light); border-radius: var(--nls-radius-s); padding: 20px; }
.nls-comments input[type=text], .nls-comments input[type=email], .nls-comments input[type=url], .nls-comments textarea { width: 100%; border: 1.5px solid var(--nls-line); border-radius: 12px; padding: 12px 16px; font: inherit; }
.nls-comments .submit { background: var(--nls-accent); color: #fff; border: 0; border-radius: 999px; padding: 14px 30px; font-weight: 600; }
.nls-404 { text-align: center; padding: 40px 0; }
.nls-404 strong { display: block; font-family: var(--nls-font-h); font-size: clamp(6rem, 18vw, 12rem); line-height: 1; background: linear-gradient(135deg, var(--nls-primary), var(--nls-accent)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.alignwide { max-width: 1100px; }
.wp-caption, .gallery-caption { font-size: .85rem; color: #7a879f; }
.sticky, .bypostauthor { display: block; }

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width: 1360px) {
	.nls-header__phone em { display: none; }
	.nls-header__panel-btn { display: none; }
	.nls-header__in { gap: 18px; }
	.nls-menu > li > a { padding: 10px 11px; }
}
@media (max-width: 1240px) {
	.nls-header__phone { display: none; }
}
@media (max-width: 1100px) {
	.nls-nav, .nls-header__phone { display: none; }
	.nls-burger { display: flex; }
	.nls-header__actions { margin-left: auto; }
	.nls-grid--3 { grid-template-columns: repeat(2, 1fr); }
	.nls-grid--4 { grid-template-columns: repeat(2, 1fr); }
	.nls-footer__grid { grid-template-columns: 1fr 1fr; }
	.nls-showcase__info { grid-template-columns: 1fr 1fr; }
	.nls-showcase__txt { grid-column: 1 / -1; }
	.nls-blog, .nls-svc, .nls-contact__wrap { grid-template-columns: 1fr; }
	.nls-modes__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 900px) {
	.nls-know__wrap, .nls-about__wrap, .nls-network__wrap, .nls-safe__wrap, .nls-global__wrap, .nls-calc { grid-template-columns: 1fr; }
	.nls-core__grid { grid-template-columns: 1fr; }
	.nls-steps { grid-template-columns: 1fr; gap: 44px; }
	.nls-steps::before { display: none; }
	.nls-showcase__panels { flex-direction: column; height: auto; }
	.nls-panelcard { min-height: 150px; }
	.nls-panelcard.is-active { min-height: 260px; flex: 1; }
	.nls-stats__grid { grid-template-columns: repeat(2, 1fr); row-gap: 34px; }
	.nls-stat:nth-child(2)::after { display: none; }
	.nls-gallery__grid { grid-template-columns: repeat(2, 1fr); }
	.nls-modal__inner { grid-template-columns: 1fr; overflow-y: auto; }
	.nls-modal__img img { max-height: 220px; }
	.nls-about__stat.s1 { left: 10px; } .nls-about__stat.s2 { right: 10px; }
	.nls-hero__ctl { bottom: 100px; }
	.nls-trackbox { flex-wrap: wrap; }
	.nls-trackbox__label { width: 100%; }
	.nls-trackbox input { flex: 1 1 100%; }
	.nls-trackbox .nls-btn { width: 100%; }
}
@media (max-width: 640px) {
	body { font-size: 15px; }
	.nls-topbar__right .nls-topbar__follow, .nls-topbar__hours { display: none; }
	.nls-topbar__in { justify-content: center; }
	.nls-header__cta { display: none; }
	.nls-grid--2, .nls-grid--3, .nls-grid--4, .nls-form__grid, .nls-calc .nls-form__grid, .nls-modes__grid, .nls-footer__grid, .nls-showcase__info { grid-template-columns: 1fr; }
	.nls-gallery__grid { grid-template-columns: 1fr; }
	.nls-hero__in { padding-bottom: 150px; }
	.nls-hero__arrows { display: none; }
	.nls-hero__ctl { bottom: 96px; }
	.nls-know__truck { left: 0; }
	.nls-know__badge { right: 8px; }
	.nls-cta__links { width: 100%; }
	.nls-cta__link { width: 100%; }
	.nls-track__steps li { font-size: .66rem; }
	.nls-track__events li { grid-template-columns: 1fr; gap: 4px; }
	.nls-testi__card { padding: 26px; }
	.nls-modal__body { padding: 26px; }
	.nls-footer__bar-in { flex-direction: column; text-align: center; }
	.nls-float { right: 14px; }
}
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
	.js .nls-reveal { opacity: 1; transform: none; }
}
@media print {
	.nls-topbar, .nls-header, .nls-mobile, .nls-panel, .nls-float, .nls-preloader, .nls-cta { display: none !important; }
}

/* brighter accent for text on dark backgrounds (contrast) */
.nls-hero .nls-eyebrow, .nls-pagehero .nls-eyebrow, .is-dark .nls-eyebrow, .nls-calc__label, .nls-footer__tag, .nls-crumbs [aria-current],
.nls-showcase__num strong, .nls-global__num sup, .nls-footer__contact .nls-i, .nls-calc__meta .nls-i, .nls-topbar .nls-i, .nls-showcase__hq .nls-i {
	color: color-mix(in srgb, var(--nls-accent) 45%, #fff);
}
.nls-cta .nls-eyebrow { color: #fff; }

/* ---------- Mobile hardening ---------- */
body { overflow-x: hidden; overflow-x: clip; }
.nls-network, .nls-about, .nls-know, .nls-safe { overflow-x: clip; }
.nls-network__map, .nls-know__media, .nls-about__media { min-width: 0; }
@media (max-width: 1100px) {
	.nls-blog, .nls-svc, .nls-contact__wrap { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 900px) {
	.nls-know__wrap, .nls-about__wrap, .nls-network__wrap, .nls-safe__wrap, .nls-global__wrap, .nls-calc, .nls-core__grid, .nls-steps { grid-template-columns: minmax(0, 1fr); }
	.nls-know__truck { left: 0; width: 55%; }
	.nls-about__stat.s1 { left: 8px; } .nls-about__stat.s2 { right: 8px; }
	.nls-globe { width: min(360px, 100%); }
}
@media (max-width: 640px) {
	.nls-grid--2, .nls-grid--3, .nls-grid--4, .nls-showcase__info, .nls-footer__grid, .nls-modes__grid, .nls-form__grid, .nls-calc .nls-form__grid, .nls-gallery__grid { grid-template-columns: minmax(0, 1fr); }
	.nls-container { padding: 0 18px; }
	.nls-section { padding: 56px 0; }
	.nls-sechead { margin-bottom: 34px; }
	.nls-hero__slides { min-height: 600px; }
	.nls-hero h1 { font-size: clamp(2rem, 8.5vw, 2.6rem); }
	.nls-hero__btns .nls-btn { flex: 1 1 auto; }
	.nls-trackbar { margin-top: -50px; }
	.nls-trackbar__card { padding: 16px; border-radius: 18px; }
	.nls-calc__result .nls-btn, .nls-form__foot .nls-btn { width: 100%; }
	.nls-dims { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.nls-stat strong { font-size: 2.3rem; }
	.nls-stat:not(:last-child)::after { display: none; }
	.nls-pagehero { padding: 56px 0 48px; }
	.nls-contact__form, .nls-formcard { padding: 22px; border-radius: 20px; }
	.nls-map iframe { height: 320px; }
	.nls-testi__card { padding: 24px; }
	.nls-footer__top { padding: 56px 0 30px; }
	.nls-modal { width: 94vw; }
	.nls-float--wa { bottom: 84px; }
	.nls-showcase__panels { gap: 12px; }
	.nls-panelcard { padding: 22px; min-height: 130px; }
	.nls-panelcard.is-active { min-height: 230px; }
	.nls-track__meta { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
img.is-fallback { object-fit: cover; background: var(--nls-dark); }

/* WhatsApp chat widget */
.nls-wa { position: fixed; right: 22px; bottom: 90px; z-index: 820; }
.nls-wa .nls-float--wa { position: relative; right: auto; bottom: auto; }
.nls-wa__dot { position: absolute; top: 2px; right: 2px; width: 13px; height: 13px; border-radius: 50%; background: #ff3b30; border: 2px solid #fff; }
.nls-wa__dot[hidden], .nls-wa__tip[hidden], .nls-wa__pop[hidden] { display: none; }
.nls-wa__tip { position: absolute; right: 66px; bottom: 9px; background: #fff; color: var(--nls-primary); font-weight: 600; font-size: .88rem; padding: 10px 16px; border-radius: 14px; box-shadow: var(--nls-shadow); white-space: nowrap; animation: nlsTip .5s var(--nls-ease); }
.nls-wa__tip::after { content: ''; position: absolute; right: -6px; bottom: 16px; width: 12px; height: 12px; background: #fff; transform: rotate(45deg); }
@keyframes nlsTip { from { opacity: 0; transform: translateX(14px); } }
.nls-wa__pop { position: absolute; right: 0; bottom: 70px; width: 340px; max-width: calc(100vw - 28px); background: #fff; border-radius: 20px; box-shadow: 0 24px 60px rgba(2, 28, 42, .35); overflow: hidden; animation: nlsPop .35s var(--nls-ease); transform-origin: bottom right; }
@keyframes nlsPop { from { opacity: 0; transform: translateY(14px) scale(.94); } }
.nls-wa__head { display: flex; align-items: center; gap: 12px; padding: 16px 18px; background: linear-gradient(135deg, var(--nls-primary), var(--nls-dark)); color: #fff; }
.nls-wa__head strong { display: block; font-size: 1rem; line-height: 1.2; }
.nls-wa__avatar { width: 44px; height: 44px; border-radius: 50%; background: #fff; display: grid; place-items: center; overflow: hidden; flex: none; }
.nls-wa__avatar img { width: 30px; height: 30px; object-fit: contain; }
.nls-wa__status { display: flex; align-items: center; gap: 6px; font-size: .78rem; opacity: .85; }
.nls-wa__status::before { content: ''; width: 8px; height: 8px; border-radius: 50%; background: #9aa7ae; }
.nls-wa.is-online .nls-wa__status::before { background: #25d366; box-shadow: 0 0 0 3px rgba(37, 211, 102, .3); }
.nls-wa__close { margin-left: auto; width: 34px; height: 34px; border-radius: 50%; border: 0; background: rgba(255, 255, 255, .14); color: #fff; display: grid; place-items: center; cursor: pointer; }
.nls-wa__close svg { width: 16px; height: 16px; }
.nls-wa__body { padding: 18px; background: #ece5dd; max-height: max(160px, min(52vh, calc(100vh - 470px))); overflow-y: auto; }
.nls-wa__bubble { position: relative; background: #fff; padding: 12px 14px 20px; border-radius: 4px 14px 14px 14px; font-size: .92rem; line-height: 1.5; color: #222; box-shadow: 0 1px 2px rgba(0, 0, 0, .12); max-width: 92%; }
.nls-wa__bubble time { position: absolute; right: 10px; bottom: 4px; font-size: .68rem; color: #8a8a8a; }
.nls-wa__hint { margin: 14px 2px 8px; font-size: .8rem; color: #667; }
.nls-wa__quick { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.nls-wa__quick a { display: flex; align-items: center; gap: 10px; background: #fff; padding: 10px 12px; border-radius: 12px; font-size: .88rem; font-weight: 600; color: var(--nls-primary); box-shadow: 0 1px 2px rgba(0, 0, 0, .1); transition: .25s var(--nls-ease); }
.nls-wa__quick a:hover { transform: translateX(4px); color: #128c4a; }
.nls-wa__quick a > span { width: 30px; height: 30px; border-radius: 9px; background: color-mix(in srgb, var(--nls-accent) 14%, #fff); color: var(--nls-accent); display: grid; place-items: center; flex: none; }
.nls-wa__quick svg { width: 17px; height: 17px; }
.nls-wa__quick .nls-wa__go { margin-left: auto; width: 15px; height: 15px; opacity: .45; }
.nls-wa__foot { padding: 14px 18px 16px; text-align: center; display: grid; gap: 8px; }
.nls-wa__foot small { color: #778; font-size: .76rem; }
.nls-btn--wa { background: #25d366; color: #fff; border-color: #25d366; }
.nls-btn--wa:hover { background: #128c4a; border-color: #128c4a; color: #fff; }
.nls-btn--wa svg { width: 18px; height: 18px; }
.nls-modal__btns { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.nls-sidecard .nls-btn--wa { margin-top: 10px; width: 100%; justify-content: center; }

/* mobile quick-action bar */
.nls-mbar { display: none; }
@media (min-width: 1100px) { .nls-grid--3 > :last-child:nth-child(3n+1) { grid-column: 2; } }
@media (max-width: 768px) {
	body { padding-bottom: 64px; }
	.nls-mbar { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); position: fixed; left: 0; right: 0; bottom: 0; z-index: 810; background: var(--nls-dark); border-top: 1px solid rgba(255, 255, 255, .12); padding: 6px 4px calc(6px + env(safe-area-inset-bottom)); box-shadow: 0 -8px 30px rgba(2, 28, 42, .3); }
	.nls-mbar a, .nls-mbar button { display: flex; flex-direction: column; align-items: center; gap: 3px; background: none; border: 0; color: #fff; font: 600 .7rem/1 var(--nls-font-body, inherit); padding: 7px 2px; border-radius: 10px; cursor: pointer; }
	.nls-mbar svg { width: 21px; height: 21px; }
	.nls-mbar .is-wa { color: #25d366; }
	.nls-mbar a:active, .nls-mbar button:active { background: rgba(255, 255, 255, .1); }
	.nls-wa { right: 12px; bottom: 76px; }
	.nls-wa .nls-float--wa, .nls-wa__tip { display: none; }
	.nls-wa__pop { bottom: 0; width: min(350px, calc(100vw - 24px)); }
	.nls-float--top { bottom: 76px; right: 12px; }
}
@media print { .nls-mbar, .nls-wa { display: none !important; } }

/* multi tracking table */
.nls-track__scroll { overflow-x: auto; margin-top: 12px; }
.nls-track__table { width: 100%; border-collapse: collapse; min-width: 480px; }
.nls-track__table td { padding: 12px 10px; border-top: 1px solid var(--nls-line); font-size: .92rem; }
.nls-track__table .is-tn { font-family: ui-monospace, monospace; font-weight: 700; color: var(--nls-primary); }
.nls-track__more { background: none; border: 0; color: var(--nls-accent); font-weight: 700; cursor: pointer; padding: 4px 0; }
.nls-track__more:hover { text-decoration: underline; }
