.brand { gap: 0; }

.brand img {
  border-radius: 0;
  object-fit: contain;
}
.text-brand { color: var(--ink); font-size: 16px; font-weight: 830; letter-spacing: -.045em; line-height: .92; }
.text-brand span { display: block; }.text-brand small { display: block; margin-top: 5px; color: var(--blue); font-size: 9px; font-weight: 800; letter-spacing: .17em; }
.site-logo { display:block; width:auto; height:51px; max-width:260px; object-fit:contain; }
.site-header { background:rgba(249,252,255,.94); border-bottom:1px solid rgba(20,65,108,.13); box-shadow:0 9px 28px rgba(7,43,81,.06); }.site-header.scrolled { background:rgba(249,252,255,.9); box-shadow:0 12px 34px rgba(7,43,81,.11); }.top-strip { background:#062b59; border-top:2px solid var(--orange); color:#c4def3; }.top-strip-inner { height:31px; display:flex; align-items:center; justify-content:space-between; gap:18px; font-size:10px; font-weight:720; letter-spacing:.07em; }.top-strip p { margin:0; }.top-strip p span { display:inline-block; width:6px; height:6px; margin:0 7px 1px 0; border-radius:50%; background:#5cceff; box-shadow:0 0 0 4px rgba(92,206,255,.12); }.top-location { color:#dceefd; font-weight:700; letter-spacing:.05em; white-space:nowrap; }.nav { height:76px; position:relative; }.nav-links { gap:10px; }.nav-links > a:not(.nav-cta) { position:relative; padding:10px 12px; border-radius:7px; color:#224c76; }.nav-links > a:not(.nav-cta)::after { content:''; position:absolute; left:12px; right:12px; bottom:5px; height:2px; border-radius:2px; background:var(--orange); transform:scaleX(0); transform-origin:left; transition:transform .24s ease; }.nav-links > a:not(.nav-cta):hover { color:#063b78; background:#e7f2fd; }.nav-links > a:not(.nav-cta):hover::after { transform:scaleX(1); }.nav-links .nav-cta { display:inline-flex; align-items:center; gap:5px; padding:12px 16px; background:#073b78; box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 5px 13px rgba(6,52,107,.16); transition:transform .22s,background .22s,box-shadow .22s; }.nav-links .nav-cta:hover { background:#075bb5; transform:translateY(-2px); box-shadow:0 9px 18px rgba(6,75,152,.27); }.menu-toggle { display:none; }
.nav-links .nav-cta,.nav-links .nav-cta:hover,.nav-links .nav-cta:focus-visible{color:#fff!important}.intro{display:block!important;position:relative;overflow:hidden;background:linear-gradient(118deg,#f8fcff 0%,#e6f4ff 52%,#d5edff 100%);border-top:1px solid #d6e6f2;border-bottom:1px solid #c9ddeb}.intro::before{content:'';position:absolute;width:660px;height:660px;left:-260px;bottom:-410px;border-radius:50%;background:#0065c8;box-shadow:0 0 0 72px rgba(0,101,200,.12),0 0 0 144px rgba(0,101,200,.055)}.intro::after{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(15,90,154,.11) 1px,transparent 1px),linear-gradient(90deg,rgba(15,90,154,.11) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(90deg,black,transparent 70%);opacity:.65}.intro-layout{position:relative;z-index:1;display:grid;grid-template-columns:25% 1fr;gap:12px}.intro .section-label{position:relative;display:flex;min-height:330px;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding-top:21px;color:#28608f;font-size:10px;font-weight:800;letter-spacing:.12em}.intro .section-label b{font-size:clamp(82px,9vw,142px);line-height:.75;letter-spacing:-.1em;color:rgba(0,101,200,.16)}.intro .section-label span{margin-top:33px;line-height:1.65}.intro .section-label i{width:64px;height:3px;margin-top:22px;background:var(--orange);box-shadow:11px 0 0 #0a60b7}.intro-copy{padding:12px 0}.intro-copy h2{max-width:900px;font-size:clamp(40px,4.9vw,66px);line-height:1.02}.intro-copy>p:last-of-type{max-width:720px;color:#42698e;font-size:18px}.intro-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}.intro-badges span{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid #aecce4;border-radius:8px;background:rgba(255,255,255,.62);color:#174b7d;font-size:12px;font-weight:750;box-shadow:0 5px 13px rgba(14,75,131,.05)}.intro-badges i{display:grid;width:19px;height:19px;place-items:center;border-radius:50%;background:#dff0ff;color:#0065c8;font-style:normal;font-size:12px}
.intro-layout{grid-template-columns:minmax(190px,22%) minmax(0,1fr)}.intro-copy{max-width:none;width:100%}.intro-copy h2{max-width:960px;font-size:clamp(38px,4.25vw,62px)}.section-heading[data-index],.problems-copy[data-index],.capability-intro[data-index],.work-copy[data-index],.approach-copy[data-index],.faq-copy[data-index]{position:relative;isolation:isolate}.section-heading[data-index]::before,.problems-copy[data-index]::before,.capability-intro[data-index]::before,.work-copy[data-index]::before,.approach-copy[data-index]::before,.faq-copy[data-index]::before{content:attr(data-index);position:absolute;z-index:-1;top:-.52em;left:-.12em;color:rgba(0,101,200,.1);font-size:clamp(92px,10vw,162px);font-weight:900;letter-spacing:-.11em;line-height:.8}.problems-copy[data-index]::before,.work-copy[data-index]::before{color:rgba(159,216,255,.12)}.section-heading[data-index]::before{left:.32em}.capability-intro[data-index]::before{left:.2em}.faq-copy[data-index]::before{left:-.2em}
.top-mobile{display:none}
.hero { background:linear-gradient(116deg,#031c3f 0%,#06346c 54%,#075db5 100%); }.hero::after { display:none; }.hero::before { width:720px; height:720px; right:-280px; top:-290px; border-color:rgba(193,229,255,.15); box-shadow:0 0 0 92px rgba(164,220,255,.035),0 0 0 184px rgba(164,220,255,.018); }.hero-grid { opacity:.45; }.hero-layout { grid-template-columns:1fr; gap:0; min-height:560px; }.hero-copy { max-width:650px; }.hero-copy,.hero-foot { z-index:1; }.hero-art { position:absolute; right:-54px; top:31px; width:690px; max-width:calc(100vw - 48px); height:500px; margin:0; background:none; filter:saturate(1.05) contrast(1.03) drop-shadow(0 22px 28px rgba(0,10,42,.32)); opacity:0; transform:translateX(24px) scale(.97); animation:hero-art-reveal 1s cubic-bezier(.2,.7,.2,1) .18s forwards; }
.hero-copy .eyebrow,.hero-copy h1,.hero-copy .hero-lead,.hero-copy .hero-actions,.hero-copy .hero-signals { opacity:0; animation:hero-enter .8s cubic-bezier(.2,.7,.2,1) forwards; }.hero-copy h1{animation-delay:.10s}.hero-copy .hero-lead{animation-delay:.20s}.hero-copy .hero-actions{animation-delay:.31s}.hero-copy .hero-signals{animation-delay:.42s}.flow-panel { transform:perspective(1000px) rotateY(-5deg) rotateX(3deg); }.flow-stage { height:328px; position:relative; overflow:hidden; background:radial-gradient(circle at 50% 50%,rgba(94,180,255,.27),transparent 32%),linear-gradient(135deg,rgba(0,113,233,.22),transparent 65%); }.flow-stage::before { content:''; position:absolute; inset:0; background-image:radial-gradient(rgba(187,227,255,.36) 1px,transparent 1.5px); background-size:19px 19px; opacity:.28; mask-image:radial-gradient(circle at 50% 50%,black,transparent 69%); }.flow-orbit { position:absolute; left:50%; top:50%; border:1px solid rgba(173,220,255,.26); border-radius:50%; transform:translate(-50%,-50%) rotateX(62deg); }.orbit-a { width:280px; height:280px; animation:orbit-spin 13s linear infinite; }.orbit-b { width:440px; height:440px; border-style:dashed; animation:orbit-spin 18s linear infinite reverse; }.flow-core { position:absolute; z-index:2; left:50%; top:50%; width:138px; height:138px; transform:translate(-50%,-50%); border-radius:50%; display:grid; place-content:center; text-align:center; background:radial-gradient(circle at 35% 30%,#e5f5ff,#78c4ff 38%,#0e61b6 71%); box-shadow:0 0 0 9px rgba(136,208,255,.09),0 0 50px rgba(115,198,255,.46); }.flow-core span { width:9px; height:9px; border-radius:50%; margin:0 auto 9px; background:#fff; box-shadow:0 0 15px white; animation:blink 2s ease-in-out infinite; }.flow-core b { font-size:15px; line-height:1.15; letter-spacing:-.04em; color:#063a75; }.flow-card { position:absolute; z-index:3; display:flex; align-items:center; gap:7px; padding:8px 10px; border:1px solid rgba(195,230,255,.48); border-radius:8px; background:rgba(5,62,126,.55); color:#e3f3ff; font-size:10px; font-weight:800; letter-spacing:.03em; backdrop-filter:blur(5px); animation:card-pop .65s cubic-bezier(.2,.7,.2,1) both; }.flow-card i { width:6px; height:6px; border-radius:50%; background:#ff872c; box-shadow:0 0 10px #ff872c; }.card-one{top:55px;left:9%;animation-delay:.2s}.card-two{top:63px;right:8%;animation-delay:.35s}.card-three{bottom:56px;left:10%;animation-delay:.5s}.card-four{bottom:52px;right:7%;animation-delay:.65s}.flow-path { position:absolute; left:50%; top:50%; width:43%; height:1px; background:linear-gradient(90deg,rgba(157,220,255,.8),transparent); transform-origin:left; }.path-one{transform:rotate(-144deg)}.path-two{transform:rotate(36deg)}.flow-particle { position:absolute; z-index:3; width:6px; height:6px; border-radius:50%; background:#fff; box-shadow:0 0 12px #a5ddff; animation:flow-particle 4.6s ease-in-out infinite; }.particle-one{left:31%;top:32%;}.particle-two{left:65%;top:65%;animation-delay:-2.3s}.stat-icon { display:grid; width:32px; height:32px; place-items:center; margin-bottom:15px; border:1px solid #a8c9e6; border-radius:8px; color:var(--blue); font-size:20px; font-style:normal; background:#f0f7fe; }.stats strong { font-size:clamp(45px,5.3vw,68px); }.stats-grid > div { min-height:190px; padding:30px 29px; transition:background .3s,transform .3s; }.stats-grid > div:hover { background:#f0f7ff; transform:translateY(-4px); }.footer { background:#061f40; border:0; color:#d5e9fa; padding:0; }.footer-top { display:flex; align-items:start; justify-content:space-between; padding:66px 0 52px; border-bottom:1px solid rgba(178,218,247,.22); }.footer .text-brand { color:white; font-size:24px; }.footer .text-brand small { color:#ff8b38; font-size:10px; }.footer-lead { margin:20px 0 0; color:#a9c6df; font-size:17px; }.footer-up { display:flex; gap:13px; align-items:center; padding:10px 0; color:white; text-decoration:none; font-size:13px; font-weight:700; border-bottom:1px solid #5e9bc9; }.footer-up:hover { color:#ff9c58; border-color:#ff9c58; }.footer-columns { display:grid; grid-template-columns:1.1fr 1.1fr 1fr; gap:50px; padding:48px 0 57px; }.footer-columns > div { display:flex; flex-direction:column; gap:11px; }.footer-title { margin:0 0 7px; color:#7fb5dd; font-size:10px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }.footer-columns a,.footer-columns span { color:#d5e9fa; text-decoration:none; font-size:14px; }.footer-columns a:hover { color:#ff9c58; }.footer-bottom { display:flex; justify-content:space-between; gap:20px; padding:20px 0; color:#83a9c9; font-size:11px; border-top:1px solid rgba(178,218,247,.22); }

.stats { background: #fff; border-bottom: 1px solid var(--line); }
.stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.stats-grid > div { min-height: 150px; padding: 32px 28px; border-right: 1px solid var(--line); display: grid; align-content: center; gap: 4px; }
.stats-grid > div:first-child { border-left: 1px solid var(--line); }
.stats strong { color: var(--blue); font-size: clamp(30px, 4vw, 50px); letter-spacing: -.06em; line-height: 1; }
.stats span { color: var(--muted); font-size: 12px; font-weight: 700; }
.contact-details { padding: 0; margin: 28px 0 0; list-style: none; color: #c6d9ea; font-size: 14px; line-height: 1.9; }
.contact-details li::before { content: '•'; color: var(--orange); padding-right: 8px; }
.lead-form { width: min(100%, 360px); gap: 12px; }
.lead-form label { width: 100%; display: grid; gap: 5px; color: #d9e9fa; font-size: 12px; font-weight: 700; }
.lead-form input,.lead-form textarea { width: 100%; border: 1px solid rgba(209,233,255,.35); border-radius: 7px; padding: 10px 11px; background: rgba(255,255,255,.07); color: #fff; font: inherit; }
.lead-form textarea { min-height: 76px; resize: vertical; }
.lead-form input::placeholder,.lead-form textarea::placeholder { color: #a7c0d8; }
.lead-form .button { border: 0; margin-top: 5px; cursor: pointer; }
.capabilities { background: #f7fafc; border-bottom: 1px solid var(--line); }.capability-intro { display: grid; grid-template-columns: 1fr .7fr; align-items: end; gap: 50px; margin-bottom: 46px; }.capability-intro > p { max-width: 430px; color: var(--muted); font-size: 17px; }.capability-grid { display: grid; grid-template-columns: repeat(3,1fr); border: 1px solid var(--line); }.capability-card { min-height: 260px; padding: 27px; background: #fff; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); position: relative; transition: .35s; }.capability-card:nth-child(3n) { border-right: 0; }.capability-card:nth-last-child(-n+3) { border-bottom: 0; }.capability-card:hover { background: var(--ink); transform: translateY(-5px); }.capability-index { display: block; color: var(--orange); font: 800 12px/1 ui-monospace,monospace; margin-bottom: 42px; }.capability-card h3 { font-size: 22px; letter-spacing: -.04em; margin-bottom: 7px; }.capability-card p { color: var(--muted); font-size: 14px; max-width: 280px; }.capability-card .tag { display: inline-block; margin-top: 14px; color: #7391aa; font-size: 9px; font-weight: 800; letter-spacing: .11em; }.capability-card:hover h3 { color: white; }.capability-card:hover p { color: #c7d8e8; }.work-model { background: var(--ink); color: white; position: relative; overflow: hidden; }.work-model::after { content:''; position:absolute; width:600px; height:600px; border:1px solid rgba(139,198,255,.14); border-radius:50%; right:-250px; top:-270px; }.work-model-layout { position:relative; z-index:1; display:grid; grid-template-columns:1fr .9fr; gap:110px; }.work-copy .overline { color:#a8d4ff; }.work-copy h2 { max-width:610px; }.work-copy p:last-child { color:#c7d8e8; font-size:17px; max-width:570px; }.work-points { border-top: 1px solid rgba(200,230,255,.25); }.work-points article { display:grid; grid-template-columns:56px 1fr; gap:14px; padding:23px 0; border-bottom:1px solid rgba(200,230,255,.25); }.work-points span { color:var(--orange); font:800 12px ui-monospace,monospace; }.work-points h3 { margin:0 0 5px; font-size:19px; }.work-points p { margin:0; color:#c7d8e8; font-size:14px; }
.solutions-band { position: relative; z-index: 2; padding: 48px 0; background: var(--orange); color: var(--ink); overflow: hidden; }.solutions-band .overline { color: var(--ink); margin-bottom: 17px; }.ticker { overflow:hidden; width:100%; }.solution-marquee { display:flex; width:max-content; align-items:center; gap:21px; padding-left:max(24px,calc((100vw - 1160px)/2)); white-space:nowrap; font-size:clamp(24px,3.4vw,45px); line-height:1; font-weight:850; letter-spacing:-.06em; animation: ticker-slide 30s linear infinite; will-change:transform; }.ticker:hover .solution-marquee { animation-play-state:paused; }.solution-marquee i { color:rgba(9,44,85,.55); font-size:.5em; }.problems { background:#0b315e; color:white; position:relative; overflow:hidden; }.problems::before { content:''; position:absolute; inset:0; opacity:.22; background-image:linear-gradient(rgba(132,201,255,.33) 1px,transparent 1px),linear-gradient(90deg,rgba(132,201,255,.33) 1px,transparent 1px); background-size:80px 80px; mask-image:linear-gradient(100deg,black,transparent); }.problems-layout { position:relative; z-index:1; display:grid; grid-template-columns:.83fr 1fr; gap:95px; }.problems-copy .overline { color:#9bd4ff; }.problems-copy h2 { max-width:540px; }.problems-copy p { color:#c5ddf3; max-width:490px; font-size:17px; }.dark-link { display:inline-block; margin-top:22px; }.problem-list { border-top:1px solid rgba(183,219,248,.28); }.problem-list article { display:grid; grid-template-columns:54px 1fr; gap:13px; padding:23px 0; border-bottom:1px solid rgba(183,219,248,.28); transition:.3s; }.problem-list article:hover { padding-left:12px; background:rgba(128,194,255,.08); }.problem-list span { color:var(--orange); font:800 12px ui-monospace,monospace; }.problem-list h3 { font-size:20px; margin:0 0 5px; }.problem-list p { color:#bfd7ec; margin:0; font-size:14px; }.faq { background:#eaf3fb; border-top:1px solid #cfdfed; }.faq-layout { display:grid; grid-template-columns:.8fr 1fr; gap:100px; }.faq-copy p:last-child { max-width:370px; color:var(--muted); font-size:16px; }.faq-list { border-top:1px solid #a8c1d6; }.faq details { border-bottom:1px solid #a8c1d6; padding:0; }.faq summary { cursor:pointer; list-style:none; display:flex; justify-content:space-between; gap:18px; padding:22px 0; font-size:18px; font-weight:760; letter-spacing:-.025em; }.faq summary::-webkit-details-marker { display:none; }.faq summary span { color:var(--blue); font-size:24px; font-weight:400; transition:transform .25s; }.faq details[open] summary span { transform:rotate(45deg); color:var(--orange); }.faq details p { max-width:640px; padding:0 0 22px; margin:0; color:var(--muted); font-size:15px; } @keyframes ticker-slide { to { transform:translateX(-50%); } }
.hero::before { content: ''; position: absolute; width: 680px; height: 680px; right: -220px; top: -250px; border: 1px solid rgba(174,222,255,.18); border-radius: 50%; box-shadow: 0 0 0 80px rgba(174,222,255,.035), 0 0 0 160px rgba(174,222,255,.025); animation: orbit 14s linear infinite; }
.hero::after { content: ''; position: absolute; width: 280px; height: 280px; left: 37%; bottom: -190px; border-radius: 50%; background: radial-gradient(circle,rgba(255,135,35,.32),transparent 67%); filter: blur(8px); }
.hero-copy,.system-panel,.hero-foot { z-index: 1; }
.hero-signals { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 33px; }
.hero-signals span { padding: 6px 9px; border: 1px solid rgba(204,232,255,.25); border-radius: 99px; color: #c7ddf4; font-size: 9px; font-weight: 750; letter-spacing: .08em; }
.hero-signals i { display: inline-block; width: 5px; height: 5px; border-radius: 50%; margin: 0 5px 1px 0; background: #70c7ff; animation: blink 2.4s ease-in-out infinite; }
.system-panel { transform: perspective(1000px) rotateY(-3deg) rotateX(2deg); transition: transform .55s cubic-bezier(.2,.7,.2,1), box-shadow .55s; }
.system-panel:hover { transform: perspective(1000px) rotateY(0) rotateX(0) translateY(-7px); box-shadow: 0 38px 85px rgba(0,20,58,.3); }
.node { animation: nodeFloat 4.2s ease-in-out infinite; }.node-b,.node-c { animation-delay: -1.7s; }.node-d { animation-delay: -2.8s; }
.pulse { position: absolute; left: 50%; top: 50%; width: 4px; height: 4px; margin: -2px; border-radius: 50%; background: #fff; box-shadow: 0 0 14px 5px #73c5ff; animation: route 3.8s linear infinite; }.pulse-two { animation-delay: -1.9s; }
.stats strong { display: block; }.stats-grid > div { position: relative; overflow: hidden; }.stats-grid > div::after { content: ''; position: absolute; inset: auto 0 0; height: 3px; background: linear-gradient(90deg,var(--orange),#ffc26b); transform: scaleX(0); transform-origin: left; transition: transform .6s; }.stats-grid > div:hover::after { transform: scaleX(1); }
.lead-form label { transition: color .2s; }.lead-form label:focus-within { color: #fff; }.lead-form input,.lead-form textarea { transition: border-color .25s,background .25s,transform .25s,box-shadow .25s; }.lead-form input:focus,.lead-form textarea:focus { outline: 0; border-color: #75c3ff; background: rgba(255,255,255,.12); transform: translateY(-1px); box-shadow: 0 0 0 4px rgba(117,195,255,.12); }.lead-form [aria-invalid='true'] { border-color: #ff9c58; box-shadow: 0 0 0 4px rgba(255,115,13,.15); }.form-status { min-height: 18px; margin: 0 !important; color: #b9d9f4 !important; font-size: 12px !important; }.lead-form button.is-sending { pointer-events: none; opacity: .8; }.lead-form button.is-sending .button-label::after { content: ''; display: inline-block; width: 10px; height: 10px; margin-left: 8px; border: 2px solid rgba(255,255,255,.5); border-top-color: white; border-radius: 50%; animation: spin .65s linear infinite; }
@keyframes orbit { to { transform: rotate(360deg); } } @keyframes blink { 50% { opacity: .25; transform: scale(.65); } } @keyframes nodeFloat { 50% { transform: translateY(-6px); } } @keyframes route { 0% { transform: translate(-130px,80px); opacity: 0; } 15%,80% { opacity: 1; } 100% { transform: translate(130px,-80px); opacity: 0; } } @keyframes spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .hero::before,.hero-signals i,.node,.pulse,.lead-form button.is-sending .button-label::after,.solution-marquee { animation: none; } .system-panel { transform: none; } }
@media (max-width: 760px) { .stats-grid { grid-template-columns: repeat(2, 1fr); } .stats-grid > div { min-height: 120px; padding: 22px 16px; } .stats-grid > div:nth-child(3) { border-left: 1px solid var(--line); } }
@media (max-width: 760px) { .capability-intro,.work-model-layout,.problems-layout,.faq-layout { grid-template-columns:1fr; gap:28px; }.capability-grid { grid-template-columns:1fr; }.capability-card,.capability-card:nth-child(3n) { min-height:0; border-right:0; }.capability-card:nth-last-child(-n+3) { border-bottom:1px solid var(--line); }.capability-card:last-child { border-bottom:0; }.capability-index { margin-bottom:20px; }.work-model { padding-top:76px; padding-bottom:76px; }.solutions-band { padding:34px 0; }.solution-marquee { gap:14px; font-size:28px; }.faq summary { font-size:16px; } }
@keyframes hero-enter { from { opacity:0; transform:translateY(18px); } to { opacity:1; transform:none; } }
@keyframes hero-art-reveal { from { opacity:0; transform:translateX(24px) scale(.97); } to { opacity:1; transform:none; } }
@keyframes orbit-spin { to { transform:translate(-50%,-50%) rotateX(62deg) rotate(360deg); } }
@keyframes card-pop { from { opacity:0; transform:translateY(10px) scale(.93); } to { opacity:1; transform:none; } }
@keyframes flow-particle { 0%,100% { transform:translate(0,0); opacity:.2; } 50% { transform:translate(115px,60px); opacity:1; } }
@media (max-width:760px){.hero-layout{grid-template-columns:1fr;min-height:530px}.hero-art{display:none}.flow-panel{transform:none}.flow-stage{height:275px}.flow-core{width:112px;height:112px}.flow-orbit.orbit-b{width:330px;height:330px}.flow-card{font-size:9px}.card-one{left:4%;top:35px}.card-two{right:3%;top:43px}.card-three{left:5%;bottom:35px}.card-four{right:3%;bottom:32px}.footer-top{padding:48px 0 37px}.footer-columns{grid-template-columns:1fr;gap:35px;padding:38px 0}.footer-bottom{display:grid;gap:7px;padding:18px 0}.stats-grid>div{min-height:145px;padding:20px 16px}.stat-icon{margin-bottom:10px}}
@media (prefers-reduced-motion:reduce){.hero::before,.hero-signals i,.node,.pulse,.lead-form button.is-sending .button-label::after,.solution-marquee,.hero-copy .eyebrow,.hero-copy h1,.hero-copy .hero-lead,.hero-copy .hero-actions,.hero-copy .hero-signals,.flow-orbit,.flow-core span,.flow-card,.flow-particle,.hero-art{animation:none;opacity:1;transform:none}.system-panel{transform:none}}
.footer .site-logo{height:64px}
@media(max-width:760px){.site-logo{height:40px;max-width:190px}.footer .site-logo{height:49px}}
@media(max-width:760px){.top-strip-inner{height:29px;font-size:9px;letter-spacing:.045em}.top-location{display:none}.nav{height:68px}.menu-toggle{display:inline-flex;align-items:center;gap:10px;padding:7px 8px 7px 12px;border:1px solid #c4d9ea;border-radius:999px;background:#fff;color:#073b78;font:700 12px/1 inherit;box-shadow:0 3px 10px rgba(5,49,97,.08);transition:.25s}.menu-icon{width:27px;height:27px;display:grid;place-content:center;gap:4px;border-radius:50%;background:#073b78}.menu-icon i{display:block;width:12px;height:1.5px;background:#fff;transition:transform .25s,opacity .2s}.site-header.mobile-open .menu-toggle{color:#fff;background:#073b78;border-color:#073b78}.site-header.mobile-open .menu-icon{background:#ff7a14}.site-header.mobile-open .menu-icon i:first-child{transform:translateY(5.5px) rotate(45deg)}.site-header.mobile-open .menu-icon i:nth-child(2){opacity:0}.site-header.mobile-open .menu-icon i:last-child{transform:translateY(-5.5px) rotate(-45deg)}.nav-links{display:flex;visibility:hidden;opacity:0;pointer-events:none;position:absolute;z-index:20;top:calc(100% + 9px);left:0;right:0;padding:12px;background:#062d5d;border:1px solid rgba(154,207,249,.28);border-radius:14px;box-shadow:0 20px 50px rgba(1,26,62,.32);flex-direction:column;align-items:stretch;gap:4px;transform:translateY(-8px) scale(.98);transition:opacity .25s,transform .25s,visibility .25s}.nav-links.open{display:flex;visibility:visible;opacity:1;pointer-events:auto;transform:none}.nav-links > a:not(.nav-cta){padding:14px 13px;color:#e6f4ff;font-size:15px;border-radius:8px}.nav-links > a:not(.nav-cta):hover{color:white;background:rgba(112,192,255,.13)}.nav-links > a:not(.nav-cta)::after{left:13px;right:auto;bottom:8px;width:30px;background:#ff8b32}.nav-links .nav-cta{justify-content:center;margin-top:5px;padding:13px 16px;background:#ff7410;color:#fff;font-size:14px}.nav-links .nav-cta:hover{background:#ff8b2d}.site-header.mobile-open{box-shadow:0 16px 35px rgba(5,43,85,.2)}}
@media(max-width:760px){.top-desktop{display:none}.top-mobile{display:inline;color:#c4def3;white-space:nowrap}.top-strip p{display:flex;align-items:center;overflow:hidden}.top-strip b{margin-left:0}}
@media(max-width:760px){.intro-layout{grid-template-columns:1fr;gap:12px}.intro .section-label{min-height:0;padding-top:0;display:grid;grid-template-columns:80px 1fr;align-items:center;column-gap:13px}.intro .section-label b{font-size:72px;grid-row:span 2}.intro .section-label span{margin:0;font-size:9px}.intro .section-label i{width:45px;margin:9px 0 0}.intro-copy{padding-top:0}.intro-copy h2{font-size:39px}.intro-copy>p:last-of-type{font-size:16px}.intro-badges{margin-top:26px}.intro-badges span{font-size:11px}.intro::before{width:420px;height:420px;left:-250px;bottom:-240px}.intro::after{mask-image:none;opacity:.4}}
.hero-art{background-image:none!important}.capability-intro{grid-template-columns:minmax(0,1fr) minmax(250px,.65fr) minmax(180px,.42fr)}.capability-art{align-self:end;margin:0;position:relative;z-index:1}.capability-art img{display:block;width:100%;height:auto;filter:drop-shadow(0 18px 22px rgba(4,58,111,.16));transition:transform .5s cubic-bezier(.2,.7,.2,1)}.capability-art:hover img{transform:translateY(-8px) rotate(-1deg)}
@media(max-width:760px){.capability-intro{grid-template-columns:1fr}.capability-art{max-width:260px;margin:8px 0 0 auto}}

/* Ecosistema SAP: dar protagonismo visual al gráfico y mantener la bajada con el título. */
.capability-intro{grid-template-columns:minmax(0,1fr) minmax(440px,.92fr);align-items:center;gap:clamp(42px,6vw,104px);margin-bottom:56px}
.capability-copy{max-width:700px}
.capability-copy h2{max-width:680px;margin-bottom:22px}
.capability-copy>p:last-child{max-width:570px;margin:0;color:var(--muted);font-size:18px;line-height:1.65}
.capability-art{width:100%;max-width:620px;justify-self:end;align-self:center;padding:18px;isolation:isolate}
.capability-art::before{content:"";position:absolute;z-index:-1;inset:3% -6%;border-radius:50%;background:radial-gradient(circle,rgba(56,154,255,.16) 0,rgba(56,154,255,.07) 40%,transparent 70%)}
.capability-art img{width:100%;max-width:620px;filter:drop-shadow(0 28px 30px rgba(4,58,111,.22))}
@media(max-width:960px){.capability-intro{grid-template-columns:minmax(0,1fr) minmax(300px,.75fr);gap:38px}.capability-copy h2{font-size:clamp(36px,4.2vw,54px)}}
@media(max-width:760px){.capability-intro{grid-template-columns:1fr}.capability-art{max-width:420px;margin:8px auto 0;padding:8px}.capability-copy>p:last-child{font-size:16px}}

/* Servicios: numeración de alto contraste y hover con presencia. */
.service-card{grid-template-columns:92px 1fr 38px;padding:29px 8px;transition:padding .28s ease,background .28s ease,box-shadow .28s ease,color .28s ease}
.service-card>span{color:var(--orange);font-size:17px;font-weight:850;letter-spacing:.04em}
.service-card:hover{padding-left:24px;background:linear-gradient(105deg,#062b57 0%,#0754a4 100%);box-shadow:0 16px 32px rgba(5,54,111,.18)}
.service-card:hover h3{color:#fff}
.service-card:hover p{color:#d9ecff}
.service-card:hover>span{color:#ff9b4d}
.service-card:hover>b{color:#fff}
@media(max-width:760px){.service-card{grid-template-columns:48px 1fr 24px;padding:22px 0}.service-card>span{font-size:15px}.service-card:hover{padding-left:14px;padding-right:12px}}

/* Índices de los bloques 03 y 04: legibles y deliberadamente protagonistas. */
.problem-list article{grid-template-columns:72px 1fr;gap:16px}
.problem-list span{font-size:17px;font-weight:850;letter-spacing:.05em}
.capability-index{font-size:22px;font-weight:900;letter-spacing:.04em;margin-bottom:36px}
@media(max-width:760px){.problem-list article{grid-template-columns:52px 1fr;gap:12px}.problem-list span{font-size:15px}.capability-index{font-size:19px;margin-bottom:22px}}

/* Footer más compacto y con la firma visible sobre el fondo oscuro. */
.footer-top{padding:52px 0 32px}
.footer-lead{margin:12px 0 0;color:#ff9c58;font-weight:650}
.footer-columns{padding:40px 0 44px}

/* El bloque de desafíos usa iconos para no repetir índices numéricos. */
.problem-list article{grid-template-columns:72px 1fr}
.problem-list .problem-icon{display:grid;width:34px;height:34px;place-items:center;color:var(--orange);border:1px solid rgba(255,156,88,.52);border-radius:9px;background:rgba(255,116,13,.08)}
.problem-list .problem-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.problem-list article:hover .problem-icon{color:#fff;border-color:#fff;background:rgba(255,255,255,.13)}
@media(max-width:760px){.footer-top{padding:42px 0 28px}.footer-columns{padding:34px 0 38px}.problem-list article{grid-template-columns:52px 1fr}.problem-list .problem-icon{width:30px;height:30px}.problem-list .problem-icon svg{width:17px;height:17px}}

/* Beneficios: íconos en lugar de otra secuencia 01–04. */
.steps li{grid-template-columns:60px 1fr;align-items:start}
.steps .benefit-icon{display:grid;width:36px;height:36px;place-items:center;color:var(--orange);border:1px solid rgba(255,116,13,.45);border-radius:10px;background:rgba(255,116,13,.06)}
.steps .benefit-icon svg{width:20px;height:20px;fill:none!important;stroke:#ff740d!important;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.steps .benefit-icon svg *{fill:none!important;stroke:#ff740d!important}
.steps li:hover .benefit-icon{background:rgba(255,116,13,.12);border-color:var(--orange)}
@media(max-width:760px){.steps li{grid-template-columns:50px 1fr}.steps .benefit-icon{width:31px;height:31px}.steps .benefit-icon svg{width:17px;height:17px}}

.lead-form .honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.form-status .form-success{color:#92efb8;font-weight:700}
.form-status .form-error{color:#ffb17a;font-weight:700}
@media(max-width:760px){.menu-toggle::after{display:none}.menu-toggle>.menu-label{display:block;width:auto;height:auto;background:transparent;content:normal}.menu-toggle>.menu-icon{display:grid;width:27px;height:27px;background:#073b78}.menu-toggle>.menu-icon::after{display:none}}

/* ================================================================
   RESOLUTOR 2026 — ajustes de posicionamiento y componentes propios
   ================================================================ */
.landing-brand{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-decoration:none;line-height:1}.landing-brand .brand-kicker{display:block;color:#54789e;font-size:8px;font-weight:800;letter-spacing:.24em}.landing-brand strong{display:block;color:#092c55;font-size:22px;font-weight:900;letter-spacing:.08em}.landing-brand small{display:block;margin-top:5px;color:#0065c8;font-size:8px;font-weight:700;letter-spacing:.12em;text-transform:none}.landing-brand small b{color:#092c55;letter-spacing:.16em}.footer .landing-brand .brand-kicker{color:#9ec2e5}.footer .landing-brand strong{color:#fff;font-size:26px}.footer .landing-brand small{color:#ffb36f}.footer .landing-brand small b{color:#fff}

@media(min-width:961px){
  .hero-layout{grid-template-columns:minmax(0,1fr) minmax(430px,.82fr);gap:58px;min-height:560px}
  .hero-copy{max-width:650px}
  .hero-art{position:relative;right:auto;top:auto;width:100%;height:auto;max-width:none;margin:0;background:none!important;filter:none;opacity:0;transform:translateX(24px) scale(.97);animation:hero-art-reveal 1s cubic-bezier(.2,.7,.2,1) .18s forwards}
  .hero-art .system-panel{width:100%}
}
@media(max-width:960px){.hero-art{display:none}.hero-layout{grid-template-columns:1fr;min-height:540px}}
.flow-core small{display:block;margin-top:4px;color:#0c4e91;font-size:9px;font-weight:800;letter-spacing:.04em}

.stats strong.stat-word{display:block;max-width:230px;font-size:clamp(26px,3vw,39px);line-height:1.02;letter-spacing:-.045em}

.capability-visual{justify-self:end;width:min(100%,500px);padding:28px;border:1px solid #c5dced;border-radius:16px;background:linear-gradient(145deg,#fff,#eaf5ff);box-shadow:0 22px 45px rgba(8,61,111,.1)}
.capability-visual span,.capability-visual strong{display:block}
.capability-visual span{color:#5c7892;font-size:9px;font-weight:850;letter-spacing:.15em}
.capability-visual strong{margin-top:5px;color:#073b78;font-size:20px;letter-spacing:-.035em}
.capability-visual i{display:block;width:2px;height:27px;margin:9px 0 9px 8px;background:linear-gradient(#ff740d,#4ea7f5);border-radius:5px}

.case-studies{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.case-heading{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;margin-bottom:30px}
.case-heading[data-index]::before{content:attr(data-index);position:absolute;z-index:-1;top:-.52em;left:-.1em;color:rgba(0,101,200,.09);font-size:clamp(92px,10vw,162px);font-weight:900;letter-spacing:-.11em;line-height:.8}
.case-heading p:last-child{max-width:720px;color:var(--muted);font-size:17px}
.case-controls{display:flex;align-items:center;gap:10px}.case-nav{width:48px;height:48px;border:1px solid #cfe1ef;border-radius:50%;background:#f7fbff;color:#24577f;font-size:30px;line-height:1;font-weight:500;display:grid;place-items:center;cursor:pointer;transition:transform .22s,background .22s,border-color .22s,color .22s}.case-nav:hover{transform:translateY(-2px);background:#fff;border-color:#9cc3e2;color:#073b78}.case-nav:disabled{opacity:.42;cursor:not-allowed;transform:none}.case-strip{position:relative;overflow-x:auto;overflow-y:hidden;padding:6px 2px 4px;scroll-snap-type:x proximity;scrollbar-width:none;-ms-overflow-style:none}.case-strip::-webkit-scrollbar{display:none}.case-grid{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(320px,360px);gap:18px;width:max-content}
.case-card{min-height:330px;padding:30px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(150deg,#fff,#f7fbff);transition:transform .28s,box-shadow .28s,border-color .28s;scroll-snap-align:start}
.case-card:hover{transform:translateY(-6px);border-color:#a8cae7;box-shadow:0 18px 40px rgba(8,61,111,.1)}
.case-type{display:inline-block;margin-bottom:34px;color:#0065c8;font-size:9px;font-weight:850;letter-spacing:.16em}
.case-card h3{font-size:24px;line-height:1.12;letter-spacing:-.04em;margin-bottom:14px}
.case-card p{color:var(--muted);font-size:14px;line-height:1.65}
.case-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:24px}
.case-tags span{padding:6px 8px;border-radius:999px;background:#e7f3fd;color:#24577f;font-size:9px;font-weight:800;letter-spacing:.04em}

.lead-form select{width:100%;border:1px solid rgba(209,233,255,.35);border-radius:7px;padding:10px 11px;background:#173d68;color:#fff;font:inherit;transition:border-color .25s,background .25s,transform .25s,box-shadow .25s}
.lead-form select:focus{outline:0;border-color:#75c3ff;background:#1b4778;transform:translateY(-1px);box-shadow:0 0 0 4px rgba(117,195,255,.12)}
.lead-form select option{background:#fff;color:#092c55}

.footer-bottom span:nth-child(2){max-width:540px;text-align:center}

@media(max-width:760px){
  .landing-brand strong{font-size:19px}.landing-brand .brand-kicker{font-size:7px;letter-spacing:.2em}.landing-brand small{font-size:7px;letter-spacing:.1em}
  .capability-visual{justify-self:stretch;padding:22px}.capability-visual strong{font-size:18px}
  .case-heading{grid-template-columns:1fr}.case-controls{width:max-content;max-width:100%}.case-nav{width:44px;height:44px;font-size:26px}.case-grid{grid-auto-columns:minmax(280px,86vw)}.case-card{min-height:0;padding:25px}.case-type{margin-bottom:22px}
  .footer-bottom span:nth-child(2){text-align:left}
}


/* V4 refinements */
.landing-brand{gap:1px}
.landing-brand .brand-kicker{font-size:8px;letter-spacing:.3em;color:#7a95af}
.landing-brand strong{font-size:24px;letter-spacing:.1em}
.landing-brand small{margin-top:6px;font-size:8px;letter-spacing:.14em}
.hero-copy h1{max-width:700px}
.hero-lead{max-width:680px}
.stats-grid>div span{max-width:18ch;margin-inline:auto}
.contact-details li{max-width:42ch}
@media(max-width:760px){
  .landing-brand strong{font-size:18px}
  .landing-brand .brand-kicker{font-size:7px}
}


/* V7 - commercial case studies */
.case-card{display:flex;flex-direction:column;min-height:410px;padding:24px 24px 20px}
.case-card-featured{background:linear-gradient(150deg,#f8fcff,#eef7ff);border-color:#aacce8}
.case-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.case-top .case-type{margin:0}
.case-number{font:800 11px/1 ui-monospace,monospace;color:#8aaac5;letter-spacing:.1em}
.case-card h3{min-height:56px;margin-bottom:16px;font-size:21px;line-height:1.2}
.case-story{display:grid;gap:0;margin:0}
.case-story>div{display:grid;grid-template-columns:74px 1fr;gap:12px;padding:10px 0;border-top:1px solid #dbe8f2}
.case-story dt{margin:0;color:#0065c8;font-size:9px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.case-story dd{margin:0;color:#4f6f8d;font-size:13px;line-height:1.45}
.case-card .case-tags{margin-top:auto;padding-top:16px}
@media(max-width:760px){
  .case-card{min-height:0;padding:22px 18px}
  .case-card h3{min-height:0;font-size:20px}
  .case-story>div{grid-template-columns:1fr;gap:4px;padding:9px 0}
  .case-card .case-tags{padding-top:14px}
}
