/* =========================================================================
   Nextechcraft Site — "Midnight Atelier"
   Everything is scoped to .ntc-takeover / #ntc so nothing leaks into
   wp-admin or any page this plugin does not render.
   ========================================================================= */

:root{
  --ntc-ink:#09080A;
  --ntc-ink2:#100D11;
  --ntc-ink3:#16121A;
  --ntc-paper:#F7F3EF;
  --ntc-maroon:#690F1B;
  --ntc-maroon-lit:#8E1626;
  --ntc-crimson:#C8102E;
  --ntc-gold:#E4A93C;
  --ntc-mute:rgba(247,243,239,.62);
  --ntc-mute2:rgba(247,243,239,.44);
  --ntc-line:rgba(247,243,239,.13);
  --ntc-line2:rgba(247,243,239,.08);
  --ntc-glass:rgba(255,255,255,.045);
  --ntc-sp:clamp(72px,8vw,124px);
  --ntc-r:18px;
  --ntc-wrap:1240px;
}

/* ---- takeover reset ---------------------------------------------------
   Written as `.ntc-takeover :where(el)` so the reset has almost no
   specificity and never beats the component classes below it. A plain
   `.ntc-takeover el` selector would win against `.ntc-card h3`.        */
.ntc-takeover,
html:has(body.ntc-takeover){background:var(--ntc-ink)}
body.ntc-takeover{
  margin:0;padding:0;width:100%;max-width:100%;overflow-x:hidden;
  background:var(--ntc-ink);color:var(--ntc-paper);
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;
}
.ntc-takeover :where(h1,h2,h3,h4,p,ul,ol,figure,blockquote){margin:0;padding:0}
.ntc-takeover :where(ul,ol){list-style:none}
.ntc-takeover :where(a){color:inherit;text-decoration:none}
.ntc-takeover :where(img,svg,video){max-width:100%;height:auto;display:block}
.ntc-takeover :where(button,input,select,textarea){font:inherit;color:inherit}
.ntc-takeover *,.ntc-takeover *::before,.ntc-takeover *::after{box-sizing:border-box}

/* A flex/grid component overrides the hidden attribute — restore it once. */
.ntc-takeover [hidden]{display:none !important}

/* Old theme chrome, classic and block themes alike. */
.ntc-takeover #header,.ntc-takeover .header,.ntc-takeover #footer,.ntc-takeover .footer,
.ntc-takeover .stunning-header,.ntc-takeover .site-header,.ntc-takeover .site-footer,
.ntc-takeover .wp-site-blocks>header.wp-block-template-part,
.ntc-takeover .wp-site-blocks>footer.wp-block-template-part,
.ntc-takeover .seosight-header,.ntc-takeover .crumina-header{display:none !important}

#ntc{position:relative;z-index:1;isolation:isolate}

.ntc-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0 0 0 0);white-space:nowrap;border:0}
.ntc-skip{position:absolute;left:-9999px;top:0;z-index:999;background:var(--ntc-gold);color:#140C0E;
  padding:12px 18px;border-radius:0 0 10px 0;font-weight:600}
.ntc-skip:focus{left:0}

.ntc-takeover :where(a,button,input,select,textarea):focus-visible{
  outline:2px solid var(--ntc-gold);outline-offset:3px;border-radius:4px}

/* ---- type ------------------------------------------------------------- */
#ntc h1,#ntc h2,#ntc h3{font-family:Fraunces,Georgia,"Times New Roman",serif;
  font-weight:600;letter-spacing:-.022em;line-height:1.05}
#ntc p{color:var(--ntc-mute)}
.ntc-lbl{display:inline-block;font:500 11px/1 "JetBrains Mono",ui-monospace,monospace;
  letter-spacing:.18em;text-transform:uppercase;color:var(--ntc-gold)}

/* Gutters as padding-left/right ONLY. A `padding:0 16px` shorthand in a
   later media query would wipe the vertical padding of anything that also
   carries this class. */
.ntc-wrap{max-width:var(--ntc-wrap);margin-left:auto;margin-right:auto;
  padding-left:28px;padding-right:28px}

/* ---- buttons ---------------------------------------------------------- */
.ntc-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;
  min-height:48px;padding:13px 24px;border-radius:999px;border:1px solid transparent;
  font-size:15px;font-weight:600;letter-spacing:-.01em;cursor:pointer;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease}
.ntc-btn .ntc-i{width:18px;height:18px;flex:0 0 auto}
.ntc-btn-p{background:linear-gradient(135deg,var(--ntc-crimson),var(--ntc-maroon));color:#fff;
  box-shadow:0 10px 34px -12px rgba(200,16,46,.8)}
