/* ======================================================================
   NEMAZING ONLINE · V600 MAX DESIGN SYSTEM
   Brand palette: violet / lavender / graphite / white
   ====================================================================== */
:root{
  --nm-bg:#f6f7fb;
  --nm-bg-2:#f1efff;
  --nm-surface:#ffffff;
  --nm-surface-2:#fbfaff;
  --nm-surface-3:#f5f3ff;
  --nm-text:#1c2030;
  --nm-text-2:#31384c;
  --nm-muted:#778096;
  --nm-muted-2:#9aa2b3;
  --nm-line:#e6e8f0;
  --nm-line-accent:#ddd8ff;
  --nm-accent:#6f5cff;
  --nm-accent-2:#8f7bff;
  --nm-accent-3:#5747e8;
  --nm-accent-soft:#f0edff;
  --nm-accent-soft-2:#e7e1ff;
  --nm-success:#20b77a;
  --nm-success-soft:#eaf9f2;
  --nm-warning:#d99824;
  --nm-warning-soft:#fff7e8;
  --nm-danger:#e25363;
  --nm-danger-soft:#fff0f2;
  --nm-info:#4b86f7;
  --nm-info-soft:#edf4ff;
  --nm-shadow-xs:0 3px 10px rgba(49,43,91,.045);
  --nm-shadow-sm:0 8px 24px rgba(44,38,86,.07);
  --nm-shadow-md:0 18px 48px rgba(44,38,86,.10);
  --nm-shadow-lg:0 32px 90px rgba(44,38,86,.14);
  --nm-radius-xs:8px;
  --nm-radius-sm:12px;
  --nm-radius:16px;
  --nm-radius-lg:22px;
  --nm-radius-xl:28px;
  --nm-container:1280px;
  --nm-header-h:76px;
  --nm-font:Inter,Manrope,"Segoe UI",Arial,sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--nm-bg);color-scheme:light!important}
