/* What is software — editorial pillar page */
.wis-page { --ink:#10141c; --muted:#5b6574; --line:rgba(16,20,28,.1); --blue:#1769ff; --deep:#063ea8; --navy:#071226; --paper:#f4f6fa; --card:#fff; margin:0; background:var(--paper); color:var(--ink); font-family:Manrope,DM Sans,system-ui,sans-serif; }
.wis-page a { color:inherit; text-decoration:none; }
.wis { padding-bottom: 40px; }
.wis-wrap { width:min(calc(100% - 32px),1180px); margin:0 auto; }
.wis-hero { position:relative; isolation:isolate; overflow:hidden; padding: calc(var(--header,72px) + 48px) 0 72px; color:#fff; background: radial-gradient(ellipse at 90% -10%,rgba(80,190,255,.28),transparent 42%),radial-gradient(ellipse at 0% 110%,rgba(23,105,255,.28),transparent 40%),linear-gradient(145deg,#0854c7,#071c49 55%,#050e22); }
.wis-hero::after { content:""; position:absolute; inset:auto -120px -180px auto; width:420px; height:420px; border:1px solid #ffffff14; border-radius:50%; box-shadow:0 0 0 48px #ffffff05; }
.wis-kicker { margin:0 0 18px; color:#9ad4ff; font:700 11px/1.6 "JetBrains Mono",monospace; letter-spacing:.14em; text-transform:uppercase; }
.wis-hero h1 { margin:0; max-width:16ch; font-family:Montserrat,Manrope,sans-serif; font-size:clamp(42px,7vw,84px); line-height:.98; letter-spacing:-.055em; }
.wis-hero h1 em { color:#9cefff; font-style:normal; }
.wis-lede { max-width:62ch; margin:22px 0 0; color:#d5e4f7; font-size:clamp(17px,2vw,21px); line-height:1.65; }
.wis-hero-meta { display:flex; flex-wrap:wrap; gap:10px; margin-top:28px; }
.wis-hero-meta span { min-height:36px; padding:8px 12px; border:1px solid #ffffff22; border-radius:999px; background:#ffffff0d; font-size:12px; font-weight:700; }
.wis-layout { display:grid; grid-template-columns:minmax(180px,.28fr) minmax(0,1fr); gap:48px; padding:64px 0 40px; }
.wis-toc { position:sticky; top:96px; align-self:start; padding:18px; border:1px solid var(--line); border-radius:20px; background:#fff; }
.wis-toc p { margin:0 0 12px; color:#7a8494; font:700 10px/1.5 "JetBrains Mono",monospace; letter-spacing:.12em; text-transform:uppercase; }
.wis-toc a { display:block; padding:8px 0; color:#405064; font-size:13px; font-weight:650; border-bottom:1px solid #eef1f5; }
.wis-toc a:hover, .wis-toc a.is-on { color:var(--blue); }
.wis-article h2 { margin:8px 0 14px; font-size:clamp(28px,4vw,42px); line-height:1.12; letter-spacing:-.04em; }
.wis-article h3 { margin:28px 0 10px; font-size:22px; letter-spacing:-.03em; }
.wis-article p, .wis-article li { color:#3f4b5c; font-size:16.5px; line-height:1.75; }
.wis-article p { margin:0 0 16px; }
.wis-answer { padding:18px 20px; border-left:3px solid var(--blue); border-radius:0 16px 16px 0; background:linear-gradient(90deg,#edf4ff,transparent); }
.wis-answer strong { display:block; margin-bottom:6px; color:#163a73; }
.wis-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:22px 0 28px; }
.wis-card { min-height:168px; padding:20px; border:1px solid var(--line); border-radius:18px; background:var(--card); }
.wis-card span { display:block; color:var(--blue); font:700 10px/1.5 "JetBrains Mono",monospace; letter-spacing:.1em; text-transform:uppercase; }
.wis-card h3 { margin:10px 0 8px; font-size:18px; }
.wis-card p { margin:0; font-size:14px; }
.wis-table { width:100%; margin:8px 0 28px; border-collapse:separate; border-spacing:0; overflow:hidden; border:1px solid var(--line); border-radius:16px; background:#fff; }
.wis-table th, .wis-table td { padding:14px 16px; border-bottom:1px solid #eef1f5; text-align:left; vertical-align:top; font-size:14px; line-height:1.55; }
.wis-table th { color:#163a73; background:#f6f9fe; font-size:12px; letter-spacing:.04em; text-transform:uppercase; }
.wis-table tr:last-child td { border-bottom:0; }
.wis-benefits { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:22px 0 32px; }
.wis-benefit { padding:18px; border-radius:16px; background:#071226; color:#fff; }
.wis-benefit strong { display:block; margin-bottom:8px; font-size:16px; }
.wis-benefit p { margin:0; color:#b9c9de; font-size:13.5px; line-height:1.65; }
.wis-faq details { border-bottom:1px solid var(--line); }
.wis-faq summary { cursor:pointer; list-style:none; display:flex; justify-content:space-between; gap:16px; padding:16px 0; font-size:17px; font-weight:750; }
.wis-faq summary::-webkit-details-marker { display:none; }
.wis-faq summary::after { content:"+"; color:var(--blue); }
.wis-faq details[open] summary::after { content:"–"; }
.wis-faq details p { padding:0 0 16px; }
.wis-cta { margin:48px 0 24px; padding:42px; border-radius:28px; color:#fff; background:linear-gradient(145deg,#0854c7,#071c49); }
.wis-cta h2 { margin:0 0 10px; font-size:clamp(28px,4vw,44px); }
.wis-cta p { max-width:56ch; color:#d5e4f7; }
.wis-cta a { display:inline-flex; margin-top:18px; min-height:48px; padding:0 20px; align-items:center; border-radius:14px; background:#fff; color:#0c438a; font-weight:800; }
.wis-note { font-size:13px !important; color:#6a7686 !important; }
@media (max-width: 900px) {
  .wis-layout, .wis-grid, .wis-benefits { grid-template-columns:1fr; }
  .wis-toc { position:static; }
  .wis-hero { padding-top: calc(56px + 28px); padding-bottom: 42px; }
  .wis-cta { padding: 28px 22px; }
}
@media (prefers-reduced-motion:reduce) {
  .wis-page * { animation:none !important; transition:none !important; }
}
