/* Generated by scripts/build_css_bundles.py from: style-content.css, case-study.css. Do not edit. */
/* Main stylesheet for blog, glossary and author pages. Edit this file directly. Styles shared by every page (menu, footer, buttons) also exist in the other style-*.css files, so update those too for site-wide changes. */
/* Keep every AI Visibility menu icon in one crisp outline family. */
#aiNavItem .dd2-ico svg{fill:none!important;stroke:#1e3a8a!important;stroke-width:2!important;stroke-linecap:round;stroke-linejoin:round}
:root{--bp:#1a56db;--bm:#3b82f6;--bl:#60a5fa;--bpa:#eff6ff;--ac:#2563eb;--go:#f59e0b;--wh:#ffffff;--gl:#f8fafc;--gr:#64748b;--dk:#1e293b;--text-primary:#1e293b;--text-secondary:#475569;--text-light:#94a3b8;--border:#e2e8f0;--card-bg:#ffffff;--section-alt:#f8fafc}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:'Segoe UI',system-ui,sans-serif;color:var(--text-primary);background:#ffffff;overflow-x:hidden}nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:transparent;backdrop-filter:blur(0px);display:flex;align-items:center;justify-content:space-between;padding:0 5%;height:70px;box-shadow:none;transition:background 0.35s ease,box-shadow 0.35s ease,backdrop-filter 0.35s ease}.logo{font-size:1.6rem;font-weight:900;color:#1e293b;letter-spacing:-.5px;text-decoration:none;display:flex;align-items:center;gap:8px}.logo span{color:var(--ac)}.nav-links{display:flex;gap:2rem;list-style:none;align-items:center}.nav-links a{color:rgba(255,255,255,.88);text-decoration:none;font-weight:500;font-size:.93rem;transition:color .2s;position:relative}.nav-links a::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:2px;background:var(--ac);transition:width .3s}.nav-links a:hover,.nav-links a.active-link,.nav-links a.active{color:#1e293b}.nav-links a:hover::after,.nav-links a.active-link::after,.nav-links a.active::after{width:100%}.nav-cta{background:var(--ac) !important;color:#fff !important;padding:9px 22px;border-radius:25px;font-weight:700 !important}.nav-cta::after{display:none !important}.nav-cta:hover{background:#1d4ed8 !important;transform:translateY(-2px)}.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px}.hamburger span{width:26px;height:2px;background:#1e293b;border-radius:2px;transition:all .3s;display:block}.brand{display:flex;flex-direction:column;justify-content:center}.brand{display:flex;flex-direction:column;justify-content:center;line-height:1}.brand-name{font-family:'Cinzel','Trajan Pro',Georgia,serif;font-size:1.15rem;font-weight:900;color:#FFFFFF;line-height:1;letter-spacing:2px}.brand-tagline{font-family:'Cinzel','Trajan Pro',Georgia,serif;margin-top:4px;display:block;font-size:0.65rem;color:#60a5fa;font-weight:700;letter-spacing:0.18em;text-transform:uppercase}.whitebg .brand-tagline{background:linear-gradient(135deg,#2563eb,#3b82f6,#06b6d4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.logo-stack{flex-direction:column;align-items:flex-start !important;gap:0 !important}.logo-stack .logo-row{display:flex;align-items:center;gap:8px}.f-brand .brand-name{font-size:1.45rem}.f-brand .brand-tagline{font-size:0.82rem;margin-top:4px}.whitebg .brand-name{background:linear-gradient(135deg,#0f172a 0%,#2563eb 50%,#06b6d4 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nav-item-has-dropdown{position:relative}.nav-item-has-dropdown>a{display:flex;align-items:center;gap:5px}.nav-item-has-dropdown>a .nav-arrow{display:inline-block;width:5px;height:5px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .25s ease;flex-shrink:0;vertical-align:middle;margin-left:1px;opacity:.65}.nav-item-has-dropdown:hover>a .nav-arrow,.nav-item-has-dropdown.open>a .nav-arrow{transform:rotate(225deg)}.nav-dropdown{position:absolute;top:120%;left:50%;transform:translateX(-50%) translateY(4px);background:rgba(255,255,255,.98);backdrop-filter:blur(20px);border:1px solid #e2e8f0;border-radius:18px;padding:16px;min-width:680px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;box-shadow:0 24px 60px rgba(37,99,235,.12),0 4px 16px rgba(0,0,0,.06);opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease;z-index:2000}.nav-dropdown::after{content:'';position:absolute;top:-14px;left:0;right:0;height:14px}.nav-item-has-dropdown:hover .nav-dropdown,.nav-item-has-dropdown.open .nav-dropdown{opacity:1;pointer-events:all;transform:translateX(-50%) translateY(0)}.nav-dropdown::before{content:'';position:absolute;top:-6px;left:50%;transform:translateX(-50%) rotate(45deg);width:11px;height:11px;background:#fff;border-left:1px solid #e2e8f0;border-top:1px solid #e2e8f0;z-index:1}.nav-dropdown a{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:9px;text-decoration:none;font-size:.84rem;font-weight:600;color:#1e293b !important;transition:background .18s,color .18s,box-shadow .18s;white-space:nowrap}.nav-dropdown a:hover{background:#fff;color:#2563eb !important;box-shadow:0 2px 12px rgba(37,99,235,.10)}.nav-dropdown a::after{display:none !important}@media(max-width:600px){.nav-dropdown{min-width:unset;grid-template-columns:1fr;left:0;transform:translateX(0) translateY(4px)}.nav-item-has-dropdown:hover .nav-dropdown,.nav-item-has-dropdown.open .nav-dropdown{transform:translateX(0) translateY(0)}}#home{position:relative;height:100vh;min-height:660px;overflow:hidden;padding-top:70px}.hero-slide{position:absolute;inset:0;display:flex;align-items:center;opacity:0;transition:opacity 1.1s cubic-bezier(.4,0,.2,1);pointer-events:none}.hero-slide.active{opacity:1;pointer-events:all}.particle{position:absolute;border-radius:50%;animation:particleFloat linear infinite}@keyframes particleFloat{0%{transform:translateY(100vh) translateX(0) scale(0);opacity:0}10%{opacity:1}90%{opacity:.6}100%{transform:translateY(-100px) translateX(var(--drift)) scale(1);opacity:0}}.sdot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.25);border:none;cursor:pointer;transition:all .4s ease;padding:0}.sdot.active{width:28px;border-radius:4px;background:#fff}.page-hero{padding:120px 5% 70px;background:linear-gradient(135deg,#0a0f1e 0%,#0d1b35 60%,#0f2755 100%);position:relative;overflow:hidden;text-align:center}.page-hero::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:72px 72px}.page-hero h1{font-size:clamp(2.2rem,4.5vw,3.5rem);font-weight:900;color:#fff;line-height:1.1;margin-bottom:18px;letter-spacing:-1px}.page-hero h1 span{background:linear-gradient(135deg,#60a5fa,#06b6d4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.page-hero p{font-size:1.05rem;color:rgba(255,255,255,.65);line-height:1.85;max-width:600px;margin:0 auto}.hero{padding:130px 5% 80px;background:linear-gradient(135deg,#0a0f1e 0%,#0d1b35 55%,#0f2755 100%);position:relative;overflow:hidden;text-align:center}.hero::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:72px 72px}.hero h1{font-size:clamp(2.4rem,5vw,3.8rem);font-weight:900;color:#fff;line-height:1.08;margin-bottom:20px;letter-spacing:-1.5px}.hero p{font-size:1.06rem;color:rgba(255,255,255,.65);line-height:1.85;max-width:800px;margin:0 auto 40px}#trust{background:#eff6ff;padding:48px 5%;overflow:hidden;position:relative;border-top:1px solid #dbeafe;border-bottom:1px solid #dbeafe}#trust::before,#trust::after{content:'';position:absolute;top:0;bottom:0;width:80px;z-index:2}#trust::before{left:0;background:linear-gradient(90deg,#eff6ff,transparent)}#trust::after{right:0;background:linear-gradient(-90deg,#eff6ff,transparent)}section{padding:90px 5%}h2{font-size:clamp(1.8rem,3.5vw,2.75rem);font-weight:900;color:var(--dk);line-height:1.15;margin-bottom:14px}#services{background:#f8fafc;margin-top:40px}.svc-card,.sc{perspective:900px;height:280px;cursor:pointer;opacity:0;transform:translateY(-50px) scale(.92);transition:opacity .55s cubic-bezier(.34,1.56,.64,1),transform .55s cubic-bezier(.34,1.56,.64,1)}.svc-card.svc-in,.sc.in{opacity:1;transform:translateY(0) scale(1)}@media(min-width:1101px){.svc-card:nth-child(5),.sc:nth-child(5){grid-column:1}.svc-card:nth-child(6),.sc:nth-child(6){grid-column:2}.svc-card:nth-child(7),.sc:nth-child(7){grid-column:3}}.g{color:#60a5fa}#how{background:#fff}.step{text-align:center;padding:0 24px}.step h3{font-size:1rem;font-weight:800;color:#1e293b;margin-bottom:10px}.step p{font-size:.86rem;color:#64748b;line-height:1.75}.stars{color:#f59e0b;font-size:1rem;letter-spacing:2px;margin-bottom:14px}#pricing{background:#fff}#about{background:#f8fafc}#values{background:#f8fafc}#team{background:#f8fafc}#contact{background:linear-gradient(135deg,#1d4ed8,#3b82f6)}footer{background:#0b1224;padding:24px 5% 15px;position:relative;overflow:hidden}footer::before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle at 15% 20%,rgba(37,99,235,.08),transparent 40%),radial-gradient(circle at 85% 80%,rgba(96,165,250,.06),transparent 40%);pointer-events:none}.f-inner,.fi{max-width:1200px;margin:0 auto;position:relative;z-index:1}.f-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.4fr;gap:48px;margin-bottom:20px;margin-top:0}.f-brand .logo,.fb .logo{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin-bottom:8px;color:#fff;text-align:left}.f-brand .f-logo-img{width:160px;max-width:100%;height:auto;display:block}.f-brand .f-brand-stack{margin:0;text-align:left}.f-brand .f-tag,.f-brand p{font-size:.88rem;color:rgba(255,255,255,.55);line-height:1.65;max-width:320px;margin:6px 0 0}.f-brand .f-tag-slogan{color:#93c5fd;font-weight:400;font-style:italic;letter-spacing:.2px;margin-right:4px}.f-col-bottom{align-self:start;padding-top:20px}.f-col h4,.fc h4{color:#fff;font-size:.92rem;font-weight:800;margin-bottom:16px;letter-spacing:.2px}.f-col ul,.fc ul{list-style:none;display:flex;flex-direction:column;gap:10px;padding:0;margin:0}.f-col a,.fc a{color:rgba(255,255,255,.55);text-decoration:none;font-size:.86rem;transition:color .2s;display:inline-block}.f-col a:hover,.fc a:hover{color:#60a5fa}.f-col .f-more{color:#60a5fa !important;font-weight:700;margin-top:6px}.f-col .f-more:hover{color:#93c5fd !important}.f-contact a{display:flex !important;align-items:flex-start;gap:10px;word-break:break-word;line-height:1.45}.f-contact .fc-ico{font-size:.95rem;opacity:.85;flex-shrink:0;width:20px}.f-bottom,.fbot{border-top:1px solid rgba(255,255,255,.08);padding-top:22px;display:flex;flex-direction:column;justify-content:center;align-items:center;flex-wrap:wrap;gap:6px;font-size:.78rem;color:rgba(255,255,255,.42);text-align:center}.socials,.soc{display:flex;gap:10px;margin-top:18px}.s-btn{width:36px;height:36px;border-radius:9px;background:rgba(255,255,255,.07);display:flex;align-items:center;justify-content:center;text-decoration:none;color:rgba(255,255,255,.65);font-size:.82rem;font-weight:800;transition:all .2s}.s-btn:hover{background:#2563eb;color:#fff;transform:translateY(-2px)}.toast{position:fixed;bottom:30px;right:30px;z-index:9999;background:#fff;border:1px solid #bfdbfe;border-left:3px solid #2563eb;color:#1e293b;padding:14px 22px;border-radius:14px;font-size:.88rem;font-weight:500;box-shadow:0 8px 40px rgba(37,99,235,.15);opacity:0;transform:translateY(16px);transition:all .4s ease;pointer-events:none}.toast.show{opacity:1;transform:translateY(0)}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}.reveal.vis{opacity:1;transform:translateY(0)}@media(max-width:1024px){.f-grid{grid-template-columns:1fr 1fr;gap:36px}.f-brand{grid-column:1 / -1}}@media(max-width:768px){#home{height:100vh;min-height:600px;overflow:hidden}.hero-slide{align-items:flex-start}footer{padding-bottom:110px}.f-bottom,.fbot{gap:8px}section{padding:60px 5%}.nav-links{display:none;position:fixed;top:70px;left:0;right:0;background:#ffffff;backdrop-filter:blur(16px);flex-direction:column;gap:0;padding:20px 0 32px;border-bottom:1px solid #e2e8f0;z-index:9999;box-shadow:0 12px 32px rgba(0,0,0,.18);max-height:calc(100vh - 70px);overflow-y:auto}.nav-links a{color:#0f172a !important}.nav-item-has-dropdown .nav-dropdown{position:static;opacity:1;pointer-events:none;transform:none;display:none;box-shadow:none;border:none;background:#f8fafc;border-radius:0;padding:4px 0;margin:6px 0 0;min-width:0;width:100%;grid-template-columns:1fr}.nav-item-has-dropdown .nav-dropdown::before,.nav-item-has-dropdown .nav-dropdown::after{display:none !important}.nav-item-has-dropdown.open .nav-dropdown{display:block;pointer-events:all}.nav-item-has-dropdown:hover .nav-dropdown{display:none}.nav-item-has-dropdown.open .nav-dropdown{display:block}.nav-dropdown a{display:flex !important;flex-direction:row !important;align-items:center !important;justify-content:flex-start !important;gap:14px !important;text-align:left !important;padding:11px 18px !important;font-size:.9rem !important;border-bottom:1px solid #e2e8f0;border-radius:0 !important;color:#334155 !important;white-space:normal !important;width:100%}.nav-dropdown a:last-child{border-bottom:none}.nav-links.open{display:flex}.nav-links li{width:100%;text-align:center}.nav-links a{display:block;padding:14px 20px;font-size:1rem;color:#475569}.hamburger{display:flex}.f-grid{grid-template-columns:1fr}.f-col{display:none}.f-brand{text-align:center}.f-brand .logo,.fb .logo{align-items:center}.f-brand .f-brand-stack{text-align:center}.f-brand .f-tag,.f-brand p{text-align:center;max-width:100%}.f-brand .socials{justify-content:center}.toast{left:20px;right:20px}}@media(max-width:480px){#home{min-height:580px}.f-grid{grid-template-columns:1fr;gap:32px}.f-brand{grid-column:auto}}.hero{padding:128px 5% 80px;background:linear-gradient(135deg,#0a0f1e 0%,#0d1b35 55%,#0f2755 100%);position:relative;overflow:hidden;text-align:center}.hero::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:72px 72px}.hero h1{font-size:clamp(2.3rem,4.5vw,3.6rem);font-weight:900;color:#fff;line-height:1.1;margin-bottom:18px;letter-spacing:-1.5px}.hero p{font-size:1.04rem;color:rgba(255,255,255,.65);line-height:1.85;max-width:800px;margin:0 auto 32px}.toggle{width:52px;height:28px;background:rgba(255,255,255,.15);border-radius:14px;position:relative;cursor:pointer;border:1px solid rgba(255,255,255,.2);transition:background .3s}.toggle.on{background:#2563eb}#plans{background:#f8fafc}.guarantee{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1.5px solid #86efac;border-radius:20px;padding:36px;display:flex;align-items:center;gap:28px;max-width:820px;margin:52px auto 0}.pkg-tab{padding:10px 22px;border-radius:10px;font-size:.83rem;font-weight:700;color:#64748b;cursor:pointer;transition:all .2s;border:none;background:none}.pkg-tab.active{background:#fff;color:#2563eb;box-shadow:0 2px 8px rgba(0,0,0,.08)}.pkg-card{border-radius:18px;padding:28px;border:1.5px solid #e2e8f0;transition:transform .3s,box-shadow .3s,border-color .3s}.pkg-card:hover{transform:translateY(-5px);box-shadow:0 16px 40px rgba(37,99,235,.09);border-color:#bfdbfe}.pkg-card::before{content:'';display:block;width:42px;height:4px;border-radius:2px;margin-bottom:18px}.pkg-card h3{font-size:1rem;font-weight:800;color:#1e293b;margin-bottom:6px}.pkg-card .from{font-size:.72rem;color:#94a3b8;text-transform:uppercase;letter-spacing:1px;margin-bottom:4px}#compare{background:#f8fafc}table{width:100%;border-collapse:collapse;min-width:700px;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 4px 24px rgba(37,99,235,.07)}thead tr{background:linear-gradient(135deg,#1d4ed8,#3b82f6)}th{padding:18px 20px;text-align:center;color:#fff;font-size:.82rem;font-weight:800;letter-spacing:.5px;text-transform:uppercase}th:first-child{text-align:left}tbody tr{border-bottom:1px solid #f1f5f9;transition:background .2s}tbody tr:last-child{border:none}tbody tr:hover{background:#f8fafc}td{padding:14px 20px;font-size:.87rem;color:#475569;text-align:center;vertical-align:middle}td:first-child{text-align:left;font-weight:600;color:#1e293b;font-size:.9rem}td .yes{color:#10b981;font-size:1.1rem;font-weight:900}td .no{color:#e2e8f0;font-size:1.1rem}td .part{color:#f59e0b;font-size:.78rem;font-weight:700}#faq{background:#f8fafc}.faq-item{background:#fff;border-radius:14px;border:1.5px solid #e2e8f0;overflow:hidden}.faq-q{display:flex;justify-content:space-between;align-items:center;padding:13px 20px;cursor:pointer;transition:background .2s}.faq-q:hover{background:#f8fafc}.faq-q span{font-size:.87rem;font-weight:700;color:#1e293b;flex:1;padding-right:14px;line-height:1.4}@media(max-width:768px){.guarantee{flex-direction:column;text-align:center}}.submit-btn{width:100%;padding:15px 24px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border:none;border-radius:14px;font-size:.96rem;font-weight:800;cursor:pointer;font-family:inherit;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 4px 18px rgba(37,99,235,.3)}.submit-btn:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(37,99,235,.4)}.submit-btn:active{transform:translateY(0)}#consultation{background:#f8fafc;scroll-margin-top:90px}.consult-btn{width:100%;padding:14px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border:none;border-radius:12px;font-size:.93rem;font-weight:800;cursor:pointer;font-family:inherit;transition:all .2s;box-shadow:0 4px 16px rgba(37,99,235,.3)}.consult-btn:hover{transform:translateY(-2px);box-shadow:0 8px 26px rgba(37,99,235,.4)}#audit{background:#fff;scroll-margin-top:90px}#offices{background:#f8fafc}[ng-view]{display:block}nav .nav-links>li>a:not(.nav-cta){color:rgba(255,255,255,.88)}nav .logo{color:#ffffff}nav .hamburger span{background:#ffffff}#home{position:relative !important;height:100vh !important;min-height:640px !important;overflow:hidden !important;margin-top:0 !important;padding-top:0 !important}.hero-slide{position:absolute !important;top:0 !important;left:0 !important;right:0 !important;bottom:0 !important;display:flex !important;align-items:center !important;opacity:0 !important;pointer-events:none !important;z-index:1;transition:opacity 1.1s cubic-bezier(.4,0,.2,1) !important}.hero-slide.active{opacity:1 !important;pointer-events:all !important;z-index:2}[ng-view] .page-hero{margin-top:70px !important}[ng-view] .page-hero[style*="padding:100px"]{padding-top:100px !important}#trust{position:relative;isolation:isolate;padding:38px 5%;overflow:hidden;background:linear-gradient(135deg,#03132f 0%,#06245a 54%,#03132f 100%);border-top:1px solid rgba(96,165,250,.25);border-bottom:1px solid rgba(96,165,250,.18)}#trust::before{content:'';position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 18% 10%,rgba(37,99,235,.28),transparent 32%),radial-gradient(circle at 82% 100%,rgba(14,165,233,.14),transparent 28%)}#trust::after{content:'';position:absolute;z-index:-1;inset:0;background-image:linear-gradient(rgba(96,165,250,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(96,165,250,.05) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,transparent,#000 16%,#000 84%,transparent)}@media(max-width:560px){#trust{padding:34px 18px}}h1,h2,h3,h4,.slide-h1,.sh{text-wrap:balance}p,.s-sub,.ssub,.sub,.svc-desc,blockquote{text-wrap:pretty}html{scroll-behavior:smooth}::selection{background:#bfdbfe;color:#0f172a}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid #2563eb;outline-offset:3px;border-radius:6px}@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}.reveal{opacity:1 !important;transform:none !important}}@media(max-width:900px){main [style*="grid-template-columns:repeat(3,1fr)"]{grid-template-columns:repeat(2,1fr) !important}main [style*="grid-template-columns:repeat(3, 1fr)"]{grid-template-columns:repeat(2,1fr) !important}}@media(max-width:600px){main [style*="grid-template-columns:repeat(3,1fr)"],
  main [style*="grid-template-columns:repeat(3, 1fr)"],
  main [style*="grid-template-columns:repeat(2,1fr)"],
  main [style*="grid-template-columns:repeat(2, 1fr)"]{grid-template-columns:1fr !important}}@media(max-width:600px){ul[style*="columns:2"]{columns:1 !important}}img,svg,video,iframe,input,select,textarea,table{max-width:100%}main [style*="grid-template-columns"]{min-width:0}@media(max-width:560px){.tools-hero{padding:96px 6% 52px !important}}.hcard,.hv,.info-block,.office-detail,.fc-ico + span,blockquote,.trend-body,.b-tldr p{overflow-wrap:anywhere}:root{
  --hair:rgba(15,23,42,.08);
  --hair-strong:rgba(15,23,42,.12);
  --r-sm:10px; --r:14px; --r-lg:18px; --r-xl:24px;
  --e1:0 1px 2px rgba(16,24,40,.04),0 1px 3px rgba(16,24,40,.05);
  --e2:0 2px 4px -1px rgba(16,24,40,.05),0 6px 16px -6px rgba(16,24,40,.10);
  --e3:0 8px 20px -8px rgba(16,24,40,.14),0 4px 8px -4px rgba(16,24,40,.06);
  --e4:0 24px 48px -16px rgba(16,24,40,.20),0 8px 16px -8px rgba(16,24,40,.08);
  --grad:linear-gradient(135deg,#4f46e5 0%,#2563eb 48%,#0ea5e9 100%);
  --ink:#0b1220;
}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,.slide-h1,.sh,.plan-name{letter-spacing:-.022em}h1,.slide-h1{letter-spacing:-.03em;line-height:1.08}h1,h2,.sh,.slide-h1{font-weight:800}.p-card,.svc-front,.trend-card,.hiw-card,.benefit-card,.lm-card,.epo-card,.plan-card,.mdc,.faq-item,.addon-card,.tl-body,.jtl-body{
  border:1px solid var(--hair)!important;
  border-radius:var(--r-lg)!important;
  box-shadow:var(--e2)!important;
  transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s cubic-bezier(.22,1,.36,1),border-color .35s!important;
}#navbar.whitebg{box-shadow:0 1px 0 var(--hair),0 8px 30px -16px rgba(16,24,40,.18)!important}.nav-links>li>a{position:relative}.nav-links>li>a:not(.nav-cta)::after{content:"";position:absolute;left:0;right:100%;bottom:-4px;height:2px;border-radius:2px;background:var(--grad);transition:right .3s cubic-bezier(.22,1,.36,1)}.nav-links>li>a:not(.nav-cta):hover::after,.nav-links>li>a.active-link::after{right:0}#solution,#closing,.page-cta{position:relative}#solution::before,#closing::before,.page-cta::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(120% 80% at 15% 0%,rgba(79,70,229,.18),transparent 60%),radial-gradient(120% 80% at 100% 100%,rgba(14,165,233,.14),transparent 55%);}#solution>*,#closing>*,.page-cta>*{position:relative;z-index:1}*{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px;border:3px solid transparent;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background:#94a3b8;background-clip:content-box}.reveal{transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}.nav-links{gap:1.45rem}.nav-links>li>a{white-space:nowrap}.nav-cta-item{margin-left:.35rem}a.nav-cta{
  display:inline-flex;align-items:center;white-space:nowrap;
  background:linear-gradient(100deg,#1a56db,#2563eb);
  color:#fff!important;font-weight:700;font-size:.88rem;
  padding:10px 18px;border-radius:8px;
  box-shadow:0 8px 20px -8px rgba(37,99,235,.55);
  transition:transform .18s,box-shadow .18s
}a.nav-cta:hover{transform:translateY(-1px);box-shadow:0 12px 26px -8px rgba(37,99,235,.7)}a.nav-cta::after{display:none!important}#navbar.whitebg a.nav-cta{color:#fff!important}@media(max-width:1280px){.nav-links{gap:1.05rem}.nav-links>li>a{font-size:.88rem}}@media(max-width:1120px){.nav-links{gap:.8rem}.nav-links>li>a{font-size:.85rem}a.nav-cta{padding:9px 14px;font-size:.83rem}}@media(max-width:560px){.nav-cta-item{margin-left:0;width:100%}a.nav-cta{width:100%;justify-content:center;margin-top:8px}}@media(max-width:768px){.nav-item-has-dropdown .nav-dropdown{min-width:0 !important;max-width:100% !important}.nav-dropdown a{min-height:44px}.hamburger{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}}@media(max-width:1000px){.nav-item-has-dropdown .nav-dropdown{min-width:min(620px,calc(100vw - 32px));
    max-width:calc(100vw - 32px);grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:860px){.nav-item-has-dropdown .nav-dropdown{min-width:min(460px,calc(100vw - 24px));
    max-width:calc(100vw - 24px);grid-template-columns:minmax(0,1fr)}}.nav-dropdown.dd2{display:block;min-width:min(var(--dd2-w,860px),calc(100vw - 32px));
  max-width:calc(100vw - 32px);padding:0;overflow:hidden;
  
  position:fixed;top:70px;left:50%;transform:translateX(-50%) translateY(4px)}.nav-item-has-dropdown:hover > .nav-dropdown.dd2,
