/* seo-node.com -- Design System */
/* MEGA MENU nav | ANIMATED SVG NODE NETWORK HERO | CLIENT LOGO STRIP */
/* Monthly/One-time PRICING TOGGLE | 2 LARGE testimonial cards | LIGHT FOOTER */
/* Space Mono + IBM Plex Sans | Teal #0E3D4A + Lime #B3E040 | Ithaca, NY */
@import url('https://fonts.googleapis.com/css2?family=Space+Mono:ital,wght@0,400;0,700;1,400&family=IBM+Plex+Sans:wght@300;400;500;600;700&display=swap');
:root{
  --sn-teal:#0E3D4A;--sn-teal-dk:#091F25;--sn-teal-lt:#175A6D;
  --sn-lime:#B3E040;--sn-lime-dk:#8FC02D;--sn-lime-lt:#CCF060;
  --sn-cream:#FDFBF8;--sn-stone:#F0EDE7;--sn-mid:#E4E0D9;
  --sn-ink:#1A2620;--sn-mist:#6B7E7A;--sn-mist-lt:#9BADA9;
  --sn-border:rgba(26,38,32,.09);--sn-border-dk:rgba(255,255,255,.1);
  --sn-shadow:0 2px 16px rgba(14,61,74,.07);
  --sn-shadow-lg:0 10px 48px rgba(14,61,74,.14);
  --sn-r4:4px;--sn-r8:8px;--sn-r12:12px;--sn-r16:16px;
  --sn-wrap:1160px;
  --sn-fh:'Space Mono',monospace;
  --sn-fb:'IBM Plex Sans',system-ui,sans-serif;
  --sn-ease:all .22s cubic-bezier(.4,0,.2,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{font-size:100%;overflow-x:hidden;scroll-behavior:smooth;}
body{font-family:var(--sn-fb);font-size:0.9375rem;line-height:1.75;color:var(--sn-ink);background:var(--sn-cream);-webkit-font-smoothing:antialiased;overflow-x:hidden;}
img,svg{max-width:100%;height:auto;display:block;}
a{text-decoration:none;color:inherit;}
button{font-family:var(--sn-fb);cursor:pointer;border:none;background:none;}
input,select,textarea{font-family:var(--sn-fb);}
ul,ol{list-style:none;}
.sn-bind{max-width:var(--sn-wrap);margin:0 auto;padding:0 clamp(1.25rem,4vw,2.5rem);width:100%;}
.sn-zone{padding:clamp(4rem,7vw,6rem) 0;}
.sn-kicker{font-family:var(--sn-fh);font-size:0.69rem;font-weight:400;letter-spacing:.18em;text-transform:uppercase;color:var(--sn-teal);margin-bottom:.875rem;}
.sn-h2{font-family:var(--sn-fh);font-size:clamp(1.5rem,3.5vw,2.5rem);font-weight:700;color:var(--sn-ink);line-height:1.15;letter-spacing:-.02em;}
.sn-h2-lt{color:var(--sn-cream);}
.sn-para{font-size:clamp(0.9375rem,1.3vw,1.0625rem);color:var(--sn-mist);line-height:1.8;}
.sn-fade{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease;}
.sn-fade.sn-vis{opacity:1;transform:none;}
.sn-pg-top{background:var(--sn-teal);padding:clamp(5rem,9vw,8rem) 0 clamp(3rem,5vw,4.5rem);}
.sn-pg-h1{font-family:var(--sn-fh);font-size:clamp(1.75rem,4.5vw,3.25rem);font-weight:700;text-align:center;color:var(--sn-cream);letter-spacing:-.02em;margin-bottom:.5rem;}
.sn-pg-sub{text-align:center;color:rgba(253,251,248,.3);font-size:clamp(0.9375rem,1.3vw,1.125rem);max-width:520px;margin:0 auto;}

/* BUTTONS */
.sn-btn-lime{display:inline-flex;align-items:center;gap:.4rem;padding:.7rem 1.875rem;background:var(--sn-lime);color:var(--sn-ink);font-family:var(--sn-fh);font-size:0.8125rem;font-weight:700;border-radius:var(--sn-r4);transition:var(--sn-ease);}
.sn-btn-lime:hover{background:var(--sn-lime-lt);transform:translateY(-1px);}
.sn-btn-teal{display:inline-flex;align-items:center;gap:.4rem;padding:.7rem 1.875rem;background:var(--sn-teal);color:var(--sn-cream);font-family:var(--sn-fh);font-size:0.8125rem;font-weight:700;border-radius:var(--sn-r4);transition:var(--sn-ease);}
.sn-btn-teal:hover{background:var(--sn-teal-lt);}
.sn-btn-out{display:inline-flex;align-items:center;gap:.4rem;padding:.65rem 1.75rem;border:1.5px solid rgba(253,251,248,.2);color:var(--sn-cream);font-family:var(--sn-fh);font-size:0.8125rem;font-weight:700;border-radius:var(--sn-r4);transition:var(--sn-ease);}
.sn-btn-out:hover{border-color:var(--sn-lime);color:var(--sn-lime);}
.sn-btn-out-dk{display:inline-flex;align-items:center;gap:.4rem;padding:.65rem 1.75rem;border:1.5px solid var(--sn-border);color:var(--sn-ink);font-family:var(--sn-fh);font-size:0.8125rem;font-weight:700;border-radius:var(--sn-r4);transition:var(--sn-ease);}
.sn-btn-out-dk:hover{border-color:var(--sn-teal);color:var(--sn-teal);}

/* ====== STICKY MEGA MENU NAV (new complex mega menu in series) ====== */
.sn-helm{background:var(--sn-teal-dk);position:sticky;top:0;z-index:900;border-bottom:1px solid rgba(255,255,255,.07);transition:box-shadow .25s;}
.sn-helm.sn-helm-sd{box-shadow:0 4px 32px rgba(14,61,74,.3);}
.sn-helm-wire{max-width:var(--sn-wrap);margin:0 auto;padding:0 clamp(1.25rem,4vw,2.5rem);height:70px;display:flex;align-items:center;gap:1.5rem;}
.sn-helm-brand{font-family:var(--sn-fh);font-size:clamp(1.05rem,2.2vw,1.45rem);font-weight:700;color:var(--sn-cream);letter-spacing:-.02em;flex-shrink:0;text-decoration:none;}
.sn-helm-brand em{color:var(--sn-lime);font-style:normal;}
.sn-helm-nav{display:flex;align-items:center;gap:.15rem;flex:1;margin-left:.5rem;}
.sn-helm-a{font-family:var(--sn-fb);font-size:1.0rem;font-weight:500;color:rgba(253,251,248,.45);padding:.4rem .75rem;border-radius:var(--sn-r4);transition:var(--sn-ease);cursor:pointer;position:relative;}
.sn-helm-a:hover,.sn-helm-a[aria-current]{color:var(--sn-cream);}
.sn-helm-mega-trg{display:flex;align-items:center;gap:.25rem;}
.sn-helm-mega-trg::after{content:'';width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(253,251,248,.35);margin-top:1px;transition:transform .2s;}
.sn-helm-mega-trg.sn-mega-open::after{transform:rotate(180deg);}
.sn-helm-right{display:flex;align-items:center;gap:.5rem;margin-left:auto;}
.sn-helm-cta{padding:.42rem 1.125rem;background:var(--sn-lime);color:var(--sn-ink);font-family:var(--sn-fh);font-size:0.8rem;font-weight:700;border-radius:var(--sn-r4);transition:var(--sn-ease);}
.sn-helm-cta:hover{background:var(--sn-lime-lt);}
.sn-mob-brg{display:none;width:38px;height:38px;align-items:center;justify-content:center;border-radius:var(--sn-r4);color:rgba(253,251,248,.5);}
/* MEGA MENU PANEL */
.sn-mega-panel{position:absolute;top:70px;left:0;right:0;background:var(--sn-teal);border-top:2px solid var(--sn-lime);border-bottom:1px solid rgba(255,255,255,.07);
  opacity:0;visibility:hidden;transform:translateY(-8px);
  transition:opacity .25s ease,visibility .25s,transform .25s;z-index:800;}
.sn-mega-panel.sn-mega-on{opacity:1;visibility:visible;transform:none;}
.sn-mega-inner{max-width:var(--sn-wrap);margin:0 auto;padding:2.5rem clamp(1.25rem,4vw,2.5rem);display:grid;grid-template-columns:240px 1fr;gap:3rem;}
.sn-mega-featured{border-right:1px solid rgba(255,255,255,.08);padding-right:3rem;}
.sn-mega-feat-tag{font-size:0.69rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--sn-lime);margin-bottom:.5rem;}
.sn-mega-feat-nm{font-family:var(--sn-fh);font-size:1.05rem;font-weight:700;color:var(--sn-cream);margin-bottom:.4rem;}
.sn-mega-feat-p{font-size:0.875rem;color:rgba(253,251,248,.35);line-height:1.65;margin-bottom:1rem;}
.sn-mega-svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.375rem;}
.sn-mega-svc-item{padding:.65rem .875rem;border-radius:var(--sn-r8);transition:background .2s;}
.sn-mega-svc-item:hover{background:rgba(255,255,255,.07);}
.sn-mega-svc-nm{font-size:0.875rem;font-weight:600;color:var(--sn-cream);margin-bottom:.15rem;}
.sn-mega-svc-br{font-size:0.75rem;color:rgba(253,251,248,.3);line-height:1.5;}
/* Mobile menu */
.sn-mob-menu{position:fixed;inset:0;z-index:980;background:var(--sn-teal-dk);padding:5rem 2rem 2rem;transform:translateX(100%);transition:transform .35s ease;pointer-events:none;}
.sn-mob-menu.sn-mob-on{transform:none;pointer-events:all;}
.sn-mob-close{position:absolute;top:1.25rem;right:1.5rem;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;color:rgba(253,251,248,.4);}
.sn-mob-a{display:block;font-family:var(--sn-fh);font-size:clamp(1.25rem,4vw,2rem);font-weight:700;color:rgba(253,251,248,.2);padding:.4rem 0;transition:color .2s;border-bottom:1px solid rgba(255,255,255,.05);}
.sn-mob-a:hover{color:var(--sn-cream);}

