/* TopUpNol — glassmorph-soft + hand-drawn-sketch — prefix nl- */
:root {
  --nl-red: #c9182b;
  --nl-red-dark: #8f0f1d;
  --nl-ink: #151721;
  --nl-ink-soft: #3a3d47;
  --nl-mute: #5b6070;
  --nl-paper: #fbf9f5;
  --nl-neu-2: #eef1f5;
  --nl-marker: #f0c94d;
  --nl-line: #d9dde4;
  --nl-ok: #1b8a5a;
  --nl-shadow: 0 6px 24px rgba(20, 24, 40, 0.08);
  --nl-shadow-lg: 0 12px 36px rgba(20, 24, 40, 0.12);
  --nl-radius: 14px;
  --nl-radius-lg: 22px;
  --nl-max: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  color: var(--nl-ink);
  background: var(--nl-paper);
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
body.nl-noscroll { overflow: hidden; }
img, svg { max-width: 100%; height: auto; display: block; }
a { color: var(--nl-red); text-decoration: none; }
a:hover { text-decoration: underline; }
h1, h2, h3, h4 {
  font-family: 'Fraunces', 'Georgia', serif;
  font-weight: 600;
  color: var(--nl-ink);
  line-height: 1.15;
  margin: 0 0 .6em;
  letter-spacing: -0.01em;
}
h1 { font-size: clamp(2rem, 4.5vw, 3.2rem); }
h2 { font-size: clamp(1.5rem, 3vw, 2.2rem); }
h3 { font-size: 1.2rem; }
h4 { font-size: 1rem; font-family: 'Inter', sans-serif; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; color: var(--nl-ink-soft); }
p { margin: 0 0 1em; }
ul, ol { margin: 0 0 1em; padding-inline-start: 1.4em; }
:focus-visible { outline: 3px solid var(--nl-marker); outline-offset: 2px; border-radius: 6px; }

.nl-wrap { max-width: var(--nl-max); margin: 0 auto; padding: 0 1.25rem; }
.nl-sr { position: absolute; left: -9999px; top: auto; }
.nl-sr:focus { position: fixed; left: 12px; top: 12px; background: var(--nl-ink); color: var(--nl-paper); padding: .5rem .9rem; border-radius: 8px; z-index: 9999; }

/* Noisy paper background */
body::before {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -2;
  background:
    radial-gradient(1200px 700px at 90% -10%, rgba(240, 201, 77, 0.18), transparent 60%),
    radial-gradient(900px 500px at -10% 40%, rgba(201, 24, 43, 0.09), transparent 60%),
    var(--nl-paper);
}
body::after {
  content: '';
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: .22;
  mix-blend-mode: multiply;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence baseFrequency='0.9' numOctaves='2' seed='4'/><feColorMatrix values='0 0 0 0 0.08  0 0 0 0 0.09  0 0 0 0 0.13  0 0 0 0.35 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
}

/* Header */
.nl-header {
  position: sticky; top: 0; z-index: 60;
  transition: background .3s, box-shadow .3s, backdrop-filter .3s;
  background: transparent;
}
.nl-header.is-scrolled,
.nl-header.is-solid {
  background: rgba(251, 249, 245, 0.78);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  box-shadow: 0 1px 0 rgba(20,24,40,.06);
}
.nl-header-inner {
  max-width: var(--nl-max);
  margin: 0 auto;
  padding: .9rem 1.25rem;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 1rem;
}
.nl-nav-l, .nl-nav-r {
  display: flex; align-items: center; gap: 1.4rem;
  font-weight: 500; font-size: .95rem;
}
.nl-nav-r { justify-content: flex-end; }
.nl-nav-l a, .nl-nav-r a { color: var(--nl-ink); }
.nl-nav-l a:hover, .nl-nav-r a:hover { color: var(--nl-red); text-decoration: none; }
.nl-logo {
  justify-self: center;
  display: inline-flex; align-items: center;
  color: var(--nl-ink);
}
.nl-logo:hover { text-decoration: none; }
.nl-lang {
  display: inline-flex; align-items: center; gap: .3rem;
  font-size: .85rem; color: var(--nl-mute);
  padding: .3rem .55rem; border: 1px solid var(--nl-line); border-radius: 999px;
  background: rgba(255,255,255,.5);
}
.nl-lang a { color: var(--nl-ink); }
.nl-lang a.is-on { color: var(--nl-red); font-weight: 700; }
.nl-cta-mini { padding: .55rem 1.05rem; border-radius: 999px; background: var(--nl-red); color: var(--nl-paper) !important; font-weight: 600; font-size: .9rem; white-space: nowrap; text-decoration: none; line-height: 1; display: inline-flex; align-items: center; }
.nl-cta-mini:hover { background: var(--nl-red-dark); text-decoration: none; }

.nl-burger {
  display: none;
  width: 44px; height: 44px; border: none; background: transparent;
  cursor: pointer; padding: 0; position: relative;
}
.nl-burger span {
  position: absolute; left: 10px; right: 10px; height: 2px; background: var(--nl-ink);
  transition: transform .25s;
}
.nl-burger span:nth-child(1) { top: 14px; }
.nl-burger span:nth-child(2) { top: 21px; }
.nl-burger span:nth-child(3) { top: 28px; }

/* Drawer (mandatory) */
.nl-drawer {
  position: fixed; inset: 0; z-index: 200;
  visibility: hidden; opacity: 0; pointer-events: none;
  transition: opacity .25s, visibility .25s;
  display: grid; grid-template-columns: 1fr auto;
}
.nl-drawer.is-open { visibility: visible; opacity: 1; pointer-events: auto; }
.nl-drawer-backdrop { background: rgba(20,24,40,.5); backdrop-filter: blur(4px); }
.nl-drawer-panel {
  width: min(84vw, 320px);
  background: var(--nl-paper);
  padding: 1.5rem 1.25rem;
  overflow-y: auto;
  box-shadow: -8px 0 40px rgba(20,24,40,.25);
  display: flex; flex-direction: column; gap: 1rem;
}
[dir="rtl"] .nl-drawer-panel { box-shadow: 8px 0 40px rgba(20,24,40,.25); }
.nl-drawer-close {
  align-self: flex-end;
  border: none; background: transparent; font-size: 1.6rem;
  cursor: pointer; color: var(--nl-ink); width: 40px; height: 40px;
}
.nl-drawer-panel nav { display: flex; flex-direction: column; gap: .1rem; }
.nl-drawer-panel nav a {
  color: var(--nl-ink); padding: .7rem .5rem;
  border-bottom: 1px solid var(--nl-line);
  font-weight: 500;
}
.nl-drawer-panel nav a:hover { color: var(--nl-red); text-decoration: none; }

/* Trust strip */
.nl-trust {
  padding: .6rem 1.25rem;
  background: rgba(20,24,40,.94);
  color: rgba(251,249,245,.9);
  font-size: .82rem;
  text-align: center;
}
.nl-trust strong { color: var(--nl-marker); }

/* Hero */
.nl-hero {
  position: relative;
  padding: 3.5rem 0 5rem;
  isolation: isolate;
}
.nl-hero::before {
  content: '';
  position: absolute; inset: 0; z-index: -1;
  background:
    radial-gradient(600px 340px at 80% 20%, rgba(240,201,77,.28), transparent 60%),
    radial-gradient(500px 300px at 10% 90%, rgba(201,24,43,.14), transparent 60%);
}
.nl-hero-grid {
  display: grid; grid-template-columns: 1.15fr 1fr; gap: 3rem; align-items: center;
}
.nl-hero-eyebrow {
  display: inline-flex; align-items: center; gap: .4rem;
  font-family: 'Inter', sans-serif; font-size: .82rem; font-weight: 600;
  text-transform: uppercase; letter-spacing: .1em;
  color: var(--nl-red);
  padding: .35rem .7rem; border: 1.5px solid rgba(201,24,43,.35);
  border-radius: 999px; background: rgba(251,249,245,.6);
  backdrop-filter: blur(6px);
}
.nl-hero h1 {
  margin-top: 1rem;
  font-size: clamp(2.2rem, 5vw, 3.6rem);
  font-weight: 500;
}
.nl-hero h1 .nl-outline {
  color: transparent;
  -webkit-text-stroke: 1.5px var(--nl-ink);
}
.nl-hero h1 .nl-marker {
  position: relative; z-index: 1; padding: 0 .1em;
}
.nl-hero h1 .nl-marker::before {
  content: ''; position: absolute; left: -.06em; right: -.06em; bottom: .05em; top: 55%;
  background: var(--nl-marker); opacity: .55; z-index: -1;
  transform: rotate(-.8deg);
  border-radius: 4px 8px 3px 6px;
}
.nl-hero-subline { list-style: none; padding: 0; margin: 1.2rem 0 1.6rem; display: grid; gap: .4rem; }
.nl-hero-subline li {
  display: flex; align-items: flex-start; gap: .55rem;
  color: var(--nl-ink-soft); font-size: 1.05rem;
}
.nl-hero-subline li::before {
  content: '/'; color: var(--nl-red); font-weight: 700; flex-shrink: 0;
}
.nl-hero-ctas { display: flex; flex-wrap: wrap; gap: .8rem; }

.nl-btn {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 48px; padding: 0 1.4rem;
  border-radius: 999px; border: 2px solid transparent;
  font-family: 'Inter', sans-serif; font-weight: 600; font-size: 1rem;
  cursor: pointer; text-decoration: none !important;
  transition: transform .12s, box-shadow .2s, background .2s, color .2s, border-color .2s;
}
.nl-btn-primary {
  background: var(--nl-red); color: var(--nl-paper);
  box-shadow: 0 6px 18px rgba(201,24,43,.35);
}
.nl-btn-primary:hover { background: var(--nl-red-dark); transform: translateY(-1px); }
.nl-btn-ghost {
  background: transparent; color: var(--nl-ink);
  border-color: var(--nl-ink);
}
.nl-btn-ghost:hover { background: var(--nl-ink); color: var(--nl-paper); }
.nl-btn-lg { min-height: 54px; padding: 0 1.8rem; font-size: 1.05rem; }
.nl-btn-block { width: 100%; }

.nl-stickers {
  margin-top: 1.4rem;
  display: flex; flex-wrap: wrap; gap: .5rem;
}
.nl-sticker {
  display: inline-block;
  padding: .35rem .8rem; font-size: .78rem; font-weight: 700;
  border-radius: 999px; background: var(--nl-paper);
  border: 1.5px dashed var(--nl-ink);
  transform: rotate(-2deg);
  box-shadow: 2px 3px 0 rgba(20,24,40,.08);
}
.nl-sticker:nth-child(2) { transform: rotate(1.5deg); background: var(--nl-marker); }
.nl-sticker:nth-child(3) { transform: rotate(-1deg); background: var(--nl-red); color: var(--nl-paper); border-color: var(--nl-red); }

.nl-hero-art {
  position: relative;
  background: linear-gradient(160deg, rgba(255,255,255,.65), rgba(255,255,255,.25));
  border: 1px solid rgba(255,255,255,.55);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  padding: 1.4rem;
  border-radius: var(--nl-radius-lg);
  box-shadow: var(--nl-shadow-lg);
  aspect-ratio: 4/3;
  overflow: hidden;
}
.nl-hero-art svg { width: 100%; height: 100%; }

/* Glass panels */
.nl-glass {
  background: linear-gradient(160deg, rgba(255,255,255,.72), rgba(255,255,255,.42));
  border: 1px solid rgba(255,255,255,.55);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-radius: var(--nl-radius-lg);
  box-shadow: var(--nl-shadow);
  padding: 1.6rem;
}
.nl-glass-dark {
  background: linear-gradient(160deg, rgba(20,24,40,.9), rgba(20,24,40,.75));
  color: var(--nl-paper);
  border-radius: var(--nl-radius-lg);
  padding: 1.6rem;
}
.nl-glass-dark h2, .nl-glass-dark h3 { color: var(--nl-paper); }

.nl-section { padding: 4rem 0; position: relative; }
.nl-section-lead { color: var(--nl-ink-soft); max-width: 60ch; font-size: 1.08rem; }

/* Section divider (wobbly) */
.nl-divider {
  height: 22px; width: 100%; display: block; overflow: hidden;
  background: none;
}
.nl-divider svg { width: 100%; height: 22px; display: block; }

/* Marker highlight (in-body) */
.nl-hi {
  position: relative; z-index: 0;
  padding: 0 .1em;
}
.nl-hi::before {
  content: ''; position: absolute; left: -.05em; right: -.05em; top: 55%; bottom: .05em;
  background: var(--nl-marker); opacity: .5;
  z-index: -1; border-radius: 3px 7px 2px 6px;
  transform: rotate(-.6deg);
}

/* Section headings */
.nl-kicker {
  display: inline-block;
  font-family: 'Inter', sans-serif;
  font-size: .78rem; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase;
  color: var(--nl-red);
  padding: .3rem .7rem; background: rgba(201,24,43,.08);
  border-radius: 999px;
}

/* How-it-works — sketch arrows + tally marks */
.nl-steps {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1.4rem; margin-top: 2rem;
  position: relative;
}
.nl-step {
  padding: 1.3rem; background: rgba(255,255,255,.7);
  border-radius: var(--nl-radius);
  border: 1px solid var(--nl-line);
  position: relative;
  backdrop-filter: blur(6px);
}
.nl-tally {
  font-family: 'Fraunces', serif;
  font-size: 1.3rem; font-weight: 700;
  color: var(--nl-red);
  display: inline-block; padding: .2rem .5rem;
  border-bottom: 3px solid var(--nl-ink);
  letter-spacing: .08em;
  margin-bottom: .5rem;
}
.nl-step h3 { margin-top: .3rem; }
.nl-step p { color: var(--nl-ink-soft); font-size: .95rem; margin: 0; }
.nl-arrow-connector {
  display: none; /* only on wide screens */
  position: absolute;
  color: var(--nl-red-dark);
  z-index: 3;
}
@media (min-width: 900px) {
  .nl-arrow-connector { display: block; }
}

/* Chips (glossary peek) */
.nl-chip-row { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 1rem; }
.nl-chip {
  display: inline-flex; align-items: center; gap: .4rem;
  padding: .5rem 1rem; border-radius: 999px;
  background: var(--nl-paper); border: 1.5px solid var(--nl-line);
  font-weight: 500; color: var(--nl-ink) !important;
  font-size: .95rem;
}
.nl-chip:hover { border-color: var(--nl-red); color: var(--nl-red) !important; text-decoration: none; }

/* FAQ preview */
.nl-faq {
  display: grid; gap: .8rem; margin-top: 1.6rem;
}
.nl-faq details {
  padding: 1.1rem 1.3rem; background: rgba(255,255,255,.7);
  border-radius: var(--nl-radius); border: 1px solid var(--nl-line);
  backdrop-filter: blur(6px);
}
.nl-faq summary {
  font-family: 'Fraunces', serif; font-size: 1.08rem; font-weight: 600;
  cursor: pointer; color: var(--nl-ink);
  list-style: none; padding-inline-end: 1.6rem; position: relative;
}
.nl-faq summary::after {
  content: '+'; position: absolute; inset-inline-end: 0; top: -2px;
  font-family: 'Fraunces', serif; font-size: 1.4rem; color: var(--nl-red);
}
.nl-faq details[open] summary::after { content: '−'; }
.nl-faq details p { margin: .8rem 0 0; color: var(--nl-ink-soft); }

/* CTA band */
.nl-cta-band {
  margin: 0 auto; max-width: var(--nl-max);
  padding: 2rem 1.6rem;
  background: linear-gradient(120deg, var(--nl-ink), #202538);
  color: var(--nl-paper);
  border-radius: var(--nl-radius-lg);
  display: flex; justify-content: space-between; align-items: center;
  gap: 1.5rem; flex-wrap: wrap;
}
.nl-cta-band h2 { color: var(--nl-paper); margin: 0; }
.nl-cta-band p { color: rgba(251,249,245,.85); margin: .35rem 0 0; }

/* Footer */
.nl-footer {
  margin-top: 4rem;
  background: var(--nl-ink); color: var(--nl-paper);
  padding: 3rem 0 1.5rem;
}
.nl-footer h4 { color: var(--nl-paper); }
.nl-footer a { color: rgba(251,249,245,.85); }
.nl-footer a:hover { color: var(--nl-marker); text-decoration: none; }
.nl-footer-grid {
  display: grid; grid-template-columns: 2fr 1fr 1fr 1.4fr; gap: 2rem;
}
.nl-footer-grid ul { list-style: none; padding: 0; }
.nl-footer-grid ul li { padding: .28rem 0; font-size: .93rem; }
.nl-footer-brand p { color: rgba(251,249,245,.75); font-size: .92rem; }
.nl-footer-bottom {
  margin-top: 2rem; padding-top: 1rem;
  border-top: 1px solid rgba(251,249,245,.12);
  display: flex; justify-content: space-between; gap: 1rem;
  flex-wrap: wrap; font-size: .82rem; color: rgba(251,249,245,.6);
}

/* Cards / grids */
.nl-grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 1.6rem; }
.nl-grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.4rem; }