body{
  margin:0!important;
  min-height:100vh;
  background:
    radial-gradient(circle at 12% -10%,rgba(111,92,255,.08),transparent 28rem),
    radial-gradient(circle at 86% 2%,rgba(143,123,255,.07),transparent 30rem),
    var(--nm-bg)!important;
  color:var(--nm-text)!important;
  font-family:var(--nm-font)!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body::selection,::selection{background:rgba(111,92,255,.18);color:var(--nm-text)}
a{color:inherit}
img{max-width:100%}
button,input,select,textarea{font-family:inherit}
.container{width:min(calc(100% - 40px),var(--nm-container))!important;margin-inline:auto!important}

/* ---------- Typography ---------- */
.eyebrow,.nm600-eyebrow{
  display:inline-flex!important;align-items:center!important;gap:8px!important;
  margin:0 0 10px!important;color:var(--nm-accent)!important;
  font-size:11px!important;font-weight:900!important;letter-spacing:.12em!important;text-transform:uppercase!important;
}
.eyebrow::before,.nm600-eyebrow::before{content:"";width:18px;height:2px;border-radius:99px;background:currentColor}
.display,.heading,.subheading,h1,h2,h3,h4{font-family:var(--nm-font)!important;color:var(--nm-text)}
.heading{font-size:clamp(30px,4vw,48px)!important;line-height:1.06!important;letter-spacing:-.035em!important}
.subheading{font-size:clamp(20px,2.3vw,30px)!important;letter-spacing:-.025em!important}
.lead{color:var(--nm-muted)!important;line-height:1.7!important}
.muted{color:var(--nm-muted)!important}
.red{color:var(--nm-accent)!important}

/* ---------- Header ---------- */
.site-header,
.site-header.nm26-white-header,
.site-header.nm27-white-header,
.site-header.nm28-white-header{
  position:sticky!important;top:0!important;z-index:2000!important;
  height:var(--nm-header-h)!important;
  background:rgba(255,255,255,.88)!important;
  background-image:none!important;
  border:0!important;border-bottom:1px solid rgba(224,225,237,.88)!important;
  box-shadow:0 5px 30px rgba(36,32,70,.045)!important;
  backdrop-filter:blur(18px) saturate(150%)!important;
  color:var(--nm-text)!important;
}
.site-header .header-inner{height:var(--nm-header-h)!important;min-height:var(--nm-header-h)!important;display:flex!important;align-items:center!important;gap:18px!important;padding:0!important}
.site-header .brand{display:flex!important;align-items:center!important;flex:0 0 auto!important;min-width:0!important;width:auto!important}
.site-header .brand img{width:184px!important;max-height:42px!important;object-fit:contain!important;filter:invert(1) saturate(.2) brightness(.32)!important}
.site-header .nav,.site-header .nm23-nav,.site-header .nm91-global-nav{
  display:flex!important;align-items:center!important;justify-content:center!important;gap:4px!important;margin-left:auto!important;
  position:static!important;transform:none!important;
}
.site-header .nav>a,.site-header .nm23-nav>a,.site-header .nm91-global-nav>a{
  position:relative!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;
  min-width:0!important;min-height:42px!important;height:42px!important;padding:0 12px!important;
  border:1px solid transparent!important;border-radius:12px!important;background:transparent!important;
  color:#667085!important;font-size:12px!important;font-weight:800!important;line-height:1!important;text-decoration:none!important;
  transition:.16s ease!important;box-shadow:none!important;
}
.site-header .nav>a svg,.site-header .nm23-nav>a svg,.site-header .nm91-global-nav>a svg{
  width:17px!important;height:17px!important;margin:0 7px 0 0!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;
}
.site-header .nav>a:hover,.site-header .nm23-nav>a:hover,.site-header .nm91-global-nav>a:hover{
  color:var(--nm-accent)!important;background:var(--nm-accent-soft)!important;border-color:#e7e1ff!important;transform:translateY(-1px)!important;
}
.site-header .nav>a.active,.site-header .nm23-nav>a.active,.site-header .nm91-global-nav>a.active{
  color:var(--nm-accent)!important;background:linear-gradient(180deg,#f6f4ff,#efecff)!important;border-color:#ddd7ff!important;
  box-shadow:0 5px 16px rgba(111,92,255,.08)!important;
}
.site-header .nav>a.active::after,.site-header .nm23-nav>a.active::after,.site-header .nm91-global-nav>a.active::after{display:none!important}
.site-header .header-actions{display:flex!important;align-items:center!important;gap:8px!important;margin-left:2px!important}
.account-trigger{
  min-height:44px!important;padding:5px 10px 5px 6px!important;border:1px solid var(--nm-line)!important;border-radius:13px!important;
  background:#fff!important;color:var(--nm-text)!important;box-shadow:var(--nm-shadow-xs)!important;
}
.account-trigger:hover{border-color:var(--nm-line-accent)!important;box-shadow:var(--nm-shadow-sm)!important}
.account-trigger-avatar,.account-menu-avatar{
  display:grid!important;place-items:center!important;width:32px!important;height:32px!important;border-radius:10px!important;
  background:linear-gradient(145deg,var(--nm-accent),var(--nm-accent-2))!important;color:#fff!important;font-size:11px!important;font-weight:900!important;
}
.account-trigger-copy strong{font-size:11px!important;font-weight:900!important;color:var(--nm-text)!important}
.account-trigger-copy small{font-size:8.5px!important;color:var(--nm-muted)!important}
.account-chevron{color:var(--nm-muted)!important}
.account-dropdown{
  top:calc(100% + 10px)!important;right:0!important;min-width:245px!important;padding:8px!important;
  border:1px solid var(--nm-line)!important;border-radius:16px!important;background:#fff!important;box-shadow:var(--nm-shadow-md)!important;
}
.account-dropdown-head{padding:9px 9px 12px!important;border-bottom:1px solid var(--nm-line)!important}
.account-dropdown>a,.account-dropdown>button{min-height:40px!important;padding:0 10px!important;border-radius:10px!important;color:var(--nm-text-2)!important;font-size:11px!important;font-weight:800!important}
.account-dropdown>a:hover,.account-dropdown>button:hover{background:var(--nm-accent-soft)!important;color:var(--nm-accent)!important}
.menu-toggle{width:44px!important;height:44px!important;border:1px solid var(--nm-line)!important;border-radius:12px!important;background:#fff!important;color:var(--nm-text)!important;box-shadow:none!important}
.menu-toggle span,.menu-toggle span::before,.menu-toggle span::after{background:var(--nm-text)!important}

/* ---------- Buttons ---------- */
.btn,.nm600-btn,button.btn{
  min-height:44px!important;padding:0 17px!important;border-radius:12px!important;border:1px solid transparent!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
  font-size:11.5px!important;font-weight:900!important;letter-spacing:-.01em!important;line-height:1!important;
  text-decoration:none!important;cursor:pointer!important;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,background .15s ease!important;
}
.btn:hover,.nm600-btn:hover{transform:translateY(-1px)!important}
.btn-primary,.nm600-btn.primary{
  color:#fff!important;background:linear-gradient(135deg,var(--nm-accent),#7d68ff)!important;border-color:var(--nm-accent)!important;
  box-shadow:0 10px 24px rgba(111,92,255,.19)!important;
}
.btn-primary:hover,.nm600-btn.primary:hover{background:linear-gradient(135deg,#6553f4,#8975ff)!important;box-shadow:0 13px 28px rgba(111,92,255,.24)!important}
.btn-light,.nm600-btn.secondary{color:var(--nm-text)!important;background:#fff!important;border-color:var(--nm-line)!important;box-shadow:var(--nm-shadow-xs)!important}
.btn-light:hover,.nm600-btn.secondary:hover{border-color:var(--nm-line-accent)!important;color:var(--nm-accent)!important;background:var(--nm-surface-2)!important}
.btn-dark{background:var(--nm-text)!important;color:#fff!important}
.btn-outline{border-color:#ddd8ff!important;color:var(--nm-accent)!important;background:#fff!important}
.btn-small{min-height:38px!important;padding:0 14px!important;font-size:10.5px!important}
.btn-block{width:100%!important}
.btn[disabled],button[disabled]{opacity:.5!important;cursor:not-allowed!important;transform:none!important}

/* ---------- Form controls ---------- */
.input,input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="tel"],input[type="url"],input[type="search"],textarea,select{
  min-height:44px!important;border:1px solid #dfe2eb!important;border-radius:11px!important;background:#fff!important;color:var(--nm-text)!important;
  outline:none!important;box-shadow:0 1px 0 rgba(45,40,80,.02)!important;transition:.15s ease!important;
}
.input:focus,input:focus,textarea:focus,select:focus{border-color:#bcb2ff!important;box-shadow:0 0 0 4px rgba(111,92,255,.09)!important}
input::placeholder,textarea::placeholder{color:#a4abba!important}
.field label,.nm50-field label{color:#5e6678!important;font-size:10.5px!important;font-weight:850!important}

/* ---------- Surface / cards ---------- */
.card,.panel,.nm600-card{
  background:rgba(255,255,255,.96)!important;border:1px solid var(--nm-line)!important;border-radius:var(--nm-radius-lg)!important;
  box-shadow:var(--nm-shadow-sm)!important;
}
.card:hover{border-color:#dddaf0}
.section{padding:64px 0!important}.section-sm{padding:46px 0!important}

/* ---------- Footer ---------- */
.site-footer{
  margin-top:56px!important;padding:42px 0 18px!important;background:#1f2230!important;color:#d8dbe6!important;border-top:0!important;
}
.site-footer .nm19-footer-grid{display:grid!important;grid-template-columns:minmax(260px,1.4fr) repeat(3,minmax(150px,.55fr))!important;gap:34px!important}
.site-footer .nm19-footer-logo img{width:185px!important;filter:none!important}
.site-footer .nm19-footer-brand p{max-width:390px!important;color:#9ca3b6!important;font-size:11.5px!important;line-height:1.7!important}
.site-footer .nm19-footer-col h4{margin:0 0 12px!important;color:#fff!important;font-size:11px!important;text-transform:uppercase!important;letter-spacing:.08em!important}
.site-footer .nm19-footer-col a{display:block!important;padding:4px 0!important;color:#adb3c4!important;font-size:11px!important}
.site-footer .nm19-footer-col a:hover{color:#c9c2ff!important}
.site-footer .nm19-footer-bottom{margin-top:28px!important;padding-top:16px!important;border-top:1px solid rgba(255,255,255,.08)!important;color:#80889b!important;font-size:10px!important}

/* ---------- Feedback UI ---------- */
.cookie{left:20px!important;right:auto!important;bottom:20px!important;max-width:520px!important;padding:12px 14px!important;border:1px solid var(--nm-line)!important;border-radius:16px!important;background:rgba(255,255,255,.96)!important;color:var(--nm-text)!important;box-shadow:var(--nm-shadow-lg)!important;backdrop-filter:blur(16px)!important}
.cookie p{font-size:10.5px!important;color:var(--nm-muted)!important}
.toast{border-radius:14px!important;border:1px solid var(--nm-line)!important;background:#fff!important;color:var(--nm-text)!important;box-shadow:var(--nm-shadow-md)!important}
.modal{background:rgba(21,23,34,.35)!important;backdrop-filter:blur(5px)!important}
.modal-card{border:1px solid var(--nm-line)!important;border-radius:22px!important;background:#fff!important;box-shadow:var(--nm-shadow-lg)!important}
.modal-head{border-bottom:1px solid var(--nm-line)!important}
.modal-close{border-radius:10px!important;background:#f5f5f9!important;color:#6b7280!important}

/* ---------- Shared professional helpers ---------- */
.nm600-shell{width:min(calc(100% - 40px),var(--nm-container));margin:0 auto}
.nm600-pagehead{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 0 20px}
.nm600-pagehead h1{margin:0;font-size:30px;line-height:1.05;letter-spacing:-.04em}
.nm600-pagehead p{margin:7px 0 0;color:var(--nm-muted);font-size:11.5px}
.nm600-badge{display:inline-flex;align-items:center;gap:6px;min-height:25px;padding:0 9px;border-radius:999px;background:var(--nm-accent-soft);color:var(--nm-accent);font-size:9.5px;font-weight:900}
.nm600-badge::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.75}
.nm600-grid{display:grid;gap:14px}
.nm600-glass{background:rgba(255,255,255,.78);border:1px solid rgba(228,228,240,.92);backdrop-filter:blur(18px);box-shadow:var(--nm-shadow-sm)}
.nm600-empty{padding:38px 22px;text-align:center;border:1px dashed #d8dbe6;border-radius:18px;background:#fafaff;color:var(--nm-muted)}
.nm600-divider{height:1px;background:var(--nm-line)}

/* ---------- Global icon language ---------- */
svg{shape-rendering:geometricPrecision}
.site-header svg,.btn svg,.nm600-btn svg{stroke-linecap:round;stroke-linejoin:round}

/* ---------- Scrollbars ---------- */
*{scrollbar-width:thin;scrollbar-color:#cfc8ff #f4f5f9}
*::-webkit-scrollbar{width:9px;height:9px}
*::-webkit-scrollbar-track{background:#f4f5f9}
*::-webkit-scrollbar-thumb{background:#cfc8ff;border:2px solid #f4f5f9;border-radius:999px}
*::-webkit-scrollbar-thumb:hover{background:#b7adff}

/* ---------- Accessibility / motion ---------- */
:focus-visible{outline:3px solid rgba(111,92,255,.22)!important;outline-offset:2px!important}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* ---------- Responsive ---------- */
@media(max-width:1100px){
  :root{--nm-container:1040px}
  .site-header .nav>a,.site-header .nm23-nav>a,.site-header .nm91-global-nav>a{padding:0 9px!important;font-size:10.5px!important}
  .site-header .brand img{width:160px!important}
  .account-trigger-copy{display:none!important}
}
@media(max-width:900px){
  :root{--nm-header-h:68px}
  .container,.nm600-shell{width:min(calc(100% - 24px),var(--nm-container))!important}
  .site-header .header-inner{height:var(--nm-header-h)!important;min-height:var(--nm-header-h)!important}
  .site-header .brand img{width:155px!important}
  .site-header .menu-toggle{display:grid!important;place-items:center!important;margin-left:auto!important}
  .site-header .nav,.site-header .nm23-nav,.site-header .nm91-global-nav{
    display:none!important;position:absolute!important;left:12px!important;right:12px!important;top:calc(100% + 8px)!important;transform:none!important;
    padding:8px!important;border:1px solid var(--nm-line)!important;border-radius:16px!important;background:rgba(255,255,255,.98)!important;box-shadow:var(--nm-shadow-lg)!important;
  }
  .site-header .nav.open,.site-header .nm23-nav.open,.site-header .nm91-global-nav.open{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important}
  .site-header .nav>a,.site-header .nm23-nav>a,.site-header .nm91-global-nav>a{justify-content:flex-start!important;padding:0 12px!important;font-size:11px!important}
  .site-header .header-actions{margin-left:0!important}
  .site-footer .nm19-footer-grid{grid-template-columns:1fr 1fr!important}
}
@media(max-width:620px){
  .container,.nm600-shell{width:min(calc(100% - 20px),var(--nm-container))!important}
  .site-header .brand img{width:142px!important}
  .site-header .header-actions{display:none!important}
  .site-header .nav.open,.site-header .nm23-nav.open,.site-header .nm91-global-nav.open{grid-template-columns:1fr!important}
  .site-footer{margin-top:38px!important;padding-top:30px!important}
  .site-footer .nm19-footer-grid{grid-template-columns:1fr!important;gap:20px!important}
  .site-footer .nm19-footer-bottom{display:grid!important;gap:6px!important}
  .cookie{left:10px!important;right:10px!important;bottom:10px!important;max-width:none!important}
}

/* V600 palette bridge: force legacy modules into the NEMAZING violet palette */
:root{
  --red:#6f5cff;--red-dark:#5747e8;
  --n4-orange:#6f5cff;--n4-orange-2:#5747e8;--n4-orange-soft:#f0edff;
  --nm164-orange:#6f5cff;--nm168-orange:#6f5cff;--nm168-orange-soft:#f0edff;
  --nm40-orange:#6f5cff;--nm40-orange2:#8f7bff;
}