/* ====== HERO: CENTERED + ANIMATED SVG NODE NETWORK ====== */
.sn-stage{position:relative;background:var(--sn-teal-dk);min-height:90vh;display:flex;align-items:center;overflow:hidden;}
.sn-field{position:absolute;inset:0;pointer-events:none;}
.sn-net-svg{position:absolute;inset:0;width:100%;height:100%;}
/* SVG node animation */
.sn-n-line{stroke:rgba(179,224,64,.12);stroke-width:1;animation:snLineFlash 5s ease-in-out infinite;}
.sn-n-line:nth-child(2n){animation-delay:1.5s;}
.sn-n-line:nth-child(3n){animation-delay:3s;}
@keyframes snLineFlash{0%,100%{opacity:.08;}50%{opacity:.35;}}
.sn-n-dot{fill:var(--sn-lime);transform-box:fill-box;transform-origin:center;animation:snDotPulse 3.5s ease-in-out infinite;}
.sn-n-dot:nth-child(odd){animation-delay:.8s;}
.sn-n-dot:nth-child(3n){animation-delay:1.6s;fill:rgba(14,61,74,.8);}
@keyframes snDotPulse{0%,100%{opacity:.25;transform:scale(1);}50%{opacity:.75;transform:scale(1.7);}}
.sn-stage-inner{position:relative;z-index:1;text-align:center;max-width:820px;margin:0 auto;padding:clamp(4rem,8vw,7rem) 0;}
.sn-stage-badges{display:flex;gap:.5rem;justify-content:center;margin-bottom:1.5rem;}
.sn-badge{background:rgba(179,224,64,.12);color:var(--sn-lime);font-family:var(--sn-fh);font-size:0.69rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;padding:.25rem .75rem;border-radius:100px;border:1px solid rgba(179,224,64,.2);}
.sn-stage-h1{font-family:var(--sn-fh);font-size:clamp(2.5rem,6.5vw,6rem);font-weight:700;color:var(--sn-cream);line-height:1.05;letter-spacing:-.03em;margin-bottom:1.5rem;white-space:pre-line;}
.sn-stage-sub{font-size:clamp(1rem,1.5vw,1.125rem);color:rgba(253,251,248,.4);line-height:1.8;max-width:560px;margin:0 auto 2rem;}
.sn-stage-acts{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-bottom:3rem;}
.sn-stage-stats{display:flex;gap:3rem;justify-content:center;flex-wrap:wrap;}
.sn-stat-item{text-align:center;}
.sn-stat-n{font-family:var(--sn-fh);font-size:clamp(1.5rem,3vw,2.25rem);font-weight:700;color:var(--sn-lime);}
.sn-stat-l{font-size:0.75rem;color:rgba(253,251,248,.3);margin-top:.1rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;}