/* Form styles (recharge) */
.nl-form-shell {
  max-width: 620px; margin: 0 auto;
}
.nl-field { display: block; margin-bottom: 1.2rem; }
.nl-field > label {
  display: block; font-weight: 600; font-size: .95rem;
  margin-bottom: .45rem; color: var(--nl-ink);
}
.nl-field input[type="text"],
.nl-field input[type="email"],
.nl-field input[type="number"] {
  width: 100%; height: 52px; padding: 0 1rem;
  border: 1.5px solid var(--nl-line);
  border-radius: 12px; background: rgba(255,255,255,.8);
  font-family: 'Inter', sans-serif; font-size: 1rem;
  color: var(--nl-ink); transition: border-color .18s, box-shadow .18s;
}
.nl-field input:focus {
  border-color: var(--nl-red); outline: none;
  box-shadow: 0 0 0 3px rgba(201,24,43,.14);
}
.nl-field.is-invalid input { border-color: var(--nl-red); }
.nl-err {
  display: none; color: var(--nl-red);
  font-size: .85rem; margin-top: .35rem;
}
.nl-field.is-invalid .nl-err { display: block; }

.nl-preset-grid {
  display: grid; grid-template-columns: repeat(5, 1fr); gap: .6rem;
  margin-bottom: 1rem;
}
.nl-preset {
  position: relative;
}
.nl-preset input { position: absolute; opacity: 0; inset: 0; cursor: pointer; }
.nl-preset-face {
  display: flex; align-items: center; justify-content: center;
  min-height: 56px; padding: .5rem;
  border: 1.5px solid var(--nl-line); border-radius: 12px;
  background: rgba(255,255,255,.8);
  font-family: 'Fraunces', serif; font-weight: 700; font-size: 1.15rem;
  color: var(--nl-ink); cursor: pointer;
  transition: all .16s;
}
.nl-preset input:focus-visible + .nl-preset-face {
  outline: 3px solid var(--nl-marker); outline-offset: 2px;
}
.nl-preset.is-on .nl-preset-face,
.nl-preset input:checked + .nl-preset-face {
  background: var(--nl-red); color: var(--nl-paper);
  border-color: var(--nl-red);
  box-shadow: 0 4px 14px rgba(201,24,43,.35);
}
.nl-preset-face small { font-size: .7rem; font-weight: 500; opacity: .8; margin-inline-start: .25rem; }

