:root {
  --ink: #071525;
  --ink-2: #0d2034;
  --paper: #f3f5f4;
  --white: #fff;
  --line: rgba(9, 30, 49, .16);
  --muted: #586774;
  --blue: #1778d1;
  --cyan: #68d4df;
  --gold: #d7ad69;
  --radius: 1.25rem;
  --shadow: 0 2rem 5rem rgba(0, 15, 30, .14);
  --container: 1240px;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 5.5rem; }
body { margin: 0; overflow-x: hidden; color: var(--ink); background: var(--paper); font-family: Inter, Aptos, "Segoe UI", Arial, sans-serif; font-size: 1rem; line-height: 1.65; -webkit-font-smoothing: antialiased; }
main, section, .container, [class*="-grid"] > *, [class*="-head"] > * { min-width: 0; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid var(--cyan); outline-offset: 4px; }
.container { width: min(calc(100% - 2rem), var(--container)); margin-inline: auto; }
.section { padding: clamp(5rem, 10vw, 9rem) 0; }
.section-dark, .section-ink { color: var(--white); background: var(--ink); }
.section-light { background: var(--paper); }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { line-height: 1.08; letter-spacing: -.04em; }
h1 { max-width: 13ch; margin-bottom: 1.5rem; font-size: clamp(2.8rem, 8vw, 6.7rem); font-weight: 580; }
h2 { margin-bottom: 1.5rem; font-size: clamp(2.25rem, 5.5vw, 4.6rem); font-weight: 560; }
h3 { font-size: clamp(1.2rem, 2vw, 1.55rem); }
p { color: var(--muted); }
.section-dark p, .section-ink p, .international p, .cta-band p { color: #aab8c4; }
.eyebrow { display: flex; align-items: center; gap: .7rem; margin-bottom: 1.5rem; color: var(--cyan) !important; font-size: .74rem; font-weight: 750; letter-spacing: .14em; text-transform: uppercase; }
.eyebrow span { width: 2rem; height: 1px; background: currentColor; }
.eyebrow.dark { color: #147a8e !important; }
.button { display: inline-flex; min-height: 3.25rem; align-items: center; justify-content: center; gap: 1rem; padding: .85rem 1.35rem; border: 1px solid var(--cyan); border-radius: 999px; color: var(--ink); background: var(--cyan); font-weight: 720; line-height: 1.2; cursor: pointer; transition: transform .25s, color .25s, background .25s, box-shadow .25s; }
.button:hover { transform: translateY(-2px); background: #8ae6ee; box-shadow: 0 .8rem 2.5rem rgba(104, 212, 223, .22); }
.button-small { min-height: 2.65rem; padding: .65rem 1rem; font-size: .85rem; }
.button-dark { color: #fff; border-color: var(--ink); background: var(--ink); }
.button-dark:hover { background: var(--ink-2); }
.button-light { color: var(--ink); border-color: #fff; background: #fff; }
.text-link { display: inline-flex; align-items: center; gap: .75rem; min-height: 3rem; border-bottom: 1px solid rgba(255,255,255,.35); color: #fff; font-weight: 650; }
.text-link span { color: var(--cyan); }
.skip-link { position: fixed; z-index: 1000; top: .5rem; left: .5rem; padding: .75rem 1rem; color: #fff; background: var(--ink); transform: translateY(-150%); }
.skip-link:focus { transform: none; }

.site-header { position: fixed; z-index: 100; top: 0; left: 0; width: 100%; color: #fff; transition: background .3s, box-shadow .3s; }
.site-header.scrolled, .menu-open .site-header { background: rgba(7, 21, 37, .96); box-shadow: 0 1px 0 rgba(255,255,255,.1); backdrop-filter: blur(14px); }
.header-inner { display: flex; min-height: 4.75rem; align-items: center; justify-content: space-between; gap: 1rem; }
.brand { position: relative; z-index: 2; display: flex; width: 180px; height: 54px; align-items: center; overflow: hidden; }
.brand::after { position: absolute; inset: 0; background: url("../images/logo.png") center / contain no-repeat; clip-path: polygon(44% 20%, 100% 20%, 100% 68%, 44% 68%); content: ""; filter: brightness(0) saturate(100%) invert(84%) sepia(29%) saturate(933%) hue-rotate(132deg) brightness(94%) contrast(90%); pointer-events: none; }
.brand img { width: 100%; height: 100%; object-fit: contain; filter: drop-shadow(0 2px 8px rgba(0,0,0,.28)); }
.menu-toggle { position: relative; z-index: 2; display: grid; width: 2.8rem; height: 2.8rem; place-content: center; gap: .42rem; border: 1px solid rgba(255,255,255,.28); border-radius: 50%; color: #fff; background: transparent; cursor: pointer; }
.menu-toggle span { width: 1.1rem; height: 1px; background: currentColor; transition: transform .2s; }
.menu-open .menu-toggle span:first-child { transform: translateY(4px) rotate(45deg); }
.menu-open .menu-toggle span:last-child { transform: translateY(-3px) rotate(-45deg); }
.main-nav { position: fixed; inset: 0; display: flex; visibility: hidden; flex-direction: column; justify-content: center; padding: 6rem 2rem 8rem; overflow-y: auto; color: #fff; background: var(--ink); opacity: 0; transform: translateY(-1rem); transition: opacity .25s, transform .25s, visibility .25s; }
.menu-open { overflow: hidden; }
.menu-open .main-nav { visibility: visible; opacity: 1; transform: none; }
.main-nav a { padding: .5rem 0; font-size: clamp(1.45rem, 6vw, 2.25rem); }
.mobile-langs { display: flex; gap: 1rem; margin-top: 1.5rem; }
.mobile-langs a { color: #8296a6; font-size: .8rem; font-weight: 750; }
.mobile-langs a[aria-current="true"] { color: var(--cyan); }
.header-actions { display: none; }

.hero { position: relative; min-height: 100svh; padding: 7rem 0 2rem; overflow: hidden; background: radial-gradient(circle at 80% 20%, #153d63 0, transparent 36%), linear-gradient(140deg, #071525 20%, #0b2136 100%); }
.hero::after { position: absolute; right: -15%; bottom: -35%; width: 55rem; height: 55rem; border: 1px solid rgba(104,212,223,.12); border-radius: 50%; content: ""; }
.hero-orbit { position: absolute; top: 12%; right: -8rem; width: 28rem; height: 28rem; border: 1px solid rgba(104,212,223,.18); border-radius: 50%; }
.hero-orbit::before, .hero-orbit::after { position: absolute; inset: 3rem; border: inherit; border-radius: inherit; content: ""; }
.hero-orbit::after { inset: 7rem; }
.hero-grid { position: relative; z-index: 1; display: grid; gap: 2.5rem; align-items: center; }
.hero-copy { max-width: 70rem; padding-top: 2rem; }
.hero-copy h1 { max-width: 14ch; }
.hero-lead { max-width: 41rem; margin-bottom: 2.1rem; font-size: clamp(1.08rem, 2vw, 1.3rem); }
.button-row { display: flex; flex-wrap: wrap; gap: 1rem 1.5rem; align-items: center; }
.hero-visual { max-width: 32rem; margin-inline: auto; }
.photo-frame { position: relative; padding: .6rem; border: 1px solid rgba(255,255,255,.2); border-radius: 12rem 12rem 1.5rem 1.5rem; background: linear-gradient(155deg, rgba(255,255,255,.12), rgba(255,255,255,.03)); box-shadow: var(--shadow); }
.photo-frame img { width: 100%; aspect-ratio: 4 / 5; border-radius: 11.5rem 11.5rem 1rem 1rem; object-fit: cover; object-position: center 20%; }
.photo-label { position: absolute; right: -.5rem; bottom: 1.4rem; display: grid; min-width: 12rem; padding: .8rem 1rem; border-left: 2px solid var(--cyan); color: #fff; background: rgba(7,21,37,.9); backdrop-filter: blur(10px); }
.photo-label span { color: #aab8c4; font-size: .75rem; }
.hero-system { position: relative; width: min(100%, 34rem); aspect-ratio: 1; margin-inline: auto; isolation: isolate; }
.hero-system::before { position: absolute; z-index: -2; inset: 12%; border-radius: 50%; background: radial-gradient(circle, rgba(23,120,209,.28), rgba(104,212,223,.05) 52%, transparent 70%); filter: blur(1.2rem); content: ""; }
.system-grid { position: absolute; z-index: -1; inset: 7%; border: 1px solid rgba(104,212,223,.1); border-radius: 2rem; background-image: linear-gradient(rgba(104,212,223,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(104,212,223,.06) 1px, transparent 1px); background-size: 2.4rem 2.4rem; transform: rotate(8deg); mask-image: radial-gradient(circle, #000 28%, transparent 74%); }
.hero-system svg { width: 100%; height: 100%; overflow: visible; animation: system-float 7s ease-in-out infinite; }
.system-ring { fill: none; stroke: rgba(104,212,223,.17); stroke-width: 1; stroke-dasharray: 5 10; transform-origin: 310px 310px; }
.ring-one { animation: ring-spin 45s linear infinite; }
.ring-two { animation: ring-spin 32s linear infinite reverse; }
.system-path { fill: none; stroke: url(#networkLine); stroke-width: 1.8; stroke-linecap: round; stroke-dasharray: 8 10; animation: network-flow 16s linear infinite; }
.path-b { stroke-width: 1; opacity: .55; animation-direction: reverse; }
.system-node circle { fill: rgba(10,34,55,.94); stroke: rgba(104,212,223,.48); stroke-width: 1.5; }
.system-node text { fill: #d7e7ed; font-size: 12px; font-weight: 750; letter-spacing: 1.2px; text-anchor: middle; }
.system-node { transform-box: fill-box; transform-origin: center; animation: node-pulse 5s ease-in-out infinite; }
.node-two, .node-five { animation-delay: -1.5s; }
.node-three, .node-six { animation-delay: -3s; }
.system-core circle:first-child { fill: url(#networkCore); stroke: rgba(104,212,223,.75); stroke-width: 2; filter: drop-shadow(0 0 22px rgba(23,120,209,.45)); }
.system-core .core-line { fill: none; stroke: rgba(255,255,255,.2); stroke-width: 1; stroke-dasharray: 3 7; }
.system-core text { fill: #fff; font-size: 29px; font-weight: 780; letter-spacing: 2px; text-anchor: middle; }
.system-core .core-sub { fill: var(--cyan); font-size: 9px; letter-spacing: 3.5px; }
.system-caption { position: absolute; right: 3%; bottom: 8%; display: flex; align-items: center; gap: .65rem; padding: .55rem .75rem; border: 1px solid rgba(255,255,255,.14); border-radius: 999px; color: #aabac6; background: rgba(7,21,37,.72); backdrop-filter: blur(8px); font-size: .62rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.system-caption span { width: .4rem; height: .4rem; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 0 .3rem rgba(104,212,223,.12); }
@keyframes system-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }
@keyframes ring-spin { to { transform: rotate(360deg); } }
@keyframes network-flow { to { stroke-dashoffset: -180; } }
@keyframes node-pulse { 0%, 100% { opacity: .75; } 50% { opacity: 1; } }
.facts { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(2, 1fr); margin-top: 3rem; border-top: 1px solid rgba(255,255,255,.16); }
.fact { padding: 1.2rem .5rem; border-bottom: 1px solid rgba(255,255,255,.12); }
.fact strong, .fact span { display: block; }
.fact strong { color: #fff; font-size: clamp(1.45rem, 4vw, 2.2rem); font-weight: 560; }
.fact span { max-width: 10rem; color: #92a4b3; font-size: .72rem; line-height: 1.4; }

.split-intro, .section-head { display: grid; gap: 1.5rem; margin-bottom: 3rem; }
.split-intro h2, .section-head h2 { max-width: 13ch; }
.split-intro > p, .section-head > p { max-width: 42rem; font-size: 1.08rem; }
.needs-showcase { position: relative; overflow: hidden; background: linear-gradient(180deg, #edf3f2, #f8f9f8); }
.needs-showcase::before { position: absolute; top: -16rem; left: -16rem; width: 38rem; height: 38rem; border: 1px solid rgba(22,131,150,.1); border-radius: 50%; box-shadow: 0 0 0 5rem rgba(22,131,150,.025), 0 0 0 10rem rgba(22,131,150,.018); content: ""; }
.needs-top { position: relative; display: grid; gap: 3rem; align-items: center; margin-bottom: 3rem; }
.needs-copy h2 { max-width: 13ch; }
.needs-copy > p:last-child { max-width: 44rem; font-size: 1.08rem; }
.needs-visual { position: relative; }
.needs-visual::before { position: absolute; inset: 1rem -1rem -1rem 1rem; border: 1px solid rgba(22,131,150,.24); border-radius: var(--radius); content: ""; }
.needs-visual picture { position: relative; display: block; }
.needs-visual img { position: relative; width: 100%; aspect-ratio: 16 / 9; border-radius: var(--radius); object-fit: cover; box-shadow: var(--shadow); transition: filter .4s, transform .6s; }
.needs-visual:hover img { filter: saturate(1.06); transform: translateY(-3px); }
.needs-network { position: absolute; right: 1rem; bottom: 1rem; left: 1rem; display: grid; grid-template-columns: minmax(0,1fr) 1.6rem minmax(0,1fr) 1.6rem minmax(0,1fr); align-items: center; padding: .65rem; border: 1px solid rgba(255,255,255,.25); border-radius: .8rem; color: #fff; background: rgba(7,21,37,.88); backdrop-filter: blur(10px); }
.needs-network span { display: grid; min-height: 2.6rem; place-content: center; padding: .35rem; border-radius: .5rem; background: rgba(104,212,223,.09); font-size: .62rem; font-weight: 780; line-height: 1.2; text-align: center; }
.needs-network b { position: relative; height: 1px; overflow: hidden; background: rgba(104,212,223,.35); }
.needs-network b::after { position: absolute; top: -.18rem; left: -.3rem; width: .36rem; height: .36rem; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 .7rem rgba(104,212,223,.9); content: ""; animation: needs-travel 2.7s ease-in-out infinite; }
.needs-network b:nth-of-type(2)::after { animation-delay: -1.35s; }
@keyframes needs-travel { 0%, 12% { left: -.3rem; opacity: 0; } 25%, 75% { opacity: 1; } 90%, 100% { left: calc(100% - .05rem); opacity: 0; } }
.needs-grid { position: relative; display: grid; gap: 1rem; }
.need-card { position: relative; min-height: 18rem; padding: 1.5rem; overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); background: rgba(255,255,255,.78); box-shadow: 0 1rem 3rem rgba(7,21,37,.045); transition: border-color .25s, box-shadow .25s, transform .25s; }
.need-card:hover { border-color: rgba(22,131,150,.48); box-shadow: 0 1.4rem 3rem rgba(7,21,37,.09); transform: translateY(-3px); }
.need-card > div { display: flex; align-items: center; justify-content: space-between; }
.need-card > div span { color: #168396; font-size: .7rem; font-weight: 800; }
.need-card > div i { width: .55rem; height: .55rem; border-radius: 50%; background: #168396; box-shadow: 0 0 0 .3rem rgba(22,131,150,.09); animation: need-pulse 3s ease-in-out infinite; }
.need-card:nth-child(2n) > div i { animation-delay: -1s; }.need-card:nth-child(3n) > div i { animation-delay: -2s; }
@keyframes need-pulse { 0%, 100% { opacity: .45; transform: scale(.8); } 50% { opacity: 1; transform: scale(1.2); box-shadow: 0 0 0 .55rem rgba(22,131,150,.045); } }
.need-card h3 { margin: 2.5rem 0 .8rem; font-size: clamp(1.15rem, 2vw, 1.4rem); }
.need-card p { margin-bottom: 0; font-size: .9rem; }

.section-ink { background: linear-gradient(155deg, #071525, #0d253c); }
.services-head { align-items: center; }
.services-side > p { max-width: 39rem; }
.services-motion { width: min(100%, 32rem); margin-top: .5rem; }
.services-motion svg { display: block; width: 100%; overflow: visible; }
.motion-link { fill: none; stroke: url(#networkLine); stroke: var(--cyan); stroke-width: 1.5; stroke-linecap: round; stroke-dasharray: 5 8; opacity: .6; animation: service-flow 8s linear infinite; }
.motion-link-a { animation-direction: reverse; }
.motion-orbit { fill: none; stroke: rgba(104,212,223,.19); stroke-width: 1; stroke-dasharray: 3 7; transform-origin: 260px 96px; animation: ring-spin 18s linear infinite; }
.motion-hub circle { fill: rgba(23,120,209,.24); stroke: var(--cyan); stroke-width: 1.5; }
.motion-hub path, .motion-satellite path, .motion-satellite rect, .motion-satellite circle:not(:first-child) { fill: none; stroke: #dcecf0; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.motion-satellite > circle:first-child { fill: rgba(255,255,255,.035); stroke: rgba(104,212,223,.5); stroke-width: 1.3; }
.motion-satellite { animation: service-node 4s ease-in-out infinite; transform-box: fill-box; transform-origin: center; }
.satellite-people { animation-delay: -1.3s; }
.satellite-org { animation-delay: -2.6s; }
@keyframes service-flow { to { stroke-dashoffset: 104; } }
@keyframes service-node { 0%, 100% { opacity: .65; } 50% { opacity: 1; } }
.service-grid { display: grid; gap: 1px; overflow: hidden; border: 1px solid rgba(255,255,255,.12); border-radius: var(--radius); background: rgba(255,255,255,.12); }
.service-card { position: relative; min-height: 17rem; padding: 1.7rem; background: #0b1b2d; transition: background .25s, transform .25s; }
.service-card:hover { z-index: 1; background: #102b44; transform: translateY(-3px); }
.service-card > span { color: var(--cyan); font-size: .75rem; font-weight: 750; }
.service-card h3 { max-width: 13rem; margin: 3rem 0 1rem; }
.service-card p { margin: 0; font-size: .92rem; }
.service-card i { position: absolute; top: 1.5rem; right: 1.5rem; color: rgba(255,255,255,.35); font-style: normal; }

.why-grid { display: grid; gap: 3rem; }
.why-sticky > p:last-child { max-width: 34rem; font-size: 1.08rem; }
.advantage-list { border-top: 1px solid var(--line); }
.advantage { display: grid; grid-template-columns: 2.5rem 1fr; align-items: center; gap: 1rem; padding: 1.4rem 0; border-bottom: 1px solid var(--line); }
.advantage span { color: #168396; font-size: .75rem; font-weight: 750; }
.advantage p { margin: 0; color: var(--ink); font-size: clamp(1.05rem, 2vw, 1.28rem); font-weight: 620; }

.about { background: #fff; }
.about-grid { display: grid; gap: 3rem; align-items: center; }
.about-photo { position: relative; }
.about-photo::before { position: absolute; z-index: 0; top: -1rem; right: -1rem; bottom: 1rem; left: 1rem; border-radius: 1rem; background: #dce9eb; content: ""; }
.about-photo picture { position: relative; z-index: 1; display: block; }
.about-photo img { position: relative; z-index: 1; width: 100%; aspect-ratio: 4 / 3; border-radius: 1rem; object-fit: cover; object-position: center 35%; }
.experience-badge { position: absolute; z-index: 2; right: -1rem; bottom: -1rem; display: flex; width: 8.5rem; height: 8.5rem; align-items: center; justify-content: center; gap: .6rem; border-radius: 50%; color: #fff; background: var(--ink); box-shadow: var(--shadow); }
.experience-badge strong { font-size: 2.5rem; font-weight: 520; }
.experience-badge span { font-size: .65rem; line-height: 1.25; text-transform: uppercase; }
.about-copy > p:not(.eyebrow) { font-size: 1.04rem; }
.about-copy .button { margin-top: 1rem; }

.international { position: relative; overflow: hidden; color: #fff; background: linear-gradient(125deg, #0b3350, #071525 70%); }
.international-map { position: absolute; right: -3vw; bottom: -9rem; color: transparent; font-size: clamp(20rem, 46vw, 40rem); font-weight: 800; line-height: .8; -webkit-text-stroke: 1px rgba(104,212,223,.1); }
.international-grid { position: relative; display: grid; gap: 3rem; align-items: center; }
.large-text { max-width: 42rem; font-size: 1.08rem; }
.international .button { margin-top: 1rem; }
.check-list { margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(255,255,255,.15); }
.check-list li { display: grid; grid-template-columns: 2rem 1fr; gap: 1rem; padding: 1.05rem 0; border-bottom: 1px solid rgba(255,255,255,.15); }
.check-list span { color: var(--cyan); }

.profiles, .scale-section { position: relative; overflow: hidden; isolation: isolate; }
.profiles > .container, .scale-section > .container { position: relative; z-index: 1; }
.section-signal { position: absolute; z-index: 0; top: 50%; left: clamp(-10rem, -7vw, -5rem); width: clamp(15rem, 22vw, 22rem); aspect-ratio: 1; border-radius: 50%; opacity: .72; transform: translateY(-50%); pointer-events: none; }
.section-signal::before, .section-signal::after { position: absolute; top: 50%; left: 50%; width: 140%; height: 1px; background: linear-gradient(90deg, transparent, rgba(22,131,150,.35), transparent); content: ""; transform-origin: left center; }
.section-signal::before { transform: rotate(25deg) translateX(-50%); }
.section-signal::after { transform: rotate(-25deg) translateX(-50%); }
.signal-ring { position: absolute; border: 1px solid rgba(22,131,150,.22); border-radius: 50%; }
.signal-ring-a { inset: 8%; border-style: dashed; animation: signal-spin 22s linear infinite; }
.signal-ring-b { inset: 27%; border-color: rgba(23,120,209,.26); animation: signal-spin 15s linear infinite reverse; }
.signal-core { position: absolute; top: 50%; left: 50%; width: 2.3rem; height: 2.3rem; border: 1px solid rgba(255,255,255,.8); border-radius: 50%; background: linear-gradient(145deg, var(--cyan), var(--blue)); box-shadow: 0 0 0 .7rem rgba(104,212,223,.1), 0 0 2.5rem rgba(23,120,209,.3); transform: translate(-50%, -50%); animation: signal-core-pulse 3.2s ease-in-out infinite; }
.signal-node { position: absolute; width: .75rem; height: .75rem; border: 2px solid #168396; border-radius: 50%; background: var(--paper); box-shadow: 0 0 0 .35rem rgba(22,131,150,.08); animation: signal-node-pulse 2.8s ease-in-out infinite; }
.signal-node-a { top: 14%; left: 48%; }
.signal-node-b { top: 62%; right: 10%; animation-delay: -.9s; }
.signal-node-c { bottom: 13%; left: 24%; animation-delay: -1.8s; }
.scale-signal { top: 38%; opacity: .82; }
.scale-signal .signal-ring-a { border-color: rgba(23,120,209,.28); }
.scale-signal .signal-node { border-color: var(--blue); }
@keyframes signal-spin { to { transform: rotate(360deg); } }
@keyframes signal-core-pulse { 0%, 100% { transform: translate(-50%, -50%) scale(.9); } 50% { transform: translate(-50%, -50%) scale(1.08); } }
@keyframes signal-node-pulse { 0%, 100% { opacity: .45; transform: scale(.8); } 50% { opacity: 1; transform: scale(1.2); } }
.profiles-signal { position: absolute; z-index: 0; top: 50%; left: clamp(-8rem, -5vw, -3.5rem); width: clamp(15rem, 21vw, 21rem); height: clamp(18rem, 25vw, 25rem); opacity: .78; transform: translateY(-50%); pointer-events: none; perspective: 700px; }
.profile-plane { position: absolute; left: 8%; display: grid; width: 76%; height: 30%; grid-template-columns: repeat(3, 1fr); align-items: center; gap: .55rem; padding: 1rem; border: 1px solid rgba(22,131,150,.26); border-radius: 1rem; background: linear-gradient(135deg, rgba(255,255,255,.82), rgba(220,239,240,.38)); box-shadow: 0 1.2rem 2.5rem rgba(7,21,37,.08); backdrop-filter: blur(8px); transform: rotateY(-18deg) rotateX(58deg) rotateZ(-8deg); }
.profile-plane::before { position: absolute; inset: .55rem; border: 1px solid rgba(23,120,209,.1); border-radius: .65rem; content: ""; }
.profile-plane i { position: relative; z-index: 1; display: block; aspect-ratio: 1; border: 1px solid rgba(22,131,150,.32); border-radius: .5rem; background: linear-gradient(145deg, rgba(104,212,223,.18), rgba(23,120,209,.04)); }
.profile-plane i::after { position: absolute; inset: 34%; border-radius: 50%; background: #168396; box-shadow: 0 0 0 .3rem rgba(22,131,150,.1), 0 0 1rem rgba(22,131,150,.35); content: ""; animation: profile-cell 2.8s ease-in-out infinite; }
.profile-plane i:nth-child(2)::after { animation-delay: -.9s; }
.profile-plane i:nth-child(3)::after { animation-delay: -1.8s; }
.profile-plane-a { top: 4%; animation: profile-plane-float 5.4s ease-in-out infinite; }
.profile-plane-b { top: 32%; opacity: .72; animation: profile-plane-float 5.4s -1.8s ease-in-out infinite; }
.profile-plane-c { top: 60%; opacity: .46; animation: profile-plane-float 5.4s -3.6s ease-in-out infinite; }
.profile-scan { position: absolute; z-index: 2; top: 5%; left: 4%; width: 86%; height: 2px; border-radius: 999px; background: linear-gradient(90deg, transparent, var(--cyan) 25%, #fff 55%, transparent); box-shadow: 0 0 1rem rgba(104,212,223,.8), 0 .75rem 2rem rgba(23,120,209,.28); transform: rotate(-8deg); animation: profile-scan 4.2s ease-in-out infinite; }
.profile-particle { position: absolute; z-index: 3; width: .55rem; height: .55rem; border-radius: 50%; background: var(--blue); box-shadow: 0 0 0 .35rem rgba(23,120,209,.1), 0 0 1.2rem rgba(23,120,209,.55); animation: profile-particle 3.6s ease-in-out infinite; }
.profile-particle-a { top: 20%; right: 5%; }
.profile-particle-b { top: 52%; left: 1%; animation-delay: -1.2s; }
.profile-particle-c { right: 17%; bottom: 8%; animation-delay: -2.4s; }
@keyframes profile-plane-float { 0%, 100% { translate: 0 0; } 50% { translate: 0 -.65rem; } }
@keyframes profile-cell { 0%, 100% { opacity: .35; transform: scale(.72); } 50% { opacity: 1; transform: scale(1); } }
@keyframes profile-scan { 0%, 10% { top: 5%; opacity: 0; } 20%, 78% { opacity: 1; } 90%, 100% { top: 88%; opacity: 0; } }
@keyframes profile-particle { 0%, 100% { opacity: .35; transform: translateY(.7rem) scale(.75); } 50% { opacity: 1; transform: translateY(-.7rem) scale(1.15); } }
.tag-cloud { display: flex; flex-wrap: wrap; gap: .65rem; }
.tag-cloud span { padding: .75rem 1rem; border: 1px solid var(--line); border-radius: 999px; color: #324453; background: rgba(255,255,255,.35); transition: border-color .2s, background .2s; }
.tag-cloud span:hover { border-color: #168396; background: #fff; }
.process { background: #e8eeed; }
.process-head { align-items: center; }
.process-motion { position: relative; display: flex; width: 100%; max-width: 31rem; height: 4.5rem; align-items: center; justify-content: space-between; margin-top: .5rem; overflow: hidden; }
.process-motion::before { position: absolute; right: .5rem; left: .5rem; height: 1px; background: linear-gradient(90deg, rgba(7,21,37,.12), rgba(22,131,150,.7), rgba(7,21,37,.12)); content: ""; }
.process-motion b { position: relative; z-index: 2; width: .75rem; height: .75rem; border: 2px solid #168396; border-radius: 50%; background: #e8eeed; box-shadow: 0 0 0 .35rem rgba(22,131,150,.08); }
.process-motion span { position: absolute; z-index: 3; left: .25rem; width: .65rem; height: .65rem; border-radius: 50%; background: var(--blue); box-shadow: 0 0 0 .35rem rgba(23,120,209,.13), 0 0 1rem rgba(23,120,209,.5); animation: process-travel 5s ease-in-out infinite; }
.process-motion i { position: absolute; right: 0; left: 0; height: 2.8rem; border-top: 1px solid rgba(22,131,150,.15); border-radius: 50%; }
@keyframes process-travel { 0% { left: .25rem; } 50%, 100% { left: calc(100% - .9rem); } }
.process-grid { display: grid; gap: 1rem; }
.process-step { position: relative; min-height: 15rem; padding: 1.5rem; border: 1px solid var(--line); border-radius: 1rem; background: rgba(255,255,255,.5); }
.process-step > span { display: inline-grid; width: 2.7rem; height: 2.7rem; place-content: center; border-radius: 50%; color: #fff; background: var(--ink); font-size: .75rem; }
.process-step h3 { margin: 3rem 0 .75rem; }
.process-step p { margin-bottom: 0; }
.models-grid { display: grid; gap: 2rem; }
.model-list { border-top: 1px solid var(--line); }
.model-list div { display: flex; align-items: center; gap: 1rem; padding: 1rem 0; border-bottom: 1px solid var(--line); font-size: 1.05rem; font-weight: 620; }
.model-list span { color: #168396; font-size: 1.4rem; }

.cta-band { padding: clamp(4.5rem, 10vw, 8rem) 0; color: #fff; background: var(--blue); }
.cta-band .container { display: grid; gap: 1rem; }
.cta-band p { max-width: 38rem; }
.cta-band h2 { max-width: 16ch; }
.cta-band .button { width: fit-content; }
.contact-grid { display: grid; gap: 3rem; }
.contact-copy > p:not(.eyebrow) { max-width: 31rem; }
.contact-direct { display: grid; justify-items: start; gap: .7rem; margin-top: 1.5rem; }
.contact-direct a { display: inline-flex; align-items: center; gap: .7rem; border-bottom: 1px solid currentColor; font-weight: 700; overflow-wrap: anywhere; }
.contact-direct svg { width: 1.25rem; height: 1.25rem; flex: 0 0 auto; fill: none; stroke: #168396; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.contact-form { padding: 1.25rem; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: 0 1.5rem 4rem rgba(7,21,37,.08); }
.form-grid { display: grid; gap: 1rem; }
.contact-form label { display: grid; gap: .45rem; margin-bottom: 1rem; }
.contact-form label > span { color: #344654; font-size: .82rem; font-weight: 650; }
.contact-form input, .contact-form select, .contact-form textarea { width: 100%; border: 1px solid #bdc8cf; border-radius: .55rem; color: var(--ink); background: #fbfcfc; }
.contact-form input, .contact-form select { min-height: 3.15rem; padding: 0 .85rem; }
.contact-form textarea { min-height: 9rem; padding: .85rem; resize: vertical; }
.contact-form input:focus, .contact-form select:focus, .contact-form textarea:focus { border-color: #168396; outline: 3px solid rgba(104,212,223,.25); }
.contact-form .consent { display: grid; grid-template-columns: 1.3rem 1fr; align-items: start; gap: .75rem; margin: 1.25rem 0; }
.consent input { width: 1.2rem; min-height: 1.2rem; margin-top: .2rem; }
.consent a { text-decoration: underline; }
.hp { position: absolute !important; left: -9999px !important; }
.form-alert { margin-bottom: 1.25rem; padding: 1rem; border-radius: .6rem; font-weight: 650; }
.form-alert.error { color: #7d2020; background: #fbe8e8; }
.form-alert.success { color: #155f46; background: #e3f6ee; }

.site-footer { padding: 4rem 0 1.5rem; color: #c1ccd4; background: #06111e; }
.footer-grid { display: grid; gap: 2.5rem; }
.footer-grid > div { display: flex; flex-direction: column; align-items: flex-start; gap: .5rem; }
.footer-grid p { max-width: 23rem; margin: 0; color: #8193a1; font-size: .9rem; }
.vat-number { margin-top: .4rem; color: #a9b7c1; font-size: .78rem; font-weight: 650; }
.footer-brand { color: #fff; font-size: 1.55rem; font-weight: 750; letter-spacing: -.04em; }
.footer-label { margin-bottom: .5rem !important; color: #fff !important; font-size: .72rem !important; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; }
.footer-grid a:not(.footer-brand):hover { color: var(--cyan); }
.footer-langs { display: flex; gap: .75rem; }
.footer-langs a[aria-current="true"] { color: var(--cyan); }
.footer-bottom { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .5rem 2rem; margin-top: 3rem; padding-top: 1.25rem; border-top: 1px solid rgba(255,255,255,.12); color: #70828f; font-size: .75rem; }
.cookie-note { position: fixed; z-index: 110; right: 1rem; bottom: 1rem; left: 1rem; display: flex; max-width: 31rem; align-items: center; gap: 1rem; padding: 1rem; border: 1px solid rgba(255,255,255,.16); border-radius: .8rem; color: #fff; background: #0b2033; box-shadow: var(--shadow); }
.cookie-note[hidden] { display: none; }
.cookie-note p { flex: 1; margin: 0; color: #c4d0d8; font-size: .78rem; }

.privacy-hero { padding: 9rem 0 4rem; }
.privacy-hero h1 { font-size: clamp(2.8rem, 7vw, 5rem); }
.privacy-content { max-width: 50rem; }
.privacy-content article { padding: 1.5rem 0; border-bottom: 1px solid var(--line); }
.privacy-content h2 { margin-bottom: .75rem; font-size: clamp(1.35rem, 3vw, 1.8rem); }
.privacy-content .button { margin-top: 2rem; }

/* Build your team in Poland */
.team-hero { position: relative; min-height: min(58rem, 100svh); padding: 9rem 0 2.5rem; overflow: hidden; isolation: isolate; }
.team-hero::after { position: absolute; z-index: -1; inset: 0; background: linear-gradient(90deg, rgba(7,21,37,.98) 0%, rgba(7,21,37,.9) 44%, rgba(7,21,37,.25) 78%, rgba(7,21,37,.45) 100%); content: ""; }
.team-hero-media { position: absolute; z-index: -2; inset: 0; }
.team-hero-media picture { display: block; width: 100%; height: 100%; }
.team-hero-media img { width: 100%; height: 100%; object-fit: cover; object-position: 66% center; filter: saturate(.82) contrast(1.04); }
.team-hero-grid { display: grid; min-height: 39rem; align-items: center; }
.team-hero-copy { max-width: 47rem; }
.team-hero-copy h1 { max-width: 12ch; margin-bottom: 1.5rem; color: #fff; font-size: clamp(3rem, 7vw, 6.3rem); font-weight: 580; }
.team-hero-copy > p:not(.eyebrow) { max-width: 42rem; color: #c0ccd4; }
.team-hero-lead { color: #fff !important; font-size: clamp(1.15rem, 2vw, 1.45rem); font-weight: 620; }
.team-hero-copy .button-row { display: flex; flex-wrap: wrap; gap: 1.25rem; align-items: center; margin-top: 2rem; }
.team-promise { display: grid; grid-template-columns: auto 1fr; gap: 1rem; align-items: center; padding-top: 1.5rem; border-top: 1px solid rgba(255,255,255,.2); color: #fff; }
.team-promise span { display: grid; width: 3rem; height: 3rem; place-content: center; border: 1px solid rgba(104,212,223,.5); border-radius: 50%; color: var(--cyan); font-size: .7rem; font-weight: 800; letter-spacing: .08em; }
.team-promise strong { max-width: 58rem; font-size: clamp(1rem, 2vw, 1.35rem); line-height: 1.4; }
.engagement { background: linear-gradient(180deg, #edf3f2 0%, var(--paper) 100%); }
.engagement-intro > p { max-width: 43rem; font-size: 1.08rem; }
.engagement-flow { display: grid; grid-template-columns: minmax(0,1fr) 1.5rem minmax(0,1fr) 1.5rem minmax(0,1fr); align-items: center; margin-top: 1.5rem; padding: .8rem; border: 1px solid rgba(22,131,150,.22); border-radius: .9rem; background: rgba(255,255,255,.72); box-shadow: 0 .8rem 2rem rgba(7,21,37,.05); }
.engagement-flow span { display: grid; min-height: 3.25rem; place-content: center; padding: .45rem; border-radius: .6rem; color: #17364a; background: #e5f1f1; font-size: .67rem; font-weight: 750; line-height: 1.25; text-align: center; }
.engagement-flow i { position: relative; height: 1px; overflow: hidden; background: rgba(22,131,150,.28); }
.engagement-flow i::after { position: absolute; top: -.2rem; left: -.35rem; width: .4rem; height: .4rem; border-radius: 50%; background: var(--blue); box-shadow: 0 0 .65rem rgba(23,120,209,.7); content: ""; animation: engagement-signal 2.8s ease-in-out infinite; }
.engagement-flow i:nth-of-type(2)::after { animation-delay: -1.4s; }
@keyframes engagement-signal { 0%, 12% { left: -.35rem; opacity: 0; } 25% { opacity: 1; } 78% { opacity: 1; } 90%, 100% { left: calc(100% - .05rem); opacity: 0; } }
.engagement-grid { display: grid; gap: 1rem; }
.engagement-card { position: relative; min-height: 23rem; padding: 1.6rem; overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: 0 1rem 3rem rgba(7,21,37,.05); }
.engagement-card::after { position: absolute; right: -3rem; bottom: -3rem; width: 8rem; height: 8rem; border: 1px solid rgba(22,131,150,.16); border-radius: 50%; content: ""; }
.engagement-card > span { color: #168396; font-size: .72rem; font-weight: 800; }
.engagement-card h3 { margin: 2.7rem 0 1rem; }
.engagement-card strong { display: block; margin-bottom: .8rem; color: #213a4d; line-height: 1.4; }
.engagement-card p { margin-bottom: 0; font-size: .92rem; }
.bot-section { color: #fff; background: radial-gradient(circle at 85% 0, rgba(23,120,209,.28), transparent 32%), linear-gradient(145deg, #071525, #0b2942); }
.bot-section p { color: #aab8c4; }
.bot-head { display: grid; gap: 0 2rem; margin-bottom: 3rem; }
.bot-head h2 { max-width: 14ch; }
.bot-head > p:last-child { max-width: 42rem; }
.bot-grid { display: grid; gap: 1px; overflow: hidden; border: 1px solid rgba(255,255,255,.14); border-radius: var(--radius); background: rgba(255,255,255,.14); }
.bot-step { position: relative; min-height: 21rem; padding: 2rem; background: rgba(7,21,37,.82); }
.bot-icon { display: grid; width: 4.25rem; height: 4.25rem; place-content: center; border: 1px solid rgba(104,212,223,.42); border-radius: 50%; color: var(--cyan); background: rgba(104,212,223,.06); }
.bot-icon span { font-size: .72rem; font-weight: 800; }
.bot-step h3 { margin: 3.5rem 0 1rem; font-size: clamp(2rem, 4vw, 3.2rem); }
.bot-support { margin-top: 2rem; padding: clamp(1.5rem, 4vw, 2.5rem); border: 1px solid rgba(104,212,223,.2); border-radius: var(--radius); background: rgba(104,212,223,.055); }
.bot-support h3 { max-width: 24rem; margin-bottom: 1.5rem; }
.bot-support > div { display: grid; gap: .65rem; }
.bot-support span { display: flex; align-items: center; gap: .7rem; padding: .7rem 0; border-bottom: 1px solid rgba(255,255,255,.1); color: #d9e5ea; font-size: .9rem; font-weight: 620; }
.bot-support i { display: grid; width: 1.5rem; height: 1.5rem; flex: 0 0 auto; place-content: center; border-radius: 50%; color: var(--ink); background: var(--cyan); font-size: .9rem; font-style: normal; }
.bot-note { margin-top: 2rem; padding: 1.3rem 1.5rem; border-left: 3px solid var(--cyan); color: #fff; background: rgba(104,212,223,.07); font-size: clamp(1.05rem, 2vw, 1.3rem); font-weight: 650; }
.scale-grid { display: grid; gap: 3rem; align-items: center; }
.scale-grid h2 { max-width: 13ch; }
.scale-path { position: relative; display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.scale-path::before { position: absolute; top: 1.7rem; bottom: 1.7rem; left: 1.7rem; width: 1px; background: linear-gradient(var(--blue), #168396); content: ""; }
.scale-path li { position: relative; display: grid; grid-template-columns: 3.4rem 1fr; align-items: center; min-height: 5rem; }
.scale-path span { z-index: 1; display: grid; width: 3.4rem; height: 3.4rem; place-content: center; border: 1px solid #168396; border-radius: 50%; color: #168396; background: var(--paper); font-size: .7rem; font-weight: 800; }
.scale-path strong { padding-left: 1.4rem; font-size: clamp(1.15rem, 2vw, 1.5rem); }
.poland-value-section { position: relative; overflow: hidden; color: #fff; background: radial-gradient(circle at 12% 30%, rgba(23,120,209,.24), transparent 34%), linear-gradient(145deg, #061522, #0b2b43); }
.poland-value-section::after { position: absolute; right: -12rem; bottom: -16rem; width: 36rem; height: 36rem; border: 1px solid rgba(104,212,223,.1); border-radius: 50%; box-shadow: 0 0 0 5rem rgba(104,212,223,.025), 0 0 0 10rem rgba(104,212,223,.018); content: ""; }
.poland-value-grid { position: relative; z-index: 1; display: grid; gap: 3rem; align-items: center; }
.poland-value-media { position: relative; }
.poland-value-media::before { position: absolute; inset: 1rem -1rem -1rem 1rem; border: 1px solid rgba(104,212,223,.24); border-radius: var(--radius); content: ""; }
.poland-value-media picture { position: relative; display: block; }
.poland-value-media img { position: relative; width: 100%; aspect-ratio: 16 / 10; border-radius: var(--radius); object-fit: cover; filter: saturate(.84) contrast(1.04); box-shadow: 0 2rem 5rem rgba(0,0,0,.25); }
.poland-value-stamp { position: absolute; right: -1rem; bottom: -1rem; display: grid; width: 7rem; height: 7rem; place-content: center; border: 1px solid rgba(104,212,223,.55); border-radius: 50%; text-align: center; background: rgba(7,21,37,.92); backdrop-filter: blur(10px); }
.poland-value-stamp strong, .poland-value-stamp span { display: block; }
.poland-value-stamp strong { color: #fff; font-size: 2rem; line-height: 1; }
.poland-value-stamp span { margin-top: .35rem; color: var(--cyan); font-size: .55rem; font-weight: 800; letter-spacing: .12em; }
.poland-value-copy h2 { max-width: 13ch; }
.poland-value-intro { max-width: 42rem; color: #b8c7d1; font-size: 1.08rem; }
.poland-point-grid { display: grid; gap: 0; margin-top: 2rem; border-top: 1px solid rgba(255,255,255,.15); }
.poland-point-grid article { display: grid; grid-template-columns: 2.5rem 1fr; gap: .15rem .8rem; padding: 1rem 0; border-bottom: 1px solid rgba(255,255,255,.15); }
.poland-point-grid article > span { grid-row: span 2; color: var(--cyan); font-size: .68rem; font-weight: 800; }
.poland-point-grid h3 { margin: 0; color: #fff; font-size: 1rem; letter-spacing: -.02em; }
.poland-point-grid p { margin: .2rem 0 0; color: #93a8b6; font-size: .85rem; }
.poland-highlight { position: relative; z-index: 1; display: grid; grid-template-columns: auto 1fr; gap: 1rem; align-items: center; margin-top: 4rem; padding: 1.4rem; border: 1px solid rgba(104,212,223,.25); border-radius: var(--radius); background: rgba(104,212,223,.07); }
.poland-highlight > span { display: grid; width: 2.5rem; height: 2.5rem; place-content: center; border-radius: 50%; color: var(--ink); background: var(--cyan); font-size: 1.4rem; }
.poland-highlight strong { max-width: 58rem; font-size: clamp(1.05rem, 2vw, 1.35rem); line-height: 1.4; }
.pricing-section { background: linear-gradient(180deg, #edf3f2, #f7f8f7 45%, #edf3f2); }
.pricing-head { display: grid; gap: 1.5rem; margin-bottom: 2rem; }
.pricing-head h2 { max-width: 14ch; }
.pricing-head > p { max-width: 43rem; font-size: 1.08rem; }
.pricing-currency { display: grid; grid-template-columns: auto 1fr; gap: 1.25rem; align-items: center; margin-bottom: 2rem; padding: 1.3rem; border: 1px solid rgba(22,131,150,.25); border-radius: var(--radius); background: rgba(255,255,255,.72); }
.currency-mark { position: relative; display: grid; width: 4.8rem; height: 4.8rem; place-content: center; flex: 0 0 auto; }
.currency-mark span { z-index: 2; color: #fff; font-size: 2rem; font-weight: 650; }
.currency-mark::before, .currency-mark i { position: absolute; inset: 0; border-radius: 50%; content: ""; }
.currency-mark::before { background: var(--ink); box-shadow: 0 .8rem 2rem rgba(7,21,37,.2); }
.currency-mark i { border: 1px solid rgba(22,131,150,.34); animation: currency-pulse 3.5s ease-out infinite; }
.currency-mark i:last-child { animation-delay: -1.75s; }
@keyframes currency-pulse { from { opacity: .7; transform: scale(.9); } to { opacity: 0; transform: scale(1.45); } }
.pricing-currency h3 { margin: 0 0 .3rem; }
.pricing-currency p { max-width: 55rem; margin: 0; }
.pricing-grid { display: grid; gap: 1rem; }
.pricing-card { position: relative; display: flex; min-height: 27rem; flex-direction: column; padding: 1.6rem; overflow: hidden; border: 1px solid var(--line); border-radius: var(--radius); background: #fff; box-shadow: 0 1rem 3rem rgba(7,21,37,.045); transition: transform .25s, border-color .25s, box-shadow .25s; }
.pricing-card:hover { border-color: rgba(22,131,150,.55); box-shadow: 0 1.5rem 3.5rem rgba(7,21,37,.1); transform: translateY(-4px); }
.pricing-card > span { color: #168396; font-size: .7rem; font-weight: 800; }
.pricing-card h3 { margin: 2.5rem 0 1rem; }
.pricing-card strong { display: block; margin-bottom: .8rem; color: #203a4d; line-height: 1.4; }
.pricing-card > p { margin-bottom: 1.5rem; font-size: .9rem; }
.pricing-card > div { margin-top: auto; padding-top: 1rem; border-top: 1px solid var(--line); }
.pricing-card small { color: #536774; font-size: .72rem; font-weight: 650; line-height: 1.45; }
.pricing-value { display: grid; gap: 2.5rem; margin-top: 4rem; padding: clamp(2rem, 5vw, 4rem); border-radius: var(--radius); color: #fff; background: linear-gradient(135deg, #071525, #0d3450); box-shadow: var(--shadow); }
.pricing-value h2 { max-width: 17ch; font-size: clamp(2.2rem, 4.8vw, 4rem); }
.pricing-value-copy > p:last-child { max-width: 43rem; color: #aabcc7; }
.pricing-value-side ul { margin: 1.5rem 0 0; padding: 0; list-style: none; }
.pricing-value-side li { display: grid; grid-template-columns: 1.5rem 1fr; gap: .6rem; padding: .6rem 0; border-bottom: 1px solid rgba(255,255,255,.12); color: #d9e4e9; }
.pricing-value-side li span { color: var(--cyan); }
.value-bars { position: relative; display: flex; height: 8rem; align-items: end; gap: .55rem; padding: 1rem 1rem 0; border-bottom: 1px solid rgba(104,212,223,.35); }
.value-bars span { width: 2rem; border-radius: .3rem .3rem 0 0; background: linear-gradient(var(--cyan), rgba(23,120,209,.45)); }
.value-bars span:nth-child(1) { height: 35%; }.value-bars span:nth-child(2) { height: 52%; }.value-bars span:nth-child(3) { height: 72%; }.value-bars span:nth-child(4) { height: 94%; }
.value-bars i { align-self: center; margin-left: auto; color: rgba(255,255,255,.18); font-size: 3rem; font-style: normal; font-weight: 800; letter-spacing: -.08em; }
.pricing-footer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.5rem; margin-top: 2rem; padding: 1.5rem 0; border-top: 1px solid rgba(7,21,37,.18); border-bottom: 1px solid rgba(7,21,37,.18); }
.pricing-footer strong { max-width: 46rem; line-height: 1.45; }
.team-benefits { position: relative; overflow: hidden; background: #fff; }
.team-benefits::before { position: absolute; top: -14rem; right: -14rem; width: 34rem; height: 34rem; border: 1px solid rgba(22,131,150,.1); border-radius: 50%; box-shadow: 0 0 0 5rem rgba(22,131,150,.025), 0 0 0 10rem rgba(22,131,150,.018); content: ""; }
.benefits-head { position: relative; display: grid; gap: 2.5rem; margin-bottom: 3rem; }
.benefits-heading h2 { max-width: 14ch; }
.benefits-heading > p:last-child { max-width: 46rem; font-size: 1.08rem; }
.benefits-formula { display: flex; flex-wrap: wrap; align-content: center; align-items: center; gap: .65rem; padding: 1.35rem; border: 1px solid rgba(22,131,150,.24); border-radius: var(--radius); background: linear-gradient(145deg, #eef5f4, #fff); box-shadow: 0 1rem 3rem rgba(7,21,37,.05); }
.benefits-formula span, .benefits-formula strong { padding: .65rem .8rem; border-radius: .55rem; line-height: 1.25; }
.benefits-formula span { color: #244052; background: #fff; font-size: .85rem; font-weight: 700; }
.benefits-formula b { color: #168396; font-size: 1rem; }
.benefits-formula strong { color: #fff; background: var(--ink); font-size: .9rem; }
.benefits-grid { position: relative; display: grid; gap: 1rem; }
.benefit-card { position: relative; min-height: 21rem; padding: 1.6rem; overflow: hidden; color: #fff; border: 1px solid rgba(104,212,223,.22); border-radius: var(--radius); background: linear-gradient(145deg, #071525, #0d304a); box-shadow: 0 1.2rem 3rem rgba(7,21,37,.11); transition: transform .25s, border-color .25s, box-shadow .25s; }
.benefit-card::before { position: absolute; z-index: 0; top: -15%; bottom: -15%; left: -65%; width: 34%; background: linear-gradient(100deg, transparent, rgba(104,212,223,.04) 25%, rgba(104,212,223,.25) 52%, rgba(255,255,255,.09) 70%, transparent); content: ""; filter: blur(2px); transform: skewX(-14deg); animation: benefit-sheen 5.8s ease-in-out infinite; }
.benefit-card::after { position: absolute; right: -3rem; bottom: -3rem; width: 8rem; height: 8rem; border: 1px solid rgba(104,212,223,.2); border-radius: 50%; box-shadow: 0 0 0 0 rgba(104,212,223,.08); content: ""; animation: benefit-pulse 4.6s ease-in-out infinite; }
.benefit-card:nth-child(2n)::before, .benefit-card:nth-child(2n)::after { animation-delay: -1.45s; }
.benefit-card:nth-child(3n)::before, .benefit-card:nth-child(3n)::after { animation-delay: -2.9s; }
.benefit-card:nth-child(4n)::before, .benefit-card:nth-child(4n)::after { animation-delay: -4.35s; }
.benefit-card:hover { border-color: rgba(104,212,223,.62); box-shadow: 0 1.6rem 3.8rem rgba(7,21,37,.2); transform: translateY(-3px); }
.benefit-card > div { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; }
.benefit-card > div span, .benefit-card > div i { color: var(--cyan); }
.benefit-card > div span { font-size: .7rem; font-weight: 800; }
.benefit-card > div i { font-style: normal; }
.benefit-card h3 { position: relative; z-index: 1; max-width: 15rem; margin: 3rem 0 .9rem; }
.benefit-card p { position: relative; z-index: 1; margin-bottom: 0; font-size: .92rem; }
.benefit-card p { color: #aabcc7; }
@keyframes benefit-sheen { 0%, 12% { left: -65%; opacity: 0; } 22% { opacity: 1; } 62% { left: 145%; opacity: .9; } 72%, 100% { left: 145%; opacity: 0; } }
@keyframes benefit-pulse { 0%, 100% { opacity: .45; transform: scale(.88); box-shadow: 0 0 0 0 rgba(104,212,223,.08); } 50% { opacity: 1; transform: scale(1.08); box-shadow: 0 0 0 1rem rgba(104,212,223,.015); } }
.benefits-note { position: relative; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.5rem; margin-top: 2rem; padding: 1.5rem 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.benefits-note strong { max-width: 48rem; font-size: clamp(1.05rem, 2vw, 1.3rem); line-height: 1.45; }
.team-final-cta { position: relative; padding: clamp(5rem, 10vw, 9rem) 0; overflow: hidden; color: #fff; background: linear-gradient(120deg, #126d83, #1778d1); }
.team-final-cta::after { position: absolute; right: -8rem; bottom: -12rem; width: 32rem; height: 32rem; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; box-shadow: 0 0 0 5rem rgba(255,255,255,.035), 0 0 0 10rem rgba(255,255,255,.025); content: ""; }
.team-final-cta .container { position: relative; z-index: 1; }
.team-final-cta h2 { max-width: 17ch; }
.team-final-cta p:not(.eyebrow) { max-width: 43rem; color: #d9edf2; font-size: 1.1rem; }
.team-final-cta .button { margin-top: 1rem; }

.reveal { opacity: 0; transform: translateY(1.5rem); transition: opacity .7s ease, transform .7s ease; }
.reveal.visible { opacity: 1; transform: none; }

/* Small screens: keep dense visual sections readable and easy to tap. */
@media (max-width: 699px) {
  html { scroll-padding-top: 4.5rem; }
  body { font-size: .96rem; }
  .container { width: min(calc(100% - 2rem), var(--container)); }
  .section { padding: 4rem 0; }
  h1 { font-size: clamp(2.35rem, 12vw, 3.5rem); overflow-wrap: anywhere; }
  h2 { font-size: clamp(2rem, 9.5vw, 3rem); overflow-wrap: anywhere; }
  .eyebrow { margin-bottom: 1rem; }
  .header-inner { min-height: 4.5rem; }
  .brand { width: 154px; height: 46px; }
  .menu-toggle { width: 2.75rem; height: 2.75rem; flex: 0 0 auto; }
  .main-nav {
    justify-content: flex-start;
    gap: .2rem;
    min-height: 100dvh;
    padding: max(6rem, env(safe-area-inset-top)) 1.25rem max(2rem, env(safe-area-inset-bottom));
    overflow-y: auto;
  }
  .main-nav a { min-height: 2.75rem; padding: .45rem 0; font-size: clamp(1.25rem, 6vw, 1.8rem); }
  .mobile-langs { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid rgba(255,255,255,.14); }
  .mobile-langs a { display: grid; min-width: 2.75rem; min-height: 2.75rem; place-content: center; padding: 0; }
  .hero { min-height: auto; padding: 7rem 0 3rem; }
  .hero::after { width: 28rem; height: 28rem; }
  .hero-orbit { top: 18%; right: -12rem; width: 23rem; height: 23rem; }
  .hero-copy { padding-top: 0; }
  .hero-lead { margin-bottom: 1.6rem; font-size: 1.04rem; }
  .hero-system { width: min(100%, 27rem); }
  .system-caption { right: 0; bottom: 4%; }
  .facts { margin-top: 2rem; }
  .fact { min-width: 0; padding: 1rem .4rem; }
  .fact span { overflow-wrap: anywhere; }
  .split-intro, .section-head, .needs-top, .why-grid, .about-grid, .international-grid,
  .contact-grid, .models-grid, .scale-grid, .poland-value-grid, .benefits-head { gap: 2rem; margin-bottom: 2rem; }
  .needs-top { margin-bottom: 2rem; }
  .needs-visual::before, .poland-value-media::before { inset: .6rem -.35rem -.6rem .6rem; }
  .needs-network { position: relative; right: auto; bottom: auto; left: auto; margin: .75rem 0 0; }
  .need-card, .service-card, .process-step, .engagement-card, .bot-step, .pricing-card, .benefit-card { min-height: auto; padding: 1.35rem; }
  .need-card h3, .service-card h3, .process-step h3, .engagement-card h3, .pricing-card h3, .benefit-card h3 { margin-top: 2rem; }
  .bot-step h3 { margin-top: 2.5rem; }
  .services-motion, .process-motion { margin-top: 0; }
  .section-signal { top: 2.5rem; left: -5rem; width: 13rem; opacity: .38; transform: none; }
  .profiles-signal { top: 1.5rem; left: -4.25rem; width: 12rem; height: 15rem; opacity: .34; transform: none; }
  .profiles .split-intro > div, .scale-grid > div:first-child { padding-left: 1.25rem; }
  .scale-signal { top: 2.5rem; }
  .about-photo { margin-right: .35rem; }
  .experience-badge { right: -.35rem; bottom: -.75rem; width: 6.75rem; height: 6.75rem; }
  .experience-badge strong { font-size: 2rem; }
  .experience-badge span { font-size: .58rem; }
  .international-grid { margin-bottom: 0; }
  .contact-form { padding: 1rem; }
  .contact-form input, .contact-form select { min-height: 3rem; font-size: 1rem; }
  .contact-form textarea { font-size: 1rem; }
  .footer-grid { gap: 2rem; }
  .footer-bottom { flex-direction: column; }
  .cookie-note { flex-direction: column; align-items: stretch; padding-bottom: max(1rem, env(safe-area-inset-bottom)); }
  .cookie-note .button { width: 100%; }
  .team-hero { min-height: auto; padding: 7rem 0 2rem; }
  .team-hero::after { background: linear-gradient(90deg, rgba(7,21,37,.97), rgba(7,21,37,.82)); }
  .team-hero-media img { object-position: 62% center; }
  .team-hero-grid { min-height: auto; }
  .team-hero-copy h1 { font-size: clamp(2.4rem, 11.5vw, 3.6rem); overflow-wrap: anywhere; }
  .team-promise { margin-top: 2.5rem; grid-template-columns: 2.6rem 1fr; }
  .team-promise span { width: 2.6rem; height: 2.6rem; }
  .engagement-flow { grid-template-columns: 1fr; gap: .45rem; }
  .engagement-flow i { width: 1px; height: 1rem; justify-self: center; overflow: visible; }
  .engagement-flow i::after { top: -.2rem; left: -.2rem; animation: none; }
  .poland-value-stamp { right: -.35rem; bottom: -.65rem; width: 5.75rem; height: 5.75rem; }
  .poland-highlight, .pricing-currency { grid-template-columns: 1fr; }
  .poland-highlight > span { margin-bottom: .25rem; }
  .currency-mark { width: 4.25rem; height: 4.25rem; }
  .pricing-value { margin-top: 3rem; padding: 1.35rem; }
  .pricing-footer, .benefits-note { align-items: stretch; }
  .pricing-footer .button, .benefits-note .button { width: 100%; }
  .benefits-formula { padding: 1rem; }
}

@media (max-width: 420px) {
  .container { width: min(calc(100% - 1.5rem), var(--container)); }
  .button-row { align-items: stretch; flex-direction: column; gap: .75rem; }
  .button-row .button { width: 100%; }
  .button-row .text-link { justify-content: center; }
  .needs-network { grid-template-columns: 1fr; gap: .35rem; }
  .needs-network b { width: 1px; height: .75rem; justify-self: center; }
  .system-caption { max-width: 12rem; border-radius: .7rem; }
  .fact strong { font-size: 1.35rem; }
  .fact span { font-size: .66rem; }
  .tag-cloud span { padding: .6rem .75rem; font-size: .86rem; }
  .contact-form .button { width: 100%; }
  .team-promise { grid-template-columns: 1fr; }
  .team-promise span { display: none; }
  .scale-path strong { padding-left: 1rem; }
  .pricing-currency { padding: 1rem; }
  .value-bars { padding-inline: .25rem; }
  .value-bars i { font-size: 2.2rem; }
  .benefits-formula { gap: .4rem; }
  .benefits-formula span, .benefits-formula strong { padding: .55rem .65rem; font-size: .76rem; }
}

@media (max-width: 1179px) and (max-height: 700px) {
  .main-nav { justify-content: flex-start; padding-top: 5.5rem; padding-bottom: 2rem; }
}

@media (min-width: 700px) {
  .container { width: min(calc(100% - 4rem), var(--container)); }
  .hero { padding-top: 8rem; }
  .hero-grid { grid-template-columns: 1fr; }
  .hero-copy { padding-top: 0; }
  .facts { grid-template-columns: repeat(4, 1fr); }
  .fact { padding: 1.4rem; border-right: 1px solid rgba(255,255,255,.12); }
  .split-intro { grid-template-columns: 1.2fr .8fr; align-items: end; }
  .services-head, .process-head { grid-template-columns: 1.15fr .85fr; }
  .needs-grid { grid-template-columns: repeat(2, 1fr); }
  .service-grid { grid-template-columns: repeat(2, 1fr); }
  .about-grid, .international-grid, .contact-grid, .models-grid { grid-template-columns: 1fr 1fr; }
  .process-grid { grid-template-columns: repeat(2, 1fr); }
  .process-step:last-child { grid-column: span 2; }
  .form-grid { grid-template-columns: 1fr 1fr; }
  .contact-form { padding: 2rem; }
  .footer-grid { grid-template-columns: 1.5fr repeat(3, 1fr); }
  .cookie-note { left: auto; }
  .engagement-grid { grid-template-columns: repeat(2, 1fr); }
  .engagement-card:last-child { grid-column: span 2; }
  .bot-grid { grid-template-columns: repeat(3, 1fr); }
  .bot-support > div { grid-template-columns: repeat(2, 1fr); gap: 0 1.5rem; }
  .benefits-grid { grid-template-columns: repeat(2, 1fr); }
  .poland-point-grid { grid-template-columns: repeat(2, 1fr); border-left: 1px solid rgba(255,255,255,.15); }
  .poland-point-grid article { padding: 1rem; border-right: 1px solid rgba(255,255,255,.15); }
  .pricing-grid { grid-template-columns: repeat(2, 1fr); }
  .benefits-formula { padding: 1.75rem; }
}

@media (min-width: 920px) {
  .hero-grid { grid-template-columns: minmax(0, 1.18fr) minmax(23rem, .82fr); }
  .hero-copy h1 { max-width: 12ch; font-size: clamp(3.6rem, 6.4vw, 6.2rem); }
  .hero-system { margin-right: -1rem; }
  .needs-top { grid-template-columns: .82fr 1.18fr; gap: clamp(4rem, 8vw, 7rem); }
  .scale-grid { grid-template-columns: .9fr 1.1fr; gap: clamp(4rem, 9vw, 9rem); }
  .scale-path { grid-template-columns: repeat(5, 1fr); align-items: start; }
  .scale-path::before { top: 1.7rem; right: 1.7rem; bottom: auto; left: 1.7rem; width: auto; height: 1px; }
  .scale-path li { display: grid; grid-template-columns: 1fr; justify-items: center; min-width: 0; text-align: center; }
  .scale-path strong { padding: 1rem .35rem 0; font-size: .98rem; }
  .poland-value-grid { grid-template-columns: .9fr 1.1fr; gap: clamp(4rem, 8vw, 7rem); }
  .pricing-head { grid-template-columns: 1.1fr .9fr; align-items: end; }
  .pricing-value { grid-template-columns: 1.2fr .8fr; align-items: center; }
  .benefits-head { grid-template-columns: 1.12fr .88fr; align-items: end; gap: clamp(3rem, 7vw, 7rem); }
}

@media (min-width: 1180px) {
  .header-inner { min-height: 5.5rem; }
  .brand { width: 215px; height: 64px; }
  .menu-toggle { display: none; }
  .main-nav { position: static; display: flex; visibility: visible; flex-direction: row; gap: .65rem; justify-content: initial; padding: 0; background: none; opacity: 1; transform: none; }
  .main-nav a { position: relative; padding: 2rem 0; color: #c4d0d8; font-size: .62rem; font-weight: 650; white-space: nowrap; }
  .main-nav a::after { position: absolute; right: 0; bottom: 1.35rem; left: 0; height: 1px; background: var(--cyan); content: ""; transform: scaleX(0); transition: transform .2s; }
  .main-nav a:hover, .main-nav a.active { color: #fff; }
  .main-nav a.active::after { transform: scaleX(1); }
  .mobile-langs { display: none; }
  .header-actions { display: flex; align-items: center; gap: 1rem; }
  .header-actions .button { display: none; }
  .lang-switch { display: flex; gap: .45rem; }
  .lang-switch a { color: #8497a6; font-size: .64rem; font-weight: 750; }
  .lang-switch a[aria-current="true"] { color: var(--cyan); }
  .hero { padding-top: 10rem; }
  .hero-grid { min-height: 36rem; grid-template-columns: minmax(0, 1.18fr) minmax(27rem, .82fr); }
  .facts { margin-top: 4rem; }
  .section-head { grid-template-columns: 1.3fr .7fr; align-items: end; }
  .services-head, .process-head { align-items: center; }
  .service-grid { grid-template-columns: repeat(4, 1fr); }
  .needs-grid { grid-template-columns: repeat(4, 1fr); }
  .why-grid { grid-template-columns: .85fr 1.15fr; gap: 8rem; }
  .why-sticky { position: sticky; top: 8rem; align-self: start; }
  .about-grid { grid-template-columns: .9fr 1.1fr; gap: clamp(4rem, 8vw, 8rem); }
  .international-grid { grid-template-columns: 1.1fr .9fr; gap: 8rem; }
  .process-grid { grid-template-columns: repeat(5, 1fr); gap: 0; }
  .process-step { border-radius: 0; border-right: 0; }
  .process-step:first-child { border-radius: 1rem 0 0 1rem; }
  .process-step:last-child { grid-column: auto; border-right: 1px solid var(--line); border-radius: 0 1rem 1rem 0; }
  .models-grid { gap: 8rem; }
  .cta-band .container { grid-template-columns: .8fr 1.5fr auto; align-items: end; }
  .cta-band h2, .cta-band p { margin-bottom: 0; }
  .contact-grid { grid-template-columns: .78fr 1.22fr; gap: 8rem; }
  .engagement-grid { grid-template-columns: repeat(6, 1fr); }
  .engagement-card { grid-column: span 2; }
  .engagement-card:nth-child(4) { grid-column: 2 / span 2; }
  .engagement-card:last-child { grid-column: 4 / span 2; }
  .bot-head { grid-template-columns: 1.15fr .85fr; align-items: end; }
  .bot-head .eyebrow { grid-column: 1 / -1; }
  .benefits-grid { grid-template-columns: repeat(4, 1fr); }
  .pricing-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (min-width: 1380px) {
  .brand { width: 235px; height: 70px; }
  .main-nav { gap: .8rem; }
  .main-nav a { font-size: .66rem; }
  .header-actions .button { display: inline-flex; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
  .reveal { opacity: 1; transform: none; }
}