/* CLIENT LOGO STRIP (new in series) */
.sn-client-strip{background:var(--sn-stone);border-bottom:1px solid var(--sn-mid);padding:1.75rem 0;}
.sn-cs-inner{display:flex;align-items:center;gap:2rem;flex-wrap:wrap;}
.sn-cs-label{font-family:var(--sn-fh);font-size:0.69rem;font-weight:400;letter-spacing:.15em;text-transform:uppercase;color:var(--sn-mist-lt);white-space:nowrap;flex-shrink:0;}
.sn-cs-logos{display:flex;gap:2.5rem;align-items:center;flex-wrap:wrap;flex:1;overflow:hidden;}
.sn-cs-name{font-family:var(--sn-fh);font-size:0.75rem;font-weight:700;color:var(--sn-mist);letter-spacing:.05em;opacity:.5;transition:opacity .2s;white-space:nowrap;}
.sn-cs-name:hover{opacity:.85;}

/* SERVICES GRID */
.sn-solutions{background:var(--sn-cream);}
.sn-sol-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;}
.sn-sol-card{background:var(--sn-cream);border:1.5px solid var(--sn-border);border-radius:var(--sn-r12);padding:1.875rem;transition:var(--sn-ease);position:relative;overflow:hidden;}
.sn-sol-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--sn-teal);border-radius:2px 0 0 2px;transition:background .25s;}
.sn-sol-card:hover{border-color:rgba(14,61,74,.2);box-shadow:var(--sn-shadow-lg);transform:translateY(-2px);}
.sn-sol-card:hover::before{background:var(--sn-lime);}
.sn-sc-ico{width:40px;height:40px;border-radius:var(--sn-r8);background:rgba(14,61,74,.08);display:flex;align-items:center;justify-content:center;color:var(--sn-teal);margin-bottom:1rem;transition:var(--sn-ease);}
.sn-sol-card:hover .sn-sc-ico{background:var(--sn-lime);color:var(--sn-ink);}
.sn-sc-nm{font-family:var(--sn-fh);font-size:0.9375rem;font-weight:700;color:var(--sn-ink);margin-bottom:.4rem;letter-spacing:-.01em;}
.sn-sc-br{font-size:0.875rem;color:var(--sn-mist);line-height:1.7;margin-bottom:1.25rem;}
.sn-sc-pr{font-family:var(--sn-fh);font-size:0.8125rem;font-weight:700;color:var(--sn-teal);margin-bottom:.625rem;}
.sn-sc-lnk{font-family:var(--sn-fh);font-size:0.75rem;font-weight:700;color:var(--sn-teal);display:flex;align-items:center;gap:.3rem;letter-spacing:.04em;transition:gap .2s,color .2s;}
.sn-sol-card:hover .sn-sc-lnk{gap:.5rem;color:var(--sn-lime-dk);}

/* MIRROR (approach) */
.sn-mirror{background:var(--sn-teal);}
.sn-mirror-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;}
.sn-mirror-headline{font-family:var(--sn-fh);font-size:clamp(1.5rem,3.5vw,2.75rem);font-weight:700;color:var(--sn-cream);line-height:1.15;letter-spacing:-.02em;}
.sn-mirror-headline em{color:var(--sn-lime);font-style:normal;}
.sn-mirror-body p{font-size:clamp(0.9375rem,1.3vw,1.0625rem);color:rgba(253,251,248,.4);line-height:1.85;margin-bottom:1rem;}

