/*
 * NXT GEN WEB / 2026 service family polish.
 * Complements custom logo, social, animation & AI pages without replacing their
 * existing logo portfolio galleries, original video samples or service content.
 * Exact brand palette: logo green #84c041, lighter green #a6d66b,
 * light green #e6efdf, light gray #f3f3f3, charcoal #262626, black #000, white.
 */
body.ngs-family #ngx-main .ngx { --ngs-green:#84c041;--ngs-soft:#a6d66b;--ngs-pale:#e6efdf;--ngs-ink:#262626;--ngs-paper:#f3f3f3;overflow:clip;}
body.ngs-family #ngx-main .ngx-hero {position:relative;isolation:isolate;overflow:hidden;padding:143px 0 82px;background:#fafbf8;border-bottom:0;}
body.ngs-family #ngx-main .ngx-hero::before {content:"";position:absolute;z-index:-1;width:530px;height:530px;border:75px solid #e6efdf;border-radius:50%;left:-380px;top:-280px;}
body.ngs-family #ngx-main .ngx-crumb {margin-bottom:33px;font-size:13px;line-height:1.5;color:#5c625b;}
body.ngs-family #ngx-main .ngx-hero-grid {grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr);gap:6%;align-items:center;}
body.ngs-family #ngx-main .ngx-hero h1 {font:700 clamp(44px,5.1vw,67px)/1.055 'Proximanova-bold',sans-serif;letter-spacing:-.045em;color:#191b18;overflow-wrap:break-word;}
body.ngs-family #ngx-main .ngx-hero h1>span {color:#262626;text-decoration:underline;text-decoration-color:#84c041;text-decoration-thickness:.10em;text-underline-offset:.18em;}
body.ngs-family #ngx-main .ngx-kicker {font:700 12px/1.4 'Proximanova-bold',sans-serif;letter-spacing:.10em;color:#3c5e2a;text-transform:uppercase;}
body.ngs-family #ngx-main .ngx-kicker:before {height:3px;background:#84c041;}
body.ngs-family #ngx-main .ngx-intro {font:18px/1.6 'Proximanova-regular',sans-serif;color:#555d51;max-width:595px;margin-top:24px;}
body.ngs-family #ngx-main .ngx-actions {gap:15px;margin-top:29px;}
body.ngs-family #ngx-main .ngx .ngx-btn {min-height:56px;border-radius:9px;padding:15px 22px;font-size:13px;box-shadow:0 6px 0 #84c0412d;transition:transform .2s,box-shadow .2s,background .2s;}
body.ngs-family #ngx-main .ngx .ngx-btn:hover {background:#a6d66b;border-color:#a6d66b;color:#262626;transform:translateY(-3px);box-shadow:0 10px 18px #84c04133;}
body.ngs-family #ngx-main .ngx .ngx-link {border-bottom:2px solid #84c041;padding-bottom:6px;color:#262626;}
body.ngs-family #ngx-main .ngx-note {display:flex;gap:9px;align-items:center;color:#535e4f;font-size:13px;margin-top:25px;}
body.ngs-family #ngx-main .ngx-note:before {content:"";width:9px;height:9px;border-radius:50%;background:#84c041;box-shadow:0 0 0 5px #84c04128;flex:0 0 9px;}
body.ngs-family #ngx-main .ngx-visual {min-width:0;}
/* The display panel borrows the SEO hero's handsome deep-ink surface,
   but each service retains its own content and illustrative geometry. */
