/* Service pages. Loaded with home.css (journey engine, process console, forms, quotes). */
.wn-service .wn-dive { height: auto; min-height: 0; background: radial-gradient(1200px 720px at 72% 44%, #FFFFFF 0%, #F5F8FF 52%, #EAF0FB 100%); }
.wn-svc-world { transform: translate(23%, 3%) scale(.86); }
.wn-svc-hero-in { position: relative; z-index: 2; max-width: 1280px; margin: 0 auto; padding: 96px 32px 36px; min-height: 560px; display: flex; flex-direction: column; justify-content: center; }
.wn-svc-copy { max-width: 600px; display: flex; flex-direction: column; gap: 22px; }
.wn-crumb { display: inline-flex; align-self: flex-start; align-items: center; gap: 8px; padding: 6px 14px; border: 1px solid #C7D7FE; border-radius: 999px; background: rgba(255,255,255,.9); font: 400 12px/1.4 var(--wn-mono); letter-spacing: .06em; color: #475569; }
.wn-crumb a { color: #475569; text-decoration: none; }
.wn-crumb > span:last-child { color: #1D4ED8; font-weight: 600; }
.wn-svc-copy h1 { margin: 0; font: 800 clamp(42px, 5.6vw, 80px)/1.02 var(--wn-font); letter-spacing: -.05em; color: #0F172A; }
.wn-svc-copy > p { margin: 0; max-width: 540px; font-size: 19px; line-height: 1.6; color: #334155; }
.wn-svc-ctas { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 22px; }
.wn-svc-rating { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; color: #475569; }
.wn-svc-rating strong { font: 800 18px/1 var(--wn-font); color: #0F172A; }
.wn-svc-rating > span { color: #F59E0B; letter-spacing: 2px; }
.wn-up { animation: wnUp .9s cubic-bezier(.2,.7,.2,1) both; }
.wn-d1 { animation-delay: .05s; } .wn-d2 { animation-delay: .15s; } .wn-d3 { animation-delay: .28s; } .wn-d4 { animation-delay: .42s; }
@keyframes wnUp { from { opacity: 0; transform: translateY(22px); } to { opacity: 1; transform: none; } }
.wn-capstrip { position: relative; z-index: 2; max-width: 1280px; margin: 0 auto; padding: 0 32px 64px; }
.wn-capstrip-in { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 10px; border: 1px solid rgba(220,227,239,.95); border-radius: 18px; background: rgba(255,255,255,.92); box-shadow: 0 16px 40px rgba(15,23,42,.06); }
.wn-capstrip-k { padding: 0 10px; font: 600 11px/1.4 var(--wn-mono); letter-spacing: .12em; color: #155FFF; }
.wn-capchip { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 14px; border: 1px solid #E2E8F0; border-radius: 999px; background: #fff; color: #1E293B; text-decoration: none; font-size: 13px; font-weight: 500; transition: border-color .2s ease, background-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.wn-capchip > span { font: 400 11px/1 var(--wn-mono); color: #155FFF; }
.wn-capchip:hover, .wn-capchip:focus-visible { border-color: #93B4FF; background: #EEF4FF; transform: translateY(-2px); box-shadow: 0 10px 22px rgba(21,95,255,.14); }
.wn-svc-pstrip { background: #fff; border-bottom: 1px solid #E2E8F0; overflow: hidden; padding: 0; }
.wn-svc-pstrip .wn-fade-x { padding: 20px 0; }
.wn-partner-s { font-size: 18px; color: #94A3B8; }
.wn-partner-s .wn-brand { height: 20px; }

/* Capabilities */
.wn-cap { background: #fff; }
.wn-cap-in { max-width: 1280px; margin: 0 auto; padding: 88px 32px; display: flex; flex-wrap: wrap; gap: 48px; align-items: flex-start; }
.wn-capside { flex: 1 1 320px; min-width: 0; display: flex; flex-direction: column; gap: 18px; }
.wn-capside h2 { margin: 0; font: 800 clamp(30px, 3.4vw, 46px)/1.08 var(--wn-font); letter-spacing: -.04em; color: #0F172A; }
.wn-capside > p { margin: 0; color: #475569; max-width: 380px; }
.wn-spotcard { position: relative; isolation: isolate; overflow: hidden; }
.wn-spotcard::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: radial-gradient(340px circle at var(--sx,50%) var(--sy,0%), rgba(21,95,255,.14), rgba(21,95,255,0) 60%); opacity: var(--so,0); transition: opacity .35s ease; }
.wn-spotcard:hover { border-color: #93B4FF !important; box-shadow: 0 24px 50px rgba(15,23,42,.08), 0 0 0 1px rgba(21,95,255,.12) !important; }
.wn-cap-cta { display: flex; flex-direction: column; gap: 6px; padding: 22px; border: 1px solid #C7D7FE; border-radius: 18px; background: #EEF4FF; color: #0F172A; text-decoration: none; }
.wn-cap-cta > span:first-child { font: 400 11px/1.4 var(--wn-mono); letter-spacing: .1em; color: #155FFF; }
.wn-cap-cta > span:last-child { font: 800 20px/1.3 var(--wn-font); }
.wn-capgrid { flex: 2 1 620px; min-width: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(270px, 1fr)); gap: 14px; }
.wn-capgrid > article:last-child:nth-child(odd) { grid-column: 1 / -1; }
.wn-capcard { display: flex; flex-direction: column; gap: 12px; padding: 24px; border: 1px solid #E2E8F0; border-radius: 20px; background: #fff; }
.wn-capcard-top { display: flex; align-items: center; justify-content: space-between; }
.wn-capcard-n { width: 40px; height: 40px; border-radius: 12px; background: linear-gradient(135deg, #155FFF, #4F46E5); color: #fff; display: flex; align-items: center; justify-content: center; font: 600 13px/1 var(--wn-mono); box-shadow: 0 10px 24px rgba(21,95,255,.30); }
.wn-capdot { display: block; width: 8px; height: 8px; border-radius: 50%; background: #CBD5E1; transition: background-color .3s ease, box-shadow .3s ease; }
.wn-spotcard:hover .wn-capdot { background: #22D3EE; box-shadow: 0 0 12px #22D3EE; }
.wn-capcard h3 { margin: 0; font: 800 19px/1.3 var(--wn-font); letter-spacing: -.02em; color: #0F172A; }
.wn-capcard p { margin: 0; font-size: 15px; line-height: 1.6; color: #475569; }

/* Showcase */
.wn-show { background: #F8FAFC; border-top: 1px solid #E2E8F0; }
.wn-show-in { max-width: 1280px; margin: 0 auto; padding: 80px 32px; display: flex; flex-direction: column; gap: 28px; }
.wn-show-head { margin-bottom: 0; }
.wn-show-head h2 { font-size: clamp(30px, 3.4vw, 46px); line-height: 1.08; }
.wn-btn-dark { min-height: 48px; padding: 0 22px; border-radius: 999px; background: #0B1633; color: #fff; font-size: 14px; }
.wn-btn-dark:hover { background: #155FFF; }
.wn-showgrid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: 230px; gap: 16px; }
.wn-sc { position: relative; display: block; overflow: hidden; border-radius: 20px; border: 1px solid #E2E8F0; background: #0B1633; color: #fff; text-decoration: none; transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease; }
.wn-sc-big { grid-column: span 2; grid-row: span 2; }
.wn-sc img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: top; transition: transform .9s cubic-bezier(.2,.7,.2,1); }
.wn-sc:hover img { transform: scale(1.06); }
.wn-sc:hover { transform: translateY(-4px); box-shadow: 0 30px 70px rgba(15,23,42,.18), 0 0 0 1px rgba(21,95,255,.35), 0 0 50px rgba(8,145,178,.2); border-color: #93B4FF; }
.wn-sc:focus-visible { outline: 2px solid #155FFF; outline-offset: 3px; }
.wn-sc-blank { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; background: radial-gradient(400px circle at 80% 0%, rgba(21,95,255,.45), rgba(21,95,255,0) 60%), linear-gradient(rgba(147,180,255,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(147,180,255,.08) 1px, transparent 1px), #0B1633; background-size: auto, 28px 28px, 28px 28px, auto; font: 800 64px/1 var(--wn-font); color: transparent; -webkit-text-stroke: 1.5px rgba(147,180,255,.6); }
.wn-sc-shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(11,22,51,0) 35%, rgba(11,22,51,.6) 65%, rgba(11,22,51,.94) 100%); }
.wn-sc-cap { position: absolute; left: 18px; right: 18px; bottom: 16px; display: flex; justify-content: space-between; align-items: flex-end; gap: 12px; }
.wn-sc-cap > span:first-child { display: flex; flex-direction: column; gap: 4px; }
.wn-sc-cat { font: 400 10px/1.4 var(--wn-mono); letter-spacing: .1em; color: #B6C3DE; }
.wn-sc-name { font: 800 19px/1.1 var(--wn-font); letter-spacing: -.02em; text-shadow: 0 2px 12px rgba(11,22,51,.6); }
.wn-sc-big .wn-sc-name { font-size: 30px; }
.wn-sc-view { font: 400 11px/1.4 var(--wn-mono); color: #93B4FF; }

/* Why */
.wn-why { position: relative; overflow: hidden; background-color: #0B1633; background-image: radial-gradient(800px circle at 85% 0%, rgba(21,95,255,.30), rgba(21,95,255,0) 60%), radial-gradient(600px circle at 0% 100%, rgba(8,145,178,.20), rgba(8,145,178,0) 60%), linear-gradient(rgba(147,180,255,.07) 1px, transparent 1px), linear-gradient(90deg, rgba(147,180,255,.07) 1px, transparent 1px); background-size: auto, auto, 48px 48px, 48px 48px; color: #fff; }
.wn-why-in { max-width: 1280px; margin: 0 auto; padding: 88px 32px; display: flex; flex-direction: column; gap: 36px; }
.wn-why-head { margin-bottom: 0; }
.wn-why-head h2 { color: #fff; font-size: clamp(30px, 3.4vw, 46px); line-height: 1.08; max-width: 720px; }
.wn-why-head h2 span { color: #93B4FF; }
.wn-why-score { display: inline-flex; align-items: baseline; gap: 10px; }
.wn-why-score span:first-child { font: 800 44px/1 var(--wn-font); text-shadow: 0 0 26px rgba(91,140,255,.6); }
.wn-why-score span:last-child { font: 400 11px/1 var(--wn-mono); color: #B6C3DE; }
.wn-why-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 12px; }
.wn-perk { padding: 22px; border: 1px solid #24365F; border-radius: 18px; background: rgba(19,34,74,.7); display: flex; flex-direction: column; gap: 10px; transition: transform .25s ease, border-color .25s ease, background-color .25s ease; }
.wn-perk:hover { transform: translateY(-3px); border-color: #5B8CFF; background: rgba(21,95,255,.16); }
.wn-perk > span:first-child { font: 400 11px/1 var(--wn-mono); color: #5B8CFF; }
.wn-perk strong { font: 700 18px/1.3 var(--wn-font); }
.wn-perk > span:last-child { color: #B6C3DE; font-size: 14px; line-height: 1.55; }

/* Process (service variant) */
.wn-svc-proc { background-size: auto, 44px 44px, 44px 44px; border-top: 0; }
.wn-proc-head-row { flex-direction: row; align-items: center; gap: 12px; max-width: none; }
.wn-mono-link { font: 400 12px/1.4 var(--wn-mono); text-decoration: none; color: #1D4ED8; }
.wn-proc-auto-pill { border-radius: 999px; border-color: #CBD5E1; background: #fff; color: #0F172A; letter-spacing: .12em; }
.wn-plist { gap: 4px; }
.wn-plist .wn-tab { padding: 0 16px; min-height: 48px; }
.wn-tab-node-inline { position: static; width: 10px; height: 10px; margin: 0; }
.wn-plist .wn-tab-state { color: #155FFF; letter-spacing: .1em; }
.wn-deck-in-svc { position: relative; overflow: hidden; }
.wn-deck-bignum { position: absolute; right: 18px; top: -18px; font: 800 170px/1 var(--wn-font); letter-spacing: -.06em; color: transparent; -webkit-text-stroke: 1.5px #E2E8F0; pointer-events: none; }
.wn-deck-in-svc .wn-deck-body, .wn-deck-in-svc .wn-deck-foot { position: relative; }
.wn-deck-in-svc .wn-deck-brings-grid > div { font-weight: 600; color: #1E293B; }

/* Stack */
.wn-stack { background: #F8FAFC; border-top: 1px solid #E2E8F0; overflow: hidden; }
.wn-stack-head { max-width: 1280px; margin: 0 auto; padding: 80px 32px 28px; margin-bottom: 0; }
.wn-stack-head h2 { font-size: clamp(30px, 3.4vw, 46px); line-height: 1.08; }
.wn-stack-count { font: 400 12px/1.4 var(--wn-mono); color: #64748B; }
.wn-stack-rows { display: flex; flex-direction: column; gap: 12px; padding: 12px 0 84px; -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); }
.wn-marquee-rev { animation-direction: reverse; }
.wn-chip { display: inline-flex; align-items: center; gap: 10px; margin-right: 12px; padding: 12px 20px; border: 1px solid #DCE3EF; border-radius: 999px; background: #fff; font: 700 17px/1.3 var(--wn-font); color: #1E293B; white-space: nowrap; box-shadow: 0 8px 20px rgba(15,23,42,.04); transition: border-color .2s ease, box-shadow .2s ease, color .2s ease; }
.wn-chip > span { width: 8px; height: 8px; border-radius: 50%; }
.wn-chip .wn-brand { height: 16px; width: auto; }
.wn-chip:hover { border-color: #93B4FF; color: #155FFF; box-shadow: 0 12px 26px rgba(21,95,255,.16); }

/* Voices */
.wn-voice { background: #fff; border-top: 1px solid #E2E8F0; }
.wn-voice-in { max-width: 1280px; margin: 0 auto; padding: 88px 32px; display: flex; flex-wrap: wrap; gap: 48px; align-items: center; }
.wn-voice-side { flex: 1 1 320px; min-width: 0; display: flex; flex-direction: column; gap: 14px; }
.wn-voice-side h2 { margin: 0; font: 800 clamp(30px, 3.4vw, 46px)/1.08 var(--wn-font); letter-spacing: -.04em; color: #0F172A; }
.wn-voice-score { display: flex; align-items: baseline; gap: 10px; }
.wn-voice-score span:first-child { font: 800 40px/1 var(--wn-font); color: #0F172A; }
.wn-voice-score span:nth-child(2) { color: #F59E0B; letter-spacing: 3px; }
.wn-voice-score span:last-child { font: 400 11px/1 var(--wn-mono); color: #64748B; }
.wn-voice-dots { display: flex; flex-wrap: wrap; row-gap: 8px; margin-top: 6px; padding-left: 12px; }
.wn-voice-dot { width: 48px; height: 48px; margin-left: -12px; padding: 0; border: 3px solid #fff; border-radius: 50%; overflow: hidden; background: #E6EDF8; box-shadow: 0 6px 16px rgba(15,23,42,.14); cursor: pointer; transition: transform .25s ease, box-shadow .25s ease; position: relative; }
.wn-voice-dot img { display: block; width: 100%; height: 100%; object-fit: cover; }
.wn-voice-dot[aria-selected="true"] { border-color: #155FFF; opacity: 1; }
.wn-voice-card { flex: 1.4 1 520px; min-width: 0; margin: 0; padding: 40px; border-radius: 26px; background-color: #0B1633; background-image: radial-gradient(600px circle at 90% 0%, rgba(21,95,255,.35), rgba(21,95,255,0) 60%), linear-gradient(rgba(147,180,255,.07) 1px, transparent 1px), linear-gradient(90deg, rgba(147,180,255,.07) 1px, transparent 1px); background-size: auto, 40px 40px, 40px 40px; color: #fff; display: flex; flex-direction: column; gap: 26px; box-shadow: 0 40px 90px rgba(15,23,42,.18); }
.wn-voice-mark { font: 800 90px/.6 var(--wn-font); color: #5B8CFF; }
.wn-voice-quote { gap: 26px; }
.wn-voice-quote blockquote { font-size: clamp(21px, 2.1vw, 27px); }

/* FAQ */
.wn-faq { background: #F8FAFC; border-top: 1px solid #E2E8F0; }
.wn-faq-in { max-width: 1280px; margin: 0 auto; padding: 80px 32px; display: flex; flex-wrap: wrap; gap: 48px; }
.wn-faq-side { flex: 1 1 300px; min-width: 0; display: flex; flex-direction: column; gap: 10px; }
.wn-faq-side h2 { margin: 0; font: 800 clamp(30px, 3.4vw, 46px)/1.08 var(--wn-font); letter-spacing: -.04em; color: #0F172A; }
.wn-faq-list { flex: 2 1 560px; min-width: 0; display: flex; flex-direction: column; gap: 10px; }
.wn-faqitem { border: 1px solid #E2E8F0; border-radius: 16px; background: #fff; transition: border-color .3s ease, box-shadow .3s ease; }
.wn-faqitem:hover { border-color: #C7D7FE; }
.wn-faqitem.is-open { border-color: #93B4FF; box-shadow: 0 18px 40px rgba(21,95,255,.10); }
.wn-faqitem h3 { margin: 0; }
.wn-q { width: 100%; min-height: 60px; display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 14px 20px; /* QA row 40: two-line questions touched the card edges */ border: 0; background: transparent; cursor: pointer; text-align: left; font: 700 17px/1.4 var(--wn-font); color: #0F172A; }
.wn-q:focus-visible { outline: 2px solid #155FFF; outline-offset: 3px; }
.wn-q-sign { flex: none; width: 30px; height: 30px; border-radius: 50%; background: #EEF4FF; color: #155FFF; display: flex; align-items: center; justify-content: center; font-size: 18px; transition: background-color .3s ease, transform .3s ease, color .3s ease; }
.wn-q:hover .wn-q-sign, .wn-q[aria-expanded="true"] .wn-q-sign { background: #155FFF; color: #fff; }
.wn-q[aria-expanded="true"] .wn-q-sign { transform: rotate(45deg); }
.wn-q-sign { position: relative; font-size: 0; } /* the + is two bars, so it sits dead centre in the circle (QA row 22) */
.wn-q-sign::before, .wn-q-sign::after { content: ''; position: absolute; left: 50%; top: 50%; width: 12px; height: 2px; border-radius: 1px; background: currentColor; transform: translate(-50%, -50%); }
.wn-q-sign::after { transform: translate(-50%, -50%) rotate(90deg); }
.wn-faq-a p { margin: 0; padding: 0 20px 20px; color: #475569; animation: wnSwapA .4s cubic-bezier(.2,.7,.2,1) both; }
.wn-faq-a[hidden] { display: none; }

/* Start (service variant) */
.wn-svc-start .wn-start-in { padding: 80px 32px; }
.wn-svc-start-h2 { margin: 0; font: 800 clamp(32px, 3.8vw, 52px)/1.04 var(--wn-font); letter-spacing: -.045em; color: #0F172A; }
.wn-svc-start .wn-contact-ico { color: #155FFF; font-weight: 700; }

/* Journey mode on service pages */
.wn-scrolly #capabilities, .wn-scrolly #stack, .wn-scrolly #voice, .wn-scrolly #faq { background: transparent !important; }
.wn-service .wn-dive-top-r { display: flex; }
@media (max-width: 900px) {
	.wn-svc-world { transform: translate(0, 30%) scale(.55); opacity: .45; }
	.wn-svc-hero-in { padding: 72px 16px 24px; min-height: 0; }
	.wn-capstrip { padding: 0 16px 40px; }
	.wn-cap-in, .wn-show-in, .wn-why-in, .wn-voice-in, .wn-faq-in { padding: 56px 16px; }
	.wn-stack-head { padding: 56px 16px 20px; }
	.wn-showgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 200px; }
	.wn-deck-bignum { display: none; }
	.wn-voice-card { padding: 24px; }
	.wn-service .wn-dive-top-r { display: none; }
}
@media (max-width: 560px) { .wn-showgrid { grid-template-columns: 1fr; } .wn-sc-big { grid-column: auto; grid-row: auto; } }

/* Hero centre as a brand logo (per service, field "Hero centre logo"): no ring, just the mark with a soft glow */
/* The logo never rotates (a W turned round reads as an M) and cancels the camera scale, so it sits still while the orbits move. */
.wn-core-logo { --cr: 0deg; transform: rotate(0deg) scale(calc(var(--cs, 1) / var(--ss, 1))); }
.wn-core-logo .wn-core-glow { inset: -10%; opacity: .9; }
.wn-core-mark { position: absolute; left: 50%; top: 50%; width: 46%; height: 46%; transform: translate(-50%, -50%); filter: drop-shadow(0 24px 48px rgba(21,95,255,.28)); }
.wn-live .wn-core-mark { animation: wnFloat 6s ease-in-out infinite; }
@keyframes wnFloat { 0%, 100% { transform: translate(-50%, -50%); } 50% { transform: translate(-50%, calc(-50% - 10px)); } }
@media (max-width: 900px) { .wn-core-mark { width: 50%; height: 50%; } }

/* ---------- Capabilities: switcher ---------- */
.wn-cap-in { flex-direction: column; gap: 36px; }
.wn-cap-head { margin-bottom: 0; }
.wn-cap-head h2 { font-size: clamp(30px, 3.4vw, 46px); line-height: 1.08; max-width: 760px; }
.wn-cap-head > p { max-width: 380px; }
.wn-capx { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 28px; align-items: start; }
.wn-capx-list { display: flex; flex-direction: column; gap: 6px; }
.wn-capx-item { border-radius: 16px; }
.wn-capx-row { display: flex; align-items: center; gap: 14px; width: 100%; min-height: 64px; padding: 12px 16px 12px 14px; border: 1px solid transparent; border-radius: 16px; background: transparent; color: #0F172A; text-align: left; font: inherit; cursor: pointer; position: relative; transition: background-color .25s ease, border-color .25s ease, box-shadow .25s ease, transform .25s ease; }
.wn-capx-row::before { content: ""; position: absolute; left: 0; top: 18px; bottom: 18px; width: 3px; border-radius: 3px; background: linear-gradient(#155FFF, #22D3EE); opacity: 0; transition: opacity .25s ease; }
.wn-capx-n { font: 600 12px/1 var(--wn-mono); letter-spacing: .08em; color: #94A3B8; width: 24px; flex: none; transition: color .25s ease; }
.wn-capx-ico { width: 40px; height: 40px; flex: none; border-radius: 12px; display: flex; align-items: center; justify-content: center; background: #EEF4FF; color: #155FFF; transition: background-color .25s ease, color .25s ease, transform .25s ease, box-shadow .25s ease; }
.wn-capx-ico svg { width: 20px; height: 20px; }
.wn-capx-t { flex: 1; font: 700 16px/1.3 var(--wn-font); letter-spacing: -.01em; }
.wn-capx-arr { color: #CBD5E1; font-size: 18px; transition: color .25s ease, transform .25s ease; }
.wn-capx-row:hover { background: #F8FAFC; border-color: #E2E8F0; }
.wn-capx-row[aria-selected="true"] { background: #fff; border-color: #C7D7FE; box-shadow: 0 16px 40px rgba(15,23,42,.08), 0 0 0 1px rgba(21,95,255,.06); }
.wn-capx-row[aria-selected="true"]::before { opacity: 1; }
.wn-capx-row[aria-selected="true"] .wn-capx-n { color: #155FFF; }
.wn-capx-row[aria-selected="true"] .wn-capx-ico { background: #155FFF; color: #fff; box-shadow: 0 10px 24px rgba(21,95,255,.3); }
.wn-capx-row[aria-selected="true"] .wn-capx-arr { color: #155FFF; transform: translateX(3px); }
.wn-capx-row:focus-visible { outline: 2px solid #155FFF; outline-offset: 2px; }
.wn-capx-fold { display: none; }
.wn-capx-more { display: flex; flex-direction: column; gap: 4px; margin-top: 10px; padding: 18px 20px; border: 1px solid #C7D7FE; border-radius: 16px; background: #EEF4FF; color: #0F172A; text-decoration: none; transition: transform .25s ease, box-shadow .25s ease; }
.wn-capx-more strong { font: 800 18px/1.2 var(--wn-font); letter-spacing: -.02em; }
.wn-capx-more:hover { transform: translateY(-2px); box-shadow: 0 16px 36px rgba(21,95,255,.16); }
/* The panel */
.wn-capx-stage { position: sticky; top: 96px; }
.wn-capx-panel { position: relative; overflow: hidden; min-height: 520px; padding: 40px; border: 1px solid #13224A; border-radius: 26px; color: #fff; background: radial-gradient(700px circle at 85% 0%, rgba(21,95,255,.45), rgba(21,95,255,0) 60%), linear-gradient(rgba(147,180,255,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(147,180,255,.08) 1px, transparent 1px), #0B1633; background-size: auto, 40px 40px, 40px 40px, auto; display: grid; }
.wn-capx-mark { position: absolute; right: 36px; bottom: 32px; width: 170px; height: 170px; color: rgba(147,180,255,.16); pointer-events: none; }
.wn-capx-pane { grid-area: 1 / 1; display: flex; flex-direction: column; justify-content: flex-end; gap: 16px; min-height: 440px; padding-top: 140px; }
.wn-capx-pane[hidden] { display: none; }
.wn-capx-pane.is-on { animation: wnCapIn .45s cubic-bezier(.2,.7,.2,1) both; }
@keyframes wnCapIn { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
.wn-capx-big { position: absolute; right: 28px; top: -22px; font: 800 170px/1 var(--wn-font); letter-spacing: -.07em; color: transparent; -webkit-text-stroke: 1.5px rgba(147,180,255,.28); pointer-events: none; }
.wn-capx-pico { width: 52px; height: 52px; border-radius: 15px; display: flex; align-items: center; justify-content: center; background: rgba(255,255,255,.1); border: 1px solid rgba(147,180,255,.35); color: #93B4FF; }
.wn-capx-pico svg { width: 24px; height: 24px; }
.wn-capx-pane h3 { margin: 0; font: 800 clamp(24px, 2.4vw, 34px)/1.12 var(--wn-font); letter-spacing: -.03em; max-width: 560px; color: #fff; }
.wn-capx-pane p { margin: 0; font-size: 16px; line-height: 1.65; color: #DCE3F2; max-width: 560px; }
.wn-capx-ctas { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 8px; flex-wrap: wrap; }
.wn-capx-count { font: 600 12px/1 var(--wn-mono); letter-spacing: .12em; color: #93B4FF; }
@media (max-width: 900px) {
	.wn-capx { grid-template-columns: 1fr; }
	.wn-capx-stage { display: none; }
	.wn-capx-fold { display: block; overflow: hidden; max-height: 0; transition: max-height .4s cubic-bezier(.2,.7,.2,1); }
	.wn-capx-fold p { margin: 0; padding: 4px 16px 18px 78px; font-size: 15px; line-height: 1.6; color: #475569; }
	.wn-capx-item.is-open .wn-capx-fold { max-height: 600px; }
	.wn-capx-item.is-open { background: #fff; border: 1px solid #C7D7FE; box-shadow: 0 16px 40px rgba(15,23,42,.08); }
	.wn-capx-item.is-open .wn-capx-row { border-color: transparent; box-shadow: none; }
	.wn-capx-arr { transition: transform .3s ease; }
	.wn-capx-item.is-open .wn-capx-arr { transform: rotate(90deg); }
}
@media (max-width: 480px) { .wn-capx-fold p { padding-left: 16px; } .wn-capx-t { font-size: 15px; } }

.wn-voice-dot img { width: 100%; height: 100%; object-fit: cover; display: block; }
.wn-voice-dot:hover { transform: translateY(-3px); z-index: 2; }
.wn-voice-dot[aria-selected="true"] { transform: translateY(-4px) scale(1.08); z-index: 3; box-shadow: 0 0 0 3px #155FFF, 0 10px 22px rgba(21,95,255,.3); }
.wn-voice .wn-proof { margin-top: 12px; }