/* PROCESS: HORIZONTAL ON DARK BG */
.sn-runway{background:var(--sn-ink);}
.sn-runway-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:0;position:relative;}
.sn-runway-flow::before{content:'';position:absolute;top:28px;left:5%;right:5%;height:2px;background:linear-gradient(90deg,var(--sn-teal-lt),var(--sn-lime));z-index:0;opacity:.4;}
.sn-runway-step{padding:0 .625rem;position:relative;z-index:1;}
.sn-rws-num{width:56px;height:56px;border-radius:50%;border:2px solid var(--sn-lime);display:flex;align-items:center;justify-content:center;font-family:var(--sn-fh);font-size:0.8125rem;font-weight:700;color:var(--sn-lime);margin-bottom:1.25rem;background:var(--sn-ink);}
.sn-rws-nm{font-family:var(--sn-fh);font-size:0.875rem;font-weight:700;color:var(--sn-cream);margin-bottom:.4rem;}
.sn-rws-p{font-size:0.8125rem;color:rgba(253,251,248,.3);line-height:1.65;}

/* CASE STUDIES: 3-COL CARD GRID */
.sn-portfolio{background:var(--sn-stone);}
.sn-port-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;}
.sn-case-tile{background:var(--sn-cream);border-radius:var(--sn-r16);overflow:hidden;border:1.5px solid var(--sn-border);transition:var(--sn-ease);}
.sn-case-tile:hover{box-shadow:var(--sn-shadow-lg);transform:translateY(-2px);}
.sn-ct-vis{overflow:hidden;background:var(--sn-mid);}
.sn-ct-vis img{width:100%;height:180px;object-fit:cover;transition:transform .5s;}
.sn-case-tile:hover .sn-ct-vis img{transform:scale(1.05);}
.sn-ct-body{padding:1.5rem;}
.sn-ct-cat{font-family:var(--sn-fh);font-size:0.69rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--sn-teal);margin-bottom:.375rem;}
.sn-ct-nm{font-family:var(--sn-fh);font-size:1rem;font-weight:700;color:var(--sn-ink);margin-bottom:.375rem;}
.sn-ct-loc{font-size:0.75rem;color:var(--sn-mist-lt);margin-bottom:.75rem;}
.sn-ct-desc{font-size:0.875rem;color:var(--sn-mist);line-height:1.7;margin-bottom:1.1rem;}
.sn-ct-metrics{display:flex;gap:.625rem;flex-wrap:wrap;}
.sn-ct-m{background:rgba(14,61,74,.06);border-radius:var(--sn-r8);padding:.35rem .75rem;}
.sn-ct-mv{font-family:var(--sn-fh);font-size:0.9375rem;font-weight:700;color:var(--sn-teal);}
.sn-ct-ml{font-size:0.69rem;color:var(--sn-mist-lt);}

/* PRICING: MONTHLY / ONE-TIME TOGGLE (new in series) */
.sn-rates{background:var(--sn-cream);}
.sn-price-tog{display:flex;gap:.25rem;background:var(--sn-stone);border-radius:100px;padding:.25rem;width:fit-content;margin:0 auto 3rem;}
.sn-ptog-btn{padding:.5rem 1.5rem;border-radius:100px;font-family:var(--sn-fh);font-size:0.8125rem;font-weight:700;color:var(--sn-mist);transition:var(--sn-ease);cursor:pointer;background:none;border:none;}
.sn-ptog-btn.sn-ptog-on{background:var(--sn-teal);color:var(--sn-cream);box-shadow:0 2px 8px rgba(14,61,74,.2);}
.sn-price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;}
.sn-price-tier{background:var(--sn-cream);border:1.5px solid var(--sn-border);border-radius:var(--sn-r16);padding:2rem;transition:var(--sn-ease);}
.sn-price-tier.sn-pt-hot{border-color:var(--sn-teal);box-shadow:0 4px 28px rgba(14,61,74,.1);}
.sn-pt-badge{display:inline-block;background:var(--sn-lime);color:var(--sn-ink);font-family:var(--sn-fh);font-size:0.69rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.2rem .75rem;border-radius:100px;margin-bottom:.875rem;}
.sn-pt-nm{font-family:var(--sn-fh);font-size:1rem;font-weight:700;color:var(--sn-ink);margin-bottom:.25rem;}
.sn-pt-tag{font-size:0.875rem;color:var(--sn-mist);margin-bottom:1.5rem;min-height:2.5em;}
.sn-price-val{margin-bottom:.25rem;}
.sn-pv-ot{display:block;}
.sn-pv-mo{display:none;}
.sn-pv-num{font-family:var(--sn-fh);font-size:clamp(1.75rem,3vw,2.5rem);font-weight:700;color:var(--sn-ink);}
.sn-pv-per{font-size:0.8125rem;color:var(--sn-mist);margin-bottom:1.25rem;}
.sn-pt-feat{margin-bottom:1.5rem;}
.sn-pt-fi{display:flex;align-items:flex-start;gap:.4rem;padding:.3rem 0;font-size:0.875rem;color:var(--sn-mist);border-bottom:1px solid var(--sn-border);}
.sn-pt-fi span{color:var(--sn-teal);flex-shrink:0;margin-top:.1rem;}

