:root {
  --navy:#071b2b;
    --navy-2:#0b2639;
    --ink:#142938;
    --muted:#6f7f88;
    --cyan:#8297ff;
    --mint:#dce3ff;
    --paper:#f5f7f4;
    --white:#fff;
    --line:#dce4e1;
    --orange:#f3a879
}
* {
  box-sizing:border-box
}
html {
  scroll-behavior:smooth;
    scroll-padding-top:84px
}
body {
  margin:0;
    background:var(--paper);
    color:var(--ink);
    font-family:"Segoe UI",sans-serif;
    -webkit-font-smoothing:antialiased
}
a {
  color:inherit;
    text-decoration:none
}
button,input,textarea {
  font:inherit
}
.container {
  width:min(1160px,calc(100% - 64px));
    margin-inline:auto
}
.site-header {
  height:82px;
    background:var(--navy);
    border-bottom:1px solid rgba(255,255,255,.09);
    position:relative;
    z-index:5;
    color:#fff
}
.nav-wrap {
  height:100%;
    display:flex;
    align-items:center;
    justify-content:space-between
}
.brand {
  display:inline-flex;
    align-items:center;
    gap:11px
}
.brand-mark {
  display:grid;
    grid-template-columns:repeat(2,9px);
    grid-template-rows:repeat(2,9px);
    gap:3px;
    transform:rotate(-8deg)
}
.brand-mark i {
  display:block;
    background:var(--cyan);
    border-radius:2px
}
.brand-mark i:nth-child(2) {
  opacity:.65
}
.brand-mark i:nth-child(3) {
  opacity:.8
}
.brand-mark i:nth-child(4) {
  background:#fff
}
.brand-name {
  font-family:"Segoe UI Variable Display",sans-serif;
    font-size:13px;
    line-height:1.15;
    font-weight:800;
    letter-spacing:.15em
}
.brand-name span {
  display:block;
    font-family:"Segoe UI",sans-serif;
    font-size:8px;
    font-weight:600;
    letter-spacing:.25em;
    margin-top:4px;
    color:#9fb2bd
}
.main-nav {
  display:flex;
    align-items:center;
    gap:38px;
    font-size:12px;
    color:#c8d4da
}
.main-nav>a:not(.nav-cta):hover,.footer-links a:hover {
  color:var(--cyan)
}
.nav-cta {
  padding:12px 16px;
    border:1px solid rgba(130,151,255,.48);
    border-radius:4px;
    color:var(--cyan);
    font-weight:600
}
.nav-cta span {
  padding-left:14px
}
.menu-toggle {
  display:none
}
.hero {
  position:relative;
    background:var(--navy);
    color:#fff;
    overflow:hidden
}
.hero-grid {
  position:absolute;
    inset:0 0 0 48%;
    opacity:.14;
    background-image:linear-gradient(rgba(164,204,208,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(164,204,208,.13) 1px,transparent 1px);
    background-size:62px 62px;
    mask-image:linear-gradient(90deg,transparent,black 28%,black)
}
.hero-inner {
  min-height:586px;
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:center;
    position:relative
}
.hero-copy {
  padding:60px 0 75px;
    position:relative;
    z-index:1
}
.eyebrow {
  display:flex;
    gap:11px;
    align-items:center;
    text-transform:uppercase;
    letter-spacing:.2em;
    font-size:9px;
    font-weight:700;
    color:#a9bdc6
}
.eyebrow-line {
  width:27px;
    height:1px;
    background:var(--cyan)
}
.eyebrow.dark {
  color:#73878c
}
.hero h1,.section-heading h2,.belief-copy h2,.contact-inner h2 {
  font-family:"Segoe UI Variable Display",sans-serif;
    letter-spacing:-.055em;
    font-size:clamp(48px,6vw,76px);
    line-height:1.01;
    margin:28px 0 20px;
    font-weight:600
}
.hero h1 span,.belief-copy h2 span,.contact-inner h2 span {
  color:var(--cyan)
}
.hero-lede {
  max-width:430px;
    color:#adbdc5;
    font-size:15px;
    line-height:1.8;
    margin-bottom:30px
}
.hero-actions {
  display:flex;
    gap:13px;
    align-items:center;
    flex-wrap:wrap
}
.button {
  display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:18px;
    border:0;
    border-radius:3px;
    padding:15px 19px;
    font-size:11px;
    font-weight:700;
    transition:transform .2s ease,background .2s ease;
    cursor:pointer
}
.button:hover {
  transform:translateY(-2px)
}
.button-primary {
  background:var(--cyan);
    color:var(--navy)
}
.button-primary span,.button-dark span {
  font-size:17px;
    font-weight:400
}
.button-quiet {
  color:#d3dce0
}
.button-quiet:hover {
  color:#fff
}
.wa-icon {
  font-size:17px;
    color:#72dfba
}
.hero-note {
  display:flex;
    align-items:center;
    gap:9px;
    margin-top:48px;
    font-size:10px;
    color:#889ea8;
    letter-spacing:.035em
}
.note-dot,.url-dot,.tag-dot {
  height:6px;
    width:6px;
    border-radius:50%;
    background:var(--cyan);
    box-shadow:0 0 12px rgba(130,151,255,.8)
}
.hero-art {
  min-height:520px;
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center
}



















.brand-mark.small i:last-child {
  background:var(--navy)
}








.hero-bottom {
  position:relative;
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:18px 0 22px;
    border-top:1px solid rgba(255,255,255,.11);
    font-size:9px;
    color:#8fa3ac;
    letter-spacing:.06em
}
.scroll-cue {
  letter-spacing:.16em;
    font-size:8px
}
.scroll-cue b {
  color:var(--cyan);
    font-size:14px;
    margin-left:10px
}
.section-pad {
  padding:104px 0 94px
}
.product-section {
  background:var(--paper)
}
.section-heading {
  display:flex;
    align-items:end;
    justify-content:space-between;
    margin-bottom:45px
}
.section-heading h2 {
  font-size:48px;
    line-height:1.12;
    color:var(--navy);
    margin:20px 0 0
}
.section-heading h2 span {
  color:#8b95b0
}
.section-heading>p {
  max-width:330px;
    color:#708088;
    font-size:13px;
    line-height:1.8;
    margin:0 0 5px
}
.product-card {
  display:grid;
    grid-template-columns:.86fr 1.14fr;
    background:#fff;
    border:1px solid #e4e9e5;
    min-height:430px;
    box-shadow:0 20px 55px rgba(12,35,45,.055)
}
.product-info {
  padding:43px 48px;
    display:flex;
    flex-direction:column;
    align-items:flex-start
}
.product-label {
  display:flex;
    align-items:center;
    gap:9px;
    font-size:8px;
    letter-spacing:.17em;
    font-weight:700;
    color:#6d8184
}
.product-symbol {
  width:22px;
    height:22px;
    display:grid;
    place-items:center;
    background:#edf0ff;
    color:#3f59c8;
    font-family:"Segoe UI Variable Display";
    font-weight:800;
    border-radius:5px;
    font-size:12px
}
.product-info h3 {
  font-family:"Segoe UI Variable Display",sans-serif;
    font-size:39px;
    letter-spacing:-.055em;
    line-height:.95;
    color:var(--navy);
    margin:31px 0 12px
}
.product-info h3 span {
  font-weight:500;
    color:#7e9597;
    font-size:28px;
    letter-spacing:.13em
}
.tagline {
  font-size:14px;
    font-weight:700;
    color:#405bcf;
    margin:0 0 15px
}
.product-description {
  color:#75838a;
    max-width:320px;
    font-size:12px;
    line-height:1.8;
    margin:0 0 25px
}
.product-actions {
  display:flex;
    align-items:center;
    gap:17px;
    flex-wrap:wrap
}
.button-dark {
  background:var(--navy);
    color:#fff
}
.button-dark:hover {
  background:#12364a
}
.text-button {
  border:0;
    background:transparent;
    color:#37535c;
    font-size:10px;
    font-weight:700;
    cursor:pointer;
    padding:10px 0
}
.text-button span {
  font-size:15px;
    margin-left:7px;
    color:#4661d3
}
.product-url {
  margin-top:auto;
    padding-top:26px;
    color:#8e9b9d;
    font-size:9px;
    display:flex;
    align-items:center;
    gap:8px
}
.product-url .url-dot {
  width:5px;
    height:5px
}
.product-visual {
  position:relative;
    min-height:430px;
    background:#0b2939;
    overflow:hidden;
    display:grid;
    place-items:center
}






















.coming-row {
  display:flex;
    align-items:center;
    gap:13px;
    padding:22px 6px 0;
    color:#283f48
}
.coming-icon {
  font-size:20px;
    color:#526adc
}
.coming-row div {
  display:flex;
    flex-direction:column;
    gap:4px
}
.coming-row strong {
  font-size:11px
}
.coming-row div span {
  font-size:10px;
    color:#879396
}
.coming-soon {
  margin-left:auto;
    font-size:8px;
    letter-spacing:.16em;
    color:#83918f
}
.belief-section {
  background:#eef1fb;
    padding:100px 0;
    overflow:hidden
}
.belief-inner {
  position:relative;
    display:grid;
    grid-template-columns:.8fr 1.2fr;
    align-items:center;
    min-height:300px
}
.belief-mark {
  height:300px;
    position:relative;
    display:grid;
    place-items:center
}
.brand-mark.large {
  grid-template-columns:repeat(2,48px);
    grid-template-rows:repeat(2,48px);
    gap:12px;
    z-index:1
}
.brand-mark.large i {
  border-radius:9px;
    background:#536cdc
}
.brand-mark.large i:nth-child(2) {
  background:#aebaff
}
.brand-mark.large i:nth-child(3) {
  background:#8295f4
}
.brand-mark.large i:nth-child(4) {
  background:#0e3746
}
.mark-ring {
  position:absolute;
    width:270px;
    height:270px;
    border:1px solid #d3dfd9;
    border-radius:50%
}
.mark-ring:before,.mark-ring:after {
  content:"";
    position:absolute;
    inset:24px;
    border:1px solid #dae4df;
    border-radius:50%
}
.mark-ring:after {
  inset:-24px;
    border-color:#d9e3dd
}
.belief-copy {
  max-width:590px
}
.belief-copy .eyebrow {
  color:#6c79a0
}
.belief-copy h2 {
  font-size:45px;
    margin:22px 0 15px;
    color:var(--navy)
}
.belief-copy h2 span {
  color:#4f69db
}
.belief-copy p {
  max-width:470px;
    color:#6d7e80;
    font-size:12px;
    line-height:1.9
}
.inline-link {
  display:inline-block;
    margin-top:10px;
    font-size:10px;
    font-weight:700;
    color:#30479c
}
.inline-link span {
  margin-left:9px;
    color:#4d68ea;
    font-size:15px
}
.belief-index {
  position:absolute;
    right:0;
    bottom:1px;
    font-size:8px;
    letter-spacing:.15em;
    color:#8e9d98
}
.belief-index span {
  color:#50a591;
    margin:0 6px
}
.contact-section {
  background:var(--navy);
    color:#fff;
    padding:95px 0
}
.contact-inner {
  display:grid;
    grid-template-columns:1fr .72fr;
    align-items:center;
    gap:90px
}
.contact-inner .eyebrow {
  color:#aac0c8
}
.contact-inner h2 {
  font-size:54px;
    margin:22px 0 13px
}
.contact-inner>div:first-child>p {
  max-width:410px;
    font-size:12px;
    color:#aabdc4;
    line-height:1.85
}
.contact-card {
  padding:27px 29px 25px;
    border:1px solid rgba(130,151,255,.24);
    background:rgba(255,255,255,.035);
    border-radius:4px
}
.contact-card-top {
  display:flex;
    align-items:center;
    gap:10px;
    color:#93aab2;
    letter-spacing:.14em;
    font-weight:700;
    font-size:7px
}
.contact-icon {
  width:27px;
    height:27px;
    border-radius:50%;
    display:grid;
    place-items:center;
    color:var(--cyan);
    border:1px solid rgba(130,151,255,.42);
    font-size:13px
}
.contact-card h3 {
  font-family:"Segoe UI Variable Display";
    font-size:22px;
    letter-spacing:-.03em;
    margin:23px 0 6px
}
.contact-card p {
  font-size:10px;
    color:#a8bbc1;
    line-height:1.7;
    margin:0 0 19px
}
.button-wa {
  background:#dfe5ff;
    color:#14244f;
    width:100%;
    justify-content:flex-start
}
.button-wa .wa-icon {
  color:#4360cf
}
.button-arrow {
  margin-left:auto;
    font-size:17px
}
.phone-label {
  margin-top:15px;
    color:#8aa1a9;
    font-size:9px;
    letter-spacing:.08em
}
.site-footer {
  background:#051521;
    color:#9aabb1
}
.footer-main {
  min-height:114px;
    display:flex;
    align-items:center;
    gap:34px;
    border-bottom:1px solid rgba(255,255,255,.1)
}
.footer-brand .brand-name {
  color:#fff
}
.footer-main>p {
  font-size:10px;
    color:#859ba3;
    margin-right:auto
}
.footer-links {
  display:flex;
    gap:25px;
    font-size:9px
}
.footer-whatsapp {
  font-size:9px;
    color:#d6ddff
}
.footer-whatsapp span {
  padding-left:8px
}
.footer-bottom {
  display:flex;
    justify-content:space-between;
    align-items:center;
    min-height:52px;
    font-size:8px;
    color:#6f848c
}
.footer-bottom b {
  color:var(--cyan);
    font-size:12px;
    margin-left:6px
}
.demo-dialog {
  width:min(440px,calc(100% - 28px));
    border:0;
    border-radius:8px;
    padding:34px;
    background:#f7f8f4;
    color:var(--ink);
    box-shadow:0 25px 80px rgba(0,0,0,.35)
}
.demo-dialog::backdrop {
  background:rgba(3,15,22,.72);
    backdrop-filter:blur(3px)
}
.demo-dialog h2 {
  font-family:"Segoe UI Variable Display";
    font-size:33px;
    letter-spacing:-.05em;
    color:var(--navy);
    margin:18px 0 7px
}
.demo-dialog>p {
  font-size:11px;
    color:#728187;
    line-height:1.7;
    margin:0 0 21px
}
.dialog-close {
  position:absolute;
    right:17px;
    top:15px;
    border:0;
    background:transparent;
    color:#6f8084;
    font-size:25px;
    cursor:pointer
}
.demo-form {
  display:flex;
    flex-direction:column;
    gap:8px
}
.demo-form label {
  font-size:10px;
    font-weight:700;
    margin-top:5px
}
.demo-form label span {
  font-weight:400;
    color:#899598
}
.demo-form input,.demo-form textarea {
  border:1px solid #dce4df;
    border-radius:3px;
    background:#fff;
    padding:11px 12px;
    font-size:11px;
    color:var(--ink);
    outline:none;
    resize:vertical
}
.demo-form input:focus,.demo-form textarea:focus {
  border-color:#4d68ea;
    box-shadow:0 0 0 3px rgba(73,160,141,.12)
}
.demo-form .button {
  margin-top:11px
}
.menu-toggle {
  border:0;
    background:transparent
}

@media(max-width:850px) {
  .container {
  width:min(100% - 44px,680px)
}
.main-nav {
  gap:21px
}
.nav-cta {
  padding:11px 12px
}
.hero-inner {
  min-height:530px
}
.hero-art {
  transform:scale(.85);
    transform-origin:center right;
    margin-left:-35px
}
.hero h1 {
  font-size:60px
}
.section-heading h2 {
  font-size:42px
}
.product-info {
  padding:36px 30px
}
.product-info h3 {
  font-size:35px
}
.product-info h3 span {
  font-size:23px
}
.product-actions {
  gap:7px
}
.belief-inner {
  grid-template-columns:.65fr 1.35fr
}
.belief-mark {
  transform:scale(.8)
}
.belief-copy h2 {
  font-size:39px
}
.contact-inner {
  gap:45px
}

}

@media(max-width:650px) {
  html {
  scroll-padding-top:70px
}
}

/* Company story and custom solutions */
.brand-name { font-size:17px; letter-spacing:.13em; }
.brand-name span { font-size:7px; letter-spacing:.27em; }
.footer-brand .brand-name { font-size:17px; }
.business-areas { background:#fff; }
.business-area-grid { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line); margin-top:46px; }
.business-area-grid article { padding:30px 42px 12px 0; }
.business-area-grid article+article { border-left:1px solid var(--line); padding-left:42px; }
.area-index,.custom-kind,.purpose-items article>span { color:#758697; font-size:9px; font-weight:700; letter-spacing:.16em; }
.business-area-grid h3 { margin:22px 0 14px; font-size:clamp(24px,3vw,36px); line-height:1.15; letter-spacing:-.04em; }
.business-area-grid p { max-width:460px; color:#657784; font-size:14px; line-height:1.8; }
.business-area-grid .inline-link { display:inline-block; margin-top:12px; }
.custom-intro { display:flex; justify-content:space-between; align-items:center; gap:28px; padding:25px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.custom-intro p { max-width:650px; margin:0; color:#657784; font-size:14px; line-height:1.8; }
.custom-list { margin:12px 0 64px; }
.custom-list article { display:grid; grid-template-columns:48px 1fr auto; align-items:start; gap:20px; padding:24px 0; border-bottom:1px solid var(--line); }
.custom-list article>span:first-child { color:#8297ff; font-size:11px; font-weight:700; }
.custom-list h3 { margin:0 0 7px; font-size:19px; letter-spacing:-.02em; }
.custom-list p { max-width:670px; margin:0; color:#687b87; font-size:13px; line-height:1.7; }
.custom-kind { padding-top:4px; font-size:8px; text-align:right; }
.mission-section { background:#fff; }
.mission-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:10%; }
.mission-grid h2 { margin:22px 0 15px; font-size:clamp(30px,4vw,45px); line-height:1.1; letter-spacing:-.045em; }
.mission-grid h2 span { color:#7187f2; }
.mission-grid>div:first-child>p { max-width:360px; color:#687b87; line-height:1.8; }
.purpose-items article { padding:0 0 24px; border-bottom:1px solid var(--line); }
.purpose-items article+article { padding-top:24px; }
.purpose-items p { max-width:640px; margin:12px 0 0; font-size:16px; line-height:1.75; }
.contact-section .text-button { margin-top:12px; color:#fff; }
@media(max-width:850px) {
  .custom-kind { display:none; }
  .mission-grid { gap:42px; }
}
@media(max-width:650px) {
  .brand-name { font-size:15px; }
  .brand-name span { font-size:7px; }
  .business-area-grid { grid-template-columns:1fr; margin-top:30px; }
  .business-area-grid article { padding:24px 0; }
  .business-area-grid article+article { border-left:0; border-top:1px solid var(--line); padding-left:0; }
  .custom-intro { align-items:flex-start; flex-direction:column; gap:18px; }
  .custom-list article { grid-template-columns:30px 1fr; gap:12px; padding:20px 0; }
  .custom-list h3 { font-size:17px; }
  .custom-list p { font-size:12px; }
  .mission-grid { grid-template-columns:1fr; gap:25px; }
  .purpose-items p { font-size:14px; }
}
@media(max-width:650px) {
.container {
  width:calc(100% - 40px)
}
.site-header {
  height:70px
}
.menu-toggle {
  display:flex;
    width:38px;
    height:38px;
    flex-direction:column;
    gap:6px;
    align-items:center;
    justify-content:center
}
.menu-toggle span {
  width:19px;
    height:1px;
    background:#d9e5e7;
    transition:transform .2s
}
.menu-toggle[aria-expanded=true] span:first-child {
  transform:translateY(3.5px) rotate(45deg)
}
.menu-toggle[aria-expanded=true] span:last-child {
  transform:translateY(-3.5px) rotate(-45deg)
}
.main-nav {
  position:absolute;
    top:69px;
    left:0;
    right:0;
    background:#0a2333;
    display:none;
    align-items:stretch;
    flex-direction:column;
    gap:0;
    padding:10px 20px 20px;
    border-bottom:1px solid rgba(255,255,255,.13)
}
.main-nav.open {
  display:flex
}
.main-nav>a:not(.nav-cta) {
  padding:15px 3px;
    border-bottom:1px solid rgba(255,255,255,.08)
}
.nav-cta {
  margin-top:14px;
    text-align:center
}
.hero-inner {
  display:flex;
    flex-direction:column;
    align-items:stretch;
    min-height:0
}
.hero-copy {
  padding:67px 0 10px
}
.hero h1 {
  font-size:55px;
    margin-top:22px
}
.hero-lede {
  font-size:13px;
    max-width:365px
}
.hero-actions {
  gap:6px
}
.button {
  padding:14px 15px
}
.button-quiet {
  padding-left:9px;
    padding-right:8px
}
.hero-note {
  margin-top:30px
}
.hero-art {
  height:375px;
    min-height:375px;
    transform:scale(.8);
    transform-origin:center center;
    margin:-8px -30px -24px
}




.hero-bottom {
  font-size:8px;
    padding:15px 0
}
.scroll-cue {
  font-size:7px
}
.section-pad {
  padding:72px 0 65px
}
.section-heading {
  display:block;
    margin-bottom:28px
}
.section-heading h2 {
  font-size:39px;
    margin-top:16px
}
.section-heading>p {
  font-size:12px;
    margin-top:17px;
    max-width:400px
}
.product-card {
  grid-template-columns:1fr
}
.product-info {
  padding:31px 26px 25px;
    min-height:385px
}
.product-info h3 {
  margin-top:26px
}
.product-description {
  margin-bottom:21px
}
.product-url {
  padding-top:22px
}
.product-visual {
  min-height:330px
}






.coming-row {
  gap:9px;
    padding-top:19px
}
.coming-row strong {
  font-size:10px
}
.coming-row div span {
  font-size:9px
}
.coming-soon {
  font-size:7px;
    letter-spacing:.11em
}
.belief-section {
  padding:65px 0
}
.belief-inner {
  display:flex;
    flex-direction:column;
    align-items:stretch
}
.belief-mark {
  height:150px;
    transform:scale(.55);
    margin:-35px 0 -15px
}
.belief-copy h2 {
  font-size:38px
}
.belief-copy p {
  font-size:11px
}
.belief-index {
  right:0;
    bottom:-33px
}
.contact-section {
  padding:70px 0
}
.contact-inner {
  grid-template-columns:1fr;
    gap:32px
}
.contact-inner h2 {
  font-size:48px
}
.contact-card {
  padding:23px
}
.footer-main {
  padding:26px 0;
    display:grid;
    grid-template-columns:1fr auto;
    gap:20px 10px
}
.footer-main>p {
  grid-column:1;
    grid-row:2;
    margin:0
}
.footer-links {
  grid-column:1/-1;
    grid-row:3;
    gap:20px
}
.footer-whatsapp {
  grid-column:2;
    grid-row:1
}
.footer-bottom {
  min-height:62px;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:6px;
    padding:13px 0
}
.footer-bottom>span:nth-child(2) {
  text-align:right
}
.footer-bottom>a {
  grid-column:1/-1
}
.demo-dialog {
  padding:29px 23px
}

}

@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after {
  scroll-behavior:auto!important;
    transition:none!important
}

}












@media(max-width:650px) {
  .visual-poster {
  width:76%;
    min-height:255px;
    padding:29px 24px
}




}

.hero h1 {
  font-size:clamp(43px,5vw,62px);
    max-width:690px
}
.hero h1 span {
  color:var(--cyan)
}
.company-intro {
  background:#fff;
    padding-top:80px;
    padding-bottom:80px
}
.intro-grid {
  display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:70px;
    align-items:center
}
.intro-grid h2,.approach-heading h2 {
  font-family:"Segoe UI Variable Display";
    font-size:clamp(34px,4.3vw,48px);
    line-height:1.12;
    letter-spacing:-.055em;
    color:var(--navy);
    margin:20px 0 0
}
.intro-grid h2 span,.approach-heading h2 span {
  color:#4e65d8
}
.intro-copy {
  max-width:450px;
    color:#6d7e80;
    font-size:13px;
    line-height:1.9
}
.intro-copy p {
  margin:0 0 12px
}
.product-overline {
  font-size:10px;
    color:#6d8184;
    letter-spacing:.04em;
    margin-top:18px
}
.feature-list {
  list-style:none;
    padding:0;
    margin:0 0 23px;
    display:grid;
    gap:8px;
    font-size:10px;
    color:#526b70
}
.feature-list li {
  display:flex;
    align-items:center;
    gap:9px
}
.feature-list li:before {
  content:"✓";
    color:#4a66d9;
    font-weight:700
}

.product-url {
  flex-wrap:wrap
}
.solutions-section {
  background:#f1f4f0
}
.solution-grid {
  display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px
}
.solution-card {
  min-height:218px;
    background:#fff;
    border:1px solid #e1e8e3;
    padding:24px;
    position:relative
}
.solution-number {
  position:absolute;
    right:21px;
    top:23px;
    font-size:9px;
    color:#9ba9a4;
    letter-spacing:.1em
}
.solution-icon {
  height:35px;
    width:35px;
    display:grid;
    place-items:center;
    background:#edf0ff;
    color:#4b61cf;
    border-radius:4px;
    font-size:16px
}
.solution-card h3 {
  font-family:"Segoe UI Variable Display";
    font-size:15px;
    letter-spacing:-.02em;
    color:var(--navy);
    margin:24px 0 8px
}
.solution-card p {
  font-size:10px;
    color:#78878a;
    line-height:1.8;
    margin:0;
    max-width:260px
}
.solution-note {
  font-size:9px;
    color:#86938e;
    margin:18px 0 0
}
.approach-section {
  background:#fff
}
.approach-heading {
  max-width:540px
}
.approach-heading h2 {
  margin-top:19px
}
.approach-heading>p {
  font-size:12px;
    color:#728187;
    line-height:1.8;
    max-width:430px
}
.approach-list {
  border-top:1px solid var(--line);
    margin-top:38px;
    display:grid;
    grid-template-columns:repeat(4,1fr)
}
.approach-list article {
  padding:22px 17px 0 0;
    border-right:1px solid var(--line);
    margin-right:18px
}
.approach-list article:last-child {
  border:0;
    margin-right:0
}
.approach-list article>span {
  font-size:8px;
    color:#566ee0;
    letter-spacing:.15em
}
.approach-list h3 {
  font-family:"Segoe UI Variable Display";
    font-size:12px;
    margin:17px 0 7px;
    color:#173643
}
.approach-list p {
  font-size:9px;
    color:#829093;
    line-height:1.7;
    margin:0
}
.resources-section {
  background:#102e3d;
    padding:78px 0;
    color:#fff
}
.resources-inner {
  display:grid;
    grid-template-columns:1fr .8fr;
    gap:80px;
    align-items:center
}
.resources-inner h2 {
  font-family:"Segoe UI Variable Display";
    font-size:43px;
    line-height:1.05;
    letter-spacing:-.05em;
    margin:21px 0 0
}
.resources-inner h2 span {
  color:var(--cyan)
}
.resource-copy p {
  font-size:12px;
    color:#b4c2c6;
    line-height:1.9;
    margin:0 0 15px
}
.resource-copy .inline-link {
  background:none;
    border:0;
    color:var(--cyan);
    padding:0;
    cursor:pointer
}
.demo-form select {
  border:1px solid #dce4df;
    border-radius:3px;
    background:#fff;
    padding:11px 12px;
    font-size:11px;
    color:var(--ink);
    outline:none
}
.demo-form select:focus {
  border-color:#4d68ea;
    box-shadow:0 0 0 3px rgba(73,160,141,.12)
}
.demo-form .form-feedback {
  font-size:9px;
    color:#4b5ca5;
    line-height:1.5;
    margin:0;
    min-height:0
}
.footer-product {
  color:#9aabb1
}

@media(max-width:900px) {
  .menu-toggle {
  display:flex;
    width:38px;
    height:38px;
    flex-direction:column;
    gap:6px;
    align-items:center;
    justify-content:center
}
.menu-toggle span {
  width:19px;
    height:1px;
    background:#d9e5e7;
    transition:transform .2s
}
.menu-toggle[aria-expanded=true] span:first-child {
  transform:translateY(3.5px) rotate(45deg)
}
.menu-toggle[aria-expanded=true] span:last-child {
  transform:translateY(-3.5px) rotate(-45deg)
}
.main-nav {
  position:absolute;
    top:81px;
    left:0;
    right:0;
    background:#0a2333;
    display:none;
    align-items:stretch;
    flex-direction:column;
    gap:0;
    padding:10px 32px 20px;
    border-bottom:1px solid rgba(255,255,255,.13)
}
.main-nav.open {
  display:flex
}
.main-nav>a:not(.nav-cta) {
  padding:13px 3px;
    border-bottom:1px solid rgba(255,255,255,.08)
}
.nav-cta {
  margin-top:14px;
    text-align:center
}
.hero-inner {
  grid-template-columns:1.05fr .95fr
}
.hero h1 {
  font-size:clamp(41px,5vw,54px)
}
.hero-art {
  transform:scale(.8);
    transform-origin:center right;
    margin-left:-65px
}
.intro-grid {
  gap:35px
}
.contact-inner {
  gap:40px
}

}

@media(max-width:650px) {
  .main-nav {
  top:69px;
    padding-left:20px;
    padding-right:20px
}
.hero h1 {
  font-size:clamp(39px,10vw,51px)
}
.intro-grid {
  grid-template-columns:1fr;
    gap:16px
}
.company-intro {
  padding-top:64px;
    padding-bottom:60px
}
.solution-grid {
  grid-template-columns:1fr
}
.solution-card {
  min-height:0;
    padding:21px
}
.solution-card h3 {
  margin-top:16px
}
.approach-list {
  grid-template-columns:1fr 1fr;
    row-gap:22px
}
.approach-list article {
  min-height:104px
}
.approach-list article:nth-child(2) {
  border-right:0;
    margin-right:0
}
.resources-inner {
  grid-template-columns:1fr;
    gap:20px
}
.resources-inner h2 {
  font-size:39px
}
.product-url {
  gap:7px
}

.footer-links {
  flex-wrap:wrap
}
.hero-actions .button {
  font-size:10px
}
.hero-actions .button-quiet {
  padding-inline:8px
}

}

.skip-link {
  position:absolute;
  left:1rem;
  top:-4rem;
  z-index:20;
  padding:.7rem 1rem;
  background:#fff;
  color:#071b2b;
  border:2px solid #4d68ea;
}
.skip-link:focus {
  top:1rem;
}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible {
  outline:3px solid #f3a879;
  outline-offset:3px;
}
.legal-page {
  min-height:100vh;
  display:flex;
  flex-direction:column;
}
.legal-home {
  color:#c8d4da;
  font-size:12px;
}
.legal-home span {
  color:#8297ff;
  padding-left:8px;
}
.legal-content {
  flex:1;
  padding:70px 0 90px;
  background:#f5f7f4;
}
.legal-container {
  max-width:800px;
}
.legal-container h1 {
  margin:22px 0 8px;
  color:#071b2b;
  font-family:"Segoe UI Variable Display","Segoe UI",Arial,sans-serif;
  font-size:clamp(42px,6vw,64px);
  letter-spacing:-.055em;
  line-height:1.05;
}
.legal-updated {
  margin:0 0 32px;
  color:#687b81;
  font-size:12px;
}
.legal-container>p:not(.legal-updated):not(.legal-note) {
  max-width:740px;
  color:#455b63;
  font-size:14px;
  line-height:1.9;
}
.legal-container h2 {
  margin:35px 0 8px;
  color:#102e3d;
  font-family:"Segoe UI Variable Display","Segoe UI",Arial,sans-serif;
  font-size:20px;
  letter-spacing:-.025em;
}
.legal-container a:not(.inline-link) {
  color:#236f62;
  text-decoration:underline;
  text-underline-offset:3px;
}
.legal-note {
  margin:34px 0 18px;
  padding:16px 18px;
  border-left:3px solid #e5a16f;
  background:#fff;
  color:#53666b;
  font-size:12px;
  line-height:1.8;
}
.legal-footer {
  padding:0 0 14px;
}
.footer-legal {
  display:flex;
  gap:22px;
  align-items:center;
  padding-bottom:18px;
  font-size:9px;
}
.footer-legal a {
  color:#9aabb1;
}
@media(max-width:650px) {
  .legal-content {
    padding:52px 0 65px;
  }
  .footer-legal {
    flex-wrap:wrap;
    gap:10px 16px;
  }
}

.hero-art {
  display:grid;
  place-items:center;
  overflow:hidden;
}
.hero-art-orbit {
  position:absolute;
  width:390px;
  height:390px;
  border:1px solid rgba(130,151,255,.25);
  border-radius:50%;
}
.orbit-outer {
  transform:scale(1.12);
}
.orbit-inner {
  width:300px;
  height:300px;
  border-color:rgba(130,151,255,.16);
}
.hero-emblem {
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(2,112px);
  gap:14px;
  transform:rotate(-8deg);
}
.hero-emblem span {
  display:block;
  aspect-ratio:1;
  border:1px solid rgba(190,203,255,.45);
  border-radius:12px;
  background:linear-gradient(145deg,#8197ff,#536cdc);
  box-shadow:0 20px 50px rgba(4,14,37,.2);
}
.hero-emblem span:nth-child(2) {
  opacity:.72;
}
.hero-emblem span:nth-child(3) {
  background:#fff;
}
.hero-emblem span:nth-child(4) {
  background:linear-gradient(145deg,#425cc8,#263f9e);
}
.hero-art-wordmark {
  position:absolute;
  z-index:2;
  bottom:34px;
  left:0;
  right:0;
  display:flex;
  justify-content:center;
  align-items:baseline;
  gap:10px;
  color:#f5f7ff;
  font-family:"Segoe UI Variable Display","Segoe UI",Arial,sans-serif;
  font-size:12px;
  font-weight:800;
  letter-spacing:.24em;
}
.hero-art-wordmark small {
  color:#aebcff;
  font-family:"Segoe UI",Arial,sans-serif;
  font-size:8px;
  font-weight:600;
  letter-spacing:.2em;
}
.hero-art-caption {
  position:absolute;
  top:34px;
  right:0;
  color:#aebcff;
  font-size:8px;
  font-weight:700;
  letter-spacing:.2em;
}
.resources-section {
  background:#f1f4f0;
  padding:94px 0;
  color:var(--navy);
}
.resources-inner h2 {
  color:var(--navy);
  font-size:clamp(34px,4.2vw,48px);
  line-height:1.12;
}
.resources-inner h2 span {
  color:#4e65d8;
}
.resources-intro {
  max-width:400px;
  color:#62747c;
  font-size:13px;
  line-height:1.8;
  margin:20px 0 0;
}
.resource-list {
  list-style:none;
  margin:0 0 18px;
  padding:0;
  border-top:1px solid #d7e0e3;
}
.resource-list li {
  display:grid;
  grid-template-columns:34px 1fr;
  align-items:start;
  gap:13px;
  padding:14px 0;
  border-bottom:1px solid #d7e0e3;
}
.resource-list li>span {
  color:#4e65d8;
  font-size:10px;
  font-weight:700;
  letter-spacing:.1em;
}
.resource-list p {
  color:#334b55;
  font-size:13px;
  line-height:1.6;
  margin:0;
}
.resources-inner .inline-link {
  background:none;
  border:0;
  color:#30479c;
  padding:0;
  cursor:pointer;
}
@media(max-width:650px) {
  .hero-art-orbit {
    width:300px;
    height:300px;
  }
  .orbit-inner {
    width:235px;
    height:235px;
  }
  .hero-emblem {
    grid-template-columns:repeat(2,86px);
    gap:10px;
  }
  .hero-art-wordmark {
    bottom:24px;
  }
  .hero-art-caption {
    top:24px;
    right:2%;
  }
  .resources-section {
    padding:72px 0;
  }
  .resources-inner {
    gap:28px;
  }
}

/* Shared type scale refinements */
.eyebrow {
  font-size:10px;
}
.hero-note {
  font-size:11px;
}
.hero-bottom {
  font-size:10px;
}
.scroll-cue {
  font-size:9px;
}
.product-label {
  font-size:9px;
}
.product-overline {
  font-size:11px;
}
.product-description {
  font-size:13px;
}
.feature-list {
  font-size:11px;
}
.product-url {
  font-size:10px;
}
.coming-row strong {
  font-size:12px;
}
.coming-row div span {
  font-size:11px;
}
.coming-soon {
  font-size:9px;
}
.solution-card p {
  font-size:11px;
}
.solution-note {
  font-size:10px;
}
.approach-list h3 {
  font-size:13px;
}
.approach-list p {
  font-size:10px;
}
.contact-card-top {
  font-size:8px;
}
.contact-card p {
  font-size:11px;
}
.phone-label {
  font-size:10px;
}
.footer-main>p {
  font-size:11px;
}
.footer-links,.footer-whatsapp {
  font-size:10px;
}
.footer-bottom {
  font-size:9px;
}

.product-visual {
  margin:0;
  padding:54px 30px 58px;
}
.app-screen {
  width:min(100%,430px);
  color:#15253f;
  background:#f7f8fc;
  border:1px solid rgba(190,203,255,.4);
  border-radius:5px;
  box-shadow:0 28px 64px rgba(1,11,34,.3);
  overflow:hidden;
}
.screen-topline {
  min-height:38px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 16px;
  background:#fff;
  border-bottom:1px solid #e4e8f0;
  color:#708096;
  font-size:8px;
  font-weight:700;
  letter-spacing:.15em;
}
.screen-form {
  width:min(100% - 60px,286px);
  margin:0 auto;
  padding:27px 0 30px;
}
.screen-wordmark {
  color:#162840;
  font-size:10px;
  font-weight:800;
  letter-spacing:.16em;
}
.screen-tagline {
  margin-top:5px;
  color:#4d68ea;
  font-size:9px;
  font-weight:700;
}
.screen-heading {
  margin-top:24px;
  color:#14243c;
  font-size:21px;
  font-weight:700;
  letter-spacing:-.035em;
}
.screen-instruction {
  margin-top:4px;
  color:#758397;
  font-size:10px;
}
.screen-label {
  display:block;
  margin-top:15px;
  margin-bottom:6px;
  color:#374a64;
  font-size:9px;
  font-weight:600;
}
.screen-input {
  height:34px;
  border:1px solid #d9e0eb;
  border-radius:3px;
  background:#fff;
}
.screen-submit {
  display:flex;
  height:38px;
  margin-top:19px;
  padding:0 13px;
  align-items:center;
  justify-content:space-between;
  border-radius:3px;
  color:#fff;
  background:#3f59c8;
  font-size:10px;
  font-weight:700;
}
.screen-submit span {
  font-size:14px;
  font-weight:400;
}
.screen-caption {
  margin-top:15px;
  color:#b6c4df;
  font-size:9px;
  font-weight:700;
  letter-spacing:.16em;
  text-align:center;
}
.hero-art-caption {
  font-size:9px;
}
@media(max-width:650px) {
  .product-visual {
    padding:44px 20px 50px;
  }
  .screen-form {
    width:calc(100% - 46px);
  }
  .screen-heading {
    font-size:19px;
  }
}

/* Refined brand and visual presentations */
.brand-mark { display:block; width:34px; height:34px; flex:none; transform:none; }
.brand-mark.large { width:76px; height:76px; display:block; transform:none; }
.hero-art { min-height:480px; overflow:visible; isolation:isolate; }
.hero-art::before { content:""; position:absolute; inset:8% 0; z-index:-1; border:1px solid rgba(160,178,255,.14); border-radius:50%; background:radial-gradient(circle at 50% 45%,rgba(80,105,220,.2),transparent 54%); }
.hero-art-orbit { border-color:rgba(160,178,255,.18); }
.hero-emblem { width:156px; height:156px; display:block; object-fit:contain; transform:none; filter:drop-shadow(0 22px 38px rgba(0,0,0,.26)); }
.hero-art-wordmark { bottom:10%; gap:0; flex-direction:column; align-items:center; font-size:16px; letter-spacing:.25em; }
.hero-art-wordmark small { margin-top:5px; color:#a8b8e4; font-size:8px; letter-spacing:.32em; }
.hero-art-caption { top:7%; right:2%; padding:9px 12px; border:1px solid rgba(130,151,255,.25); border-radius:2px; background:rgba(7,27,43,.48); }
.hero-signal { position:absolute; z-index:2; display:grid; gap:7px; min-width:205px; padding:16px 18px; border:1px solid rgba(184,198,238,.19); border-radius:9px; background:rgba(11,35,58,.84); box-shadow:0 18px 40px rgba(0,0,0,.17); backdrop-filter:blur(8px); }
.hero-signal span { color:#9aaee0; font-size:8px; font-weight:700; letter-spacing:.16em; }
.hero-signal strong { color:#fff; font-size:13px; letter-spacing:.01em; }
.hero-signal small { color:#9eafbd; font-size:10px; }
.signal-product { left:-1%; top:16%; }
.signal-solutions { right:-1%; bottom:17%; }
.product-card { grid-template-columns:.72fr 1.28fr; border:0; border-radius:16px; overflow:hidden; background:#fff; box-shadow:0 30px 80px rgba(14,34,55,.1); }
.product-info { padding:54px 44px; }
.product-visual.product-concept { min-height:unset; padding:24px; display:flex; flex-direction:column; justify-content:center; gap:12px; background:#101d34; }
.product-concept img { display:block; width:100%; height:auto; border-radius:10px; }
.product-concept .screen-caption { margin:0; color:#b4c1dc; font-size:8px; line-height:1.5; letter-spacing:.13em; }
.custom-list { margin-bottom:34px; }
.custom-visual { margin:0; padding:20px; overflow:hidden; border-radius:18px; background:#edf0f7; }
.custom-visual img { display:block; width:100%; height:auto; border-radius:12px; box-shadow:0 24px 60px rgba(30,47,74,.12); }
.custom-visual figcaption { padding:17px 4px 2px; color:#6b788b; font-size:9px; font-weight:700; letter-spacing:.13em; }
.custom-bottom-cta { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:27px 0 0; }
.custom-bottom-cta p { max-width:610px; margin:0; color:#657784; font-size:14px; line-height:1.75; }
.custom-bottom-cta .button { flex:none; }
.business-area-grid article:first-child { position:relative; }
.business-area-grid article:first-child::after { content:""; position:absolute; top:28px; right:30px; width:7px; height:7px; border-radius:50%; background:#8297ff; box-shadow:0 0 0 7px #eef0ff; }
.service-cta { display:inline-flex; margin-top:10px; border:0; background:none; padding:0; color:#344c9f; font-size:11px; font-weight:700; cursor:pointer; }
.service-cta:hover { color:#536be9; }
.button-quiet { background:transparent; border:1px solid rgba(211,220,224,.26); }
.button-quiet:hover { background:rgba(255,255,255,.06); border-color:rgba(211,220,224,.48); }
@media(max-width:900px) {
  .hero-art { min-height:390px; }
  .hero-signal { min-width:175px; padding:13px 14px; }
  .signal-product { left:0; }
  .signal-solutions { right:0; }
  .product-card { grid-template-columns:1fr; }
  .product-info { padding:38px 34px; }
}
@media(max-width:650px) {
  .hero-art { min-height:330px; margin-top:6px; }
  .hero-emblem { width:112px; height:112px; }
  .hero-signal { min-width:0; padding:10px 12px; gap:5px; }
  .hero-signal strong { font-size:10px; }
  .hero-signal small { font-size:8px; }
  .hero-signal span { font-size:7px; }
  .signal-product { top:11%; left:0; }
  .signal-solutions { right:0; bottom:12%; }
  .hero-art-wordmark { bottom:5%; font-size:12px; }
  .hero-art-caption { top:0; right:0; font-size:7px; }
  .product-info { padding:32px 24px; }
  .product-visual.product-concept { padding:14px; }
  .custom-visual { padding:10px; border-radius:13px; }
  .custom-visual figcaption { font-size:8px; line-height:1.6; }
  .custom-bottom-cta { align-items:flex-start; flex-direction:column; gap:16px; }
}