.ntc-btn-p:hover{transform:translateY(-2px);box-shadow:0 16px 44px -12px rgba(200,16,46,.95)}
.ntc-btn-g{border-color:var(--ntc-line);background:var(--ntc-glass);color:var(--ntc-paper)}
.ntc-btn-g:hover{border-color:rgba(228,169,60,.5);transform:translateY(-2px)}
.ntc-btn-wa{background:#25D366;color:#06301A}
.ntc-cta{display:flex;gap:14px;flex-wrap:wrap}

/* ---- scroll progress + nav -------------------------------------------- */
.ntc-progress{position:fixed;inset:0 0 auto 0;height:2px;z-index:60;background:transparent;pointer-events:none}
.ntc-progress i{display:block;height:100%;width:0;
  background:linear-gradient(90deg,var(--ntc-maroon),var(--ntc-crimson),var(--ntc-gold))}

.ntc-nav{position:sticky;top:0;z-index:50;backdrop-filter:blur(16px);
  background:linear-gradient(to bottom,rgba(9,8,10,.94),rgba(9,8,10,.6));
  border-bottom:1px solid var(--ntc-line)}
.ntc-nav .ntc-wrap{display:flex;align-items:center;gap:34px;height:78px}
.ntc-brand{display:flex;align-items:center;gap:11px;font-family:Fraunces,serif;
  font-size:19px;letter-spacing:-.02em;flex:0 0 auto}
.ntc-brand img{width:36px;height:36px;border-radius:9px}
.ntc-menu{display:flex;gap:26px;margin-left:auto;font-size:14.5px;color:var(--ntc-mute)}
.ntc-menu a{padding:6px 0;border-bottom:1.5px solid transparent;transition:color .18s,border-color .18s}
.ntc-menu a:hover{color:var(--ntc-paper);border-color:var(--ntc-gold)}
.ntc-burger{display:none;background:var(--ntc-glass);border:1px solid var(--ntc-line);
  border-radius:12px;width:46px;height:46px;align-items:center;justify-content:center;cursor:pointer}
.ntc-burger .ntc-i{width:22px;height:22px}

.ntc-sheet{position:fixed;inset:0;z-index:70;background:rgba(9,8,10,.97);backdrop-filter:blur(10px);
  display:flex;align-items:flex-start;justify-content:center;padding-top:84px;
  padding-left:28px;padding-right:28px}
.ntc-sheet__in{width:100%;max-width:420px;position:relative}
.ntc-sheet__x{position:absolute;top:-56px;right:0;background:var(--ntc-glass);
  border:1px solid var(--ntc-line);border-radius:12px;width:46px;height:46px;cursor:pointer;
  display:flex;align-items:center;justify-content:center}
.ntc-sheet nav{display:grid;gap:4px}
.ntc-sheet nav a{font-family:Fraunces,serif;font-size:28px;padding:12px 0;
  border-bottom:1px solid var(--ntc-line2)}
.ntc-sheet__cta{display:grid;gap:12px;margin-top:28px}

/* ---- home hero -------------------------------------------------------- */
.ntc-hero{position:relative;overflow:hidden;
  padding-top:clamp(70px,8.5vw,124px);padding-bottom:var(--ntc-sp)}
.ntc-hero::before{content:"";position:absolute;inset:-28% -12% auto -12%;height:940px;z-index:0;
  background:
    radial-gradient(44% 56% at 16% 26%,rgba(142,22,38,.80),transparent 70%),
    radial-gradient(40% 46% at 82% 14%,rgba(200,16,46,.42),transparent 72%),
    radial-gradient(34% 40% at 60% 68%,rgba(228,169,60,.17),transparent 74%);
  filter:blur(30px)}
.ntc-hero::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:linear-gradient(var(--ntc-line2) 1px,transparent 1px),
                   linear-gradient(90deg,var(--ntc-line2) 1px,transparent 1px);
  background-size:76px 76px;
  -webkit-mask-image:radial-gradient(68% 58% at 50% 32%,#000,transparent 78%);
          mask-image:radial-gradient(68% 58% at 50% 32%,#000,transparent 78%)}
.ntc-hero .ntc-wrap{position:relative;z-index:1}
.ntc-hero__grid{display:grid;grid-template-columns:1.06fr .94fr;gap:58px;align-items:center}
.ntc-hero h1{font-size:clamp(40px,5.5vw,78px);margin-top:18px}
.ntc-hero h1 em{font-style:normal;
  background:linear-gradient(104deg,var(--ntc-gold),#F6D79A 48%,var(--ntc-gold));
  -webkit-background-clip:text;background-clip:text;color:transparent}
.ntc-hero__lead{margin-top:24px;font-size:18px;max-width:31em}
.ntc-hero .ntc-cta{margin-top:34px}

.ntc-stats{display:flex;gap:30px;margin-top:44px;padding-top:26px;
  border-top:1px solid var(--ntc-line);flex-wrap:wrap}
.ntc-stats b{display:block;font-family:Fraunces,serif;font-size:30px;font-weight:600;line-height:1}
.ntc-stats small{display:block;margin-top:6px;font-size:12.5px;color:var(--ntc-mute)}

/* ---- live growth console -------------------------------------------- */
.ntc-art{border-radius:20px;border:1px solid var(--ntc-line);overflow:hidden;position:relative;
  background:linear-gradient(165deg,rgba(255,255,255,.075),rgba(255,255,255,.012));
  box-shadow:0 40px 90px -36px rgba(0,0,0,.9)}
.ntc-art__bar{display:flex;align-items:center;gap:7px;padding:13px 16px;
  border-bottom:1px solid var(--ntc-line);background:rgba(255,255,255,.028)}
.ntc-art__bar i{width:10px;height:10px;border-radius:50%;display:block;flex:0 0 auto}
.ntc-art__bar small{margin-left:9px;font:500 11.5px/1 "JetBrains Mono",monospace;color:var(--ntc-mute)}
.ntc-live{margin-left:auto;display:inline-flex;align-items:center;gap:6px;
  font:500 9.5px/1 "JetBrains Mono",monospace;letter-spacing:.14em;color:#7FD6A0;
  padding:4px 9px;border-radius:999px;background:rgba(60,190,120,.14)}
.ntc-live i{width:6px;height:6px;border-radius:50%;background:#3CBE78}
.ntc-art.is-playing .ntc-live i{animation:ntc-blip 1.8s ease-in-out infinite}
@keyframes ntc-blip{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.7)}}
.ntc-art__b{padding:20px}

/* KPI tiles */
.ntc-kpi{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}
.ntc-kpi>div{position:relative;border:1px solid var(--ntc-line);border-radius:12px;
  padding:12px 13px 10px;background:rgba(255,255,255,.028);overflow:hidden}
.ntc-kpi b{display:block;font-family:Fraunces,serif;font-size:22px;font-weight:600;line-height:1.1;
  font-variant-numeric:tabular-nums}
.ntc-kpi small{display:block;margin-top:3px;font-size:10.5px;letter-spacing:.07em;
  text-transform:uppercase;color:var(--ntc-mute)}
.ntc-spark{position:absolute;inset:auto 0 0 0;width:100%;height:22px;opacity:.75}
.ntc-spark polyline{fill:none;stroke:var(--ntc-gold);stroke-width:1.6;
  vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}
.ntc-spark--down polyline{stroke:#3CBE78}

/* main chart */
.ntc-chart{position:relative;margin-top:14px;height:150px;border:1px solid var(--ntc-line);
  border-radius:12px;padding:14px;background:rgba(255,255,255,.028);overflow:hidden}
.ntc-chart__grid{position:absolute;inset:14px;pointer-events:none;
  background-image:linear-gradient(var(--ntc-line2) 1px,transparent 1px);background-size:100% 25%}
.ntc-chart__bars{position:relative;height:100%;display:flex;align-items:flex-end;gap:5px}
.ntc-chart__bars i{flex:1;height:var(--h);min-height:6px;opacity:1;transform:scaleY(1);
  border-radius:3px 3px 2px 2px;transform-origin:bottom;
  background:linear-gradient(180deg,var(--ntc-crimson),rgba(105,15,27,.32));
  transition:height .7s cubic-bezier(.2,.8,.2,1)}
/* The entrance animation must only ENHANCE. No fill-mode and no delay-held
   from-state, so if the animation never runs (headless capture, a stalled
   compositor, an old browser) the bars still sit at their true height
   instead of collapsing to a flat line. */
.ntc-art.is-playing .ntc-chart__bars i{animation:ntc-grow .85s cubic-bezier(.2,.8,.2,1)}
.ntc-chart__bars i:last-child{background:linear-gradient(180deg,var(--ntc-gold),rgba(228,169,60,.28))}
@keyframes ntc-grow{from{transform:scaleY(.08);opacity:.35}to{transform:scaleY(1);opacity:1}}
.ntc-chart__line{position:absolute;inset:14px;width:calc(100% - 28px);height:calc(100% - 28px);
  pointer-events:none;overflow:visible}
.ntc-chart__line polyline{fill:none;stroke:var(--ntc-gold);stroke-width:1.8;
  vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round;
  filter:drop-shadow(0 0 5px rgba(228,169,60,.5));
  transition:all .7s cubic-bezier(.2,.8,.2,1)}
.ntc-chart__scan{position:absolute;top:0;bottom:0;width:36%;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(228,169,60,.10),transparent);
  transform:translateX(-120%)}
.ntc-art.is-playing .ntc-chart__scan{animation:ntc-scan 4.6s linear infinite}
@keyframes ntc-scan{to{transform:translateX(400%)}}

/* gauge + channel mix */
.ntc-art__row2{display:grid;grid-template-columns:132px 1fr;gap:12px;margin-top:14px}
.ntc-gauge{position:relative;display:grid;place-items:center;border:1px solid var(--ntc-line);
  border-radius:12px;background:rgba(255,255,255,.028);padding:10px}
.ntc-gauge svg{width:104px;height:104px;transform:rotate(-90deg)}
.ntc-gauge__t{fill:none;stroke:rgba(247,243,239,.10);stroke-width:9}
.ntc-gauge__v{fill:none;stroke:var(--ntc-gold);stroke-width:9;stroke-linecap:round;
  stroke-dasharray:301.6;stroke-dashoffset:301.6;
  transition:stroke-dashoffset 1.4s cubic-bezier(.2,.8,.2,1)}
.ntc-gauge__n{position:absolute;inset:0;display:grid;place-content:center;text-align:center}
.ntc-gauge__n b{font-family:Fraunces,serif;font-size:26px;font-weight:600;line-height:1;
  font-variant-numeric:tabular-nums}
.ntc-gauge__n small{display:block;margin-top:3px;font-size:9.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ntc-mute)}
.ntc-chan{border:1px solid var(--ntc-line);border-radius:12px;background:rgba(255,255,255,.028);
  padding:12px 14px;display:grid;align-content:center;gap:9px}
.ntc-chan__r{display:grid;grid-template-columns:62px 1fr 40px;align-items:center;gap:10px;
  font-size:11.5px;color:var(--ntc-mute)}
.ntc-chan__r b{font:500 11px/1 "JetBrains Mono",monospace;color:var(--ntc-paper);text-align:right;
  font-variant-numeric:tabular-nums}
.ntc-chan__t{height:6px;border-radius:999px;background:rgba(247,243,239,.09);overflow:hidden}
.ntc-chan__t i{display:block;height:100%;width:0;border-radius:999px;
  transition:width 1.1s cubic-bezier(.2,.8,.2,1)}
.ntc-chan__t i.is-g{background:linear-gradient(90deg,var(--ntc-gold),#F6D79A)}
.ntc-chan__t i.is-c{background:linear-gradient(90deg,var(--ntc-crimson),#E8566F)}
.ntc-chan__t i.is-m{background:linear-gradient(90deg,var(--ntc-maroon-lit),#C0566A)}
.ntc-chan__t i.is-d{background:linear-gradient(90deg,#3CBE78,#8CE0B4)}

/* activity feed */
.ntc-rows{margin-top:14px;display:grid;gap:7px}
.ntc-row{display:flex;align-items:center;gap:10px;border:1px solid var(--ntc-line);
  border-radius:10px;padding:9px 12px;background:rgba(255,255,255,.022);font-size:12.3px}
.ntc-row b{margin-left:auto;font:500 11.5px/1 "JetBrains Mono",monospace;color:var(--ntc-gold);
  font-variant-numeric:tabular-nums}
.ntc-row.is-new{animation:ntc-slidein .5s cubic-bezier(.2,.8,.2,1) both}
@keyframes ntc-slidein{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.ntc-tag{font:500 10px/1 "JetBrains Mono",monospace;letter-spacing:.08em;padding:4px 8px;
  border-radius:999px;background:rgba(228,169,60,.16);color:var(--ntc-gold);flex:0 0 auto}
.ntc-art__foot{margin-top:11px;font-size:10.5px;letter-spacing:.04em;color:var(--ntc-mute2);
  text-align:right}

/* ---- logo wall ------------------------------------------------------- */
.ntc-clients{border-top:1px solid var(--ntc-line);border-bottom:1px solid var(--ntc-line);
  background:var(--ntc-ink2);padding-top:26px;padding-bottom:28px;overflow:hidden}
.ntc-clients__lbl{display:block;font:500 11px/1 "JetBrains Mono",monospace;letter-spacing:.17em;
  text-transform:uppercase;color:var(--ntc-mute2);margin-bottom:20px}
.ntc-clients__vp{position:relative;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);
          mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.ntc-clients__track{display:flex;width:max-content}
.ntc-clients[data-playing="1"] .ntc-clients__track{animation:ntc-slide 44s linear infinite}
.ntc-clients:hover .ntc-clients__track,
.ntc-clients:focus-within .ntc-clients__track{animation-play-state:paused}
@keyframes ntc-slide{to{transform:translateX(-50%)}}
.ntc-clients__row{display:flex;align-items:center;gap:14px;padding-left:7px;padding-right:7px}
.ntc-clients__track>.ntc-clients__row:first-child{padding-left:28px}
.ntc-logo{flex:0 0 auto;width:168px;height:74px;border-radius:14px;display:grid;place-items:center;
  background:#FFFFFF;border:1px solid rgba(247,243,239,.16);padding:14px 18px;
  filter:grayscale(1) contrast(1.05);opacity:.74;
  transition:filter .3s ease,opacity .3s ease,transform .3s ease,box-shadow .3s ease}
.ntc-logo:hover{filter:none;opacity:1;transform:translateY(-3px);
  box-shadow:0 16px 34px -14px rgba(0,0,0,.8)}
.ntc-logo img{max-width:100%;max-height:44px;width:auto;height:auto;object-fit:contain}
.ntc-logo--mono{background:linear-gradient(165deg,rgba(255,255,255,.07),rgba(255,255,255,.02));
  border-color:var(--ntc-line);filter:none;opacity:.82;
  grid-auto-flow:column;grid-template-columns:auto 1fr;gap:11px;place-items:center start}
.ntc-logo--mono:hover{opacity:1;border-color:rgba(228,169,60,.4)}
.ntc-logo__m{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;flex:0 0 auto;
  font:600 12.5px/1 Inter,sans-serif;letter-spacing:.02em;color:var(--ntc-gold);
  background:linear-gradient(140deg,rgba(200,16,46,.3),rgba(228,169,60,.14));
  border:1px solid var(--ntc-line)}
.ntc-logo__t{font-family:Fraunces,serif;font-size:14.5px;line-height:1.2;color:var(--ntc-paper)}

/* ---- generic section -------------------------------------------------- */
.ntc-sec{padding-top:var(--ntc-sp);padding-bottom:var(--ntc-sp)}
.ntc-sec--alt{background:var(--ntc-ink2);
  border-top:1px solid var(--ntc-line);border-bottom:1px solid var(--ntc-line)}
.ntc-head{max-width:42rem;margin-bottom:52px}
.ntc-head h2{font-size:clamp(30px,3.9vw,50px);margin-top:16px}
.ntc-head p{margin-top:18px;font-size:17px}

/* ---- cards grid ------------------------------------------------------
   Each card carries its own --acc (set inline from content.php) so the grid
   has colour rhythm instead of six identical maroon tiles. Everything that
   moves is transform/opacity only.                                        */
.ntc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ntc-grid--2{grid-template-columns:repeat(2,1fr)}
.ntc-card{--acc:#E4A93C;position:relative;border:1px solid var(--ntc-line);
  border-radius:var(--ntc-r);padding:30px 26px 32px;overflow:hidden;isolation:isolate;
  background:linear-gradient(170deg,rgba(255,255,255,.055),rgba(255,255,255,.012));
  transition:transform .26s cubic-bezier(.2,.8,.2,1),border-color .26s ease,box-shadow .26s ease}

/* accent wash, revealed on hover or while the spotlight is on this card */
.ntc-card::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  border-radius:inherit;opacity:0;transition:opacity .3s ease;
  background:radial-gradient(78% 62% at 12% 0%,color-mix(in srgb,var(--acc) 26%,transparent),transparent 72%)}
.ntc-card:hover::before,.ntc-card.is-lit::before{opacity:1}

/* accent underline */
.ntc-card::after{content:"";position:absolute;inset:auto auto 0 0;height:2px;width:100%;z-index:1;
  background:linear-gradient(90deg,var(--acc),transparent);
  transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.ntc-card:hover::after,.ntc-card.is-lit::after{transform:scaleX(1)}

.ntc-card:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--acc) 48%,transparent);
  box-shadow:0 24px 50px -24px rgba(0,0,0,.9)}
.ntc-card.is-lit{border-color:color-mix(in srgb,var(--acc) 34%,transparent)}
.ntc-card>*{position:relative;z-index:1}
.ntc-card h3{font-size:21px;margin-bottom:11px}
.ntc-card p{font-size:14.6px}
.ntc-card__n{position:absolute;top:24px;right:26px;z-index:1;
  font:500 11px/1 "JetBrains Mono",monospace;color:rgba(247,243,239,.26);
  transition:color .3s ease}
.ntc-card:hover .ntc-card__n,.ntc-card.is-lit .ntc-card__n{color:var(--acc)}

/* icon tile — accent-tinted, with a pulse ring that only runs when lit */
.ntc-ico{position:relative;width:48px;height:48px;border-radius:13px;display:grid;place-items:center;
  margin-bottom:20px;color:var(--acc);border:1px solid var(--ntc-line);
  background:linear-gradient(140deg,color-mix(in srgb,var(--acc) 26%,transparent),rgba(255,255,255,.03));
  transition:transform .32s cubic-bezier(.2,.8,.2,1),border-color .3s ease}
.ntc-ico .ntc-i{width:22px;height:22px;transition:transform .32s cubic-bezier(.2,.8,.2,1)}
.ntc-card:hover .ntc-ico,.ntc-card.is-lit .ntc-ico{transform:translateY(-2px);
  border-color:color-mix(in srgb,var(--acc) 50%,transparent)}
.ntc-card:hover .ntc-ico .ntc-i{transform:scale(1.14) rotate(-5deg)}
.ntc-ico::after{content:"";position:absolute;inset:-1px;border-radius:inherit;pointer-events:none;
  border:1px solid var(--acc);opacity:0;transform:scale(1)}
.ntc-card.is-lit .ntc-ico::after{animation:ntc-ring 1.5s cubic-bezier(.2,.8,.2,1)}
@keyframes ntc-ring{0%{opacity:.75;transform:scale(1)}100%{opacity:0;transform:scale(1.5)}}

.ntc-card__more{display:inline-flex;align-items:center;gap:7px;margin-top:18px;
  font-size:13.5px;font-weight:600;color:var(--acc)}
.ntc-card__more .ntc-i{width:16px;height:16px;transition:transform .25s}
.ntc-card:hover .ntc-card__more .ntc-i,
.ntc-card.is-lit .ntc-card__more .ntc-i{transform:translateX(5px)}

/* full-width highlight card (services hub) */
.ntc-card--wide{grid-column:1/-1;display:flex;align-items:center;gap:26px;flex-wrap:wrap;
  padding-top:28px;padding-bottom:28px}
.ntc-card--wide .ntc-ico{margin-bottom:0;flex:0 0 auto}
.ntc-card--wide__b{flex:1 1 320px;min-width:0}
.ntc-card--wide h3{margin:10px 0 8px}
.ntc-card--wide .ntc-btn{flex:0 0 auto;pointer-events:none}
@media(max-width:700px){.ntc-card--wide .ntc-btn{width:100%}}

/* logo grid (case-studies "also worked with") */
.ntc-wall{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:14px}
.ntc-wall .ntc-logo{width:100%}

/* ---- process ---------------------------------------------------------- */
.ntc-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;
  border:1px solid var(--ntc-line);border-radius:var(--ntc-r);overflow:hidden}
.ntc-step{padding:32px 26px;border-right:1px solid var(--ntc-line)}
.ntc-step:last-child{border-right:0}
.ntc-step b{font:500 11px/1 "JetBrains Mono",monospace;letter-spacing:.14em;color:var(--ntc-gold)}
.ntc-step h3{font-size:22px;margin:14px 0 10px}
.ntc-step p{font-size:14.4px}

/* ---- work ------------------------------------------------------------- */
.ntc-case{border:1px solid var(--ntc-line);border-radius:var(--ntc-r);padding:30px 26px;
  background:linear-gradient(170deg,rgba(255,255,255,.05),rgba(255,255,255,.01));
  display:flex;flex-direction:column}
.ntc-case__mk{font:500 11px/1 "JetBrains Mono",monospace;letter-spacing:.12em;
  text-transform:uppercase;color:var(--ntc-gold)}
.ntc-case h3{font-size:24px;margin:14px 0 12px}
.ntc-case p{font-size:14.6px;margin-bottom:12px}
.ntc-case__res{margin-top:auto;padding-top:20px;border-top:1px solid var(--ntc-line)}
.ntc-case__res b{display:block;font-family:Fraunces,serif;font-size:36px;font-weight:600;
  line-height:1;color:var(--ntc-gold)}
.ntc-case__res small{display:block;margin-top:7px;font-size:12.6px;color:var(--ntc-mute)}

/* ---- markets ---------------------------------------------------------- */
.ntc-mkt{border:1px solid var(--ntc-line);border-radius:var(--ntc-r);padding:30px 26px;
  background:rgba(255,255,255,.028)}
.ntc-mkt h3{font-size:25px;display:flex;align-items:center;gap:11px}
.ntc-mkt h3 i{width:9px;height:9px;border-radius:50%;background:var(--ntc-gold);
  box-shadow:0 0 0 4px rgba(228,169,60,.16);flex:0 0 auto}
.ntc-mkt__city{display:block;margin-top:10px;font:500 11.5px/1 "JetBrains Mono",monospace;
  letter-spacing:.08em;text-transform:uppercase;color:var(--ntc-mute2)}
.ntc-mkt p{margin-top:14px;font-size:14.6px}
.ntc-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}
.ntc-chips span{font-size:12px;padding:5px 11px;border-radius:999px;
  border:1px solid var(--ntc-line);color:var(--ntc-mute)}

/* ---- testimonials ----------------------------------------------------- */
.ntc-quote{border:1px solid var(--ntc-line);border-radius:var(--ntc-r);padding:30px 26px;
  background:rgba(255,255,255,.028)}
.ntc-quote .ntc-i{width:26px;height:26px;color:var(--ntc-crimson);margin-bottom:16px}
.ntc-quote p{font-family:Fraunces,serif;font-size:19px;line-height:1.45;color:var(--ntc-paper)}
.ntc-quote footer{margin-top:20px;font-size:13px;color:var(--ntc-mute2)}
.ntc-quote footer strong{display:block;color:var(--ntc-paper);font-weight:600;font-size:14px}

/* ---- FAQ -------------------------------------------------------------- */
.ntc-faq{border-top:1px solid var(--ntc-line)}
.ntc-faq details{border-bottom:1px solid var(--ntc-line)}
.ntc-faq summary{display:flex;align-items:center;gap:16px;padding:24px 0;cursor:pointer;
  font-family:Fraunces,serif;font-size:19px;list-style:none}
.ntc-faq summary::-webkit-details-marker{display:none}
.ntc-faq summary::after{content:"+";margin-left:auto;font-family:Inter,sans-serif;font-size:24px;
  color:var(--ntc-gold);transition:transform .2s;line-height:1}
.ntc-faq details[open] summary::after{transform:rotate(45deg)}
.ntc-faq .ntc-faq__a{padding-bottom:24px;font-size:15.4px;max-width:58em}

/* ---- inner page hero -------------------------------------------------- */
.ntc-phero{position:relative;overflow:hidden;padding-top:clamp(56px,6vw,86px);
  padding-bottom:clamp(44px,5vw,70px);border-bottom:1px solid var(--ntc-line)}
.ntc-phero::before{content:"";position:absolute;inset:-60% -20% auto -20%;height:620px;z-index:0;
  background:radial-gradient(40% 60% at 22% 40%,rgba(142,22,38,.6),transparent 70%),
             radial-gradient(34% 50% at 78% 20%,rgba(200,16,46,.3),transparent 72%);filter:blur(34px)}
.ntc-phero .ntc-wrap{position:relative;z-index:1}
.ntc-phero h1{font-size:clamp(34px,4.8vw,62px);margin-top:16px;max-width:19em}
.ntc-phero .ntc-lead{margin-top:20px;font-size:17.5px;max-width:42em}
.ntc-crumbs{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:22px;
  font-size:12.5px;color:var(--ntc-mute2)}
.ntc-crumbs a:hover{color:var(--ntc-gold)}
.ntc-crumbs em{font-style:normal;color:var(--ntc-mute)}

/* ---- service page ----------------------------------------------------- */
.ntc-split{display:grid;grid-template-columns:1.25fr .75fr;gap:52px;align-items:start}
.ntc-prose p{font-size:16.5px;margin-bottom:18px}
.ntc-points{display:grid;gap:14px;margin-top:30px}
.ntc-point{display:flex;gap:15px;border:1px solid var(--ntc-line);border-radius:14px;
  padding:19px 20px;background:rgba(255,255,255,.028)}
.ntc-point .ntc-i{width:20px;height:20px;color:var(--ntc-gold);flex:0 0 auto;margin-top:3px}
.ntc-point strong{display:block;font-size:15.5px;margin-bottom:5px}
.ntc-point span{font-size:14.2px;color:var(--ntc-mute)}
.ntc-aside{border:1px solid var(--ntc-line);border-radius:var(--ntc-r);padding:26px 24px;
  background:linear-gradient(170deg,rgba(255,255,255,.06),rgba(255,255,255,.012));
  position:sticky;top:100px}
.ntc-aside h3{font-size:19px;margin-bottom:12px}
.ntc-aside p{font-size:14.4px;margin-bottom:18px}
.ntc-aside .ntc-btn{width:100%}
.ntc-aside__list{display:grid;gap:9px;margin-top:20px;padding-top:20px;border-top:1px solid var(--ntc-line)}
.ntc-aside__list a{display:flex;align-items:center;gap:9px;font-size:14px;color:var(--ntc-mute)}
.ntc-aside__list a:hover{color:var(--ntc-gold)}
.ntc-aside__list .ntc-i{width:15px;height:15px;flex:0 0 auto}

/* ---- blog ------------------------------------------------------------- */
.ntc-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ntc-post{border:1px solid var(--ntc-line);border-radius:var(--ntc-r);overflow:hidden;
  background:linear-gradient(170deg,rgba(255,255,255,.05),rgba(255,255,255,.012));
  display:flex;flex-direction:column;transition:transform .22s,border-color .22s}
.ntc-post:hover{transform:translateY(-4px);border-color:rgba(228,169,60,.4)}
.ntc-post__img{aspect-ratio:16/9;background:var(--ntc-ink3);overflow:hidden}
.ntc-post__img img{width:100%;height:100%;object-fit:cover}
.ntc-post__b{padding:22px 22px 24px;display:flex;flex-direction:column;flex:1}
.ntc-post__meta{font:500 11px/1 "JetBrains Mono",monospace;letter-spacing:.1em;
  text-transform:uppercase;color:var(--ntc-gold);margin-bottom:12px}
.ntc-post h3{font-size:19px;margin-bottom:10px}
.ntc-post p{font-size:14.3px}
.ntc-pager{display:flex;gap:10px;justify-content:center;margin-top:46px;flex-wrap:wrap}
.ntc-pager .page-numbers{display:inline-flex;align-items:center;justify-content:center;
  min-width:46px;height:46px;padding:0 14px;border:1px solid var(--ntc-line);border-radius:12px;
  background:var(--ntc-glass);font-size:14px}
.ntc-pager .page-numbers.current{background:var(--ntc-crimson);border-color:transparent;color:#fff}

/* ---- article ---------------------------------------------------------- */
.ntc-article{max-width:48rem;margin-left:auto;margin-right:auto}
.ntc-article :where(p,ul,ol,blockquote,figure,table,pre){margin-bottom:22px}
.ntc-article :where(p,li){font-size:17px;line-height:1.75;color:rgba(247,243,239,.82)}
.ntc-article :where(h2){font-size:clamp(26px,3vw,34px);margin:44px 0 16px}
.ntc-article :where(h3){font-size:21px;margin:32px 0 12px}
.ntc-article :where(ul,ol){padding-left:22px}
.ntc-article :where(ul) li{list-style:disc}
.ntc-article :where(ol) li{list-style:decimal}
.ntc-article :where(li){margin-bottom:9px}
.ntc-article :where(a){color:var(--ntc-gold);text-decoration:underline;text-underline-offset:3px}
.ntc-article :where(img){border-radius:14px;margin:12px 0}
.ntc-article :where(blockquote){border-left:3px solid var(--ntc-crimson);padding-left:22px;
  font-family:Fraunces,serif;font-size:21px;color:var(--ntc-paper)}
.ntc-article :where(table){width:100%;border-collapse:collapse}
.ntc-article :where(th,td){border:1px solid var(--ntc-line);padding:11px 13px;text-align:left;font-size:15px}
/* Old posts can contain a stray closing div; keep long tokens from
   blowing the column out. */
.ntc-article{overflow-wrap:anywhere}

/* ---- form ------------------------------------------------------------- */
.ntc-form{display:grid;gap:16px}
.ntc-f2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ntc-field{display:grid;gap:7px}
.ntc-field label{font-size:13.5px;font-weight:600;color:var(--ntc-paper)}
.ntc-field label span{color:var(--ntc-crimson)}
.ntc-field small{font-size:12.5px;color:var(--ntc-mute2)}
.ntc-field :where(input,select,textarea){width:100%;min-height:50px;padding:13px 15px;
  border:1px solid var(--ntc-line);border-radius:12px;background:rgba(255,255,255,.04);
  color:var(--ntc-paper);transition:border-color .18s,background .18s}
.ntc-field textarea{min-height:120px;resize:vertical}
.ntc-field :where(input,select,textarea):focus{border-color:rgba(228,169,60,.6);
  background:rgba(255,255,255,.07);outline:none}
.ntc-field :where(input)::placeholder,.ntc-field textarea::placeholder{color:rgba(247,243,239,.34)}
.ntc-field select option{background:var(--ntc-ink2);color:var(--ntc-paper)}
.ntc-field--submit{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.ntc-form__alt{font-size:13.5px;color:var(--ntc-mute)}
.ntc-form__alt a{color:var(--ntc-gold);text-decoration:underline;text-underline-offset:3px}
.ntc-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ntc-note{border-radius:12px;padding:14px 16px;font-size:14.4px;border:1px solid}
.ntc-note--ok{border-color:rgba(60,190,120,.45);background:rgba(60,190,120,.12);color:#9BE8BE}
.ntc-note--err{border-color:rgba(200,16,46,.5);background:rgba(200,16,46,.14);color:#FFC2CC}

/* ---- final CTA -------------------------------------------------------- */
.ntc-final{position:relative;overflow:hidden;padding-top:var(--ntc-sp);padding-bottom:var(--ntc-sp)}
.ntc-final::before{content:"";position:absolute;inset:0;
  background:radial-gradient(52% 72% at 50% 108%,rgba(142,22,38,.75),transparent 70%)}
.ntc-final .ntc-wrap{position:relative;z-index:1;text-align:center}
.ntc-final h2{font-size:clamp(32px,4.4vw,58px);max-width:17em;margin:18px auto 0}
.ntc-final p{margin:20px auto 0;max-width:34em;font-size:17.5px}
.ntc-final .ntc-cta{justify-content:center;margin-top:34px}

/* ---- footer ----------------------------------------------------------- */
.ntc-foot{background:var(--ntc-ink2);border-top:1px solid var(--ntc-line);
  padding-top:64px;padding-bottom:30px}
.ntc-foot__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.25fr;gap:40px}
.ntc-foot__brand p{margin-top:16px;font-size:14.4px;max-width:30em}
.ntc-foot__social{display:flex;gap:18px;margin-top:20px;font-size:13.5px;color:var(--ntc-mute)}
.ntc-foot__social a:hover{color:var(--ntc-gold)}
.ntc-foot__col h3{font-size:13px;letter-spacing:.12em;text-transform:uppercase;
  font-family:Inter,sans-serif;font-weight:600;color:var(--ntc-gold);margin-bottom:16px}
.ntc-foot__col li{margin-bottom:10px}
.ntc-foot__col a{font-size:14.4px;color:var(--ntc-mute)}
.ntc-foot__col a:hover{color:var(--ntc-paper)}
.ntc-foot__contact li{display:flex;align-items:flex-start;gap:10px;font-size:14.4px;color:var(--ntc-mute)}
.ntc-foot__contact .ntc-i{width:17px;height:17px;color:var(--ntc-gold);flex:0 0 auto;margin-top:3px}
.ntc-foot__bar{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
  margin-top:48px;padding-top:24px;border-top:1px solid var(--ntc-line);
  font-size:12.8px;color:var(--ntc-mute2)}

/* ---- assistant figure ------------------------------------------------
   Idle life: the head bobs and breathes, eyes blink then glance aside, the
   antenna tip pulses and the halo turns. All of it stops under
   prefers-reduced-motion and while the panel is off screen.             */
.ntc-fig{display:block}
.ntc-fig--md{width:44px;height:44px}
.ntc-fig--sm{width:34px;height:34px}
.ntc-fig svg{width:100%;height:100%;display:block;overflow:visible}

html.ntc-js .ntc-fig__body{animation:ntc-bob 4.2s ease-in-out infinite;transform-origin:50% 72%}
@keyframes ntc-bob{0%,100%{transform:translateY(0) rotate(0deg)}
  25%{transform:translateY(-1.1px) rotate(-1.1deg)}
  50%{transform:translateY(.5px) rotate(0deg)}
  75%{transform:translateY(-.7px) rotate(1.1deg)}}

.ntc-fig__halo{animation:ntc-spin 14s linear infinite;transform-origin:50% 50%}
@keyframes ntc-spin{to{transform:rotate(360deg)}}

html.ntc-js .ntc-fig__eyes{animation:ntc-glance 7.5s ease-in-out infinite}
@keyframes ntc-glance{0%,62%,100%{transform:translateX(0)}
  70%,80%{transform:translateX(2.1px)}88%{transform:translateX(-1.4px)}}
.ntc-fig__eye{animation:ntc-blink 5.2s ease-in-out infinite;transform-origin:50% 50%}
@keyframes ntc-blink{0%,92%,100%{transform:scaleY(1)}95%{transform:scaleY(.12)}}

.ntc-fig__tip{animation:ntc-pulse 2.4s ease-in-out infinite;transform-origin:50% 50%}
@keyframes ntc-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.82)}}
html.ntc-js .ntc-fig__wave{animation:ntc-wave 2.4s ease-in-out infinite;transform-origin:50% 50%}
@keyframes ntc-wave{0%,100%{opacity:0;transform:scale(.6)}40%{opacity:.5}70%{opacity:0;transform:scale(1.45)}}

.ntc-fig__bar{transform-origin:50% 100%}
html.ntc-speaking .ntc-fig__bar{animation:ntc-talk .52s ease-in-out infinite alternate}
html.ntc-speaking .ntc-fig__bar:nth-child(2){animation-delay:.16s}
html.ntc-speaking .ntc-fig__bar:nth-child(3){animation-delay:.31s}
@keyframes ntc-talk{from{transform:scaleY(.45)}to{transform:scaleY(1.5)}}
html.ntc-listening .ntc-fig__halo{stroke:#25D366;opacity:.95;animation-duration:3s}
html.ntc-listening .ntc-fig__visor{fill:#06301A}
html.ntc-thinking .ntc-fig__halo{stroke:var(--ntc-gold);opacity:.95;animation-duration:1.3s}
html.ntc-thinking .ntc-fig__eye{animation-duration:1.1s}

/* ---- dock + chat ------------------------------------------------------ */
.ntc-dock{position:fixed;left:22px;bottom:22px;z-index:80;display:flex;align-items:center;gap:12px}
.ntc-dock__btn{position:relative;width:66px;height:66px;border-radius:50%;cursor:pointer;flex:0 0 auto;
  display:grid;place-items:center;border:1px solid rgba(228,169,60,.45);
  background:linear-gradient(150deg,rgba(142,22,38,.95),rgba(9,8,10,.95));
  box-shadow:0 14px 38px -12px rgba(0,0,0,.9);
  transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s ease}
html.ntc-js .ntc-dock__btn{animation:ntc-float 5s ease-in-out infinite}
@keyframes ntc-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
.ntc-dock__btn:hover{transform:translateY(-5px) scale(1.05);animation-play-state:paused;
  box-shadow:0 20px 46px -12px rgba(200,16,46,.6)}
/* expanding ring, so the launcher reads as waiting rather than parked */
.ntc-dock__btn::after{content:"";position:absolute;inset:-2px;border-radius:50%;pointer-events:none;
  border:1.5px solid rgba(228,169,60,.55);opacity:0}
html.ntc-js .ntc-dock__btn::after{animation:ntc-halo 3.4s cubic-bezier(.2,.8,.2,1) infinite}
@keyframes ntc-halo{0%{opacity:.55;transform:scale(1)}70%,100%{opacity:0;transform:scale(1.42)}}
html.ntc-listening .ntc-dock__btn{border-color:#25D366}
html.ntc-listening .ntc-dock__btn::after{border-color:#25D366;animation-duration:1.5s}
.ntc-dock__note{position:relative;max-width:250px;padding:13px 32px 13px 15px;border-radius:14px;
  border:1px solid var(--ntc-line);background:rgba(16,13,17,.96);backdrop-filter:blur(10px);
  box-shadow:0 14px 38px -16px rgba(0,0,0,.9)}
.ntc-dock__tag{display:block;font:500 9.5px/1 "JetBrains Mono",monospace;letter-spacing:.16em;
  text-transform:uppercase;color:var(--ntc-gold);margin-bottom:6px}
.ntc-dock__note p{font-size:13.4px;line-height:1.45;color:var(--ntc-paper)}
.ntc-dock__note button{position:absolute;top:7px;right:9px;background:none;border:0;cursor:pointer;
  color:var(--ntc-mute2);font-size:17px;line-height:1;padding:3px}

.ntc-chat{position:fixed;left:22px;bottom:22px;z-index:85;width:min(394px,calc(100vw - 32px));
  max-height:min(640px,calc(100vh - 44px));display:flex;flex-direction:column;
  border:1px solid var(--ntc-line);border-radius:20px;overflow:hidden;
  background:rgba(13,11,15,.985);backdrop-filter:blur(18px);
  box-shadow:0 36px 90px -26px rgba(0,0,0,.96)}
.ntc-chat__head{display:flex;align-items:center;gap:12px;padding:15px 16px;
  border-bottom:1px solid var(--ntc-line);background:rgba(255,255,255,.03)}
.ntc-chat__who{display:flex;align-items:center;gap:11px}
.ntc-chat__who strong{display:block;font-size:14.6px;font-weight:600}
.ntc-chat__who small{display:block;font-size:11.5px;color:#7FD6A0}
.ntc-chat__head button{margin-left:auto;background:none;border:0;cursor:pointer;
  color:var(--ntc-mute);padding:6px}
.ntc-chat__head .ntc-i{width:20px;height:20px}
.ntc-chat__log{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:11px;
  min-height:190px;scrollbar-width:thin}
.ntc-msg{max-width:86%;padding:11px 14px;border-radius:14px;font-size:14.3px;line-height:1.55;
  white-space:pre-wrap;overflow-wrap:anywhere}
.ntc-msg--bot{align-self:flex-start;background:rgba(255,255,255,.055);
  border:1px solid var(--ntc-line);border-bottom-left-radius:5px}
.ntc-msg--me{align-self:flex-end;background:linear-gradient(135deg,var(--ntc-crimson),var(--ntc-maroon));
  color:#fff;border-bottom-right-radius:5px}
.ntc-msg--wait{display:flex;gap:5px;align-items:center}
.ntc-msg--wait i{width:6px;height:6px;border-radius:50%;background:var(--ntc-gold);
  animation:ntc-dot 1.1s ease-in-out infinite}
.ntc-msg--wait i:nth-child(2){animation-delay:.18s}
.ntc-msg--wait i:nth-child(3){animation-delay:.36s}
@keyframes ntc-dot{0%,100%{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}
.ntc-chat__chips{display:flex;gap:7px;padding:0 16px 12px;flex-wrap:wrap}
.ntc-chat__chips button{font-size:12.6px;padding:8px 12px;border-radius:999px;cursor:pointer;
  border:1px solid var(--ntc-line);background:rgba(255,255,255,.04);color:var(--ntc-mute)}
.ntc-chat__chips button:hover{border-color:rgba(228,169,60,.5);color:var(--ntc-paper)}
.ntc-chat__bar{display:flex;align-items:center;gap:9px;padding:12px 14px;
  border-top:1px solid var(--ntc-line);background:rgba(255,255,255,.025)}
.ntc-chat__bar input{flex:1;min-height:44px;padding:10px 14px;border-radius:999px;
  border:1px solid var(--ntc-line);background:rgba(255,255,255,.05);color:var(--ntc-paper)}
.ntc-chat__bar input::placeholder{color:rgba(247,243,239,.34)}
.ntc-chat__bar button{width:44px;height:44px;border-radius:50%;cursor:pointer;flex:0 0 auto;
  display:grid;place-items:center;border:1px solid var(--ntc-line);background:rgba(255,255,255,.05);
  color:var(--ntc-paper)}
.ntc-chat__bar button[type=submit]{background:linear-gradient(135deg,var(--ntc-crimson),var(--ntc-maroon));
  border-color:transparent;color:#fff}
.ntc-chat__mic.is-on{background:#25D366;border-color:transparent;color:#06301A}
.ntc-chat__bar .ntc-i{width:19px;height:19px}
.ntc-chat__foot{padding:0 16px 14px;font-size:11.4px;color:var(--ntc-mute2);line-height:1.5}
.ntc-chat__foot a{color:var(--ntc-gold);text-decoration:underline}

/* ---- WhatsApp --------------------------------------------------------- */
.ntc-wa{position:fixed;right:22px;bottom:22px;z-index:80;width:60px;height:60px;border-radius:50%;
  display:grid;place-items:center;background:#25D366;color:#06301A;
  box-shadow:0 14px 34px -10px rgba(37,211,102,.65);transition:transform .2s}
.ntc-wa:hover{transform:translateY(-3px) scale(1.05)}
.ntc-wa .ntc-i{width:30px;height:30px;stroke-width:1.5}
.ntc-wapop{position:fixed;right:22px;bottom:96px;z-index:81;width:min(304px,calc(100vw - 44px));
  padding:18px 18px 16px;border-radius:16px;border:1px solid var(--ntc-line);
  background:rgba(16,13,17,.98);backdrop-filter:blur(12px);
  box-shadow:0 26px 60px -20px rgba(0,0,0,.92)}
.ntc-wapop p{font-size:13.8px;line-height:1.55;color:var(--ntc-paper);margin-bottom:14px}
.ntc-wapop .ntc-btn{width:100%;min-height:44px;font-size:14px}
.ntc-wapop button[data-wapop-x]{position:absolute;top:8px;right:11px;background:none;border:0;
  cursor:pointer;color:var(--ntc-mute2);font-size:18px;line-height:1;padding:3px}

/* ---- reveal (JS-gated so content is NEVER hidden without JS) ---------- */
html.ntc-js .ntc-rv{opacity:0;transform:translateY(16px)}
html.ntc-js .ntc-rv.is-in{opacity:1;transform:none;
  transition:opacity .6s cubic-bezier(.2,.8,.2,1),transform .6s cubic-bezier(.2,.8,.2,1)}

/* ---- responsive ------------------------------------------------------- */
@media(max-width:1080px){
  .ntc-foot__grid{grid-template-columns:1fr 1fr}
  .ntc-steps{grid-template-columns:1fr 1fr}
  .ntc-step:nth-child(2){border-right:0}
  .ntc-step:nth-child(1),.ntc-step:nth-child(2){border-bottom:1px solid var(--ntc-line)}
}
@media(max-width:980px){
  .ntc-menu,.ntc-nav-cta{display:none}
  .ntc-burger{display:flex}
  .ntc-hero__grid,.ntc-grid,.ntc-grid--2,.ntc-posts,.ntc-split{grid-template-columns:1fr}
  .ntc-aside{position:static}
}
@media(max-width:700px){
  /* Gutters only — never a `padding` shorthand here. */
  .ntc-wrap{padding-left:18px;padding-right:18px}
  .ntc-sheet{padding-left:18px;padding-right:18px}
  .ntc-f2{grid-template-columns:1fr}
  .ntc-steps{grid-template-columns:1fr}
  .ntc-step{border-right:0;border-bottom:1px solid var(--ntc-line)}
  .ntc-step:last-child{border-bottom:0}
  .ntc-foot__grid{grid-template-columns:1fr;gap:34px}
  .ntc-stats{gap:22px}
  .ntc-stats b{font-size:26px}
  .ntc-dock{left:14px;bottom:14px}
  .ntc-dock__note{display:none}
  .ntc-chat{left:10px;right:10px;bottom:14px;width:auto;max-height:calc(100vh - 28px)}
  .ntc-wa{right:14px;bottom:14px;width:54px;height:54px}
  .ntc-wa .ntc-i{width:27px;height:27px}
  .ntc-wapop{right:14px;bottom:80px}
  .ntc-art__row2{grid-template-columns:1fr}
  .ntc-gauge svg{width:92px;height:92px}
  .ntc-logo{width:142px;height:64px;padding:11px 14px}
  .ntc-logo img{max-height:36px}
  .ntc-chart{height:128px}
}

@media(prefers-reduced-motion:reduce){
  .ntc-takeover *,.ntc-takeover *::before,.ntc-takeover *::after{
    animation-duration:.001ms !important;animation-iteration-count:1 !important;
    transition-duration:.001ms !important;scroll-behavior:auto !important}
  html.ntc-js .ntc-rv{opacity:1;transform:none}
  .ntc-art.is-playing .ntc-chart__scan,
  .ntc-art.is-playing .ntc-live i,
  .ntc-clients[data-playing="1"] .ntc-clients__track{animation:none !important}
  .ntc-chart__bars i{height:var(--h) !important;transform:none !important;opacity:1 !important}
  html.ntc-js .ntc-fig__body,html.ntc-js .ntc-fig__eyes,html.ntc-js .ntc-fig__wave,
  html.ntc-js .ntc-dock__btn,html.ntc-js .ntc-dock__btn::after,
  .ntc-fig__halo,.ntc-fig__eye,.ntc-fig__tip{animation:none !important}
  .ntc-card.is-lit .ntc-ico::after{animation:none !important}
}