/* TESTIMONIALS: 2 LARGE CARDS (new layout in series) */
.sn-voices{background:var(--sn-teal);}
.sn-voices-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;}
.sn-voice-big{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:var(--sn-r16);padding:2.5rem;}
.sn-vb-q{font-family:var(--sn-fh);font-size:clamp(1.0rem,1.8vw,1.375rem);font-weight:400;color:var(--sn-cream);line-height:1.55;margin-bottom:1.75rem;letter-spacing:-.01em;font-style:italic;}
.sn-vb-line{display:flex;align-items:center;gap:.875rem;}
.sn-vb-by{font-family:var(--sn-fh);font-size:0.875rem;font-weight:700;color:var(--sn-cream);}
.sn-vb-role{font-size:0.75rem;color:rgba(253,251,248,.3);margin-top:.1rem;}
.sn-vb-stars{display:flex;gap:.15rem;color:var(--sn-lime);margin-left:auto;}

/* FAQ ACCORDION */
.sn-query{background:var(--sn-stone);}
.sn-query-list{max-width:740px;margin:0 auto;}
.sn-query-item{border-bottom:1px solid var(--sn-border);}
.sn-qi-trigger{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1.25rem 0;cursor:pointer;gap:1rem;}
.sn-qi-q{font-family:var(--sn-fh);font-size:0.9375rem;font-weight:700;color:var(--sn-ink);text-align:left;line-height:1.4;}
.sn-qi-ico{color:var(--sn-teal);flex-shrink:0;transition:transform .3s;}
.sn-query-item.sn-qi-on .sn-qi-ico{transform:rotate(180deg);}
.sn-qi-body{max-height:0;overflow:hidden;transition:max-height .4s ease;}
.sn-query-item.sn-qi-on .sn-qi-body{max-height:400px;}
.sn-qi-a{padding-bottom:1.25rem;font-size:0.9375rem;color:var(--sn-mist);line-height:1.8;}

/* CTA LAUNCH */
.sn-launch{background:var(--sn-lime);}
.sn-launch-inner{display:grid;grid-template-columns:1fr auto;gap:3rem;align-items:center;}
.sn-launch-h{font-family:var(--sn-fh);font-size:clamp(1.5rem,3vw,2.5rem);font-weight:700;color:var(--sn-ink);letter-spacing:-.02em;}
.sn-launch-p{font-size:clamp(0.9375rem,1.3vw,1.0625rem);color:rgba(26,38,32,.6);margin-top:.5rem;}
.sn-launch-acts{display:flex;gap:.75rem;flex-wrap:wrap;flex-shrink:0;}

/* FOOTER: LIGHT (first light footer in SEO series) */
.sn-root{background:var(--sn-cream);border-top:2px solid var(--sn-teal);padding:clamp(4rem,6vw,5.5rem) 0 1.75rem;}
.sn-rt-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:2rem;margin-bottom:2.5rem;}
.sn-rt-brand{font-family:var(--sn-fh);font-size:clamp(1.05rem,2vw,1.4rem);font-weight:700;color:var(--sn-teal);display:block;margin-bottom:.5rem;}
.sn-rt-brand em{color:var(--sn-lime-dk);font-style:normal;}
.sn-rt-tag{font-size:0.8125rem;color:var(--sn-mist);line-height:1.7;max-width:230px;margin-bottom:1.25rem;}
.sn-rt-ct a{display:flex;align-items:flex-start;gap:.4rem;font-size:0.8125rem;color:var(--sn-mist);padding:.2rem 0;transition:color .2s;}
.sn-rt-ct a:hover{color:var(--sn-teal);}
.sn-rt-ct-ico{color:var(--sn-teal);flex-shrink:0;margin-top:.1rem;}
.sn-rt-soc{display:flex;gap:.4rem;margin-top:1rem;}
.sn-rt-soc a{width:32px;height:32px;border-radius:50%;background:var(--sn-stone);display:flex;align-items:center;justify-content:center;color:var(--sn-mist);transition:var(--sn-ease);}
.sn-rt-soc a:hover{background:var(--sn-teal);color:var(--sn-cream);}
.sn-dig{font-size:0.75rem;color:var(--sn-mist-lt);margin-top:.875rem;}
.sn-rt-col h4{font-family:var(--sn-fh);font-size:0.69rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--sn-teal);margin-bottom:1rem;opacity:.5;}
.sn-rt-col a{display:block;font-size:0.875rem;color:var(--sn-mist);padding:.2rem 0;transition:color .2s;}
.sn-rt-col a:hover{color:var(--sn-teal);}
.sn-rt-bot{border-top:1px solid var(--sn-border);padding-top:1.5rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem;}
.sn-rt-copy{font-size:0.75rem;color:var(--sn-mist-lt);}
.sn-rt-legal{display:flex;gap:1.25rem;}
.sn-rt-legal a{font-size:0.75rem;color:var(--sn-mist-lt);transition:color .2s;}
.sn-rt-legal a:hover{color:var(--sn-teal);}

