/* ==========================================================================
   NestCrate — storage & organization theme for ZanCMS
   Prefix: nc-   |   Palette: graphite ink / warm pulp / crate timber / cobalt label
   Design rule: sharp compartment cells, inset hairline frames, top tab notches,
   no card shadows, no monospace, no marquee, no counters.
   ========================================================================== */

:root{
  /* --- palette ---------------------------------------------------------- */
  --nc-ink:#14202A;
  --nc-ink-2:#2B3A46;
  --nc-slate:#5A6A75;
  --nc-mute:#8B98A1;
  --nc-line:#DBD3C4;
  --nc-line-2:#EAE4D8;
  --nc-pulp:#F3EDE2;
  --nc-pulp-2:#FAF7F1;
  --nc-white:#FFFFFF;
  --nc-timber:#BE8A4C;
  --nc-timber-2:#9A6B34;
  --nc-timber-soft:#F7EBD9;
  --nc-cobalt:#1F4FD8;
  --nc-cobalt-2:#1639A8;
  --nc-cobalt-soft:#E7ECFD;
  --nc-green:#1F6B4F;
  --nc-red:#B4322B;

  /* --- geometry --------------------------------------------------------- */
  --nc-r:0px;
  --nc-r-sm:4px;
  --nc-bw:1px;
  --nc-frame:inset 0 0 0 1px var(--nc-line);

  /* --- type ------------------------------------------------------------- */
  --nc-head:"Arial Black","Segoe UI Black","Helvetica Neue",Arial,system-ui,sans-serif;
  --nc-body:"Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;

  /* --- metrics ---------------------------------------------------------- */
  --nc-wrap:1280px;
  --nc-pad:24px;
  --nc-hd:66px;

  /* --- compat aliases (kept so any legacy component rule still resolves) -- */
  --vl-pine:var(--nc-ink);
  --vl-volt:var(--nc-cobalt);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  font-family:var(--nc-body);
  font-size:16px;
  line-height:1.6;
  color:var(--nc-ink-2);
  background:var(--nc-pulp-2);
  overflow-x:hidden;
}
img{max-width:100%;height:auto;display:block;border:0}
a{color:var(--nc-cobalt);text-decoration:none}
a:hover{color:var(--nc-cobalt-2)}
h1,h2,h3,h4,h5{margin:0;color:var(--nc-ink);font-family:var(--nc-head);font-weight:900;line-height:1.08;letter-spacing:-.02em}
p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
button{font:inherit;cursor:pointer}
input,textarea,select{font:inherit}
iframe{border:0}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
a.skip-link{position:absolute;left:-9999px;top:0;z-index:200;background:var(--nc-cobalt);color:#fff;padding:10px 18px}
a.skip-link:focus{left:12px;top:12px}

/* ==========================================================================
   Layout primitives
   ========================================================================== */
.nc-wrap{width:min(100% - (var(--nc-pad)*2),var(--nc-wrap));margin-inline:auto}
.nc-sec{position:relative;padding:84px 0}
.nc-sec-tight{padding:56px 0}
.nc-sec-pulp{background:var(--nc-pulp);position:relative}
.nc-sec-pulp::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.55;
  background:
    repeating-linear-gradient(90deg,transparent 0 79px,rgba(20,32,42,.05) 79px 80px),
    repeating-linear-gradient(0deg,transparent 0 79px,rgba(20,32,42,.05) 79px 80px);
}
.nc-sec-pulp>.nc-wrap{position:relative;z-index:1}
.nc-sec-white{background:var(--nc-white)}
.nc-sec-ink{background:var(--nc-ink);color:#C6D0D8}
.nc-sec-cobalt{background:var(--nc-cobalt);color:#DCE4FF}

.nc-head{max-width:760px;margin-bottom:40px}
.nc-head-c{max-width:760px;margin-inline:auto;text-align:center;margin-bottom:40px}
.nc-eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  font-variant:small-caps;color:var(--nc-cobalt);
  border:var(--nc-bw) solid var(--nc-cobalt-soft);background:var(--nc-cobalt-soft);
  padding:4px 10px;margin-bottom:14px;
}
/* `.nc-docs` is its own ink band (see HOME — 09 documentation): it painted the
   --nc-ink background without the heading/lead overrides, so "Material and
   product documentation" rendered #14202A on #14202A — invisible. Treat it as
   an ink section for every text colour rule. */
.nc-sec-ink .nc-eyebrow,.nc-sec-cobalt .nc-eyebrow,.nc-docs .nc-eyebrow{color:#fff;border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.12)}
.nc-h1{font-size:clamp(34px,4.6vw,62px)}
.nc-h2{font-size:clamp(26px,3.1vw,40px)}
.nc-h3{font-size:clamp(19px,1.7vw,24px)}
.nc-lead{font-size:17px;line-height:1.68;color:var(--nc-slate)}
.nc-sec-ink .nc-lead,.nc-sec-cobalt .nc-lead,.nc-docs .nc-lead{color:rgba(255,255,255,.84)}
.nc-sec-ink h2,.nc-sec-cobalt h2,.nc-sec-ink h3,.nc-sec-cobalt h3,
.nc-docs h2,.nc-docs h3{color:#fff}
.nc-sec-desc{margin-top:14px}

/* ==========================================================================
   Buttons / tags
   ========================================================================== */
.nc-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  padding:13px 22px;border:var(--nc-bw) solid transparent;border-radius:0;
  font-size:14.5px;font-weight:700;letter-spacing:.01em;line-height:1.2;
  transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .18s ease;
}
.nc-btn i{font-size:14px}
.nc-btn-primary{background:var(--nc-cobalt);color:#fff}
.nc-btn-primary:hover{background:var(--nc-cobalt-2);color:#fff}
.nc-btn-ink{background:var(--nc-ink);color:#fff}
.nc-btn-ink:hover{background:#0B1319;color:#fff}
.nc-btn-timber{background:var(--nc-timber);color:#fff}
.nc-btn-timber:hover{background:var(--nc-timber-2);color:#fff}
.nc-btn-ghost{background:transparent;border-color:var(--nc-line);color:var(--nc-ink)}
.nc-btn-ghost:hover{border-color:var(--nc-ink);background:var(--nc-pulp);color:var(--nc-ink)}
.nc-btn-light{background:#fff;color:var(--nc-ink)}
.nc-btn-light:hover{background:var(--nc-pulp);color:var(--nc-ink)}
.nc-btn-outline-light{background:transparent;border-color:rgba(255,255,255,.5);color:#fff}
.nc-btn-outline-light:hover{background:rgba(255,255,255,.14);color:#fff;border-color:#fff}
.nc-btn-block{width:100%}
.nc-btn-sm{padding:9px 15px;font-size:13.5px}
/* container-level icon colouring must never bleed into solid buttons */
.nc-btn-primary i,.nc-btn-ink i,.nc-btn-timber i{color:#fff}
.nc-btn-light i{color:var(--nc-ink)}

.nc-tag{
  display:inline-flex;align-items:center;gap:7px;
  font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-variant:small-caps;
  padding:4px 9px;border:var(--nc-bw) solid var(--nc-line);color:var(--nc-slate);background:var(--nc-white);
}
.nc-tag-cobalt{border-color:var(--nc-cobalt-soft);background:var(--nc-cobalt-soft);color:var(--nc-cobalt-2)}
.nc-tag-timber{border-color:var(--nc-timber-soft);background:var(--nc-timber-soft);color:var(--nc-timber-2)}
.nc-tag-ink{border-color:var(--nc-ink);background:var(--nc-ink);color:#fff}

/* ==========================================================================
   Header — label strip + masthead with compartment tabs + inline search field
   ========================================================================== */
.nc-labelstrip{background:var(--nc-ink);color:#C6D0D8;font-size:12.5px}
.nc-ls-in{display:flex;align-items:center;gap:18px;min-height:40px;padding:7px 0}
.nc-ls-tags{display:flex;align-items:center;gap:8px;min-width:0;overflow:hidden}
.nc-ls-tags>span.nc-ls-lead{
  display:inline-flex;align-items:center;gap:7px;color:#fff;font-weight:700;letter-spacing:.02em;
  white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis;
}
.nc-ls-tags i{color:var(--nc-timber)}
.nc-ls-links{margin-left:auto;display:flex;align-items:center;gap:16px;flex:0 0 auto}
.nc-ls-links a{display:inline-flex;align-items:center;gap:7px;color:#C6D0D8;font-size:12.5px;white-space:nowrap}
.nc-ls-links a:hover{color:#fff}
.nc-ls-links i{color:var(--nc-timber)}

.nc-header{
  position:sticky;top:0;z-index:120;background:#fff;
  border-bottom:var(--nc-bw) solid var(--nc-line);
  transition:box-shadow .2s ease;
}
.nc-header.scrolled{box-shadow:0 6px 24px rgba(20,32,42,.09)}
.nc-header-in{
  display:flex;align-items:center;gap:20px;
  min-height:var(--nc-hd);padding:8px 0;
}
.nc-logo{display:flex;align-items:center;min-width:0;flex:0 0 auto;max-width:230px}
.nc-logo img{max-height:38px;width:auto}

/* compartment tabs ------------------------------------------------------- */
.nc-tabs{flex:1 1 auto;min-width:0}
.nc-tabs>ul{display:flex;align-items:stretch;gap:0;flex-wrap:nowrap}
.nc-tabs li{position:relative;display:flex;align-items:stretch}
.nc-tabs li>a{
  display:inline-flex;align-items:center;gap:7px;
  padding:13px 14px 15px;color:var(--nc-ink);font-size:14.5px;font-weight:600;
  border-right:var(--nc-bw) solid var(--nc-line-2);
  position:relative;white-space:nowrap;
}
.nc-tabs li:first-child>a{border-left:var(--nc-bw) solid var(--nc-line-2)}
.nc-tabs li>a::before{
  content:"";position:absolute;left:0;right:0;top:0;height:3px;background:transparent;transition:background-color .18s ease;
}
.nc-tabs li>a:hover,.nc-tabs li>a.on{color:var(--nc-cobalt);background:var(--nc-cobalt-soft)}
.nc-tabs li>a:hover::before,.nc-tabs li>a.on::before{background:var(--nc-cobalt)}
.nc-tabs li>a i{font-size:11px;color:var(--nc-mute)}
.nc-tabs li>a:hover i,.nc-tabs li>a.on i{color:var(--nc-cobalt)}
.nc-tabs li.nc-more>a{color:var(--nc-slate)}
/* the "Menu" tab is toggled by the fitNav() script. The author-level
   `display:flex` above would otherwise beat the UA [hidden] rule, so the tab
   stayed visible (and overflowed onto the search field) even when everything
   fitted on one line. */
.nc-tabs li[hidden]{display:none}

/* mega panel + hover bridge (the bridge is what stops the panel collapsing
   when the pointer crosses the gap between the tab and the panel) */
.nc-mega{
  display:none;position:absolute;top:calc(100% + 11px);left:0;min-width:270px;z-index:130;
  background:#fff;border:var(--nc-bw) solid var(--nc-line);
  box-shadow:0 22px 46px rgba(20,32,42,.16);
  padding:14px;
  grid-template-columns:1fr;
  gap:2px;
}
.nc-mega.nc-mega-wide{grid-template-columns:repeat(2,minmax(0,1fr));min-width:470px}
.nc-mega a{
  display:block;padding:9px 11px;font-size:14px;color:var(--nc-ink-2);
  border-left:3px solid var(--nc-line-2);
}
.nc-mega a:hover{background:var(--nc-cobalt-soft);color:var(--nc-cobalt-2);border-left-color:var(--nc-cobalt)}
.nc-mega a.nc-mega-l2{padding-left:24px;font-size:13.5px;color:var(--nc-slate);border-left-style:dashed}
.nc-mega a.nc-mega-all{
  margin-top:8px;border-left-color:var(--nc-cobalt);background:var(--nc-pulp);
  font-weight:700;color:var(--nc-cobalt-2);display:flex;align-items:center;justify-content:space-between;gap:8px;
}
.nc-tabs li:hover>.nc-mega,
.nc-tabs li:focus-within>.nc-mega{display:grid}
.nc-tabs li>a::after{
  content:"";display:none;position:absolute;left:0;right:0;top:100%;height:14px;background:transparent;
}
.nc-tabs li:hover>a::after,
.nc-tabs li:focus-within>a::after{display:block}

/* rows the script moved out of the bar into the "Menu" tab: they are plain
   dropdown rows, not bar tabs (the `.nc-tabs li>a` rules would otherwise give
   them tab paddings, right borders and a top accent bar) */
.nc-tabs .nc-more-sub li{display:block}
.nc-tabs .nc-more-sub li>a{
  display:block;padding:9px 11px;font-size:14px;font-weight:600;
  border-right:0;border-left:3px solid var(--nc-line-2);color:var(--nc-ink-2);
}
.nc-tabs .nc-more-sub li>a:hover,
.nc-tabs .nc-more-sub li>a.on{background:var(--nc-cobalt-soft);color:var(--nc-cobalt-2);border-left-color:var(--nc-cobalt)}
.nc-tabs .nc-more-sub li>a::before,
.nc-tabs .nc-more-sub li>a::after{display:none}
/* a collapsed row that still has children opens its own panel sideways */
.nc-tabs .nc-more-sub li>.nc-mega{top:0;left:auto;right:100%;min-width:230px}

/* tools cluster ---------------------------------------------------------- */
/* opaque + lifted so a nav item can never bleed over the search field, even
   during the first paint (before fitNav() has measured the row) */
.nc-tools{display:flex;align-items:center;gap:10px;flex:0 0 auto;position:relative;z-index:3;background:#fff}
.nc-searchfield{
  display:flex;align-items:stretch;flex:0 0 auto;
  border:var(--nc-bw) solid var(--nc-line);background:var(--nc-pulp-2);height:40px;
}
.nc-searchfield input{
  width:192px;min-width:0;border:0;background:transparent;padding:0 12px;font-size:14px;color:var(--nc-ink);outline:none;
}
.nc-searchfield input::placeholder{color:var(--nc-mute)}
.nc-searchfield button{
  width:42px;flex:0 0 auto;border:0;border-left:var(--nc-bw) solid var(--nc-line);
  background:var(--nc-ink);color:#fff;display:inline-flex;align-items:center;justify-content:center;
}
.nc-searchfield button:hover{background:var(--nc-cobalt)}
.nc-tool{
  width:40px;height:40px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;
  border:var(--nc-bw) solid var(--nc-line);background:#fff;color:var(--nc-ink);position:relative;
}
.nc-tool:hover{border-color:var(--nc-ink);background:var(--nc-pulp);color:var(--nc-ink)}
.nc-tool i{font-size:15px}
.nc-badge{
  position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;display:none;
  align-items:center;justify-content:center;background:var(--nc-cobalt);color:#fff;
  font-size:11px;font-weight:700;padding:0 4px;line-height:1;
}
.nc-header .nc-btn-cta{padding:11px 18px}
/* desktop shows the permanent search field only; the icon toggle and burger are mobile/tablet */
.nc-tool-search{display:none}
.nc-burger{display:none;flex-direction:column}
.nc-burger span{display:block;width:22px;height:2.5px;background:currentColor;margin:3px 0}

/* language switcher (label strip + mobile panel head) -------------------- */
.nc-lang{position:relative}
.nc-lang-btn{
  display:inline-flex;align-items:center;gap:8px;background:transparent;border:var(--nc-bw) solid rgba(255,255,255,.3);
  color:#D6DEE4;font-size:12.5px;padding:5px 10px;white-space:nowrap;
}
.nc-lang-btn:hover{border-color:#fff;color:#fff}
.nc-lang-btn img{display:block;flex:0 0 auto}
.nc-lang-btn i{font-size:10px;color:var(--nc-timber)}
.nc-lang-menu{
  display:none;position:absolute;top:calc(100% + 8px);right:0;min-width:168px;z-index:140;
  background:#fff;border:var(--nc-bw) solid var(--nc-line);padding:6px;
}
.nc-lang-btn[aria-expanded="true"]+.nc-lang-menu{display:block}
.nc-lang-menu a{display:flex;align-items:center;gap:9px;padding:9px 11px;font-size:13.5px;color:var(--nc-ink-2);white-space:nowrap}
.nc-lang-menu a:hover{background:var(--nc-cobalt-soft);color:var(--nc-cobalt-2)}
.nc-lang-menu a.on{color:var(--nc-cobalt);font-weight:700}
.nc-lang-panel .nc-lang-menu{top:calc(100% + 10px)}
.nc-lang-panel .nc-lang-btn{border-color:rgba(255,255,255,.4);color:#fff}

/* slide-down search panel (tablet / phone) */
.nc-searchpanel{
  display:none;border-top:var(--nc-bw) solid var(--nc-line);background:var(--nc-pulp-2);padding:14px 0;
}
.nc-searchpanel.open{display:block}
.nc-searchpanel form{display:flex;gap:10px}

/* full-screen segmented mobile panel */
.nc-mask{position:fixed;inset:0;background:rgba(20,32,42,.5);opacity:0;visibility:hidden;transition:opacity .22s ease,visibility .22s ease;z-index:180}
.nc-mask.open{opacity:1;visibility:visible}
.nc-panel{
  position:fixed;left:0;right:0;top:0;bottom:0;z-index:190;background:var(--nc-pulp-2);
  transform:translateY(-100%);transition:transform .26s cubic-bezier(.4,0,.2,1);
  display:flex;flex-direction:column;overflow:hidden;
}
.nc-panel.open{transform:translateY(0)}
.nc-panel-head{
  background:var(--nc-ink);color:#fff;padding:12px 0;flex:0 0 auto;
}
.nc-panel-head-in{display:flex;align-items:center;gap:12px}
.nc-panel-head img{max-height:32px;width:auto}
.nc-panel-head .nc-tool{background:transparent;border-color:rgba(255,255,255,.4);color:#fff;margin-left:auto}
.nc-panel-head .nc-tool:hover{background:rgba(255,255,255,.16);color:#fff}
.nc-panel-body{flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:16px 0 26px}
.nc-panel-search{margin-bottom:16px}
.nc-panel-search form{display:flex;gap:8px}
.nc-panel-seg{margin-bottom:14px;border:var(--nc-bw) solid var(--nc-line);background:#fff}
.nc-panel-seg>summary{
  list-style:none;cursor:pointer;padding:14px 16px;display:flex;align-items:center;gap:10px;
  font-family:var(--nc-head);font-size:15px;color:var(--nc-ink);
}
.nc-panel-seg>summary::-webkit-details-marker{display:none}
.nc-panel-seg>summary::after{content:"\203A";margin-left:auto;color:var(--nc-cobalt);font-size:19px;line-height:1;transform:rotate(90deg);transition:transform .2s ease}
.nc-panel-seg[open]>summary{background:var(--nc-cobalt-soft);color:var(--nc-cobalt-2)}
.nc-panel-seg[open]>summary::after{transform:rotate(-90deg)}
.nc-panel-seg ul{border-top:var(--nc-bw) solid var(--nc-line)}
.nc-panel-seg ul a{display:block;padding:11px 16px;font-size:14.5px;color:var(--nc-ink-2);border-bottom:var(--nc-bw) solid var(--nc-line-2)}
.nc-panel-seg ul a.nc-l2{padding-left:30px;font-size:13.5px;color:var(--nc-slate)}
.nc-panel-foot{flex:0 0 auto;padding:12px 0 calc(12px + env(safe-area-inset-bottom));border-top:var(--nc-bw) solid var(--nc-line);background:#fff;display:grid;gap:9px}
.nc-panel-foot .nc-btn{width:100%}
.nc-panel-contact{display:grid;gap:8px;margin:14px 0 0}
.nc-panel-contact a{display:flex;align-items:center;gap:10px;padding:12px 14px;border:var(--nc-bw) solid var(--nc-line);background:#fff;color:var(--nc-ink);font-size:14px;min-width:0;overflow-wrap:anywhere}
.nc-panel-contact i{color:var(--nc-cobalt)}

/* ==========================================================================
   Footer
   ========================================================================== */
.nc-footcta{background:var(--nc-pulp);border-top:var(--nc-bw) solid var(--nc-line);border-bottom:var(--nc-bw) solid var(--nc-line)}
.nc-footcta-in{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.nc-footcta>*{min-width:0}
.nc-footcta-in>a,.nc-footcta-in>button{
  display:flex;align-items:center;gap:14px;text-align:left;background:transparent;border:0;border-right:var(--nc-bw) solid var(--nc-line);
  padding:26px 26px;color:var(--nc-ink);font:inherit;
}
.nc-footcta-in>a:last-child,.nc-footcta-in>button:last-child{border-right:0}
.nc-footcta-in>a:hover,.nc-footcta-in>button:hover{background:var(--nc-white)}
.nc-footcta-in>a>i,.nc-footcta-in>button>i{
  width:46px;height:46px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;
  background:var(--nc-cobalt-soft);color:var(--nc-cobalt);font-size:18px;
}
.nc-footcta-in>a:hover>i,.nc-footcta-in>button:hover>i{background:var(--nc-cobalt);color:#fff}
.nc-footcta-in strong{display:block;font-family:var(--nc-head);font-size:15.5px;color:var(--nc-ink);line-height:1.25}
.nc-footcta-in span{display:block;font-size:13.5px;color:var(--nc-slate);margin-top:4px}

.nc-footer{background:var(--nc-ink);color:#AFBCC5;padding:64px 0 0}
.nc-foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:40px}
.nc-foot-grid>*{min-width:0}
.nc-foot-brand img{max-height:40px;width:auto}
.nc-foot-brand>p{margin:18px 0 20px;font-size:14px;line-height:1.7;color:#98A7B1}
.nc-foot-contact{display:grid;gap:13px}
.nc-foot-contact li{display:flex;gap:12px;align-items:flex-start;min-width:0}
.nc-foot-contact i{color:var(--nc-timber);font-size:15px;margin-top:3px;flex:0 0 auto}
.nc-foot-contact small{display:block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#7C8B96;font-variant:small-caps}
.nc-foot-contact a,.nc-foot-contact span{color:#D6DEE4;font-size:14px;overflow-wrap:anywhere}
.nc-foot-contact a:hover{color:#fff}
.nc-social{display:flex;gap:9px;margin-top:22px}
.nc-social a{
  width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;
  border:var(--nc-bw) solid rgba(255,255,255,.22);color:#D6DEE4;
}
.nc-social a:hover{background:var(--nc-cobalt);border-color:var(--nc-cobalt);color:#fff}
.nc-foot-col h4{
  font-family:var(--nc-head);font-size:12.5px;letter-spacing:.13em;text-transform:uppercase;
  color:#fff;font-variant:small-caps;margin-bottom:16px;padding-bottom:11px;border-bottom:var(--nc-bw) solid rgba(255,255,255,.16);
}
.nc-foot-col ul{display:grid;gap:9px}
.nc-foot-col ul a{color:#AFBCC5;font-size:14px}
.nc-foot-col ul a:hover{color:#fff}
.nc-foot-sub h4{font-family:var(--nc-head);font-size:12.5px;letter-spacing:.13em;text-transform:uppercase;color:#fff;font-variant:small-caps;margin-bottom:12px}
.nc-foot-sub>p{font-size:13.5px;color:#98A7B1;margin-bottom:14px;line-height:1.65}
.nc-subform{display:flex;border:var(--nc-bw) solid rgba(255,255,255,.24);background:rgba(255,255,255,.06)}
.nc-subform input{flex:1 1 auto;min-width:0;border:0;background:transparent;color:#fff;padding:11px 12px;font-size:14px;outline:none}
.nc-subform input::placeholder{color:#8C9BA5}
.nc-subform button{flex:0 0 auto;border:0;background:var(--nc-cobalt);color:#fff;padding:0 15px;font-size:13.5px;font-weight:700;display:inline-flex;align-items:center;gap:7px}
.nc-subform button:hover{background:#2A5EE8}
.nc-foot-bottom{
  margin-top:52px;border-top:var(--nc-bw) solid rgba(255,255,255,.14);padding:20px 0;
  display:flex;align-items:center;gap:18px;flex-wrap:wrap;font-size:13px;color:#8C9BA5;
}
.nc-foot-legal{margin-left:auto;display:flex;gap:16px;flex-wrap:wrap}
.nc-foot-legal a{color:#8C9BA5}
.nc-foot-legal a:hover{color:#fff}

/* floats / mobile bar / toast --------------------------------------------- */
.wa-float,.back-to-top{
  position:fixed;right:20px;z-index:150;width:48px;height:48px;display:inline-flex;
  align-items:center;justify-content:center;border:0;
}
.wa-float{bottom:88px;background:#25D366;color:#fff;font-size:22px}
.wa-float:hover{color:#fff;background:#1EB457}
.back-to-top{bottom:28px;background:var(--nc-ink);color:#fff;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}
.back-to-top.show{opacity:1;visibility:visible}
.back-to-top:hover{background:var(--nc-cobalt);color:#fff}
.nc-mobilebar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:160;background:#fff;border-top:var(--nc-bw) solid var(--nc-line);padding:10px 14px calc(10px + env(safe-area-inset-bottom));grid-template-columns:1fr 1fr;gap:10px}
.nc-toast{
  position:fixed;bottom:96px;left:50%;transform:translate(-50%,14px);z-index:210;
  display:flex;align-items:center;gap:12px;background:var(--nc-ink);color:#fff;
  padding:13px 18px;max-width:calc(100vw - 40px);box-shadow:0 14px 34px rgba(0,0,0,.24);
  opacity:0;transition:opacity .25s ease,transform .25s ease;
}
.nc-toast.on{opacity:1;transform:translate(-50%,0)}
.nc-toast i{color:#7FE0A8;font-size:17px}
.nc-toast strong{display:block;font-size:14px;color:#fff}
.nc-toast a{color:#9DC0FF;font-size:13px}
.nc-toast a:hover{color:#fff}

/* ==========================================================================
   Modal (inquiry) + forms
   ========================================================================== */
.nc-modal{position:fixed;inset:0;background:rgba(20,32,42,.62);z-index:220;display:none;padding:26px;overflow-y:auto}
.nc-modal.on{display:block}
.nc-modal-box{
  background:#fff;max-width:1000px;margin:0 auto;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
  position:relative;border:var(--nc-bw) solid var(--nc-line);
}
.nc-modal-box>*{min-width:0}
.nc-modal-close{
  position:absolute;top:0;right:0;width:44px;height:44px;border:0;border-left:var(--nc-bw) solid var(--nc-line);
  border-bottom:var(--nc-bw) solid var(--nc-line);background:#fff;color:var(--nc-ink);z-index:2;
}
.nc-modal-close:hover{background:var(--nc-pulp)}
.nc-modal-side{background:var(--nc-pulp);padding:34px 30px;display:flex;flex-direction:column;gap:20px;border-right:var(--nc-bw) solid var(--nc-line)}
.nc-modal-side h3{font-size:23px}
.nc-modal-side p{color:var(--nc-slate);font-size:14.5px;margin-top:12px}
.nc-modal-side ul{display:grid;gap:11px;margin-top:auto}
.nc-modal-side li{display:flex;gap:10px;font-size:14px;color:var(--nc-ink-2);min-width:0}
.nc-modal-side li i{color:var(--nc-cobalt);margin-top:3px;flex:0 0 auto}
.nc-modal-main{padding:34px 30px}
.nc-form{display:grid;gap:14px}
.nc-form-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.nc-form-2>*{min-width:0}
.nc-field{display:grid;gap:6px;min-width:0}
.nc-field label{font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--nc-slate);font-variant:small-caps}
.nc-field input[type=text],.nc-field input[type=email],.nc-field input[type=tel],.nc-field textarea,.nc-field select{
  border:var(--nc-bw) solid var(--nc-line);background:var(--nc-pulp-2);padding:11px 12px;font-size:14.5px;
  color:var(--nc-ink);outline:none;width:100%;
}
.nc-field input:focus,.nc-field textarea:focus,.nc-field select:focus{border-color:var(--nc-cobalt);background:#fff}
.nc-field textarea{resize:vertical}
.nc-note{display:flex;gap:9px;font-size:12.5px;color:var(--nc-mute);margin-top:12px}
.nc-note i{color:var(--nc-green);margin-top:2px}

.success-overlay{position:fixed;inset:0;background:rgba(20,32,42,.68);z-index:230;display:flex;align-items:center;justify-content:center;padding:24px}
.success-box{background:#fff;padding:38px 32px;text-align:center;max-width:400px;border:var(--nc-bw) solid var(--nc-line)}
.success-icon{width:62px;height:62px;margin:0 auto 18px;display:flex;align-items:center;justify-content:center;background:var(--nc-cobalt-soft);color:var(--nc-cobalt);font-size:26px}
.success-box h3{font-size:21px;margin-bottom:10px}
.success-box p{color:var(--nc-slate);font-size:14.5px;margin-bottom:20px}

/* ==========================================================================
   HOME — 01 hero (pulp compartment grid + modular crate board)
   ========================================================================== */
.nc-hero{position:relative;background:var(--nc-pulp);border-bottom:var(--nc-bw) solid var(--nc-line);overflow:hidden}
.nc-hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    repeating-linear-gradient(90deg,transparent 0 99px,rgba(20,32,42,.07) 99px 100px),
    repeating-linear-gradient(0deg,transparent 0 99px,rgba(20,32,42,.07) 99px 100px);
}
.nc-hero::after{
  content:"";position:absolute;right:-140px;top:-140px;width:520px;height:520px;border-radius:50%;
  background:radial-gradient(circle,var(--nc-cobalt-soft) 0%,rgba(231,236,253,0) 68%);pointer-events:none;
}
.nc-hero-in{
  position:relative;z-index:1;padding:70px 0 66px;
  display:grid;grid-template-columns:minmax(0,1.03fr) minmax(0,1fr);gap:52px;align-items:center;
}
.nc-hero-in>*{min-width:0}
.nc-hero-copy h1{font-size:clamp(36px,4.8vw,64px);margin-bottom:20px}
.nc-hero-copy h1 em{font-style:normal;color:var(--nc-cobalt);display:block}
.nc-hero-acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.nc-hero-meta{
  display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:26px;padding-top:22px;
  border-top:var(--nc-bw) solid var(--nc-line);font-size:13.5px;color:var(--nc-slate);
}
.nc-hero-meta span{display:inline-flex;align-items:center;gap:8px}
.nc-hero-meta i{color:var(--nc-timber)}

/* modular crate board — 2x2 cells, one of which is a numbered card */
.nc-board{display:grid;grid-template-columns:1fr 1fr;gap:0;background:#fff;border:var(--nc-bw) solid var(--nc-line)}
.nc-board>*{min-width:0}
.nc-board-cell{position:relative;overflow:hidden;border-right:var(--nc-bw) solid var(--nc-line);border-bottom:var(--nc-bw) solid var(--nc-line)}
.nc-board-cell:nth-child(2n){border-right:0}
.nc-board-cell:nth-last-child(-n+2){border-bottom:0}
.nc-board-cell figure{margin:0;aspect-ratio:1/1;background:var(--nc-pulp-2)}
/* the cells are square but uploaded artwork rarely is — `cover` sliced a quarter
   off the 4:3 illustrations (nc-fit.jpg / nc-about-01.jpg), so show the whole
   image. The cell's warm-paper background matches the artwork backdrop, so the
   side bands read as part of the plate instead of as letterboxing. */
.nc-board-cell figure img{width:100%;height:100%;object-fit:contain}
.nc-board-cell figcaption{
  position:absolute;left:0;right:0;bottom:0;padding:11px 13px;background:linear-gradient(transparent,rgba(20,32,42,.82));
  color:#fff;font-size:12.5px;font-weight:700;letter-spacing:.04em;
}
.nc-board-note{
  display:flex;flex-direction:column;justify-content:center;gap:6px;padding:20px;
  background:var(--nc-ink);color:#fff;border-right:var(--nc-bw) solid var(--nc-line);
}
.nc-board-note b{font-family:var(--nc-head);font-size:34px;line-height:1;color:#fff}
.nc-board-note small{font-size:12px;letter-spacing:.11em;text-transform:uppercase;color:#9DB0BC;font-variant:small-caps}
.nc-board-note span{font-size:13.5px;color:#C6D0D8;margin-top:6px}
.nc-board-note i{color:var(--nc-timber);font-size:18px;margin-bottom:4px}

/* ==========================================================================
   HOME — 02 assurance rail
   ========================================================================== */
.nc-assure{background:var(--nc-ink);color:#C6D0D8}
.nc-assure-in{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.nc-assure-in.nc-assure-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.nc-assure-in>*{min-width:0}
.nc-assure-cell{padding:26px 24px;border-right:var(--nc-bw) solid rgba(255,255,255,.14);display:flex;gap:14px;min-width:0}
.nc-assure-cell:last-child{border-right:0}
.nc-assure-cell i{color:var(--nc-timber);font-size:19px;margin-top:3px;flex:0 0 auto}
.nc-assure-cell strong{display:block;color:#fff;font-family:var(--nc-head);font-size:14.5px;line-height:1.25;margin-bottom:5px}
.nc-assure-cell span{font-size:13px;color:#9DB0BC;line-height:1.55}

/* ==========================================================================
   HOME — 03 products (compact square cards)
   ========================================================================== */
.nc-prodgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.nc-prodgrid>*{min-width:0}
.nc-card{background:#fff;border:var(--nc-bw) solid var(--nc-line);display:flex;flex-direction:column;position:relative;transition:border-color .18s ease,transform .18s ease}
.nc-card:hover{border-color:var(--nc-cobalt);transform:translateY(-3px)}
.nc-card::before{content:"";position:absolute;left:-1px;top:-1px;width:34px;height:3px;background:var(--nc-cobalt);opacity:0;transition:opacity .18s ease}
.nc-card:hover::before{opacity:1}
.nc-card-media{display:block;aspect-ratio:1/1;overflow:hidden;background:var(--nc-pulp-2);border-bottom:var(--nc-bw) solid var(--nc-line)}
.nc-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.nc-card:hover .nc-card-media img{transform:scale(1.04)}
.nc-card-body{padding:16px;display:flex;flex-direction:column;gap:9px;flex:1 1 auto;min-width:0}
.nc-card-body h3{font-size:16px;line-height:1.3}
.nc-card-body h3 a{color:var(--nc-ink)}
.nc-card-body h3 a:hover{color:var(--nc-cobalt)}
.nc-card-tags{display:flex;flex-wrap:wrap;gap:7px}
/* card action row. "View Details" + "Add to Quote List" are 284-288px wide as a
   pair, but a 4-up grid card is only 237-299px wide, so the row used to spill
   15-92px outside the card below 1366px. Let it wrap instead: both buttons share
   the line when there is room, otherwise each takes a full-width line. */
.nc-card-acts{margin-top:auto;padding-top:12px;border-top:var(--nc-bw) solid var(--nc-line-2);display:flex;flex-wrap:wrap;gap:9px;align-items:stretch}
.nc-card-acts>*{flex:1 1 auto;min-width:0}
/* long de / ru labels wrap inside the button instead of pushing it out */
.nc-card-acts .nc-btn{white-space:normal;text-align:center;overflow-wrap:anywhere}

/* ==========================================================================
   HOME — 04 categories (full-width space rows)
   ========================================================================== */
.nc-spacerows{display:grid;gap:0;border:var(--nc-bw) solid var(--nc-line);background:#fff}
.nc-spacerow{display:grid;grid-template-columns:210px minmax(0,1fr) auto;gap:24px;align-items:center;padding:20px 22px;border-bottom:var(--nc-bw) solid var(--nc-line);min-width:0}
.nc-spacerow:last-child{border-bottom:0}
.nc-spacerow:hover{background:var(--nc-pulp-2)}
.nc-spacerow>*{min-width:0}
.nc-spacerow-thumb{aspect-ratio:4/3;overflow:hidden;background:var(--nc-pulp);border:var(--nc-bw) solid var(--nc-line)}
.nc-spacerow-thumb img{width:100%;height:100%;object-fit:cover}
.nc-spacerow-body h3{font-size:19px;margin-bottom:6px}
.nc-spacerow-body h3 a{color:var(--nc-ink)}
.nc-spacerow-body h3 a:hover{color:var(--nc-cobalt)}
.nc-spacerow-body p{font-size:14px;color:var(--nc-slate)}
.nc-spacerow-go{flex:0 0 auto;display:inline-flex;align-items:center;gap:9px;font-size:13.5px;font-weight:700;color:var(--nc-cobalt);white-space:nowrap}

/* ==========================================================================
   HOME — 05 size & fit split
   ========================================================================== */
.nc-fit-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:52px;align-items:center}
.nc-fit-in>*{min-width:0}
.nc-fit-media{aspect-ratio:4/3;overflow:hidden;border:var(--nc-bw) solid var(--nc-line);background:var(--nc-pulp)}
.nc-fit-media img{width:100%;height:100%;object-fit:cover}
.nc-fit-list{display:grid;gap:0;margin-top:26px;border-top:var(--nc-bw) solid var(--nc-line)}
.nc-fit-item{display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;padding:17px 0;border-bottom:var(--nc-bw) solid var(--nc-line);min-width:0}
.nc-fit-item>*{min-width:0}
.nc-fit-item b{
  width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;
  background:var(--nc-ink);color:#fff;font-family:var(--nc-head);font-size:15px;
}
.nc-fit-item strong{display:block;font-family:var(--nc-head);font-size:15.5px;color:var(--nc-ink);margin-bottom:5px}
.nc-fit-item p{font-size:14px;color:var(--nc-slate)}

/* ==========================================================================
   HOME — 06 customisation cards
   ========================================================================== */
.nc-cust-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.nc-cust-grid>*{min-width:0}
.nc-cust-card{background:#fff;border:var(--nc-bw) solid var(--nc-line);padding:26px 24px 24px;position:relative}
.nc-cust-card i.nc-cust-ic{font-size:24px;color:var(--nc-cobalt);display:block;margin-bottom:16px}
.nc-cust-card h3{font-size:17.5px;margin-bottom:10px}
.nc-cust-card p{font-size:14px;color:var(--nc-slate)}
.nc-cust-card ul{display:grid;gap:8px;margin-top:15px;padding-top:15px;border-top:var(--nc-bw) solid var(--nc-line-2)}
.nc-cust-card li{display:flex;gap:9px;font-size:13.5px;color:var(--nc-ink-2);min-width:0}
.nc-cust-card li i{color:var(--nc-timber);font-size:12px;margin-top:4px;flex:0 0 auto}

/* ==========================================================================
   HOME — 07 programmes (solutions)
   ========================================================================== */
.nc-prog{background:var(--nc-pulp);position:relative}
.nc-prog::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background:
    repeating-linear-gradient(90deg,transparent 0 79px,rgba(20,32,42,.05) 79px 80px),
    repeating-linear-gradient(0deg,transparent 0 79px,rgba(20,32,42,.05) 79px 80px);
}
.nc-prog>.nc-wrap{position:relative;z-index:1}
.nc-prog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:var(--nc-bw) solid var(--nc-line);background:#fff}
.nc-prog-grid>*{min-width:0}
.nc-prog-card{padding:28px 26px;border-right:var(--nc-bw) solid var(--nc-line);border-bottom:var(--nc-bw) solid var(--nc-line)}
.nc-prog-card:nth-child(2n){border-right:0}
.nc-prog-card:nth-last-child(-n+2){border-bottom:0}
.nc-prog-card span.nc-prog-no{font-family:var(--nc-head);font-size:13px;color:var(--nc-timber);letter-spacing:.1em}
.nc-prog-card h3{font-size:19px;margin:10px 0 9px}
.nc-prog-card p{font-size:14px;color:var(--nc-slate)}
.nc-prog-card a.nc-prog-link{display:inline-flex;align-items:center;gap:8px;margin-top:14px;font-size:13.5px;font-weight:700;color:var(--nc-cobalt)}

/* ==========================================================================
   HOME — 08 manufacturing
   ========================================================================== */
.nc-mfg-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:52px;align-items:start}
.nc-mfg-in>*{min-width:0}
.nc-mfg-media{display:grid;grid-template-columns:1fr 1fr;gap:0;border:var(--nc-bw) solid var(--nc-line);background:#fff}
.nc-mfg-media>*{min-width:0}
.nc-mfg-media figure{margin:0;aspect-ratio:4/3;overflow:hidden;border-right:var(--nc-bw) solid var(--nc-line);border-bottom:var(--nc-bw) solid var(--nc-line);background:var(--nc-pulp-2)}
.nc-mfg-media figure:nth-child(2n){border-right:0}
.nc-mfg-media figure:nth-last-child(-n+2){border-bottom:0}
.nc-mfg-media img{width:100%;height:100%;object-fit:cover}
.nc-mfg-steps{display:grid;gap:0}
.nc-mfg-step{display:grid;grid-template-columns:56px minmax(0,1fr);gap:18px;padding:18px 0;border-bottom:var(--nc-bw) solid var(--nc-line);min-width:0}
.nc-mfg-step:first-child{border-top:var(--nc-bw) solid var(--nc-line)}
.nc-mfg-step>*{min-width:0}
.nc-mfg-step b{
  width:56px;height:34px;display:inline-flex;align-items:center;justify-content:center;
  background:var(--nc-cobalt-soft);color:var(--nc-cobalt-2);font-family:var(--nc-head);font-size:13px;letter-spacing:.06em;
}
.nc-mfg-step h3{font-size:15.5px;margin-bottom:5px}
.nc-mfg-step p{font-size:13.5px;color:var(--nc-slate)}

/* ==========================================================================
   HOME — 09 documentation + journal
   ========================================================================== */
.nc-docs{background:var(--nc-ink);color:#C6D0D8}
.nc-docs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.nc-docs-grid>*{min-width:0}
.nc-doc-card{background:rgba(255,255,255,.05);border:var(--nc-bw) solid rgba(255,255,255,.16);padding:22px 20px}
.nc-doc-card i{font-size:22px;color:var(--nc-timber);display:block;margin-bottom:14px}
.nc-doc-card h3{color:#fff;font-size:16.5px;margin-bottom:9px}
.nc-doc-card p{font-size:13.5px;color:#9DB0BC}
.nc-j-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.nc-j-grid>*{min-width:0}
.nc-j-card{background:#fff;border:var(--nc-bw) solid var(--nc-line);display:flex;flex-direction:column}
.nc-j-media{aspect-ratio:4/3;overflow:hidden;background:var(--nc-pulp);border-bottom:var(--nc-bw) solid var(--nc-line)}
.nc-j-media img{width:100%;height:100%;object-fit:cover}
.nc-j-body{padding:16px;display:flex;flex-direction:column;gap:9px;flex:1 1 auto;min-width:0}
.nc-j-body h3{font-size:16px;line-height:1.35}
.nc-j-body h3 a{color:var(--nc-ink)}
.nc-j-body h3 a:hover{color:var(--nc-cobalt)}
.nc-j-body p{font-size:13.5px;color:var(--nc-slate)}
.nc-j-meta{font-size:12.5px;color:var(--nc-mute);display:flex;gap:14px;flex-wrap:wrap}

/* ==========================================================================
   HOME — 10 FAQ + 11 CTA
   ========================================================================== */
.nc-faq-in{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:52px;align-items:start}
.nc-faq-in>*{min-width:0}
.nc-faq-list{display:grid;gap:0;border-top:var(--nc-bw) solid var(--nc-line)}
.nc-faq-item{border-bottom:var(--nc-bw) solid var(--nc-line)}
.nc-faq-q{
  width:100%;display:flex;align-items:flex-start;gap:14px;text-align:left;background:transparent;border:0;
  padding:18px 0;color:var(--nc-ink);font-family:var(--nc-head);font-size:16px;line-height:1.35;
}
.nc-faq-q::after{content:"\FF0B";margin-left:auto;color:var(--nc-cobalt);font-size:16px;line-height:1;flex:0 0 auto}
.nc-faq-item.open .nc-faq-q::after{content:"\FF0D"}
.nc-faq-q:hover{color:var(--nc-cobalt)}
.nc-faq-a{display:none;padding:0 0 20px;font-size:14.5px;color:var(--nc-slate);max-width:70ch}
.nc-faq-item.open .nc-faq-a{display:block}

.nc-cta{background:var(--nc-cobalt);color:#DCE4FF}
.nc-cta-in{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:44px;align-items:center}
.nc-cta-in>*{min-width:0}
.nc-cta h2{color:#fff}
.nc-cta p{color:rgba(255,255,255,.85);margin-top:14px;font-size:16px}
.nc-cta-acts{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}
.nc-cta .nc-btn-light i{color:var(--nc-cobalt)}
.nc-cta .nc-btn-outline-light i{color:#fff}

/* ==========================================================================
   INNER PAGES — shell
   ========================================================================== */
.nc-pghero{background:var(--nc-pulp);border-bottom:var(--nc-bw) solid var(--nc-line);position:relative;overflow:hidden}
.nc-pghero::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    repeating-linear-gradient(90deg,transparent 0 99px,rgba(20,32,42,.06) 99px 100px),
    repeating-linear-gradient(0deg,transparent 0 99px,rgba(20,32,42,.06) 99px 100px);
}
.nc-pghero-in{position:relative;z-index:1;padding:46px 0 42px;max-width:860px}
.nc-pghero h1{font-size:clamp(28px,3.4vw,44px);margin-bottom:14px}
/* inline arrow link used in toolbars and section heads */
.nc-link-arrow{display:inline-flex;align-items:center;gap:8px;font-size:13.5px;font-weight:700;color:var(--nc-cobalt)}
.nc-link-arrow:hover{color:var(--nc-cobalt-2)}
/* solution cover: dark split band (case summary | visual) */
.nc-solcover{background:var(--nc-ink);color:#C6D0D8;position:relative;overflow:hidden}
.nc-solcover-in{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:48px;align-items:center;padding:52px 0 54px}
.nc-solcover-in>*{min-width:0}
.nc-solcover h1{color:#fff;font-size:clamp(28px,3.4vw,44px);margin:14px 0}
.nc-solcover .nc-lead{color:rgba(255,255,255,.84)}
.nc-solcover .nc-crumb{color:#8C9BA5}
.nc-solcover .nc-crumb a{color:#8C9BA5}
.nc-solcover .nc-crumb a:hover{color:#fff}
.nc-solcover .nc-crumb span{color:#fff}
.nc-solcover .nc-btn-ghost{border-color:rgba(255,255,255,.5);color:#fff}
.nc-solcover .nc-btn-ghost i{color:#fff}
.nc-solcover .nc-btn-ghost:hover{background:rgba(255,255,255,.14);color:#fff}
.nc-solcover-media{aspect-ratio:4/3;overflow:hidden;border:var(--nc-bw) solid rgba(255,255,255,.2);background:var(--nc-pulp)}
.nc-solcover-media img{width:100%;height:100%;object-fit:cover}
/* company page: statement head + fact card, body with image plates */
.nc-about-head{background:var(--nc-pulp);border-bottom:var(--nc-bw) solid var(--nc-line)}
.nc-about-head-in{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(0,.72fr);gap:52px;align-items:start;padding:46px 0 50px}
.nc-about-head-in>*{min-width:0}
.nc-about-head h1{font-size:clamp(28px,3.4vw,44px);margin:14px 0}
.nc-about-facts{background:#fff;border:var(--nc-bw) solid var(--nc-line);padding:26px 24px;min-width:0}
.nc-about-facts h3{font-size:16px;margin-bottom:6px}
.nc-about-facts .nc-btn{margin-top:18px}
.nc-about-body{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:52px;align-items:start}
.nc-about-body>*{min-width:0}
.nc-about-plates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:var(--nc-bw) solid var(--nc-line);background:#fff}
.nc-about-plates figure{margin:0;aspect-ratio:1/1;overflow:hidden;background:var(--nc-pulp);border-right:var(--nc-bw) solid var(--nc-line);border-bottom:var(--nc-bw) solid var(--nc-line)}
.nc-about-plates figure:nth-child(2n){border-right:0}
.nc-about-plates figure:nth-child(3){grid-column:1/-1;aspect-ratio:2/1;border-right:0;border-bottom:0}
/* the plates hold 4:3 artwork (CMS uploads vary); `cover` cropped the sides of the
   square cells and the top/bottom of the wide cell, so show the upload in full and
   let the cell colour mat the leftover band (--nc-pulp matches the artwork ground) */
.nc-about-plates img{width:100%;height:100%;object-fit:contain}
.nc-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:9px;font-size:13px;color:var(--nc-slate);margin-bottom:16px}
.nc-crumb a{color:var(--nc-slate)}
.nc-crumb a:hover{color:var(--nc-cobalt)}
.nc-crumb i{font-size:10px;color:var(--nc-mute)}
.nc-crumb span{color:var(--nc-ink);font-weight:600}

.nc-pglayout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:44px;align-items:start}
.nc-pglayout>*{min-width:0}
.nc-aside{display:grid;gap:22px}
.nc-aside>*{min-width:0}
.nc-aside-card{background:var(--nc-pulp);border:var(--nc-bw) solid var(--nc-line);padding:22px 20px}
.nc-aside-card h3{font-size:16px;margin-bottom:10px}
.nc-aside-card p{font-size:13.5px;color:var(--nc-slate);margin-bottom:16px}
.nc-aside-list{display:grid;gap:0;border-top:var(--nc-bw) solid var(--nc-line)}
.nc-aside-list a{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:var(--nc-bw) solid var(--nc-line);font-size:14px;color:var(--nc-ink-2);min-width:0}
.nc-aside-list a:hover{color:var(--nc-cobalt)}
.nc-aside-list a i{color:var(--nc-cobalt);font-size:11px;flex:0 0 auto}
.nc-aside-list a.on{color:var(--nc-cobalt);font-weight:700}
.nc-aside-card.nc-aside-ink{background:var(--nc-ink);border-color:var(--nc-ink)}
.nc-aside-card.nc-aside-ink h3{color:#fff}
.nc-aside-card.nc-aside-ink p{color:#9DB0BC}
/* definition list inside a sidebar card (reading guide / glossary) */
.nc-glossary{margin:0;border-top:var(--nc-bw) solid var(--nc-line)}
.nc-glossary dt{
  font-family:var(--nc-head);font-size:13px;color:var(--nc-ink);padding:11px 0 3px;
  overflow-wrap:anywhere;word-break:break-word;
}
.nc-glossary dd{
  margin:0;padding:0 0 11px;font-size:13.5px;color:var(--nc-slate);line-height:1.6;
  border-bottom:var(--nc-bw) solid var(--nc-line-2);
  overflow-wrap:anywhere;word-break:break-word;
}
.nc-glossary dd:last-child{border-bottom:0;padding-bottom:0}

.nc-toolbar{
  display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:0 0 22px;margin-bottom:26px;
  border-bottom:var(--nc-bw) solid var(--nc-line);
}
.nc-toolbar-count{font-size:13.5px;color:var(--nc-slate)}
.nc-toolbar-count b{color:var(--nc-ink)}
.nc-toolbar-sort{margin-left:auto;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.nc-chiprow{display:flex;flex-wrap:wrap;gap:8px}
.nc-chip{
  display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border:var(--nc-bw) solid var(--nc-line);
  background:#fff;font-size:13px;color:var(--nc-ink-2);
}
.nc-chip:hover{border-color:var(--nc-cobalt);color:var(--nc-cobalt)}
.nc-chip.on{background:var(--nc-cobalt);border-color:var(--nc-cobalt);color:#fff}

/* ==========================================================================
   Product list / detail
   ========================================================================== */
.nc-listgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.nc-listgrid>*{min-width:0}
.nc-listcta{margin-top:34px;border:var(--nc-bw) solid var(--nc-line);background:var(--nc-pulp);padding:30px 28px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:26px;align-items:center}
.nc-listcta>*{min-width:0}
.nc-listcta h3{font-size:21px;margin-bottom:8px}
.nc-listcta p{font-size:14px;color:var(--nc-slate)}

/* --- item header bar (product / article detail) -------------------------- */
.nc-itemhead{background:var(--nc-pulp);border-bottom:var(--nc-bw) solid var(--nc-line)}
.nc-itemhead-in{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:16px 0}
.nc-itemhead .nc-crumb{margin-bottom:0}
.nc-itemhead-meta{margin-left:auto;display:flex;flex-wrap:wrap;align-items:center;gap:18px;font-size:12.5px;color:var(--nc-slate)}
.nc-itemhead-meta span{display:inline-flex;align-items:center;gap:7px;min-width:0;overflow-wrap:anywhere}
.nc-itemhead-meta i{color:var(--nc-timber);font-size:11px;flex:0 0 auto}

/* --- two-column ledger inside a panel box ------------------------------- */
.nc-check-list{display:grid;gap:11px;margin-top:14px}
.nc-check-list li{display:flex;gap:10px;font-size:14px;color:var(--nc-ink-2);min-width:0}
.nc-check-list li i{color:var(--nc-cobalt);font-size:12px;margin-top:4px;flex:0 0 auto}

/* --- prev / next pair under an item ------------------------------------- */
.nc-pager2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-top:34px;border:var(--nc-bw) solid var(--nc-line);background:#fff}
.nc-pager2>*{min-width:0}
.nc-pager2-item{display:flex;align-items:center;gap:10px;padding:16px 18px;border-right:var(--nc-bw) solid var(--nc-line);min-width:0;font-size:14px}
.nc-pager2-item:last-child{border-right:0}
.nc-pager2-next{justify-content:flex-end;text-align:right}
.nc-pager2-item>a{display:inline-flex;align-items:center;gap:9px;font-weight:700;color:var(--nc-cobalt);min-width:0;overflow-wrap:anywhere}
.nc-pager2-empty{display:inline-flex;align-items:center;gap:9px;color:var(--nc-mute);font-size:13px}

.nc-pdp{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:44px;align-items:start}
.nc-pdp>*{min-width:0}
.nc-pdp-gallery{border:var(--nc-bw) solid var(--nc-line);background:#fff}
/* the plate shows the whole upload instead of cropping it to the square frame */
.nc-pdp-main{aspect-ratio:1/1;overflow:hidden;background:#fff;border-bottom:var(--nc-bw) solid var(--nc-line)}
.nc-pdp-main img{width:100%;height:100%;object-fit:contain}
/* thumbnail switcher: a padded mat of framed tiles. Edge-to-edge hairline cells
   read as one continuous picture and left a short last row looking broken, so the
   tiles are now separate framed plates with a clear active state. */
.nc-pdp-thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:10px;background:var(--nc-pulp-2)}
.nc-pdp-thumbs>*{min-width:0}
.nc-pdp-thumbs button{
  display:block;width:100%;aspect-ratio:1/1;padding:0;cursor:pointer;
  border:var(--nc-bw) solid var(--nc-line);background:#fff;overflow:hidden;
  opacity:.68;transition:opacity .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.nc-pdp-thumbs button:hover{opacity:1;border-color:var(--nc-cobalt)}
.nc-pdp-thumbs button.on{opacity:1;border-color:var(--nc-cobalt);box-shadow:inset 0 0 0 1px var(--nc-cobalt)}
.nc-pdp-thumbs button:focus-visible{outline:2px solid var(--nc-cobalt);outline-offset:2px}
.nc-pdp-thumbs img{width:100%;height:100%;object-fit:cover;display:block}
.nc-pdp-info h1{font-size:clamp(26px,2.8vw,36px);margin-bottom:14px}
.nc-pdp-trust{display:grid;gap:10px;margin:22px 0;padding:20px 0;border-top:var(--nc-bw) solid var(--nc-line);border-bottom:var(--nc-bw) solid var(--nc-line)}
.nc-pdp-trust li{display:flex;gap:11px;font-size:14px;color:var(--nc-ink-2);min-width:0}
.nc-pdp-trust i{color:var(--nc-cobalt);margin-top:3px;flex:0 0 auto}
.nc-pdp-acts{display:flex;flex-wrap:wrap;gap:12px}
.nc-pdp-detail{margin-top:52px;display:grid;grid-template-columns:minmax(0,1fr);gap:0}
.nc-pdp-detail>*{min-width:0}
.nc-pdp-spec{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:var(--nc-bw) solid var(--nc-line);background:#fff;margin-top:22px}
.nc-pdp-spec>*{min-width:0}
.nc-pdp-spec div{padding:14px 16px;border-bottom:var(--nc-bw) solid var(--nc-line-2);border-right:var(--nc-bw) solid var(--nc-line-2);font-size:14px;min-width:0}
.nc-pdp-spec div:nth-child(2n){border-right:0}
.nc-pdp-spec dt{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--nc-mute);font-variant:small-caps}
.nc-pdp-spec dd{margin:5px 0 0;color:var(--nc-ink)}
.nc-pdp-source{margin-top:52px}
.nc-pdp-source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.nc-pdp-source-grid>*{min-width:0}
.nc-pdp-source-card{border:var(--nc-bw) solid var(--nc-line);background:#fff;padding:22px 20px}
.nc-pdp-source-card h3{font-size:16.5px;margin-bottom:9px}
.nc-pdp-source-card p{font-size:13.5px;color:var(--nc-slate)}
.nc-relgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.nc-relgrid>*{min-width:0}
.nc-share{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:20px 0;margin-top:34px;border-top:var(--nc-bw) solid var(--nc-line)}
.nc-share span{font-size:13px;color:var(--nc-slate);font-weight:600}
.nc-share a{
  width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;
  border:var(--nc-bw) solid var(--nc-line);color:var(--nc-ink-2);background:#fff;
}
.nc-share a:hover{background:var(--nc-cobalt);border-color:var(--nc-cobalt);color:#fff}

/* ==========================================================================
   Article / certificate / solution lists
   ========================================================================== */
.nc-arow-list{display:grid;gap:0;border-top:var(--nc-bw) solid var(--nc-line)}
.nc-arow{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:22px;align-items:center;padding:20px 0;border-bottom:var(--nc-bw) solid var(--nc-line);min-width:0}
.nc-arow>*{min-width:0}
.nc-arow-media{aspect-ratio:4/3;overflow:hidden;background:var(--nc-pulp);border:var(--nc-bw) solid var(--nc-line)}
.nc-arow-media img{width:100%;height:100%;object-fit:cover}
.nc-arow h3{font-size:17.5px;margin-bottom:7px}
.nc-arow h3 a{color:var(--nc-ink)}
.nc-arow h3 a:hover{color:var(--nc-cobalt)}
.nc-arow p{font-size:13.5px;color:var(--nc-slate)}
.nc-arow-acts{display:flex;align-items:flex-start;gap:10px;flex:0 0 auto}
.nc-arow-acts>*{flex:0 0 auto}
.nc-arow-noimg{grid-template-columns:minmax(0,1fr) auto}
.nc-arow-noimg>p,.nc-arow-noimg .nc-arow-body{min-width:0}

.nc-cergrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.nc-cergrid>*{min-width:0}
.nc-cercard{background:#fff;border:var(--nc-bw) solid var(--nc-line);display:flex;flex-direction:column}
.nc-cercard figure{margin:0;aspect-ratio:4/3;background:var(--nc-pulp-2);border-bottom:var(--nc-bw) solid var(--nc-line);display:flex;align-items:center;justify-content:center;overflow:hidden}
.nc-cercard figure img{width:100%;height:100%;object-fit:contain;padding:14px}
.nc-cercard div{padding:16px;min-width:0}
.nc-cercard h3{font-size:16px;line-height:1.35}
.nc-cercard h3 a{color:var(--nc-ink)}
.nc-cercard h3 a:hover{color:var(--nc-cobalt)}

.nc-adetail{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
.nc-adetail>*{min-width:0}
.nc-adetail-head{border-bottom:var(--nc-bw) solid var(--nc-line);padding-bottom:24px;margin-bottom:30px}
.nc-adetail-meta{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;color:var(--nc-slate);margin-top:14px}
.nc-adetail-cover{aspect-ratio:2/1;overflow:hidden;border:var(--nc-bw) solid var(--nc-line);background:var(--nc-pulp);margin-bottom:30px}
.nc-adetail-cover img{width:100%;height:100%;object-fit:cover}
.nc-bodyc{max-width:78ch}

/* ==========================================================================
   Single pages / legal / contact / catalog / inquiry / search / tags
   ========================================================================== */
.nc-cols2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;align-items:start}
.nc-cols2>*{min-width:0}
.nc-cols3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.nc-cols3>*{min-width:0}
.nc-panel-box{border:var(--nc-bw) solid var(--nc-line);background:#fff;padding:28px 26px;min-width:0}
.nc-panel-box h2{font-size:20px;margin-bottom:12px}
.nc-panel-box h3{font-size:16.5px;margin:22px 0 10px}
.nc-panel-box p{font-size:14.5px;color:var(--nc-slate);margin-bottom:12px}
.nc-panel-box.nc-panel-pulp{background:var(--nc-pulp)}
.nc-panel-box.nc-panel-ink{background:var(--nc-ink);border-color:var(--nc-ink);color:#C6D0D8}
.nc-panel-box.nc-panel-ink h2,.nc-panel-box.nc-panel-ink h3{color:#fff}
.nc-panel-box.nc-panel-ink p{color:#9DB0BC}

.nc-numlist{display:grid;gap:0;border-top:var(--nc-bw) solid var(--nc-line);margin-top:8px}
.nc-numlist li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;padding:17px 0;border-bottom:var(--nc-bw) solid var(--nc-line);min-width:0}
.nc-numlist li>*{min-width:0}
.nc-numlist b{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;background:var(--nc-cobalt-soft);color:var(--nc-cobalt-2);font-family:var(--nc-head);font-size:14px}
.nc-numlist strong{display:block;font-family:var(--nc-head);font-size:15.5px;color:var(--nc-ink);margin-bottom:5px}
.nc-numlist p{font-size:13.5px;color:var(--nc-slate)}

.nc-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:var(--nc-bw) solid var(--nc-line);background:#fff}
.nc-contact-grid>*{min-width:0}
.nc-contact-tile{display:flex;gap:14px;padding:22px 20px;border-right:var(--nc-bw) solid var(--nc-line);border-bottom:var(--nc-bw) solid var(--nc-line);min-width:0}
.nc-contact-tile:nth-child(2n){border-right:0}
.nc-contact-tile:nth-last-child(-n+2){border-bottom:0}
.nc-contact-tile i{width:42px;height:42px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;background:var(--nc-cobalt-soft);color:var(--nc-cobalt);font-size:16px}
.nc-contact-tile small{display:block;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--nc-mute);font-variant:small-caps;margin-bottom:4px}
.nc-contact-tile a,.nc-contact-tile span{font-size:14.5px;color:var(--nc-ink);overflow-wrap:anywhere}
.nc-contact-tile a:hover{color:var(--nc-cobalt)}

.nc-map{margin-top:26px;border:var(--nc-bw) solid var(--nc-line);background:var(--nc-pulp)}
.nc-map iframe{width:100%;height:330px;display:block}

.nc-quote-list{display:grid;gap:0;border-top:var(--nc-bw) solid var(--nc-line)}
.nc-quote-row{display:grid;grid-template-columns:96px minmax(0,1fr) 112px 120px;gap:18px;align-items:center;padding:18px 0;border-bottom:var(--nc-bw) solid var(--nc-line);min-width:0}
.nc-quote-row>*{min-width:0}
.nc-quote-media{aspect-ratio:1/1;overflow:hidden;border:var(--nc-bw) solid var(--nc-line);background:var(--nc-pulp-2)}
.nc-quote-media img{width:100%;height:100%;object-fit:cover}
.nc-quote-row h3{font-size:15.5px;line-height:1.35}
.nc-quote-row h3 a{color:var(--nc-ink)}
/* placement markers: desktop grid auto-flow, phone re-arranged in the 600px query */
.nc-quote-title,.nc-quote-qty,.nc-quote-del{min-width:0}
.nc-quote-qty{display:inline-flex;align-items:center;gap:6px}
.nc-quote-del{display:inline-flex;justify-content:flex-end}
/* landscape / wide media pairs collapse on phones */
.nc-landscape{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:var(--nc-bw) solid var(--nc-line);background:#fff}
.nc-landscape>*{min-width:0}
.nc-landscape .nc-panel-box{border:0}
.nc-landscape .nc-panel-box:first-child{border-right:var(--nc-bw) solid var(--nc-line)}
.nc-plate{margin:0;aspect-ratio:4/3;overflow:hidden;background:var(--nc-pulp-2);border-right:var(--nc-bw) solid var(--nc-line)}
.nc-plate:last-child{border-right:0}
.nc-plate img{width:100%;height:100%;object-fit:cover}
.nc-chiprow-sub{margin-top:12px}
.nc-clist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.nc-clist>*{min-width:0}
.nc-empty{border:var(--nc-bw) dashed var(--nc-line);background:var(--nc-pulp-2);padding:56px 24px;text-align:center;color:var(--nc-slate)}
[data-empty-guard]>.nc-empty{grid-column:1/-1}
.nc-sec-ink [data-empty-guard]>.nc-empty,.nc-docs [data-empty-guard]>.nc-empty{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.22);color:#9DB0BC}
.nc-empty i{font-size:30px;color:var(--nc-mute);display:block;margin-bottom:14px}
.nc-empty h3{font-size:18px;margin-bottom:8px}
.nc-empty p{font-size:14px;margin-bottom:18px}

.nc-result{border:var(--nc-bw) solid var(--nc-line);background:#fff;padding:20px;display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:20px;align-items:center;margin-bottom:16px;min-width:0}
.nc-result>*{min-width:0}
.nc-result-media{aspect-ratio:4/3;overflow:hidden;background:var(--nc-pulp);border:var(--nc-bw) solid var(--nc-line)}
.nc-result-media img{width:100%;height:100%;object-fit:cover}
.nc-result h3{font-size:17px;margin-bottom:7px}
.nc-result h3 a{color:var(--nc-ink)}
.nc-result h3 a:hover{color:var(--nc-cobalt)}
.nc-result p{font-size:13.5px;color:var(--nc-slate)}
.nc-result-acts{display:flex;align-items:flex-start;gap:10px;flex:0 0 auto}
.nc-result-acts>*{flex:0 0 auto}
.nc-result-noimg{grid-template-columns:minmax(0,1fr) auto}

.nc-tagcloud{display:flex;flex-wrap:wrap;gap:10px}
.nc-tagcloud a{padding:8px 14px;border:var(--nc-bw) solid var(--nc-line);background:#fff;font-size:13.5px;color:var(--nc-ink-2)}
.nc-tagcloud a:hover{border-color:var(--nc-cobalt);color:var(--nc-cobalt)}
.nc-tagcloud a.on{background:var(--nc-cobalt);border-color:var(--nc-cobalt);color:#fff}
/* inline label for a tag row (article detail: "Tags:" + keyword pills) */
.nc-tagcloud-lead{font-size:13px;font-weight:600;color:var(--nc-slate);align-self:center;flex:0 0 auto}

.nc-legal{max-width:80ch;min-width:0}
.nc-legal h2{font-size:20px;margin:30px 0 12px}
.nc-legal h3{font-size:16.5px;margin:22px 0 10px}
.nc-legal p,.nc-legal li{font-size:14.8px;color:var(--nc-ink-2);line-height:1.75;margin-bottom:12px}
.nc-legal ul{list-style:disc;padding-left:20px}
.nc-legal ol{list-style:decimal;padding-left:20px}

/* rich-text content ------------------------------------------------------- */
.detail-content{min-width:0;font-size:15px;line-height:1.78;color:var(--nc-ink-2);overflow-wrap:anywhere}
.detail-content>*{max-width:100%}
.detail-content h2{font-size:21px;margin:28px 0 12px}
.detail-content h3{font-size:17.5px;margin:24px 0 10px}
.detail-content p{margin-bottom:14px}
.detail-content ul{list-style:disc;padding-left:20px;margin-bottom:14px}
.detail-content ol{list-style:decimal;padding-left:20px;margin-bottom:14px}
.detail-content img{height:auto}
.detail-content table{
  display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;
  border-collapse:collapse;margin:18px 0;font-size:14px;
}
.detail-content table th,.detail-content table td{
  border:var(--nc-bw) solid var(--nc-line);padding:11px 14px;text-align:left;vertical-align:top;color:var(--nc-ink-2);
}
.detail-content table th{background:var(--nc-pulp);font-family:var(--nc-head);color:var(--nc-ink);white-space:nowrap}
.detail-content table thead th{font-size:13px;letter-spacing:.03em}
.detail-content blockquote{
  margin:18px 0;padding:16px 20px;background:var(--nc-pulp);border-left:4px solid var(--nc-cobalt);color:var(--nc-ink-2);
}
.detail-content a{color:var(--nc-cobalt);text-decoration:underline;text-underline-offset:2px}

.nc-tablewrap{margin:20px 0;position:relative;min-width:0;max-width:100%}
.nc-tablewrap-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;min-width:0;max-width:100%}
.nc-tablewrap-scroll:focus-visible{outline:2px solid var(--nc-cobalt);outline-offset:3px}
.nc-tablehint{display:none;align-items:center;gap:8px;font-size:12.5px;color:var(--nc-mute);margin-top:10px}
.nc-tablewrap.is-scrollable .nc-tablehint{display:flex}
.nc-tablewrap.is-scrollable::after{
  content:"";position:absolute;top:0;right:0;bottom:0;width:38px;pointer-events:none;
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(20,32,42,.10));
}
.nc-tablewrap.at-end::after{display:none}

/* ==========================================================================
   Pagination  (CMS core emits <i class="iconfont icon-arrow5/6">)
   ========================================================================== */
.pagination{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:36px}
.pagination a,.pagination span>a,.pagination span.active a,.pagination .pageinfo{
  display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;
  border:var(--nc-bw) solid var(--nc-line);background:#fff;color:var(--nc-ink-2);font-size:14px;line-height:1;
}
.pagination a:hover{border-color:var(--nc-cobalt);color:var(--nc-cobalt)}
.pagination span.active a{border-color:var(--nc-cobalt);background:var(--nc-cobalt);color:#fff}
.pagination a:focus-visible{outline:2px solid var(--nc-cobalt);outline-offset:2px}
.pagination i.iconfont{font-style:normal;line-height:1}
.pagination i.icon-arrow5::before{content:"\2039";font-size:18px}
.pagination i.icon-arrow6::before{content:"\203A";font-size:18px}
.pagination .pageinfo{border:0;background:transparent;color:var(--nc-slate);min-width:0}

/* ==========================================================================
   Reveal / motion
   ========================================================================== */
.nc-reveal{opacity:0;transform:translateY(16px);transition:opacity .5s ease,transform .5s ease}
.nc-reveal.in{opacity:1;transform:none}
.nc-stagger>*{opacity:0;transform:translateY(14px) scale(.985);transition:opacity .45s ease,transform .45s ease}
.nc-stagger.in>*{opacity:1;transform:none}
.nc-stagger.in>*:nth-child(1){transition-delay:.02s}
.nc-stagger.in>*:nth-child(2){transition-delay:.07s}
.nc-stagger.in>*:nth-child(3){transition-delay:.12s}
.nc-stagger.in>*:nth-child(4){transition-delay:.17s}
.nc-stagger.in>*:nth-child(5){transition-delay:.22s}
.nc-stagger.in>*:nth-child(6){transition-delay:.27s}
.nc-stagger.in>*:nth-child(7){transition-delay:.32s}
.nc-stagger.in>*:nth-child(8){transition-delay:.37s}

/* ==========================================================================
   Cookie bar
   ========================================================================== */
.nc-cookie{display:none;position:fixed;left:16px;right:16px;bottom:16px;z-index:200;background:var(--nc-ink);color:#C6D0D8;border:var(--nc-bw) solid #2B3A46;padding:18px 20px;gap:16px;align-items:center;grid-template-columns:minmax(0,1fr) auto}
.nc-cookie.show{display:grid}
.nc-cookie p{font-size:13.5px;min-width:0}
.nc-cookie p a{color:#9DC0FF;text-decoration:underline}
.nc-cookie-acts{display:flex;gap:10px;flex:0 0 auto}
/* the bar paints --nc-ink, so the default ghost button (ink text on ink) was
   invisible until hover flipped its background; make it a light-on-dark ghost */
.nc-cookie .nc-btn-ghost{border-color:rgba(255,255,255,.45);color:#fff}
.nc-cookie .nc-btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.14);color:#fff}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
/* Tighter tab gutters keep the six columns on one line for as long as
   possible instead of collapsing them into the "Menu" tab. This has to kick in
   well above the 1200px toolbar breakpoint, otherwise lowering the window from
   1201px to 1200px would suddenly make more columns fit than at 1201px. */
@media (max-width:1360px){
  .nc-tabs li>a{padding:13px 9px 15px;font-size:14px}
}

@media (max-width:1200px){
  .nc-ls-tags>span.nc-ls-lead{display:none}
  .nc-searchfield input{width:150px}
  .nc-assure-in{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nc-assure-cell:nth-child(2n){border-right:0}
  .nc-assure-cell:nth-child(-n+2){border-bottom:var(--nc-bw) solid rgba(255,255,255,.14)}  .nc-foot-grid{grid-template-columns:1fr 1fr;gap:34px}
}

@media (max-width:1024px){
  .nc-searchfield{display:none}
  .nc-tabs{display:none}
  .nc-tool-search{display:inline-flex}
  .nc-burger{display:inline-flex}
  /* with the tab row gone the logo and the tool cluster were both glued to the
     left edge, leaving a gap at the right; the tools take that free space and
     the logo may shrink instead of pushing the buttons off the row */
  .nc-logo{flex:0 1 auto}
  .nc-logo img{max-width:100%;object-fit:contain;object-position:left center}
  .nc-tools{margin-left:auto}
  .nc-hero-in,.nc-fit-in,.nc-mfg-in,.nc-faq-in,.nc-cta-in{grid-template-columns:minmax(0,1fr);gap:38px}
  .nc-cta-acts{justify-content:flex-start}
  .nc-pglayout{grid-template-columns:minmax(0,1fr);gap:34px}
  .nc-pdp{grid-template-columns:minmax(0,1fr);gap:32px}
  .nc-prodgrid,.nc-listgrid,.nc-cergrid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .nc-relgrid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .nc-modal-box{grid-template-columns:minmax(0,1fr)}
  .nc-modal-side{border-right:0;border-bottom:var(--nc-bw) solid var(--nc-line)}
  .nc-listcta{grid-template-columns:minmax(0,1fr)}
  .nc-spacerow{grid-template-columns:180px minmax(0,1fr);gap:20px}
  .nc-spacerow-go{grid-column:2;justify-self:start}
}

@media (max-width:900px){
  .nc-wrap{width:auto;margin:0 20px}
  /* bottom inquiry bar: reserve space so it never covers footer content */
  .nc-mobilebar{display:grid}
  body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
  .nc-desk-cta{display:none}
  .wa-float{bottom:130px;right:16px}
  .back-to-top{bottom:68px;right:16px}
  .nc-sec{padding:58px 0}
  .nc-sec-tight{padding:40px 0}
  .nc-head,.nc-head-c{margin-bottom:30px}
  /* three-cell assurance ledger stacks on phones */
  .nc-assure-in.nc-assure-3{grid-template-columns:minmax(0,1fr)}
  .nc-assure-in.nc-assure-3 .nc-assure-cell{border-right:0;border-bottom:var(--nc-bw) solid rgba(255,255,255,.14)}
  .nc-assure-in.nc-assure-3 .nc-assure-cell:last-child{border-bottom:0}
  .nc-prodgrid,.nc-listgrid,.nc-cergrid,.nc-j-grid,.nc-docs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nc-relgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nc-cust-grid{grid-template-columns:1fr}
  .nc-cols3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nc-cols2{grid-template-columns:minmax(0,1fr);gap:28px}
  .nc-prog-grid{grid-template-columns:minmax(0,1fr)}
  .nc-prog-card{border-right:0}
  .nc-prog-card:nth-child(2n){border-right:0}
  .nc-prog-card:nth-last-child(-n+2){border-bottom:var(--nc-bw) solid var(--nc-line)}
  .nc-prog-card:last-child{border-bottom:0}
  .nc-contact-grid{grid-template-columns:minmax(0,1fr)}
  .nc-contact-tile{border-right:0}
  .nc-contact-tile:nth-last-child(-n+2){border-bottom:var(--nc-bw) solid var(--nc-line)}
  .nc-contact-tile:last-child{border-bottom:0}
  .nc-footcta-in{grid-template-columns:minmax(0,1fr)}
  .nc-footcta-in>a,.nc-footcta-in>button{border-right:0;border-bottom:var(--nc-bw) solid var(--nc-line)}
  .nc-footcta-in>a:last-child,.nc-footcta-in>button:last-child{border-bottom:0}
  .nc-foot-grid{grid-template-columns:1fr 1fr;gap:30px}
  .nc-itemhead-meta{margin-left:0;gap:12px}
  .nc-solcover-in{grid-template-columns:minmax(0,1fr);gap:32px;padding:40px 0 42px}
  .nc-about-head-in,.nc-about-body{grid-template-columns:minmax(0,1fr);gap:32px;padding-top:0}
  .nc-about-head-in{padding:36px 0 38px}
  .nc-about-plates figure:nth-child(3){aspect-ratio:16/9}
  .nc-landscape{grid-template-columns:minmax(0,1fr)}
  .nc-landscape>*{border-right:0}
  .nc-landscape .nc-panel-box{border:0;border-bottom:var(--nc-bw) solid var(--nc-line)}
  .nc-landscape .nc-panel-box:last-child{border-bottom:0}
  .nc-landscape .nc-panel-box:first-child{border-right:0}
  .nc-plate{border-right:0;border-bottom:var(--nc-bw) solid var(--nc-line);aspect-ratio:16/9}
  .nc-plate:last-child{border-bottom:0}
  .nc-pdp-source-grid{grid-template-columns:minmax(0,1fr)}
  .nc-pdp-spec{grid-template-columns:minmax(0,1fr)}
  .nc-pdp-spec div{border-right:0}
  .nc-arow{grid-template-columns:150px minmax(0,1fr);gap:18px}
  .nc-arow-acts{grid-column:2;justify-self:start}
  .nc-result{grid-template-columns:130px minmax(0,1fr);gap:18px}
  .nc-result-acts{grid-column:2;justify-self:start}
  .nc-quote-row{grid-template-columns:80px minmax(0,1fr);gap:14px}
  .nc-clist{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nc-board{grid-template-columns:1fr 1fr}
  .nc-mfg-media{grid-template-columns:1fr 1fr}
  .nc-foot-bottom{flex-direction:column;align-items:flex-start;gap:12px}
  .nc-foot-legal{margin-left:0}
}

@media (max-width:600px){
  .nc-sec{padding:44px 0}
  .nc-prodgrid,.nc-listgrid,.nc-cergrid,.nc-j-grid,.nc-docs-grid,.nc-relgrid,.nc-clist{grid-template-columns:minmax(0,1fr)}
  .nc-cols3{grid-template-columns:minmax(0,1fr)}
  .nc-foot-grid{grid-template-columns:minmax(0,1fr);gap:28px}
  .nc-form-2{grid-template-columns:minmax(0,1fr)}
  .nc-mfg-media{grid-template-columns:minmax(0,1fr)}
  .nc-mfg-media figure{border-right:0}
  .nc-mfg-media figure:nth-last-child(-n+2){border-bottom:var(--nc-bw) solid var(--nc-line)}
  .nc-mfg-media figure:last-child{border-bottom:0}
  .nc-board{grid-template-columns:1fr 1fr}
  .nc-spacerow{grid-template-columns:minmax(0,1fr);gap:14px;padding:18px}
  .nc-spacerow-go{grid-column:1}
  .nc-pager2{grid-template-columns:minmax(0,1fr)}
  .nc-pager2-item{border-right:0;border-bottom:var(--nc-bw) solid var(--nc-line)}
  .nc-pager2-item:last-child{border-bottom:0}
  .nc-pager2-next{justify-content:flex-start;text-align:left}
  .nc-spacerow-thumb{aspect-ratio:16/9}
  .nc-arow{grid-template-columns:minmax(0,1fr)}
  .nc-arow-media{aspect-ratio:16/9}
  .nc-arow-acts{grid-column:1}
  .nc-result{grid-template-columns:minmax(0,1fr)}
  .nc-result-media{aspect-ratio:16/9}
  .nc-result-acts{grid-column:1}
  .nc-pdp-thumbs{grid-template-columns:repeat(4,1fr)}
  .nc-modal{padding:12px}
  .nc-modal-side,.nc-modal-main{padding:24px 20px}
  .nc-footcta-in>a,.nc-footcta-in>button{padding:20px 18px}
  .nc-hero-in{padding:44px 0 40px}
  .nc-pghero-in{padding:32px 0 30px}
  .nc-toolbar{gap:10px}
  .nc-toolbar-sort{margin-left:0;width:100%}
  .nc-listcta{padding:22px 18px}
  .nc-cookie{left:12px;right:12px;bottom:12px;grid-template-columns:minmax(0,1fr);gap:12px}
  .nc-cookie-acts{width:100%;flex-wrap:wrap}
  .nc-cookie-acts .nc-btn{flex:1 1 auto}
  .nc-toast{bottom:150px}
  /* inquiry / quote rows: quantity stepper and remove button must share one row */
  .nc-quote-row{grid-template-columns:70px minmax(0,1fr) auto;gap:12px;align-items:start}
  .nc-quote-media{grid-column:1;grid-row:1}
  .nc-quote-row .nc-quote-title{grid-column:2/4;grid-row:1}
  .nc-quote-row .nc-quote-qty{grid-column:2;grid-row:2;align-self:center;justify-self:start}
  .nc-quote-row .nc-quote-del{grid-column:3;grid-row:2;align-self:center;justify-self:end}
  /* table stacking: header row becomes a card */
  table.nc-table-stack thead{display:none}
  table.nc-table-stack,table.nc-table-stack tbody,table.nc-table-stack tr,table.nc-table-stack td{display:block;width:100%}
  table.nc-table-stack tr{
    border:var(--nc-bw) solid var(--nc-line);background:#fff;margin-bottom:14px;padding:6px 0;
  }
  table.nc-table-stack td{
    border:0;border-bottom:var(--nc-bw) solid var(--nc-line-2);white-space:normal;
    padding:10px 14px;display:grid;grid-template-columns:minmax(0,42%) minmax(0,1fr);gap:10px;font-size:13.5px;
  }
  table.nc-table-stack td:last-child{border-bottom:0}
  table.nc-table-stack td::before{
    content:attr(data-label);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
    color:var(--nc-mute);font-variant:small-caps;
  }
  table.nc-table-stack td.nc-td-first{
    display:block;font-family:var(--nc-head);font-size:15px;color:var(--nc-ink);background:var(--nc-pulp);
  }
  table.nc-table-stack td.nc-td-first::before{display:none}
  .detail-content table td,.detail-content table th{white-space:nowrap;font-size:13.5px;padding:9px 12px}
  /* long compound words (de / ru) must be allowed to break inside words */
  .nc-card h3,.nc-arow h3,.nc-cercard h3,.nc-j-body h3,.nc-spacerow-body h3,.nc-panel-seg ul a,
  .nc-foot-col ul a,.nc-contact-tile a,.nc-contact-tile span,.nc-aside-list a,
  .nc-pdp-info h1,.nc-crumb span,.nc-tag,.nc-chip{
    overflow-wrap:anywhere;word-break:break-word;
    -webkit-hyphens:auto;hyphens:auto;
  }
}

@media (max-width:400px){
  .nc-board{grid-template-columns:1fr}
  .nc-board-cell{border-right:0}
  .nc-board-cell:nth-child(2n){border-right:0}
  .nc-board-cell:nth-last-child(-n+2){border-bottom:var(--nc-bw) solid var(--nc-line)}
  .nc-board-cell:last-child{border-bottom:0}
  .nc-landscape{grid-template-columns:1fr}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms !important;transition-duration:.001ms !important}
  .nc-reveal,.nc-stagger>*{opacity:1 !important;transform:none !important}
}

/* ==========================================================================
   KNOWLEDGE INDEX (FAQ) — clause counter list + numbered questions
   ========================================================================== */
/* the index lists every clause / question in full — the capped scroll region cut the
   last entries off behind a scrollbar, so the list now grows with its content */
.nc-toc-list{display:grid;gap:0;border-top:var(--nc-bw) solid var(--nc-line);counter-reset:nctoc}
.nc-toc-list li{border-bottom:var(--nc-bw) solid var(--nc-line-2);min-width:0}
.nc-toc-list a{display:grid;grid-template-columns:26px minmax(0,1fr);gap:9px;padding:10px 0;font-size:13.5px;color:var(--nc-ink-2);min-width:0;overflow-wrap:anywhere;word-break:break-word}
.nc-toc-list a::before{counter-increment:nctoc;content:counter(nctoc,decimal-leading-zero);font-family:var(--nc-head);font-size:12px;color:var(--nc-timber);letter-spacing:.04em}
.nc-toc-list a:hover{color:var(--nc-cobalt)}
.nc-toc-empty{font-size:13px;color:var(--nc-mute);margin-top:12px;line-height:1.6}

.nc-faq-num{flex:0 0 auto;min-width:32px;font-family:var(--nc-head);font-size:12.5px;color:var(--nc-timber);letter-spacing:.06em;padding-top:3px}
.nc-faq-count{font-size:13px;color:var(--nc-slate);padding:14px 0 0}
.nc-faq-none{display:none;padding:24px 0;color:var(--nc-slate);font-size:14px}
.nc-faq-none.show{display:block}
.nc-faq-none i{color:var(--nc-mute);margin-right:9px}

/* related-resource strip under the question list */
.nc-faq-res{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:var(--nc-bw) solid var(--nc-line);background:#fff;margin-top:28px}
.nc-faq-res>*{min-width:0}
.nc-faq-res a{display:flex;gap:13px;padding:19px 18px;border-right:var(--nc-bw) solid var(--nc-line);color:var(--nc-ink);min-width:0}
.nc-faq-res a:last-child{border-right:0}
.nc-faq-res i{color:var(--nc-cobalt);font-size:18px;margin-top:2px;flex:0 0 auto}
.nc-faq-res strong{display:block;font-family:var(--nc-head);font-size:14.5px;color:var(--nc-ink);overflow-wrap:anywhere;word-break:break-word}
.nc-faq-res span{display:block;font-size:12.5px;color:var(--nc-slate);margin-top:5px;line-height:1.5}
.nc-faq-res a:hover{background:var(--nc-pulp-2)}
.nc-faq-res a:hover strong{color:var(--nc-cobalt)}

/* inline filter field (FAQ index, tag wall) — survives the 1024px header rule */
.nc-filterfield{display:flex;align-items:center;border:var(--nc-bw) solid var(--nc-line);background:#fff;height:44px;max-width:380px;margin-top:22px}
.nc-filterfield>i{flex:0 0 auto;padding-left:14px;color:var(--nc-mute);font-size:14px}
.nc-filterfield input{flex:1 1 auto;min-width:0;border:0;background:transparent;padding:0 14px 0 11px;font-size:14px;color:var(--nc-ink);outline:none}
.nc-filterfield:focus-within{border-color:var(--nc-cobalt)}

/* ==========================================================================
   SEARCH CONSOLE
   ========================================================================== */
.nc-search-big{display:flex;align-items:stretch;border:var(--nc-bw) solid var(--nc-line);background:#fff;max-width:660px;margin-top:24px;height:56px}
.nc-search-big>i{flex:0 0 auto;display:inline-flex;align-items:center;padding-left:18px;color:var(--nc-mute);font-size:17px}
.nc-search-big input{flex:1 1 auto;min-width:0;border:0;background:transparent;padding:0 16px;font-size:15.5px;color:var(--nc-ink);outline:none}
.nc-search-big input::placeholder{color:var(--nc-mute)}
.nc-search-big button{
  flex:0 0 auto;border:0;background:var(--nc-cobalt);color:#fff;padding:0 26px;
  font-size:14.5px;font-weight:700;display:inline-flex;align-items:center;gap:9px;
}
.nc-search-big button:hover{background:var(--nc-cobalt-2)}
.nc-search-foot{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px;margin-top:46px;padding-top:38px;border-top:var(--nc-bw) solid var(--nc-line)}
.nc-search-foot>*{min-width:0}
.nc-h4{font-size:15px;margin-bottom:15px;font-family:var(--nc-head);color:var(--nc-ink)}
.nc-search-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.nc-search-products>*{min-width:0}
.nc-search-products a{display:grid;gap:9px;font-size:13px;color:var(--nc-ink-2);min-width:0;overflow-wrap:anywhere;word-break:break-word}
.nc-search-products a img{width:100%;aspect-ratio:1/1;object-fit:cover;border:var(--nc-bw) solid var(--nc-line);background:var(--nc-pulp)}
.nc-search-products a:hover{color:var(--nc-cobalt)}
.nc-search-products a span.nc-noimg{
  width:100%;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;
  border:var(--nc-bw) solid var(--nc-line);background:var(--nc-pulp);color:var(--nc-mute);font-size:19px;
}

/* ==========================================================================
   LEGAL — document A (sticky clause index) / document B (single sheet)
   ========================================================================== */
.nc-legal-head{background:var(--nc-pulp);border-bottom:var(--nc-bw) solid var(--nc-line);position:relative;overflow:hidden}
.nc-legal-head::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    repeating-linear-gradient(90deg,transparent 0 99px,rgba(20,32,42,.06) 99px 100px),
    repeating-linear-gradient(0deg,transparent 0 99px,rgba(20,32,42,.06) 99px 100px);
}
.nc-legal-head>.nc-wrap{position:relative;z-index:1;padding:46px 0 44px}
.nc-legal-head h1{font-size:clamp(28px,3.4vw,44px);margin:14px 0}
.nc-legal-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:var(--nc-bw) solid var(--nc-line);background:#fff;margin-top:28px;max-width:820px}
.nc-legal-meta>*{min-width:0}
.nc-legal-meta>div{padding:15px 17px;border-right:var(--nc-bw) solid var(--nc-line)}
.nc-legal-meta>div:last-child{border-right:0}
.nc-legal-meta dt{font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--nc-mute);font-variant:small-caps}
.nc-legal-meta dd{margin:6px 0 0;font-size:13.5px;color:var(--nc-ink);overflow-wrap:anywhere;word-break:break-word}

.nc-wrap-narrow{width:min(100% - (var(--nc-pad)*2),920px);margin-inline:auto}

.nc-sheet{border:var(--nc-bw) solid var(--nc-line);background:#fff}
.nc-sheet-head{padding:32px 34px;border-bottom:var(--nc-bw) solid var(--nc-line);background:var(--nc-pulp)}
.nc-sheet-rule{
  display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;
  font-size:11.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--nc-slate);font-variant:small-caps;
  padding-bottom:15px;border-bottom:var(--nc-bw) solid var(--nc-line);margin-bottom:22px;
}
.nc-sheet-head h1{font-size:clamp(26px,3vw,38px);margin-bottom:13px}
.nc-sheet-parties{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:22px;padding-top:20px;border-top:var(--nc-bw) solid var(--nc-line)}
.nc-sheet-parties>*{min-width:0}
.nc-sheet-parties small{display:block;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--nc-mute);font-variant:small-caps;margin-bottom:5px}
.nc-sheet-parties strong{font-size:14.5px;color:var(--nc-ink);font-weight:600;overflow-wrap:anywhere;word-break:break-word}
.nc-sheet-body{padding:30px 34px}
.nc-sheet-foot{padding:20px 34px;border-top:var(--nc-bw) solid var(--nc-line);background:var(--nc-pulp-2);display:flex;flex-wrap:wrap;align-items:center;gap:16px}
.nc-sheet-links{display:flex;flex-wrap:wrap;gap:18px;margin-right:auto}
.nc-sheet-links a{display:inline-flex;align-items:center;gap:9px;font-size:13.5px;color:var(--nc-ink-2)}
.nc-sheet-links a:hover{color:var(--nc-cobalt)}
.nc-sheet-links i{color:var(--nc-cobalt)}

/* ==========================================================================
   TAG WALL / TAG ENTRY
   ========================================================================== */
.nc-tagcloud.nc-tagcloud-lg a{padding:11px 18px;font-size:15px}
.nc-tagwall-lead{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:0 0 20px;margin-bottom:24px;border-bottom:var(--nc-bw) solid var(--nc-line)}
.nc-tagwall-lead .nc-filterfield{margin-top:0;margin-left:auto;height:42px}
.nc-tagwall-lead .nc-tagwall-total{font-size:13.5px;color:var(--nc-slate)}
.nc-tagwall-lead .nc-tagwall-total b{color:var(--nc-ink)}
.nc-taglabel{color:var(--nc-timber);margin-right:2px}

/* ==========================================================================
   RFQ SHEET (product inquiry)
   ========================================================================== */
.nc-quote-head{
  display:grid;grid-template-columns:96px minmax(0,1fr) 112px 120px;gap:18px;
  padding:0 0 13px;font-size:11.5px;letter-spacing:.11em;text-transform:uppercase;
  color:var(--nc-mute);font-variant:small-caps;
}
.nc-quote-row h3{overflow-wrap:anywhere;word-break:break-word}
.nc-quote-row .nc-lead{font-size:12.5px;margin-top:5px}
.nc-qty{display:inline-flex;align-items:stretch;border:var(--nc-bw) solid var(--nc-line);background:#fff}
.nc-qty button{
  width:34px;flex:0 0 auto;border:0;background:var(--nc-pulp);color:var(--nc-ink);
  display:inline-flex;align-items:center;justify-content:center;font-size:11px;
}
.nc-qty button:hover{background:var(--nc-cobalt);color:#fff}
.nc-qty input{
  width:58px;min-width:0;border:0;border-left:var(--nc-bw) solid var(--nc-line);border-right:var(--nc-bw) solid var(--nc-line);
  background:#fff;color:var(--nc-ink);text-align:center;font-size:14px;padding:9px 0;outline:none;
}
.nc-rm{
  width:38px;height:38px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;
  border:var(--nc-bw) solid var(--nc-line);background:#fff;color:var(--nc-slate);
}
.nc-rm:hover{border-color:var(--nc-red);color:var(--nc-red)}
.nc-rfq{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:44px;align-items:start}
.nc-rfq>*{min-width:0}
.nc-verify{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.nc-verify input{flex:1 1 150px;min-width:0;border:var(--nc-bw) solid var(--nc-line);background:var(--nc-pulp-2);padding:11px 12px;font-size:14.5px;color:var(--nc-ink);outline:none}
.nc-verify img{cursor:pointer;border:var(--nc-bw) solid var(--nc-line)}

@media (max-width:900px){
  .nc-faq-res{grid-template-columns:minmax(0,1fr)}
  .nc-faq-res a{border-right:0;border-bottom:var(--nc-bw) solid var(--nc-line)}
  .nc-faq-res a:last-child{border-bottom:0}
  .nc-search-foot{grid-template-columns:minmax(0,1fr);gap:30px}
  .nc-search-products{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nc-legal-meta{grid-template-columns:minmax(0,1fr)}
  .nc-legal-meta>div{border-right:0;border-bottom:var(--nc-bw) solid var(--nc-line)}
  .nc-legal-meta>div:last-child{border-bottom:0}
  .nc-quote-head{display:none}
  .nc-rfq{grid-template-columns:minmax(0,1fr);gap:32px}
}

@media (max-width:600px){
  .nc-sheet-head,.nc-sheet-body,.nc-sheet-foot{padding:22px 18px}
  .nc-sheet-parties{grid-template-columns:minmax(0,1fr)}
  .nc-legal-head>.nc-wrap{padding:32px 0 30px}
  .nc-search-big{height:auto;flex-wrap:wrap;padding:0}
  .nc-search-big>i{padding:0 0 0 14px;height:50px}
  .nc-search-big input{height:50px;padding:0 12px 0 10px}
  .nc-search-big button{width:100%;justify-content:center;height:48px}
  .nc-search-products{grid-template-columns:minmax(0,1fr)}
  .nc-tagwall-lead .nc-filterfield{width:100%;margin-left:0;max-width:none}
  .nc-faq-res a{padding:16px 15px}
  .nc-qty input{width:48px}
  /* long compound words (de / ru) in the new inner-page copy */
  .nc-faq-res strong,.nc-sheet-parties strong,.nc-legal-meta dd,.nc-toc-list a,
  .nc-result h3,.nc-quote-row h3,.nc-search-products a,.nc-h4,
  .nc-contact-tile small,.nc-tagwall-total{
    overflow-wrap:anywhere;word-break:break-word;
  }
}

/* ==========================================================================
   Header label strip — phone reduction
   The strip kept .nc-ls-links as flex:0 0 auto with nowrap anchors and had no
   small-screen treatment at all, so the email + phone + language cluster stayed
   424-473px wide and pushed every route 87-98px past a 390px viewport. The email
   and phone are already reachable from the fullscreen panel, the footer and the
   contact page, so the strip keeps only the language switcher below 900px.
   ========================================================================== */
@media (max-width:1024px){
  .nc-ls-in{gap:12px}
  .nc-ls-links{gap:12px}
}
@media (max-width:900px){
  .nc-ls-links>a{display:none}
  .nc-ls-links{gap:0;min-width:0}
  .nc-ls-in{gap:10px;min-height:36px;padding:5px 0}
  .nc-labelstrip{font-size:12px}
  .nc-ls-tags{min-width:0}
}
@media (max-width:600px){
  .nc-ls-tags{display:none}
  .nc-ls-in{justify-content:flex-end;min-height:34px}
  .nc-lang-btn{padding:4px 9px;font-size:12px}
}

/* --------------------------------------------------------------------------
   Product / tag / result action rows — the German and Russian labels for
   "add to quote list" are 200-220px wide on their own. The rows set
   flex:0 0 auto on their children with no wrap, so the second button ended
   395-427px from the left edge and pushed every product grid 20-52px past a
   375px viewport. Let the children shrink to min-content and then wrap.
   -------------------------------------------------------------------------- */
@media (max-width:900px){
  .nc-card-acts,.nc-arow-acts,.nc-result-acts{flex-wrap:wrap}
  .nc-card-acts>*,.nc-arow-acts>*,.nc-result-acts>*{flex:1 1 auto;min-width:0}
  .nc-card-acts .nc-btn,.nc-arow-acts .nc-btn,.nc-result-acts .nc-btn{
    white-space:normal;text-align:center;overflow-wrap:anywhere;
  }
}