.nl-reassure {
  display: flex; align-items: center; gap: .5rem;
  font-size: .95rem; color: var(--nl-ink-soft);
  margin: 0 0 1.2rem;
}
.nl-reassure svg { flex-shrink: 0; color: var(--nl-ok); }

.nl-overlay {
  position: fixed; inset: 0; z-index: 500;
  background: rgba(20,24,40,.55);
  backdrop-filter: blur(6px);
  display: none; align-items: center; justify-content: center;
}
.nl-overlay.is-on { display: flex; }
.nl-spinner {
  width: 56px; height: 56px;
  border: 4px solid rgba(255,255,255,.25);
  border-top-color: var(--nl-marker);
  border-radius: 50%;
  animation: nl-spin 1s linear infinite;
}
@keyframes nl-spin { to { transform: rotate(360deg); } }

/* Announcement bar */
.nl-ann {
  background: var(--nl-marker); color: var(--nl-ink);
  padding: .55rem 1.25rem; text-align: center;
  font-size: .88rem; font-weight: 500;
}

/* Prose (for legal / long text pages) */
.nl-prose { max-width: 72ch; margin: 0 auto; }
.nl-prose h2 { margin-top: 2.2rem; }
.nl-prose h3 { margin-top: 1.6rem; }
.nl-prose p, .nl-prose li { color: var(--nl-ink-soft); }