/* BUILDER */
.sn-bld-layout{display:grid;grid-template-columns:1fr 300px;gap:2rem;align-items:start;}
.sn-bld-blk{background:#fff;border:1.5px solid var(--sn-border);border-radius:var(--sn-r16);padding:1.75rem;margin-bottom:1.25rem;}
.sn-bld-blk h2{font-family:var(--sn-fh);font-size:0.9375rem;font-weight:700;color:var(--sn-ink);margin-bottom:.2rem;}
.sn-bld-blk p{font-size:0.8125rem;color:var(--sn-mist);margin-bottom:1.25rem;}
input.sn-sc{display:none;}
label.sn-sl{display:flex;justify-content:space-between;align-items:center;padding:.8rem 1rem;border:1.5px solid var(--sn-border);border-radius:var(--sn-r8);margin-bottom:.4rem;cursor:pointer;transition:var(--sn-ease);}
label.sn-sl:hover{border-color:var(--sn-teal);}
input.sn-sc:checked + label.sn-sl{border-color:var(--sn-teal);background:rgba(14,61,74,.04);}
.sn-slnm{font-family:var(--sn-fh);font-size:0.875rem;font-weight:700;color:var(--sn-ink);}
.sn-slpr{font-family:var(--sn-fh);font-size:0.9375rem;font-weight:700;color:var(--sn-teal);white-space:nowrap;}
input.sn-ac{display:none;}
label.sn-al{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border:1.5px solid var(--sn-border);border-radius:var(--sn-r8);margin-bottom:.4rem;cursor:pointer;transition:var(--sn-ease);}
label.sn-al:hover{border-color:var(--sn-teal);}
input.sn-ac:checked + label.sn-al{border-color:var(--sn-teal);background:rgba(14,61,74,.04);}
.sn-alnm{font-weight:600;font-size:0.875rem;color:var(--sn-ink);}
.sn-albr{font-size:0.75rem;color:var(--sn-mist);}
.sn-alpr{font-family:var(--sn-fh);font-size:0.875rem;font-weight:700;color:var(--sn-teal);white-space:nowrap;}
.sn-hr-row{display:flex;align-items:center;gap:1rem;}
.sn-hr-rng{flex:1;accent-color:var(--sn-teal);cursor:pointer;min-width:0;}
.sn-hr-val{font-family:var(--sn-fh);font-size:1.25rem;font-weight:700;min-width:5rem;color:var(--sn-ink);}
.sn-tab{background:var(--sn-teal-dk);border-radius:var(--sn-r16);padding:1.75rem;position:sticky;top:5rem;}
.sn-tab-h{font-family:var(--sn-fh);font-size:0.9375rem;font-weight:700;color:var(--sn-cream);margin-bottom:1.25rem;}
.sn-tab-empty{font-size:0.875rem;color:rgba(253,251,248,.25);}
.sn-tab-row{display:flex;justify-content:space-between;gap:.75rem;padding:.4rem 0;border-bottom:1px solid rgba(255,255,255,.07);font-size:0.875rem;color:rgba(253,251,248,.4);}
.sn-tab-row span:last-child{font-weight:700;color:var(--sn-cream);white-space:nowrap;}
.sn-tab-div{border:none;border-top:1px solid rgba(255,255,255,.1);margin:.875rem 0;}
.sn-tab-tot{display:flex;justify-content:space-between;font-size:0.875rem;font-weight:700;color:rgba(253,251,248,.4);}
.sn-tab-sum{font-family:var(--sn-fh);font-size:2rem;font-weight:700;color:var(--sn-cream);}
.sn-tab-go{width:100%;padding:.875rem;background:var(--sn-lime);color:var(--sn-ink);font-family:var(--sn-fh);font-size:0.875rem;font-weight:700;border-radius:var(--sn-r4);margin-top:1.5rem;transition:var(--sn-ease);border:none;cursor:pointer;}
.sn-tab-go:hover:not(:disabled){background:var(--sn-lime-lt);}
.sn-tab-go:disabled{opacity:.3;cursor:not-allowed;}
.sn-tab-note{font-size:0.75rem;color:rgba(253,251,248,.2);text-align:center;margin-top:.625rem;}

/* CHECKOUT */
.sn-co-layout{display:grid;grid-template-columns:1fr 320px;gap:2rem;align-items:start;}
.sn-co-blk{background:#fff;border:1.5px solid var(--sn-border);border-radius:var(--sn-r16);padding:1.75rem;margin-bottom:1rem;}
.sn-co-blk h2{font-family:var(--sn-fh);font-size:0.9375rem;font-weight:700;color:var(--sn-ink);margin-bottom:1.5rem;}
.sn-fp{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.sn-fld{margin-bottom:.875rem;}
.sn-fld label{display:block;font-size:0.8125rem;font-weight:600;margin-bottom:.3rem;color:var(--sn-ink);}
.sn-fld input,.sn-fld select,.sn-fld textarea{width:100%;padding:.65rem .875rem;border:1.5px solid var(--sn-border);border-radius:var(--sn-r8);font-size:0.9375rem;color:var(--sn-ink);outline:none;transition:border-color .2s;}
.sn-fld input:focus,.sn-fld select:focus{border-color:var(--sn-teal);}
.sn-agree{display:flex;align-items:flex-start;gap:.6rem;font-size:0.8125rem;color:var(--sn-mist);margin-bottom:1.25rem;cursor:pointer;}
.sn-agree input{flex-shrink:0;margin-top:.15rem;accent-color:var(--sn-teal);}
.sn-agree a{color:var(--sn-teal);font-weight:600;text-decoration:underline;}
.sn-ord-box{background:var(--sn-teal-dk);border-radius:var(--sn-r16);padding:1.75rem;position:sticky;top:5rem;}
.sn-ord-box h2{font-family:var(--sn-fh);font-size:0.9375rem;font-weight:700;color:var(--sn-cream);margin-bottom:1.25rem;}
.sn-ord-row{display:flex;justify-content:space-between;gap:.75rem;font-size:0.875rem;padding:.4rem 0;border-bottom:1px solid rgba(255,255,255,.06);color:rgba(253,251,248,.4);}
.sn-ord-row span:last-child{font-weight:700;color:var(--sn-cream);white-space:nowrap;}
.sn-ord-div{border:none;border-top:1px solid rgba(255,255,255,.1);margin:.75rem 0;}
.sn-ord-tot{display:flex;justify-content:space-between;font-weight:700;color:rgba(253,251,248,.4);}
.sn-ord-val{font-family:var(--sn-fh);font-size:1.6rem;font-weight:700;color:var(--sn-lime);}
.sn-ord-note{font-size:0.75rem;color:rgba(253,251,248,.2);margin-top:.75rem;}

/* SERVICE PAGE */
.sn-svc-top{background:var(--sn-teal-dk);padding:clamp(7rem,11vw,9rem) 0 0;}
.sn-svc-top-g{display:grid;grid-template-columns:1fr 240px;gap:2.5rem;align-items:start;padding-bottom:3rem;}
.sn-svc-h1{font-family:var(--sn-fh);font-size:clamp(1.75rem,4.5vw,3.25rem);font-weight:700;color:var(--sn-cream);letter-spacing:-.02em;margin-bottom:.75rem;}
.sn-svc-sub{font-size:clamp(0.9375rem,1.3vw,1.125rem);color:rgba(253,251,248,.4);max-width:500px;line-height:1.75;margin-bottom:1.5rem;}
.sn-svc-aside{background:rgba(179,224,64,.08);border:1px solid rgba(179,224,64,.2);border-radius:var(--sn-r16);padding:1.5rem;}
.sn-sa-from{font-family:var(--sn-fh);font-size:0.69rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--sn-lime);margin-bottom:.15rem;}
.sn-sa-pr{font-family:var(--sn-fh);font-size:2.25rem;font-weight:700;color:var(--sn-cream);margin-bottom:.25rem;}
.sn-sa-note{font-size:0.8125rem;color:rgba(253,251,248,.3);margin-bottom:.875rem;}
.sn-sa-li{display:flex;align-items:flex-start;gap:.4rem;padding:.3rem 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:0.8125rem;color:rgba(253,251,248,.4);}
.sn-sa-li span{color:var(--sn-lime);flex-shrink:0;}
.sn-svc-body-sec{background:var(--sn-cream);padding:clamp(2.5rem,5vw,5rem) 0;}
.sn-svc-body-g{display:grid;grid-template-columns:1fr 200px;gap:2.5rem;align-items:start;}
.sn-svc-body p{font-size:clamp(0.9375rem,1.3vw,1.0625rem);color:var(--sn-mist);line-height:1.85;margin-bottom:1rem;}
.sn-svc-body h3{font-family:var(--sn-fh);font-size:1rem;font-weight:700;color:var(--sn-ink);margin:1.75rem 0 .5rem;}
.sn-ssb{background:var(--sn-stone);border-radius:var(--sn-r12);padding:1.35rem;position:sticky;top:5rem;}
.sn-ssb h4{font-family:var(--sn-fh);font-size:0.69rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--sn-mist-lt);margin-bottom:.875rem;}
.sn-ssb-lnk{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--sn-border);font-size:0.875rem;color:var(--sn-ink);transition:color .2s;}
.sn-ssb-lnk:hover{color:var(--sn-teal);}