body.ngs-family #ngx-main .ngx-visual .ngx-board {position:relative;isolation:isolate;min-height:418px;padding:32px;background:#151515;border:1px solid #344133;border-radius:19px;box-shadow:17px 19px 0 #a6d66b70,0 30px 70px #111a1240;color:#fff;overflow:hidden;}
body.ngs-family #ngx-main .ngx-visual .ngx-board:before {content:"";position:absolute;z-index:-1;width:320px;height:320px;right:-145px;top:-145px;border:1px solid #a6d66b70;border-radius:50%;box-shadow:0 0 0 45px #a6d66b10,0 0 0 90px #84c0410b;animation:ngsOrbit 18s linear infinite;}
body.ngs-family #ngx-main .ngx-visual .ngx-board:after {content:"";position:absolute;z-index:-1;inset:0;opacity:.23;background-image:linear-gradient(#dceacb2c 1px,transparent 1px),linear-gradient(90deg,#dceacb2c 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(#000,transparent);}
body.ngs-family #ngx-main .ngx-visual .ngx-board .ngx-eyebrow {font:700 11px/1.4 'Proximanova-bold',sans-serif;letter-spacing:.12em;color:#a6d66b;}
body.ngs-family #ngx-main .ngx-board>strong {display:block;color:#fff;font:700 26px/1.18 'Proximanova-bold',sans-serif;margin-top:20px;}
body.ngs-family #ngx-main .ngx-board>p {color:#d3dfce;font-size:14px;line-height:1.4;margin-top:14px;}
body.ngs-family #ngx-main .ngx-logo-mark {margin-top:22px;border:1px solid #435040;border-radius:12px;background:radial-gradient(circle at 50% 35%,#2b3a2b 0%,#172119 70%);box-shadow:inset 0 0 0 1px #ffffff18;}
body.ngs-family #ngx-main .ngx-logo-mark svg {max-height:205px;animation:ngsLogo 7s ease-in-out infinite;}
body.ngs-family #ngx-main .ngx-logo-mark svg path[stroke="#262626"]{stroke:#fff;}
body.ngs-family #ngx-main .ngx-swatches {margin-top:17px;}
body.ngs-family #ngx-main .ngx-swatches i{border-radius:8px;width:38px;height:25px;}
body.ngs-family #ngx-main .ngx-swatches i:nth-child(1){background:#84c041;}
body.ngs-family #ngx-main .ngx-swatches i:nth-child(2){background:#a6d66b;}
body.ngs-family #ngx-main .ngx-swatches i:nth-child(3){background:#e6efdf;}
body.ngs-family #ngx-main .ngx-swatches i:nth-child(4){background:#fff;}
body.ngs-family #ngx-main .ngx-visual--logo .ngx-float {width:100%;margin:18px 0 0;position:static;padding:13px 17px;background:#e6efdf;color:#262626;border-left:4px solid #84c041;font-size:15px;line-height:1.4;border-radius:6px;}
/* Social media: positive green card and deep charcoal card,
   clean text rather than cluttered icon badges. */