.nav-item-has-dropdown.open > .nav-dropdown.dd2{transform:translateX(-50%) translateY(0)}.nav-dropdown.dd2::before,.nav-dropdown.dd2::after{display:none!important}.dd2-rail{display:none}.dd2-panes{padding:16px}.dd2-plabel{font-size:.67rem;font-weight:800;text-transform:uppercase;letter-spacing:1.8px;
  color:#2563eb;padding:2px 10px 8px;margin:0 2px 4px}.dd2-grid{display:grid;grid-template-columns:repeat(var(--dd2-cols,2),minmax(0,1fr));gap:2px 10px}.dd2-item{display:flex;align-items:flex-start;gap:12px;padding:10px 12px;border-radius:10px;
  text-decoration:none;min-width:0;transition:background .16s}.dd2-item:hover{background:#f5f7fb}.dd2-ico{width:34px;height:34px;border-radius:10px;flex-shrink:0;display:flex;
  align-items:center;justify-content:center}.dd2-ico.dd2-ico-image{width:36px;height:36px;padding:0;background:transparent!important;border:0;box-shadow:none;overflow:visible;border-radius:0}.dd2-menu-image{display:block;width:36px;height:36px;object-fit:contain;border:0;border-radius:0}.sdm-language-selector{display:flex;align-items:center;gap:7px;margin-left:auto;margin-right:0;min-height:36px;color:#e2e8f0;font-size:.72rem;font-weight:800;letter-spacing:.04em;white-space:nowrap;order:3}.sdm-language-label{display:none}.sdm-language-selector .gtranslate_wrapper{position:relative;display:flex;align-items:center;min-width:118px}.sdm-language-selector .gtranslate_wrapper::before{content:"";position:absolute;z-index:2;left:10px;width:17px;height:12px;border-radius:2px;background:center/cover no-repeat url("https://flagcdn.com/us.svg");pointer-events:none;box-shadow:0 0 0 1px rgba(255,255,255,.18)}.sdm-language-selector[data-language="hi"] .gtranslate_wrapper::before,.sdm-language-selector[data-language="pa"] .gtranslate_wrapper::before{background-image:url("https://flagcdn.com/in.svg")}.sdm-language-selector[data-language="es"] .gtranslate_wrapper::before{background-image:url("https://flagcdn.com/es.svg")}.sdm-language-selector[data-language="fr"] .gtranslate_wrapper::before{background-image:url("https://flagcdn.com/fr.svg")}.sdm-language-selector[data-language="de"] .gtranslate_wrapper::before{background-image:url("https://flagcdn.com/de.svg")}.sdm-language-selector[data-language="ar"] .gtranslate_wrapper::before{background-image:url("https://flagcdn.com/sa.svg")}.sdm-language-selector[data-language="ja"] .gtranslate_wrapper::before{background-image:url("https://flagcdn.com/jp.svg")}.sdm-language-selector[data-language="pt"] .gtranslate_wrapper::before{background-image:url("https://flagcdn.com/pt.svg")}.sdm-language-selector[data-language="zh-CN"] .gtranslate_wrapper::before{background-image:url("https://flagcdn.com/cn.svg")}.sdm-language-selector .gtranslate_wrapper select{width:118px;min-height:36px;appearance:none;border:0;border-radius:0;padding:7px 29px 7px 34px;background:rgba(15,23,42,.64) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23cbd5e1' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") right 10px center/12px 8px no-repeat;color:#fff;font:700 .77rem/1.1 inherit;cursor:pointer;outline:0}.sdm-language-selector .gtranslate_wrapper select:focus{box-shadow:none}.sdm-language-selector .gtranslate_wrapper select option{background:#fff;color:#0f172a}#navbar.whitebg .sdm-language-selector{color:#334155}#navbar.whitebg .sdm-language-selector .gtranslate_wrapper select{border:0;background-color:#fff;color:#1e293b}@media(min-width:701px){nav .logo{order:1}nav .nav-links{order:2;margin-left:auto}nav .sdm-language-selector{order:3;margin-left:22px;margin-right:0}nav .hamburger{order:4}}@media(min-width:1200px){nav .sdm-language-selector{position:absolute;top:50%;right:16px;margin:0;transform:translateY(-50%)}nav .sdm-language-selector .sdm-language-trigger{gap:5px;padding:7px 1px}nav .sdm-language-selector .sdm-language-trigger-text{display:none}nav .sdm-language-selector .sdm-language-chevron{margin-left:1px}}@media(max-width:1120px){.sdm-language-label{display:none}.sdm-language-selector{margin-left:auto;margin-right:8px}.sdm-language-selector .gtranslate_wrapper{min-width:104px}.sdm-language-selector .gtranslate_wrapper select{width:104px}}@media(max-width:700px){.sdm-language-selector{margin-left:auto;margin-right:5px;order:2}.sdm-language-selector .gtranslate_wrapper{min-width:96px}.sdm-language-selector .gtranslate_wrapper select{width:96px;padding-left:31px;font-size:.7rem}.sdm-language-selector .gtranslate_wrapper::before{left:8px;width:16px;height:11px}#navbar .hamburger{order:3}}.sdm-language-selector.has-custom-language-menu .gtranslate_wrapper{display:none!important}.sdm-language-menu{position:relative;z-index:3100}.sdm-language-trigger{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:7px 4px;background:transparent;border:0;color:inherit;font:800 .77rem/1.1 inherit;cursor:pointer;white-space:nowrap}.sdm-language-trigger img{width:18px;height:auto;border-radius:2px;box-shadow:0 0 0 1px rgba(255,255,255,.2)}.sdm-language-chevron{width:7px;height:7px;margin-left:2px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .18s}.sdm-language-menu.is-open .sdm-language-chevron{transform:rotate(225deg) translate(-2px,-1px)}.sdm-language-options{position:absolute;top:calc(100% + 10px);right:0;display:none;width:196px;max-height:min(420px,72vh);padding:7px;background:#fff;border-radius:14px;box-shadow:0 18px 42px rgba(15,23,42,.24);overflow:auto}.sdm-language-menu.is-open .sdm-language-options{display:grid;gap:2px}.sdm-language-option{display:flex;align-items:center;gap:11px;width:100%;padding:10px;border:0;border-radius:9px;background:transparent;color:#1e293b;font:700 .82rem/1.2 inherit;text-align:left;cursor:pointer}.sdm-language-option img{width:20px;height:auto;border-radius:2px;box-shadow:0 0 0 1px rgba(15,23,42,.12)}.sdm-language-option:hover,.sdm-language-option:focus-visible{background:#eff6ff;color:#1d4ed8;outline:0}.sdm-language-option.is-selected{background:#dbeafe;color:#1d4ed8}.sdm-language-option.is-selected::after{content:"";width:6px;height:6px;margin-left:auto;border-radius:50%;background:#2563eb}#navbar.whitebg .sdm-language-trigger{color:#1e293b}@media(max-width:700px){.sdm-language-trigger{gap:6px;padding:7px 2px;font-size:.72rem}.sdm-language-options{right:-4px;width:180px}.sdm-language-option{padding:9px;font-size:.78rem}}@media(max-width:700px){#navbar{padding-left:16px;padding-right:12px;gap:0}#navbar .logo{order:1;min-width:0;flex:1 1 auto}#navbar .sdm-language-selector{order:2;flex:0 0 auto;margin-left:8px;margin-right:8px;min-height:44px}#navbar .hamburger{order:3;flex:0 0 44px;margin:0;padding:0;position:relative;z-index:1010}}@media(max-width:500px){#navbar .sdm-language-selector{margin-left:5px;margin-right:4px}#navbar .sdm-language-trigger{width:34px;min-height:44px;justify-content:center;padding:0}#navbar .sdm-language-trigger-text{display:none}#navbar .sdm-language-trigger img{width:19px;height:auto}#navbar .sdm-language-chevron{margin-left:0}}#servicesNavItem .dd2-ico.dd2-ico-image{width:40px;height:40px}#servicesNavItem .dd2-menu-image{width:40px;height:40px}.fc-ico img{display:block;width:18px;height:18px;object-fit:contain}.inline-png-icon{display:block;object-fit:contain;vertical-align:middle}.dd2-txt{display:flex;flex-direction:column;gap:2px;min-width:0}.dd2-name{font-size:.88rem;font-weight:700;color:#1e293b;line-height:1.28}.dd2-desc{font-size:.75rem;font-weight:400;color:#7c8798;line-height:1.4}.dd2-item:hover .dd2-name{color:#2563eb}.nav-dropdown.dd2.dd2-js{display:grid;grid-template-columns:minmax(190px,232px) 1fr}.dd2-js .dd2-rail{display:flex;flex-direction:column;gap:2px;background:#f5f7fb;
  border-right:1px solid #e3e8f0;padding:16px 10px;align-content:start}.dd2-js .dd2-cat{position:relative;text-align:left;background:none;border:0;cursor:pointer;
  font:600 .82rem/1.4 -apple-system,BlinkMacSystemFont,'Segoe UI Variable','Segoe UI',
    system-ui,'Inter','Helvetica Neue',Arial,sans-serif;
  letter-spacing:.15px;text-transform:none;
  color:#334155;padding:10px 14px 10px 18px;border-radius:8px;
  transition:color .16s,background .16s}.dd2-js .dd2-cat:hover{background:#eef2f8;color:#0f172a}.dd2-js .dd2-cat.on{color:#1a56db;background:#eff6ff;font-weight:700}.dd2-js .dd2-cat.on::before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;
  border-radius:0 3px 3px 0;background:#1a56db}.dd2-js .dd2-cat:focus-visible{outline:2px solid #1a56db;outline-offset:-2px}.dd2-js .dd2-panes{padding:18px 20px}.dd2-js .dd2-plabel{display:none}.dd2-js .dd2-pane{display:none}.dd2-js .dd2-pane.on{display:block}@media(max-width:1000px){.nav-dropdown.dd2{min-width:min(620px,calc(100vw - 32px))}.nav-dropdown.dd2.dd2-js{grid-template-columns:minmax(160px,190px) 1fr}.dd2-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:768px){.nav-item-has-dropdown .nav-dropdown.dd2,
  .nav-item-has-dropdown .nav-dropdown.dd2.dd2-js{display:block!important;
    min-width:0!important;max-width:100%!important;width:100%;
    position:static!important;transform:none!important;top:auto!important;left:auto!important}
  /* closed sections stay collapsed in the mobile drawer; tapping a section toggles .open */
  .nav-item-has-dropdown:not(.open) .nav-dropdown.dd2{display:none!important}.dd2-js .dd2-rail{display:none!important}.dd2-js .dd2-pane{display:block!important}.dd2-js .dd2-plabel{display:block!important}.dd2-panes,.dd2-js .dd2-panes{padding:4px 0 8px}.dd2-grid{grid-template-columns:minmax(0,1fr)!important;gap:0}.dd2-item{padding:11px 18px;min-height:44px}}.nav-item-has-dropdown{position:relative}.nav-item-has-dropdown::after{
  content:"";position:absolute;left:-14px;right:-14px;top:100%;height:34px;
  pointer-events:auto;background:transparent;z-index:1}@media(max-width:768px){.nav-item-has-dropdown::after{display:none}}.dd2-item{min-width:0}.dd2-txt{min-width:0;flex:1 1 auto;max-width:100%;overflow:hidden}.dd2-name,.dd2-desc{min-width:0;max-width:100%;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}@media(max-width:768px){.dd2-name,.dd2-desc,.dd-item-name,.dd-item-desc{white-space:normal;text-overflow:clip}}.dd2-locs{--dd2-w:1080px}.dd2-locs.dd2-js{grid-template-columns:minmax(180px,220px) 1fr}.dd2-locs .dd2-panes{padding:0}.dd2-locs .dd2-pane.on{display:grid}.dd2-locs .dd2-pane{grid-template-columns:minmax(200px,240px) 1fr}.dd2-locs .dd2-plabel{grid-column:1 / -1;padding:14px 20px 6px}.dd2-loc-countries{display:flex;flex-direction:column;gap:1px;
  padding:8px 8px 14px 12px;border-right:1px solid #eef2f7;
  max-height:70vh;overflow-y:auto}.dd2-loc-c{position:relative;text-align:left;background:transparent;border:0;cursor:pointer;
  font:600 .82rem/1.35 'Segoe UI',system-ui,sans-serif;color:#1e293b;
  padding:9px 12px 9px 14px;border-radius:8px;
  display:flex;align-items:center;justify-content:space-between;gap:8px;
  transition:background .16s,color .16s}.dd2-loc-c small{font-size:.65rem;font-weight:700;color:#94a3b8;letter-spacing:.4px}.dd2-loc-flag{width:20px;height:15px;object-fit:cover;flex-shrink:0;
  border-radius:2px;box-shadow:0 0 0 1px rgba(15,23,42,.08),0 1px 2px rgba(15,23,42,.06);
  display:inline-block;vertical-align:middle}.dd2-loc-c > span{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dd2-loc-c:hover{background:#f5f7fb;color:#1a56db}.dd2-loc-c.on{background:#eff6ff;color:#1a56db}.dd2-loc-c.on::before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;
  border-radius:0 3px 3px 0;background:#1a56db}.dd2-loc-cities-wrap{padding:14px 18px 18px;position:relative}.dd2-loc-cities{display:none;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:2px 12px}.dd2-loc-cities.on{display:grid}.dd2-loc-cities a{display:flex;align-items:center;gap:8px;
  padding:8px 10px;border-radius:8px;text-decoration:none;
  font-size:.82rem;font-weight:600;color:#334155;
  transition:background .16s,color .16s;min-width:0}.dd2-loc-cities a::before{content:"";width:14px;height:14px;flex-shrink:0;
  background:#94a3b8;transition:background .16s,transform .16s;
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7zm0 9.5a2.5 2.5 0 1 1 0-5 2.5 2.5 0 0 1 0 5z' fill='black'/></svg>") center/contain no-repeat;
          mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7zm0 9.5a2.5 2.5 0 1 1 0-5 2.5 2.5 0 0 1 0 5z' fill='black'/></svg>") center/contain no-repeat}.dd2-loc-cities a:hover{background:#f0f7ff;color:#1d4ed8}.dd2-loc-cities a:hover::before{background:#1d4ed8;transform:translateY(-1px)}.dd2-loc-cities a.dd2-loc-all::before{
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='9'/><path d='M3 12h18M12 3a13 13 0 0 1 0 18M12 3a13 13 0 0 0 0 18'/></svg>") center/contain no-repeat;
          mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='9'/><path d='M3 12h18M12 3a13 13 0 0 1 0 18M12 3a13 13 0 0 0 0 18'/></svg>") center/contain no-repeat;
  background:#2563eb}.dd2-loc-cities a.dd2-loc-all{font-weight:700;color:#1d4ed8}.dd2-loc-cities a.dd2-loc-all:hover::before{background:#1e40af;transform:none}.dd2-loc-cities a span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.dd2-loc-c-head{display:none;font-size:.68rem;font-weight:800;text-transform:uppercase;
  letter-spacing:1.3px;color:#2563eb;margin:14px 0 4px}@media(max-width:900px){.dd2-locs .dd2-pane{grid-template-columns:1fr}.dd2-loc-countries{border-right:0;border-bottom:1px solid #eef2f7;max-height:none;
    flex-direction:row;flex-wrap:wrap;padding:8px 14px 12px}.dd2-loc-c{padding:7px 12px;border-radius:20px;background:#f5f7fb}.dd2-loc-c.on::before{display:none}}@media(max-width:768px){.dd2-locs.dd2-js .dd2-loc-countries{display:none!important}.dd2-locs.dd2-js .dd2-loc-cities{display:grid!important;grid-template-columns:1fr}.dd2-locs.dd2-js .dd2-loc-c-head{display:block!important}}.lc-hero-banner::before{z-index:1}.lc-hero-banner>:not(.lc-hero-image){position:relative;z-index:2}#home{position:relative;min-height:720px;overflow:hidden;background:radial-gradient(circle at 82% 38%,rgba(29,78,216,.24),transparent 34%),linear-gradient(135deg,#030817 0%,#06152e 52%,#071b3d 100%)}#home::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(96,165,250,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(96,165,250,.07) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(90deg,#000 0%,#000 68%,transparent 100%)}:is(.local-global-slide,.seo-demand-slide){display:block;max-width:none;padding:0}:is(.local-global-slide,.seo-demand-slide)::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(2,10,29,.2) 0%,rgba(2,10,29,.05) 44%,rgba(2,10,29,.02) 100%);pointer-events:none}.home-chart{position:relative;height:180px;margin-top:14px;border:1px solid rgba(148,163,184,.16);border-radius:12px;overflow:hidden;background:repeating-linear-gradient(0deg,transparent 0 35px,rgba(148,163,184,.08) 36px),repeating-linear-gradient(90deg,transparent 0 85px,rgba(148,163,184,.06) 86px)}.home-chart svg{width:100%;height:100%}@media(max-width:1024px){#home{min-height:670px}}@media(max-width:600px){#home{min-height:610px}}

/* Header at tablet and small-laptop widths. The logo text, nine menu items and the
   language picker need about 1,090px, so between the mobile menu (768px) and the
   full layout (1200px) the header drops the Home link (the logo already links home),
   shows the language as a flag and tightens the spacing; below 1000px the logo
   text goes too. Fractional breakpoints close the gaps at e.g. 1199.5px. */
@media (min-width:768.02px) and (max-width:1199.98px){
  #navbar{padding-left:2%;padding-right:2%}
  #navbar .logo{flex-shrink:0}
  #navbar .nav-links{gap:.6rem}
  #navbar .nav-links>li>a{font-size:.8rem}
  #navbar .nav-links>li:first-child{display:none}
  #navbar .sdm-language-selector{margin-left:12px;margin-right:0}
  #navbar .sdm-language-trigger-text{display:none}
}
@media (min-width:768.02px) and (max-width:999.98px){
  #navbar .brand{display:none}
}
@media (min-width:768.02px) and (max-width:920.98px){
  #navbar .nav-links{gap:.4rem}
  #navbar .nav-links>li>a{font-size:.74rem}
  #navbar .nav-links>li>a.nav-cta{padding:8px 11px}
}
/* ==========================================================================
   SDM case study template — scoped under .cs-page so it cannot leak.
   Type scale, colours and radii deliberately match article.css / the site shell.
   ========================================================================== */
.cs-page{--cs-font:'Segoe UI',system-ui,-apple-system,BlinkMacSystemFont,Roboto,'Helvetica Neue',Arial,sans-serif;--cs-mono:Consolas,'Cascadia Mono','SF Mono',Menlo,monospace;--cs-ink:#0f172a;--cs-body:#334155;--cs-muted:#64748b;--cs-line:#e6ecf3;--cs-soft:#f6f8fc;--cs-blue:#1a56db;--cs-blue-2:#2563eb;--cs-sky:#60a5fa;--cs-deep:#0b1730;--cs-radius:16px;background:#fff;color:var(--cs-body);font-family:var(--cs-font);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.cs-page *,.cs-page *::before,.cs-page *::after{box-sizing:border-box}
.cs-page h1,.cs-page h2,.cs-page h3,.cs-page h4,.cs-page p,.cs-page li,.cs-page a,.cs-page summary,.cs-page th,.cs-page td,.cs-page figcaption{font-family:var(--cs-font)}
.cs-page h2,.cs-page h3,.cs-page h4{color:var(--cs-ink);letter-spacing:-.022em;text-wrap:balance}
.cs-page p{line-height:1.75}
.cs-in{max-width:1080px;margin:0 auto}
.cs-narrow{max-width:760px}
.cs-eyebrow{margin:0 0 12px;font:800 11px/1 var(--cs-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--cs-blue)}

/* ---------- hero ---------- */
.cs-hero{position:relative;overflow:hidden;isolation:isolate;min-height:550px;padding:132px 5% 44px;color:#fff;background:#08142b}
.cs-hero::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(90deg,#071126 0%,rgba(7,17,38,.97) 30%,rgba(7,17,38,.62) 55%,rgba(7,17,38,.12) 100%),linear-gradient(180deg,rgba(7,17,38,.28),rgba(7,17,38,.05)),var(--cs-hero-image,url("../img/blog/home-services-seo-growth-banner-1774.webp"));background-position:center;background-size:cover;background-repeat:no-repeat}
.cs-hero--franchise{--cs-hero-image:url("../img/blog/home-services-franchise-seo-banner-1672.webp");--cs-hero-image-mobile:url("../img/blog/home-services-franchise-seo-banner-960.webp")}
.cs-hero--plumbing-franchise{--cs-hero-image:url("../img/blog/plumbing-franchise-seo-banner-1672.webp");--cs-hero-image-mobile:url("../img/blog/plumbing-franchise-seo-banner-960.webp")}
.cs-hero--texas-plumbing{--cs-hero-image:url("../img/blog/texas-plumbing-seo-banner-1672.webp");--cs-hero-image-mobile:url("../img/blog/texas-plumbing-seo-banner-960.webp")}
.cs-hero--roofing{--cs-hero-image:url("../img/blog/roofing-seo-banner-1672.webp");--cs-hero-image-mobile:url("../img/blog/roofing-seo-banner-960.webp")}
.cs-hero--brand{--cs-hero-image:url("../img/blog/home-services-brand-seo-banner-1672.webp");--cs-hero-image-mobile:url("../img/blog/home-services-brand-seo-banner-960.webp")}
.cs-hero--chicago{--cs-hero-image:url("../img/blog/chicago-hvac-seo-recovery-banner-1672.webp");--cs-hero-image-mobile:url("../img/blog/chicago-hvac-seo-recovery-banner-960.webp")}
.cs-hero--dallas{--cs-hero-image:url("../img/blog/dallas-multitrade-seo-banner-1672.webp");--cs-hero-image-mobile:url("../img/blog/dallas-multitrade-seo-banner-960.webp")}
.cs-hero--saas{--cs-hero-image:url("../img/blog/field-service-software-seo-banner-1672.webp");--cs-hero-image-mobile:url("../img/blog/field-service-software-seo-banner-960.webp")}
.cs-hero--california{--cs-hero-image:url("../img/blog/california-hvac-plumbing-seo-banner-1672.webp");--cs-hero-image-mobile:url("../img/blog/california-hvac-plumbing-seo-banner-960.webp")}
.cs-hero--socal{--cs-hero-image:url("../img/blog/southern-california-hvac-seo-banner-1672.webp");--cs-hero-image-mobile:url("../img/blog/southern-california-hvac-seo-banner-960.webp")}
.cs-hero--california,.cs-hero--chicago,.cs-hero--brand,.cs-hero--socal{--cs-hero-image:url("../img/home-services-seo-process-hero-v1.webp");--cs-hero-image-mobile:url("../img/home-services-seo-process-hero-v1.webp")}
.cs-process-labels{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0 0;padding:0;max-width:650px;list-style:none}
.cs-process-labels li{padding:7px 10px;border:1px solid rgba(147,197,253,.28);border-radius:999px;background:rgba(7,17,38,.55);font:800 10px/1 var(--cs-mono);letter-spacing:.07em;text-transform:uppercase;color:#dbeafe}
.cs-hero::after{content:"";position:absolute;z-index:-1;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:56px 56px;opacity:.62;mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.22) 55%,transparent);-webkit-mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.22) 55%,transparent);pointer-events:none}
.cs-hero .cs-in{position:relative;width:100%}
.cs-crumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:22px;font-size:13px;font-weight:600;color:#94a3b8}
.cs-crumb a{color:#cbd5e1;text-decoration:none}
.cs-crumb a:hover{color:#fff}
.cs-crumb .sep{opacity:.5}
.cs-hero .cs-eyebrow{color:#7fb2ff}
.cs-client{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px}
.cs-client-tag{padding:6px 12px;border:1px solid rgba(147,197,253,.32);border-radius:999px;background:rgba(37,99,235,.16);font-size:12px;font-weight:700;color:#bfdbfe}
.cs-title{max-width:660px;margin:0;font-size:clamp(30px,4vw,50px);font-weight:900;line-height:1.08;letter-spacing:-.035em;color:#fff;text-wrap:balance}
.cs-dek{margin:18px 0 0;max-width:590px;font-size:clamp(15px,1.5vw,17px);line-height:1.75;color:#d7e5f8}
.cs-byline{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:26px;padding-bottom:30px}
.cs-person{display:flex;align-items:center;gap:11px}
.cs-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;font-size:13.5px;font-weight:800;color:#fff}
.cs-person-name{font-size:14.5px;font-weight:700;color:#fff}
.cs-person-role{font-size:12.5px;color:#93a7c4}
.cs-facts{display:flex;flex-wrap:wrap;gap:16px;font-size:12.5px;color:#93a7c4}
.cs-facts span{display:inline-flex;align-items:center;gap:7px}
.cs-facts svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* metric strip sitting across the hero edge */
.cs-strip{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:0 auto;border:1px solid var(--cs-line);border-radius:var(--cs-radius);background:var(--cs-line);overflow:hidden;box-shadow:0 26px 50px -30px rgba(8,20,45,.65)}
.cs-strip div{padding:22px 22px 20px;background:#fff}
.cs-strip strong{display:block;font-size:clamp(26px,3vw,34px);font-weight:900;line-height:1;letter-spacing:-.03em;color:#0f2f6b}
.cs-strip span{display:block;margin-top:9px;font-size:12.5px;line-height:1.55;color:var(--cs-muted)}
.cs-strip div.up strong{color:#047857}

/* ---------- section rhythm ---------- */
.cs-sec{padding:clamp(52px,6vw,78px) 5%}

.cs-sec.soft{background:var(--cs-soft);border-top:1px solid var(--cs-line);border-bottom:1px solid var(--cs-line)}
.cs-sec.deep{background:linear-gradient(160deg,#0d1b35,#0b1730);color:#c6d6ee;border:0}
.cs-sec.deep h2,.cs-sec.deep h3{color:#fff}
.cs-sec.deep .cs-eyebrow{color:#7fb2ff}
.cs-sec h2{margin:0 0 16px;font-size:clamp(25px,2.9vw,35px);font-weight:900;line-height:1.16}
.cs-sec p{margin:0 0 16px;font-size:16px;color:var(--cs-body)}
.cs-sec.deep p{color:#b9cbe4}
.cs-sec p:last-child{margin-bottom:0}
.cs-lede{font-size:17px;line-height:1.8;color:#475569}

/* ---------- the journey ---------- */
.cs-journey{position:relative;display:grid;gap:0;margin-top:34px}
.cs-step{position:relative;display:grid;grid-template-columns:150px 1fr;gap:26px;padding:0 0 30px 0}
.cs-step::before{content:"";position:absolute;left:161px;top:26px;bottom:-4px;width:2px;background:linear-gradient(180deg,rgba(96,165,250,.55),rgba(96,165,250,.16))}
.cs-step:last-child::before{display:none}
.cs-step-when{padding-top:2px;text-align:right;font:800 12px/1.5 var(--cs-mono);letter-spacing:.08em;text-transform:uppercase;color:#7fb2ff}
.cs-step-when em{display:block;font:500 12px/1.6 var(--cs-font);font-style:normal;letter-spacing:0;text-transform:none;color:#8ea4c2}
.cs-step-body{position:relative;padding-left:32px}
.cs-step-body::before{content:"";position:absolute;left:-5px;top:6px;width:12px;height:12px;border-radius:50%;background:#60a5fa;box-shadow:0 0 0 4px rgba(96,165,250,.2)}
.cs-step h3{margin:0 0 8px;font-size:18.5px;font-weight:800;line-height:1.35}
.cs-step p{margin:0;font-size:14.8px;line-height:1.7}
.cs-step.marker .cs-step-body::before{background:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.22)}
.cs-step.marker h3{font-size:clamp(21px,2.4vw,27px);letter-spacing:-.025em}
.cs-step-num{display:inline-flex;align-items:center;gap:8px;margin-bottom:9px;padding:5px 11px;border:1px solid rgba(147,197,253,.3);border-radius:999px;background:rgba(37,99,235,.18);font:800 11px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:#bfdbfe}
.cs-step-stat{display:inline-block;margin-top:10px;padding:8px 14px;border-radius:10px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);font-size:14px;font-weight:700;color:#fff}
.cs-step-stat b{color:#7ee2b8}

/* ---------- content blocks ---------- */
.cs-list{display:grid;gap:13px;margin:22px 0 0;padding:0;list-style:none}
.cs-list li{position:relative;padding-left:32px;font-size:15.5px;line-height:1.7;color:var(--cs-body)}
.cs-list li::before{content:"";position:absolute;left:0;top:4px;width:20px;height:20px;border-radius:50%;background:#e7f0ff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a56db' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/12px no-repeat}
.cs-list li strong{color:var(--cs-ink);font-weight:800}
.cs-sec.deep .cs-list li{color:#b9cbe4}
.cs-sec.deep .cs-list li strong{color:#fff}
.cs-sec.deep .cs-list li::before{background-color:rgba(96,165,250,.18)}
.cs-grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:28px}
.cs-card{padding:24px;border:1px solid var(--cs-line);border-radius:var(--cs-radius);background:#fff}
.cs-card h3{margin:0 0 10px;font-size:17px;font-weight:800}
.cs-card p{margin:0;font-size:14.5px;line-height:1.7;color:var(--cs-muted)}
.cs-note{margin-top:26px;padding:20px 22px;border:1px solid #d9e6fb;border-left:3px solid var(--cs-blue);border-radius:12px;background:#f5f9ff}
.cs-note-t{margin:0 0 8px;font:800 11px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--cs-blue)}
.cs-note p{margin:0;font-size:14.5px;line-height:1.75;color:#3f5878}

/* facts table */
.cs-table{margin-top:28px;border:1px solid var(--cs-line);border-radius:var(--cs-radius);overflow:hidden;background:#fff}
.cs-table table{width:100%;border-collapse:collapse}
.cs-table caption{padding:15px 20px 6px;text-align:left;font:800 11px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--cs-muted)}
.cs-table th{width:31%;padding:13px 20px;text-align:left;vertical-align:top;background:#f5f9ff;border-top:1px solid var(--cs-line);font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#0f2f6b}
.cs-table td{padding:13px 20px;text-align:left;vertical-align:top;border-top:1px solid var(--cs-line);font-size:15px;line-height:1.65;color:var(--cs-body)}
.cs-table tr:first-child th,.cs-table tr:first-child td{border-top:0}

/* evidence */
.cs-evidence{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,1fr);gap:26px;align-items:start;margin-top:30px}
.cs-shot{margin:0;border:1px solid rgba(255,255,255,.12);border-radius:14px;overflow:hidden;background:#0b1326}
.cs-shot img{display:block;width:100%;height:auto}
.cs-shot figcaption{padding:13px 16px;font-size:12.5px;line-height:1.6;color:#93a7c4;border-top:1px solid rgba(255,255,255,.1)}
.cs-readout{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.cs-readout li{padding:14px 16px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.04);font-size:14px;line-height:1.6;color:#b9cbe4}
.cs-readout b{display:block;margin-bottom:3px;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#7fb2ff}
.cs-readout strong{color:#fff}
.cs-source{margin-top:22px;padding:18px 20px;border:1px dashed rgba(147,197,253,.35);border-radius:12px;font-size:13.5px;line-height:1.75;color:#a9bfdd}
.cs-source b{display:block;margin-bottom:6px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#7fb2ff}

/* pending first-party data */
.cs-pending{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:14px;margin-top:26px}
.cs-pending div{padding:18px;border:1px dashed #cbd9ee;border-radius:12px;background:#fff}
.cs-pending strong{display:block;font-size:14.5px;font-weight:800;color:var(--cs-ink)}
.cs-pending span{display:block;font-weight:400;margin-top:6px;font-size:12.5px;line-height:1.6;color:var(--cs-muted)}
.cs-pending em{display:inline-block;margin-top:10px;padding:4px 9px;border-radius:999px;background:#eef4ff;font:700 10.5px/1.5 var(--cs-mono);letter-spacing:.07em;text-transform:uppercase;font-style:normal;color:var(--cs-blue)}

/* faq */
.cs-faq{margin-top:26px;border:1px solid var(--cs-line);border-radius:var(--cs-radius);background:#fff;overflow:hidden}
.cs-faq details{border-top:1px solid var(--cs-line)}
.cs-faq details:first-child{border-top:0}
.cs-faq summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 22px;font-size:15.5px;font-weight:700;color:var(--cs-ink);cursor:pointer;list-style:none}
.cs-faq summary::-webkit-details-marker{display:none}
.cs-faq summary::after{content:"+";font-size:19px;font-weight:700;color:var(--cs-blue)}
.cs-faq details[open] summary::after{content:"\2212"}
.cs-faq details[open] summary{padding-bottom:6px}
.cs-faq-a{padding:0 22px 20px}
.cs-faq-a p{margin:0;font-size:14.8px;line-height:1.8;color:var(--cs-body)}

/* cta */
.cs-cta{position:relative;overflow:hidden;isolation:isolate;padding:clamp(40px,5vw,56px);border-radius:20px;background:linear-gradient(140deg,#0d2149,#0b1730);color:#fff}
.cs-cta::after{content:"";position:absolute;z-index:-1;width:420px;height:420px;right:-140px;top:-160px;background:radial-gradient(circle,rgba(37,99,235,.45),transparent 65%)}
.cs-cta h2{margin:0 0 14px;font-size:clamp(24px,2.8vw,33px);font-weight:900;line-height:1.18;color:#fff}
.cs-cta p{max-width:620px;margin:0 0 26px;font-size:15.5px;line-height:1.8;color:#c0d3ee}
.cs-btns{display:flex;flex-wrap:wrap;gap:12px}
.cs-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 24px;border-radius:10px;font-size:15px;font-weight:800;text-decoration:none;transition:background .2s ease,transform .2s ease,border-color .2s ease}
.cs-btn-primary{background:var(--cs-blue-2);color:#fff;box-shadow:0 16px 30px -16px var(--cs-blue-2)}
.cs-btn-primary:hover{background:#1d4ed8;transform:translateY(-1px)}
.cs-btn-ghost{border:1px solid rgba(255,255,255,.28);color:#dbe9ff}
.cs-btn-ghost:hover{border-color:rgba(255,255,255,.5);background:rgba(255,255,255,.06)}
.cs-callnote{margin:18px 0 0;font-size:13.5px;color:#93a7c4}
.cs-callnote a{color:#bfdbfe;font-weight:700}

/* author + keep reading */
.cs-author{display:flex;align-items:center;gap:14px;margin-top:34px;padding:20px 22px;border:1px solid var(--cs-line);border-radius:var(--cs-radius);background:var(--cs-soft)}
.cs-author-k{font:800 10.5px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--cs-muted)}
.cs-author-n{margin-top:5px;font-size:15.5px;font-weight:800;color:var(--cs-ink)}
.cs-author-n a{color:inherit;text-decoration:none}
.cs-author-r{margin-top:3px;font-size:13px;color:var(--cs-muted)}
.cs-author-r a{color:var(--cs-blue);text-decoration:none}
.cs-more-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:20px}
.cs-more-head h2{margin:0;font-size:clamp(21px,2.4vw,27px);font-weight:900}
.cs-more-head a{font-size:14px;font-weight:700;color:var(--cs-blue);text-decoration:none}
.cs-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.cs-tile{display:flex;flex-direction:column;padding:22px;border:1px solid var(--cs-line);border-radius:var(--cs-radius);background:#fff;text-decoration:none;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.cs-tile:hover{border-color:#b6d0f5;box-shadow:0 16px 30px -20px rgba(30,58,138,.45);transform:translateY(-2px)}
.cs-tile-tag{align-self:flex-start;padding:5px 10px;border-radius:999px;background:#eef4ff;font:800 10.5px/1 var(--cs-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--cs-blue)}
.cs-tile-t{margin:12px 0 8px;font-size:16px;font-weight:800;line-height:1.4;color:var(--cs-ink)}
.cs-tile-d{flex:1;font-size:13.5px;line-height:1.65;color:var(--cs-muted)}
.cs-tile-go{margin-top:14px;font-size:13.5px;font-weight:800;color:var(--cs-blue)}

/* jump bar */
.cs-jump{position:sticky;top:70px;z-index:40;padding:12px 5%;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--cs-line)}
.cs-jump-in{display:flex;flex-wrap:nowrap;gap:9px;max-width:1080px;margin:0 auto;overflow-x:auto;scrollbar-width:none}
.cs-jump-in::-webkit-scrollbar{display:none}
.cs-jump a{flex:0 0 auto;padding:8px 14px;border:1px solid var(--cs-line);border-radius:999px;background:#fff;font-size:13px;font-weight:700;color:#3f5878;text-decoration:none;white-space:nowrap}
.cs-jump a:hover{border-color:#b6d0f5;color:var(--cs-blue)}
.cs-page :target{scroll-margin-top:156px}

@media (max-width:860px){
  .cs-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cs-evidence{grid-template-columns:1fr}
  .cs-step{grid-template-columns:1fr;gap:6px}
  .cs-step::before{left:5px;top:34px}
  .cs-step-when{text-align:left;padding-left:32px}
  .cs-step-when em{display:inline;margin-left:8px}
  .cs-hero{min-height:0;padding-top:110px}
  .cs-hero::before{background-position:60% center;background-image:linear-gradient(90deg,rgba(7,17,38,.96) 0%,rgba(7,17,38,.82) 48%,rgba(7,17,38,.46) 100%),linear-gradient(180deg,rgba(7,17,38,.26),rgba(7,17,38,.22)),var(--cs-hero-image,url("../img/blog/home-services-seo-growth-banner-1774.webp"))}
  .cs-page :target{scroll-margin-top:148px}
}
@media (prefers-reduced-motion:reduce){
  .cs-tile,.cs-btn{transition:none}
}

/* ==========================================================================
   Scannable components: brief cards, fact list, chips, before/after bars,
   takeaways, proves / does-not-prove
   ========================================================================== */
.cs-sec-head{max-width:720px;margin-bottom:30px}
.cs-sec-head h2{margin-bottom:10px}
.cs-sec-head p{font-size:16.5px;color:var(--cs-muted)}
.cs-sec.deep .cs-sec-head p{color:#9fb5d6}

/* at a glance: brief cards + fact list */
.cs-glance{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,1fr);gap:26px;align-items:start}
.cs-brief{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.cs-brief div{padding:20px;border:1px solid var(--cs-line);border-radius:14px;background:#fff}
.cs-brief i{display:grid;place-items:center;width:38px;height:38px;margin-bottom:14px;border-radius:10px;background:#eaf2ff;color:var(--cs-blue);font-style:normal}
.cs-brief i svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.cs-brief strong{display:block;font-size:15.5px;font-weight:800;line-height:1.35;color:var(--cs-ink)}
.cs-brief span{display:block;font-weight:400;margin-top:6px;font-size:13.8px;line-height:1.6;color:var(--cs-muted)}
.cs-factlist{margin:0;padding:6px 20px;border:1px solid var(--cs-line);border-radius:14px;background:var(--cs-soft)}
.cs-factlist div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid var(--cs-line)}
.cs-factlist div:first-child{border-top:0}
.cs-factlist dt{font:800 11px/1.6 var(--cs-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--cs-muted)}
.cs-factlist dd{margin:0;text-align:right;font-size:14px;font-weight:700;line-height:1.5;color:var(--cs-ink)}
.cs-factlist dd small{display:block;font-size:12px;font-weight:500;color:var(--cs-muted)}

/* chips inside journey steps */
.cs-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}
.cs-chips span{padding:5px 11px;border:1px solid rgba(147,197,253,.24);border-radius:999px;background:rgba(255,255,255,.05);font-size:12px;font-weight:600;color:#c9dbf5}

/* before / after bars */
.cs-bars{display:grid;gap:18px;padding:28px;border:1px solid var(--cs-line);border-radius:var(--cs-radius);background:#fff}
.cs-bar-row{display:grid;grid-template-columns:110px 1fr;gap:16px;align-items:center}
.cs-bar-row b{font:800 12px/1.4 var(--cs-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--cs-muted)}
.cs-bar-track{position:relative;height:46px;border-radius:10px;background:#f1f5fb}
.cs-bar-fill{display:flex;align-items:center;justify-content:flex-end;height:100%;padding:0 14px;border-radius:10px;font-size:17px;font-weight:900;letter-spacing:-.02em;color:#fff;white-space:nowrap}
.cs-bar-fill.was{background:linear-gradient(90deg,#94a3b8,#64748b)}
.cs-bar-fill.now{background:linear-gradient(90deg,#1d4ed8,#3b82f6)}
.cs-bar-delta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding-top:6px;padding-left:126px;font-size:14px;color:var(--cs-muted)}
.cs-bar-delta strong{padding:6px 12px;border-radius:999px;background:#e7f7ef;font-size:14px;font-weight:800;color:#047857}
.cs-take{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}
.cs-take div{padding:20px;border:1px solid var(--cs-line);border-radius:14px;background:#fff}
.cs-take strong{display:block;font-size:24px;font-weight:900;line-height:1;letter-spacing:-.02em;color:#0f2f6b}
.cs-take b{display:block;margin-top:10px;font-size:14.5px;font-weight:800;color:var(--cs-ink)}
.cs-take span{display:block;margin-top:4px;font-size:13.5px;font-weight:400;line-height:1.6;color:var(--cs-muted)}

/* proves / does not prove */
.cs-proof{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.cs-proof>div{padding:24px;border-radius:var(--cs-radius);background:#fff;border:1px solid var(--cs-line)}
.cs-proof h3{display:flex;align-items:center;gap:10px;margin:0 0 16px;font-size:17px;font-weight:800}
.cs-proof h3 i{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font-style:normal;font-size:14px;font-weight:900}
.cs-proof .yes h3 i{background:#e7f7ef;color:#047857}
.cs-proof .no h3 i{background:#fdecec;color:#b91c1c}
.cs-proof ul{display:grid;gap:11px;margin:0;padding:0;list-style:none}
.cs-proof li{position:relative;padding-left:22px;font-size:14.5px;line-height:1.6;color:var(--cs-body)}
.cs-proof li::before{position:absolute;left:0;top:0;font-weight:900}
.cs-proof .yes li::before{content:"\2713";color:#059669}
.cs-proof .no li::before{content:"\2013";color:#b91c1c}
.cs-proof-foot{margin-top:18px;font-size:13.5px;line-height:1.7;color:var(--cs-muted)}

/* evidence readout, compact */
.cs-readout.compact li{padding:12px 14px;font-size:13.5px}
.cs-source.short{margin-top:18px;padding:14px 18px;font-size:13px}

@media (max-width:860px){
  .cs-glance,.cs-proof{grid-template-columns:1fr}
  .cs-take{grid-template-columns:1fr}
  .cs-bar-row{grid-template-columns:1fr;gap:8px}
  .cs-bar-delta{padding-left:0}
}
@media (max-width:520px){
  .cs-brief{grid-template-columns:1fr}
}
.cs-tile-d{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
@media (max-width:960px){.cs-hero::before{background-image:linear-gradient(180deg,rgba(7,17,38,.93) 0%,rgba(7,17,38,.86) 60%,rgba(7,17,38,.7) 100%),var(--cs-hero-image-mobile,var(--cs-hero-image,url("../img/blog/home-services-seo-growth-banner-960.webp")));background-position:70% center}}

/* ==========================================================================
   v2: challenge -> fix rows, strategy grid, alternating journey timeline
   ========================================================================== */
/* challenge -> fix */
.cs-fixes{display:grid;gap:16px}
.cs-fix{display:grid;grid-template-columns:minmax(0,1fr) 44px minmax(0,1.25fr);align-items:stretch;gap:0}
.cs-fix-issue,.cs-fix-done{position:relative;padding:22px 24px;border:1px solid var(--cs-line);background:#fff}
.cs-fix-issue{border-radius:14px 0 0 14px;border-right:0;background:linear-gradient(135deg,#fff,#fff7f5)}
.cs-fix-done{border-radius:0 14px 14px 0;border-left:0;background:linear-gradient(135deg,#f7fbff,#f2fbf6)}
.cs-fix-arrow{display:grid;place-items:center;border-top:1px solid var(--cs-line);border-bottom:1px solid var(--cs-line);background:linear-gradient(90deg,#fff7f5,#f7fbff)}
.cs-fix-arrow span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--cs-blue);color:#fff;font-size:15px;font-weight:900;box-shadow:0 8px 16px -8px var(--cs-blue)}
.cs-fix-tag{display:inline-block;margin-bottom:10px;font:800 10.5px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase}
.cs-fix-issue .cs-fix-tag{color:#c2410c}
.cs-fix-done .cs-fix-tag{color:#047857}
.cs-fix h3{margin:0 0 7px;font-size:16.5px;font-weight:800;line-height:1.35}
.cs-fix p{margin:0;font-size:14.3px;line-height:1.65;color:var(--cs-muted)}
.cs-fix-strat{display:inline-flex;align-items:center;gap:6px;margin-top:12px;padding:5px 11px;border-radius:999px;background:#eaf2ff;font-size:12px;font-weight:700;color:var(--cs-blue)}
.cs-fix-strat::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}

/* strategy grid */
.cs-strat{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cs-strat div{position:relative;padding:26px 24px 24px;border:1px solid rgba(147,197,253,.18);border-radius:var(--cs-radius);background:rgba(255,255,255,.035);transition:border-color .2s ease,background .2s ease}
.cs-strat div:hover{border-color:rgba(147,197,253,.4);background:rgba(255,255,255,.06)}
.cs-strat b{display:block;margin-bottom:14px;font:900 30px/1 var(--cs-font);letter-spacing:-.03em;color:transparent;-webkit-text-stroke:1px rgba(147,197,253,.65)}
.cs-strat h3{margin:0 0 8px;font-size:17px;font-weight:800;color:#fff}
.cs-strat p{margin:0;font-size:14px;line-height:1.7;color:#a9bfdd}

/* journey v2: alternating timeline */
.cs-tl{position:relative;display:grid;gap:26px;margin-top:10px}
.cs-tl::before{content:"";position:absolute;left:50%;top:6px;bottom:6px;width:2px;transform:translateX(-50%);background:linear-gradient(180deg,#bcd4fa,#dbe7fb 60%,#bcd4fa)}
.cs-tl-item{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:64px}
.cs-tl-item::after{content:"";position:absolute;left:50%;top:26px;width:16px;height:16px;transform:translateX(-50%);border-radius:50%;background:#fff;border:4px solid var(--cs-blue-2);box-shadow:0 0 0 5px #e8f0fe}
.cs-tl-item .cs-tl-card{grid-column:1}
.cs-tl-item.right .cs-tl-card{grid-column:2}
.cs-tl-card{padding:24px 26px;border:1px solid var(--cs-line);border-radius:var(--cs-radius);background:#fff;box-shadow:0 14px 34px -26px rgba(15,47,107,.45)}
.cs-tl-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px}
.cs-tl-phase{padding:5px 10px;border-radius:999px;background:#eaf2ff;font:800 10.5px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--cs-blue)}
.cs-tl-sub{font-size:12.5px;font-weight:600;color:var(--cs-muted)}
.cs-tl-card h3{margin:0 0 8px;font-size:19px;font-weight:800;line-height:1.3}
.cs-tl-card>p{margin:0 0 14px;font-size:14.6px;line-height:1.7;color:var(--cs-body)}
.cs-tl-did{display:grid;gap:7px;margin:0 0 14px;padding:14px 16px;border-radius:12px;background:var(--cs-soft);list-style:none}
.cs-tl-did li{position:relative;padding-left:20px;font-size:13.8px;line-height:1.55;color:var(--cs-body)}
.cs-tl-did li::before{content:"\2713";position:absolute;left:0;top:0;font-weight:900;color:var(--cs-blue)}
.cs-tl-why{margin:0;padding-top:12px;border-top:1px dashed #d7e2f3;font-size:13.5px;line-height:1.6;color:var(--cs-muted)}
.cs-tl-why strong{color:var(--cs-ink)}
.cs-tl .cs-chips{margin-top:12px}
.cs-tl .cs-chips span{border-color:#d7e2f3;background:#fff;color:#3f5878}
/* milestone rows span the centre */
.cs-tl-item.milestone{grid-template-columns:1fr}
.cs-tl-item.milestone::after{display:none}
.cs-tl-mile{position:relative;z-index:1;justify-self:center;width:min(560px,100%);padding:22px 26px;border-radius:var(--cs-radius);text-align:center;color:#fff;background:linear-gradient(135deg,#0d2149,#1d4ed8);box-shadow:0 20px 40px -24px rgba(29,78,216,.8)}
.cs-tl-mile.start{background:linear-gradient(135deg,#334155,#64748b);box-shadow:0 20px 40px -26px rgba(51,65,85,.7)}
.cs-tl-mile small{display:block;font:800 11px/1 var(--cs-mono);letter-spacing:.12em;text-transform:uppercase;color:#bfdbfe}
.cs-tl-mile.start small{color:#e2e8f0}
.cs-tl-mile strong{display:block;margin:10px 0 6px;font-size:clamp(26px,3vw,34px);font-weight:900;letter-spacing:-.03em}
.cs-tl-mile span{font-size:14px;color:#dbe7ff}
.cs-tl-mile em{display:inline-block;margin-top:12px;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.14);font-style:normal;font-size:13.5px;font-weight:800;color:#bbf7d0}
.cs-tl-note{margin:26px auto 0;max-width:640px;text-align:center;font-size:13px;line-height:1.7;color:var(--cs-muted)}

@media (max-width:960px){
  .cs-strat{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:860px){
  .cs-fix{grid-template-columns:1fr}
  .cs-fix-issue{border-radius:14px 14px 0 0;border-right:1px solid var(--cs-line);border-bottom:0}
  .cs-fix-done{border-radius:0 0 14px 14px;border-left:1px solid var(--cs-line);border-top:0}
  .cs-fix-arrow{height:40px;border:0;border-left:1px solid var(--cs-line);border-right:1px solid var(--cs-line)}
  .cs-fix-arrow span{transform:rotate(90deg)}
  .cs-tl::before{left:9px;transform:none}
  .cs-tl-item,.cs-tl-item.right{grid-template-columns:1fr;gap:0;padding-left:34px}
  .cs-tl-item .cs-tl-card,.cs-tl-item.right .cs-tl-card{grid-column:1}
  .cs-tl-item::after{left:10px;top:24px}
  .cs-tl-item.milestone{padding-left:34px}
  .cs-tl-mile{justify-self:stretch;text-align:left}
}
@media (max-width:620px){
  .cs-strat{grid-template-columns:1fr}
}

/* ---------- v2.1: single-rail journey, specificity fixes ---------- */
.cs-sec p.cs-eyebrow{margin:0 0 12px;font:800 11px/1 var(--cs-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--cs-blue)}
.cs-sec.deep p.cs-eyebrow{color:#7fb2ff}
.cs-sec p.cs-tl-note{margin:24px 0 0;padding-left:56px;max-width:none;text-align:left;font-size:13px;color:var(--cs-muted)}
.cs-tl::before{left:19px;transform:none}
.cs-tl-item,.cs-tl-item.right{grid-template-columns:1fr;gap:0;padding-left:56px}
.cs-tl-item .cs-tl-card,.cs-tl-item.right .cs-tl-card{grid-column:1}
.cs-tl-item::after{left:20px;top:28px}
.cs-tl-card{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:28px;align-items:start}
.cs-tl-main h3{margin:0 0 8px}
.cs-sec .cs-tl-main>p{margin:0 0 14px;font-size:14.8px;line-height:1.7}
.cs-sec p.cs-tl-why{margin:0;padding:12px 14px;border:0;border-radius:10px;background:#f2f7ff;font-size:13.8px;line-height:1.6;color:#3f5878}
.cs-tl-side{padding:16px 18px;border-radius:12px;background:var(--cs-soft);border:1px solid var(--cs-line)}
.cs-sec p.cs-tl-side-k{margin:0 0 10px;font:800 10.5px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--cs-muted)}
.cs-tl-side .cs-tl-did{margin:0;padding:0;background:none}
.cs-tl-side .cs-chips{margin-top:14px}
.cs-tl-item.milestone{padding-left:56px}
.cs-tl-mile,.cs-tl-mile.start{justify-self:stretch;width:auto;display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;text-align:left;padding:20px 26px}
.cs-tl-mile small{flex-basis:100%}
.cs-tl-mile strong{margin:0}
.cs-tl-mile br{display:none}
.cs-tl-mile em{margin:0 0 0 auto}
.cs-tl-item.milestone::after{display:block;top:50%;margin-top:-8px;border-color:#64748b}
.cs-tl-item.milestone:last-child::after{border-color:var(--cs-blue-2)}
@media (max-width:860px){
  .cs-tl-card{grid-template-columns:1fr;gap:16px}
  .cs-tl::before{left:9px}
  .cs-tl-item,.cs-tl-item.right,.cs-tl-item.milestone{padding-left:34px}
  .cs-tl-item::after{left:10px}
  .cs-sec p.cs-tl-note{padding-left:34px}
  .cs-tl-mile em{margin-left:0}
}

/* evidence: AI search breakdown under the screenshot */
.cs-ev-left{display:grid;gap:16px}
.cs-ai{padding:20px 22px;border:1px solid rgba(147,197,253,.18);border-radius:14px;background:rgba(255,255,255,.035)}
.cs-ai-head{margin-bottom:14px}
.cs-sec p.cs-ai-k{margin:0 0 6px;font:800 11px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:#7fb2ff}
.cs-sec p.cs-ai-t{margin:0;font-size:16px;font-weight:800;color:#fff}
.cs-ai-row{display:grid;grid-template-columns:150px minmax(0,1fr) 110px 100px;align-items:center;gap:12px;padding:9px 0;border-top:1px solid rgba(255,255,255,.07)}
.cs-ai-name{font-size:13.5px;font-weight:700;color:#dbe7ff}
.cs-ai-bar{height:8px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.cs-ai-bar i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#3b82f6,#7dd3fc)}
.cs-ai-n{font-size:13px;color:#a9bfdd;text-align:right}
.cs-ai-n strong{color:#fff}
.cs-ai-c{font-size:12.5px;color:#8ea4c2;text-align:right}
.cs-sec p.cs-ai-foot{margin:12px 0 0;padding-top:12px;border-top:1px solid rgba(255,255,255,.07);font-size:12.5px;line-height:1.6;color:#8ea4c2}
.cs-ai-foot strong{color:#dbe7ff}
@media (max-width:620px){
  .cs-ai-row{grid-template-columns:1fr auto;gap:6px 12px}
  .cs-ai-bar{grid-column:1/-1;grid-row:2}
  .cs-ai-c{display:none}
}
.cs-ev-left{align-content:start}
.cs-ev-right{display:grid;gap:12px;align-content:start}
.cs-ev-right .cs-source.short{margin:0}
.cs-readout.compact li{padding:17px 18px}

/* ---------- FAQ v2: sticky intro + numbered accordion ---------- */
.cs-faq2{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.5fr);gap:48px;align-items:start}
.cs-faq2-intro{position:sticky;top:164px}
.cs-faq2-intro h2{margin:0 0 12px}
.cs-sec p.cs-faq2-lede{margin:0 0 26px;font-size:16px;line-height:1.7;color:var(--cs-muted)}
.cs-faq2-help{display:grid;gap:6px;padding:24px;border-radius:var(--cs-radius);background:linear-gradient(150deg,#0d2149,#0b1730);color:#fff;box-shadow:0 20px 40px -28px rgba(13,33,73,.8)}
.cs-faq2-help-ic{display:grid;place-items:center;width:36px;height:36px;margin-bottom:8px;border-radius:10px;background:rgba(96,165,250,.18);font-size:17px;font-weight:900;color:#93c5fd}
.cs-faq2-help strong{font-size:17px;font-weight:800;color:#fff}
.cs-faq2-help>span:not(.cs-faq2-help-ic){margin-bottom:12px;font-size:14px;line-height:1.6;color:#b9cbe4}
.cs-faq2-help .cs-btn{justify-content:center}
.cs-faq2-call{margin-top:6px;text-align:center;font-size:13.5px;font-weight:600;color:#a9c2e6;text-decoration:none}
.cs-faq2-call:hover{color:#fff}
.cs-faq2-list{display:grid;gap:12px}
.cs-faq2-list details{border:1px solid var(--cs-line);border-radius:14px;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}
.cs-faq2-list details:hover{border-color:#c8daf6}
.cs-faq2-list details[open]{border-color:#9dbcf2;box-shadow:0 16px 34px -26px rgba(29,78,216,.55)}
.cs-faq2-list summary{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:20px 22px;cursor:pointer;list-style:none}
.cs-faq2-list summary::-webkit-details-marker{display:none}
.cs-faq2-list summary:focus-visible{outline:2px solid var(--cs-blue-2);outline-offset:2px;border-radius:14px}
.cs-faq2-n{font:800 12px/1 var(--cs-mono);letter-spacing:.06em;color:#9aaccc}
.cs-faq2-list details[open] .cs-faq2-n{color:var(--cs-blue)}
.cs-faq2-q{font-size:16px;font-weight:600;line-height:1.45;color:#1e293b}
.cs-faq2-ic{position:relative;width:30px;height:30px;border-radius:50%;background:#eef4ff;transition:background .2s ease,transform .25s ease}
.cs-faq2-ic::before,.cs-faq2-ic::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;margin:-1px 0 0 -6px;border-radius:2px;background:var(--cs-blue)}
.cs-faq2-ic::after{transform:rotate(90deg)}
.cs-faq2-list details[open] .cs-faq2-ic{background:var(--cs-blue);transform:rotate(45deg)}
.cs-faq2-list details[open] .cs-faq2-ic::before,.cs-faq2-list details[open] .cs-faq2-ic::after{background:#fff}
.cs-faq2-a{padding:0 22px 22px 62px}
.cs-sec .cs-faq2-a p{margin:0;font-size:15px;line-height:1.8;color:var(--cs-body)}
@media (max-width:900px){
  .cs-faq2{grid-template-columns:1fr;gap:28px}
  .cs-faq2-intro{position:static}
  .cs-faq2-help{display:none}
  .cs-faq2-a{padding:0 20px 20px}
  .cs-faq2-list summary{padding:18px 20px;gap:12px}
}
@media (prefers-reduced-motion:reduce){
  .cs-faq2-ic,.cs-faq2-list details{transition:none}
}

.cs-sec .cs-cta p.cs-eyebrow{color:#7fb2ff}
.cs-faq2-list details[open] .cs-faq2-q{color:var(--cs-ink)}

.cs-sec:not(.soft):not(.deep) .cs-proof>div{background:var(--cs-soft)}
.cs-sec p.cs-proof-foot{margin:20px 0 0;font-size:14px;line-height:1.7;color:var(--cs-muted)}

/* hero without a banner image (case studies that don't have one yet) */
.cs-hero.no-banner{min-height:0}
.cs-hero.no-banner::before{background-image:radial-gradient(circle at 88% 8%,rgba(37,99,235,.38),transparent 42%),linear-gradient(135deg,#0a0f1e 0%,#0d1b35 55%,#0f2755 100%);background-position:center}
/* overview fact grid */
.cs-factgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.cs-factgrid div{padding:18px 20px;border:1px solid var(--cs-line);border-radius:14px;background:var(--cs-soft)}
.cs-factgrid span{display:block;font:800 10.5px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--cs-muted)}
.cs-factgrid strong{display:block;margin-top:9px;font-size:17px;font-weight:800;color:var(--cs-ink)}
.cs-factgrid small{display:block;margin-top:3px;font-size:12.5px;color:var(--cs-muted)}
@media (max-width:760px){.cs-factgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.cs-bar-fill.tiny{min-width:6px;padding:0}
.cs-bar-out{position:absolute;top:50%;transform:translateY(-50%);font-size:17px;font-weight:900;letter-spacing:-.02em;color:#475569}

/* ==========================================================================
   v3 components (first used on the group): diagnosis, strategy equation,
   process stepper, implementation table, then-vs-now, growth curve
   ========================================================================== */
/* diagnosis */
.cs-diag{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.6fr);gap:22px;align-items:stretch}
.cs-diag-stat{display:flex;flex-direction:column;justify-content:center;padding:30px;border-radius:var(--cs-radius);border:1px solid rgba(248,113,113,.28);background:linear-gradient(160deg,rgba(248,113,113,.1),rgba(255,255,255,.02))}
.cs-diag-stat small{font:800 11px/1 var(--cs-mono);letter-spacing:.12em;text-transform:uppercase;color:#fca5a5}
.cs-diag-stat strong{display:block;margin:14px 0 8px;font-size:clamp(46px,6vw,68px);font-weight:900;line-height:1;letter-spacing:-.04em;color:#fff}
.cs-sec.deep .cs-diag-stat p{margin:0;font-size:14.5px;line-height:1.65;color:#c8d6ec}
.cs-diag-list{display:grid;gap:12px}
.cs-diag-item{display:grid;grid-template-columns:44px 1fr;gap:16px;padding:20px 22px;border:1px solid rgba(147,197,253,.16);border-radius:14px;background:rgba(255,255,255,.035)}
.cs-diag-item b{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:rgba(248,113,113,.14);font:800 13px/1 var(--cs-mono);color:#fca5a5}
.cs-diag-item h3{margin:0 0 5px;font-size:16.5px;font-weight:800;color:#fff}
.cs-sec.deep .cs-diag-item p{margin:0;font-size:14.2px;line-height:1.65;color:#a9bfdd}

/* strategy equation */
.cs-eq{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto minmax(0,1.1fr);gap:0;align-items:stretch}
.cs-eq-card{position:relative;padding:22px 20px;border:1px solid var(--cs-line);border-radius:14px;background:#fff}
.cs-eq-card+.cs-eq-card{margin-left:26px}
.cs-eq-card+.cs-eq-card::before{content:"+";position:absolute;left:-22px;top:50%;transform:translateY(-50%);font-size:22px;font-weight:900;color:#9fb4d4}
.cs-eq-card i{display:block;margin-bottom:12px;font:800 11px/1 var(--cs-mono);font-style:normal;letter-spacing:.1em;text-transform:uppercase;color:var(--cs-blue)}
.cs-eq-card h3{margin:0 0 7px;font-size:16px;font-weight:800;line-height:1.35}
.cs-sec .cs-eq-card p{margin:0;font-size:13.6px;line-height:1.6;color:var(--cs-muted)}
.cs-eq-sign{display:grid;place-items:center;padding:0 14px;font-size:28px;font-weight:900;color:var(--cs-blue)}
.cs-eq-out{display:flex;flex-direction:column;justify-content:center;padding:24px;border-radius:14px;color:#fff;background:linear-gradient(145deg,#0d2149,#1d4ed8);box-shadow:0 20px 40px -24px rgba(29,78,216,.8)}
.cs-eq-out small{font:800 11px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:#bfdbfe}
.cs-eq-out strong{display:block;margin:10px 0 6px;font-size:34px;font-weight:900;letter-spacing:-.03em}
.cs-eq-out span{font-size:13.5px;line-height:1.55;color:#dbe7ff}

/* process stepper */
.cs-steps{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;counter-reset:st}
.cs-steps::before{content:"";position:absolute;left:10%;right:10%;top:23px;height:2px;background:linear-gradient(90deg,#bcd4fa,#1d4ed8)}
.cs-steps>div{position:relative;text-align:center}
.cs-steps>div::before{counter-increment:st;content:counter(st,decimal-leading-zero);position:relative;z-index:1;display:grid;place-items:center;width:48px;height:48px;margin:0 auto 16px;border-radius:50%;background:#fff;border:2px solid var(--cs-blue-2);font:800 13px/1 var(--cs-mono);color:var(--cs-blue);box-shadow:0 0 0 6px var(--cs-soft)}
.cs-steps>div:last-child::before{background:var(--cs-blue-2);color:#fff}
.cs-steps h3{margin:0 0 7px;font-size:16.5px;font-weight:800}
.cs-sec .cs-steps p{margin:0 auto;max-width:210px;font-size:13.6px;line-height:1.6;color:var(--cs-muted)}
.cs-steps em{display:inline-block;margin-top:10px;padding:4px 10px;border-radius:999px;background:#fff;border:1px solid var(--cs-line);font-style:normal;font-size:11.5px;font-weight:700;color:#3f5878}
.cs-sec p.cs-steps-loop{margin:24px 0 0;text-align:center;font-size:13.5px;color:var(--cs-muted)}

/* implementation table */
.cs-impl{border:1px solid var(--cs-line);border-radius:var(--cs-radius);overflow:hidden;background:#fff}
.cs-impl-row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.6fr) minmax(0,1.1fr);border-top:1px solid var(--cs-line)}
.cs-impl-row:first-child{border-top:0}
.cs-impl-row>div{padding:18px 22px}
.cs-impl-row.head>div{padding:13px 22px;background:var(--cs-soft);font:800 10.5px/1.4 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--cs-muted)}
.cs-impl-row h3{margin:0;font-size:15.5px;font-weight:800}
.cs-sec .cs-impl-row p{margin:0;font-size:14.2px;line-height:1.65;color:var(--cs-body)}
.cs-impl-data{display:flex;align-items:center}
.cs-impl-data span{padding:7px 12px;border-radius:10px;background:#e7f7ef;font-size:13px;font-weight:700;line-height:1.45;color:#065f46}

/* then vs now */
.cs-ba{border:1px solid var(--cs-line);border-radius:var(--cs-radius);overflow:hidden;background:#fff}
.cs-ba-row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr) 40px minmax(0,1.15fr);align-items:center;border-top:1px solid var(--cs-line)}
.cs-ba-row:first-child{border-top:0}
.cs-ba-row>div{padding:16px 20px}
.cs-ba-row.head>div{padding:14px 20px;font:800 11px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase}
.cs-ba-row.head .then{background:#f1f5f9;color:#64748b}
.cs-ba-row.head .now{background:#eaf2ff;color:var(--cs-blue)}
.cs-ba-k{font-size:14px;font-weight:800;color:var(--cs-ink)}
.cs-ba-row .then{align-self:stretch;display:flex;align-items:center;background:#fafbfd;font-size:14.5px;color:#64748b}
.cs-ba-row .now{align-self:stretch;display:flex;align-items:center;background:#f7fbff;font-size:14.5px;font-weight:700;color:#0f2f6b}
.cs-ba-row .arr{align-self:stretch;display:grid;place-items:center;padding:0;background:linear-gradient(90deg,#fafbfd,#f7fbff);color:#94a3b8;font-weight:900}
.cs-sec p.cs-ba-note{margin:12px 0 0;font-size:12.5px;color:var(--cs-muted)}

/* growth curve milestones */
.cs-curve{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:34px;padding-top:30px}
.cs-curve::before{content:"";position:absolute;left:0;right:0;top:9px;height:3px;border-radius:3px;background:linear-gradient(90deg,#cbd5e1,#60a5fa 45%,#1d4ed8 82%,#93c5fd)}
.cs-curve>div{position:relative}
.cs-curve>div::before{content:"";position:absolute;left:0;top:-27px;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid #60a5fa}
.cs-curve>div.peak::before{border-color:#1d4ed8;background:#1d4ed8}
.cs-curve small{display:block;font:800 11px/1.4 var(--cs-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--cs-muted)}
.cs-curve strong{display:block;margin:6px 0 4px;font-size:19px;font-weight:900;letter-spacing:-.02em;color:var(--cs-ink)}
.cs-curve span{display:block;font-size:13px;line-height:1.55;color:var(--cs-muted)}

@media (max-width:980px){
  .cs-eq{grid-template-columns:1fr 1fr;gap:26px}
  .cs-eq-card+.cs-eq-card{margin-left:0}
  .cs-eq-card+.cs-eq-card::before{display:none}
  .cs-eq-sign{display:none}
  .cs-eq-out{grid-column:1/-1}
  .cs-steps{grid-template-columns:1fr;gap:18px}
  .cs-steps::before{left:23px;right:auto;top:10px;bottom:10px;width:2px;height:auto;background:linear-gradient(180deg,#bcd4fa,#1d4ed8)}
  .cs-steps>div{display:grid;grid-template-columns:48px 1fr;column-gap:16px;text-align:left}
  .cs-steps>div::before{grid-row:1/4;margin:0}
  .cs-sec .cs-steps p{margin:0;max-width:none}
  .cs-steps em{justify-self:start}
  .cs-curve{grid-template-columns:1fr;padding-top:0;padding-left:30px;gap:18px}
  .cs-curve::before{left:6px;right:auto;top:0;bottom:0;width:3px;height:auto;background:linear-gradient(180deg,#cbd5e1,#60a5fa 45%,#1d4ed8 82%,#93c5fd)}
  .cs-curve>div::before{left:-30px;top:3px}
}
@media (max-width:860px){
  .cs-diag{grid-template-columns:1fr}
  .cs-impl-row{grid-template-columns:1fr}
  .cs-impl-row.head{display:none}
  .cs-impl-row>div{padding:6px 20px}
  .cs-impl-row>div:first-child{padding-top:18px}
  .cs-impl-row>div:last-child{padding-bottom:18px}
  .cs-ba-row{grid-template-columns:1fr 1fr}
  .cs-ba-row .cs-ba-k{grid-column:1/-1;padding-bottom:4px}
  .cs-ba-row .arr{display:none}
  .cs-ba-row.head .cs-ba-k,.cs-ba-row.head .arr{display:none}
}
@media (max-width:560px){
  .cs-eq{grid-template-columns:1fr}
}

/* ==========================================================================
   v4 components (first used on the company): coverage grid, moments of need,
   framework chain, staged process board, seasonal calendar
   ========================================================================== */
/* coverage grid */
.cs-cover{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.cs-cover div{display:flex;flex-direction:column;gap:10px;padding:18px;border:1px solid rgba(147,197,253,.16);border-radius:14px;background:rgba(255,255,255,.035)}
.cs-cover b{font:800 11px/1 var(--cs-mono);letter-spacing:.08em;color:#7fb2ff}
.cs-cover strong{font-size:15px;font-weight:800;line-height:1.4;color:#fff}
.cs-cover div.wide{grid-column:span 2;background:linear-gradient(135deg,rgba(37,99,235,.22),rgba(255,255,255,.03));border-color:rgba(147,197,253,.32)}
.cs-sec.deep p.cs-cover-note{margin:18px 0 0;font-size:14px;color:#a9bfdd}

/* moments of need */
.cs-moments{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.cs-moment{position:relative;display:flex;flex-direction:column;padding:22px 20px;border:1px solid var(--cs-line);border-radius:var(--cs-radius);background:#fff;overflow:hidden}
.cs-moment::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--m,#2563eb)}
.cs-moment i{display:grid;place-items:center;width:40px;height:40px;margin-bottom:14px;border-radius:12px;background:var(--mb,#eaf2ff);color:var(--m,#2563eb);font-style:normal}
.cs-moment i svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.cs-moment h3{margin:0 0 8px;font-size:16px;font-weight:800}
.cs-sec .cs-moment p{margin:0 0 12px;font-size:13.6px;line-height:1.6;color:var(--cs-muted)}
.cs-moment ul{display:flex;flex-wrap:wrap;gap:6px;margin:auto 0 0;padding:0;list-style:none}
.cs-moment li{padding:4px 9px;border-radius:999px;background:var(--cs-soft);border:1px solid var(--cs-line);font-size:11.5px;font-weight:600;color:#3f5878}

/* framework chain */
.cs-frame{margin-top:30px;padding:26px;border-radius:var(--cs-radius);background:linear-gradient(145deg,#0d2149,#0b1730);color:#fff}
.cs-sec p.cs-frame-k{margin:0 0 18px;font:800 11px/1 var(--cs-mono);letter-spacing:.12em;text-transform:uppercase;color:#7fb2ff}
.cs-chain{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:34px}
.cs-chain>div{position:relative;padding:16px 18px;border-radius:12px;background:rgba(255,255,255,.06);border:1px solid rgba(147,197,253,.22)}
.cs-chain>div+div::before{content:"\2192";position:absolute;left:-26px;top:50%;transform:translateY(-50%);font-size:20px;font-weight:900;color:#60a5fa}
.cs-chain small{display:block;font:800 10.5px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:#93a7c4}
.cs-chain strong{display:block;margin-top:8px;font-size:16px;font-weight:800;color:#fff}
.cs-chain.example{margin-top:14px}
.cs-chain.example>div{background:rgba(37,99,235,.28);border-color:rgba(147,197,253,.42)}
.cs-chain.example small{color:#bfdbfe}

/* staged process board */
.cs-board{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) minmax(0,1fr);gap:16px;align-items:start}
.cs-stage{border:1px solid var(--cs-line);border-radius:var(--cs-radius);background:#fff;overflow:hidden}
.cs-stage-h{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px 18px;background:var(--st,#0f2f6b);color:#fff}
.cs-stage-h strong{font-size:15px;font-weight:800}
.cs-stage-h span{font:800 10.5px/1 var(--cs-mono);letter-spacing:.08em;text-transform:uppercase;opacity:.8}
.cs-stage ol{margin:0;padding:6px 0;list-style:none}
.cs-stage li{display:grid;grid-template-columns:34px 1fr;gap:12px;padding:12px 18px;border-top:1px solid var(--cs-line)}
.cs-stage li:first-child{border-top:0}
.cs-stage li b{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#eef4ff;font:800 11.5px/1 var(--cs-mono);color:var(--cs-blue)}
.cs-stage li strong{display:block;font-size:14.6px;font-weight:800;color:var(--cs-ink)}
.cs-stage li span{display:block;margin-top:3px;font-size:13.3px;line-height:1.55;color:var(--cs-muted)}

/* seasonal calendar */
.cs-seasons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.cs-season{position:relative;padding:24px 22px;border-radius:var(--cs-radius);border:1px solid rgba(255,255,255,.12);background:linear-gradient(160deg,var(--s1),rgba(255,255,255,.02));overflow:hidden}
.cs-season small{display:block;font:800 11px/1 var(--cs-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--s2)}
.cs-season strong{display:block;margin:12px 0 8px;font-size:18px;font-weight:800;color:#fff}
.cs-sec.deep .cs-season p{margin:0;font-size:13.8px;line-height:1.6;color:#c2d3ec}
.cs-season em{position:absolute;right:16px;top:16px;font-style:normal;font-size:24px;opacity:.9}

@media (max-width:1080px){
  .cs-moments{grid-template-columns:repeat(3,minmax(0,1fr))}
  .cs-board{grid-template-columns:1fr}
}
@media (max-width:900px){
  .cs-cover{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cs-chain{grid-template-columns:1fr 1fr;gap:28px 34px}
  .cs-chain>div:nth-child(3)::before{display:none}
  .cs-seasons{grid-template-columns:1fr 1fr}
}
@media (max-width:620px){
  .cs-moments,.cs-seasons{grid-template-columns:1fr}
  .cs-chain{grid-template-columns:1fr;gap:26px}
  .cs-chain>div+div::before{left:50%;top:-24px;transform:translateX(-50%) rotate(90deg)}
  .cs-chain>div:nth-child(3)::before{display:block}
}
@media (max-width:480px){
  .cs-cover{grid-template-columns:1fr}
  .cs-cover div.wide{grid-column:auto}
}

/* ==========================================================================
   v5: year-by-year journey (bars in a fixed-height plot so heights are true to scale)
   ========================================================================== */
.cs-years-wrap{padding:28px 28px 24px;border:1px solid var(--cs-line);border-radius:var(--cs-radius);background:linear-gradient(180deg,#f7faff,#fff 55%)}
.cs-years{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;align-items:stretch}
.cs-year{display:flex;flex-direction:column}
.cs-year-plot{position:relative;display:flex;align-items:flex-end;height:230px;margin-bottom:14px;border-bottom:2px solid #dbe4f0}
.cs-year-bar{position:relative;width:100%;height:var(--h);border-radius:12px 12px 0 0;background:linear-gradient(180deg,var(--c1,#60a5fa),var(--c2,#1d4ed8))}
.cs-year-bar strong{position:absolute;left:0;right:0;bottom:calc(100% + 7px);text-align:center;font-size:17px;font-weight:900;letter-spacing:-.02em;color:var(--cs-ink)}
.cs-year-bar .dip{position:absolute;left:0;right:0;bottom:var(--dip);border-top:2px dashed rgba(255,255,255,.95)}
.cs-year-bar .dip span{position:absolute;left:50%;top:6px;transform:translateX(-50%);padding:3px 8px;border-radius:6px;background:rgba(15,23,42,.6);font-size:11px;font-weight:700;color:#fff;white-space:nowrap}
.cs-year-card{flex:1;padding:16px 16px 18px;border:1px solid var(--cs-line);border-radius:14px;background:#fff}
.cs-year-card small{display:block;font:800 11px/1.3 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--cs-blue)}
.cs-year-card h3{margin:8px 0 6px;font-size:16px;font-weight:800;line-height:1.3}
.cs-sec .cs-year-card p{margin:0;font-size:13.4px;line-height:1.6;color:var(--cs-muted)}
.cs-year.now .cs-year-card{border-color:#9dbcf2;box-shadow:0 16px 30px -24px rgba(29,78,216,.6)}
.cs-sec p.cs-years-note{margin:18px 0 0;font-size:12.8px;line-height:1.65;color:var(--cs-muted)}
@media (max-width:900px){
  .cs-years{grid-template-columns:1fr;gap:12px}
  .cs-year{display:grid;grid-template-columns:110px 1fr;gap:14px;align-items:stretch}
  .cs-year-plot{height:auto;margin:0;border:0;align-items:stretch}
  .cs-year-bar{height:auto;min-height:56px;border-radius:12px;background:linear-gradient(90deg,var(--c1,#60a5fa),var(--c2,#1d4ed8))}
  .cs-year-bar strong{position:static;display:grid;place-items:center;height:100%;color:#fff}
  .cs-year-bar .dip{display:none}
}
.cs-years-wrap{padding-top:44px}
@media (max-width:900px){.cs-years-wrap{padding:20px}}

/* ==========================================================================
   v6: branded vs non-brand stacked journey (first used on the company)
   ========================================================================== */
.cs-year-bar.split{display:flex;flex-direction:column;overflow:visible;background:none}
.cs-year-bar.split .seg-b{flex:0 0 var(--b);border-radius:12px 12px 0 0;background:repeating-linear-gradient(135deg,#c4b5fd 0 7px,#b8a6fb 7px 14px)}
.cs-year-bar.split .seg-n{flex:1 1 auto;background:linear-gradient(180deg,#3b82f6,#1d4ed8)}
.cs-year-bar.split .seg-b:only-child{border-radius:12px 12px 0 0}
.cs-year-bar.split.nb-top .seg-n{border-radius:12px 12px 0 0}
.cs-legend{display:flex;flex-wrap:wrap;gap:18px;margin:0 0 20px;font-size:13px;font-weight:600;color:#3f5878}
.cs-legend span{display:inline-flex;align-items:center;gap:8px}
.cs-legend i{width:14px;height:14px;border-radius:4px}
.cs-legend .lb{background:repeating-linear-gradient(135deg,#c4b5fd 0 4px,#b8a6fb 4px 8px)}
.cs-legend .ln{background:linear-gradient(180deg,#3b82f6,#1d4ed8)}
.cs-year-card .mix{display:flex;gap:8px;margin-top:10px;font-size:12px;font-weight:700}
.cs-year-card .mix b{padding:3px 8px;border-radius:999px;background:#f1ebff;color:#6d28d9}
.cs-year-card .mix em{padding:3px 8px;border-radius:999px;background:#eaf2ff;color:#1d4ed8;font-style:normal}
@media (max-width:900px){
  .cs-year-bar.split{flex-direction:row}
  .cs-year-bar.split .seg-b{flex:0 0 var(--b);border-radius:12px 0 0 12px}
  .cs-year-bar.split .seg-n{border-radius:0 12px 12px 0}
  .cs-year-bar.split strong{position:absolute;inset:0;display:grid;place-items:center;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.35)}
}
.cs-years.four{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:900px){.cs-years.four{grid-template-columns:1fr}}

/* ==========================================================================
   v7 (first used on the company): gap cards, brand-to-service bridge,
   six-phase playbook, tactic cards
   ========================================================================== */
/* gap cards */
.cs-gaps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.cs-gap{position:relative;padding:26px 26px 24px;border:1px solid rgba(147,197,253,.16);border-radius:var(--cs-radius);background:rgba(255,255,255,.035);overflow:hidden}
.cs-gap::after{content:attr(data-n);position:absolute;right:18px;top:8px;font:900 64px/1 var(--cs-font);letter-spacing:-.04em;color:rgba(147,197,253,.07)}
.cs-gap-m{display:inline-block;margin-bottom:14px;padding:6px 12px;border-radius:10px;background:rgba(248,113,113,.14);border:1px solid rgba(248,113,113,.28);font-size:14px;font-weight:800;color:#fecaca}
.cs-gap h3{margin:0 0 8px;font-size:18px;font-weight:800;color:#fff}
.cs-sec.deep .cs-gap p{margin:0;font-size:14.5px;line-height:1.7;color:#a9bfdd}

/* bridge */
.cs-bridge{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr) minmax(0,1fr);gap:0;align-items:stretch}
.cs-bridge-end{display:flex;flex-direction:column;padding:26px 24px;border-radius:var(--cs-radius)}
.cs-bridge-end.from{background:linear-gradient(160deg,#f5f0ff,#fbf9ff);border:1px solid #e4d9fd}
.cs-bridge-end.to{background:linear-gradient(160deg,#1d4ed8,#0d2149);color:#fff;box-shadow:0 22px 40px -26px rgba(29,78,216,.85)}
.cs-bridge-end small{font:800 11px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:#7c3aed}
.cs-bridge-end.to small{color:#bfdbfe}
.cs-bridge-end h3{margin:10px 0 14px;font-size:21px;font-weight:900;letter-spacing:-.02em}
.cs-bridge-end.to h3{color:#fff}
.cs-bridge-end ul{display:grid;gap:9px;margin:0;padding:0;list-style:none}
.cs-bridge-end li{position:relative;padding-left:20px;font-size:14px;line-height:1.55;color:#4c3a7a}
.cs-bridge-end li::before{content:"";position:absolute;left:0;top:7px;width:8px;height:8px;border-radius:50%;background:#a78bfa}
.cs-bridge-end.to li{color:#dbe7ff}
.cs-bridge-end.to li::before{background:#93c5fd}
.cs-bridge-mid{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:18px 26px}
.cs-bridge-mid::before{content:"";position:absolute;left:0;right:0;top:50%;height:4px;margin-top:-2px;background:linear-gradient(90deg,#c4b5fd,#3b82f6);border-radius:4px;z-index:0}
.cs-bridge-mid::after{content:"";position:absolute;right:-2px;top:50%;margin-top:-9px;border:9px solid transparent;border-left:12px solid #3b82f6}
.cs-pillar{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;padding:14px 14px;border:1px solid var(--cs-line);border-radius:12px;background:#fff;box-shadow:0 10px 24px -20px rgba(15,47,107,.5)}
.cs-pillar b{font:800 10.5px/1 var(--cs-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--cs-blue)}
.cs-pillar strong{display:block;margin:6px 0 4px;font-size:14.6px;font-weight:800;color:var(--cs-ink)}
.cs-pillar span{font-size:12.6px;line-height:1.5;color:var(--cs-muted)}

/* playbook */
.cs-play{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cs-phase{position:relative;display:flex;flex-direction:column;padding:24px 22px 0;border:1px solid var(--cs-line);border-radius:var(--cs-radius);background:#fff;overflow:hidden}
.cs-phase-n{position:absolute;right:16px;top:10px;font:900 54px/1 var(--cs-font);letter-spacing:-.04em;color:#eef3fb}
.cs-phase small{position:relative;font:800 11px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--cs-blue)}
.cs-phase h3{position:relative;margin:8px 0 12px;font-size:17.5px;font-weight:800}
.cs-phase ul{position:relative;display:grid;gap:8px;margin:0 0 18px;padding:0;list-style:none}
.cs-phase li{position:relative;padding-left:18px;font-size:13.8px;line-height:1.55;color:var(--cs-body)}
.cs-phase li::before{content:"\2192";position:absolute;left:0;top:0;font-weight:800;color:var(--cs-blue)}
.cs-phase-sig{display:flex;align-items:center;gap:8px;margin:auto -22px 0;padding:12px 22px;border-top:1px solid var(--cs-line);background:#f5f9ff;font-size:12.8px;font-weight:700;color:#0f2f6b}
.cs-phase-sig i{font-style:normal;font:800 10px/1 var(--cs-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--cs-muted)}

/* tactic cards (on dark) */
.cs-tactics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cs-tactic{display:flex;flex-direction:column;padding:24px 22px;border:1px solid rgba(147,197,253,.18);border-radius:var(--cs-radius);background:rgba(255,255,255,.04)}
.cs-tactic i{display:grid;place-items:center;width:42px;height:42px;margin-bottom:14px;border-radius:12px;background:rgba(96,165,250,.16);color:#93c5fd;font-style:normal}
.cs-tactic i svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.cs-tactic h3{margin:0 0 12px;font-size:17px;font-weight:800;color:#fff}
.cs-tactic ul{display:grid;gap:8px;margin:0 0 16px;padding:0;list-style:none}
.cs-tactic li{position:relative;padding-left:18px;font-size:13.8px;line-height:1.55;color:#b9cbe4}
.cs-tactic li::before{content:"\2713";position:absolute;left:0;top:0;font-weight:900;color:#60a5fa}
.cs-tactic-kw{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}
.cs-tactic-kw span{padding:4px 9px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);font-size:11.5px;font-weight:600;color:#cfe0f7}

@media (max-width:1000px){
  .cs-bridge{grid-template-columns:1fr;gap:18px}
  .cs-bridge-mid{padding:0}
  .cs-bridge-mid::before,.cs-bridge-mid::after{display:none}
  .cs-play,.cs-tactics{grid-template-columns:1fr 1fr}
}
@media (max-width:640px){
  .cs-gaps,.cs-play,.cs-tactics,.cs-bridge-mid{grid-template-columns:1fr}
}

/* ==========================================================================
   v8 (first used on the company): tension cards, search funnel, trade x feature
   matrix, kanban process, shipped changelog, annotated growth chart
   ========================================================================== */
/* tension cards: X vs Y */
.cs-tensions{display:grid;gap:14px}
.cs-tension{display:grid;grid-template-columns:minmax(0,1fr) 56px minmax(0,1fr);align-items:stretch;border:1px solid rgba(147,197,253,.16);border-radius:var(--cs-radius);background:rgba(255,255,255,.03);overflow:hidden}
.cs-tension>div{padding:20px 22px}
.cs-tension .was{background:rgba(248,113,113,.06)}
.cs-tension .need{background:rgba(96,165,250,.08)}
.cs-tension small{display:block;margin-bottom:6px;font:800 10.5px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase}
.cs-tension .was small{color:#fca5a5}
.cs-tension .need small{color:#93c5fd}
.cs-tension h3{margin:0 0 6px;font-size:16.5px;font-weight:800;color:#fff}
.cs-sec.deep .cs-tension p{margin:0;font-size:14px;line-height:1.65;color:#a9bfdd}
.cs-tension .vs{display:grid;place-items:center;padding:0;background:linear-gradient(90deg,rgba(248,113,113,.06),rgba(96,165,250,.08))}
.cs-tension .vs span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#0b1730;border:1px solid rgba(147,197,253,.3);font:800 11px/1 var(--cs-mono);color:#bfdbfe}

/* search funnel */
.cs-funnel{display:grid;gap:10px;justify-items:center}
.cs-funnel-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:18px;align-items:center;width:var(--w);padding:20px 24px;border-radius:14px;color:#fff;background:var(--bg)}
.cs-funnel-row small{display:block;font:800 10.5px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;opacity:.8}
.cs-funnel-row h3{margin:6px 0 4px;font-size:18px;font-weight:800;color:#fff}
.cs-sec .cs-funnel-row p{margin:0;font-size:13.5px;line-height:1.55;color:rgba(255,255,255,.82)}
.cs-funnel-row ul{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.cs-funnel-row li{padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.2);font-size:12px;font-weight:600}

/* trade x feature matrix */
.cs-matrix{margin-top:28px;border:1px solid var(--cs-line);border-radius:var(--cs-radius);overflow:hidden;background:#fff}
.cs-matrix table{width:100%;border-collapse:collapse}
.cs-matrix caption{padding:16px 20px 8px;text-align:left;font:800 11px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--cs-muted)}
.cs-matrix th,.cs-matrix td{padding:12px 14px;border-top:1px solid var(--cs-line);text-align:left;font-size:13px;vertical-align:middle}
.cs-matrix thead th{background:var(--cs-soft);font-weight:800;color:var(--cs-ink)}
.cs-matrix tbody th{width:17%;font-weight:800;color:#0f2f6b;background:#fafcff}
.cs-matrix td span{display:inline-block;padding:5px 10px;border-radius:8px;background:#eef4ff;border:1px solid #dbe7fb;font-weight:600;color:#1d4ed8;line-height:1.35}
.cs-sec p.cs-matrix-note{margin:10px 0 0;font-size:12.8px;color:var(--cs-muted)}

/* kanban process */
.cs-kanban{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:start}
.cs-kcol{padding:14px;border-radius:var(--cs-radius);background:#eef2f8;border:1px solid var(--cs-line)}
.cs-kcol-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding:0 4px}
.cs-kcol-h strong{display:inline-flex;align-items:center;gap:8px;font-size:14.5px;font-weight:800;color:var(--cs-ink)}
.cs-kcol-h strong::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--k,#2563eb)}
.cs-kcol-h span{font:800 11px/1 var(--cs-mono);color:var(--cs-muted)}
.cs-kcard{margin-top:10px;padding:13px 14px;border-radius:12px;background:#fff;border:1px solid var(--cs-line);box-shadow:0 6px 16px -14px rgba(15,47,107,.5)}
.cs-kcard:first-of-type{margin-top:0}
.cs-kcard strong{display:block;font-size:13.8px;font-weight:800;color:var(--cs-ink)}
.cs-kcard span{display:block;margin-top:4px;font-size:12.6px;line-height:1.5;color:var(--cs-muted)}
.cs-kcard em{display:inline-block;margin-top:8px;padding:2px 8px;border-radius:6px;background:var(--kb,#eaf2ff);font:700 10.5px/1.5 var(--cs-mono);font-style:normal;letter-spacing:.04em;text-transform:uppercase;color:var(--k,#1d4ed8)}

/* shipped changelog */
.cs-log{position:relative;display:grid;gap:0;border:1px solid rgba(147,197,253,.16);border-radius:var(--cs-radius);background:rgba(255,255,255,.03);overflow:hidden}
.cs-log-row{display:grid;grid-template-columns:130px minmax(0,1fr) auto;gap:22px;align-items:start;padding:20px 24px;border-top:1px solid rgba(147,197,253,.12)}
.cs-log-row:first-child{border-top:0}
.cs-log-tag{justify-self:start;padding:5px 10px;border-radius:8px;font:800 11px/1.3 var(--cs-mono);letter-spacing:.06em;text-transform:uppercase;background:var(--tb);color:var(--tc)}
.cs-log-row h3{margin:0 0 6px;font-size:16px;font-weight:800;color:#fff}
.cs-log-row h3::before{content:"shipped \2192 ";font:700 11px/1 var(--cs-mono);letter-spacing:.04em;color:#7ee2b8;vertical-align:2px}
.cs-sec.deep .cs-log-row p{margin:0;font-size:14px;line-height:1.65;color:#a9bfdd}
.cs-log-metric{padding:7px 12px;border-radius:10px;background:rgba(126,226,184,.1);border:1px solid rgba(126,226,184,.25);font-size:12.8px;font-weight:700;color:#bbf7d0;white-space:nowrap}

/* annotated growth chart */
.cs-chart{padding:26px 26px 20px;border:1px solid var(--cs-line);border-radius:var(--cs-radius);background:linear-gradient(180deg,#f7faff,#fff 60%)}
.cs-chart svg{display:block;width:100%;height:auto;overflow:visible}
.cs-chart .ax{font:600 12px var(--cs-font);fill:#64748b}
.cs-chart .lbl{font:800 13px var(--cs-font);fill:#0f172a}
.cs-chart .sub{font:600 11.5px var(--cs-font);fill:#64748b}
.cs-chart-legend{display:flex;flex-wrap:wrap;gap:18px;margin-bottom:12px;font-size:13px;font-weight:600;color:#3f5878}
.cs-chart-legend span{display:inline-flex;align-items:center;gap:8px}
.cs-chart-legend i{width:18px;height:4px;border-radius:2px}
.cs-sec p.cs-chart-note{margin:12px 0 0;font-size:12.8px;line-height:1.6;color:var(--cs-muted)}

@media (max-width:980px){
  .cs-kanban{grid-template-columns:1fr 1fr}
  .cs-funnel-row{width:100%!important;grid-template-columns:1fr}
  .cs-matrix{overflow-x:auto}
  .cs-matrix table{min-width:720px}
}
@media (max-width:720px){
  .cs-tension{grid-template-columns:1fr}
  .cs-tension .vs{padding:8px 0}
  .cs-log-row{grid-template-columns:1fr;gap:10px}
  .cs-log-metric{justify-self:start;white-space:normal}
}
@media (max-width:560px){
  .cs-kanban{grid-template-columns:1fr}
}
.cs-log-row h3::before{margin-right:8px}
.cs-readout.compact.roomy li{padding:20px 18px}

/* ==========================================================================
   v9 (first used on the company): hub diagram, three horizons, cadence,
   service-line swimlanes, yearly range bars
   ========================================================================== */
/* hub diagram */
.cs-hub{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto auto auto;gap:14px;align-items:stretch}
.cs-hub-node{padding:18px 20px;border:1px solid rgba(147,197,253,.18);border-radius:14px;background:rgba(255,255,255,.04)}
.cs-hub-node small{display:block;font:800 10.5px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:#7fb2ff}
.cs-hub-node strong{display:block;margin:8px 0 4px;font-size:16.5px;font-weight:800;color:#fff}
.cs-hub-node span{display:block;font-size:13.3px;line-height:1.55;color:#a9bfdd}
.cs-hub-core{grid-column:2;grid-row:2;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:24px;border-radius:50% / 40%;background:radial-gradient(circle at 50% 35%,#2563eb,#0d2149);box-shadow:0 0 0 10px rgba(37,99,235,.12),0 0 0 22px rgba(37,99,235,.06)}
.cs-hub-core small{font:800 10.5px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:#bfdbfe}
.cs-hub-core strong{margin-top:8px;font-size:17px;font-weight:900;color:#fff;word-break:break-word}
.cs-hub-core span{margin-top:4px;font-size:12.5px;color:#dbe7ff}
.cs-hub .n1{grid-column:2;grid-row:1}.cs-hub .n2{grid-column:3;grid-row:2}.cs-hub .n3{grid-column:2;grid-row:3}.cs-hub .n4{grid-column:1;grid-row:2}
.cs-hub .c1{grid-column:1;grid-row:1}.cs-hub .c2{grid-column:3;grid-row:1}.cs-hub .c3{grid-column:1;grid-row:3}.cs-hub .c4{grid-column:3;grid-row:3}
.cs-hub .corner{border-style:dashed;background:rgba(248,113,113,.06);border-color:rgba(248,113,113,.28)}
.cs-hub .corner small{color:#fca5a5}

/* three horizons */
.cs-horizons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:end}
.cs-horizon{position:relative;display:flex;flex-direction:column;min-height:var(--mh);padding:24px 22px;border-radius:var(--cs-radius) var(--cs-radius) 6px 6px;color:#fff;background:var(--hb);overflow:hidden}
.cs-horizon::after{content:attr(data-h);position:absolute;right:14px;top:6px;font:900 64px/1 var(--cs-font);letter-spacing:-.04em;color:rgba(255,255,255,.1)}
.cs-horizon small{font:800 11px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.75)}
.cs-horizon h3{margin:8px 0 10px;font-size:20px;font-weight:900;color:#fff}
.cs-sec .cs-horizon p{margin:0 0 14px;font-size:14px;line-height:1.6;color:rgba(255,255,255,.85)}
.cs-horizon ul{display:grid;gap:7px;margin:auto 0 0;padding:0;list-style:none}
.cs-horizon li{padding:8px 11px;border-radius:9px;background:rgba(255,255,255,.12);font-size:13px;font-weight:600;line-height:1.4}
.cs-horizons-base{height:6px;margin-top:0;border-radius:0 0 6px 6px;background:linear-gradient(90deg,#1e3a8a,#2563eb,#60a5fa)}

/* cadence */
.cs-cadence{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cs-cad{padding:24px 22px;border:1px solid var(--cs-line);border-radius:var(--cs-radius);background:#fff}
.cs-cad-h{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.cs-cad-h b{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;border:3px solid var(--cc);font:900 12px/1 var(--cs-mono);color:var(--cc);background:#fff}
.cs-cad-h strong{display:block;font-size:17px;font-weight:800;color:var(--cs-ink)}
.cs-cad-h span{display:block;font-size:12.5px;color:var(--cs-muted)}
.cs-cad ol{display:grid;gap:9px;margin:0;padding:0;list-style:none;counter-reset:cd}
.cs-cad li{position:relative;padding:10px 12px 10px 38px;border-radius:10px;background:var(--cs-soft);font-size:13.8px;line-height:1.5;color:var(--cs-body)}
.cs-cad li::before{counter-increment:cd;content:counter(cd);position:absolute;left:11px;top:10px;display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:var(--cc);font-size:11px;font-weight:800;color:#fff}
.cs-sec p.cs-cad-steps{margin:22px 0 0;text-align:center;font-size:13.5px;color:var(--cs-muted)}
.cs-cad-steps b{color:var(--cs-ink)}

/* swimlanes */
.cs-lanes{border:1px solid rgba(147,197,253,.16);border-radius:var(--cs-radius);overflow:hidden}
.cs-lane{display:grid;grid-template-columns:180px repeat(3,minmax(0,1fr));border-top:1px solid rgba(147,197,253,.12)}
.cs-lane:first-child{border-top:0}
.cs-lane>div{padding:16px 18px}
.cs-lane.head>div{padding:13px 18px;font:800 10.5px/1.4 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:#93a7c4;background:rgba(255,255,255,.03)}
.cs-lane-name{display:flex;align-items:center;gap:10px;background:linear-gradient(90deg,var(--lc),transparent)}
.cs-lane-name strong{font-size:15px;font-weight:800;color:#fff}
.cs-lane-cell{display:flex;flex-direction:column;gap:6px}
.cs-lane-cell span{align-self:flex-start;padding:5px 10px;border-radius:8px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);font-size:12.3px;font-weight:600;color:#dbe7ff;line-height:1.35}
.cs-lanes-foot{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:16px 18px;border-top:1px solid rgba(147,197,253,.16);background:rgba(37,99,235,.14)}
.cs-lanes-foot b{margin-right:6px;font:800 10.5px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:#bfdbfe}
.cs-lanes-foot span{padding:5px 11px;border-radius:999px;background:rgba(255,255,255,.1);font-size:12.5px;font-weight:700;color:#fff}

/* yearly range bars */
.cs-ranges{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;height:300px;padding:0 10px;border-bottom:2px solid #dbe4f0;background:repeating-linear-gradient(0deg,transparent 0 74px,#eef2f8 74px 75px)}
.cs-range{position:relative}
.cs-range-bar{position:absolute;left:50%;width:46px;margin-left:-23px;bottom:var(--lo);height:calc(var(--hi) - var(--lo));border-radius:10px;background:linear-gradient(180deg,#60a5fa,#1d4ed8);opacity:.85}
.cs-range-now{position:absolute;left:50%;bottom:var(--now);width:62px;margin-left:-31px;height:4px;margin-bottom:-2px;border-radius:2px;background:#0f172a}
.cs-range-now::after{content:attr(data-v);position:absolute;left:100%;top:-9px;margin-left:8px;font-size:13px;font-weight:900;color:var(--cs-ink);white-space:nowrap}
.cs-range-spike{position:absolute;left:50%;top:-8px;bottom:var(--hi);width:0;border-left:2px dashed #f59e0b}
.cs-range-spike span{position:absolute;left:8px;top:0;padding:3px 8px;border-radius:6px;background:#fff7e6;border:1px solid #fcd9a0;font-size:11.5px;font-weight:700;color:#b45309;white-space:nowrap}
.cs-range-labels{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:12px;padding:0 10px}
.cs-range-labels div{text-align:center}
.cs-range-labels strong{display:block;font-size:15px;font-weight:800;color:var(--cs-ink)}
.cs-range-labels span{display:block;margin-top:3px;font-size:12.8px;line-height:1.5;color:var(--cs-muted)}
.cs-range-key{display:flex;flex-wrap:wrap;gap:18px;margin-bottom:16px;font-size:13px;font-weight:600;color:#3f5878}
.cs-range-key span{display:inline-flex;align-items:center;gap:8px}
.cs-range-key i{display:inline-block}
.cs-range-key .kb{width:14px;height:14px;border-radius:4px;background:linear-gradient(180deg,#60a5fa,#1d4ed8)}
.cs-range-key .kn{width:18px;height:4px;border-radius:2px;background:#0f172a}
.cs-range-key .ks{width:0;height:14px;border-left:2px dashed #f59e0b}

@media (max-width:900px){
  .cs-hub{grid-template-columns:1fr;grid-template-rows:none}
  .cs-hub>*{grid-column:auto!important;grid-row:auto!important}
  .cs-hub-core{border-radius:var(--cs-radius);box-shadow:none}
  .cs-horizons,.cs-cadence{grid-template-columns:1fr}
  .cs-horizon{min-height:0}
  .cs-lanes{overflow-x:auto}
  .cs-lane{min-width:760px}
  .cs-ranges{gap:8px;padding:0}
  .cs-range-now::after{left:50%;top:-22px;margin-left:0;transform:translateX(-50%)}
  .cs-range-spike span{left:auto;right:4px;font-size:10.5px}
  .cs-range-labels{gap:8px;padding:0}
}

/* ==========================================================================
   v10 (first used on the company): iceberg, two acts, recovery staircase,
   service-page anatomy, phase-shaded chart
   ========================================================================== */
/* iceberg */
.cs-ice{position:relative;border-radius:var(--cs-radius);overflow:hidden;border:1px solid rgba(147,197,253,.18)}
.cs-ice-top{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;padding:30px 24px 26px;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.03))}
.cs-ice-top::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:repeating-linear-gradient(90deg,#60a5fa 0 18px,transparent 18px 26px)}
.cs-ice-k{width:100%;text-align:center;font:800 11px/1 var(--cs-mono);letter-spacing:.12em;text-transform:uppercase;color:#bfdbfe}
.cs-ice-top span.pill{padding:9px 14px;border-radius:12px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);font-size:14px;font-weight:700;color:#fff}
.cs-ice-top span.pill b{color:#93c5fd}
.cs-ice-bottom{padding:26px 24px 28px;background:linear-gradient(180deg,#0b2a5c,#061634)}
.cs-ice-bottom .cs-ice-k{margin-bottom:18px;color:#7fb2ff}
.cs-ice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.cs-ice-item{padding:18px 20px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(147,197,253,.16)}
.cs-ice-item strong{display:block;margin-bottom:6px;font-size:16.5px;font-weight:800;color:#fff}
.cs-sec.deep .cs-ice-item p{margin:0;font-size:14px;line-height:1.65;color:#a9bfdd}
.cs-ice-item em{display:inline-block;margin-bottom:10px;padding:4px 10px;border-radius:8px;background:rgba(96,165,250,.16);font-style:normal;font-size:12.5px;font-weight:800;color:#bfdbfe}

/* two acts */
.cs-acts{display:grid;grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr);align-items:stretch}
.cs-act{padding:28px 26px;border-radius:var(--cs-radius);border:1px solid var(--cs-line);background:#fff}
.cs-act.two{background:linear-gradient(160deg,#0d2149,#1d4ed8);border-color:transparent;color:#fff;box-shadow:0 22px 44px -28px rgba(29,78,216,.9)}
.cs-act small{font:800 11px/1 var(--cs-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--cs-blue)}
.cs-act.two small{color:#bfdbfe}
.cs-act h3{margin:8px 0 6px;font-size:22px;font-weight:900;letter-spacing:-.02em}
.cs-act.two h3{color:#fff}
.cs-sec .cs-act p.when{margin:0 0 16px;font-size:13.5px;font-weight:700;color:var(--cs-muted)}
.cs-sec .cs-act.two p.when{color:#bfdbfe}
.cs-act ul{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.cs-act li{padding:12px 14px;border-radius:12px;background:var(--cs-soft);font-size:14px;line-height:1.55;color:var(--cs-body)}
.cs-act li strong{display:block;font-size:14.5px;color:var(--cs-ink)}
.cs-act.two li{background:rgba(255,255,255,.1);color:#dbe7ff}
.cs-act.two li strong{color:#fff}
.cs-acts-mid{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}
.cs-acts-mid span{writing-mode:vertical-rl;transform:rotate(180deg);font:800 11px/1 var(--cs-mono);letter-spacing:.14em;text-transform:uppercase;color:#b45309}
.cs-acts-mid i{display:block;width:2px;flex:1;background:repeating-linear-gradient(180deg,#f59e0b 0 6px,transparent 6px 11px)}

/* recovery staircase */
.cs-stairs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;align-items:end}
.cs-stair{display:flex;flex-direction:column;justify-content:flex-start;min-height:var(--sh);padding:18px 16px;border-radius:14px 14px 4px 4px;background:#fff;border:1px solid var(--cs-line);border-top:4px solid var(--cs-blue-2);box-shadow:0 12px 26px -22px rgba(15,47,107,.6)}
.cs-stair b{font:800 12px/1 var(--cs-mono);color:var(--cs-blue)}
.cs-stair strong{display:block;margin:8px 0 6px;font-size:15px;font-weight:800;line-height:1.3;color:var(--cs-ink)}
.cs-stair span{font-size:12.8px;line-height:1.55;color:var(--cs-muted)}
.cs-stairs-base{height:6px;border-radius:0 0 6px 6px;background:linear-gradient(90deg,#bcd4fa,#1d4ed8)}

/* service-page anatomy */
.cs-anatomy{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:28px;align-items:center}
.cs-mock{border-radius:14px;overflow:hidden;border:1px solid rgba(147,197,253,.25);background:#f8fafc;box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}
.cs-mock-bar{display:flex;gap:6px;padding:10px 12px;background:#e2e8f0}
.cs-mock-bar i{width:10px;height:10px;border-radius:50%;background:#94a3b8}
.cs-mock-body{display:grid;gap:10px;padding:16px}
.cs-mock-row{position:relative;padding:10px 12px;border-radius:8px;background:#fff;border:1px solid #e2e8f0;font-size:12.5px;line-height:1.45;color:#334155}
.cs-mock-row b{position:absolute;left:-9px;top:-9px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#1d4ed8;font-size:11px;font-weight:800;color:#fff;box-shadow:0 0 0 3px #f8fafc}
.cs-mock-row.h1{font-size:15px;font-weight:900;color:#0f172a}
.cs-mock-row.stars{color:#b45309;font-weight:700}
.cs-mock-row.cta{display:flex;gap:8px;background:transparent;border:0;padding:0 0 0 2px}
.cs-mock-row.cta span{padding:8px 12px;border-radius:8px;background:#1d4ed8;color:#fff;font-weight:800}
.cs-mock-row.cta span+span{background:#fff;color:#1d4ed8;border:1px solid #bfdbfe}
.cs-mock-row.schema{font-family:var(--cs-mono);font-size:11.5px;color:#475569;background:#f1f5f9}
.cs-notes{display:grid;gap:10px;margin:0;padding:0;list-style:none;counter-reset:an}
.cs-notes li{position:relative;padding:12px 14px 12px 46px;border-radius:12px;background:rgba(255,255,255,.05);border:1px solid rgba(147,197,253,.14);font-size:14px;line-height:1.55;color:#b9cbe4}
.cs-notes li::before{counter-increment:an;content:counter(an);position:absolute;left:12px;top:12px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#1d4ed8;font-size:11px;font-weight:800;color:#fff}
.cs-notes li strong{color:#fff}

/* phase-shaded chart */
.cs-phase-legend{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:12px;font-size:13px;font-weight:600;color:#3f5878}
.cs-phase-legend span{display:inline-flex;align-items:center;gap:8px}
.cs-phase-legend i{width:14px;height:14px;border-radius:4px}

@media (max-width:980px){
  .cs-stairs{grid-template-columns:repeat(3,minmax(0,1fr))}
  .cs-stair{min-height:0}
  .cs-anatomy{grid-template-columns:1fr}
}
@media (max-width:760px){
  .cs-acts{grid-template-columns:1fr;gap:16px}
  .cs-acts-mid{flex-direction:row}
  .cs-acts-mid span{writing-mode:horizontal-tb;transform:none}
  .cs-acts-mid i{width:auto;height:2px;flex:1;background:repeating-linear-gradient(90deg,#f59e0b 0 6px,transparent 6px 11px)}
  .cs-ice-grid{grid-template-columns:1fr}
  .cs-stairs{grid-template-columns:1fr}
}
.cs-sec p.cs-ice-k{margin:0 0 18px;font:800 11px/1 var(--cs-mono);letter-spacing:.12em;text-transform:uppercase;text-align:center;color:#7fb2ff}

/* related SEO services (case studies -> service pages) */
.cs-related{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:22px}
.cs-related span{margin-right:6px;font:800 11px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--cs-muted)}
.cs-related a{padding:8px 14px;border:1px solid var(--cs-line);border-radius:999px;background:#fff;font-size:13.5px;font-weight:700;color:var(--cs-blue);text-decoration:none;transition:border-color .2s ease,background .2s ease}
.cs-related a:hover{border-color:#93c5fd;background:#eff6ff}

/* ---------- evidence tabs (evx) ---------- */
.evx{margin-top:30px;border:1px solid rgba(147,197,253,.18);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));overflow:hidden}
.evx-tabs{display:none;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid rgba(255,255,255,.1);background:rgba(3,10,26,.35)}
.evx.is-tabs .evx-tabs{display:grid}
.evx-tab{position:relative;display:flex;align-items:center;gap:12px;padding:16px 20px;border:0;border-right:1px solid rgba(255,255,255,.07);background:none;text-align:left;font:inherit;color:#93a7c4;cursor:pointer;transition:background .2s ease,color .2s ease}
.evx-tab:last-child{border-right:0}
.evx-tab small{display:block;font:800 10.5px/1.3 var(--cs-mono);letter-spacing:.08em;text-transform:uppercase;color:#6f86a8}
.evx-tab strong{display:block;margin-top:4px;font-size:15px;font-weight:700;color:inherit}
.evx-tab:hover{background:rgba(255,255,255,.04);color:#dbe7f7}
.evx-tab[aria-selected="true"]{background:rgba(37,99,235,.14);color:#fff}
.evx-tab[aria-selected="true"]::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:linear-gradient(90deg,#3b82f6,#60a5fa)}
.evx-tab[aria-selected="true"] small{color:#7fb2ff}
.evx-tab:focus-visible{outline:2px solid #60a5fa;outline-offset:-2px}
.evx-dot{flex:none;width:9px;height:9px;border-radius:50%}
.evx-dot.est,.evx-badge.est::before{background:#fbbf24;box-shadow:0 0 0 4px rgba(251,191,36,.16)}
.evx-dot.fp,.evx-badge.fp::before{background:#34d399;box-shadow:0 0 0 4px rgba(52,211,153,.16)}
.evx-panel{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:22px 28px;align-items:start;padding:26px}
.evx-panel+.evx-panel{border-top:1px solid rgba(255,255,255,.1)}
.evx.is-tabs .evx-panel{border-top:0}
.evx-panel[hidden]{display:none}
.evx-media{display:grid;gap:16px;align-content:start}
.evx-shot{margin:0}
.evx-shot .evx-frame{position:relative;display:block;border:1px solid rgba(255,255,255,.14);border-radius:12px;overflow:hidden;background:#fff}
.evx-shot img{display:block;width:100%;height:auto}
.evx-panel>.cs-ai{grid-column:1/-1;margin:0}
.evx-data{display:grid;gap:14px;align-content:start;justify-items:start}
.evx-badge{display:inline-flex;align-items:center;gap:9px;padding:7px 12px;border-radius:999px;font:800 10.5px/1 var(--cs-mono);letter-spacing:.08em;text-transform:uppercase}
.evx-badge::before{content:"";width:7px;height:7px;border-radius:50%}
.evx-badge.est{border:1px solid rgba(251,191,36,.35);background:rgba(251,191,36,.1);color:#fcd34d}
.evx-badge.fp{border:1px solid rgba(52,211,153,.35);background:rgba(52,211,153,.1);color:#6ee7b7}
.cs-sec.deep .evx-data h3{margin:0;font-size:21px;line-height:1.3}
.cs-sec.deep p.evx-meta{margin:-6px 0 0;font-size:13px;line-height:1.5;color:#8ea4c2}
.evx-kpis{justify-self:stretch;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:4px 0 0;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.1);overflow:hidden}
.evx-kpis div{padding:15px 16px;background:#0f1e3a}
.evx-kpis dt{font:800 10.5px/1.3 var(--cs-mono);letter-spacing:.09em;text-transform:uppercase;color:#7fb2ff}
.evx-kpis dd{margin:7px 0 0;font-size:26px;font-weight:800;line-height:1.1;letter-spacing:-.02em;color:#fff}
.evx-kpis small{display:block;margin-top:5px;font-size:12.5px;font-weight:500;letter-spacing:0;color:#93a7c4}
.cs-sec.deep p.evx-take{grid-column:1/-1;margin:0;padding:15px 17px;border-left:3px solid #60a5fa;border-radius:0 12px 12px 0;background:rgba(96,165,250,.08);font-size:14.5px;line-height:1.7;color:#c6d6ee}
.evx-take b{display:block;margin-bottom:5px;font:800 11px/1 var(--cs-mono);letter-spacing:.1em;text-transform:uppercase;color:#7fb2ff}
@media (max-width:960px){
  .evx-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .evx-tab:nth-child(2){border-right:0}
  .evx-tab:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.07)}
  .evx-panel{grid-template-columns:1fr;gap:20px;padding:20px}
}
@media (max-width:600px){
  .evx-tab{gap:10px;padding:13px 14px}
  .evx-tab strong{font-size:14px}
  .evx-panel{padding:16px}
  .evx-kpis div{padding:13px}
  .evx-kpis dd{font-size:22px}
}

/* ---------- journey background ---------- */
.cs-sec.cs-journey{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(180deg,#f3f7ff 0%,#eaf1fe 55%,#f5f8fe 100%);border-top:1px solid #dfe8f7;border-bottom:1px solid #dfe8f7}
.cs-sec.cs-journey::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(26,86,219,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(26,86,219,.1) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(ellipse 80% 70% at 50% 40%,#000 30%,transparent 85%);mask-image:radial-gradient(ellipse 80% 70% at 50% 40%,#000 30%,transparent 85%)}
.cs-sec.cs-journey::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(520px 420px at 92% 8%,rgba(96,165,250,.38),transparent 70%),radial-gradient(560px 460px at 4% 72%,rgba(129,140,248,.28),transparent 70%),radial-gradient(420px 360px at 70% 98%,rgba(52,211,153,.16),transparent 70%)}
.cs-journey .cs-tl-card{border-color:#dbe6f7;box-shadow:0 18px 40px -26px rgba(15,47,107,.4)}

.evx.evx-3 .evx-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:960px){
  .evx.evx-3 .evx-tab{border-bottom:0}
  .evx.evx-3 .evx-tab:nth-child(2){border-right:1px solid rgba(255,255,255,.07)}
}
@media (max-width:600px){
  .evx.evx-3 .evx-tab{flex-direction:column;align-items:flex-start;gap:6px;padding:12px}
  .evx.evx-3 .evx-tab strong{font-size:13px}
}
.evx.evx-2 .evx-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:960px){
  .evx.evx-2 .evx-tab{border-bottom:0}
}

/* Banner as a real image (indexable, with alt text). The gradients stay in ::before; the image sits under them. */
.cs-hero.cs-has-img{--cs-hero-image:none;--cs-hero-image-mobile:none}
.cs-hero>.cs-hero-img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:60% center}
@media(max-width:760px){.cs-hero>.cs-hero-img{object-position:70% center}}