/* LEGAL */
.sn-legal-sec{background:var(--sn-cream);padding:3rem 0 5rem;}
.sn-legal-wrap{max-width:740px;margin:0 auto;padding:0 clamp(1rem,4vw,2.5rem);}
.sn-legal-wrap h2{font-family:var(--sn-fh);font-size:1.15rem;font-weight:700;margin:2rem 0 .65rem;color:var(--sn-ink);}
.sn-legal-wrap h3{font-family:var(--sn-fh);font-size:0.9375rem;font-weight:700;margin:1.5rem 0 .4rem;color:var(--sn-ink);}
.sn-legal-wrap p{font-size:0.9375rem;color:var(--sn-mist);line-height:1.8;margin-bottom:.875rem;}
.sn-legal-wrap ul{margin:.65rem 0 .875rem 1.25rem;}
.sn-legal-wrap ul li{font-size:0.9375rem;color:var(--sn-mist);line-height:1.7;margin-bottom:.3rem;list-style:disc;}
.sn-legal-wrap a{color:var(--sn-teal);}

/* STATUS */
.sn-status-pg{min-height:80vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:5rem 1.5rem;}
.sn-status-in{max-width:480px;}
.sn-status-in h1{font-family:var(--sn-fh);font-size:clamp(1.75rem,4vw,3rem);font-weight:700;letter-spacing:-.02em;margin-bottom:.65rem;}
.sn-status-in p{font-size:1rem;color:var(--sn-mist);margin-bottom:1.5rem;line-height:1.7;}
.sn-status-btns{display:flex;flex-wrap:wrap;gap:.65rem;justify-content:center;}

