:root { --ink: #082553; --muted: #64728c; --brand: #082b62; --blue: #1b62ad; --sky: #e9f5ff; --coral: #ff624d; --paper: #fbfdff; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { min-width: 320px; margin: 0; overflow-x: hidden; color: var(--ink); background: var(--paper); font-family: Manrope, Arial, sans-serif; }
.page-shell { position: relative; min-height: min(836px, 100vh); overflow: hidden; background: radial-gradient(circle at -5% 100%, #cce9ff 0, transparent 26%), radial-gradient(circle at 89% 81%, #d6ecff 0, transparent 34%), linear-gradient(125deg, #fff 0%, #fdfefe 53%, #e9f5ff 100%); }

.site-header { position: relative; z-index: 20; display: flex; align-items: center; gap: 47px; width: min(1022px, calc(100% - 40px)); min-height: 70px; margin: 28px auto 0; padding: 10px 18px; border: 1px solid rgba(255,255,255,.92); border-radius: 13px; background: rgba(255,255,255,.82); box-shadow: 0 16px 32px rgba(19,50,89,.1), inset 0 1px rgba(255,255,255,.9); backdrop-filter: blur(15px); }
.brand { display: inline-flex; flex: 0 0 auto; text-decoration: none; }.brand img { display: block; width: auto; height: 31px; object-fit: contain; }
.main-nav { position: absolute; left: 50%; display: flex; gap: 34px; margin: 0; transform: translateX(-50%); }.main-nav a, .status-link { color: var(--ink); font-size: 14px; font-weight: 700; text-decoration: none; text-transform: uppercase; }.main-nav a:hover, .status-link:hover { color: var(--coral); }.nav-caption, .mobile-menu-cta { display: none; }
.header-actions { display: flex; align-items: center; gap: 23px; margin-left: auto; }.status-link { display: flex; align-items: center; gap: 8px; font-size: 13px; }.status-link i { width: 9px; height: 9px; border-radius: 50%; background: var(--coral); }.menu-toggle { display: none; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 22px; min-height: 59px; padding: 0 28px; border-radius: 7px; font-size: 14px; font-weight: 800; letter-spacing: .01em; text-decoration: none; text-transform: uppercase; transition: transform .2s ease, box-shadow .2s ease; }.button:hover { transform: translateY(-2px); }.button-primary { color: #fff; background: linear-gradient(135deg, #ff704f, var(--coral)); box-shadow: 0 13px 22px rgba(255,98,77,.28); }.button-primary b { font-size: 19px; }.button-outline { min-height: 38px; padding: 0 15px; border: 0; border-radius: 5px; color: white; background: linear-gradient(135deg, #0c3b7c, #06265b); box-shadow: 0 8px 14px rgba(8,43,98,.21); font-size: 11px; }.button-watch { min-width: 187px; color: var(--ink); background: rgba(255,255,255,.87); box-shadow: 0 10px 25px rgba(11,45,85,.09); }.button-watch i { display: grid; width: 31px; height: 31px; place-items: center; border-radius: 50%; color: var(--blue); background: #e9f3ff; font-size: 11px; font-style: normal; }

.final-hero { position: relative; width: min(1542px, calc(100% - 80px)); min-height: 738px; margin: 0 auto; }.hero-copy { position: relative; z-index: 5; width: 780px; padding-top: 102px; }.eyebrow { margin: 0 0 20px; color: var(--coral); font: 500 16px 'DM Mono', monospace; letter-spacing: .04em; text-transform: uppercase; }h1 { max-width: 765px; margin: 0; color: #061e48; font-size: clamp(45px, 4.15vw, 69px); font-weight: 800; letter-spacing: -4.5px; line-height: .99; }h1 span { color: var(--coral); }.hero-description { max-width: 640px; margin: 25px 0 29px; color: #61708b; font-size: 19px; font-weight: 500; line-height: 1.5; }.hero-actions { display: flex; gap: 15px; }

.brief-card { display: flex; gap: 18px; width: 432px; margin-top: 30px; padding: 23px 22px; border: 1px solid rgba(255,255,255,.94); border-radius: 15px; background: rgba(255,255,255,.87); box-shadow: 0 17px 35px rgba(12,50,91,.12); }.robot-icon { display: grid; flex: 0 0 50px; width: 50px; height: 50px; place-items: center; border-radius: 50%; color: #0a3164; background: #ffe8e3; box-shadow: inset 0 0 0 10px #fff3ef; font-size: 22px; }.brief-content { min-width: 0; flex: 1; }.brief-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 7px; }.brief-top span { color: #8a95a9; font-size: 14px; font-weight: 700; text-transform: uppercase; }.brief-top strong { color: #00b978; font-size: 13px; }.brief-top i { display: inline-block; width: 10px; height: 10px; margin-left: 4px; border-radius: 50%; background: #00bd79; }.brief-card h2 { margin: 0; color: #102a56; font-size: 19px; letter-spacing: -.6px; }.brief-card p { margin: 7px 0 15px; color: #6b7890; font-size: 16px; line-height: 1.45; }.card-tags { display: flex; gap: 10px; }.card-tags span { padding: 5px 9px; border-radius: 4px; color: #59677e; background: #edf0f5; font: 500 11px 'DM Mono', monospace; text-transform: uppercase; }.card-tags span:last-child { color: var(--coral); background: #fff0ed; }

.hero-visual { position: absolute; top: 0; right: -205px; width: 970px; height: 738px; overflow: visible; }.orbit { position: absolute; border-radius: 50%; pointer-events: none; }.orbit-dashed-blue { top: 2px; left: 36px; width: 860px; height: 860px; border: 1px dashed #b8d9ff; }.orbit-dashed-coral { top: 67px; left: 86px; width: 712px; height: 712px; border: 2px dashed #ff8d7b; border-left-color: transparent; border-bottom-color: transparent; transform: rotate(-18deg); }.orbit-dark { top: 48px; left: 174px; width: 720px; height: 720px; border: 40px solid transparent; background: conic-gradient(from 14deg, #0a3877 0deg 89deg, transparent 90deg 166deg, #235c9f 167deg 249deg, transparent 250deg 360deg) border-box; -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0); -webkit-mask-composite: xor; mask-composite: exclude; }.orbit-pale { top: 150px; left: 198px; width: 575px; height: 575px; border: 78px solid rgba(191,222,250,.58); box-shadow: inset 25px 23px 33px rgba(24,80,143,.12), 0 0 35px rgba(132,193,255,.35); }.orbit-inner { top: 250px; left: 300px; width: 374px; height: 374px; border: 20px solid transparent; background: conic-gradient(from 10deg, #ff8878 0 34deg, transparent 35deg 153deg, #1b5ca5 154deg 225deg, transparent 226deg 360deg) border-box; -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0); -webkit-mask-composite: xor; mask-composite: exclude; }.orbit-dot { position: absolute; z-index: 2; width: 13px; height: 13px; border-radius: 50%; }.dot-coral { background: var(--coral); box-shadow: 0 0 13px rgba(255,98,77,.7); }.dot-blue { background: #145294; box-shadow: 0 0 10px rgba(20,82,148,.55); }.dot-one { top: 59px; left: 516px; }.dot-two { top: 129px; left: 615px; }.dot-three { top: 662px; left: 254px; }.dot-four { top: 217px; left: 228px; }

.core { position: absolute; z-index: 4; top: 314px; left: 361px; display: grid; width: 250px; height: 250px; place-items: center; border: 16px solid rgba(183,217,250,.72); border-radius: 50%; background: radial-gradient(circle at 35% 27%, #fff 0%, #f8fcff 38%, #cee6ff 100%); box-shadow: 0 18px 28px rgba(20,83,151,.22), inset -13px -14px 27px rgba(32,92,159,.23), inset 12px 11px 25px #fff; }.core-inner { position: relative; display: grid; width: 182px; height: 182px; place-items: center; border-radius: 50%; background: radial-gradient(circle at 35% 30%, #fff, #ecf7ff 61%, #bddbf9); box-shadow: inset 10px 10px 18px #fff, inset -10px -12px 21px rgba(22,83,153,.26); }.core-inner span { font-size: 92px; font-weight: 800; letter-spacing: -13px; line-height: 1; transform: translateX(-5px); }.core-inner i { position: absolute; right: 31px; bottom: 39px; width: 20px; height: 20px; border-radius: 50%; background: var(--coral); }

.service { position: absolute; z-index: 7; display: flex; align-items: center; gap: 17px; }.service-icon { display: grid; width: 84px; height: 84px; place-items: center; border-radius: 50%; color: var(--brand); background: rgba(255,255,255,.92); box-shadow: 0 12px 25px rgba(19,63,112,.13); font-size: 37px; font-weight: 700; }.service-icon.dark { color: white; background: var(--brand); font-size: 40px; }.service b { display: block; color: var(--ink); font-size: 16px; text-transform: uppercase; }.service span { display: block; margin-top: 4px; color: #596987; font: 500 14px 'DM Mono', monospace; line-height: 1.45; }.service-erp { top: 116px; left: 207px; }.service-app { top: 315px; left: 72px; }.service-analytics { top: 529px; left: 100px; }.service-automation { top: 157px; right: 11px; }
.metric-card { position: absolute; z-index: 8; top: 353px; right: 62px; width: 244px; padding: 25px; border: 1px solid rgba(255,255,255,.92); border-radius: 18px; background: rgba(255,255,255,.91); box-shadow: 0 18px 34px rgba(24,65,115,.18); }.metric-card > div { display: flex; align-items: center; gap: 18px; }.metric-card > div + div { margin-top: 19px; }.metric-card i { display: grid; width: 57px; height: 57px; place-items: center; border-radius: 50%; color: #0c4a8d; background: #eff7ff; font-size: 30px; font-style: normal; font-weight: 700; }.metric-card p { margin: 0; }.metric-card strong { display: block; color: #061d46; font-size: 22px; }.metric-card span { display: block; margin-top: 2px; color: #62708a; font-size: 13px; }

/* Hero motion */
.hero-copy > * { animation: reveal-up .7s both cubic-bezier(.22,.8,.28,1); }.hero-copy .eyebrow { animation-delay: .05s; }.hero-copy h1 { animation-delay: .13s; }.hero-copy .hero-description { animation-delay: .22s; }.hero-copy .hero-actions { animation-delay: .31s; }.hero-copy .brief-card { animation-delay: .42s; }
.orbit-dashed-blue { animation: orbit-spin 46s linear infinite; }.orbit-dashed-coral { animation: orbit-spin-reverse 33s linear infinite; }.orbit-dark { animation: orbit-spin 54s linear infinite; }.orbit-pale { animation: soft-float 8s ease-in-out infinite; }.orbit-inner { animation: orbit-spin-reverse 25s linear infinite; }
.core { animation: core-breathe 5s ease-in-out infinite; }.core-inner { animation: core-inner-float 5s ease-in-out infinite; }.orbit-dot { animation: dot-pulse 2.6s ease-in-out infinite; }.dot-two { animation-delay: -.7s; }.dot-three { animation-delay: -1.4s; }.dot-four { animation-delay: -2.1s; }
.service { animation: node-float 5s ease-in-out infinite; }.service-app { animation-delay: -.8s; }.service-analytics { animation-delay: -1.7s; }.service-automation { animation-delay: -2.6s; }.metric-card { animation: metric-enter-float 6.8s .55s both ease-in-out infinite; }

@keyframes reveal-up { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
@keyframes reveal-right { from { opacity: 0; transform: translateX(28px); } to { opacity: 1; transform: translateX(0); } }
@keyframes mobile-menu-in { from { opacity: 0; transform: translateY(-10px) scale(.98); } to { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes orbit-spin { to { transform: rotate(360deg); } }
@keyframes orbit-spin-reverse { to { transform: rotate(-360deg); } }
@keyframes soft-float { 50% { transform: translate(-5px, 8px) scale(1.012); } }
@keyframes core-breathe { 50% { transform: scale(1.035); box-shadow: 0 23px 36px rgba(20,83,151,.28), inset -13px -14px 27px rgba(32,92,159,.23), inset 12px 11px 25px #fff; } }
@keyframes core-inner-float { 50% { transform: translateY(-4px); } }
@keyframes dot-pulse { 50% { transform: scale(1.45); box-shadow: 0 0 22px rgba(255,98,77,.9); } }
@keyframes node-float { 50% { transform: translateY(-10px); } }
@keyframes metric-enter-float { 0% { opacity: 0; transform: translateX(28px); } 12% { opacity: 1; transform: translate(0); } 56% { transform: translateY(-7px); } 100% { opacity: 1; transform: translate(0); } }

@media (max-width: 1100px) { .final-hero { width: calc(100% - 56px); }.hero-copy { width: 55%; }.hero-visual { right: -310px; transform: scale(.88); transform-origin: top right; }.site-header { gap: 25px; }.main-nav { gap: 20px; } }
@media (max-width: 760px) { .page-shell { min-height: 100vh; }.site-header { width: calc(100% - 28px); min-height: 56px; margin-top: 12px; padding: 8px 12px; gap: 12px; }.brand img { height: 25px; }.main-nav { display: none; position: absolute; top: calc(100% + 10px); right: 0; left: 0; padding: 13px; border: 1px solid rgba(255,255,255,.12); border-radius: 16px; background: linear-gradient(145deg, rgba(10,43,91,.98), rgba(4,24,59,.98)); box-shadow: 0 20px 38px rgba(5,29,70,.28); transform: none; }.main-nav.is-open { display: grid; gap: 0; animation: mobile-menu-in .26s both cubic-bezier(.22,.8,.28,1); }.nav-caption { display: block; padding: 6px 11px 12px; color: #a9c7ec; font: 500 10px 'DM Mono', monospace; letter-spacing: .08em; text-transform: uppercase; }.main-nav a { display: flex; align-items: center; min-height: 48px; padding: 0 11px; border-top: 1px solid rgba(220,237,255,.12); color: #fff; font-size: 15px; letter-spacing: -.1px; text-transform: none; }.main-nav a::after { margin-left: auto; content: '↗'; color: #86b9ef; font-size: 17px; }.main-nav .mobile-menu-cta { display: flex; min-height: 48px; justify-content: space-between; margin-top: 12px; border: 0; border-radius: 8px; color: #fff; background: var(--coral); font-size: 14px; font-weight: 800; text-transform: uppercase; }.main-nav .mobile-menu-cta::after { display: none; }.mobile-menu-cta span { font-size: 20px; }.header-actions .status-link, .header-actions .button-outline { display: none; }.header-actions { display: none; }.menu-toggle { position: relative; display: grid; gap: 4px; width: 29px; margin-left: auto; padding: 4px; border: 0; background: transparent; }.menu-toggle span { height: 2px; background: var(--brand); transition: transform .2s ease, opacity .2s ease; }.menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(6px) rotate(45deg); }.menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }.menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-6px) rotate(-45deg); }.final-hero { width: calc(100% - 40px); min-height: 885px; }.hero-copy { width: 100%; padding-top: 70px; }h1 { font-size: clamp(42px, 12vw, 58px); letter-spacing: -3px; }.eyebrow { font-size: 12px; }.hero-description { max-width: 400px; font-size: 16px; }.button { min-height: 52px; padding: 0 19px; font-size: 12px; gap: 12px; }.button-watch { min-width: 150px; }.brief-card { width: min(432px, 100%); margin-top: 27px; }.hero-visual { top: 485px; right: -570px; transform: scale(.6); transform-origin: top right; }.metric-card { right: -18px; } }
@media (max-width: 430px) { .hero-actions { gap: 9px; }.button-watch { min-width: 135px; }.brief-card { padding: 18px 14px; gap: 12px; }.brief-card p { font-size: 14px; }.brief-top strong { display: none; }.hero-visual { right: -618px; transform: scale(.53); } }

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

@media (min-width: 1101px) and (max-width: 1500px) {
    .page-shell { min-height: 100vh; }
    .site-header { width: min(850px, calc(100% - 50px)); min-height: 56px; margin-top: 20px; padding: 8px 14px; gap: 18px; border-radius: 10px; }
    .brand img { height: 26px; }
    .main-nav { gap: 17px; }
    .main-nav a { font-size: 11px; }
    .header-actions { gap: 10px; }
    .status-link { font-size: 10px; white-space: nowrap; }
    .status-link i { width: 7px; height: 7px; }
    .button-outline { min-height: 38px; padding: 0 13px; font-size: 10px; white-space: nowrap; }

    .final-hero { width: calc(100% - 160px); min-height: 570px; }
    .hero-copy { width: 640px; padding-top: 70px; }
    .eyebrow { margin-bottom: 14px; font-size: 12px; }
    h1 { max-width: 640px; font-size: clamp(44px, 4vw, 55px); letter-spacing: -3.5px; }
    .hero-description { max-width: 520px; margin: 19px 0 22px; font-size: 16px; }
    .button { min-height: 50px; padding: 0 21px; font-size: 12px; gap: 16px; }
    .button-watch { min-width: 156px; }
    .button-watch i { width: 26px; height: 26px; font-size: 9px; }
    .brief-card { width: 370px; margin-top: 24px; padding: 18px; border-radius: 12px; gap: 13px; }
    .robot-icon { flex-basis: 42px; width: 42px; height: 42px; font-size: 17px; }
    .brief-top span { font-size: 12px; }.brief-top strong { font-size: 11px; }.brief-card h2 { font-size: 16px; }.brief-card p { margin: 5px 0 11px; font-size: 13px; }.card-tags span { font-size: 9px; }
    .hero-visual { top: 10px; right: -60px; transform: scale(.73); transform-origin: top right; }
    .metric-card { right: 62px; }
}

@media (max-width: 760px) {
    .page-shell { min-height: 100vh; }
    .final-hero { min-height: 1140px; }
    .hero-copy { padding-top: 66px; }
    h1 { max-width: 100%; font-size: 39px; letter-spacing: -2.5px; line-height: 1.04; }
    h1 .team-word { display: block; }
    .hero-description { max-width: 330px; margin: 17px 0 21px; font-size: 15px; }
    .hero-actions { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; width: 100%; }
    .button { width: 100% !important; min-width: 0 !important; padding: 0 11px; }
    .button-watch { min-width: 0 !important; }
    .brief-card { width: 100% !important; max-width: 100% !important; margin-top: 24px; overflow: hidden; }
    .brief-top strong { display: none !important; }
    .hero-visual { top: 490px; right: auto; left: calc(50% - 485px); transform: scale(.38); transform-origin: top center; }
    .service b { font-size: 27px; }
    .service span { font-size: 20px; line-height: 1.28; }
    .service-icon { width: 100px; height: 100px; font-size: 45px; }
    .service-icon.dark { font-size: 47px; }
    .metric-card { width: 292px; padding: 27px; }
    .metric-card i { width: 68px; height: 68px; font-size: 35px; }
    .metric-card strong { font-size: 30px; }
    .metric-card span { font-size: 18px; }
    .hero-copy > * { animation: none; }
}

@media (max-width: 430px) {
    .final-hero { min-height: 1080px; }
    .hero-visual { top: 465px; transform: scale(.35); }
}

@media (min-width: 761px) {
    .site-header .button-outline { min-height: 32px; padding: 0 11px; border-radius: 4px; font-size: 9px; }
}

/* Client showcase */
.clients-section { position: relative; min-height: 560px; padding: 48px 6% 65px; overflow: hidden; background: radial-gradient(circle at 6% 100%, #cfe9ff 0, transparent 22%), radial-gradient(circle at 96% 99%, #cfe9ff 0, transparent 23%), #fff; }
.clients-heading { position: relative; z-index: 2; max-width: 780px; margin: 0 auto 28px; text-align: center; }.clients-kicker { display: flex; align-items: center; justify-content: center; gap: 15px; margin: 0 0 14px; color: #0f6ed8; font: 500 12px 'DM Mono', monospace; letter-spacing: .03em; text-transform: uppercase; }.clients-kicker i { display: block; width: 55px; height: 2px; background: linear-gradient(90deg, transparent, #2487eb); }.clients-kicker i:last-child { transform: scaleX(-1); }.clients-heading h2 { margin: 0; color: #071f4a; font-size: clamp(34px, 3.2vw, 50px); font-weight: 800; letter-spacing: -3px; line-height: 1.03; }.clients-heading h2 span { color: #0c75e5; }.clients-heading > p:last-child { max-width: 690px; margin: 16px auto 0; color: #6a7891; font-size: 16px; line-height: 1.5; }
.clients-arc { position: absolute; z-index: 1; top: 142px; left: -4%; width: 108%; height: 415px; border: 2px solid #b8d9ff; border-bottom: 0; border-radius: 50% 50% 0 0; pointer-events: none; }.arc-dot { position: absolute; top: 7px; width: 14px; height: 14px; border-radius: 50%; box-shadow: 0 4px 13px rgba(22,113,206,.24); }.arc-dot-blue { left: 15%; background: #1195e8; }.arc-dot-coral { right: 3%; top: 144px; background: var(--coral); }
.clients-showcase { position: relative; z-index: 3; width: min(1460px, 100%); margin: 0 auto; }.clients-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 9px 13px; padding: 0 58px; }.clients-grid article { display: flex; align-items: center; justify-content: center; gap: 7px; min-height: 106px; padding: 13px; overflow: hidden; border: 1px solid #e0ecfb; border-radius: 13px; background: rgba(255,255,255,.9); box-shadow: 0 9px 19px rgba(25,92,161,.08); color: #0b3671; font-size: clamp(20px, 1.7vw, 31px); font-weight: 700; letter-spacing: -1.4px; transition: transform .25s ease, box-shadow .25s ease; }.clients-grid article:hover { transform: translateY(-5px); box-shadow: 0 18px 30px rgba(25,92,161,.16); }.client-symbol { font-size: 1.1em; }.clients-grid sup { align-self: flex-start; margin-top: 8px; font-size: 9px; }.clients-control { position: absolute; z-index: 5; top: 50%; display: grid; width: 52px; height: 52px; place-items: center; border: 0; border-radius: 50%; color: #082b62; background: #fff; box-shadow: 0 10px 20px rgba(20,81,147,.13); font-size: 38px; line-height: 1; transition: transform .2s ease, background .2s ease; }.clients-control:hover { color: white; background: var(--brand); transform: scale(1.06); }.clients-prev { left: 0; }.clients-next { right: 0; }
.client-tata { flex-direction: column; color: #18569f !important; font-weight: 800 !important; }.client-tata .client-symbol { height: 30px; font-size: 35px; line-height: .7; }.client-reliance { color: #24211e !important; font-family: Georgia, serif; font-weight: 400 !important; }.client-reliance .client-symbol { color: #cfa45a; }.client-adani { color: #264693 !important; font-size: clamp(29px, 2.7vw, 50px) !important; font-weight: 500 !important; }.client-adani::first-letter { color: #1599df; }.client-mahindra { flex-direction: column; color: #575757 !important; font-size: clamp(22px, 2vw, 34px) !important; }.client-mahindra .client-symbol { color: #e7171c; font-size: 42px; line-height: .6; }.client-infosys { color: #0079cc !important; font-size: clamp(26px, 2.6vw, 46px) !important; font-weight: 400 !important; }.client-wipro { position: relative; color: #552277 !important; }.client-wipro .dot-ring { color: #e98f2f; font-size: 48px; }.client-hdfc { position: relative; flex-direction: column; color: #144b91 !important; font-size: 17px !important; }.client-hdfc .client-symbol { color: #e51c2d; font-size: 41px; line-height: .8; }.client-hdfc b { padding: 2px 6px; color: #fff; background: #1a4f91; font-size: 11px; }.client-icici { color: #075294 !important; font-size: clamp(20px, 2vw, 35px) !important; font-style: italic; }.client-icici .client-symbol { color: #c90018; }.client-sbi { color: #141476 !important; font-size: clamp(29px, 2.8vw, 48px) !important; }.client-sbi .client-symbol { color: #1b9de5; }.client-ey { flex-direction: column; color: #171717 !important; font-size: 28px !important; }.client-ey b::before { display: block; width: 55px; height: 10px; margin: 0 auto 4px; content: ''; background: #ffe100; transform: skewY(-17deg); }.client-dhl { color: #d70918 !important; font-size: clamp(30px, 3vw, 52px) !important; font-style: italic; font-weight: 800 !important; }.client-bosch { color: #e1161e !important; font-size: clamp(26px, 2.5vw, 43px) !important; }.client-bosch .client-symbol { color: #171717; }

@media (max-width: 760px) { .clients-section { min-height: 0; padding: 62px 20px 70px; }.clients-heading { margin-bottom: 32px; }.clients-kicker { gap: 13px; margin-bottom: 17px; font-size: 11px; }.clients-kicker i { width: 38px; }.clients-heading h2 { font-size: 37px; letter-spacing: -2.5px; }.clients-heading > p:last-child { margin-top: 18px; font-size: 16px; }.clients-arc { top: 196px; left: -55%; width: 210%; height: 570px; }.arc-dot-blue { left: 19%; }.arc-dot-coral { right: 19%; }.clients-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; padding: 0; }.clients-grid article { min-height: 105px; padding: 10px; border-radius: 13px; font-size: 23px; }.clients-control { display: none; }.client-adani { font-size: 30px !important; }.client-infosys { font-size: 27px !important; }.client-dhl { font-size: 34px !important; }.client-wipro .dot-ring { font-size: 31px; } }

/* Compact, single-row client strip */
.clients-section { min-height: 0; padding: 24px 6% 28px; background: #fff; }.clients-heading { max-width: none; margin: 0 0 18px; }.clients-kicker { margin: 0; color: #2669b5; font-size: 11px; }.clients-showcase { width: min(1540px, 100%); }.clients-grid { display: flex; align-items: center; gap: 12px; padding: 0; overflow: hidden; }.clients-grid article { flex: 1 1 0; min-width: 0; min-height: 58px; padding: 6px; border: 0; border-radius: 0; background: transparent; box-shadow: none; font-size: clamp(11px, 1.4vw, 23px); }.clients-grid article:hover { transform: none; box-shadow: none; }.clients-control { display: none; }.client-tata .client-symbol { height: auto; font-size: 18px; }.client-mahindra .client-symbol { font-size: 20px; }.client-hdfc .client-symbol { font-size: 23px; }.client-hdfc b { font-size: 7px; }.client-ey b::before { width: 34px; height: 6px; }.client-wipro .dot-ring { font-size: 20px; }
@media (max-width: 760px) { .clients-section { padding: 20px 16px 23px; }.clients-heading { margin-bottom: 12px; }.clients-kicker { justify-content: flex-start; font-size: 9px; }.clients-grid { gap: 22px; padding: 2px 3px 8px; overflow-x: auto; scrollbar-width: none; }.clients-grid::-webkit-scrollbar { display: none; }.clients-grid article { flex: 0 0 88px; min-height: 46px; font-size: 15px; }.client-adani { font-size: 19px !important; }.client-infosys { font-size: 17px !important; }.client-dhl { font-size: 20px !important; }.client-wipro .dot-ring { font-size: 17px; } }

/* Actual client-logo carousel */
.clients-section { padding: 24px 6% 30px; }
.clients-heading { margin-bottom: 14px; }
.clients-showcase { padding: 0 42px; }
.legacy-clients { display: none; }
.clients-grid { display: flex; align-items: stretch; gap: 12px; padding: 4px; overflow-x: auto; overflow-y: hidden; scroll-behavior: smooth; scroll-snap-type: x mandatory; scrollbar-width: none; }
.clients-grid { scroll-behavior: auto; scroll-snap-type: none; }
.clients-grid::-webkit-scrollbar { display: none; }
.clients-grid article.client-logo { display: grid; flex: 0 0 clamp(126px, 14vw, 172px); min-height: 70px; padding: 9px 13px; place-items: center; scroll-snap-align: start; border: 1px solid #edf3fb; border-radius: 10px; background: #fff; box-shadow: 0 6px 17px rgba(20,70,125,.06); }
.clients-grid article.client-logo:hover { transform: translateY(-2px); box-shadow: 0 11px 22px rgba(20,70,125,.12); }
.client-logo img { display: block; width: 100%; max-width: 132px; height: 42px; object-fit: contain; }
.client-logo.client-hpcl { padding: 5px; }
.client-logo.client-hpcl img { max-width: 66px; height: 63px; }
.client-logo.client-government { padding: 4px; }
.client-logo.client-government img { max-width: 148px; height: 53px; }
.client-logo.client-brb { padding: 4px; background: #06285e; }
.client-logo.client-brb img { max-width: 152px; height: 50px; }
.client-logo.client-hotstar img { max-width: 136px; height: 41px; }
.client-logo.client-powergrid img { max-width: 142px; height: 46px; }
.client-logo.client-paytm img { max-width: 116px; height: 38px; }
.client-logo.client-amazon img { max-width: 132px; height: 42px; }
.client-logo.client-truecaller img { max-width: 130px; height: 40px; }
.client-logo.client-brb span { color: #0b3978; font-size: 25px; font-weight: 800; letter-spacing: -.07em; }
.clients-control { display: grid; top: calc(50% - 22px); width: 36px; height: 36px; font-size: 30px; }.clients-prev { left: 0; }.clients-next { right: 0; }
.clients-control { display: none; }

@media (max-width: 760px) {
    .clients-section { padding: 21px 16px 25px; }
    .clients-heading { margin-bottom: 11px; }
    .clients-showcase { padding: 0; }
    .clients-grid { gap: 10px; padding: 3px 0 8px; }
    .clients-grid article.client-logo { flex-basis: 116px; min-height: 57px; padding: 8px 12px; border-radius: 8px; }
    .client-logo img { max-width: 94px; height: 34px; }
    .client-logo.client-hpcl img { max-width: 49px; height: 49px; }
    .client-logo.client-government img { max-width: 102px; height: 37px; }
    .client-logo.client-brb img { max-width: 106px; height: 35px; }
    .client-logo.client-hotstar img { max-width: 92px; height: 31px; }
    .client-logo.client-powergrid img { max-width: 100px; height: 33px; }
    .client-logo.client-paytm img { max-width: 84px; height: 30px; }
    .client-logo.client-amazon img { max-width: 94px; height: 31px; }
    .client-logo.client-truecaller img { max-width: 92px; height: 30px; }
    .client-logo.client-brb span { font-size: 20px; }
    .clients-control { display: none; }
}

/* Final services layout */
.services-section { padding: 82px 4% 88px; background: radial-gradient(circle at 87% 12%, #edf6ff 0, transparent 25%), #fff; }
.services-intro { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(330px, .85fr); align-items: end; width: min(1840px, 100%); margin: 0 auto 46px; }
.section-label { display: flex; align-items: center; gap: 15px; margin: 0 0 23px; color: #102f62; font-size: 13px; font-weight: 800; letter-spacing: .23em; }.section-label::before { width: 46px; height: 2px; content: ''; background: #157aff; }
.services-intro h2 { max-width: 1100px; color: #071f4a; font-size: clamp(36px, 3.2vw, 60px); font-weight: 800; letter-spacing: -3.7px; line-height: 1.04; }.services-intro h2 span { color: #1475ee; }
.services-summary { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding-bottom: 4px; }.services-summary p { max-width: 460px; margin: 0; color: #536888; font-size: 17px; font-weight: 500; line-height: 1.5; }.services-summary a { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 17px; color: #0a5ed2; font-size: 14px; font-weight: 800; text-decoration: none; white-space: nowrap; }.services-summary a span { display: grid; width: 35px; height: 35px; place-items: center; border-radius: 50%; color: #fff; background: #1475ee; font-size: 20px; transition: transform .2s ease; }.services-summary a:hover span { transform: translateX(4px); }
.services-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; width: min(1840px, 100%); }.service-card { position: relative; display: flex; min-height: 500px; flex-direction: column; padding: 39px; overflow: hidden; border-radius: 25px; opacity: 0; transform: translateY(24px); transition: transform .3s ease, box-shadow .3s ease; }.services-section.is-visible .service-card { animation: service-card-in .75s both cubic-bezier(.22,.8,.28,1); }.services-section.is-visible .service-card:nth-child(2) { animation-delay: .1s; }.services-section.is-visible .service-card:nth-child(3) { animation-delay: .2s; }.services-section.is-visible .service-card:nth-child(4) { animation-delay: .3s; }.service-card:hover { transform: translateY(-8px); }.service-card-dark { background: radial-gradient(circle at 76% 10%, #0e4e9c 0, transparent 32%), linear-gradient(145deg, #06295f, #031638); box-shadow: 0 22px 35px rgba(7,39,88,.16); }.service-card-light { color: #08295c; background: linear-gradient(145deg, #e9f4ff, #d8eaff); box-shadow: inset 0 0 0 1px rgba(255,255,255,.92); }.service-card-number { position: absolute; top: 39px; right: 39px; color: #82a2d2; font-size: 24px; font-weight: 800; }.service-card-dark .service-card-number { color: #8db1e7; }.service-card-icon { display: grid; width: 88px; height: 88px; place-items: center; border: 2px solid #82b7ff; border-radius: 18px; color: #1177ff; background: rgba(255,255,255,.07); box-shadow: inset 0 0 0 7px rgba(15,103,223,.05); font-family: 'DM Mono', monospace; font-size: 33px; font-weight: 500; }.service-card-light .service-card-icon { background: rgba(255,255,255,.25); }.service-card > div { margin-top: auto; }.service-card h3 { margin: 0; color: inherit; font-size: clamp(25px, 2vw, 37px); font-weight: 800; letter-spacing: -2px; line-height: 1.1; }.service-card ul { margin: 31px 0 0; font-size: 16px; font-weight: 500; line-height: 1.6; }.service-card li { padding-left: 22px; opacity: .89; }.service-card li::before { left: 0; color: #1680ff; font-size: 21px; }.service-card-link { display: inline-flex; align-items: center; gap: 24px; margin-top: 42px; color: inherit; font-size: 18px; font-weight: 800; text-decoration: none; }.service-card-link span { color: #1880ff; font-size: 32px; line-height: .7; transition: transform .2s ease; }.service-card-link:hover span { transform: translateX(6px); }
@keyframes service-card-in { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: translateY(0); } }

@media (max-width: 1200px) { .services-section { padding: 66px 5% 74px; }.services-intro { grid-template-columns: 1.35fr .95fr; margin-bottom: 34px; }.services-grid { gap: 16px; }.service-card { min-height: 415px; padding: 27px; border-radius: 20px; }.service-card-number { top: 27px; right: 27px; font-size: 20px; }.service-card-icon { width: 64px; height: 64px; border-radius: 14px; font-size: 25px; }.service-card ul { margin-top: 22px; font-size: 13px; }.service-card-link { margin-top: 27px; font-size: 15px; } }
@media (max-width: 850px) { .services-intro { grid-template-columns: 1fr; gap: 23px; }.services-summary { justify-content: flex-start; }.services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.service-card { min-height: 365px; }.services-summary p { font-size: 15px; } }
@media (max-width: 560px) { .services-section { padding: 49px 16px 56px; }.services-intro { margin-bottom: 26px; }.section-label { gap: 10px; margin-bottom: 15px; font-size: 10px; }.section-label::before { width: 32px; }.services-intro h2 { font-size: 35px; letter-spacing: -2.3px; }.services-summary { display: block; }.services-summary p { font-size: 14px; }.services-summary a { margin-top: 16px; font-size: 13px; }.services-grid { grid-template-columns: 1fr; gap: 13px; }.service-card { min-height: 320px; padding: 25px; border-radius: 18px; }.service-card-number { top: 26px; right: 25px; font-size: 19px; }.service-card-icon { width: 55px; height: 55px; border-radius: 13px; font-size: 21px; }.service-card h3 { font-size: 28px; letter-spacing: -1.7px; }.service-card ul { margin-top: 16px; font-size: 13px; line-height: 1.5; }.service-card-link { margin-top: 22px; font-size: 15px; }.service-card-link span { font-size: 27px; } }

/* Legacy services styles disabled
.services-section { padding: 58px 6% 70px; background: linear-gradient(135deg, #f9fcff, #eef7ff); }
.services-intro { display: flex; align-items: end; justify-content: space-between; gap: 30px; width: min(1120px, 100%); margin: 0 auto 28px; }
.section-label { margin: 0 0 9px; color: var(--coral); font: 500 11px 'DM Mono', monospace; letter-spacing: .08em; text-transform: uppercase; }
.services-intro h2 { max-width: 590px; margin: 0; color: var(--ink); font-size: clamp(27px, 3vw, 43px); letter-spacing: -2.3px; line-height: 1.04; }
.services-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; width: min(1120px, 100%); margin: 0 auto; }
.service-card { display: flex; min-height: 280px; flex-direction: column; justify-content: space-between; padding: 20px; border-radius: 12px; transition: transform .25s ease, box-shadow .25s ease; }
.service-card:hover { transform: translateY(-6px); }
.service-card-dark { color: #fff; background: linear-gradient(145deg, #0b397e, #06255b); box-shadow: 0 15px 26px rgba(7,41,91,.17); }
.service-card-light { color: #12366e; background: #dcecff; box-shadow: inset 0 0 0 1px rgba(255,255,255,.7); }
.service-card-icon { display: grid; width: 35px; height: 35px; place-items: center; border: 1px solid currentColor; border-radius: 8px; color: currentColor; font-size: 21px; line-height: 1; opacity: .86; }
.service-card h3 { margin: 0; font-size: clamp(17px, 1.55vw, 22px); letter-spacing: -1px; line-height: 1.1; }
.service-card h3 span { color: var(--coral); }
.service-card ul { margin: 17px 0 0; padding: 0; list-style: none; font-size: 11px; line-height: 1.45; }
.service-card li { position: relative; padding-left: 10px; opacity: .78; }
.service-card li::before { position: absolute; left: 0; content: '•'; color: var(--coral); }

@media (max-width: 760px) {
    .services-section { padding: 42px 16px 48px; }
    .services-intro { display: block; margin-bottom: 21px; }
    .services-intro h2 { font-size: 31px; letter-spacing: -1.8px; }
    .services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .service-card { min-height: 224px; padding: 15px; border-radius: 10px; }
    .service-card-icon { width: 30px; height: 30px; font-size: 17px; }
    .service-card h3 { font-size: 17px; letter-spacing: -.7px; }
    .service-card ul { margin-top: 12px; font-size: 9px; line-height: 1.42; }
}
*/

/* Services layout corrections */
.service-card { min-height: clamp(365px, 27vw, 500px); opacity: 1; transform: none; }
.service-card-dark h3, .service-card-dark li, .service-card-dark .service-card-link { color: #fff; }
.service-card-dark .service-card-link span { color: #60a5ff; }
@media (max-width: 1200px) { .service-card { min-height: 390px; } }
@media (max-width: 850px) { .services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.service-card { min-height: 330px; }.service-card h3 { font-size: 25px; }.service-card ul { font-size: 12px; }.service-card-link { margin-top: 23px; } }
@media (max-width: 430px) { .services-grid { grid-template-columns: 1fr; }.service-card { min-height: 310px; }.services-intro h2 { font-size: 33px; } }

/* Explicit service-card breakpoints */
@media (min-width: 851px) { .services-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (min-width: 561px) and (max-width: 850px) { .services-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 560px) { .services-grid { grid-template-columns: 1fr; }.service-card { min-height: 310px; } }

/* Compact service-card scale */
.services-section { padding-top: 58px; padding-bottom: 62px; }
.services-intro { margin-bottom: 31px; }
.services-grid { gap: 18px; }
.service-card { min-height: clamp(330px, 23vw, 440px); padding: 29px; border-radius: 20px; }
.service-card-number { top: 29px; right: 29px; font-size: 21px; }
.service-card-icon { width: 68px; height: 68px; border-radius: 15px; font-size: 27px; }
.service-card h3 { font-size: clamp(22px, 1.65vw, 31px); letter-spacing: -1.6px; }
.service-card ul { margin-top: 21px; font-size: 14px; line-height: 1.5; }
.service-card li { padding-left: 17px; }.service-card li::before { font-size: 18px; }
.service-card-link { gap: 18px; margin-top: 28px; font-size: 16px; }.service-card-link span { font-size: 27px; }
@media (max-width: 850px) { .service-card { min-height: 315px; padding: 24px; }.service-card-number { top: 24px; right: 24px; }.service-card-icon { width: 58px; height: 58px; font-size: 23px; }.service-card h3 { font-size: 23px; }.service-card ul { font-size: 12px; } }
@media (max-width: 560px) { .services-section { padding: 43px 16px 48px; }.service-card { min-height: 300px; padding: 23px; }.service-card-number { top: 23px; right: 23px; }.service-card-icon { width: 53px; height: 53px; font-size: 20px; }.service-card h3 { font-size: 27px; }.service-card ul { font-size: 13px; }.service-card-link { margin-top: 21px; } }

/* Extra-compact service presentation */
.services-section { padding-top: 42px; padding-bottom: 46px; }
.services-intro { margin-bottom: 23px; }.section-label { margin-bottom: 14px; }
.services-grid { gap: 14px; }
.service-card { min-height: clamp(295px, 20vw, 360px); padding: 22px; border-radius: 17px; }
.service-card-number { top: 22px; right: 22px; font-size: 18px; }
.service-card-icon { width: 53px; height: 53px; border-radius: 12px; font-size: 21px; }
.service-card h3 { font-size: clamp(20px, 1.45vw, 26px); letter-spacing: -1.3px; }
.service-card ul { margin-top: 15px; font-size: 12px; line-height: 1.42; }
.service-card li { padding-left: 14px; }.service-card li::before { font-size: 15px; }
.service-card-link { gap: 14px; margin-top: 19px; font-size: 14px; }.service-card-link span { font-size: 23px; }
@media (max-width: 850px) { .service-card { min-height: 285px; padding: 20px; }.service-card-number { top: 20px; right: 20px; }.service-card h3 { font-size: 21px; }.service-card ul { font-size: 11px; } }
@media (max-width: 560px) { .services-section { padding-top: 38px; padding-bottom: 42px; }.service-card { min-height: 275px; padding: 20px; }.service-card h3 { font-size: 25px; }.service-card ul { font-size: 12px; }.service-card-link { margin-top: 17px; } }

/* Smaller service typography */
.section-label { font-size: 11px; letter-spacing: .18em; }
.services-intro h2 { font-size: clamp(31px, 2.65vw, 49px); letter-spacing: -2.8px; }
.services-summary p { font-size: 15px; }.services-summary a { font-size: 12px; }.services-summary a span { width: 31px; height: 31px; font-size: 17px; }
.service-card h3 { font-size: clamp(18px, 1.28vw, 23px); letter-spacing: -1.1px; }
.service-card ul { font-size: 11px; }.service-card-link { font-size: 13px; }
@media (max-width: 850px) { .services-intro h2 { font-size: 34px; }.service-card h3 { font-size: 19px; }.service-card ul { font-size: 10px; } }
@media (max-width: 560px) { .services-intro h2 { font-size: 30px; letter-spacing: -1.8px; }.services-summary p { font-size: 13px; }.service-card h3 { font-size: 23px; }.service-card ul { font-size: 11px; } }

/* About */
.about-section { display: grid; grid-template-columns: minmax(0, .9fr) minmax(550px, 1.1fr); gap: clamp(48px, 7vw, 130px); width: min(1840px, calc(100% - 10%)); margin: 0 auto; padding: 88px 0 94px; }.about-copy .section-label { margin-bottom: 24px; }.about-copy h2 { max-width: 660px; margin: 0; color: #071f4a; font-size: clamp(38px, 3.35vw, 62px); font-weight: 800; letter-spacing: -3.6px; line-height: 1.04; }.about-copy h2 span { color: #1475ee; }.about-description { max-width: 650px; margin: 24px 0 26px; color: #667695; font-size: 17px; font-weight: 500; line-height: 1.55; }.about-values { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }.about-value { display: flex; align-items: center; gap: 18px; min-height: 112px; padding: 17px; border-radius: 17px; transition: transform .25s ease, box-shadow .25s ease; }.about-value:hover { transform: translateY(-4px); }.about-value-dark { color: #fff; background: linear-gradient(145deg, #082d67, #031b45); box-shadow: 0 13px 24px rgba(6,34,79,.14); }.about-value-light { color: #092d63; background: linear-gradient(135deg, #e8f3ff, #dfeeff); }.about-value-icon { display: grid; flex: 0 0 58px; width: 58px; height: 58px; place-items: center; border: 1px solid #75aaff; border-radius: 14px; color: #1677f3; background: rgba(255,255,255,.07); }.about-value-light .about-value-icon { background: rgba(255,255,255,.35); }.about-value-icon svg { width: 58%; height: 58%; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.75; }.about-value h3 { margin: 0; font-size: 16px; letter-spacing: -.55px; line-height: 1.15; }.about-value p { margin: 7px 0 0; font-size: 13px; line-height: 1.4; opacity: .86; }.about-link { display: inline-flex; align-items: center; gap: 20px; margin-top: 30px; color: #126de3; font-size: 16px; font-weight: 800; text-decoration: none; }.about-link span { display: grid; width: 39px; height: 39px; place-items: center; border-radius: 50%; color: #fff; background: #1475ee; font-size: 22px; transition: transform .2s ease; }.about-link:hover span { transform: translateX(4px); }.about-visual { position: relative; min-height: 650px; padding: 32px 105px 0 75px; }.about-visual::before, .about-visual::after { position: absolute; z-index: -1; border-radius: 30px; content: ''; background: linear-gradient(135deg, #e9f4ff, #dbeeff); }.about-visual::before { top: 0; left: 0; width: 57%; height: 55%; }.about-visual::after { right: 0; bottom: 0; width: 45%; height: 50%; }.about-photo-wrap { height: 100%; min-height: 610px; overflow: hidden; border-radius: 33px; box-shadow: 0 19px 45px rgba(15,55,103,.15); }.about-photo-wrap img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .7s ease; }.about-visual:hover .about-photo-wrap img { transform: scale(1.035); }.about-stats { position: absolute; top: 106px; right: 0; display: grid; width: 262px; padding: 34px 39px; border-radius: 25px; color: #fff; background: linear-gradient(145deg, #092d67, #031a43); box-shadow: 0 20px 35px rgba(7,42,94,.25); }.about-stats div { padding: 0 0 20px; border-bottom: 1px solid rgba(70,140,230,.35); }.about-stats div + div { padding-top: 20px; }.about-stats div:last-child { padding-bottom: 0; border: 0; }.about-stats strong { display: block; font-size: 43px; letter-spacing: -2px; line-height: 1; }.about-stats span { display: block; margin-top: 8px; font-size: 14px; }
@media (max-width: 1200px) { .about-section { grid-template-columns: minmax(0, .95fr) minmax(450px, 1.05fr); gap: 40px; width: min(1300px, calc(100% - 8%)); }.about-copy h2 { font-size: 44px; }.about-description { font-size: 15px; }.about-value { min-height: 102px; padding: 14px; gap: 13px; }.about-value-icon { flex-basis: 50px; width: 50px; height: 50px; }.about-value h3 { font-size: 14px; }.about-value p { font-size: 12px; }.about-visual { min-height: 550px; padding: 24px 70px 0 46px; }.about-photo-wrap { min-height: 520px; border-radius: 25px; }.about-stats { top: 80px; width: 206px; padding: 25px 28px; border-radius: 20px; }.about-stats strong { font-size: 34px; }.about-stats span { font-size: 12px; } }
@media (max-width: 850px) { .about-section { grid-template-columns: 1fr; width: min(700px, calc(100% - 40px)); padding: 65px 0; }.about-copy h2 { max-width: 590px; }.about-visual { width: 100%; max-width: 670px; margin: 0 auto; }.about-description { max-width: 610px; } }
@media (max-width: 560px) { .about-section { width: calc(100% - 32px); gap: 34px; padding: 48px 0 56px; }.about-copy .section-label { margin-bottom: 16px; }.about-copy h2 { font-size: 35px; letter-spacing: -2.2px; }.about-description { margin: 16px 0 20px; font-size: 14px; }.about-values { grid-template-columns: 1fr; gap: 10px; }.about-value { min-height: 90px; padding: 13px; }.about-value-icon { flex-basis: 46px; width: 46px; height: 46px; border-radius: 12px; }.about-value h3 { font-size: 14px; }.about-value p { margin-top: 4px; font-size: 11px; }.about-link { margin-top: 22px; font-size: 14px; }.about-link span { width: 34px; height: 34px; font-size: 18px; }.about-visual { min-height: 370px; padding: 16px 38px 0 22px; }.about-visual::before, .about-visual::after { border-radius: 18px; }.about-photo-wrap { min-height: 350px; border-radius: 20px; }.about-stats { top: 52px; width: 140px; padding: 17px; border-radius: 16px; }.about-stats div { padding-bottom: 11px; }.about-stats div + div { padding-top: 11px; }.about-stats strong { font-size: 25px; }.about-stats span { margin-top: 4px; font-size: 9px; } }

/* Compact about section */
@media (min-width: 851px) {
  .about-section { grid-template-columns: minmax(360px, .84fr) minmax(470px, 1.06fr); gap: clamp(36px, 4.5vw, 76px); width: min(1560px, calc(100% - 12%)); padding: 64px 0 70px; }
  .about-copy .section-label { margin-bottom: 17px; }
  .about-copy h2 { max-width: 565px; font-size: clamp(35px, 2.85vw, 51px); letter-spacing: -2.9px; }
  .about-description { max-width: 570px; margin: 17px 0 20px; font-size: 15px; }
  .about-values { gap: 12px; }
  .about-value { min-height: 90px; gap: 13px; padding: 13px; border-radius: 14px; }
  .about-value-icon { flex-basis: 46px; width: 46px; height: 46px; border-radius: 11px; }
  .about-value h3 { font-size: 14px; }
  .about-value p { margin-top: 4px; font-size: 11px; }
  .about-link { gap: 14px; margin-top: 21px; font-size: 14px; }
  .about-link span { width: 34px; height: 34px; font-size: 18px; }
  .about-visual { min-height: 505px; padding: 24px 75px 0 48px; }
  .about-visual::before, .about-visual::after { border-radius: 24px; }
  .about-photo-wrap { min-height: 475px; border-radius: 25px; }
  .about-stats { top: 76px; width: 205px; padding: 25px 28px; border-radius: 20px; }
  .about-stats div { padding-bottom: 15px; }
  .about-stats div + div { padding-top: 15px; }
  .about-stats strong { font-size: 33px; }
  .about-stats span { margin-top: 5px; font-size: 11px; }
}

@media (min-width: 851px) and (max-width: 1100px) {
  .about-section { grid-template-columns: minmax(320px, .92fr) minmax(410px, 1.08fr); gap: 30px; width: min(1120px, calc(100% - 7%)); }
  .about-copy h2 { font-size: 38px; }
  .about-description { font-size: 14px; }
  .about-visual { min-height: 440px; padding: 18px 57px 0 32px; }
  .about-photo-wrap { min-height: 420px; }
  .about-stats { top: 58px; width: 174px; padding: 20px 22px; }
  .about-stats strong { font-size: 28px; }
}

.service-card-icon svg { width: 58%; height: 58%; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }

/* Client testimonials */
.testimonials-section { width: min(1560px, calc(100% - 12%)); margin: 0 auto; padding: 54px 0 72px; }
.testimonials-heading { display: flex; align-items: end; justify-content: space-between; gap: 32px; margin-bottom: 24px; }
.testimonials-heading .section-label { margin: 0 0 8px; }
.testimonials-heading h2 { margin: 0; color: #08295e; font-size: clamp(23px, 2vw, 34px); letter-spacing: -1.5px; line-height: 1.1; }
.testimonials-viewport { overflow: hidden; scroll-behavior: smooth; }
.testimonials-track { display: flex; gap: 16px; width: max-content; }
.testimonial-card { display: flex; flex: 0 0 calc((min(1560px, 88vw) - 48px) / 4); min-height: 244px; flex-direction: column; padding: 18px; border: 1px solid #e3edf9; border-radius: 15px; box-sizing: border-box; box-shadow: 0 10px 22px rgba(14,51,99,.07); transition: transform .25s ease, box-shadow .25s ease; }
.testimonial-card:hover { transform: translateY(-5px); box-shadow: 0 17px 30px rgba(11,51,103,.13); }
.testimonial-card-dark { color: #fff; border-color: transparent; background: linear-gradient(145deg, #082f6a, #021d4d); }
.testimonial-card-light { color: #10316a; background: linear-gradient(135deg, #f8fbff, #e3f0ff); }
.testimonial-top { display: flex; align-items: center; justify-content: space-between; }
.testimonial-quote { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 9px; color: #fff; background: #1978ed; font-family: Georgia, serif; font-size: 34px; font-weight: 700; line-height: 1; }
.testimonial-card-light .testimonial-quote { color: #2585ef; background: #d5ebff; }
.testimonial-stars { color: #ffbd22; font-size: 13px; letter-spacing: 1px; }
.testimonial-card > p { margin: 17px 0 14px; font-size: 13px; font-weight: 500; line-height: 1.45; }
.testimonial-card-light > p { color: #365381; }
.testimonial-card footer { display: flex; align-items: center; gap: 10px; margin-top: auto; padding-top: 13px; border-top: 1px solid rgba(145,189,246,.23); }
.testimonial-avatar { display: grid; width: 35px; height: 35px; flex: 0 0 35px; place-items: center; border-radius: 50%; color: #fff; font-size: 10px; font-weight: 800; }
.avatar-blue { background: linear-gradient(135deg, #399aff, #063578); }.avatar-coral { background: linear-gradient(135deg, #ff9c7a, #d84b50); }.avatar-gold { background: linear-gradient(135deg, #e9c57b, #987033); }.avatar-mint { background: linear-gradient(135deg, #58cbb7, #15756d); }.avatar-purple { background: linear-gradient(135deg, #a890ed, #534095); }
.testimonial-card footer strong, .testimonial-card footer small { display: block; }.testimonial-card footer strong { font-size: 11px; line-height: 1.25; }.testimonial-card footer small { margin-top: 2px; font-size: 9px; opacity: .7; }
.testimonial-dots { display: flex; justify-content: center; gap: 7px; margin-top: 17px; }
.testimonial-dots button { width: 7px; height: 7px; padding: 0; border: 0; border-radius: 50%; cursor: pointer; background: #c7dbf4; transition: width .2s ease, background .2s ease; }.testimonial-dots button.is-active { width: 20px; border-radius: 7px; background: #1878ef; }
@media (max-width: 850px) { .testimonials-section { width: min(700px, calc(100% - 40px)); padding: 44px 0 58px; }.testimonial-card { flex-basis: calc((min(700px, calc(100vw - 40px)) - 16px) / 2); min-height: 230px; } }
@media (max-width: 560px) { .testimonials-section { width: calc(100% - 32px); padding: 39px 0 50px; }.testimonials-heading h2 { font-size: 25px; }.testimonial-card { flex-basis: calc(100vw - 52px); min-height: 222px; padding: 17px; }.testimonial-card > p { font-size: 13px; }.testimonial-dots { margin-top: 14px; } }
@media (prefers-reduced-motion: reduce) { .testimonials-viewport { scroll-behavior: auto; }.testimonial-card { transition: none; } }

/* Footer */
.site-footer { margin-top: 8px; padding: 0 max(6%, calc((100% - 1560px) / 2)); color: #dbeafe; background: #041a42; }
.footer-cta { display: flex; align-items: center; justify-content: space-between; gap: 35px; padding: 38px 0; border-bottom: 1px solid rgba(151,194,247,.24); }
.footer-cta p { margin: 0 0 6px; color: #62a9ff; font: 500 10px 'DM Mono', monospace; letter-spacing: .16em; text-transform: uppercase; }.footer-cta h2 { margin: 0; color: #fff; font-size: clamp(24px, 2.2vw, 36px); letter-spacing: -1.7px; line-height: 1.05; }
.footer-cta > a { display: inline-flex; align-items: center; gap: 14px; padding: 13px 15px 13px 20px; border-radius: 10px; color: #fff; background: #1676ec; font-size: 13px; font-weight: 800; text-decoration: none; white-space: nowrap; transition: background .2s ease, transform .2s ease; }.footer-cta > a:hover { background: #ff604e; transform: translateY(-2px); }.footer-cta > a span { display: grid; width: 25px; height: 25px; place-items: center; border-radius: 50%; color: #0b3979; background: #fff; font-size: 17px; }
.footer-grid { display: grid; grid-template-columns: 1.7fr .8fr 1fr 1.25fr; gap: 35px; padding: 45px 0 38px; }
.footer-brand img { display: block; width: 155px; max-height: 39px; object-fit: contain; object-position: left center; filter: brightness(0) invert(1); }.footer-brand p { max-width: 285px; margin: 17px 0 0; color: #a8c3e6; font-size: 13px; line-height: 1.6; }
.footer-links h3, .footer-contact h3 { margin: 0 0 15px; color: #6faeff; font: 600 10px 'DM Mono', monospace; letter-spacing: .13em; text-transform: uppercase; }.footer-links a, .footer-contact a { display: block; margin: 0 0 10px; color: #e7f1ff; font-size: 13px; font-weight: 600; text-decoration: none; transition: color .2s ease; }.footer-links a:hover, .footer-contact a:hover, .footer-bottom a:hover { color: #ff806d; }.footer-contact > a { color: #fff; font-size: 14px; }.footer-contact p { max-width: 220px; margin: 14px 0 0; color: #a8c3e6; font-size: 12px; line-height: 1.55; }
.footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 18px 0; border-top: 1px solid rgba(151,194,247,.18); color: #88a8d2; font-size: 11px; }.footer-bottom div { display: flex; gap: 20px; }.footer-bottom a { color: #9bb8dd; text-decoration: none; }
@media (max-width: 850px) { .site-footer { padding-right: 20px; padding-left: 20px; }.footer-grid { grid-template-columns: 1.4fr 1fr 1fr; }.footer-contact { grid-column: 2 / 4; } }
@media (max-width: 560px) { .site-footer { margin-top: 0; padding-right: 16px; padding-left: 16px; }.footer-cta { align-items: flex-start; flex-direction: column; gap: 20px; padding: 31px 0; }.footer-cta h2 { font-size: 28px; }.footer-grid { grid-template-columns: 1fr 1fr; gap: 30px 20px; padding: 35px 0 30px; }.footer-brand { grid-column: 1 / -1; }.footer-brand p { max-width: 330px; }.footer-contact { grid-column: 1 / -1; }.footer-bottom { align-items: flex-start; flex-direction: column; gap: 10px; font-size: 10px; } }

/* Services page */
.services-page { overflow: hidden; background: radial-gradient(circle at 91% 10%, #d9eeff 0, transparent 21%), radial-gradient(circle at 2% 42%, #e7f5ff 0, transparent 25%), #fbfdff; }
.services-breadcrumb { display: flex; align-items: center; gap: 8px; width: min(1450px, calc(100% - 10%)); margin: 18px auto -13px; color: #7183a0; font: 500 10px 'DM Mono', monospace; letter-spacing: .05em; text-transform: uppercase; }.services-breadcrumb a { color: #176fe0; text-decoration: none; }.services-breadcrumb a:hover { color: var(--coral); }.services-breadcrumb span:last-child { color: #0a2e66; }
.services-page-hero { display: grid; grid-template-columns: minmax(0, .88fr) minmax(480px, 1.12fr); align-items: center; gap: 35px; width: min(1450px, calc(100% - 10%)); min-height: 600px; margin: 0 auto; padding: 35px 0 58px; }
.services-page-copy { position: relative; z-index: 3; }.services-page-copy h1 { max-width: 690px; font-size: clamp(44px, 4.5vw, 69px); }.services-page-copy > p:not(.eyebrow) { max-width: 570px; margin: 22px 0 28px; color: #60718d; font-size: 17px; font-weight: 500; line-height: 1.55; }
.services-page-orbit { position: relative; width: 610px; height: 520px; margin-left: auto; }
.services-orbit-ring { position: absolute; border-radius: 50%; }.ring-one { top: 15px; left: 55px; width: 480px; height: 480px; border: 1px dashed #a7cdfb; animation: orbit-spin 35s linear infinite; }.ring-two { top: 57px; left: 95px; width: 400px; height: 400px; border: 29px solid rgba(182,216,249,.62); border-top-color: #1a5fa8; border-right-color: #1a5fa8; transform: rotate(-25deg); animation: orbit-spin-reverse 28s linear infinite; }.ring-three { top: 139px; left: 177px; width: 236px; height: 236px; border: 14px solid rgba(142,195,248,.58); background: radial-gradient(circle at 33% 25%, #fff, #ddf0ff); box-shadow: inset -14px -13px 22px rgba(14,71,141,.15), 0 15px 30px rgba(35,97,164,.16); }
.services-orbit-core { position: absolute; top: 190px; left: 228px; z-index: 2; display: grid; width: 135px; height: 135px; place-items: center; border: 10px solid #e5f3ff; border-radius: 50%; color: #082d67; background: #fff; box-shadow: 0 13px 25px rgba(23,81,143,.18), inset -9px -10px 16px rgba(76,151,225,.18); font-size: 67px; font-weight: 800; letter-spacing: -9px; }.services-orbit-core i { position: absolute; right: 20px; bottom: 22px; width: 14px; height: 14px; border-radius: 50%; background: var(--coral); }
.services-orbit-dot { position: absolute; z-index: 2; width: 11px; height: 11px; border-radius: 50%; background: var(--coral); box-shadow: 0 0 14px rgba(255,98,77,.6); animation: dot-pulse 2.5s ease-in-out infinite; }.dot-a { top: 80px; left: 321px; }.dot-b { top: 354px; left: 102px; background: #175aa1; animation-delay: -.8s; }.dot-c { right: 47px; bottom: 92px; animation-delay: -1.6s; }
.orbit-service-card { position: absolute; z-index: 3; display: flex; align-items: center; gap: 10px; padding: 11px 14px; border: 1px solid rgba(255,255,255,.9); border-radius: 13px; color: #082d67; background: rgba(255,255,255,.89); box-shadow: 0 13px 25px rgba(18,61,113,.13); animation: node-float 5s ease-in-out infinite; }.orbit-service-card b { display: grid; width: 33px; height: 33px; place-items: center; border-radius: 9px; color: #fff; background: #0b3b7c; font-size: 13px; }.orbit-service-card span { font: 600 10px 'DM Mono', monospace; text-transform: uppercase; }.orbit-card-top { top: 47px; right: 21px; }.orbit-card-right { top: 226px; right: -5px; animation-delay: -1.2s; }.orbit-card-bottom { bottom: 31px; left: 31px; animation-delay: -2.1s; }
.services-detail-section { width: min(1560px, calc(100% - 10%)); margin: 0 auto; padding: 55px 0 75px; }.services-detail-intro { display: flex; align-items: end; justify-content: space-between; gap: 60px; margin-bottom: 28px; }.services-detail-intro .section-label { margin-bottom: 14px; }.services-detail-intro h2 { max-width: 790px; margin: 0; color: #082758; font-size: clamp(32px, 3vw, 52px); letter-spacing: -3px; line-height: 1.06; }.services-detail-intro h2 span { color: #1877ed; }.services-detail-intro > p { max-width: 360px; margin: 0 0 4px; color: #667695; font-size: 15px; line-height: 1.55; }
.service-detail-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }.service-detail-card { position: relative; min-height: 315px; padding: 21px; overflow: hidden; border: 1px solid #e4effc; border-radius: 18px; transition: transform .25s ease, box-shadow .25s ease; }.service-detail-card:hover { z-index: 1; transform: translateY(-6px); box-shadow: 0 20px 31px rgba(9,49,99,.15); }.service-detail-dark { color: #fff; border-color: transparent; background: linear-gradient(145deg, #0a397e, #031b47); }.service-detail-light { color: #0a3169; background: linear-gradient(135deg, #f8fcff, #ddedff); }.detail-number { position: absolute; top: 22px; right: 21px; font-size: 17px; font-weight: 800; opacity: .55; }.detail-icon { display: grid; width: 48px; height: 48px; place-items: center; margin-bottom: 33px; border: 1px solid #73abff; border-radius: 12px; color: #1880f5; background: rgba(255,255,255,.08); }.service-detail-light .detail-icon { background: rgba(255,255,255,.42); }.detail-icon svg { width: 53%; height: 53%; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }.service-detail-card h3 { max-width: 220px; margin: 0; font-size: 20px; letter-spacing: -1px; line-height: 1.15; }.service-detail-card > p { margin: 11px 0 13px; font-size: 12px; line-height: 1.48; opacity: .82; }.service-detail-card ul { display: grid; gap: 5px; margin: 0; padding: 0; list-style: none; font-size: 11px; line-height: 1.35; }.service-detail-card li { position: relative; padding-left: 13px; }.service-detail-card li::before { position: absolute; top: .45em; left: 0; width: 5px; height: 5px; border-radius: 50%; content: ''; background: #2688fa; }
.service-process { display: grid; grid-template-columns: .8fr 1.2fr; gap: 70px; width: min(1560px, calc(100% - 10%)); margin: 0 auto 74px; padding: 41px; border-radius: 23px; color: #fff; background: linear-gradient(125deg, #072b64, #0d4d9a); box-shadow: 0 20px 35px rgba(4,38,91,.16); }.service-process .section-label { margin-bottom: 12px; color: #91c4ff; }.service-process h2 { max-width: 390px; margin: 0; font-size: clamp(26px, 2.25vw, 39px); letter-spacing: -2px; line-height: 1.1; }.service-process ol { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; margin: 0; padding: 0; list-style: none; }.service-process li { border-left: 1px solid rgba(150,202,255,.35); padding-left: 16px; }.service-process li b, .service-process li span, .service-process li small { display: block; }.service-process li b { margin-bottom: 22px; color: #76b7ff; font: 500 11px 'DM Mono', monospace; }.service-process li span { font-size: 17px; font-weight: 800; }.service-process li small { margin-top: 7px; color: #c5dcf7; font-size: 11px; line-height: 1.42; }
@media (max-width: 1150px) { .services-page-hero { grid-template-columns: minmax(0, 1fr) minmax(430px, .9fr); width: calc(100% - 8%); }.services-page-orbit { transform: scale(.83); transform-origin: right center; }.service-detail-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.service-detail-card { min-height: 285px; }.service-process { grid-template-columns: 1fr; gap: 30px; }.service-process h2 { max-width: 620px; } }
@media (max-width: 760px) { .services-breadcrumb { width: calc(100% - 40px); margin: 15px auto -13px; }.services-page-hero { display: block; width: calc(100% - 40px); min-height: 810px; padding-top: 61px; }.services-page-copy h1 { font-size: 41px; letter-spacing: -2.8px; }.services-page-copy > p:not(.eyebrow) { font-size: 15px; }.services-page-orbit { width: 610px; margin: 20px 0 0 -110px; transform: scale(.64); transform-origin: left top; }.services-detail-section { width: calc(100% - 40px); padding-top: 37px; }.services-detail-intro { display: block; margin-bottom: 23px; }.services-detail-intro h2 { font-size: 33px; letter-spacing: -2px; }.services-detail-intro > p { margin-top: 15px; font-size: 13px; }.service-detail-grid { gap: 12px; }.service-process { width: calc(100% - 40px); margin-bottom: 50px; padding: 28px 23px; border-radius: 18px; }.service-process ol { grid-template-columns: repeat(2, 1fr); gap: 25px 13px; }.service-process li b { margin-bottom: 13px; } }
@media (max-width: 500px) { .services-breadcrumb { width: calc(100% - 32px); font-size: 9px; }.services-page-hero { width: calc(100% - 32px); min-height: 735px; padding-top: 55px; }.services-page-copy h1 { font-size: 37px; }.services-page-copy > p:not(.eyebrow) { margin: 17px 0 22px; font-size: 14px; }.services-page-orbit { margin-top: 18px; margin-left: -119px; transform: scale(.54); }.service-detail-section { width: calc(100% - 32px); }.service-detail-grid { grid-template-columns: 1fr; }.service-detail-card { min-height: 250px; }.detail-icon { margin-bottom: 23px; }.service-process { width: calc(100% - 32px); }.service-process ol { grid-template-columns: 1fr 1fr; }.service-process li span { font-size: 15px; } }

/* Compact services-page introduction */
.services-page-hero { display: flex; align-items: center; width: min(1560px, calc(100% - 10%)); min-height: 325px; margin: 0 auto; padding: 40px 0 44px; }.services-page-copy { max-width: 760px; }.services-page-copy h1 { max-width: 710px; font-size: clamp(39px, 3.65vw, 57px); letter-spacing: -3.3px; }.services-page-copy > p:not(.eyebrow) { max-width: 640px; margin: 16px 0 22px; font-size: 15px; }.services-page-copy .eyebrow { margin-bottom: 13px; font-size: 12px; }
@media (max-width: 760px) { .services-page-hero { width: calc(100% - 40px); min-height: 300px; padding: 38px 0 42px; }.services-page-copy h1 { font-size: 38px; letter-spacing: -2.6px; }.services-page-copy > p:not(.eyebrow) { font-size: 14px; } }
@media (max-width: 500px) { .services-page-hero { width: calc(100% - 32px); min-height: 285px; padding: 33px 0 38px; }.services-page-copy h1 { font-size: 34px; }.services-page-copy .hero-actions { gap: 10px; }.services-page-copy .button { min-height: 46px; padding: 0 14px; font-size: 10px; }.services-page-copy .button-watch { min-width: 136px; } }

/* About page */
.about-page { overflow: hidden; background: radial-gradient(circle at 94% 8%, #dceeff 0, transparent 22%), radial-gradient(circle at 4% 55%, #eaf6ff 0, transparent 24%), #fbfdff; }.about-breadcrumb { display: flex; align-items: center; gap: 8px; width: min(1560px, calc(100% - 10%)); margin: 18px auto -10px; color: #7183a0; font: 500 10px 'DM Mono', monospace; letter-spacing: .05em; text-transform: uppercase; }.about-breadcrumb a { color: #176fe0; text-decoration: none; }.about-breadcrumb a:hover { color: var(--coral); }.about-breadcrumb span:last-child { color: #0a2e66; }
.about-page-hero { display: grid; grid-template-columns: minmax(360px, .83fr) minmax(500px, 1.17fr); align-items: center; gap: clamp(40px, 6vw, 105px); width: min(1560px, calc(100% - 10%)); min-height: 540px; margin: 0 auto; padding: 42px 0 65px; }.about-page-copy h1 { max-width: 625px; font-size: clamp(42px, 3.6vw, 59px); letter-spacing: -3.4px; }.about-page-copy h1 span, .about-story-heading h2 span { color: #1878ee; }.about-page-copy > p:not(.eyebrow) { max-width: 570px; margin: 19px 0 25px; color: #61718d; font-size: 16px; font-weight: 500; line-height: 1.58; }.about-page-copy .eyebrow { margin-bottom: 14px; font-size: 12px; }
.about-page-visual { position: relative; min-height: 440px; padding: 20px 73px 0 42px; }.about-page-visual::before, .about-page-visual::after { position: absolute; z-index: 0; border-radius: 25px; content: ''; background: #e2f1ff; }.about-page-visual::before { top: 0; left: 0; width: 52%; height: 55%; }.about-page-visual::after { right: 0; bottom: 0; width: 42%; height: 45%; }.about-page-photo { position: relative; z-index: 1; height: 420px; overflow: hidden; border-radius: 26px; box-shadow: 0 18px 34px rgba(14,55,102,.16); }.about-page-photo img { width: 100%; height: 100%; object-fit: cover; }.about-page-stat { position: absolute; z-index: 2; top: 77px; right: 0; display: grid; gap: 4px; width: 173px; padding: 22px; border-radius: 17px; color: #fff; background: linear-gradient(145deg, #0b387d, #031a43); box-shadow: 0 16px 29px rgba(5,39,87,.22); }.about-page-stat strong { font-size: 37px; letter-spacing: -2px; line-height: 1; }.about-page-stat span { font-size: 11px; }.about-page-stat-small { top: auto; right: 27px; bottom: 17px; width: 145px; color: #0b3572; background: #fff; }.about-page-stat-small span { color: #63738e; }
.about-story-section { display: grid; grid-template-columns: 1fr .8fr; gap: clamp(55px, 10vw, 160px); width: min(1320px, calc(100% - 16%)); margin: 0 auto; padding: 62px 0; }.about-story-heading .section-label { margin-bottom: 14px; }.about-story-heading h2, .about-values-section-intro h2 { margin: 0; color: #08295c; font-size: clamp(29px, 2.7vw, 45px); letter-spacing: -2.6px; line-height: 1.08; }.about-story-copy { align-self: end; }.about-story-copy p { margin: 0; color: #64748f; font-size: 15px; line-height: 1.63; }.about-story-copy a { display: inline-flex; align-items: center; gap: 12px; margin-top: 21px; color: #1475e8; font-size: 13px; font-weight: 800; text-decoration: none; }.about-story-copy a span { font-size: 20px; }
.about-values-section { width: min(1560px, calc(100% - 10%)); margin: 0 auto; padding: 53px 0 68px; }.about-values-section-intro { display: flex; align-items: end; justify-content: space-between; gap: 40px; margin-bottom: 25px; }.about-values-section-intro .section-label { margin-bottom: 13px; }.about-values-section-intro h2 { max-width: 690px; }.about-page-values { display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; }.about-page-value { min-height: 230px; padding: 20px; border: 1px solid #e2eefc; border-radius: 18px; transition: transform .25s ease, box-shadow .25s ease; }.about-page-value:hover { transform: translateY(-5px); box-shadow: 0 17px 28px rgba(9,51,101,.13); }.about-page-value-dark { color: #fff; border-color: transparent; background: linear-gradient(145deg, #093777, #031a43); }.about-page-value-light { color: #0b3169; background: linear-gradient(135deg, #f7fbff, #dfedff); }.about-page-value-icon { display: grid; width: 45px; height: 45px; place-items: center; margin-bottom: 27px; border: 1px solid #73abff; border-radius: 11px; color: #1b81f4; background: rgba(255,255,255,.08); }.about-page-value-light .about-page-value-icon { background: rgba(255,255,255,.42); }.about-page-value-icon svg { width: 55%; height: 55%; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }.about-page-value h3 { margin: 0; font-size: 18px; letter-spacing: -.8px; line-height: 1.2; }.about-page-value p { margin: 10px 0 0; font-size: 12px; line-height: 1.5; opacity: .85; }
.about-numbers { display: grid; grid-template-columns: repeat(4, 1fr); width: min(1560px, calc(100% - 10%)); margin: 0 auto 70px; overflow: hidden; border-radius: 18px; color: #fff; background: linear-gradient(125deg, #082e69, #1158ad); }.about-numbers div { padding: 25px 30px; border-right: 1px solid rgba(167,208,255,.28); }.about-numbers div:last-child { border: 0; }.about-numbers strong, .about-numbers span { display: block; }.about-numbers strong { font-size: 34px; letter-spacing: -1.8px; line-height: 1; }.about-numbers span { margin-top: 8px; color: #c7dff8; font-size: 11px; }
@media (max-width: 1100px) { .about-page-hero { grid-template-columns: minmax(330px, .9fr) minmax(430px, 1.1fr); gap: 35px; width: calc(100% - 8%); }.about-page-visual { transform: scale(.92); transform-origin: right center; }.about-page-values { grid-template-columns: repeat(2, 1fr); }.about-page-value { min-height: 210px; }.about-story-section { width: calc(100% - 12%); } }
@media (max-width: 760px) { .about-breadcrumb { width: calc(100% - 40px); margin: 15px auto -5px; }.about-page-hero { grid-template-columns: 1fr; width: calc(100% - 40px); min-height: 0; gap: 25px; padding: 47px 0 47px; }.about-page-copy h1 { font-size: 40px; letter-spacing: -2.7px; }.about-page-copy > p:not(.eyebrow) { font-size: 15px; }.about-page-visual { width: 100%; max-width: 590px; min-height: 397px; margin: 0 auto; padding: 17px 57px 0 29px; transform: none; }.about-page-photo { height: 376px; }.about-page-stat { top: 57px; width: 150px; padding: 18px; }.about-page-stat strong { font-size: 30px; }.about-page-stat-small { right: 13px; bottom: 12px; width: 125px; }.about-story-section { grid-template-columns: 1fr; gap: 18px; width: calc(100% - 40px); padding: 47px 0; }.about-values-section { width: calc(100% - 40px); padding: 40px 0 50px; }.about-values-section-intro { display: block; margin-bottom: 20px; }.about-numbers { grid-template-columns: repeat(2, 1fr); width: calc(100% - 40px); margin-bottom: 50px; }.about-numbers div:nth-child(2) { border-right: 0; }.about-numbers div:nth-child(-n+2) { border-bottom: 1px solid rgba(167,208,255,.28); } }
@media (max-width: 500px) { .about-breadcrumb { width: calc(100% - 32px); font-size: 9px; }.about-page-hero { width: calc(100% - 32px); padding: 40px 0; }.about-page-copy h1 { font-size: 35px; }.about-page-copy > p:not(.eyebrow) { font-size: 14px; }.about-page-copy .button { min-height: 47px; padding: 0 17px; font-size: 11px; }.about-page-visual { min-height: 310px; padding: 14px 35px 0 18px; }.about-page-photo { height: 294px; border-radius: 18px; }.about-page-stat { top: 38px; width: 119px; padding: 13px; border-radius: 13px; }.about-page-stat strong { font-size: 25px; }.about-page-stat span { font-size: 9px; }.about-page-stat-small { right: 3px; bottom: 6px; width: 104px; }.about-story-section, .about-values-section { width: calc(100% - 32px); }.about-story-heading h2, .about-values-section-intro h2 { font-size: 30px; letter-spacing: -1.9px; }.about-page-values { grid-template-columns: 1fr; gap: 11px; }.about-page-value { min-height: 170px; }.about-page-value-icon { margin-bottom: 18px; }.about-numbers { width: calc(100% - 32px); }.about-numbers div { padding: 20px; }.about-numbers strong { font-size: 29px; } }

/* Automation page */
.automation-page { overflow: hidden; background: radial-gradient(circle at 92% 9%, #dcefff 0, transparent 22%), radial-gradient(circle at 1% 41%, #e7f5ff 0, transparent 25%), #fbfdff; }.automation-breadcrumb { display: flex; align-items: center; gap: 8px; width: min(1560px, calc(100% - 10%)); margin: 18px auto -12px; color: #7183a0; font: 500 10px 'DM Mono', monospace; letter-spacing: .05em; text-transform: uppercase; }.automation-breadcrumb a { color: #176fe0; text-decoration: none; }.automation-breadcrumb a:hover { color: var(--coral); }.automation-breadcrumb span:last-child { color: #0a2e66; }
.automation-hero { display: grid; grid-template-columns: minmax(390px, .9fr) minmax(490px, 1.1fr); align-items: center; gap: 45px; width: min(1560px, calc(100% - 10%)); min-height: 530px; margin: 0 auto; padding: 35px 0 60px; }.automation-copy h1 { max-width: 675px; font-size: clamp(42px, 3.85vw, 62px); letter-spacing: -3.6px; }.automation-copy h1 span, .automation-section-intro h2 span { color: #1878ee; }.automation-copy > p:not(.eyebrow) { max-width: 585px; margin: 19px 0 25px; color: #61718d; font-size: 16px; font-weight: 500; line-height: 1.58; }.automation-copy .eyebrow { margin-bottom: 14px; font-size: 12px; }
.automation-flow { position: relative; width: 560px; height: 430px; margin-left: auto; }.flow-orbit { position: absolute; border-radius: 50%; }.flow-orbit-one { top: 5px; left: 42px; width: 398px; height: 398px; border: 1px dashed #b6d8fc; animation: orbit-spin 35s linear infinite; }.flow-orbit-two { top: 48px; left: 85px; width: 315px; height: 315px; border: 25px solid rgba(186,219,249,.65); border-top-color: #1b61aa; border-right-color: #1b61aa; transform: rotate(-23deg); animation: orbit-spin-reverse 27s linear infinite; }.flow-core { position: absolute; top: 139px; left: 179px; display: grid; width: 126px; height: 126px; place-items: center; border: 9px solid #dfefff; border-radius: 50%; color: #082e68; background: radial-gradient(circle at 33% 25%, #fff, #dff1ff); box-shadow: inset -9px -11px 18px rgba(25,83,151,.2), 0 15px 29px rgba(18,75,142,.17); font-size: 33px; font-weight: 800; }.flow-core i { position: absolute; right: 19px; bottom: 24px; width: 13px; height: 13px; border-radius: 50%; background: var(--coral); }.flow-line { position: absolute; z-index: 1; height: 1px; transform-origin: left center; background: linear-gradient(90deg, #3d88df, transparent); }.flow-line-one { top: 121px; left: 257px; width: 157px; transform: rotate(-35deg); }.flow-line-two { top: 277px; left: 230px; width: 154px; transform: rotate(37deg); }.flow-line-three { top: 294px; left: 105px; width: 115px; transform: rotate(138deg); }.flow-node { position: absolute; z-index: 2; min-width: 130px; padding: 12px 15px; border: 1px solid rgba(255,255,255,.9); border-radius: 13px; color: #0a336e; background: rgba(255,255,255,.93); box-shadow: 0 13px 25px rgba(13,54,106,.13); animation: node-float 5s ease-in-out infinite; }.flow-node b, .flow-node span, .flow-node small { display: block; }.flow-node b { color: #1b7cf0; font: 500 10px 'DM Mono', monospace; }.flow-node span { margin: 4px 0 2px; font-size: 13px; font-weight: 800; }.flow-node small { color: #6c7d97; font-size: 10px; }.flow-node-top { top: 22px; right: 10px; }.flow-node-right { top: 192px; right: -21px; animation-delay: -1.2s; }.flow-node-bottom { bottom: 8px; left: 4px; animation-delay: -2.1s; }.flow-pulse { position: absolute; z-index: 2; width: 10px; height: 10px; border-radius: 50%; background: var(--coral); box-shadow: 0 0 14px rgba(255,98,77,.68); animation: dot-pulse 2.5s ease-in-out infinite; }.flow-pulse-one { top: 87px; left: 235px; }.flow-pulse-two { right: 63px; bottom: 50px; background: #1d64aa; animation-delay: -1.1s; }
.automation-services { width: min(1560px, calc(100% - 10%)); margin: 0 auto; padding: 58px 0 70px; }.automation-section-intro { display: flex; align-items: end; justify-content: space-between; gap: 50px; margin-bottom: 27px; }.automation-section-intro .section-label { margin-bottom: 13px; }.automation-section-intro h2, .automation-benefits h2 { margin: 0; color: #08295c; font-size: clamp(32px, 3vw, 50px); letter-spacing: -2.9px; line-height: 1.07; }.automation-section-intro > p { max-width: 365px; margin: 0; color: #667695; font-size: 15px; line-height: 1.55; }.automation-service-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; }.automation-service-card { position: relative; min-height: 275px; padding: 20px; overflow: hidden; border: 1px solid #e2eefc; border-radius: 18px; transition: transform .25s ease, box-shadow .25s ease; }.automation-service-card:hover { transform: translateY(-5px); box-shadow: 0 18px 30px rgba(8,49,100,.14); }.automation-service-dark { color: #fff; border-color: transparent; background: linear-gradient(145deg, #0a397b, #031a44); }.automation-service-light { color: #0b336d; background: linear-gradient(135deg, #f8fcff, #ddebff); }.automation-card-icon { display: grid; width: 47px; height: 47px; place-items: center; margin-bottom: 25px; border: 1px solid #75adff; border-radius: 11px; color: #1c82f5; background: rgba(255,255,255,.08); }.automation-service-light .automation-card-icon { background: rgba(255,255,255,.43); }.automation-card-icon svg { width: 55%; height: 55%; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }.automation-card-number { position: absolute; top: 23px; right: 20px; font-size: 16px; font-weight: 800; opacity: .55; }.automation-service-card h3 { margin: 0; font-size: 19px; letter-spacing: -.8px; }.automation-service-card > p { margin: 10px 0 12px; font-size: 12px; line-height: 1.48; opacity: .86; }.automation-service-card ul { display: grid; gap: 5px; margin: 0; padding: 0; list-style: none; font-size: 11px; }.automation-service-card li { position: relative; padding-left: 13px; }.automation-service-card li::before { position: absolute; top: .45em; left: 0; width: 5px; height: 5px; border-radius: 50%; content: ''; background: #2589fa; }
.automation-benefits { display: grid; grid-template-columns: .8fr 1.2fr; gap: 70px; width: min(1560px, calc(100% - 10%)); margin: 0 auto 70px; padding: 39px; border-radius: 21px; color: #fff; background: linear-gradient(125deg, #082d67, #1159ad); }.automation-benefits .section-label { margin-bottom: 12px; color: #94c8ff; }.automation-benefits h2 { max-width: 400px; color: #fff; font-size: clamp(27px, 2.35vw, 39px); letter-spacing: -2px; }.automation-benefit-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }.automation-benefit-list article { border-left: 1px solid rgba(163,207,255,.38); padding-left: 17px; }.automation-benefit-list b { color: #81beff; font: 500 11px 'DM Mono', monospace; }.automation-benefit-list h3 { margin: 19px 0 7px; font-size: 17px; }.automation-benefit-list p { margin: 0; color: #cae1fa; font-size: 11px; line-height: 1.5; }
@media (max-width: 1100px) { .automation-hero { grid-template-columns: minmax(330px, .9fr) minmax(430px, 1.1fr); width: calc(100% - 8%); gap: 30px; }.automation-flow { transform: scale(.88); transform-origin: right center; }.automation-service-grid { grid-template-columns: repeat(2, 1fr); }.automation-services, .automation-benefits { width: calc(100% - 8%); }.automation-benefits { grid-template-columns: 1fr; gap: 30px; }.automation-benefits h2 { max-width: 620px; } }
@media (max-width: 760px) { .automation-breadcrumb { width: calc(100% - 40px); margin: 15px auto -5px; }.automation-hero { grid-template-columns: 1fr; width: calc(100% - 40px); min-height: 0; gap: 14px; padding: 48px 0 44px; }.automation-copy h1 { font-size: 40px; letter-spacing: -2.7px; }.automation-copy > p:not(.eyebrow) { font-size: 15px; }.automation-flow { width: 560px; height: 365px; margin: 0 0 0 -65px; transform: scale(.68); transform-origin: left top; }.automation-services { width: calc(100% - 40px); padding-top: 38px; }.automation-section-intro { display: block; margin-bottom: 22px; }.automation-section-intro h2 { font-size: 33px; letter-spacing: -2px; }.automation-section-intro > p { margin-top: 14px; font-size: 13px; }.automation-benefits { width: calc(100% - 40px); margin-bottom: 50px; padding: 28px 22px; }.automation-benefit-list { gap: 15px; } }
@media (max-width: 500px) { .automation-breadcrumb { width: calc(100% - 32px); font-size: 9px; }.automation-hero { width: calc(100% - 32px); padding-top: 40px; }.automation-copy h1 { font-size: 35px; }.automation-copy > p:not(.eyebrow) { font-size: 14px; }.automation-copy .button { min-height: 47px; padding: 0 14px; font-size: 10px; }.automation-copy .button-watch { min-width: 139px; }.automation-flow { margin-left: -81px; transform: scale(.56); }.automation-services { width: calc(100% - 32px); }.automation-service-grid { grid-template-columns: 1fr; gap: 11px; }.automation-service-card { min-height: 225px; }.automation-card-icon { margin-bottom: 18px; }.automation-benefits { display: block; width: calc(100% - 32px); }.automation-benefit-list { grid-template-columns: 1fr; margin-top: 26px; }.automation-benefit-list article { padding-bottom: 15px; }.automation-benefit-list h3 { margin-top: 11px; } }

/* Portfolio page */
.portfolio-page { overflow: hidden; background: radial-gradient(circle at 92% 10%, #dceeff 0, transparent 23%), radial-gradient(circle at 3% 44%, #ebf6ff 0, transparent 25%), #fbfdff; }.portfolio-breadcrumb { display: flex; align-items: center; gap: 8px; width: min(1560px, calc(100% - 10%)); margin: 18px auto -10px; color: #7183a0; font: 500 10px 'DM Mono', monospace; letter-spacing: .05em; text-transform: uppercase; }.portfolio-breadcrumb a { color: #176fe0; text-decoration: none; }.portfolio-breadcrumb a:hover { color: var(--coral); }.portfolio-breadcrumb span:last-child { color: #0a2e66; }
.portfolio-hero { width: min(1300px, calc(100% - 18%)); margin: 0 auto; padding: 55px 0 66px; text-align: center; }.portfolio-hero .eyebrow { margin-bottom: 15px; font-size: 12px; }.portfolio-hero h1 { max-width: 900px; margin: 0 auto; font-size: clamp(43px, 4.1vw, 64px); letter-spacing: -3.7px; }.portfolio-hero h1 span, .portfolio-work-heading h2 span { color: #1878ee; }.portfolio-hero > p { max-width: 645px; margin: 19px auto 26px; color: #62728d; font-size: 16px; font-weight: 500; line-height: 1.58; }.portfolio-hero-meta { display: flex; align-items: center; justify-content: center; gap: 24px; color: #637592; font-size: 12px; }.portfolio-hero-meta span { padding-right: 24px; border-right: 1px solid #d8e7f7; }.portfolio-hero-meta span:nth-child(2) { border: 0; }.portfolio-hero-meta b { margin-right: 4px; color: #0a3470; font-size: 16px; }.portfolio-hero-meta a { display: inline-flex; align-items: center; gap: 8px; color: #1171e7; font-weight: 800; text-decoration: none; }.portfolio-hero-meta i { display: grid; width: 24px; height: 24px; place-items: center; border-radius: 50%; color: #fff; background: #1878ee; font-style: normal; }
.portfolio-work { width: min(1560px, calc(100% - 10%)); margin: 0 auto; padding: 45px 0 70px; }.portfolio-work-heading { display: flex; align-items: end; justify-content: space-between; gap: 55px; margin-bottom: 27px; }.portfolio-work-heading .section-label { margin-bottom: 13px; }.portfolio-work-heading h2, .portfolio-clients h2 { max-width: 735px; margin: 0; color: #08295c; font-size: clamp(32px, 3vw, 50px); letter-spacing: -2.8px; line-height: 1.08; }.portfolio-work-heading > p { max-width: 350px; margin: 0; color: #667695; font-size: 14px; line-height: 1.58; }
.portfolio-featured { display: grid; grid-template-columns: minmax(370px, .84fr) minmax(500px, 1.16fr); min-height: 408px; overflow: hidden; border-radius: 23px; color: #fff; background: linear-gradient(135deg, #082d68, #0e56a8); box-shadow: 0 19px 35px rgba(7,46,98,.16); }.portfolio-featured-copy { z-index: 2; padding: 43px; }.portfolio-tag { display: inline-block; padding: 6px 9px; border: 1px solid rgba(166,209,255,.4); border-radius: 5px; color: #9bcaff; font: 500 10px 'DM Mono', monospace; text-transform: uppercase; }.portfolio-featured h3 { max-width: 450px; margin: 18px 0 13px; font-size: clamp(26px, 2.35vw, 39px); letter-spacing: -2px; line-height: 1.1; }.portfolio-featured-copy > p { max-width: 430px; margin: 0 0 16px; color: #c6ddf9; font-size: 13px; line-height: 1.58; }.portfolio-featured ul { display: grid; gap: 6px; margin: 0; padding: 0; list-style: none; color: #eef7ff; font-size: 11px; }.portfolio-featured li { position: relative; padding-left: 14px; }.portfolio-featured li::before { position: absolute; top: .43em; left: 0; width: 5px; height: 5px; border-radius: 50%; content: ''; background: #68adff; }.portfolio-featured-copy > a { display: inline-flex; gap: 12px; margin-top: 23px; color: #fff; font-size: 13px; font-weight: 800; text-decoration: none; }.portfolio-featured-copy > a span { font-size: 19px; }
.portfolio-featured-art { position: relative; overflow: hidden; background: radial-gradient(circle at 55% 50%, rgba(181,222,255,.45), transparent 38%); }.featured-orbit { position: absolute; border-radius: 50%; }.featured-orbit-one { top: -95px; right: -20px; width: 555px; height: 555px; border: 50px solid transparent; background: conic-gradient(from 8deg, #1b63b1 0 97deg, transparent 98deg 175deg, #3b83d1 176deg 266deg, transparent 267deg 360deg) border-box; -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0); -webkit-mask-composite: xor; mask-composite: exclude; animation: orbit-spin 42s linear infinite; }.featured-orbit-two { top: 36px; right: 90px; width: 340px; height: 340px; border: 18px solid rgba(184,220,251,.72); box-shadow: inset 18px 17px 25px rgba(5,51,109,.15); }.featured-dashboard { position: absolute; top: 97px; right: 162px; display: grid; width: 180px; height: 180px; place-items: center; border: 13px solid #dff0ff; border-radius: 50%; color: #062b66; background: radial-gradient(circle at 35% 25%, #fff, #cae7ff); box-shadow: inset -13px -13px 22px rgba(23,87,156,.22), 0 15px 28px rgba(4,42,93,.25); }.featured-dashboard b { font-size: 68px; letter-spacing: -9px; }.featured-dashboard i { position: absolute; right: 26px; bottom: 30px; width: 16px; height: 16px; border-radius: 50%; background: var(--coral); }.featured-dashboard span { position: absolute; width: 8px; height: 8px; border-radius: 50%; background: #1d70cc; }.featured-dashboard span:first-child { top: -47px; left: 38px; }.featured-dashboard span:nth-child(2) { right: -61px; bottom: 48px; background: var(--coral); }.featured-dashboard span:nth-child(3) { bottom: -43px; left: 50px; }.featured-panel { position: absolute; z-index: 2; padding: 13px 16px; border: 1px solid rgba(255,255,255,.9); border-radius: 12px; color: #0a3673; background: rgba(255,255,255,.92); box-shadow: 0 13px 23px rgba(4,38,84,.16); }.featured-panel small, .featured-panel strong { display: block; }.featured-panel small { color: #6b7d98; font: 500 9px 'DM Mono', monospace; }.featured-panel strong { margin-top: 3px; font-size: 13px; }.panel-one { top: 43px; left: 34px; }.panel-two { right: 30px; bottom: 36px; }
.portfolio-card-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 15px; margin-top: 15px; }.portfolio-card { position: relative; display: flex; min-height: 291px; flex-direction: column; padding: 20px; overflow: hidden; border: 1px solid #e0edfc; border-radius: 18px; transition: transform .25s ease, box-shadow .25s ease; }.portfolio-card:hover { transform: translateY(-5px); box-shadow: 0 18px 30px rgba(8,49,100,.14); }.portfolio-card-light { color: #0b336d; background: linear-gradient(135deg, #f8fcff, #e0efff); }.portfolio-card-dark { color: #fff; border-color: transparent; background: linear-gradient(145deg, #0b3a7d, #031a44); }.portfolio-client-logo { display: grid; height: 54px; place-items: center start; margin-bottom: 27px; }.portfolio-client-logo img { max-width: 135px; max-height: 45px; object-fit: contain; object-position: left center; }.portfolio-card-dark .portfolio-client-logo img { filter: brightness(0) invert(1); }.portfolio-card div:nth-child(2) > span { color: #287fed; font: 500 10px 'DM Mono', monospace; text-transform: uppercase; }.portfolio-card-dark div:nth-child(2) > span { color: #98c7ff; }.portfolio-card h3 { margin: 8px 0; font-size: 17px; letter-spacing: -.7px; line-height: 1.25; }.portfolio-card p { margin: 0; font-size: 11px; line-height: 1.52; opacity: .8; }.portfolio-card > a { display: grid; width: 30px; height: 30px; place-items: center; margin-top: auto; border-radius: 50%; color: #fff; background: #1678ed; font-size: 19px; text-decoration: none; }.portfolio-card-dark > a { color: #082d67; background: #fff; }
.portfolio-clients { width: min(1560px, calc(100% - 10%)); margin: 0 auto 70px; padding: 40px; border-radius: 21px; background: #eef7ff; }.portfolio-clients .section-label { margin-bottom: 12px; }.portfolio-clients h2 { max-width: 610px; font-size: clamp(27px, 2.3vw, 39px); letter-spacing: -2px; }.portfolio-client-row { display: grid; grid-template-columns: repeat(6, 1fr); gap: 11px; margin-top: 28px; }.portfolio-client-row span { display: grid; height: 80px; place-items: center; padding: 10px; border: 1px solid #dceafb; border-radius: 12px; background: #fff; }.portfolio-client-row img { max-width: 118px; max-height: 46px; object-fit: contain; }
@media (max-width: 1100px) { .portfolio-hero { width: calc(100% - 12%); }.portfolio-work, .portfolio-clients { width: calc(100% - 8%); }.portfolio-featured { grid-template-columns: minmax(330px, .9fr) minmax(400px, 1.1fr); }.portfolio-featured-art { transform: scale(.9); transform-origin: right center; }.portfolio-card-grid { grid-template-columns: repeat(2, 1fr); }.portfolio-card { min-height: 265px; }.portfolio-client-row { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 760px) { .portfolio-breadcrumb { width: calc(100% - 40px); margin: 15px auto -5px; }.portfolio-hero { width: calc(100% - 40px); padding: 46px 0 48px; text-align: left; }.portfolio-hero h1 { margin: 0; font-size: 41px; letter-spacing: -2.8px; }.portfolio-hero > p { margin: 17px 0 21px; font-size: 15px; }.portfolio-hero-meta { justify-content: flex-start; gap: 12px; font-size: 10px; }.portfolio-hero-meta span { padding-right: 12px; }.portfolio-hero-meta b { font-size: 14px; }.portfolio-work { width: calc(100% - 40px); padding-top: 37px; }.portfolio-work-heading { display: block; margin-bottom: 22px; }.portfolio-work-heading h2 { font-size: 33px; letter-spacing: -2px; }.portfolio-work-heading > p { margin-top: 15px; font-size: 13px; }.portfolio-featured { grid-template-columns: 1fr; min-height: 0; }.portfolio-featured-copy { padding: 31px 25px; }.portfolio-featured-art { height: 315px; transform: none; }.portfolio-featured h3 { font-size: 30px; }.portfolio-card-grid { gap: 12px; }.portfolio-clients { width: calc(100% - 40px); margin-bottom: 50px; padding: 28px; }.portfolio-client-row { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 500px) { .portfolio-breadcrumb { width: calc(100% - 32px); font-size: 9px; }.portfolio-hero { width: calc(100% - 32px); padding-top: 40px; }.portfolio-hero h1 { font-size: 35px; }.portfolio-hero > p { font-size: 14px; }.portfolio-hero-meta { flex-wrap: wrap; }.portfolio-hero-meta a { width: 100%; margin-top: 5px; }.portfolio-work { width: calc(100% - 32px); }.portfolio-card-grid { grid-template-columns: 1fr; }.portfolio-card { min-height: 230px; }.portfolio-client-logo { margin-bottom: 19px; }.portfolio-clients { width: calc(100% - 32px); padding: 23px 16px; }.portfolio-clients h2 { font-size: 29px; letter-spacing: -1.8px; }.portfolio-client-row { grid-template-columns: repeat(2, 1fr); }.portfolio-client-row span { height: 69px; }.portfolio-client-row img { max-width: 100px; max-height: 36px; } }

/* Preserve each client logo's original brand colours on dark portfolio cards. */
.portfolio-card-dark .portfolio-client-logo { width: 145px; padding: 7px 10px; border-radius: 8px; background: #fff; }
.portfolio-card-dark .portfolio-client-logo img { filter: none; }

/* Contact page */
.contact-page { overflow: hidden; background: radial-gradient(circle at 92% 12%, #dcefff 0, transparent 24%), radial-gradient(circle at 4% 56%, #e9f6ff 0, transparent 26%), #fbfdff; }.contact-breadcrumb { display: flex; align-items: center; gap: 8px; width: min(1450px, calc(100% - 10%)); margin: 18px auto -10px; color: #7183a0; font: 500 10px 'DM Mono', monospace; letter-spacing: .05em; text-transform: uppercase; }.contact-breadcrumb a { color: #176fe0; text-decoration: none; }.contact-breadcrumb a:hover { color: var(--coral); }.contact-breadcrumb span:last-child { color: #0a2e66; }
.contact-hero { display: grid; grid-template-columns: minmax(350px, .83fr) minmax(510px, 1.17fr); align-items: center; gap: clamp(40px, 7vw, 115px); width: min(1450px, calc(100% - 10%)); min-height: 585px; margin: 0 auto; padding: 42px 0 65px; }.contact-copy h1 { max-width: 590px; font-size: clamp(43px, 3.85vw, 62px); letter-spacing: -3.6px; }.contact-copy h1 span { color: #1878ee; }.contact-copy > p:not(.eyebrow) { max-width: 570px; margin: 18px 0 25px; color: #61718d; font-size: 16px; font-weight: 500; line-height: 1.58; }.contact-copy .eyebrow { margin-bottom: 14px; font-size: 12px; }.contact-direct { display: flex; align-items: center; gap: 12px; margin-top: 28px; }.contact-direct-icon { display: grid; width: 39px; height: 39px; place-items: center; border-radius: 11px; color: #fff; background: #0b3a7d; font-size: 18px; font-weight: 800; }.contact-direct small, .contact-direct a { display: block; }.contact-direct small { margin-bottom: 3px; color: #72829b; font-size: 10px; }.contact-direct a { color: #0b3979; font-size: 14px; font-weight: 800; text-decoration: none; }.contact-steps { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 27px; color: #62738d; font-size: 11px; }.contact-steps span { display: inline-flex; align-items: center; gap: 6px; }.contact-steps b { display: grid; width: 19px; height: 19px; place-items: center; border-radius: 50%; color: #176fe0; background: #e3f1ff; font-size: 9px; }
.contact-form-card { padding: 29px; border: 1px solid rgba(255,255,255,.92); border-radius: 22px; background: rgba(255,255,255,.91); box-shadow: 0 20px 38px rgba(13,55,106,.14); }.contact-form-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 21px; }.contact-form-heading span { color: #0a316b; font-size: 20px; font-weight: 800; letter-spacing: -.8px; }.contact-form-heading p { max-width: 175px; margin: 0; color: #708099; font-size: 11px; line-height: 1.4; text-align: right; }.contact-form-card form { display: grid; gap: 15px; }.contact-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; }.contact-form-card label { display: grid; gap: 7px; color: #58708f; font-size: 11px; font-weight: 700; }.contact-form-card input, .contact-form-card select, .contact-form-card textarea { width: 100%; min-height: 42px; padding: 0 12px; border: 1px solid #d9e7f6; border-radius: 8px; outline: 0; color: #0a326d; background: #f9fcff; font: 500 12px Manrope, Arial, sans-serif; transition: border-color .2s ease, box-shadow .2s ease; }.contact-form-card textarea { min-height: 92px; padding-top: 11px; resize: vertical; }.contact-form-card select { appearance: auto; }.contact-form-card input:focus, .contact-form-card select:focus, .contact-form-card textarea:focus { border-color: #4694f3; box-shadow: 0 0 0 3px rgba(48,135,241,.13); }.contact-form-card textarea::placeholder { color: #93a4bb; }.contact-submit { display: inline-flex; align-items: center; justify-content: center; gap: 15px; min-height: 46px; width: fit-content; padding: 0 18px; border: 0; border-radius: 8px; cursor: pointer; color: #fff; background: linear-gradient(135deg, #ff704f, #ff5949); box-shadow: 0 11px 20px rgba(255,91,73,.25); font: 800 12px Manrope, Arial, sans-serif; text-transform: uppercase; transition: transform .2s ease; }.contact-submit:hover { transform: translateY(-2px); }.contact-submit span { font-size: 18px; }
.contact-assurance { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; width: min(1450px, calc(100% - 10%)); margin: 0 auto 70px; overflow: hidden; border: 1px solid #dceafb; border-radius: 18px; background: #f5faff; }.contact-assurance article { display: flex; gap: 15px; padding: 24px; border-right: 1px solid #dceafb; }.contact-assurance article:last-child { border: 0; }.contact-assurance article > span { color: #1978ed; font: 500 11px 'DM Mono', monospace; }.contact-assurance h2 { margin: 0 0 7px; color: #0a326d; font-size: 15px; letter-spacing: -.5px; }.contact-assurance p { margin: 0; color: #6b7c96; font-size: 11px; line-height: 1.5; }
@media (max-width: 1100px) { .contact-hero { grid-template-columns: minmax(330px, .85fr) minmax(450px, 1.15fr); gap: 35px; width: calc(100% - 8%); }.contact-assurance { width: calc(100% - 8%); } }
@media (max-width: 760px) { .contact-breadcrumb { width: calc(100% - 40px); margin: 15px auto -5px; }.contact-hero { grid-template-columns: 1fr; width: min(620px, calc(100% - 40px)); min-height: 0; gap: 33px; padding: 47px 0 48px; }.contact-copy h1 { font-size: 41px; letter-spacing: -2.8px; }.contact-copy > p:not(.eyebrow) { font-size: 15px; }.contact-form-card { padding: 24px; }.contact-assurance { grid-template-columns: 1fr; width: min(620px, calc(100% - 40px)); margin-bottom: 50px; }.contact-assurance article { border-right: 0; border-bottom: 1px solid #dceafb; }.contact-assurance article:last-child { border: 0; } }
@media (max-width: 500px) { .contact-breadcrumb { width: calc(100% - 32px); font-size: 9px; }.contact-hero { width: calc(100% - 32px); padding-top: 40px; }.contact-copy h1 { font-size: 35px; }.contact-copy > p:not(.eyebrow) { font-size: 14px; }.contact-steps { display: grid; gap: 9px; }.contact-form-card { padding: 19px 16px; border-radius: 16px; }.contact-form-heading { align-items: start; flex-direction: column; gap: 5px; }.contact-form-heading p { text-align: left; }.contact-form-row { grid-template-columns: 1fr; gap: 15px; }.contact-assurance { width: calc(100% - 32px); }.contact-assurance article { padding: 19px; } }

/* Compact contact page */
.contact-hero { min-height: 465px; padding: 35px 0 52px; }.contact-copy > p:not(.eyebrow) { max-width: 500px; margin-bottom: 18px; }.contact-direct { margin-top: 20px; }.contact-form-card { padding: 25px; }.contact-form-heading { margin-bottom: 17px; }
@media (max-width: 760px) { .contact-hero { min-height: 0; padding: 42px 0 48px; }.contact-form-card { padding: 22px; } }
@media (max-width: 500px) { .contact-hero { padding-top: 37px; }.contact-form-card { padding: 19px 16px; } }

/* Floating WhatsApp contact */
.whatsapp-float { position: fixed; z-index: 50; right: 23px; bottom: 23px; display: inline-flex; align-items: center; gap: 9px; min-height: 52px; padding: 0 16px 0 12px; border: 2px solid #fff; border-radius: 28px; color: #fff; background: #25d366; box-shadow: 0 12px 27px rgba(11,95,51,.28); font-size: 12px; font-weight: 800; text-decoration: none; transition: transform .2s ease, background .2s ease; animation: whatsapp-pulse 2.8s ease-in-out infinite; }.whatsapp-float:hover { transform: translateY(-3px); background: #18b956; }.whatsapp-float svg { width: 28px; height: 28px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
@keyframes whatsapp-pulse { 50% { box-shadow: 0 12px 27px rgba(11,95,51,.28), 0 0 0 9px rgba(37,211,102,.12); } }
@media (max-width: 500px) { .whatsapp-float { right: 16px; bottom: 16px; width: 53px; min-height: 53px; justify-content: center; padding: 0; border-radius: 50%; }.whatsapp-float span { display: none; }.whatsapp-float svg { width: 29px; height: 29px; } }

/* Refined WhatsApp button */
.whatsapp-float { right: 24px; bottom: 24px; width: 58px; min-height: 58px; justify-content: center; padding: 0; border: 3px solid #fff; border-radius: 50%; background: linear-gradient(145deg, #36dc78, #1dbb5a); box-shadow: 0 13px 28px rgba(10,92,48,.28), 0 0 0 5px rgba(37,211,102,.11); }.whatsapp-float span { display: none; }.whatsapp-float svg { width: 29px; height: 29px; stroke-width: 1.9; }.whatsapp-float::after { position: absolute; right: calc(100% + 12px); padding: 8px 11px; border-radius: 7px; opacity: 0; color: #fff; background: #082b62; box-shadow: 0 8px 18px rgba(5,35,79,.18); content: 'Chat on WhatsApp'; font-size: 11px; font-weight: 800; white-space: nowrap; pointer-events: none; transform: translateX(5px); transition: opacity .2s ease, transform .2s ease; }.whatsapp-float:hover::after, .whatsapp-float:focus-visible::after { opacity: 1; transform: translateX(0); }.whatsapp-float:hover { transform: translateY(-4px) scale(1.03); background: linear-gradient(145deg, #39de7b, #19af51); }
@media (max-width: 500px) { .whatsapp-float { right: 16px; bottom: 16px; width: 54px; min-height: 54px; }.whatsapp-float::after { display: none; } }