/* Status blocks (service status) */
.nl-status-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 1rem; margin-top: 1.6rem; }
.nl-status-block { padding: 1.2rem; border-radius: var(--nl-radius); border: 1px solid var(--nl-line); background: rgba(255,255,255,.7); }
.nl-status-dot { display: inline-block; width: 10px; height: 10px; border-radius: 50%; background: var(--nl-ok); margin-inline-end: .5rem; box-shadow: 0 0 0 4px rgba(27,138,90,.18); }

/* Testimonial carousel (anonymised) */
.nl-quotes {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1rem; margin-top: 1.5rem;
}
.nl-quote {
  padding: 1.3rem; border-radius: var(--nl-radius);
  background: rgba(255,255,255,.7); border: 1px solid var(--nl-line);
  font-style: italic; color: var(--nl-ink-soft);
}
.nl-quote::before { content: '\201C'; font-size: 2rem; color: var(--nl-red); line-height: 0; margin-inline-end: .3rem; }

/* Feedback link chip (tripadvisor slot) */
.nl-feedback-chip {
  display: inline-flex; align-items: center; gap: .5rem;
  padding: .6rem 1rem; border-radius: 999px;
  background: rgba(27,138,90,.1); color: var(--nl-ok) !important;
  border: 1.5px solid rgba(27,138,90,.3);
  font-weight: 500;
}