/* CONTACT */
.sn-ct-grid{display:grid;grid-template-columns:240px 1fr;gap:2.5rem;}
.sn-ct-info{background:var(--sn-teal-dk);border-radius:var(--sn-r16);padding:1.75rem;}
.sn-ct-info h2{font-family:var(--sn-fh);font-size:0.9375rem;font-weight:700;color:var(--sn-cream);margin-bottom:1.25rem;}
.sn-ct-row{display:flex;align-items:flex-start;gap:.6rem;padding:.5rem 0;border-bottom:1px solid var(--sn-border-dk);font-size:0.875rem;color:rgba(253,251,248,.3);}
.sn-ct-row a{color:inherit;transition:color .2s;}
.sn-ct-row a:hover{color:var(--sn-lime);}
.sn-ct-ico{color:var(--sn-lime);flex-shrink:0;margin-top:.1rem;}

/* COOKIE + CHAT */
.sn-ck{position:fixed;bottom:1.25rem;left:1.25rem;z-index:970;max-width:420px;background:var(--sn-teal-dk);border-radius:var(--sn-r12);border:1px solid var(--sn-border-dk);padding:1rem 1.5rem;display:flex;flex-direction:column;gap:.625rem;box-shadow:0 8px 40px rgba(14,61,74,.4);font-size:0.8125rem;color:rgba(253,251,248,.35);}
.sn-ck a{color:var(--sn-lime);}
.sn-ck.sn-ck-off{display:none;}
.sn-ck-btns{display:flex;gap:.5rem;}
.sn-cky,.sn-ckn{padding:.375rem .875rem;border-radius:100px;font-size:0.8125rem;font-weight:700;transition:var(--sn-ease);}
.sn-cky{background:var(--sn-lime);color:var(--sn-ink);}
.sn-cky:hover{background:var(--sn-lime-lt);}
.sn-ckn{border:1px solid var(--sn-border-dk);color:rgba(253,251,248,.3);}
.sn-ckn:hover{color:var(--sn-cream);}
.sn-chat-btn{position:fixed;bottom:1.5rem;right:1.5rem;z-index:960;width:52px;height:52px;border-radius:50%;background:var(--sn-teal);color:var(--sn-cream);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(14,61,74,.35);transition:var(--sn-ease);}
.sn-chat-btn:hover{background:var(--sn-lime);color:var(--sn-ink);}
.sn-chat-box{position:fixed;bottom:5.5rem;right:1.5rem;z-index:959;width:300px;background:#fff;border-radius:var(--sn-r16);box-shadow:var(--sn-shadow-lg);overflow:hidden;transform:scale(.9) translateY(10px);opacity:0;pointer-events:none;transition:var(--sn-ease);}
.sn-chat-box.sn-ch-on{transform:none;opacity:1;pointer-events:all;}
.sn-cb-hd{background:var(--sn-teal);padding:.875rem 1.25rem;display:flex;justify-content:space-between;align-items:center;}
.sn-cb-nm{font-family:var(--sn-fh);font-size:0.875rem;font-weight:700;color:var(--sn-cream);}
.sn-cb-st{font-size:0.75rem;color:rgba(253,251,248,.4);}
.sn-cb-cls{color:rgba(253,251,248,.4);transition:color .2s;}
.sn-cb-cls:hover{color:var(--sn-cream);}
.sn-cb-msgs{padding:.875rem;min-height:80px;}
.sn-cb-msg{background:var(--sn-stone);border-radius:var(--sn-r8);padding:.5rem .75rem;font-size:0.8125rem;color:var(--sn-mist);line-height:1.5;margin-bottom:.4rem;}
.sn-cb-ft{padding:.625rem;border-top:1px solid var(--sn-border);display:flex;gap:.4rem;}
.sn-cb-inp{flex:1;padding:.5rem .75rem;border:1.5px solid var(--sn-border);border-radius:100px;font-size:0.8125rem;outline:none;transition:border-color .2s;min-width:0;}
.sn-cb-inp:focus{border-color:var(--sn-teal);}
.sn-cb-snd{width:32px;height:32px;border-radius:50%;background:var(--sn-teal);color:var(--sn-cream);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:var(--sn-ease);}

/* RESPONSIVE */
@media(max-width:1024px){
  .sn-bld-layout,.sn-co-layout{grid-template-columns:1fr;}
  .sn-tab,.sn-ord-box{position:static;}
  .sn-svc-top-g,.sn-svc-body-g{grid-template-columns:1fr;}
  .sn-ssb{position:static;}
  .sn-rt-grid{grid-template-columns:1fr 1fr;}
  .sn-mega-inner{grid-template-columns:1fr;}
  .sn-mega-featured{border-right:none;padding-right:0;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:1.5rem;}
}
@media(max-width:900px){
  .sn-helm-nav{display:none;}
  .sn-mob-brg{display:flex;}
  .sn-sol-grid,.sn-port-grid,.sn-price-grid{grid-template-columns:1fr 1fr;}
  .sn-runway-flow{grid-template-columns:1fr 1fr;}
  .sn-runway-flow::before{display:none;}
  .sn-voices-grid{grid-template-columns:1fr;}
  .sn-ct-grid{grid-template-columns:1fr;}
  .sn-mirror-grid{grid-template-columns:1fr;}
  .sn-launch-inner{grid-template-columns:1fr;}
}
@media(max-width:600px){
  .sn-sol-grid,.sn-port-grid,.sn-price-grid{grid-template-columns:1fr;}
  .sn-rt-grid{grid-template-columns:1fr;}
  .sn-fp{grid-template-columns:1fr;}
  .sn-runway-flow{grid-template-columns:1fr;}
  .sn-mega-svc-grid{grid-template-columns:1fr 1fr;}
}
