ax-home{--dark:#1B4B5A;--teal:#2B6675;--accent:#4A8FA3;--ink:#102b36;--muted:#60757d;--surface:#eef5f7;--line:rgba(27,75,90,.13);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;overflow:clip}
.ax-home *{box-sizing:border-box}.ax-home h1,.ax-home h2,.ax-home h3,.ax-home p{margin-top:0}.ax-home a{text-decoration:none;color:inherit}
.ax-shell{width:min(1180px,calc(100% - clamp(32px,7vw,96px)));margin-inline:auto}
.ax-section{padding-block:clamp(76px,9vw,128px);background:#fff}.ax-eyebrow{margin:0 0 14px;color:var(--teal);font-size:.82rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.ax-eyebrow--light{color:#a7d7e0}
.ax-section-title,.ax-hero__title,.ax-cta__title{font-family:"Rajdhani","Exo 2",Inter,system-ui,sans-serif;letter-spacing:-.03em}.ax-section-title{max-width:780px;margin-bottom:20px;font-size:clamp(2rem,3.5vw,3.55rem);line-height:1.02}.ax-section-title--light{color:#fff}.ax-section-body{max-width:660px;margin:0;color:var(--muted);font-size:clamp(1rem,1.2vw,1.1rem);line-height:1.75}.ax-section-copy{align-self:center}.ax-section-copy--right{padding-left:clamp(0px,3vw,40px)}.ax-section-heading{margin-bottom:clamp(38px,6vw,68px)}.ax-section-heading--center{text-align:center}.ax-section-heading--center .ax-section-title{margin-inline:auto}
.ax-hero{position:relative;min-height:clamp(680px,82vh,840px);color:#fff;background:radial-gradient(circle at 78% 22%,rgba(78,151,166,.35),transparent 30%),linear-gradient(100deg,#143f50 0%,#1B4B5A 55%,#2d7080 100%);overflow:hidden;clip-path:none;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 600' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 0H900C960 0 1000 80 1000 190C1000 390 910 545 790 570C620 605 420 565 260 555C155 548 75 555 0 565Z'/%3E%3C/svg%3E");-webkit-mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 600' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 0H900C960 0 1000 80 1000 190C1000 390 910 545 790 570C620 605 420 565 260 555C155 548 75 555 0 565Z'/%3E%3C/svg%3E");mask-size:100% 100%;mask-repeat:no-repeat}
.ax-hero:before{content:"";position:absolute;inset:0;opacity:.14;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(90deg,#000,transparent 75%)}
.ax-hero__inner{position:relative;z-index:1;min-height:inherit;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:clamp(40px,7vw,96px);align-items:center;padding-top:clamp(110px,10vw,145px);padding-bottom:clamp(110px,10vw,145px)}
.ax-hero__copy{max-width:690px}.ax-hero__title{margin-bottom:24px;font-size:clamp(2.75rem,5.2vw,5rem);line-height:.98}.ax-hero__body{max-width:660px;margin-bottom:30px;color:#d5e6ea;font-size:clamp(1rem,1.3vw,1.15rem);line-height:1.75}.ax-actions{display:flex;flex-wrap:wrap;gap:12px}.ax-button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:12px 22px;border:1px solid transparent;border-radius:10px;font-weight:750;transition:transform .2s ease,background .2s ease}.ax-button:hover{transform:translateY(-2px)}.ax-button--primary{background:var(--accent);color:#fff}.ax-button--ghost{border-color:rgba(255,255,255,.28);color:#fff;background:rgba(255,255,255,.04)}.ax-button--light{background:#fff;color:var(--dark)}
.ax-hero__visual{display:grid;place-items:center;min-height:420px}.ax-ai-orb{position:relative;width:min(430px,78vw);aspect-ratio:1;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.17) 0 11%,transparent 12%),radial-gradient(circle,rgba(74,143,163,.4) 0 34%,transparent 35%),radial-gradient(circle,rgba(255,255,255,.07) 0 55%,transparent 56%);filter:drop-shadow(0 30px 45px rgba(3,25,34,.25))}.ax-ai-orb:before{content:"";position:absolute;inset:8%;border:1px solid rgba(255,255,255,.18);border-radius:50%}.ax-ai-orb__core{position:relative;z-index:2;width:34%;aspect-ratio:1;display:grid;place-items:center;border-radius:30%;font-family:"Rajdhani",Inter,sans-serif;font-size:clamp(2rem,5vw,4.4rem);font-weight:800;color:#d9f8ff;background:linear-gradient(145deg,#4A8FA3,#194b5a);border:1px solid rgba(255,255,255,.25);box-shadow:inset 0 0 32px rgba(255,255,255,.14),0 16px 45px rgba(0,0,0,.25)}.ax-ai-orb__ring{position:absolute;inset:16%;border:1px solid rgba(255,255,255,.21);border-radius:50%}.ax-ai-orb__ring--two{inset:28%;border-style:dashed;animation:ax-spin 18s linear infinite}.ax-ai-orb__node{position:absolute;width:14px;aspect-ratio:1;border-radius:50%;background:#a9edff;box-shadow:0 0 22px rgba(169,237,255,.75)}.ax-ai-orb__node--1{top:12%;left:49%}.ax-ai-orb__node--2{top:48%;right:8%}.ax-ai-orb__node--3{bottom:10%;left:40%}.ax-ai-orb__node--4{top:42%;left:10%}@keyframes ax-spin{to{transform:rotate(360deg)}}
.ax-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(52px,8vw,108px);align-items:center}.ax-card-grid{display:grid;gap:20px}.ax-card-grid--services,.ax-card-grid--cases{grid-template-columns:repeat(2,minmax(0,1fr))}.ax-card{border:1px solid var(--line);border-radius:22px;background:var(--surface)}.ax-service-card{min-height:230px;padding:clamp(24px,3vw,34px)}.ax-service-card:nth-child(2),.ax-service-card:nth-child(3){transform:translateY(26px)}.ax-service-card h3,.ax-process-card h3,.ax-why-item h3,.ax-case-card h3,.ax-insight-card h3{margin-bottom:10px;font-size:1.18rem}.ax-service-card p,.ax-process-card p,.ax-why-item p,.ax-case-card p{margin:0;color:var(--muted);line-height:1.65}.ax-icon-badge{width:52px;aspect-ratio:1;display:grid;place-items:center;margin-bottom:24px;border-radius:16px;color:#fff;background:linear-gradient(145deg,var(--dark),var(--accent));font-size:.72rem;font-weight:900}.ax-text-link{display:inline-flex;gap:8px;margin-top:28px;color:var(--dark);font-weight:800}
.ax-check-list{display:grid;gap:14px;margin:30px 0 0;padding:0;list-style:none}.ax-check-list li{position:relative;padding-left:34px;font-weight:700}.ax-check-list li:before{content:"✓";position:absolute;left:0;top:-.1em;width:24px;aspect-ratio:1;display:grid;place-items:center;border-radius:50%;color:#fff;background:var(--teal);font-size:.8rem}
.ax-tech-panel{position:relative;min-height:460px;display:grid;place-items:center}.ax-tech-panel__glow{position:absolute;width:78%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(74,143,163,.28),transparent 65%)}.ax-tech-panel__window{position:relative;width:min(520px,100%);aspect-ratio:1.12;border:1px solid var(--line);border-radius:28px;background:linear-gradient(145deg,#123d4b,#235f70);box-shadow:0 18px 50px rgba(18,58,72,.1);overflow:hidden}.ax-tech-panel__bar{height:58px;display:flex;align-items:center;gap:8px;padding-inline:22px;border-bottom:1px solid rgba(255,255,255,.12)}.ax-tech-panel__bar span{width:9px;aspect-ratio:1;border-radius:50%;background:rgba(255,255,255,.48)}.ax-tech-panel__code{position:absolute;inset:88px 50px 50px}.ax-tech-panel__code i,.ax-tech-panel__code b{display:block;height:13px;margin-bottom:18px;border-radius:999px}.ax-tech-panel__code i{background:rgba(255,255,255,.17)}.ax-tech-panel__code i:nth-child(1){width:72%}.ax-tech-panel__code i:nth-child(2){width:50%}.ax-tech-panel__code i:nth-child(3){width:83%}.ax-tech-panel__code i:nth-child(4){width:61%}.ax-tech-panel__code i:nth-child(5){width:74%}.ax-tech-panel__code b{width:32%;margin-top:30px;background:#72c4d6}
.ax-stats{padding-top:20px}.ax-stats__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.ax-stat{min-height:175px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px 20px;border:1px solid var(--line);border-radius:24px;text-align:center;background:#fff}.ax-stat__value{margin-bottom:8px;font-family:"Rajdhani",Inter,sans-serif;font-size:clamp(2.2rem,4vw,3.6rem);line-height:1}.ax-stat span{color:var(--muted);font-weight:700}
.ax-dark-section{position:relative;color:#fff;background:radial-gradient(circle at 80% 12%,rgba(74,143,163,.22),transparent 34%),linear-gradient(105deg,#153f50,#1B4B5A)}

/* =====================================================
   CASE STUDIES — REFERENCE-INSPIRED LAYOUT
   ===================================================== */
.ax-dark-section.ax-cases{
    position:relative;
    overflow:hidden;
    padding-block:clamp(112px,10vw,150px);
    color:#fff;
    background:
        radial-gradient(circle at 14% 20%,rgba(71,159,184,.20),transparent 30%),
        radial-gradient(circle at 88% 16%,rgba(44,111,135,.22),transparent 32%),
        linear-gradient(105deg,#1b5b6e 0%,#194f62 48%,#123e50 100%);
}

.ax-dark-section.ax-cases::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    opacity:.09;
    background-image:
        linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);
    background-size:44px 44px;
    mask-image:linear-gradient(90deg,#000,rgba(0,0,0,.75) 58%,transparent 100%);
}

.ax-cases>.ax-shell{
    position:relative;
    z-index:1;
}

.ax-cases__heading{
    max-width:760px;
    margin:0 auto clamp(44px,5vw,64px);
    text-align:center;
}

.ax-cases__heading .ax-eyebrow{
    margin-bottom:14px;
}

.ax-cases__heading .ax-section-title{
    max-width:680px;
    margin:0 auto;
    font-size:clamp(2.25rem,4.1vw,3.7rem);
    line-height:1.02;
}

.ax-cases__grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:24px 28px;
}

.ax-case-card{
    display:grid;
    grid-template-columns:minmax(180px,42%) minmax(0,58%);
    min-height:205px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.12);
    border-radius:18px;
    background:rgba(255,255,255,.085);
    box-shadow:0 18px 42px rgba(5,25,33,.16);
    transition:transform .28s ease,border-color .28s ease,background .28s ease,box-shadow .28s ease;
}

.ax-case-card:hover{
    transform:translateY(-5px);
    border-color:rgba(167,221,234,.30);
    background:rgba(255,255,255,.105);
    box-shadow:0 24px 52px rgba(5,25,33,.23);
}

.ax-case-card--image-right{
    grid-template-columns:minmax(0,58%) minmax(180px,42%);
}

.ax-case-card--image-right .ax-case-card__content{
    order:1;
}

.ax-case-card--image-right .ax-case-card__media{
    order:2;
}

.ax-case-card__media{
    position:relative;
    min-height:205px;
    overflow:hidden;
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
}

.ax-case-card__media::after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(135deg,rgba(13,48,61,.04),rgba(13,48,61,.18));
}

/* Attractive fallback visuals when an item has no image URL yet. */
.ax-case-card__media--1{
    background:
        radial-gradient(circle at 66% 34%,rgba(151,226,240,.25),transparent 24%),
        linear-gradient(135deg,#6f8d98 0%,#415c67 38%,#1d3743 100%);
}
.ax-case-card__media--2{
    background:
        radial-gradient(circle at 70% 24%,rgba(246,181,95,.26),transparent 22%),
        linear-gradient(135deg,#8a6a3f 0%,#57432d 38%,#1b3946 100%);
}
.ax-case-card__media--3{
    background:
        radial-gradient(circle at 35% 36%,rgba(81,196,232,.30),transparent 22%),
        linear-gradient(135deg,#31566f 0%,#173c55 42%,#223a45 100%);
}
.ax-case-card__media--4{
    background:
        radial-gradient(circle at 68% 32%,rgba(146,232,249,.24),transparent 22%),
        linear-gradient(135deg,#677f7b 0%,#3e5b60 40%,#223640 100%);
}

.ax-case-card__glow{
    position:absolute;
    right:16px;
    bottom:16px;
    width:118px;
    height:118px;
    z-index:1;
    border-radius:50%;
    background:radial-gradient(circle,rgba(138,230,247,.22),transparent 68%);
}

.ax-case-card__mesh{
    position:absolute;
    inset:0;
    z-index:1;
    opacity:.22;
    background-image:
        linear-gradient(45deg,transparent 0 13px,rgba(255,255,255,.10) 13px 14px),
        linear-gradient(-45deg,transparent 0 13px,rgba(255,255,255,.06) 13px 14px);
    background-size:28px 28px;
}

.ax-case-card__content{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:26px 28px;
}

.ax-case-card__tag{
    margin:0 0 8px;
    color:#a7ddea;
    font-size:.73rem;
    font-weight:850;
    letter-spacing:.09em;
    text-transform:uppercase;
}

.ax-case-card h3{
    margin:0 0 10px;
    color:#fff;
    font-size:clamp(1.12rem,1.35vw,1.42rem);
    line-height:1.2;
}

.ax-case-card p:not(.ax-case-card__tag){
    margin:0;
    color:#d5e6ea;
    font-size:.94rem;
    line-height:1.58;
}

.ax-case-card__button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    align-self:flex-start;
    min-height:39px;
    margin-top:17px;
    padding:9px 17px;
    border-radius:7px;
    color:#143f50!important;
    background:#fff;
    font-size:.82rem;
    font-weight:800;
    box-shadow:0 6px 16px rgba(3,24,32,.10);
    transition:transform .2s ease,background .2s ease,box-shadow .2s ease;
}

.ax-case-card__button:hover{
    transform:translateY(-2px);
    background:#eef9fb;
    box-shadow:0 9px 20px rgba(3,24,32,.16);
}

.ax-cases__footer{
    display:flex;
    justify-content:center;
    margin-top:36px;
}

.ax-case-more-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:10px 24px;
    border-radius:7px;
    color:#fff!important;
    background:#0b1013;
    font-size:.83rem;
    font-weight:800;
    box-shadow:0 8px 20px rgba(0,0,0,.16);
    transition:transform .2s ease,background .2s ease;
}

.ax-case-more-button:hover{
    transform:translateY(-2px);
    background:#151d21;
}

@media(max-width:920px){
    .ax-cases__grid{
        grid-template-columns:1fr;
    }

    .ax-case-card,
    .ax-case-card--image-right{
        grid-template-columns:minmax(175px,38%) minmax(0,62%);
    }

    .ax-case-card--image-right .ax-case-card__media,
    .ax-case-card--image-right .ax-case-card__content{
        order:initial;
    }
}

@media(max-width:620px){
    .ax-dark-section.ax-cases{
        padding-block:90px;
    }

    .ax-cases__heading{
        margin-bottom:38px;
    }

    .ax-case-card,
    .ax-case-card--image-right{
        grid-template-columns:1fr;
    }

    .ax-case-card__media{
        min-height:190px;
    }

    .ax-case-card__content{
        padding:23px 22px 24px;
    }

    .ax-case-card__button,
    .ax-case-more-button{
        width:100%;
    }
}
.ax-process-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.ax-process-card{min-height:220px;padding:30px;border:1px solid var(--line);border-radius:22px;background:var(--surface)}.ax-process-card__number{display:block;margin-bottom:28px;color:rgba(27,75,90,.24);font-family:"Rajdhani",Inter,sans-serif;font-size:2.3rem;font-weight:800}.ax-flow-visual{
    position:relative;
    min-height:330px;
    margin-top:36px;
    overflow:hidden;
    border:1px solid var(--line);
    border-radius:28px;
    background:
        radial-gradient(circle at 70% 40%,rgba(122,193,210,.20),transparent 18%),
        linear-gradient(180deg,#edf6f8 0%,#e8f2f5 100%);
    box-shadow:0 22px 50px rgba(15,54,69,.08);
}

.ax-flow-visual__grid{
    position:absolute;
    inset:0;
    pointer-events:none;
    opacity:.45;
    background-image:
        linear-gradient(rgba(37,104,121,.06) 1px,transparent 1px),
        linear-gradient(90deg,rgba(37,104,121,.06) 1px,transparent 1px);
    background-size:32px 32px;
}

.ax-flow-visual__path{
    position:absolute;
    height:2px;
    border-radius:999px;
    background:linear-gradient(90deg,rgba(73,149,169,.30),rgba(73,149,169,.75));
    transform-origin:left center;
}

.ax-flow-visual__path--1{
    top:76px;
    left:88px;
    width:120px;
    transform:rotate(18deg);
}

.ax-flow-visual__path--2{
    top:126px;
    left:178px;
    width:116px;
    transform:rotate(-16deg);
}

.ax-flow-visual__path--3{
    top:170px;
    left:86px;
    width:128px;
    transform:rotate(10deg);
}

.ax-flow-step{
    position:absolute;
    width:116px;
    min-height:88px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:10px;
    padding:14px 12px;
    border:1px solid rgba(28,84,101,.10);
    border-radius:20px;
    background:rgba(255,255,255,.72);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
    box-shadow:0 12px 30px rgba(15,54,69,.08);
    text-align:center;
}

.ax-flow-step--1{
    top:28px;
    left:30px;
}

.ax-flow-step--2{
    top:68px;
    right:28px;
}

.ax-flow-step--3{
    bottom:34px;
    left:58px;
}

.ax-flow-step--4{
    right:38px;
    bottom:20px;
}

.ax-flow-step__badge{
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border-radius:50%;
    color:#fff;
    background:linear-gradient(145deg,#1d5568,#3f8396);
    box-shadow:0 8px 18px rgba(29,85,104,.22);
    font-size:.84rem;
    font-weight:800;
    letter-spacing:.05em;
}

.ax-flow-step__label{
    color:#163746;
    font-size:.92rem;
    font-weight:750;
    line-height:1.2;
}

@media(max-width:1024px){
    .ax-flow-visual{
        min-height:300px;
    }

    .ax-flow-step{
        width:104px;
        min-height:82px;
        padding:12px 10px;
    }

    .ax-flow-step__label{
        font-size:.86rem;
    }
}

@media(max-width:768px){
    .ax-flow-visual{
        min-height:280px;
        border-radius:24px;
    }

    .ax-flow-step{
        width:96px;
        min-height:76px;
    }

    .ax-flow-step__badge{
        width:38px;
        height:38px;
        font-size:.78rem;
    }

    .ax-flow-step__label{
        font-size:.8rem;
    }

    .ax-flow-visual__path--1{
        top:72px;
        left:76px;
        width:92px;
    }

    .ax-flow-visual__path--2{
        top:116px;
        left:154px;
        width:92px;
    }

    .ax-flow-visual__path--3{
        top:158px;
        left:74px;
        width:100px;
    }
}

@media(max-width:520px){
    .ax-flow-visual{
        min-height:250px;
    }

    .ax-flow-step{
        width:84px;
        min-height:68px;
        padding:10px 8px;
        border-radius:16px;
    }

    .ax-flow-step--1{
        top:20px;
        left:18px;
    }

    .ax-flow-step--2{
        top:54px;
        right:16px;
    }

    .ax-flow-step--3{
        bottom:24px;
        left:24px;
    }

    .ax-flow-step--4{
        right:22px;
        bottom:16px;
    }

    .ax-flow-step__badge{
        width:34px;
        height:34px;
        font-size:.72rem;
    }

    .ax-flow-step__label{
        font-size:.74rem;
    }

    .ax-flow-visual__path--1{
        top:61px;
        left:58px;
        width:82px;
    }

    .ax-flow-visual__path--2{
        top:98px;
        left:124px;
        width:84px;
    }

    .ax-flow-visual__path--3{
        top:136px;
        left:58px;
        width:88px;
    }
}


.ax-why-list{display:grid;gap:16px}.ax-why-item{display:grid;grid-template-columns:68px 1fr;gap:22px;padding:26px 28px;border:1px solid var(--line);border-radius:20px;background:#fff}.ax-why-item__index{color:var(--accent);font-family:"Rajdhani",Inter,sans-serif;font-size:2rem;font-weight:800}
.ax-testimonials{padding-block:clamp(110px,11vw,150px);clip-path:polygon(0 5%,8% 0,96% 3%,100% 14%,100% 84%,94% 97%,0 94%)}.ax-testimonial-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.ax-testimonial{min-height:300px;display:flex;flex-direction:column;justify-content:space-between;padding:30px;border:1px solid rgba(255,255,255,.12);border-radius:22px;background:rgba(255,255,255,.08)}.ax-testimonial__quote{color:#e4f0f3;font-size:clamp(1.05rem,1.5vw,1.22rem);line-height:1.7}.ax-testimonial footer{display:grid;gap:4px}.ax-testimonial footer span{color:#a9cbd3;font-size:.9rem}
.ax-card-grid--insights{grid-template-columns:repeat(3,1fr)}.ax-insight-card a{color:var(--teal);font-weight:800}.ax-insight-card{overflow:hidden;border:1px solid var(--line);border-radius:22px;background:#fff}
.ax-insight-card__visual{
    display:block;
    aspect-ratio:1.55;
    background:linear-gradient(135deg,#193f4c,#4A8FA3);
}
.ax-insight-card__content{
	padding:26px
}
.ax-insight-card h3 a{
    color:inherit;
    text-decoration:none;
}

.ax-insights__footer{
    display:flex;
    justify-content:center;
    margin-top:42px;
}
.ax-cta{padding-block:clamp(66px,8vw,100px);color:#fff;background:linear-gradient(100deg,#143f50,#2B6675)}.ax-cta__inner{display:flex;align-items:center;justify-content:space-between;gap:34px}.ax-cta__title{margin-bottom:12px;font-size:clamp(2rem,4vw,3.6rem)}.ax-cta p{max-width:680px;margin:0;color:#d6e8ec;line-height:1.7}
.ax-reveal{opacity:0;transform:translate3d(0,28px,0);transition:opacity .65s cubic-bezier(.2,.7,.2,1) var(--ax-delay,0ms),transform .65s cubic-bezier(.2,.7,.2,1) var(--ax-delay,0ms);will-change:transform,opacity}.ax-reveal--right{transform:translate3d(34px,0,0)}.ax-reveal.is-visible{opacity:1;transform:none}.ax-home a:focus-visible{outline:3px solid #9ceaff;outline-offset:4px}
@media(max-width:920px){.ax-shell{width:min(100% - 44px,760px)}.ax-hero{min-height:auto;clip-path:none;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 760' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 0H950C985 0 1000 35 1000 90V610C1000 685 940 724 840 738C675 760 510 728 350 720C205 712 100 723 0 738Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 760' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 0H950C985 0 1000 35 1000 90V610C1000 685 940 724 840 738C675 760 510 728 350 720C205 712 100 723 0 738Z'/%3E%3C/svg%3E") }.ax-hero__inner,.ax-split{grid-template-columns:1fr}.ax-hero__inner{gap:30px;padding-top:120px;padding-bottom:130px}.ax-hero__visual{min-height:340px}.ax-section-copy--right{padding-left:0}.ax-split--services .ax-card-grid{order:2}.ax-split--services .ax-section-copy{order:1}.ax-stats__grid{grid-template-columns:repeat(2,1fr)}.ax-card-grid--cases,.ax-card-grid--insights,.ax-testimonial-grid{grid-template-columns:1fr}.ax-cta__inner{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.ax-shell{width:min(100% - 30px,560px)}.ax-section{padding-block:76px}.ax-hero__inner{padding-top:105px;padding-bottom:112px}.ax-actions{flex-direction:column}.ax-button{width:100%}.ax-hero__visual{min-height:290px}.ax-ai-orb{width:min(300px,82vw)}.ax-card-grid--services,.ax-process-grid,.ax-stats__grid{grid-template-columns:1fr}.ax-service-card:nth-child(2),.ax-service-card:nth-child(3){transform:none}.ax-case-card{grid-template-columns:1fr}.ax-why-item{grid-template-columns:52px 1fr;padding:22px}.ax-testimonials{clip-path:polygon(0 2%,100% 0,100% 97%,0 100%)}}
@media(prefers-reduced-motion:reduce){.ax-home *,.ax-home *:before,.ax-home *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.ax-reveal,.ax-reveal--right{opacity:1!important;transform:none!important}}
/* =====================================================
   ABOUT + STATISTICS — REFERENCE-INSPIRED LAYOUT
   Only this block replaces the previously appended About/Stats CSS.
   ===================================================== */

.ax-about {
    padding: clamp(88px, 7vw, 116px) 0 clamp(86px, 7vw, 112px);
    background: #ffffff;
}

.ax-about-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(420px, .98fr);
    gap: clamp(60px, 7vw, 104px);
    align-items: center;
}

.ax-about-copy {
    max-width: 590px;
}

.ax-about .ax-eyebrow {
    margin-bottom: 16px;
}

.ax-about-copy .ax-section-title {
    max-width: 560px;
    margin-bottom: 22px;
}

.ax-about-copy .ax-section-body {
    max-width: 560px;
}

.ax-about .ax-check-list {
    margin-top: 28px;
}

/* -----------------------------------------------------
   RIGHT-SIDE TECH VISUALS
   ----------------------------------------------------- */

.ax-about-media {
    position: relative;
    min-height: 390px;
}

.ax-about-visual {
    position: absolute;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 18px;
    background:
        radial-gradient(circle at 70% 28%, rgba(91, 188, 208, .22), transparent 32%),
        linear-gradient(145deg, #153f50, #286b7d);
    box-shadow: 0 24px 56px rgba(16, 50, 62, .14);
    isolation: isolate;
}

.ax-about-visual::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: .22;
    background-image:
        linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px);
    background-size: 30px 30px;
    mask-image: linear-gradient(135deg, #000, transparent 78%);
}

.ax-about-visual--product {
    top: 8px;
    left: 0;
    width: 56%;
    height: 300px;
}

.ax-about-visual--ai {
    top: 92px;
    right: 0;
    width: 58%;
    height: 320px;
    background:
        radial-gradient(circle at 52% 48%, rgba(102, 210, 231, .26), transparent 30%),
        linear-gradient(145deg, #164453, #1d5b6b);
}

.ax-about-visual__label {
    position: absolute;
    top: 20px;
    left: 22px;
    z-index: 3;
    color: rgba(225, 247, 251, .82);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .14em;
}

/* Product interface illustration */

.ax-product-screen {
    position: absolute;
    inset: 62px 28px 30px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.15);
    border-radius: 15px;
    background: rgba(7, 37, 48, .46);
    box-shadow: inset 0 0 34px rgba(107, 211, 232, .06);
}

.ax-product-screen__dot {
    position: absolute;
    top: 15px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: rgba(213, 241, 247, .52);
}

.ax-product-screen__dot--1 { left: 17px; }
.ax-product-screen__dot--2 { left: 30px; }
.ax-product-screen__dot--3 { left: 43px; }

.ax-product-screen__panel {
    position: absolute;
    top: 46px;
    left: 20px;
    right: 20px;
    display: grid;
    gap: 10px;
}

.ax-product-screen__panel i,
.ax-product-screen__panel b {
    display: block;
    height: 9px;
    border-radius: 999px;
}

.ax-product-screen__panel i {
    background: rgba(255,255,255,.18);
}

.ax-product-screen__panel i:nth-child(1) { width: 84%; }
.ax-product-screen__panel i:nth-child(2) { width: 62%; }
.ax-product-screen__panel i:nth-child(3) { width: 76%; }

.ax-product-screen__panel b {
    margin-top: 7px;
    background: #73c8da;
}

.ax-product-screen__panel b:nth-of-type(1) { width: 42%; }
.ax-product-screen__panel b:nth-of-type(2) { width: 30%; }

.ax-product-screen__chart {
    position: absolute;
    right: 20px;
    bottom: 20px;
    left: 20px;
    height: 45px;
    display: flex;
    align-items: end;
    gap: 8px;
    padding-top: 7px;
    border-top: 1px solid rgba(255,255,255,.10);
}

.ax-product-screen__chart span {
    flex: 1;
    border-radius: 6px 6px 2px 2px;
    background: linear-gradient(#79cfdf, rgba(121,207,223,.28));
}

.ax-product-screen__chart span:nth-child(1) { height: 38%; }
.ax-product-screen__chart span:nth-child(2) { height: 72%; }
.ax-product-screen__chart span:nth-child(3) { height: 52%; }
.ax-product-screen__chart span:nth-child(4) { height: 90%; }

/* AI illustration */

.ax-about-ai {
    position: absolute;
    top: 76px;
    left: 50%;
    width: 150px;
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    transform: translateX(-50%);
    border-radius: 50%;
    background: radial-gradient(circle, rgba(111, 213, 232, .20), transparent 66%);
}

.ax-about-ai strong {
    position: relative;
    z-index: 2;
    width: 70px;
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 24px;
    color: #e5f9fd;
    background: linear-gradient(145deg, #4A8FA3, #174857);
    box-shadow:
        inset 0 0 22px rgba(255,255,255,.10),
        0 12px 28px rgba(0,0,0,.18);
    font-family: "Rajdhani", Inter, sans-serif;
    font-size: 28px;
}

.ax-about-ai__ring {
    position: absolute;
    border: 1px solid rgba(201, 240, 248, .24);
    border-radius: 50%;
}

.ax-about-ai__ring--one { inset: 8%; }
.ax-about-ai__ring--two {
    inset: 22%;
    border-style: dashed;
    animation: ax-about-spin 16s linear infinite;
}

.ax-about-ai__node {
    position: absolute;
    width: 8px;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #a9edff;
    box-shadow: 0 0 14px rgba(169,237,255,.72);
}

.ax-about-ai__node--1 { top: 8%; left: 48%; }
.ax-about-ai__node--2 { right: 5%; top: 51%; }
.ax-about-ai__node--3 { bottom: 9%; left: 28%; }

@keyframes ax-about-spin {
    to { transform: rotate(360deg); }
}

.ax-ai-status {
    position: absolute;
    right: 28px;
    bottom: 28px;
    left: 28px;
    display: grid;
    gap: 8px;
}

.ax-ai-status span {
    display: block;
    height: 7px;
    border-radius: 999px;
    background: rgba(255,255,255,.15);
}

.ax-ai-status span:nth-child(1) { width: 86%; }
.ax-ai-status span:nth-child(2) { width: 66%; }
.ax-ai-status span:nth-child(3) {
    width: 42%;
    background: rgba(114, 196, 214, .75);
}

/* -----------------------------------------------------
   STAT CARDS
   ----------------------------------------------------- */

.ax-about-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(14px, 2vw, 22px);
    margin-top: clamp(72px, 7vw, 94px);
}

.ax-stat-card {
    position: relative;
    min-height: 158px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 54px 18px 24px;
    text-align: center;
    background:
        linear-gradient(180deg, rgba(238,245,247,.38), #ffffff 48%);
    border: 1px solid var(--line);
    border-radius: 18px;
    box-shadow: 0 10px 30px rgba(24, 66, 80, .035);
}

.ax-stat-icon {
    position: absolute;
    top: -36px;
    left: 50%;
    width: 74px;
    height: 74px;
    display: grid;
    place-items: center;
    transform: translateX(-50%);
    border: 6px solid #ffffff;
    border-radius: 50%;
    color: #ffffff;
    background: linear-gradient(145deg, #184b5a, #2d788a);
    box-shadow: 0 10px 26px rgba(25, 78, 92, .16);
}

.ax-stat-icon svg {
    width: 31px;
    height: 31px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.ax-stat-number {
    display: block;
    margin-bottom: 8px;
    color: #0d2630;
    font-family: "Rajdhani", Inter, sans-serif;
    font-size: clamp(2.4rem, 3.2vw, 3.15rem);
    font-weight: 800;
    line-height: 1;
}

.ax-stat-label {
    max-width: 170px;
    color: var(--muted);
    font-size: .87rem;
    font-weight: 700;
    line-height: 1.35;
}

/* -----------------------------------------------------
   RESPONSIVE
   ----------------------------------------------------- */

@media (max-width: 1100px) {
    .ax-about-layout {
        grid-template-columns: minmax(0, 1fr) minmax(360px, .9fr);
        gap: 54px;
    }

    .ax-about-visual--product {
        width: 58%;
        height: 280px;
    }

    .ax-about-visual--ai {
        width: 60%;
        height: 300px;
    }
}

@media (max-width: 920px) {
    .ax-about {
        padding-block: 86px 90px;
    }

    .ax-about-layout {
        grid-template-columns: 1fr;
        gap: 54px;
    }

    .ax-about-copy {
        max-width: 680px;
    }

    .ax-about-media {
        width: min(100%, 680px);
        min-height: 410px;
        margin-inline: auto;
    }

    .ax-about-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 58px 18px;
        margin-top: 78px;
    }
}

@media (max-width: 620px) {
    .ax-about {
        padding-block: 72px 78px;
    }

    .ax-about-layout {
        gap: 42px;
    }

    .ax-about-media {
        min-height: 380px;
    }

    .ax-about-visual--product {
        top: 0;
        left: 0;
        width: 68%;
        height: 250px;
    }

    .ax-about-visual--ai {
        top: 104px;
        right: 0;
        width: 70%;
        height: 270px;
    }

    .ax-about-visual__label {
        top: 16px;
        left: 17px;
        font-size: 9px;
    }

    .ax-product-screen {
        inset: 54px 18px 20px;
    }

    .ax-about-ai {
        top: 65px;
        width: 130px;
    }

    .ax-ai-status {
        right: 20px;
        bottom: 20px;
        left: 20px;
    }

    .ax-about-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 54px 12px;
        margin-top: 68px;
    }

    .ax-stat-card {
        min-height: 150px;
        padding-inline: 12px;
    }

    .ax-stat-icon {
        width: 68px;
        height: 68px;
        top: -33px;
    }

    .ax-stat-icon svg {
        width: 28px;
        height: 28px;
    }

    .ax-stat-label {
        font-size: .78rem;
    }
}

@media (max-width: 390px) {
    .ax-about-stats {
        grid-template-columns: 1fr;
        gap: 54px;
    }
}

/* =====================================================
   CASE STUDIES — ORGANIC RESPONSIVE SHAPE
   Shape only.
   Cards, typography, spacing and layout remain unchanged.
===================================================== */


/* =====================================================
   LARGE DESKTOP / DESKTOP / LAPTOP
   Smooth top + bottom waves with stable side corners
===================================================== */

.ax-home .ax-dark-section.ax-cases {
    clip-path: none !important;
    -webkit-clip-path: none !important;

    -webkit-mask-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 1000' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 90C0 64 24 50 70 42C260 10 450 27 635 52C825 78 1012 91 1138 70C1176 64 1200 75 1200 103V900C1200 926 1176 938 1138 934C978 915 842 919 680 944C470 976 268 974 72 954C25 949 0 930 0 900Z'/%3E%3C/svg%3E");

    mask-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 1000' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 90C0 64 24 50 70 42C260 10 450 27 635 52C825 78 1012 91 1138 70C1176 64 1200 75 1200 103V900C1200 926 1176 938 1138 934C978 915 842 919 680 944C470 976 268 974 72 954C25 949 0 930 0 900Z'/%3E%3C/svg%3E");

    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;

    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;

    -webkit-mask-position: center;
    mask-position: center;

    padding-top: clamp(130px, 11vw, 170px);
    padding-bottom: clamp(125px, 10vw, 160px);
}


/* =====================================================
   IPAD / TABLET / MOBILE
   Taller mask keeps the same shape without side cut-outs
===================================================== */

@media (max-width: 921px) {

    .ax-home .ax-dark-section.ax-cases {
        -webkit-mask-image:
            url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1800' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 64C0 44 18 34 54 29C206 8 372 17 540 36C708 55 856 66 932 53C974 46 1000 55 1000 78V1720C1000 1741 979 1751 942 1747C812 1733 697 1737 560 1754C383 1777 210 1775 68 1761C23 1756 0 1740 0 1719Z'/%3E%3C/svg%3E");

        mask-image:
            url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1800' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 64C0 44 18 34 54 29C206 8 372 17 540 36C708 55 856 66 932 53C974 46 1000 55 1000 78V1720C1000 1741 979 1751 942 1747C812 1733 697 1737 560 1754C383 1777 210 1775 68 1761C23 1756 0 1740 0 1719Z'/%3E%3C/svg%3E");

        -webkit-mask-size: 100% 100%;
        mask-size: 100% 100%;

        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;

        -webkit-mask-position: center;
        mask-position: center;
    }

}


/* =====================================================
   TESTIMONIALS — REFERENCE DESIGN
   ===================================================== */

.ax-testimonials {
    position: relative !important;
    overflow: hidden !important;

    padding:
        clamp(120px, 10vw, 160px)
        0
        clamp(125px, 10vw, 165px) !important;

    color: #ffffff;

    background:
        radial-gradient(
            circle at 88% 35%,
            rgba(75, 164, 187, 0.28),
            transparent 34%
        ),
        radial-gradient(
            circle at 14% 48%,
            rgba(43, 117, 139, 0.16),
            transparent 34%
        ),
        linear-gradient(
            100deg,
            #123f54 0%,
            #174f63 48%,
            #28798c 100%
        ) !important;

    /*
     * Smooth responsive SVG mask:
     * - wavy top
     * - curved bottom
     * - large rounded right edge
     */
    -webkit-mask-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 520' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 58C145 77 285 72 430 62C595 50 738 46 842 60C934 72 986 126 997 193C1010 275 990 353 932 397C876 440 800 447 695 443C540 437 393 419 248 422C156 424 74 431 0 443Z'/%3E%3C/svg%3E");

    mask-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 520' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 58C145 77 285 72 430 62C595 50 738 46 842 60C934 72 986 126 997 193C1010 275 990 353 932 397C876 440 800 447 695 443C540 437 393 419 248 422C156 424 74 431 0 443Z'/%3E%3C/svg%3E");

    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;

    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;

    clip-path: none !important;
}


/* -----------------------------------------------------
   Subtle technology grid
   ----------------------------------------------------- */

.ax-testimonials::before {
    content: "";

    position: absolute;
    inset: 0;

    pointer-events: none;

    opacity: 0.12;

    background-image:
        linear-gradient(
            rgba(255, 255, 255, 0.07) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255, 255, 255, 0.07) 1px,
            transparent 1px
        );

    background-size: 44px 44px;

    -webkit-mask-image:
        linear-gradient(
            90deg,
            rgba(0,0,0,.85),
            rgba(0,0,0,.35),
            transparent 90%
        );

    mask-image:
        linear-gradient(
            90deg,
            rgba(0,0,0,.85),
            rgba(0,0,0,.35),
            transparent 90%
        );
}


/* =====================================================
   MAIN LAYOUT
   ===================================================== */

.ax-testimonials__inner {
    position: relative;
    z-index: 2;

    display: grid;

    grid-template-columns:
        minmax(0, 1.08fr)
        minmax(320px, 0.92fr);

    align-items: center;

    gap: clamp(45px, 6vw, 90px);
}


/* =====================================================
   LEFT — TESTIMONIAL CARDS
   ===================================================== */

.ax-testimonials__cards {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 18px;
}


.ax-testimonial {
    min-height: 245px !important;

    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;

    padding: 28px 26px !important;

    border:
        1px solid
        rgba(255, 255, 255, 0.12) !important;

    border-radius: 10px !important;

    background:
        linear-gradient(
            145deg,
            rgba(255,255,255,0.12),
            rgba(255,255,255,0.07)
        ) !important;

    box-shadow:
        0 14px 34px
        rgba(6, 31, 40, 0.10) !important;

    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);

    transition:
        transform 0.25s ease,
        background 0.25s ease,
        border-color 0.25s ease;
}


.ax-testimonial:hover {
    transform: translateY(-5px);

    background:
        rgba(255, 255, 255, 0.14) !important;

    border-color:
        rgba(255, 255, 255, 0.20) !important;
}


/* =====================================================
   CLIENT HEADER
   ===================================================== */

.ax-testimonial__person {
    display: flex;

    align-items: center;

    gap: 12px;

    margin-bottom: 20px;
}


/* Circular avatar */
.ax-testimonial__avatar {
    width: 42px;
    height: 42px;

    flex: 0 0 42px;

    display: grid;

    place-items: center;

    overflow: hidden;

    border-radius: 50%;

    border:
        2px solid
        rgba(255, 255, 255, 0.26);

    background:
        linear-gradient(
            145deg,
            #2e8194,
            #153f51
        );

    color: #ffffff;

    font-size: 14px;
    font-weight: 800;
}


.ax-testimonial__avatar img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}


.ax-testimonial__avatar span {
    line-height: 1;
}


/* Name + role */
.ax-testimonial__identity {
    min-width: 0;

    display: grid;

    gap: 2px;
}


.ax-testimonial__identity strong {
    color: #ffffff;

    font-size: 0.96rem;
    font-weight: 800;

    line-height: 1.25;
}


.ax-testimonial__identity span {
    color: #b5d0d6;

    font-size: 0.78rem;

    line-height: 1.3;
}


/* =====================================================
   TESTIMONIAL TEXT
   ===================================================== */

.ax-testimonial__quote {
    margin: 0 !important;

    color: #e2eff2 !important;

    font-size:
        clamp(
            0.92rem,
            1.1vw,
            1rem
        ) !important;

    line-height: 1.72 !important;

    font-weight: 400;
}


/* Remove old footer styling */
.ax-testimonial footer {
    display: none !important;
}


/* =====================================================
   RIGHT CONTENT
   ===================================================== */

.ax-testimonials__copy {
    max-width: 510px;

    padding-left:
        clamp(0px, 2vw, 22px);
}


.ax-testimonials__copy .ax-eyebrow {
    margin-bottom: 13px;
}


.ax-testimonials__copy .ax-section-title {
    max-width: 500px;

    margin-bottom: 20px;

    font-size:
        clamp(
            2.5rem,
            4.2vw,
            4.5rem
        );

    line-height: 0.96;
}


.ax-testimonials__description {
    max-width: 490px;

    margin: 0;

    color: #d4e7eb;

    font-size:
        clamp(
            0.95rem,
            1.2vw,
            1.05rem
        );

    line-height: 1.72;
}


/* =====================================================
   SMALL BLACK CONTROLS
   ===================================================== */

.ax-testimonials__controls {
    display: flex;

    gap: 8px;

    margin-top: 25px;
}


.ax-testimonials__controls span {
    width: 34px;
    height: 34px;

    display: grid;

    place-items: center;

    border-radius: 5px;

    background: #080b0d;

    color: #ffffff;

    font-size: 22px;

    line-height: 1;

    cursor: default;

    box-shadow:
        0 5px 14px
        rgba(0,0,0,.15);
}


/* =====================================================
   LAPTOP
   ===================================================== */

@media (max-width: 1100px) {

    .ax-testimonials__inner {
        grid-template-columns:
            minmax(0, 1fr)
            minmax(300px, 0.82fr);

        gap: 45px;
    }


    .ax-testimonial {
        min-height: 235px !important;

        padding:
            24px 22px !important;
    }

}


/* =====================================================
   TABLETS / IPAD
   ===================================================== */

@media (max-width: 920px) {

    .ax-testimonials {
        padding:
            115px
            0
            120px !important;

        /*
         * Taller responsive mask.
         */
        -webkit-mask-image:
            url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 820' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 55C180 82 390 61 610 58C830 55 960 88 995 180C1010 228 1000 640 966 700C915 778 800 776 650 758C480 738 315 739 165 754C100 761 44 765 0 769Z'/%3E%3C/svg%3E");

        mask-image:
            url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 820' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 55C180 82 390 61 610 58C830 55 960 88 995 180C1010 228 1000 640 966 700C915 778 800 776 650 758C480 738 315 739 165 754C100 761 44 765 0 769Z'/%3E%3C/svg%3E");
    }


    .ax-testimonials__inner {
        grid-template-columns: 1fr;

        gap: 42px;
    }


    /*
     * On tablets the heading appears first.
     */
    .ax-testimonials__copy {
        order: 1;

        max-width: 620px;

        padding-left: 0;
    }


    .ax-testimonials__cards {
        order: 2;

        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }


    .ax-testimonials__copy .ax-section-title {
        max-width: 620px;
    }

}


/* =====================================================
   MOBILE
   ===================================================== */

@media (max-width: 620px) {

    .ax-testimonials {
        padding:
            105px
            0
            110px !important;

        -webkit-mask-image:
            url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1200' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 45C220 82 520 58 745 66C905 72 982 117 998 192V1008C985 1081 890 1120 730 1112C520 1102 340 1085 170 1102C105 1108 50 1118 0 1122Z'/%3E%3C/svg%3E");

        mask-image:
            url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1200' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 45C220 82 520 58 745 66C905 72 982 117 998 192V1008C985 1081 890 1120 730 1112C520 1102 340 1085 170 1102C105 1108 50 1118 0 1122Z'/%3E%3C/svg%3E");
    }


    .ax-testimonials__inner {
        gap: 34px;
    }


    .ax-testimonials__cards {
        grid-template-columns: 1fr;

        gap: 14px;
    }


    .ax-testimonial {
        min-height: 0 !important;

        padding:
            24px 22px !important;
    }


    .ax-testimonials__copy .ax-section-title {
        font-size:
            clamp(
                2.4rem,
                12vw,
                3.5rem
            );
    }


    .ax-testimonials__controls span {
        width: 38px;
        height: 38px;
    }

}


/* =====================================================
   VERY SMALL MOBILE
   ===================================================== */

@media (max-width: 390px) {

    .ax-testimonial__person {
        align-items: flex-start;
    }


    .ax-testimonial__avatar {
        width: 38px;
        height: 38px;

        flex-basis: 38px;
    }

}


/* Accessibility */
@media (prefers-reduced-motion: reduce) {

    .ax-testimonial {
        transition: none;
    }

}
/* =====================================================
   ALGORIXSTUDIOS FOOTER
   Reference-style newsletter + footer
   ===================================================== */


/* =====================================================
   HIDE ASTRA DEFAULT FOOTER ON THIS HOMEPAGE ONLY
   ===================================================== */

body.has-algorix-homepage #colophon,
body.has-algorix-homepage .site-footer {
    display: none !important;
}


/* =====================================================
   FOOTER WRAPPER
   ===================================================== */

.ax-site-footer {
    position: relative;

    overflow: hidden;

    background: #eaf5f7;

    color: #ffffff;
}


/* =====================================================
   NEWSLETTER
   ===================================================== */

.ax-footer-newsletter {
    position: relative;

    padding:
        clamp(65px, 7vw, 100px)
        0
        clamp(100px, 9vw, 145px);

    background: #eaf5f7;

    color: #102838;
}


.ax-footer-newsletter__inner {
    display: grid;

    grid-template-columns:
        minmax(0, 1.05fr)
        minmax(340px, .95fr);

    align-items: center;

    gap: clamp(55px, 8vw, 130px);
}


/* =====================================================
   NEWSLETTER FORM
   ===================================================== */

.ax-newsletter-form {
    position: relative;

    display: grid;

    grid-template-columns:
        minmax(220px, 1fr)
        auto;

    align-items: center;

    gap: 22px;

    padding-left: 95px;
}


.ax-newsletter-icon {
    position: absolute;

    left: 0;
    top: 50%;

    width: 70px;
    height: 70px;

    transform: translateY(-50%);

    opacity: .22;
}


.ax-newsletter-icon svg {
    width: 100%;
    height: 100%;

    fill: none;

    stroke: #6b8e98;

    stroke-width: 2;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.ax-newsletter-field input {
    width: 100%;
    min-height: 54px;

    padding: 0 18px;

    border: 1px solid transparent;
    border-radius: 6px;

    outline: none;

    background: #ffffff;

    color: #173746;

    font-family: inherit;
    font-size: .95rem;

    box-shadow:
        0 6px 18px
        rgba(20, 64, 78, .04);

    transition:
        border-color .2s ease,
        box-shadow .2s ease;
}


.ax-newsletter-field input::placeholder {
    color: #47616b;

    opacity: 1;
}


.ax-newsletter-field input:focus {
    border-color: #4190a2;

    box-shadow:
        0 0 0 3px
        rgba(65, 144, 162, .10);
}


.ax-newsletter-button {
    min-height: 54px;

    padding: 0 27px;

    border: 0;
    border-radius: 6px;

    background: #080b0c;

    color: #ffffff;

    font-family: inherit;
    font-size: .95rem;
    font-weight: 800;

    cursor: pointer;

    transition:
        transform .2s ease,
        background .2s ease;
}


.ax-newsletter-button:hover {
    transform: translateY(-2px);

    background: #153640;
}


/* =====================================================
   NEWSLETTER TITLE
   ===================================================== */

.ax-newsletter-copy {
    text-align: center;
}


.ax-newsletter-eyebrow {
    display: block;

    margin-bottom: 12px;

    color: #27758a;

    font-size: .88rem;
    font-weight: 800;

    letter-spacing: .03em;

    text-transform: uppercase;
}


.ax-newsletter-copy h2 {
    margin: 0;

    color: #0c1114;

    font-family:
        "Rajdhani",
        "Exo 2",
        Inter,
        system-ui,
        sans-serif;

    font-size:
        clamp(
            2.1rem,
            3.5vw,
            3.5rem
        );

    font-weight: 800;

    line-height: 1;
}


/* =====================================================
   MAIN FOOTER
   ===================================================== */

.ax-footer-main {
    position: relative;

    margin-top: -55px;

    padding:
        clamp(125px, 11vw, 165px)
        0
        0;

    background:
        linear-gradient(
            100deg,
            #086a80 0%,
            #075d73 36%,
            #073b53 100%
        );

    /*
     * Main smooth reference shape.
     */
    -webkit-mask-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 520' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 155C30 75 105 21 210 17C400 11 586 70 780 60C872 55 940 42 1000 48V520H0Z'/%3E%3C/svg%3E");

    mask-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 520' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 155C30 75 105 21 210 17C400 11 586 70 780 60C872 55 940 42 1000 48V520H0Z'/%3E%3C/svg%3E");

    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;

    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
}


/* Background grid */
.ax-footer-main::before {
    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    opacity: .12;

    background-image:

        linear-gradient(
            rgba(255,255,255,.10) 1px,
            transparent 1px
        ),

        linear-gradient(
            90deg,
            rgba(255,255,255,.10) 1px,
            transparent 1px
        );

    background-size: 56px 56px;
}


/* =====================================================
   FOOTER 3-COLUMN GRID
   ===================================================== */

.ax-footer-grid {
    position: relative;

    z-index: 2;

    display: grid;

    grid-template-columns:
        minmax(250px, .85fr)
        minmax(320px, 1.3fr)
        minmax(250px, .85fr);

    gap: clamp(50px, 7vw, 110px);

    align-items: start;

    padding-bottom:
        clamp(60px, 7vw, 90px);
}


.ax-footer-column h3 {
    margin: 0 0 28px;

    color: #ffffff;

    font-size: 1.05rem;

    font-weight: 800;
}


/* =====================================================
   LINKS
   ===================================================== */

.ax-footer-link-columns {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0,1fr));

    gap: 34px;
}


.ax-footer-link-columns nav {
    display: grid;

    align-content: start;

    gap: 17px;
}


.ax-footer-link-columns a {
    color: #e6f3f6;

    font-size: .95rem;

    text-decoration: none;

    transition:
        color .2s ease,
        transform .2s ease;
}


.ax-footer-link-columns a:hover {
    color: #9be1ef;

    transform: translateX(3px);
}


/* =====================================================
   BRAND
   ===================================================== */

.ax-footer-brand {
    text-align: center;
}


.ax-footer-logo {
    display: inline-flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 22px;

    color: #ffffff;

    text-decoration: none;
}


.ax-footer-logo__mark {
    width: 42px;
    height: 42px;

    display: grid;

    place-items: center;

    border: 2px solid
        rgba(255,255,255,.9);

    border-radius: 50%;

    color: #ffffff;

    font-family:
        "Rajdhani",
        Inter,
        sans-serif;

    font-size: 1.45rem;
    font-weight: 800;
}


.ax-footer-logo__text {
    display: grid;

    text-align: left;

    line-height: .95;
}


.ax-footer-logo__text strong {
    font-size: 1.2rem;

    letter-spacing: .04em;
}


.ax-footer-logo__text small {
    margin-top: 5px;

    color: #bcdce3;

    font-size: .62rem;

    letter-spacing: .18em;
}


.ax-footer-brand p {
    max-width: 460px;

    margin:
        0 auto
        27px;

    color: #d9eaee;

    font-size: .95rem;

    line-height: 1.75;
}


/* Socials */
.ax-footer-social {
    display: flex;

    justify-content: center;

    gap: 10px;
}


.ax-footer-social a {
    width: 38px;
    height: 38px;

    display: grid;

    place-items: center;

    border-radius: 6px;

    background: #ffffff;

    color: #0b3040;

    font-size: .88rem;
    font-weight: 800;

    text-decoration: none;

    transition:
        transform .2s ease,
        background .2s ease;
}


.ax-footer-social a:hover {
    transform: translateY(-3px);

    background: #bceaf3;
}


/* =====================================================
   CONTACT
   ===================================================== */

.ax-footer-contact {
    text-align: right;
}


.ax-footer-contact-list {
    display: grid;

    gap: 13px;
}


.ax-footer-contact-list > a,
.ax-footer-contact-list > div {
    display: flex;

    align-items: center;

    justify-content: flex-end;

    gap: 13px;

    color: #e5f3f6;

    font-size: .91rem;

    text-decoration: none;
}


.ax-footer-contact-list i {
    width: 37px;
    height: 37px;

    flex: 0 0 37px;

    display: grid;

    place-items: center;

    border-radius: 7px;

    background: #1694b2;
}


.ax-footer-contact-list svg {
    width: 19px;
    height: 19px;

    fill: none;

    stroke: #ffffff;

    stroke-width: 1.8;

    stroke-linecap: round;
    stroke-linejoin: round;
}


.ax-footer-project-button {
    display: inline-flex;

    align-items: center;

    justify-content: center;

    margin-top: 26px;

    min-height: 44px;

    padding: 0 23px;

    border-radius: 6px;

    background: #080c0e;

    color: #ffffff;

    font-size: .88rem;

    font-weight: 800;

    text-decoration: none;

    transition:
        transform .2s ease,
        background .2s ease;
}


.ax-footer-project-button:hover {
    transform: translateY(-2px);

    background: #172d34;
}


/* =====================================================
   COPYRIGHT BAR
   ===================================================== */

.ax-footer-bottom {
    position: relative;

    z-index: 2;

    min-height: 74px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 30px;

    border-top:
        1px solid
        rgba(255,255,255,.08);

    color: #ffffff;
}


.ax-footer-bottom p {
    margin: 0;

    font-size: .87rem;
    font-weight: 700;
}


.ax-footer-bottom > div {
    display: flex;

    gap: 22px;
}


.ax-footer-bottom a {
    color: #ffffff;

    font-size: .87rem;
    font-weight: 700;

    text-decoration: none;
}


.ax-footer-bottom a:hover {
    color: #9ee3f0;
}


/* =====================================================
   TABLET / IPAD
   ===================================================== */

@media (max-width: 920px) {

    .ax-footer-newsletter {
        padding:
            70px
            0
            120px;
    }


    .ax-footer-newsletter__inner {
        grid-template-columns: 1fr;

        gap: 40px;
    }


    .ax-newsletter-copy {
        grid-row: 1;

        text-align: left;
    }


    .ax-newsletter-form {
        grid-row: 2;

        max-width: 700px;

        padding-left: 80px;
    }


    .ax-footer-main {
        margin-top: -60px;

        padding-top: 150px;

        -webkit-mask-image:
            url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 900' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 120C90 35 255 25 445 47C650 72 820 72 1000 45V900H0Z'/%3E%3C/svg%3E");

        mask-image:
            url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 900' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 120C90 35 255 25 445 47C650 72 820 72 1000 45V900H0Z'/%3E%3C/svg%3E");
    }


    .ax-footer-grid {
        grid-template-columns:
            repeat(2, minmax(0,1fr));

        gap: 55px 45px;
    }


    .ax-footer-brand {
        grid-column: 1 / -1;

        grid-row: 1;
    }


    .ax-footer-links {
        grid-row: 2;
    }


    .ax-footer-contact {
        grid-row: 2;
    }

}


/* =====================================================
   MOBILE
   ===================================================== */

@media (max-width: 620px) {

    .ax-footer-newsletter {
        padding:
            60px
            0
            105px;
    }


    .ax-newsletter-copy {
        text-align: center;
    }


    .ax-newsletter-form {
        grid-template-columns: 1fr;

        gap: 12px;

        padding-left: 0;
    }


    .ax-newsletter-icon {
        display: none;
    }


    .ax-newsletter-button {
        width: 100%;
    }


    .ax-footer-main {
        padding-top: 130px;

        -webkit-mask-image:
            url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1500' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 105C150 28 390 23 610 52C780 74 905 71 1000 55V1500H0Z'/%3E%3C/svg%3E");

        mask-image:
            url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 1500' preserveAspectRatio='none'%3E%3Cpath fill='white' d='M0 105C150 28 390 23 610 52C780 74 905 71 1000 55V1500H0Z'/%3E%3C/svg%3E");
    }


    .ax-footer-grid {
        grid-template-columns: 1fr;

        gap: 48px;

        text-align: center;
    }


    .ax-footer-brand,
    .ax-footer-links,
    .ax-footer-contact {
        grid-column: auto;

        grid-row: auto;
    }


    .ax-footer-link-columns {
        max-width: 320px;

        margin-inline: auto;

        text-align: left;
    }


    .ax-footer-contact {
        text-align: center;
    }


    .ax-footer-contact-list > a,
    .ax-footer-contact-list > div {
        justify-content: center;

        flex-direction: column-reverse;

        gap: 9px;
    }


    .ax-footer-project-button {
        width: 100%;
    }


    .ax-footer-bottom {
        min-height: 110px;

        flex-direction: column;

        justify-content: center;

        text-align: center;

        gap: 13px;
    }


    .ax-footer-bottom > div {
        justify-content: center;

        flex-wrap: wrap;
    }

}


/* =====================================================
   VERY SMALL MOBILE
   ===================================================== */

@media (max-width: 390px) {

    .ax-footer-link-columns {
        grid-template-columns: 1fr;

        text-align: center;

        gap: 16px;
    }

}
.ax-icon-badge svg {
    width: 24px;
    height: 24px;

    display: block;

    fill: none;
    stroke: currentColor;

    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}