/* AR + RTL */
[dir="rtl"] body { font-family: 'IBM Plex Sans Arabic', 'Inter', system-ui, sans-serif; }
[dir="rtl"] h1, [dir="rtl"] h2, [dir="rtl"] h3 { font-family: 'IBM Plex Sans Arabic', 'Fraunces', serif; }
[dir="rtl"] .nl-hero h1 .nl-outline { -webkit-text-stroke: 1.5px var(--nl-ink); }
[dir="rtl"] .nl-price, [dir="rtl"] .nl-num-ltr,
[dir="rtl"] input[dir="ltr"] { unicode-bidi: plaintext; }

/* Isolate Latin phone numbers, emails and addresses inside RTL runs so plus signs,
   dashes and Arabic-Indic weak digits don't reorder them. */
bdi, .nl-ltr { direction: ltr; unicode-bidi: isolate; }

/* Cookie banner */
.nl-cookie {
  position: fixed; bottom: 1rem; left: 1rem; right: 1rem;
  max-width: 480px; margin: 0 auto;
  padding: 1rem 1.2rem; background: var(--nl-ink); color: var(--nl-paper);
  border-radius: 14px; display: none;
  box-shadow: 0 12px 40px rgba(0,0,0,.3);
  z-index: 150;
}
.nl-cookie.is-open { display: block; }
.nl-cookie p { margin: 0 0 .7rem; font-size: .9rem; }
.nl-cookie-btns { display: flex; gap: .5rem; }
.nl-cookie .nl-btn { min-height: 38px; font-size: .85rem; padding: 0 .9rem; }

/* Responsive */
@media (max-width: 900px) {
  .nl-nav-l, .nl-nav-r > a:not(.nl-lang):not(.nl-cta-mini) { display: none; }
  .nl-header-inner { grid-template-columns: auto 1fr auto; }
  .nl-logo { justify-self: flex-start; }
  .nl-nav-r { justify-content: flex-end; }
  .nl-burger { display: block; }
  .nl-hero-grid { grid-template-columns: 1fr; }
  .nl-grid-2, .nl-grid-3 { grid-template-columns: 1fr; }
  .nl-footer-grid { grid-template-columns: 1fr 1fr; gap: 1.5rem; }
  .nl-preset-grid { grid-template-columns: repeat(3, 1fr); }
  .nl-cta-band { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 560px) {
  .nl-footer-grid { grid-template-columns: 1fr; }
  .nl-preset-grid { grid-template-columns: repeat(2, 1fr); }
  .nl-hero { padding: 2.4rem 0 3rem; }
  .nl-section { padding: 3rem 0; }
}