body.ngs-family #ngx-main .ngx-social-tiles {gap:12px;margin:23px 0 21px;grid-template-columns:1.15fr 1fr;}
body.ngs-family #ngx-main .ngx-social-tiles>div {min-height:210px;padding:22px;border-radius:12px;background:#a6d66b;transition:transform .3s;}
body.ngs-family #ngx-main .ngx-social-tiles>div:hover {transform:translateY(-4px);}
body.ngs-family #ngx-main .ngx-social-tiles>div:nth-child(2){background:#262626;border:1px solid #ffffff35;}
body.ngs-family #ngx-main .ngx-social-tiles>div span {font:700 10px/1.4 'Proximanova-bold',sans-serif;color:#374b2d;letter-spacing:.1em;}
body.ngs-family #ngx-main .ngx-social-tiles>div+div span {color:#a6d66b;}
body.ngs-family #ngx-main .ngx-social-tiles strong {color:#262626;font:700 clamp(21px,2vw,28px)/1.11 'Proximanova-bold',sans-serif;}
body.ngs-family #ngx-main .ngx-social-tiles>div+div strong {color:#fff;}
body.ngs-family #ngx-main .ngx-social-tiles svg{width:100%;height:125px;}
/* AI: maximize the original illustrated question-to-answer design, remove stock photos. */
body.ngs-family #ngx-main .ai-hero-visual .ngx-board {padding:31px!important;min-height:416px!important;}
body.ngs-family #ngx-main .ai-hero-visual .ngx-social-tiles {margin:22px 0 18px!important;grid-template-columns:1fr 1fr;}
body.ngs-family #ngx-main .ai-hero-visual .ngx-social-tiles>div{min-height:210px!important;padding:20px!important;gap:13px!important;}
body.ngs-family #ngx-main .ai-hero-visual .ngx-social-tiles strong {font-size:clamp(20px,2.1vw,25px)!important;}
body.ngs-family #ngx-main .ai-hero-visual .ngx-board>strong{color:#fff;font-size:23px;margin-top:14px!important;}
body.ngs-family #ngx-main .ai-hero-visual .ngx-board>p {margin-top:12px;color:#d3dfce;}
body.ngs-family #ngx-main .ai-hero-visual .ngx-board small {display:block;margin-top:15px;color:#cbd8c5;font:12px/1.4 'Proximanova-regular',sans-serif;}
/* Animation retains real Vimeo video at its top, with a framed premium stage. */
body.ngs-family #ngx-main .nga-hero-video {padding:16px;border-radius:18px;border:1px solid #d9e6d0;background:#e6efdf;box-shadow:16px 17px 0 #a6d66b55,0 24px 55px #26262617;}
body.ngs-family #ngx-main .nga-hero-video .nga-player{border-radius:11px;overflow:hidden;}
body.ngs-family #ngx-main .nga-hero-caption {padding:17px 6px 0;}
body.ngs-family #ngx-main .nga-hero-caption .ngx-eyebrow{color:#386524;font-size:11px;}
body.ngs-family #ngx-main .nga-hero-caption>strong{display:block;color:#262626;font-size:23px;line-height:1.2;margin:7px 0 10px;}
body.ngs-family #ngx-main .nga-video {border:1px solid #e0e8da;border-radius:12px;overflow:hidden;background:#fff;}
body.ngs-family #ngx-main .nga-video h4{padding:16px 20px 0;color:#262626;}
body.ngs-family #ngx-main .nga-video>a{margin:12px 20px 20px;display:inline-flex;color:#426c2d;font:700 14px/1.4 'Proximanova-bold',sans-serif;}
/* Shared sections. */
body.ngs-family #ngx-main .ngx-section {padding:85px 0;}
body.ngs-family #ngx-main .ngx-section:nth-of-type(even){background:#f3f3f3;}
body.ngs-family #ngx-main .ngx-section-head {margin-bottom:32px;}
body.ngs-family #ngx-main .ngx-section-head h2{font:700 clamp(32px,4.1vw,54px)/1.1 'Proximanova-bold',sans-serif;color:#262626;letter-spacing:-.035em;}
body.ngs-family #ngx-main .ngx-section-head>p{font:17px/1.55 'Proximanova-regular',sans-serif;color:#555;}
body.ngs-family #ngx-main .ngx-grid {gap:15px;}
body.ngs-family #ngx-main .ngx-card {min-height:245px;display:flex;flex-direction:column;padding:27px;border-radius:13px;border:1px solid #e1e9d9;background:#fff;transition:transform .25s,box-shadow .25s;}
body.ngs-family #ngx-main .ngx-card:nth-child(3n+1) {background:#e6efdf;border-color:#dceacb;}
body.ngs-family #ngx-main .ngx-card:nth-child(3n+2) {background:#f3f3f3;}
body.ngs-family #ngx-main .ngx-card:hover{transform:translateY(-4px);box-shadow:0 18px 32px #26262612;}
body.ngs-family #ngx-main .ngx-card .ngx-number {display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;margin:0 0 26px;border:1px solid #84c041;border-radius:12px;background:#fff;color:#3c7127;font:700 16px/1 'Proximanova-bold',sans-serif;}
body.ngs-family #ngx-main .ngx-card h3{margin-bottom:12px;font-size:24px;line-height:1.19;}
body.ngs-family #ngx-main .ngx-card p{font-size:16px;line-height:1.55;}
body.ngs-family #ngx-main .ngx-process {gap:16px;}
body.ngs-family #ngx-main .ngx-process li{min-height:236px;padding:24px;border:1px solid #dfe8d8;border-top:5px solid #84c041;border-radius:12px;background:#fff;}
body.ngs-family #ngx-main .ngx-process li:nth-child(even){border-top-color:#a6d66b;}
body.ngs-family #ngx-main .ngx-process span{display:block;font:700 28px/1 'Proximanova-bold',sans-serif;color:#5a8c36;margin:0 0 26px;}
body.ngs-family #ngx-main .ngx-process h3{font-size:22px;margin:0 0 11px;}
body.ngs-family #ngx-main .ngx-process p{font-size:15px;line-height:1.57;}
body.ngs-family #ngx-main .ai-connections {padding:21px;border:1px solid #dce9d2;border-radius:13px;background:#e6efdf;}
body.ngs-family #ngx-main .ai-connections svg {max-height:175px!important;}
/* High-conversion standalone-service band, replacing the unrelated upsell grid. */
body.ngs-family #ngx-main .ngs-family-quote{position:relative;isolation:isolate;overflow:hidden;padding:57px 0;background:#000;color:#fff;}
body.ngs-family #ngx-main .ngs-family-quote:before{content:"";z-index:-1;position:absolute;width:420px;height:420px;border:60px solid #84c04120;border-radius:50%;top:-240px;right:-120px;}
body.ngs-family #ngx-main .ngs-family-quote>.ngx-shell{display:flex;align-items:center;justify-content:space-between;gap:45px;}
body.ngs-family #ngx-main .ngs-family-quote .ngx-kicker{color:#a6d66b;margin-bottom:15px;}
body.ngs-family #ngx-main .ngs-family-quote h2{font:700 clamp(32px,3.5vw,48px)/1.1 'Proximanova-bold',sans-serif;color:#fff;letter-spacing:-.03em;margin:0 0 14px;}
body.ngs-family #ngx-main .ngs-family-quote p:not(.ngx-kicker){max-width:700px;color:#d4e4cd;font-size:16px;line-height:1.55;}
body.ngs-family #ngx-main .ngs-family-quote .ngx-btn{flex:0 0 auto;background:#84c041;color:#262626;border-color:#84c041;border-radius:9px;padding:17px 23px;box-shadow:none;min-width:225px;}
body.ngs-family #ngx-main .ngs-family-quote .ngx-btn:hover{background:#a6d66b;border-color:#a6d66b;color:#262626;}
body.ngs-family #ngx-main .ngx-cta {background:#000;}
body.ngs-family #ngx-main .ngx-cta .ngx-btn{background:#84c041;color:#262626;border-color:#84c041;border-radius:8px;}
body.ngs-family #ngx-main .ngx-cta .ngx-btn:hover{background:#a6d66b;border-color:#a6d66b;}
/* All landing pages are email-first, clients nationwide. */
body.ngs-family #ngx-main .ngx-note{color:#535e4f}
@keyframes ngsOrbit{to{transform:rotate(360deg)}}
@keyframes ngsLogo{0%,100%{transform:scale(1)}50%{transform:scale(1.045)}}
@media(max-width:1050px){
 body.ngs-family #ngx-main .ngx-hero-grid{gap:35px;}
 body.ngs-family #ngx-main .ngx-hero h1{font-size:clamp(41px,4.9vw,58px)}
 body.ngs-family #ngx-main .ngx-visual .ngx-board{padding:24px;min-height:386px}
 body.ngs-family #ngx-main .ngx-social-tiles>div{min-height:180px;padding:17px;}
 body.ngs-family #ngx-main .ngx-social-tiles strong{font-size:21px}
}
@media(max-width:800px){
 body.ngs-family #ngx-main .ngx-hero{padding:122px 0 66px!important;}
 body.ngs-family #ngx-main .ngx-hero-grid{grid-template-columns:1fr;gap:34px;align-items:start;}
 body.ngs-family #ngx-main .ngx-hero h1{font-size:clamp(42px,7vw,64px)}
 body.ngs-family #ngx-main .ngx-visual{width:100%;max-width:610px;margin:0 auto;}
 body.ngs-family #ngx-main .ngx-visual .ngx-board{min-height:374px;}
 body.ngs-family #ngx-main .ngx-section{padding:62px 0!important;}
 body.ngs-family #ngx-main .ngx-process{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.ngs-family #ngx-main .ngs-family-quote>.ngx-shell{display:block;}
 body.ngs-family #ngx-main .ngs-family-quote .ngx-btn{margin-top:24px;}
}
@media(max-width:560px){
 body.ngs-family #ngx-main .ngx-hero{padding-top:105px!important;padding-bottom:48px!important;}
 body.ngs-family #ngx-main .ngx-hero h1{font-size:clamp(37px,10vw,48px);}
 body.ngs-family #ngx-main .ngx-intro{font-size:16px}
 body.ngs-family #ngx-main .ngx-actions{flex-direction:column;align-items:stretch;gap:12px;}
 body.ngs-family #ngx-main .ngx-actions .ngx-btn{width:100%;}
 body.ngs-family #ngx-main .ngx-visual .ngx-board{padding:21px!important;min-height:347px;}
 body.ngs-family #ngx-main .ngx-social-tiles{gap:9px;}
 body.ngs-family #ngx-main .ngx-social-tiles>div{min-height:155px;padding:13px;}
 body.ngs-family #ngx-main .ngx-social-tiles strong{font-size:19px;}
 body.ngs-family #ngx-main .ai-hero-visual .ngx-board{min-height:350px!important;padding:20px!important;}
 body.ngs-family #ngx-main .ai-hero-visual .ngx-social-tiles>div{min-height:152px!important;padding:13px!important;}
 body.ngs-family #ngx-main .ai-hero-visual .ngx-social-tiles strong{font-size:17px!important;}
 body.ngs-family #ngx-main .ngx-grid{grid-template-columns:1fr;}
 body.ngs-family #ngx-main .ngx-card{min-height:0;padding:24px;}
 body.ngs-family #ngx-main .ngx-process{grid-template-columns:1fr;}
 body.ngs-family #ngx-main .ngx-process li{min-height:0;padding:23px;}
 body.ngs-family #ngx-main .ngs-family-quote{padding:50px 0;}
 body.ngs-family #ngx-main .ngs-family-quote h2{font-size:34px;}
 body.ngs-family #ngx-main .ngs-family-quote .ngx-btn{width:100%;}
 body.ngs-family #ngx-main .nga-hero-video{padding:10px;box-shadow:9px 11px 0 #a6d66b55;}
}
@media(prefers-reduced-motion:reduce){
 body.ngs-family #ngx-main .ngx-visual .ngx-board:before,body.ngs-family #ngx-main .ngx-logo-mark svg{animation:none!important;}
 body.ngs-family #ngx-main .ngx-card,body.ngs-family #ngx-main .ngx-social-tiles>div,body.ngs-family #ngx-main .ngx .ngx-btn{transition:none!important;}
 body.ngs-family #ngx-main .ngx-card:hover,body.ngs-family #ngx-main .ngx-social-tiles>div:hover{transform:none!important;}
}
