/* ==========================================================================
   NuLife Refresh
   Restyles the existing Elementor templates. Element IDs below come from:
     #6    Elementor kit (global colors / fonts)
     #65   Header           #227  Footer
     #142  Home page        #604  Product grid small (loop item)
     #2388 Guest/gate page  #2399 "Why researchers trust" (desktop)
     #2402 Footer terms info
   If a section is rebuilt in Elementor its ID changes and that rule simply
   stops applying; nothing breaks.
   ========================================================================== */

:root {
  --nlr-navy: #15455B;
  --nlr-navy-deep: #0E3242;
  --nlr-green: #307055;
  --nlr-green-dark: #255A44;
  --nlr-teal: #1F8A8A;
  --nlr-aqua: #3FB6C1;
  --nlr-sky: #3E8ED0;
  --nlr-mint: #5CC08E;
  --nlr-lime: #C3E36F;
  --nlr-tint-teal: #DDF3F2;
  --nlr-tint-sky: #E2EEFB;
  --nlr-tint-mint: #E2F6EA;
  --nlr-tint-lime: #F1F8DA;
  --nlr-line: #DCE4E0;
  --nlr-text: #4B5862;
  --nlr-heading: #132B36;
  --nlr-font: "Hanken Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;
  --nlr-gradient: linear-gradient(135deg, var(--nlr-green), var(--nlr-teal));
  --nlr-gradient-hover: linear-gradient(135deg, var(--nlr-green-dark), #18706F);
  --nlr-gradient-band: linear-gradient(90deg, var(--nlr-navy-deep), var(--nlr-navy) 40%, var(--nlr-teal) 75%, var(--nlr-green));
  --nlr-shadow: 0 1px 2px rgba(19,43,54,.06), 0 8px 24px -12px rgba(19,43,54,.18);
}

/* ---------- Global typography (kit #6) ---------- */
.nlr.elementor-kit-6,
.nlr .elementor-kit-6 {
  --e-global-typography-primary-font-family: "Hanken Grotesk";
  --e-global-typography-secondary-font-family: "Hanken Grotesk";
  --e-global-typography-text-font-family: "Hanken Grotesk";
  --e-global-typography-accent-font-family: "Hanken Grotesk";
}
body.nlr {
  font-family: var(--nlr-font);
  -webkit-font-smoothing: antialiased;
}
.nlr .elementor-heading-title,
.nlr .elementor-widget-text-editor,
.nlr .elementor-button,
.nlr .elementor-icon-box-title,
.nlr .elementor-icon-box-description,
.nlr .elementor-icon-list-text,
.nlr .elementor-nav-menu,
.nlr .woocommerce,
.nlr .nl-scope,
.nlr input, .nlr select, .nlr textarea, .nlr button {
  font-family: var(--nlr-font) !important;
}
.nlr .elementor-heading-title { letter-spacing: -.02em; }

/* ---------- Buttons ---------- */
.nlr .woocommerce a.button.alt,
.nlr .woocommerce button.button.alt,
.nlr .woocommerce .single_add_to_cart_button,
.nlr .woocommerce #place_order,
.nlr a.checkout-button,
.nlr .wc-block-cart__submit-button,
.nlr .wc-block-components-checkout-place-order-button,
.nlr .elementor-widget-woocommerce-product-add-to-cart .single_add_to_cart_button,
.nlr .elementor-142 .elementor-element-e666e70 .elementor-button,
.nlr .elementor-142 .elementor-element-b522269 .elementor-button,
.nlr .elementor-142 .elementor-element-f6ffdf2 .elementor-button {
  background: var(--nlr-gradient) !important;
  border-color: transparent !important;
  color: #fff !important;
  box-shadow: 0 6px 16px -8px rgba(31,138,138,.7);
  transition: filter .15s, box-shadow .15s;
}
.nlr .woocommerce a.button.alt:hover,
.nlr .woocommerce button.button.alt:hover,
.nlr .woocommerce .single_add_to_cart_button:hover,
.nlr .woocommerce #place_order:hover,
.nlr a.checkout-button:hover,
.nlr .wc-block-cart__submit-button:hover,
.nlr .wc-block-components-checkout-place-order-button:hover,
.nlr .elementor-142 .elementor-element-e666e70 .elementor-button:hover,
.nlr .elementor-142 .elementor-element-b522269 .elementor-button:hover,
.nlr .elementor-142 .elementor-element-f6ffdf2 .elementor-button:hover {
  background: var(--nlr-gradient-hover) !important;
  color: #fff !important;
}

/* Form focus */
.nlr .woocommerce form .input-text:focus,
.nlr .woocommerce form select:focus,
.nlr .wc-block-components-text-input input:focus {
  border-color: var(--nlr-aqua) !important;
  box-shadow: 0 0 0 3px rgba(63,182,193,.22) !important;
  outline: none;
}

/* ---------- Header (#65) ---------- */
.nlr .elementor-65 .elementor-element-f43c7cb {
  background: var(--nlr-gradient-band) !important;
}
.nlr .elementor-65 .elementor-element-2c394b4,
.nlr .elementor-65 .elementor-element-2c394b4 * {
  color: #fff !important;
}
.nlr .elementor-65 .elementor-element-a6e58a6,
.nlr .elementor-65 .elementor-element-67a0a90 {
  border-bottom: 1px solid var(--nlr-line);
}
.nlr .elementor-65 .elementor-nav-menu a:hover,
.nlr .elementor-65 .elementor-nav-menu a.elementor-item-active {
  color: var(--nlr-teal) !important;
}
.nlr .elementor-65 .elementor-menu-cart__toggle .elementor-button-icon[data-counter]::before {
  background: var(--nlr-gradient) !important;
}

/* ---------- Home (#142) ---------- */
/* Trust section */
.nlr .elementor-142 .elementor-element-2e40154 {
  background: linear-gradient(180deg, #fff, #F2FAF8) !important;
}
/* Research library band */
.nlr .elementor-142 .elementor-element-d14f02d {
  background:
    radial-gradient(600px 400px at 100% 100%, rgba(195,227,111,.22), transparent 70%),
    linear-gradient(135deg, var(--nlr-navy-deep), var(--nlr-navy) 35%, var(--nlr-teal) 75%, var(--nlr-green)) !important;
}
.nlr .elementor-142 .elementor-element-d14f02d .elementor-heading-title,
.nlr .elementor-142 .elementor-element-d14f02d .elementor-widget-text-editor,
.nlr .elementor-142 .elementor-element-d14f02d .elementor-icon-box-description {
  color: #E3EFEA !important;
}
.nlr .elementor-142 .elementor-element-c230b96 .elementor-icon-box-title,
.nlr .elementor-142 .elementor-element-c230b96 .elementor-icon-box-title * {
  color: var(--nlr-lime) !important;
}
.nlr .elementor-142 .elementor-element-c230b96 .elementor-icon {
  color: #fff !important;
  fill: #fff !important;
}

/* ---------- Icon boxes: rotating tints (home, footer, gate trust) ---------- */
.nlr .elementor-142 .elementor-element-15cbb7a > .elementor-widget-icon-box:nth-child(4n+1),
.nlr .elementor-142 .elementor-element-e0a98ff > .elementor-widget-icon-box:nth-child(4n+1),
.nlr .elementor-2399 .elementor-element-46ea31dc > .elementor-widget-icon-box:nth-child(4n+1),
.nlr .elementor-227 .elementor-element-fdab56b > .elementor-widget-icon-box:nth-child(4n+1) {
  --nlr-ico-bg: var(--nlr-tint-mint); --nlr-ico-fg: var(--nlr-green);
}
.nlr .elementor-142 .elementor-element-15cbb7a > .elementor-widget-icon-box:nth-child(4n+2),
.nlr .elementor-142 .elementor-element-e0a98ff > .elementor-widget-icon-box:nth-child(4n+2),
.nlr .elementor-2399 .elementor-element-46ea31dc > .elementor-widget-icon-box:nth-child(4n+2),
.nlr .elementor-227 .elementor-element-fdab56b > .elementor-widget-icon-box:nth-child(4n+2) {
  --nlr-ico-bg: var(--nlr-tint-teal); --nlr-ico-fg: var(--nlr-teal);
}
.nlr .elementor-142 .elementor-element-15cbb7a > .elementor-widget-icon-box:nth-child(4n+3),
.nlr .elementor-142 .elementor-element-e0a98ff > .elementor-widget-icon-box:nth-child(4n+3),
.nlr .elementor-2399 .elementor-element-46ea31dc > .elementor-widget-icon-box:nth-child(4n+3),
.nlr .elementor-227 .elementor-element-fdab56b > .elementor-widget-icon-box:nth-child(4n+3) {
  --nlr-ico-bg: var(--nlr-tint-sky); --nlr-ico-fg: var(--nlr-sky);
}
.nlr .elementor-142 .elementor-element-15cbb7a > .elementor-widget-icon-box:nth-child(4n+4),
.nlr .elementor-142 .elementor-element-e0a98ff > .elementor-widget-icon-box:nth-child(4n+4),
.nlr .elementor-2399 .elementor-element-46ea31dc > .elementor-widget-icon-box:nth-child(4n+4),
.nlr .elementor-227 .elementor-element-fdab56b > .elementor-widget-icon-box:nth-child(4n+4) {
  --nlr-ico-bg: var(--nlr-tint-lime); --nlr-ico-fg: #5E7F12;
}
.nlr .elementor-142 .elementor-element-15cbb7a .elementor-icon,
.nlr .elementor-142 .elementor-element-e0a98ff .elementor-icon,
.nlr .elementor-2399 .elementor-element-46ea31dc .elementor-icon,
.nlr .elementor-227 .elementor-element-fdab56b .elementor-icon {
  background-color: var(--nlr-ico-bg, var(--nlr-tint-mint)) !important;
  color: var(--nlr-ico-fg, var(--nlr-green)) !important;
  fill: var(--nlr-ico-fg, var(--nlr-green)) !important;
  border-radius: 12px !important;
}
.nlr .elementor-142 .elementor-element-15cbb7a .elementor-icon svg,
.nlr .elementor-142 .elementor-element-e0a98ff .elementor-icon svg,
.nlr .elementor-2399 .elementor-element-46ea31dc .elementor-icon svg,
.nlr .elementor-227 .elementor-element-fdab56b .elementor-icon svg {
  fill: var(--nlr-ico-fg, var(--nlr-green)) !important;
}

/* ---------- Product cards (loop item #604) ---------- */
.nlr .elementor-604 .elementor-element-437214e,
.nlr .e-loop-item .elementor-element-437214e {
  background: #fff;
  border: 1px solid var(--nlr-line) !important;
  border-radius: 14px !important;
  overflow: hidden;
  transition: border-color .15s, box-shadow .15s;
}
.nlr .e-loop-item .elementor-element-437214e:hover {
  border-color: var(--nlr-aqua) !important;
  box-shadow: var(--nlr-shadow);
}
.nlr .e-loop-item .elementor-element-34ecb61 {
  background: linear-gradient(180deg, var(--nlr-tint-teal), #F8FBFB);
}
.nlr .e-loop-item:nth-child(4n+1) .elementor-element-34ecb61 { background: linear-gradient(180deg, var(--nlr-tint-mint), #F9FCFA); }
.nlr .e-loop-item:nth-child(4n+2) .elementor-element-34ecb61 { background: linear-gradient(180deg, var(--nlr-tint-sky), #F9FBFE); }
.nlr .e-loop-item:nth-child(4n+3) .elementor-element-34ecb61 { background: linear-gradient(180deg, var(--nlr-tint-lime), #FBFDF5); }
.nlr .e-loop-item .elementor-element-34ecb61 img {
  filter: drop-shadow(0 10px 18px rgba(19,43,54,.12));
}
.nlr .e-loop-item .elementor-element-1114311 .button,
.nlr .e-loop-item .elementor-element-1114311 .single_add_to_cart_button {
  background: var(--nlr-gradient) !important;
  border-color: transparent !important;
  color: #fff !important;
}

/* ---------- Footer (#227) ---------- */
.nlr .elementor-227 .elementor-element-1667a96 {
  background:
    radial-gradient(700px 400px at 100% 0%, rgba(63,182,193,.14), transparent 70%),
    linear-gradient(180deg, #F1F8F4, #E6F4F1) !important;
}
.nlr .elementor-227 .elementor-element-5b9c82f,
.nlr .elementor-2402 .elementor-element-152cd6f5 {
  background: transparent !important;
}
.nlr .elementor-227 .elementor-element-28c9e4c,
.nlr .elementor-2402 .elementor-element-5cb574f5 {
  background: rgba(255,255,255,.7) !important;
  border: 1px solid var(--nlr-line);
  border-left: 3px solid var(--nlr-aqua);
  border-radius: 0 10px 10px 0;
}

/* ==========================================================================
   Gate / guest page (#2388)
   ========================================================================== */

/* Notice bar */
.nlr .elementor-2388 .elementor-element.elementor-element-2028a8f5 {
  background: var(--nlr-gradient-band) !important;
  --padding-top: 10px;
  --padding-bottom: 10px;
}
.nlr .elementor-2388 .elementor-element.elementor-element-6505e916 {
  background: transparent !important;
  --padding-bottom: 0px;
  --width: auto;
}
.nlr .elementor-2388 .elementor-element.elementor-element-30797994 .elementor-heading-title,
.nlr .elementor-2388 .elementor-element.elementor-element-5c456f2e .elementor-heading-title {
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: 0;
}
.nlr .elementor-2388 .elementor-element.elementor-element-30797994 .elementor-heading-title { font-weight: 700 !important; }
.nlr .elementor-2388 .elementor-element.elementor-element-5c456f2e { padding: 2px 10px !important; }

/* Hero: replace the washed-out photo with a color mesh */
.nlr .elementor-2388 .elementor-element.elementor-element-77fb4550:not(.elementor-motion-effects-element-type-background),
.nlr .elementor-2388 .elementor-element.elementor-element-77fb4550 {
  background-image:
    radial-gradient(620px 420px at 8% 12%, rgba(195,227,111,.28), transparent 70%),
    radial-gradient(700px 520px at 40% 95%, rgba(63,182,193,.22), transparent 70%),
    radial-gradient(800px 600px at 92% 20%, rgba(62,142,208,.20), transparent 70%),
    linear-gradient(180deg, #F4FAF7, #EEF6F5) !important;
  --padding-top: 72px;
  --padding-bottom: 96px;
  --padding-left: 32px;
  --padding-right: 32px;
  --gap: 72px 72px;
  --column-gap: 72px;
}
.nlr .elementor-2388 .elementor-element.elementor-element-77fb4550::before {
  display: none !important;
}

/* Hero copy */
.nlr .elementor-2388 .elementor-element.elementor-element-657ca61 .elementor-heading-title,
.nlr .elementor-2388 .elementor-element.elementor-element-15d6bdda .elementor-heading-title {
  font-size: clamp(36px, 4.4vw, 56px) !important;
  line-height: 1.06 !important;
  letter-spacing: -.025em;
  color: var(--nlr-heading) !important;
}
.nlr .elementor-2388 .elementor-element.elementor-element-15d6bdda .elementor-heading-title {
  background: linear-gradient(90deg, var(--nlr-green), var(--nlr-teal) 60%, var(--nlr-sky));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  padding-bottom: .08em;
}
.nlr .elementor-2388 .elementor-element.elementor-element-323defd1 {
  font-size: 18px !important;
  line-height: 1.6 !important;
  color: var(--nlr-text) !important;
  margin-top: 20px !important;
}
.nlr .elementor-2388 .elementor-element.elementor-element-c0a7a7c {
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: var(--nlr-text) !important;
  padding: 16px 20px !important;
  margin-top: 8px !important;
  background: rgba(255,255,255,.8);
  border-left: 3px solid var(--nlr-aqua);
  border-radius: 0 10px 10px 0;
}
.nlr .elementor-2388 .elementor-element.elementor-element-c0a7a7c p { margin: 0; }
.nlr .elementor-2388 .elementor-element.elementor-element-c0a7a7c b,
.nlr .elementor-2388 .elementor-element.elementor-element-c0a7a7c strong { color: var(--nlr-heading); }
.nlr .elementor-2388 .elementor-element.elementor-element-2e06cb80 { margin-top: 20px !important; margin-bottom: 24px !important; }
.nlr .elementor-2388 .elementor-element.elementor-element-2e06cb80 .elementor-button {
  background: var(--nlr-gradient) !important;
  border: 0 !important;
  color: #fff !important;
  border-radius: 8px !important;
  padding: 15px 26px !important;
  font-size: 15px !important;
  box-shadow: 0 6px 16px -8px rgba(31,138,138,.7);
}
.nlr .elementor-2388 .elementor-element.elementor-element-2e06cb80 .elementor-button:hover {
  background: var(--nlr-gradient-hover) !important;
}

/* Perks list (added by the plugin under the intro paragraph) */
.nlr-perks {
  list-style: none;
  margin: 24px 0 8px;
  padding: 0;
  display: grid;
  gap: 12px;
  text-align: left;
}
.nlr-perks li {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--nlr-heading);
  font-weight: 600;
  font-size: 15px;
}
.nlr-perk-ico {
  width: 36px;
  height: 36px;
  flex: none;
  border-radius: 10px;
  position: relative;
}
.nlr-perk-ico::after {
  content: "";
  position: absolute;
  inset: 8px;
  background: #fff;
  -webkit-mask: var(--nlr-icon) center / contain no-repeat;
  mask: var(--nlr-icon) center / contain no-repeat;
}
.nlr-ico-flask { background: linear-gradient(135deg, var(--nlr-mint), var(--nlr-green)); --nlr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 3h6M10 3v6L4.5 18.5A1.6 1.6 0 0 0 5.9 21h12.2a1.6 1.6 0 0 0 1.4-2.5L14 9V3M7 15h10'/%3E%3C/svg%3E"); }
.nlr-ico-doc   { background: linear-gradient(135deg, var(--nlr-aqua), var(--nlr-teal)); --nlr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8zM14 3v5h5M9 13l2 2 4-4'/%3E%3C/svg%3E"); }
.nlr-ico-truck { background: linear-gradient(135deg, #6FB2EA, var(--nlr-sky)); --nlr-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='M3 7h11v9H3zM14 10h4l3 3v3h-7M7.5 19a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3zM17.5 19a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3z'/%3E%3C/svg%3E"); }

/* Sign-in stage: vials + colored panel behind the [nulife_gate] card */
.nlr .nl-scope.nlr-stage {
  position: relative;
  padding: 150px 28px 28px;
  width: 100%;
  max-width: 540px;
  margin-left: auto;
}
.nlr-stage-art {
  position: absolute;
  inset: 0;
  border-radius: 24px;
  background:
    radial-gradient(360px 240px at 50% 14%, rgba(255,255,255,.55), transparent 70%),
    radial-gradient(400px 300px at 100% 100%, rgba(195,227,111,.55), transparent 70%),
    linear-gradient(150deg, var(--nlr-sky) 0%, var(--nlr-aqua) 38%, var(--nlr-teal) 62%, var(--nlr-green) 100%);
  box-shadow: 0 30px 60px -30px rgba(21,69,91,.55);
  pointer-events: none;
}
.nlr-stage-art::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background-image: radial-gradient(rgba(255,255,255,.35) 1px, transparent 1.2px);
  background-size: 18px 18px;
  -webkit-mask-image: linear-gradient(180deg, #000, transparent 55%);
  mask-image: linear-gradient(180deg, #000, transparent 55%);
}
.nlr-stage-vials {
  position: absolute;
  top: -36px;
  left: 50%;
  width: min(78%, 380px);
  height: auto;
  margin-left: max(-39%, -190px);
  filter: drop-shadow(0 22px 28px rgba(14,50,66,.45));
}
.nlr-stage-badge {
  position: absolute;
  top: 34px;
  right: -12px;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 8px;
  background: #fff;
  color: var(--nlr-heading);
  font: 600 14px/1 var(--nlr-font);
  padding: 9px 14px;
  border-radius: 999px;
  border: 1px solid var(--nlr-line);
  box-shadow: var(--nlr-shadow);
  white-space: nowrap;
}
.nlr-check {
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: var(--nlr-green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / 11px no-repeat;
}

/* Sign-in card + registration modal (nulife-gate markup) */
.nlr .nl-scope {
  --nl-primary: var(--nlr-teal);
  --nl-primary-dark: #18706F;
  --nl-border: var(--nlr-line);
  --nl-text-main: var(--nlr-heading);
  --nl-text-muted: var(--nlr-text);
}
.nlr .nl-scope.nlr-stage .nl-card {
  position: relative;
  z-index: 1;
  border: 1px solid var(--nlr-line);
  border-radius: 16px;
  box-shadow: var(--nlr-shadow);
  margin: 0;
  max-width: none;
  width: 100%;
}
.nlr .nl-scope .nl-text-2xl { letter-spacing: -.02em; }
.nlr .nl-scope .nl-divider span { text-transform: none; font-size: 13px; color: var(--nlr-text); }
.nlr .nl-scope label.nl-uppercase {
  text-transform: none;
  font-size: 14px;
  font-weight: 600;
  color: var(--nlr-heading) !important;
  letter-spacing: 0;
}
.nlr .nl-scope .nl-input {
  border-color: var(--nlr-line);
  border-radius: 8px;
  min-height: 48px;
  font-size: 15px;
  color: var(--nlr-heading);
}
.nlr .nl-scope .nl-input:focus {
  border-color: var(--nlr-aqua) !important;
  box-shadow: 0 0 0 3px rgba(63,182,193,.22) !important;
  outline: none;
}
.nlr .nl-scope .nl-btn {
  background: var(--nlr-gradient) !important;
  border: 0;
  border-radius: 8px;
  min-height: 48px;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0 !important;
  text-transform: none !important;
  font-size: 15px !important;
  box-shadow: 0 6px 16px -8px rgba(31,138,138,.7);
}
.nlr .nl-scope .nl-btn:hover { background: var(--nlr-gradient-hover) !important; }
.nlr .nl-scope .nl-checkbox { accent-color: var(--nlr-teal); }
.nlr .nl-scope .nl-link { color: var(--nlr-teal); }
.nlr .nl-scope .nl-register-btn {
  display: inline-block;
  font-size: 15px;
}
.nlr .nl-scope .nl-radio-card:hover {
  border-color: var(--nlr-aqua);
  background-color: var(--nlr-tint-teal);
}
.nlr .nl-scope .nl-modal-content { border-radius: 16px; }

/* Trust strip on the gate page (#2399) */
/* Live design is a green band with white text; keep it dark, make it richer. */
.nlr .elementor-2399 .elementor-element-3154609a {
  background:
    radial-gradient(600px 400px at 100% 100%, rgba(195,227,111,.22), transparent 70%),
    linear-gradient(135deg, var(--nlr-navy-deep), var(--nlr-navy) 35%, var(--nlr-teal) 75%, var(--nlr-green)) !important;
}

/* Footer copyright row on the gate page */
.nlr .elementor-2388 .elementor-element.elementor-element-4e4ed01c {
  background: var(--nlr-navy-deep) !important;
}
.nlr .elementor-2388 .elementor-element.elementor-element-29741fbf,
.nlr .elementor-2388 .elementor-element.elementor-element-29741fbf * {
  color: #A9BDB5 !important;
}

/* ---------- Responsive ---------- */
@media (max-width: 1024px) {
  .nlr .elementor-2388 .elementor-element.elementor-element-77fb4550 {
    --gap: 40px 40px;
    --column-gap: 40px;
    --padding-top: 48px;
    --padding-bottom: 64px;
  }
  .nlr .elementor-2388 .elementor-element.elementor-element-323defd1 { font-size: 16px !important; }
}
@media (max-width: 767px) {
  .nlr .elementor-2388 .elementor-element.elementor-element-77fb4550 {
    --padding-left: 16px;
    --padding-right: 16px;
  }
  .nlr .elementor-2388 .elementor-element.elementor-element-657ca61,
  .nlr .elementor-2388 .elementor-element.elementor-element-15d6bdda,
  .nlr .elementor-2388 .elementor-element.elementor-element-323defd1,
  .nlr .elementor-2388 .elementor-element.elementor-element-c0a7a7c {
    text-align: left !important;
  }
  .nlr .elementor-2388 .elementor-element.elementor-element-2e06cb80 .elementor-button-wrapper { text-align: left !important; }
  .nlr .nl-scope.nlr-stage {
    padding: 120px 12px 12px;
    max-width: none;
  }
  .nlr-stage-badge { right: -4px; top: 20px; font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
  .nlr * { transition: none !important; }
}
