:root{--ink:#180f22;--muted:#756f7e;--purple:#9900ff;--purple-2:#be6aff;--pale:#f7f5fa;--line:#e8e2ee;--dark:#0b0814;--max:1320px}
html{scroll-behavior:smooth}
body{font-family:GraphikLCG,Arial,sans-serif;letter-spacing:-.015em;background:#0b0814}
.container{width:min(calc(100% - 80px),var(--max))}
.logo{display:inline-flex;align-items:center;flex:none;line-height:0;letter-spacing:0}
.logo img{display:block;width:178px;height:auto;max-height:38px}
.nav{height:94px;gap:56px}
.nav .logo img{width:150px;max-height:34px}
@media(max-width:1100px){.nav .logo img{width:132px}}
@media(max-width:760px){.nav .logo img{width:120px;max-height:26px}}
.nav-links{gap:35px}
.nav-links a{font-size:13.44px;font-weight:600;color:#ddd7e8}
.nav-links a:hover{color:#fff}
.lang{font-size:12.48px;color:#d7d1e1}
.button{min-height:52px;border-radius:12px;padding:0 24px;font-size:12.48px;font-weight:700;letter-spacing:-.01em;gap:14px}
.button-primary{background:#9900ff;box-shadow:0 10px 34px rgba(153,0,255,.27)}
.button-primary:hover{background:#ad2aff;box-shadow:0 13px 38px rgba(153,0,255,.38)}
.button-outline{border-color:rgba(233,221,255,.34);background:rgba(20,14,37,.35)}
.button-outline:hover{background:rgba(153,0,255,.16);border-color:rgba(221,190,255,.7)}
.nav-cta{min-height:43px;padding:0 18px;font-size:11.52px}
.hero{background:#080812}
.hero:before{background:linear-gradient(90deg,rgba(6,6,16,.98) 0%,rgba(6,6,16,.92) 26%,rgba(6,6,16,.55) 48%,rgba(6,6,16,.02) 79%)}
.hero:after{background:linear-gradient(0deg,#0b0814 0%,rgba(9,8,20,.58) 45%,transparent 100%)}
.hero-content{height:562px}
.hero-copy{max-width:615px}
.hero-kicker{font-size:10.56px;letter-spacing:2px;color:#cfc2dd}
.hero h1{font-size:clamp(48.96px,4.42vw,67.2px);font-weight:700;letter-spacing:-3.6px;line-height:1.02}
.hero h1 em{color:#c78bff}
.hero-copy p{font-size:16.32px;line-height:1.5;color:#d8d3e2;max-width:490px}
.hero-stats{border-top-color:rgba(242,231,255,.2)}
.hero-stats strong{font-size:28.8px;font-weight:700}
.hero-stats span{font-size:11.52px;color:#bbb2ca}
.insight-layer{border-top-color:rgba(242,231,255,.12)}
.insight-layer .insight strong{color:#dbd4e5}
.trust{background:#100c1b;color:#fff;padding:36px 0 44px;border-top:1px solid rgba(255,255,255,.06)}
.trust-head{font-size:12.48px}
.trust-head strong{font-weight:700}
.trust-head a{color:#c68cff;font-size:11.52px}
.brand-list{margin-top:26px;gap:24px;color:#9c96ab}
.brand{opacity:.77;filter:grayscale(1);letter-spacing:-.04em}
.section{padding:105px 0 110px}
.section-heading{margin-bottom:42px;gap:50px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;background:none;border-radius:0;padding:0;margin-bottom:18px;color:#9500f2;font-size:11.52px;font-weight:700;letter-spacing:.04em}
.eyebrow:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 13px currentColor}
.section h2{font-size:clamp(37.44px,3.55vw,53.76px);line-height:1.02;letter-spacing:-2.9px;font-weight:700}
.heading-aside{width:510px;gap:24px}
.heading-aside p{max-width:330px;font-size:13.44px;line-height:1.48}
.heading-aside a{color:#9000ed;font-size:11.52px}
.services{background:#f6f4f8;color:#1b1422}
.services .heading-aside p{color:#756e7c}
.service-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.service-card{height:350px;border:1px solid #e5dfed;border-radius:18px;background:#fff;padding:24px;box-shadow:none;display:flex;flex-direction:column;align-items:flex-start;transition:transform .3s,border-color .3s,box-shadow .3s,background .3s}
.service-card:hover{transform:translateY(-5px);border-color:#c189ee;background:#fcf9ff;box-shadow:0 24px 45px rgba(55,19,82,.1)}
.service-card .card-icon{width:48px;height:48px;border-radius:12px;background:#f1e6ff;color:#8d00db;font-size:22.08px;box-shadow:none}
.service-card h3{font-size:19.2px;line-height:1.13;letter-spacing:-.55px;margin-top:27px;max-width:95%}
.service-card p{font-size:12.48px;line-height:1.42;color:#756f7e;margin-top:11px;width:88%;max-width:230px}
.service-card .service-meta{left:24px;bottom:67px;row-gap:5px}
.service-card .service-meta b{font-size:13.44px;font-weight:700}
.service-card .service-meta small{font-size:10.56px;color:#9d96a7}
.service-card .card-arrow{left:24px;bottom:23px;width:32px;height:32px;border-radius:9px;background:#edddff;color:#8100d6}
.service-card:hover .card-arrow{background:#9900ff;color:#fff;transform:translateX(3px)}
.service-card .service-graphic{display:none}
.cases{background:#100c1a;color:#fff;padding-top:108px;padding-bottom:110px}
.cases .eyebrow,.process .eyebrow{color:#bc7dff}
.cases .heading-aside p,.process .heading-aside p{color:#bab2c7}
.cases .heading-aside a{color:#c58cff}
.case-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;overflow:visible;padding:0}
.case-card,.case-card.case-dark,.case-card.case-light{height:420px;min-width:0;border-radius:19px;border:1px solid rgba(236,218,255,.13);background:radial-gradient(circle at 100% 100%,rgba(116,36,196,.35),transparent 52%),linear-gradient(145deg,#1b1229,#100d1c 72%);color:#fff;padding:26px}
.case-card:nth-child(2){background:radial-gradient(circle at 80% 90%,rgba(90,55,154,.33),transparent 54%),linear-gradient(145deg,#171425,#100d1c)}
.case-card:nth-child(3){background:radial-gradient(circle at 90% 92%,rgba(99,27,175,.35),transparent 52%),linear-gradient(145deg,#1a1228,#100d1c)}
.case-card .case-tag{border-color:rgba(238,223,255,.25);background:rgba(255,255,255,.06);color:#e4d8f2;font-size:10.56px}
.case-card h3{font-size:24px;line-height:1.11;letter-spacing:-.8px;margin-top:61px;max-width:260px}
.case-card p{font-size:12.48px;line-height:1.43;color:#bcb2c9;max-width:225px}
.case-card button{left:26px;bottom:25px;border-radius:10px;border:1px solid rgba(244,229,255,.27);background:rgba(255,255,255,.07);color:#fff;padding:11px 18px;font-size:11.52px}
.case-card button:hover{background:#9900ff}
.case-card .case-visual{width:63%;height:78%;right:-16%;bottom:-8%;opacity:.7;filter:drop-shadow(0 20px 30px rgba(80,0,152,.28))}
.case-card:nth-child(2) .case-visual{width:66%;right:-18%;opacity:.72}
.case-card:nth-child(3) .case-visual{width:66%;right:-14%;opacity:.74}
.slider-controls button{border-color:rgba(169,150,189,.35);background:transparent;color:inherit}
.slider-controls button:hover{background:#9900ff;color:#fff;border-color:#9900ff}
.process{background:#151020;color:#fff;padding-top:100px;padding-bottom:116px}
.process .heading-aside p{color:#beb4ca}
.steps{gap:20px}
.steps:before{display:none}
.step{border-top:1px solid rgba(232,213,255,.24);padding-top:22px}
.step-number{width:auto;height:auto;border:0;border-radius:0;background:none;box-shadow:none;color:#c185ff;font-size:25.92px;font-weight:600;display:block;line-height:1}
.step h3{margin-top:30px;font-size:19.2px;line-height:1.15;letter-spacing:-.4px}
.step p{margin-top:13px;font-size:13.44px;line-height:1.45;color:#aaa1b9}
.advantages{background:#f5f2f8;color:#1c1425;padding-top:105px;padding-bottom:115px}
.advantages .heading-aside p{color:#746d7b}
.advantage-grid{gap:15px}
.advantage-card{min-height:310px;padding:26px;border:1px solid #e4ddeb;border-radius:18px;background:#fff;color:#1b1422;box-shadow:none}
.advantage-card:after{width:190px;height:190px;right:-110px;bottom:-128px;border-color:rgba(153,0,255,.12);box-shadow:none}
.advantage-card:hover{box-shadow:0 20px 35px rgba(40,16,61,.1);border-color:#cca0f0}
.adv-icon{width:48px;height:48px;border-radius:11px;background:#f1e5ff;box-shadow:none;color:#9100e2}
.advantage-card h3{font-size:20.16px;line-height:1.16;letter-spacing:-.55px;margin-top:37px}
.advantage-card p{font-size:13.44px;line-height:1.43;color:#756d7c;margin-top:13px}
.reviews{background:#f5f2f8;color:#1c1425;padding-top:0;padding-bottom:115px}
.review-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;overflow:visible;padding:0}
.review-card{height:280px;border:1px solid #e4ddeb;border-radius:18px;background:#fff;padding:27px;box-shadow:none}
.review-card:hover{box-shadow:0 18px 36px rgba(39,17,60,.09)}
.review-card strong{font-size:14.4px;font-weight:700}
.review-card p{font-size:13.44px;line-height:1.43;color:#68616f;margin-top:18px}
.review-person b{font-size:11.52px}
.review-person small{font-size:10.56px;color:#8d8497}
.contact-banner{min-height:390px;background:radial-gradient(circle at 75% 45%,#53118f,transparent 42%),linear-gradient(110deg,#150a29,#230d42 62%,#4e1485);border-top:1px solid rgba(255,255,255,.12)}
.contact-inner{min-height:390px}
.contact-copy h2{font-size:clamp(40.32px,3.84vw,55.68px);line-height:1.04;letter-spacing:-2.7px}
.contact-copy p{font-size:14.4px;line-height:1.5;color:#d0c1e3}
.contact-kicker{color:#d7a9ff;letter-spacing:.07em}
.orb{opacity:.82;filter:drop-shadow(0 20px 35px rgba(72,0,138,.5))}
.contact-benefits span{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.08);backdrop-filter:blur(16px);color:#efe4ff}
.footer{background:#0b0814;color:#fff;padding:58px 0 48px;border-top:1px solid rgba(242,223,255,.1)}
.footer-logo img{width:164px}
.footer p,.footer a:not(.logo),.footer span,.footer small{color:#aaa1b8;font-size:11.52px;line-height:1.55}
.footer strong{font-size:11.52px;font-weight:700;color:#fff}
.footer a:hover{color:#fff}
.footer-social a{border-color:rgba(255,255,255,.16);background:#21152f;color:#fff!important}
.footer-social a:hover{background:#9900ff}
.dialog{border-radius:18px;border-color:#ddd3e8;box-shadow:0 35px 100px rgba(9,4,21,.4)}
.dialog h2{font-weight:700}
.dialog-close{border-radius:10px}
.dialog input,.dialog textarea{border-radius:10px}
@media(max-width:1100px){.nav{gap:28px}.nav-links{gap:22px}.logo img{width:154px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{height:330px}.case-card h3{font-size:21.12px}.case-card .case-visual{opacity:.56}.advantage-card h3{font-size:18.24px}.footer-grid{gap:26px}}
@media(max-width:760px){
  .container{width:min(calc(100% - 36px),var(--max))}
  .nav{height:74px;gap:16px}
  .logo img{width:142px;max-height:30px}
  .nav-links{background:#140d22;border:1px solid rgba(255,255,255,.13);box-shadow:0 24px 60px rgba(0,0,0,.35)}
  .nav-links a{color:#f4edfc}
  .menu-toggle{border-radius:10px;background:rgba(44,25,64,.7);border-color:rgba(225,193,255,.25)}
  .hero{height:1100px;min-height:1100px}
  .hero-content{height:700px;padding-top:75px}
  .hero h1{font-size:clamp(33.6px,8.64vw,48px);letter-spacing:-2.6px}
  .hero-copy p{font-size:13.44px;line-height:1.52}
  .button{min-height:47px;padding:0 18px;font-size:10.56px}
  .hero-stats{padding-top:20px}
  .hero-stats strong{font-size:23.04px}
  .hero-stats span{font-size:10px}
  .insight-layer{width:min(calc(100% - 36px),var(--max))}
  .trust{padding:27px 0 30px}
  .brand-list{gap:28px;overflow-x:auto;justify-content:flex-start;scrollbar-width:none}
  .section{padding:74px 0 82px}
  .section-heading{margin-bottom:27px}
  .section h2{font-size:clamp(32.64px,7.97vw,41.28px);letter-spacing:-1.9px}
  .heading-aside{width:auto;margin-top:18px;gap:15px}
  .heading-aside p{font-size:11.52px;max-width:72%}
  .service-grid{grid-template-columns:1fr;gap:10px}
  .service-card{height:248px;padding:20px;border-radius:15px}
  .service-card .card-icon{width:37px;height:37px;font-size:18.24px}
  .service-card h3{font-size:18.24px;margin-top:15px;max-width:72%}
  .service-card p{font-size:11.52px;max-width:72%;margin-top:8px}
  .service-card .service-meta{left:20px;bottom:50px}
  .service-card .service-meta b{font-size:11.52px}
  .service-card .service-meta small{font-size:10px}
  .service-card .card-arrow{left:auto;right:20px;bottom:20px}
  .case-track,.review-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;padding-bottom:7px}
  .case-card,.case-card.case-dark,.case-card.case-light{height:365px;min-width:85vw;scroll-snap-align:start;padding:22px}
  .case-card h3{font-size:21.12px;margin-top:52px}
  .case-card p{font-size:11.52px}
  .case-card .case-visual{width:66%;right:-16%;opacity:.55}
  .case-card button{left:22px;bottom:22px}
  .steps{grid-template-columns:1fr;gap:28px}
  .step{padding-top:17px}
  .step-number{font-size:22.08px}
  .step h3{font-size:18.24px;margin-top:17px}
  .step p{font-size:11.52px;margin-top:8px}
  .advantage-grid{grid-template-columns:1fr;gap:10px}
  .advantage-card{min-height:205px;padding:21px;border-radius:15px}
  .advantage-card h3{font-size:18.24px;margin-top:22px}
  .advantage-card p{font-size:11.52px;max-width:280px}
  .reviews{padding-top:0}
  .review-card{height:245px;min-width:85vw;padding:22px;scroll-snap-align:start}
  .review-card p{font-size:11.52px}
  .contact-banner,.contact-inner{min-height:390px}
  .contact-copy h2{font-size:35.52px;letter-spacing:-1.8px}
  .contact-copy p{font-size:12.48px}
  .orb{opacity:.35}
  .footer{padding:43px 0}
  .footer-logo img{width:145px}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 20px}
  .footer p,.footer a:not(.logo),.footer span,.footer small{font-size:10.56px}
}
@media(max-width:400px){.hero h1{font-size:32.64px;letter-spacing:-2.3px}.hero-content{height:740px}.hero{height:1140px;min-height:1140px}.service-card h3,.service-card p{max-width:82%}.contact-copy h2{font-size:31.68px}}
@media(prefers-reduced-motion:reduce){.hero-art-desktop,.hero-art-mobile{animation:none!important}}

/* Light orbital hero */
.hero{height:850px;min-height:850px;background:#faf8ff;color:#201329}
.hero:before{inset:0;background:linear-gradient(90deg,rgba(252,250,255,.98) 0%,rgba(252,250,255,.88) 25%,rgba(252,250,255,.25) 49%,transparent 74%);z-index:-1}
.hero:after{height:23%;background:linear-gradient(0deg,rgba(35,12,67,.75),transparent);z-index:-1}
.hero-grid{display:block;z-index:0;pointer-events:none;opacity:.58;mask-image:linear-gradient(180deg,#000 0%,#000 64%,transparent 90%);background:linear-gradient(rgba(174,105,221,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(174,105,221,.12) 1px,transparent 1px);background-size:96px 96px}
.hero-art-desktop{display:block;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;filter:none;animation:cosmos-in 1.4s both,cosmos-drift 24s ease-in-out 1.4s infinite}
.hero-art-mobile{display:none}
.nav{z-index:30}
.nav-links a{color:#2e203a}
.nav-links a:hover{color:#9300ef}
.lang{color:#39234a}
.hero-content{height:625px;align-items:center}
.hero-copy{max-width:580px;padding-bottom:28px;z-index:5}
.hero-kicker{color:#8028ba}
.hero-kicker-line{background:#9f28ee}
.hero h1{color:#1c1027;text-shadow:none;font-size:clamp(48px,4.22vw,65.28px);letter-spacing:-3.8px}
.hero h1 em{color:#9828e9}
.hero-copy p{color:#5e536a;max-width:500px}
.hero .button-outline{color:#281633;background:rgba(255,255,255,.77);border-color:rgba(100,53,139,.18);box-shadow:0 8px 22px rgba(89,40,122,.08)}
.hero .button-outline:hover{background:#fff;border-color:#ab67e4}
.hero-dashboard{position:absolute;top:171px;right:max(3.5vw,35px);width:640px;height:445px;display:grid;grid-template-columns:150px 1fr;z-index:2;overflow:hidden;border:1px solid rgba(209,162,236,.45);border-radius:31px;background:rgba(255,255,255,.82);box-shadow:0 35px 65px rgba(71,26,112,.18),0 4px 20px rgba(100,24,127,.07),inset 0 1px 0 #fff;backdrop-filter:blur(26px);transform:rotate(-4deg);transform-origin:center;animation:dashboard-in 1.1s .25s both}
@keyframes dashboard-in{from{opacity:0;transform:translate(35px,35px) rotate(-7deg)}to{opacity:1;transform:translate(0,0) rotate(-4deg)}}
.dashboard-sidebar{padding:24px 14px 20px;background:linear-gradient(180deg,rgba(255,255,255,.75),rgba(249,241,255,.72));border-right:1px solid rgba(156,97,191,.12)}
.dashboard-sidebar img{width:35px;height:35px;object-fit:contain;margin:0 0 32px 8px}
.db-nav{display:flex;align-items:center;gap:9px;white-space:nowrap;padding:11px 8px;border-radius:9px;color:#625469;font-size:10.56px;font-weight:600;margin-bottom:8px}
.db-nav span{width:17px;color:#6c557e;font-size:17.28px;line-height:1}
.db-nav.active{color:#8d20db;background:#f3e7fd}
.db-nav.active span{color:#8d20db}
.dashboard-main{padding:26px 27px 24px;min-width:0}
.db-topline{display:flex;justify-content:space-between;align-items:center;font-size:21.12px;font-weight:750;letter-spacing:-.8px;color:#1f1628}
.db-dots{font-size:15.36px;color:#b6a4c0;letter-spacing:2px}
.dashboard-query{display:block;margin-top:24px;padding:15px 15px 14px;border:1px solid #efdcf8;background:rgba(255,255,255,.72);border-radius:17px;box-shadow:0 12px 25px rgba(106,44,152,.06)}
.dashboard-query label{display:block;font-size:12.48px;font-weight:650;color:#776783;margin-bottom:12px}
.db-input-row{display:flex;align-items:center;gap:10px;border:1px solid #ead7f5;border-radius:13px;background:#fff;padding:5px 5px 5px 12px}
.db-input-row input{min-width:0;flex:1;width:100%;border:0;outline:0;background:none;color:#2b1937;font-size:11.52px}
.db-input-row input:focus-visible{outline:2px solid #a647ec;outline-offset:5px}
.db-input-row button{flex:none;width:32px;height:32px;border:0;border-radius:10px;background:#9900ff;color:#fff;font-size:18.24px;line-height:1;transition:transform .2s,background .2s}
.db-input-row button:hover{transform:translateX(2px);background:#b043ff}
.db-heading{display:flex;justify-content:space-between;align-items:center;margin:25px 0 11px;font-size:16.32px;font-weight:730;color:#25172f}
.db-heading span{font-size:10.56px;font-weight:650;color:#ad99b9}
.db-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.db-metrics>div{height:74px;display:flex;flex-direction:column;padding:9px 10px;border-radius:12px;border:1px solid #eee3f5;background:#fff;box-shadow:0 8px 18px rgba(88,45,126,.06)}
.db-metrics span{display:none}.db-metrics strong{color:#281632;font-size:19.2px;line-height:1.1}.db-metrics small{color:#97869e;font-size:9px;line-height:1.15;margin-top:6px}
.db-chart{height:92px;position:relative;margin-top:12px;padding:10px 13px;overflow:hidden;border:1px solid #eedcf7;border-radius:13px;background:linear-gradient(180deg,#fff,#fbf5ff)}
.db-chart-head{display:flex;justify-content:space-between;gap:10px;position:relative;z-index:1;color:#56415e;font-size:10px;font-weight:650;white-space:nowrap}
.db-chart-head span:first-child{overflow:hidden;text-overflow:ellipsis}.db-chart-head span:last-child{color:#9628e9}
.db-chart svg{position:absolute;left:0;right:0;bottom:0;width:100%;height:65px}
.insight-layer{position:absolute;inset:0;display:block;width:100%;height:100%;margin:0;padding:0;border:0;z-index:7;pointer-events:none}
.insight-layer .insight{position:absolute;display:block;width:auto;height:auto;min-width:0;padding:17px 19px;border:1px solid rgba(194,122,231,.3);border-radius:18px;background:rgba(255,255,255,.8);box-shadow:0 18px 37px rgba(72,16,110,.16),inset 0 1px 0 #fff;backdrop-filter:blur(18px);transform:none;animation:float 7s ease-in-out infinite}
.insight-layer .insight+.insight{padding-left:19px;border-left:1px solid rgba(194,122,231,.3)}
.insight-layer .insight strong{color:#25152e;font-size:12.48px;line-height:1.22}
.insight-layer .insight-main{top:112px;right:11%;width:222px;min-height:90px;transform:rotate(3deg);animation:hero-card-main 7s ease-in-out infinite}
.insight-layer .insight-main svg{right:8px;bottom:4px;width:80px;height:50px;opacity:.45}
.insight-layer .insight-growth{top:551px;right:35%;width:153px;min-height:87px;animation-delay:-2s}
.insight-layer .insight-growth small{color:#8c7799;font-size:10px}.insight-layer .insight-growth b{font-size:24px;color:#7c10c8}.insight-layer .insight-growth .bars{right:17px;bottom:18px;height:27px}
.insight-layer .insight-people{top:438px;right:2%;width:202px;min-height:116px;animation-delay:-4s}
.insight-layer .insight-people .avatar-row{margin-top:13px}
.insight-layer .avatar{width:29px;height:29px;border:2px solid #fff}.insight-layer .avatar.add{border:1px solid #d8bdec;color:#9c39db;background:#f9f1ff}
@keyframes hero-card-main{50%{transform:translateY(-10px) rotate(3deg)}}
.hero-stats{position:absolute;left:50%;bottom:25px;width:min(calc(100% - 80px),var(--max));display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:0;padding:18px 8px;border:1px solid rgba(255,255,255,.5);border-radius:18px;background:rgba(255,255,255,.78);box-shadow:0 18px 38px rgba(37,12,70,.15);backdrop-filter:blur(20px);transform:translateX(-50%);z-index:8}
.hero-stats div{padding:0 22px}.hero-stats div:first-child{padding-left:22px}.hero-stats div+div{border-left:1px solid rgba(140,86,174,.17)}
.hero-stats strong{color:#281436;font-size:23.04px;text-shadow:none}.hero-stats span{color:#766881;font-size:10.56px;text-shadow:none}
@media(max-width:1200px) and (min-width:901px){.hero-dashboard{right:1%;width:540px;height:420px;grid-template-columns:120px 1fr}.dashboard-main{padding:22px}.dashboard-sidebar{padding-left:8px;padding-right:8px}.db-nav{font-size:10px}.hero-copy{max-width:500px}.hero h1{font-size:49.92px}.hero-copy p{max-width:450px}.insight-layer .insight-main{right:7%}.insight-layer .insight-growth{right:32%}.insight-layer .insight-people{right:1%}}
@media(max-width:900px){.hero{height:1160px;min-height:1160px}.hero:before{background:linear-gradient(180deg,rgba(252,250,255,.98) 0%,rgba(252,250,255,.86) 26%,rgba(252,250,255,.13) 56%,transparent 84%)}.hero:after{height:25%}.hero-art-desktop{object-position:62% center}.hero-content{height:500px;align-items:flex-start;padding-top:55px}.hero-copy{max-width:590px;padding:0}.hero h1{font-size:clamp(41.28px,5.76vw,56.64px)}.hero-dashboard{top:560px;right:50%;width:min(640px,calc(100% - 70px));height:430px;transform:translateX(50%) rotate(-4deg);animation:none}.insight-layer .insight-main{top:520px;right:8%;width:200px}.insight-layer .insight-growth{top:885px;right:58%;width:145px}.insight-layer .insight-people{top:844px;right:3%;width:190px}.hero-stats{width:calc(100% - 48px);bottom:24px}}
@media(max-width:760px){.nav-links{background:#fff;border-color:#ead8f5;box-shadow:0 20px 40px rgba(78,31,105,.15)}.nav-links a{color:#2d1c3b}.menu-toggle{background:rgba(255,255,255,.76);border-color:#d8bce8}.menu-toggle span{background:#592078}.hero{height:1190px;min-height:1190px}.hero-art-desktop{display:block;object-position:60% center}.hero-art-mobile{display:none}.hero-content{height:505px;padding-top:48px}.hero h1{font-size:clamp(36.48px,8.16vw,48px);letter-spacing:-2.7px}.hero-copy p{font-size:13.44px;line-height:1.5;max-width:440px}.hero-dashboard{top:595px;width:calc(100% - 40px);height:374px;grid-template-columns:90px 1fr;border-radius:22px}.dashboard-sidebar{padding:16px 5px}.dashboard-sidebar img{width:25px;height:25px;margin:0 0 25px 6px}.db-nav{font-size:0;justify-content:center;padding:8px 2px}.db-nav span{font-size:19.2px}.dashboard-main{padding:17px 14px}.db-topline{font-size:15.36px}.dashboard-query{margin-top:18px;padding:10px}.dashboard-query label{font-size:10.56px;margin-bottom:8px}.db-input-row input{font-size:10px}.db-input-row button{width:26px;height:26px;font-size:14.4px}.db-heading{font-size:12.48px;margin:18px 0 8px}.db-metrics{gap:4px}.db-metrics>div{height:65px;padding:7px 5px}.db-metrics strong{font-size:15.36px}.db-metrics small{font-size:7px}.db-chart{height:75px;margin-top:8px}.db-chart-head{font-size:8px}.insight-layer .insight-main{top:560px;right:2%;width:162px;min-height:70px;padding:11px 12px}.insight-layer .insight-main strong{font-size:10px}.insight-layer .insight-main svg{width:60px;height:36px}.insight-layer .insight-growth{top:885px;right:auto;left:2%;width:122px;min-height:70px;padding:11px 12px}.insight-layer .insight-growth b{font-size:18.24px}.insight-layer .insight-growth .bars{right:9px;bottom:13px;height:23px}.insight-layer .insight-people{top:891px;right:2%;width:145px;min-height:90px;padding:10px 12px}.insight-layer .insight-people strong{font-size:10px}.insight-layer .insight-people .avatar-row{margin-top:7px}.insight-layer .avatar{width:22px;height:22px}.hero-stats{bottom:23px;width:calc(100% - 36px);grid-template-columns:repeat(2,1fr);gap:15px 0;padding:15px 4px}.hero-stats div{padding:0 12px}.hero-stats div:first-child{padding-left:12px}.hero-stats div:nth-child(3){border-left:0}.hero-stats strong{font-size:19.2px}.hero-stats span{font-size:9px}}
@media(max-width:440px){.hero{height:1230px;min-height:1230px}.hero-content{height:550px}.hero h1{font-size:clamp(32.64px,8.16vw,37.44px);letter-spacing:-2.1px}.hero-copy p{max-width:350px}.hero-dashboard{top:615px}.insight-layer .insight-main{top:582px}.insight-layer .insight-growth{top:910px}.insight-layer .insight-people{top:912px}.hero-stats{bottom:19px}.hero-art-desktop{object-position:65% center}}
.hero-stats.reveal,.hero-stats.reveal.visible{transform:translateX(-50%)}
.insight-layer .insight-people .avatar-row{display:flex}

/* Soft white veil over the premium violet landscape */
.hero:before{background:linear-gradient(90deg,rgba(255,255,255,.99) 0%,rgba(255,255,255,.93) 22%,rgba(255,255,255,.68) 38%,rgba(255,255,255,.22) 60%,rgba(255,255,255,.02) 82%),linear-gradient(180deg,rgba(255,255,255,.3) 0%,transparent 38%)}
@media(max-width:900px){.hero:before{background:linear-gradient(180deg,rgba(255,255,255,.99) 0%,rgba(255,255,255,.95) 23%,rgba(255,255,255,.56) 42%,rgba(255,255,255,.08) 64%,transparent 82%)}}

/* The landscape fades into white; figures sit on separate glass tiles. */
.hero:after{height:37%;background:linear-gradient(0deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.72) 24%,rgba(255,255,255,.21) 62%,transparent 100%)}
.hero-stats{gap:12px;padding:0;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none}
.hero-stats div,.hero-stats div:first-child{position:relative;justify-content:center;min-height:88px;padding:18px 22px;border:1px solid rgba(255,255,255,.64);border-radius:17px;background:linear-gradient(135deg,rgba(255,255,255,.61),rgba(215,170,248,.17));box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 12px 28px rgba(80,34,122,.11);backdrop-filter:blur(22px) saturate(145%);-webkit-backdrop-filter:blur(22px) saturate(145%)}
.hero-stats div+div{border-left:1px solid rgba(255,255,255,.64)}
.hero-stats strong{color:#281436}.hero-stats span{color:#665472}
@media(max-width:760px){.hero:after{height:32%}.hero-stats{gap:9px;padding:0}.hero-stats div,.hero-stats div:first-child{min-height:73px;padding:12px 14px;border-radius:14px}.hero-stats div:nth-child(3){border-left:1px solid rgba(255,255,255,.64)}}

/* GraphikLCG is self-hosted for consistent Cyrillic and Latin typography. */
@font-face{font-family:GraphikLCG;src:url('assets/fonts/GraphikLCG-Light.woff2') format('woff2');font-style:normal;font-weight:300;font-display:swap}
@font-face{font-family:GraphikLCG;src:url('assets/fonts/GraphikLCG-Regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:GraphikLCG;src:url('assets/fonts/GraphikLCG-Medium.woff2') format('woff2');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:GraphikLCG;src:url('assets/fonts/GraphikLCG-Semibold.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:GraphikLCG;src:url('assets/fonts/GraphikLCG-Bold.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:GraphikLCG;src:url('assets/fonts/GraphikLCG-Black.woff2') format('woff2');font-style:normal;font-weight:800;font-display:swap}
body,button,input,textarea,select{font-family:GraphikLCG,Arial,sans-serif}
body{letter-spacing:0}

/* Glass illustrations for all eight research services. */
.service-card .service-graphic{display:block;width:62%;height:auto;aspect-ratio:1;right:4px;bottom:9px;opacity:.96;filter:drop-shadow(0 15px 17px rgba(91,31,175,.2));transform:rotate(-5deg);transition:transform .4s ease,filter .4s ease}
.service-card:hover .service-graphic{transform:rotate(0) translateY(-7px) scale(1.04);filter:drop-shadow(0 18px 22px rgba(91,31,175,.3))}
@media(max-width:760px){.service-card{height:290px}.service-card .service-graphic{width:min(42%,174px);height:auto;aspect-ratio:1;right:10px;bottom:9px}.service-card .card-arrow{left:20px;right:auto;bottom:16px}}

/* Accessible language menu, shared by both static locales. */
.language-switcher{position:relative;z-index:40;color:#39234a;font-size:12.48px;font-weight:700}
.language-switcher summary{display:flex;align-items:center;gap:6px;list-style:none;cursor:pointer;padding:10px 8px;border-radius:9px;user-select:none}
.language-switcher summary::-webkit-details-marker{display:none}
.language-switcher summary:hover,.language-switcher[open] summary{background:rgba(153,0,255,.08)}
.language-switcher summary .language-code{font-size:12.48px}
.language-switcher[open] summary .language-chevron{transform:rotate(180deg)}
.language-switcher summary:focus-visible,.language-menu a:focus-visible{outline:2px solid #9900ff;outline-offset:3px}
.language-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:144px;padding:6px;border:1px solid rgba(174,108,223,.28);border-radius:12px;background:rgba(255,255,255,.95);box-shadow:0 16px 36px rgba(62,22,92,.18);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.language-menu a{display:block;padding:10px 12px;border-radius:8px;white-space:nowrap;color:#2d173b;font-size:12.48px}
.language-menu a:hover,.language-menu a[aria-current="page"]{color:#8500d9;background:#f3e8ff}
@media(max-width:760px){.language-switcher{font-size:11.52px}.language-menu{right:-8px}}

/* Give GraphikLCG more air while keeping headings on the true SemiBold face. */
:is(.hero h1,.section h2,.service-card h3,.case-card h3,.step h3,.advantage-card h3,.contact-copy h2,.dialog h2){font-weight:600}
.hero h1{letter-spacing:-.04em}
@media(min-width:761px){.hero-phrase{white-space:nowrap}}
.section h2,.contact-copy h2,.dialog h2{letter-spacing:-.035em}
.service-card h3,.case-card h3,.step h3,.advantage-card h3{letter-spacing:-.01em}
.db-topline,.db-heading{font-weight:600;letter-spacing:-.01em}
.button{letter-spacing:0}
.nav-links a{white-space:nowrap}

/* Header polish and desktop quick navigation. */
.hero-top-veil{position:absolute;inset:0 0 auto;height:190px;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.7) 35%,rgba(255,255,255,.2) 76%,transparent 100%)}
.nav-links a,.floating-nav-links a{font-weight:400}
.language-switcher{font-weight:600}
.language-switcher summary{min-height:42px;gap:8px;padding:0 12px;border:1px solid rgba(148,103,183,.23);border-radius:12px;background:rgba(255,255,255,.55);box-shadow:0 3px 16px rgba(67,23,103,.05);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:background .22s,border-color .22s,box-shadow .22s,transform .22s}
.language-switcher summary:hover,.language-switcher[open] summary{background:rgba(255,255,255,.91);border-color:rgba(153,0,255,.4);box-shadow:0 7px 20px rgba(100,25,173,.13);transform:translateY(-1px)}
.language-icon{width:17px;height:17px;flex:none;color:#8226cb}
.language-chevron{width:13px;height:13px;flex:none;transition:transform .22s}
.button-primary{transition:background .25s ease,box-shadow .25s ease,transform .25s ease,border-color .25s ease;background:#9200ee}
.button-primary:hover{background:#6b22d7;box-shadow:0 16px 34px rgba(105,24,205,.37),0 0 0 4px rgba(153,0,255,.12);transform:translateY(-4px) scale(1.025)}
.button-primary:active{background:#571ab4;box-shadow:0 5px 15px rgba(105,24,205,.25);transform:translateY(0) scale(.98)}
.button-primary span{display:inline-block;transition:transform .25s ease}
.button-primary:hover span{transform:translate(3px,-3px)}
.button-primary:focus-visible{outline:3px solid #d8acff;outline-offset:3px}
.floating-nav{position:fixed;z-index:200;left:50%;bottom:22px;width:max-content;max-width:calc(100% - 32px);min-height:60px;display:flex;align-items:center;gap:30px;padding:7px 12px 7px 24px;border:1px solid transparent;border-radius:999px;background:linear-gradient(145deg,rgba(23,19,37,.96) 0%,rgba(29,22,47,.95) 54%,rgba(36,24,63,.96) 100%);box-shadow:0 18px 42px rgba(19,11,32,.32),0 2px 8px rgba(31,18,48,.2),inset 0 -8px 17px rgba(86,47,125,.08);backdrop-filter:blur(30px) saturate(115%);-webkit-backdrop-filter:blur(30px) saturate(115%);opacity:0;visibility:hidden;pointer-events:none;transform-origin:center bottom;transform:translate(-50%,calc(100% + 42px)) scale(.82);transition:opacity .3s ease,transform .38s cubic-bezier(.2,.8,.2,1),visibility .3s}
.floating-nav.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0) scale(.82)}
.floating-nav.on-dark{box-shadow:0 18px 42px rgba(4,3,15,.4),0 2px 8px rgba(20,10,34,.25),inset 0 -8px 17px rgba(86,47,125,.08)}
.floating-nav:before,.floating-nav:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none}
.floating-nav:before{inset:1px;background:linear-gradient(175deg,rgba(116,69,159,.045),transparent 36%,rgba(99,51,147,.035) 82%,rgba(123,75,169,.05));box-shadow:none}
.floating-nav:after{background:radial-gradient(210px 95px at var(--glass-x,50%) var(--glass-y,0%),rgba(137,80,190,.1),rgba(105,54,159,.045) 45%,transparent 79%);opacity:.35;transition:opacity .2s ease}
.floating-nav:hover:after{opacity:.65}
.floating-nav>*{position:relative;z-index:1}
.floating-logo{display:flex;align-items:center;flex:none;line-height:0}
.floating-logo img{display:block;width:120px;max-height:28px;height:auto;object-fit:contain;object-position:left center;filter:brightness(0) invert(1)}
.floating-nav-links{display:flex;align-items:center;justify-content:center;gap:14px;margin-inline:21px;flex:none}
.floating-nav-links a{color:#f7efff;white-space:nowrap;font-size:12px;transition:color .2s,transform .2s}
.floating-nav-links a:hover{color:#d9a1ff;transform:translateY(-2px)}
.floating-nav-actions{display:flex;align-items:center;gap:10px;flex:none}
.floating-nav .language-switcher{color:#f7efff}
.floating-nav .language-switcher summary{min-height:40px;padding:0 9px;gap:6px;background:rgba(115,50,171,.24);border-color:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.floating-nav .language-switcher summary:hover,.floating-nav .language-switcher[open] summary{background:rgba(140,65,200,.36);border-color:transparent}
.floating-nav .language-icon{color:#d9a6ff}
.floating-nav .language-menu{top:auto;bottom:calc(100% + 10px)}
.floating-nav .floating-cta{min-height:44px;padding:0 20px;border-radius:999px;font-size:11px;color:#5d1a8f;background:#fff;box-shadow:0 7px 20px rgba(28,7,53,.13)}
.floating-nav .floating-cta:hover{color:#6416a7;background:#f1ddff;box-shadow:0 10px 26px rgba(115,38,191,.3)}
.floating-nav .floating-cta:active{color:#49116f;background:#e7caff}
@media(max-width:1100px){.floating-nav{gap:20px;padding-left:23px;padding-right:10px}.floating-logo img{width:110px}.floating-nav-links{gap:12px;margin-inline:12px}.floating-nav-links a{font-size:11px}.floating-nav .floating-cta{padding:0 15px;font-size:10.5px}}
@media(max-width:900px){.floating-nav{display:none}.hero-top-veil{height:145px;background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.32) 70%,transparent)}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.floating-nav{background:linear-gradient(145deg,#171325,#1d162f 54%,#24183f)}}
@media(prefers-reduced-transparency:reduce){.floating-nav{background:linear-gradient(145deg,#171325,#1d162f 54%,#24183f);backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(prefers-reduced-motion:reduce){.floating-nav,.floating-nav:after,.button-primary,.button-primary span,.language-switcher summary{transition:none!important}}

/* Client marks use the supplied transparent artwork as an SVG viewport. */
.brand-list.client-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;justify-items:center;gap:18px 24px;margin-top:26px;overflow:visible;color:inherit}
.client-mark{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;height:82px;--hover-filter:none}
.client-mark svg,.client-mark img{display:block;width:min(100%,200px);height:68px;max-width:100%;object-fit:contain;overflow:hidden;filter:grayscale(1) brightness(1.1);opacity:.76;transition:filter .28s ease,opacity .28s ease,transform .28s ease}
.client-mark svg{clip-path:inset(0)}
.client-mark:hover svg,.client-mark:hover img{filter:var(--hover-filter);opacity:1;transform:translateY(-3px) scale(1.04)}
.client-mark.tone-green{--hover-filter:brightness(0) saturate(100%) invert(58%) sepia(64%) saturate(619%) hue-rotate(71deg) brightness(96%) contrast(90%)}
.client-mark.tone-blue{--hover-filter:brightness(0) saturate(100%) invert(40%) sepia(87%) saturate(1429%) hue-rotate(177deg) brightness(90%) contrast(94%)}
.client-mark.tone-magenta{--hover-filter:brightness(0) saturate(100%) invert(33%) sepia(70%) saturate(2050%) hue-rotate(276deg) brightness(100%) contrast(94%)}
@media(max-width:1020px){.brand-list.client-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 18px}}
@media(max-width:640px){.brand-list.client-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px 12px}.client-mark{height:68px}.client-mark svg,.client-mark img{height:56px}}
@media(max-width:420px){.brand-list.client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.client-mark svg,.client-mark img{transition:none}}

/* Partner carousel: equal monochrome lockups reveal their brand colour on hover. */
.trust{padding:38px 0 44px;overflow:hidden;background:radial-gradient(90% 160% at 50% -65%,#342150 0%,#151020 62%,#100c1b 100%)}
.trust-head{display:flex;align-items:center;justify-content:space-between;gap:24px}
.trust-head>div:first-child{display:flex;align-items:baseline;gap:13px}
.trust-head strong{font-size:15px;font-weight:600;letter-spacing:-.02em}
.partner-count{font-size:11px;color:#9e92ae}
.partner-controls{display:flex;align-items:center;gap:8px}
.partner-position{min-width:55px;margin-right:12px;text-align:right;font-size:11px;color:#a99cb8;font-variant-numeric:tabular-nums}
.partner-arrow{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(220,199,244,.23);border-radius:50%;background:rgba(255,255,255,.055);color:#f8f3ff;font-size:17px;cursor:pointer;transition:background .22s,border-color .22s,transform .22s,opacity .22s}
.partner-arrow:hover:not(:disabled){background:#8c31ce;border-color:#b66ae6;transform:translateY(-2px)}
.partner-arrow:disabled{opacity:.35;cursor:default}
.partner-arrow:focus-visible,.partner-slider:focus-visible{outline:2px solid #c78aff;outline-offset:3px}
.partner-slider{margin-top:24px;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain}
.partner-slider::-webkit-scrollbar{display:none}
.partner-track{display:flex;gap:12px;width:max-content;padding:2px 2px 10px}
.partner-card{display:flex;align-items:center;justify-content:center;flex:none;width:214px;height:104px;padding:14px 17px;border:1px solid rgba(233,218,250,.12);border-radius:18px;background:linear-gradient(145deg,rgba(255,255,255,.085),rgba(255,255,255,.025));box-shadow:inset 0 1px 0 rgba(255,255,255,.08);scroll-snap-align:start;transition:transform .28s,border-color .28s,background .28s,box-shadow .28s}
.partner-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--partner-color),transparent 52%);background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.04));box-shadow:0 14px 25px rgba(0,0,0,.16)}
.partner-lockup{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;color:#eeeaf2;font-weight:600;font-size:16px;line-height:1.12;letter-spacing:-.025em;text-align:left;transition:color .28s}
.partner-lockup img{display:block;width:43px;height:43px;flex:none;object-fit:contain;border-radius:8px;filter:grayscale(1) brightness(1.5);opacity:.8;transition:filter .28s,opacity .28s,transform .28s}
.partner-card:hover .partner-lockup{color:var(--partner-color)}
.partner-card:hover .partner-lockup img{filter:none;opacity:1;transform:scale(1.08)}
.partner-type-mark{max-width:100%;font-weight:700;font-size:23px;line-height:1;letter-spacing:-.055em;white-space:nowrap;color:#eeeaf2;transition:color .28s}
.partner-card:hover .partner-type-mark{color:var(--partner-color)}
.partner-card .client-mark{height:auto;max-height:66px}
.partner-card .client-mark svg,.partner-card .client-mark img{height:58px;max-width:178px;filter:grayscale(1) brightness(0) invert(1);opacity:.82}
.partner-card:hover .client-mark svg,.partner-card:hover .client-mark img{filter:none;opacity:1;transform:none}
.partner-card:hover .client-mark.tone-green svg{filter:brightness(0) saturate(100%) invert(58%) sepia(64%) saturate(619%) hue-rotate(71deg) brightness(96%) contrast(90%)}
.partner-card:hover .client-mark.tone-blue svg,.partner-card:hover .client-mark.tone-blue img{filter:brightness(0) saturate(100%) invert(40%) sepia(87%) saturate(1429%) hue-rotate(177deg) brightness(90%) contrast(94%)}
.partner-card:hover .client-mark.tone-magenta svg{filter:brightness(0) saturate(100%) invert(33%) sepia(70%) saturate(2050%) hue-rotate(276deg) brightness(100%) contrast(94%)}
.partner-card .client-mark.preserve-tones svg{filter:grayscale(1) brightness(1.18) contrast(1.1)}
.partner-card:hover .client-mark.preserve-tones svg{filter:none}
@media(max-width:640px){.trust{padding:30px 0 34px}.trust-head strong{font-size:13px}.partner-count{display:none}.partner-position{margin-right:4px}.partner-card{width:174px;height:88px;padding:11px}.partner-lockup{font-size:13px;gap:7px}.partner-lockup img{width:35px;height:35px}.partner-type-mark{font-size:19px}.partner-card .client-mark svg,.partner-card .client-mark img{height:48px}}
@media(prefers-reduced-motion:reduce){.partner-card,.partner-arrow,.partner-lockup,.partner-lockup img,.partner-type-mark{transition:none}}

/* High-resolution partner wordmarks */
.partner-card[data-logo-hq]:hover{background:linear-gradient(145deg,#fff,#f0edf6);border-color:rgba(202,185,220,.6)}
.partner-card[data-logo-light]:hover{background:linear-gradient(145deg,#383145,#241c31);border-color:rgba(232,215,255,.32)}
.partner-logo{display:block;width:100%;max-width:178px;height:64px;object-fit:contain;filter:brightness(0) invert(1);opacity:.82;transition:filter .25s,opacity .25s,transform .25s}
.partner-card:hover .partner-logo{filter:none;opacity:1;transform:none}
.partner-hq-lockup{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-width:0;font-size:14px;font-weight:600;line-height:1.1;color:#f5f1fb;text-align:left}
.partner-hq-lockup .partner-logo{width:50px;height:50px;flex:none}
.partner-card[data-logo-hq]:hover .partner-hq-lockup{color:var(--partner-color)}
.partner-hq-combo{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;color:#f5f1fb;font-size:13px;font-weight:600}
.partner-hq-combo .partner-logo{width:auto;max-width:115px;height:54px}
.partner-card[data-logo-hq]:hover .partner-hq-combo{color:var(--partner-color)}
.partner-vector-wordmark{font-size:25px;font-weight:700;letter-spacing:-.05em;color:#f5f1fb;white-space:nowrap;transition:color .25s}
.partner-card[data-logo-hq]:hover .partner-vector-wordmark{color:var(--partner-color)}
@media(max-width:640px){.partner-logo{max-width:148px;height:54px}.partner-hq-lockup{font-size:12px;gap:7px}.partner-hq-lockup .partner-logo{width:39px;height:39px}.partner-hq-combo{font-size:11px}.partner-hq-combo .partner-logo{max-width:91px;height:45px}.partner-vector-wordmark{font-size:21px}}
@media(prefers-reduced-motion:reduce){.partner-logo,.partner-vector-wordmark{transition:none}}

/* One consistent logo viewport in every partner card. The mark keeps its own proportions. */
.partner-logo-frame{display:flex;align-items:center;justify-content:center;flex:none;width:120px;height:44px;min-width:0;min-height:0;overflow:visible}
.partner-logo-frame>.partner-logo{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}
.partner-logo-frame>.partner-hq-lockup,.partner-logo-frame>.partner-hq-combo{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-width:0;margin:0}
.partner-logo-frame .partner-hq-lockup .partner-logo{width:31px;height:31px;max-width:31px;max-height:31px;flex:none;object-fit:contain}
.partner-logo-frame .partner-hq-combo .partner-logo{width:74px;height:38px;max-width:74px;max-height:38px;object-fit:contain}
.partner-logo-frame .partner-hq-lockup>span,.partner-logo-frame .partner-hq-combo>span{min-width:0;max-width:100%;font-size:10.5px;line-height:1.12}
.partner-logo-frame>.client-mark{width:100%;height:100%;max-height:none}
.partner-logo-frame .client-mark svg,.partner-logo-frame .client-mark img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}
.partner-logo-frame>.partner-vector-wordmark{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:17px}
@media(max-width:640px){.partner-logo-frame{width:100px;height:36px}.partner-logo-frame .partner-hq-lockup .partner-logo{width:26px;height:26px;max-width:26px;max-height:26px}.partner-logo-frame .partner-hq-combo .partner-logo{width:61px;height:31px;max-width:61px;max-height:31px}.partner-logo-frame .partner-hq-lockup>span,.partner-logo-frame .partner-hq-combo>span{font-size:9px}.partner-logo-frame>.partner-vector-wordmark{font-size:15px}}

/* Keep light lettering inside coloured marks visible in monochrome. */
.partner-logo-pair{position:relative;display:block;flex:none;width:100%;height:100%}
.partner-logo-frame .partner-hq-lockup .partner-logo-pair{width:31px;height:31px}
.partner-logo-frame .partner-hq-combo .partner-logo-pair{width:74px;height:38px}
.partner-logo-pair>.partner-logo{position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;filter:none}
.partner-logo-pair>.partner-logo-mono{opacity:.82}
.partner-logo-pair>.partner-logo-color{opacity:0}
.partner-card:hover .partner-logo-pair>.partner-logo-mono{opacity:0}
.partner-card:hover .partner-logo-pair>.partner-logo-color{opacity:1}
.partner-card:not(:hover) .partner-logo[src$="gazprombank.svg"]{filter:grayscale(1) brightness(1.5)}
.partner-card:not(:hover) .partner-logo[src$="iceberry.svg"]{filter:grayscale(1) brightness(1.18) contrast(1.15)}
@media(max-width:640px){.partner-logo-frame .partner-hq-lockup .partner-logo-pair{width:26px;height:26px}.partner-logo-frame .partner-hq-combo .partner-logo-pair{width:61px;height:31px}}

/* New partner marks: Grand Candy keeps its white artwork on brand blue. */
.partner-card[data-logo-grand]:hover{background:#0c2cff;border-color:#5873ff}
.partner-card[data-logo-grand] .partner-logo{filter:none}
.partner-card:not(:hover) .partner-logo[src$="hsbc.png"]{filter:grayscale(1) invert(1);opacity:.9}
.partner-card:not(:hover) .partner-logo[src$="flyone-armenia.png"]{filter:grayscale(1) brightness(1.9) contrast(1.08);opacity:.9}

.services-rate-note{margin:18px 0 0;color:#898394;font-size:12px;line-height:1.5;letter-spacing:.01em}
.services-rate-note a{color:#7b39c8;text-decoration:underline;text-underline-offset:2px}
.services-rate-note a:hover{color:#5e19aa}

/* Featured recruitment service beneath the research grid. */
.recruitment-feature{position:relative;isolation:isolate;display:flex;align-items:center;min-height:326px;margin-top:16px;padding:42px 48px;overflow:hidden;border-radius:27px;color:#fff;background:radial-gradient(circle at 78% 22%,rgba(172,83,255,.51),transparent 36%),radial-gradient(circle at 95% 108%,rgba(88,33,188,.85),transparent 43%),linear-gradient(115deg,#21103b 0%,#351565 52%,#210b43 100%);box-shadow:0 23px 52px rgba(81,32,143,.17)}
.recruitment-feature:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(115deg,transparent 43%,rgba(255,255,255,.075) 50%,transparent 57%),repeating-linear-gradient(90deg,rgba(235,207,255,.055) 0 1px,transparent 1px 105px);mask-image:linear-gradient(90deg,transparent 40%,#000 100%)}
.recruitment-feature:after{content:"";position:absolute;width:520px;height:520px;right:1%;top:-80%;border:1px solid rgba(224,175,255,.15);border-radius:50%;box-shadow:0 0 0 75px rgba(221,173,255,.025),0 0 0 150px rgba(221,173,255,.02);pointer-events:none}
.recruitment-copy{position:relative;z-index:2;max-width:680px}
.recruitment-kicker{display:block;margin-bottom:17px;color:#dcb9ff;font-size:10px;font-weight:600;letter-spacing:.17em}
.recruitment-feature h3{font-size:clamp(26px,2.65vw,39px);font-weight:600;line-height:1.08;letter-spacing:-.035em}
.recruitment-feature p{max-width:560px;margin-top:15px;color:#e4d5f6;font-size:13px;line-height:1.55}
.recruitment-meta{display:flex;align-items:baseline;gap:18px;margin-top:22px}
.recruitment-meta span{color:#bc9ed4;font-size:14px}
.recruitment-meta strong{color:#fff;font-size:19px;font-weight:600}
.recruitment-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.recruitment-actions .button{min-height:45px;border-radius:13px;font-size:12px;font-weight:600;transition:transform .25s,background .25s,box-shadow .25s,border-color .25s}
.recruitment-primary{background:#fff;color:#5c159d;box-shadow:0 10px 24px rgba(21,4,54,.19)}
.recruitment-primary:hover{background:#ebd5ff;color:#4c0c8d;transform:translateY(-3px);box-shadow:0 15px 28px rgba(12,1,38,.3)}
.recruitment-secondary{border-color:rgba(245,221,255,.34);background:rgba(229,190,255,.1);color:#fff;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.recruitment-secondary:hover{background:rgba(232,195,255,.22);border-color:rgba(255,255,255,.57);transform:translateY(-3px)}
.recruitment-actions .button:focus-visible{outline:3px solid #e9cbff;outline-offset:3px}
.recruitment-visual{position:absolute;z-index:1;right:27px;top:50%;width:min(42%,480px);height:auto;transform:translateY(-50%);filter:drop-shadow(0 19px 23px rgba(8,2,26,.34));transition:transform .5s ease}
.recruitment-feature:hover .recruitment-visual{transform:translateY(calc(-50% - 8px)) rotate(-2deg)}
@media(max-width:1100px){.recruitment-copy{max-width:60%}.recruitment-visual{right:-30px;width:50%}}
@media(max-width:760px){.recruitment-feature{min-height:0;display:block;margin-top:12px;padding:29px 23px 0;border-radius:21px}.recruitment-copy{max-width:none}.recruitment-feature h3{font-size:26px}.recruitment-feature h3 br{display:none}.recruitment-feature p{font-size:12px}.recruitment-meta{margin-top:20px;gap:12px}.recruitment-meta span{font-size:12px}.recruitment-meta strong{font-size:17px}.recruitment-actions{margin-top:20px}.recruitment-actions .button{min-height:43px;padding:0 15px}.recruitment-visual{position:relative;display:block;right:auto;top:auto;width:min(92%,390px);margin:0 auto -28px;transform:none}.recruitment-feature:hover .recruitment-visual{transform:translateY(-6px) rotate(-2deg)}}
@media(max-width:400px){.recruitment-actions{gap:8px}.recruitment-actions .button{font-size:11px;padding:0 12px}}
@media(prefers-reduced-motion:reduce){.recruitment-visual,.recruitment-actions .button{transition:none}}

/* Full-screen project inquiry */
body.contact-open{overflow:hidden}
.contact-dialog,.contact-dialog[open]{box-sizing:border-box;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;border-radius:0;overflow-x:hidden;overflow-y:auto;color:#21162c;background:radial-gradient(ellipse 48% 34% at 94% 4%,rgba(207,180,255,.34),transparent 74%),radial-gradient(ellipse 50% 40% at 4% 97%,rgba(225,208,255,.29),transparent 76%),linear-gradient(135deg,#fff 0%,#faf8ff 51%,#f7f3ff 100%);box-shadow:none;overscroll-behavior:contain;animation:contact-enter .38s ease both}
.contact-dialog::backdrop{background:rgba(20,9,36,.48);backdrop-filter:blur(12px)}
.contact-dialog::before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(133,78,204,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(133,78,204,.045) 1px,transparent 1px);background-size:112px 112px;mask-image:linear-gradient(180deg,#000,transparent 84%)}
@keyframes contact-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.contact-dialog .contact-close{position:fixed;top:24px;right:30px;z-index:3;display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(109,62,169,.14);border-radius:50%;background:rgba(255,255,255,.72);backdrop-filter:blur(18px);color:#3a2551;font-size:34px;font-weight:300;line-height:1;transition:background .2s,transform .2s,color .2s}
.contact-dialog .contact-close:hover{background:#7f26df;color:#fff;transform:rotate(90deg)}
.contact-shell{position:relative;width:min(calc(100% - 80px),1080px);margin:0 auto;padding:56px 0 38px}
.contact-head{text-align:center;margin:0 auto 28px;max-width:760px}
.contact-head .contact-eyebrow{display:block;margin-bottom:10px;color:#8e39df;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.contact-dialog .contact-head h2{margin:0 0 12px;color:#21152d;font-size:clamp(34px,3.8vw,52px);font-weight:600;line-height:1.07;letter-spacing:-.045em}
.contact-dialog .contact-head p{margin:0;color:#6e6678;font-size:15px;line-height:1.55}
.contact-dialog #contact-form{display:grid;gap:21px}
.contact-fields{display:grid;grid-template-columns:1fr;gap:20px}
.contact-dialog .contact-field{display:grid;gap:7px;min-width:0;font-size:14px;font-weight:400}
.contact-dialog .contact-field strong,.contact-dialog .contact-service-group legend,.contact-dialog .contact-budget-top>label{font-size:14px;font-weight:600;line-height:1.3;color:#291d34}
.contact-dialog .contact-field input:not([type=checkbox]),.contact-dialog .contact-field textarea{display:block;width:100%;min-width:0;border:0;border-bottom:1px solid #cfc6d9;border-radius:0;padding:10px 1px 12px;background:transparent;box-shadow:none;color:#271a35;font-size:15px;font-weight:400;line-height:1.4;outline:none;transition:border-color .2s,box-shadow .2s}
.contact-dialog .contact-field input::placeholder,.contact-dialog .contact-field textarea::placeholder{color:#a29aaa}
.contact-dialog .contact-field input:focus,.contact-dialog .contact-field textarea:focus{border-color:#8d31d9;box-shadow:0 1px 0 #8d31d9}
.contact-phone-row{display:flex;align-items:center;gap:14px;border-bottom:1px solid #cfc6d9;transition:border-color .2s}
.contact-phone-row:focus-within{border-color:#8d31d9}
.contact-dialog .contact-phone-row select{flex:none;max-width:126px;border:0;background:transparent;color:#392c47;font-size:15px;cursor:pointer;outline:none}
.contact-dialog .contact-phone-row input:not([type=checkbox]){flex:1;border:0;box-shadow:none;padding-left:0}
.contact-dialog .contact-service-group{min-width:0;margin:0;padding:0;border:0}
.contact-dialog .contact-service-group legend{margin-bottom:13px;padding:0}
.contact-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px 23px}
.contact-dialog .contact-service{display:flex;align-items:flex-start;gap:10px;min-width:0;color:#6e6577;font-size:13px;font-weight:400;line-height:1.35;cursor:pointer;transition:color .2s}
.contact-dialog .contact-service:hover{color:#7c2aca}
.contact-dialog .contact-service input[type=checkbox]{appearance:none;display:grid;place-items:center;flex:none;width:18px;height:18px;margin:0;border:1.5px solid #b8a9c9;border-radius:4px;padding:0;background:rgba(255,255,255,.78);cursor:pointer;transition:background .2s,border-color .2s,box-shadow .2s}
.contact-dialog .contact-service input[type=checkbox]::after{content:"";width:8px;height:5px;border:solid #fff;border-width:0 0 2px 2px;transform:translateY(-1px) rotate(-45deg) scale(0);transition:transform .18s}
.contact-dialog .contact-service input[type=checkbox]:checked{background:#8b25df;border-color:#8b25df}
.contact-dialog .contact-service input[type=checkbox]:checked::after{transform:translateY(-1px) rotate(-45deg) scale(1)}
.contact-dialog .contact-service input[type=checkbox]:focus-visible{outline:3px solid rgba(139,37,223,.25);outline-offset:2px}
.contact-dialog .contact-description textarea{min-height:78px;resize:vertical}
.contact-budget{display:grid;gap:11px}
.contact-budget-top{display:flex;align-items:center;justify-content:space-between;gap:14px}
.contact-budget-value{position:relative;display:flex;align-items:center;gap:3px;width:96px;height:30px;padding:3px 8px;border:1px solid #dfd3eb;border-radius:9px;background:rgba(255,255,255,.78);color:#8128da;font-size:12px;font-weight:600;box-shadow:0 3px 10px rgba(95,37,157,.045);transition:border-color .2s,box-shadow .2s}
.contact-budget-value:focus-within{border-color:#9c4de7;box-shadow:0 0 0 3px rgba(143,49,219,.12)}
.contact-budget-value>span:first-child{position:relative;z-index:1;flex:none}
.budget-odometer{position:absolute;inset:0 4px 0 19px;display:flex;align-items:center;overflow:hidden;pointer-events:none;color:#281a36;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;opacity:1;transition:opacity .16s,transform .16s}
.budget-digit{display:inline-block;flex:none;width:.62em;height:1.2em;overflow:hidden;animation:budget-digit-enter .28s ease-out both}
.budget-digit-track{display:flex;flex-direction:column;line-height:1.2em;transform:translateY(calc(var(--digit) * -1.2em));transition:transform .44s cubic-bezier(.2,.75,.25,1);will-change:transform}
.budget-digit-track>span{display:block;height:1.2em}
@keyframes budget-digit-enter{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
.contact-budget-value:focus-within .budget-odometer{opacity:0;transform:translateY(-3px)}
.contact-dialog .contact-budget-value input[type=number]{position:absolute;z-index:2;left:19px;width:68px;min-width:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:#281a36;font-size:12px;font-weight:600;outline:none;opacity:0;-moz-appearance:textfield}
.contact-dialog .contact-budget-value input[type=number]:focus{opacity:1}
.contact-dialog .contact-budget-value input::-webkit-outer-spin-button,.contact-dialog .contact-budget-value input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.contact-budget-slider{position:relative;display:flex;align-items:center;height:36px;isolation:isolate}
.contact-budget-slider:before{content:"";position:absolute;inset:50% 0 auto;height:9px;border:1px solid rgba(126,69,182,.12);border-radius:999px;background:#e9dff3;box-shadow:inset 0 1px 3px rgba(64,27,100,.11),0 4px 16px rgba(105,41,169,.1);transform:translateY(-50%)}
.contact-budget-fill{position:absolute;z-index:1;left:0;top:50%;width:var(--budget-progress,0%);height:9px;border-radius:999px;background:linear-gradient(90deg,#7022d2,#aa3bf3);box-shadow:0 2px 11px rgba(135,45,219,.24);transform:translateY(-50%);transition:width .14s cubic-bezier(.2,.7,.3,1);pointer-events:none}
.contact-dialog #contact-budget-range{appearance:none;position:relative;z-index:3;width:100%;height:9px;margin:0;padding:0;border:0;border-radius:999px;background:transparent;cursor:pointer;outline:none}
.contact-dialog #contact-budget-range:hover{box-shadow:inset 0 1px 3px rgba(64,27,100,.13),0 5px 19px rgba(115,33,193,.2)}
.contact-dialog #contact-budget-range::-webkit-slider-thumb{appearance:none;width:26px;height:26px;border:5px solid #fff;border-radius:50%;background:radial-gradient(circle at 35% 25%,#d9a9ff,#a034ed 65%,#7620c7);box-shadow:0 0 0 1px rgba(111,35,193,.2),0 0 0 6px rgba(157,72,226,.15),0 6px 14px rgba(85,25,160,.3);transition:transform .2s,box-shadow .2s}
.contact-dialog #contact-budget-range::-moz-range-thumb{width:16px;height:16px;border:5px solid #fff;border-radius:50%;background:radial-gradient(circle at 35% 25%,#d9a9ff,#a034ed 65%,#7620c7);box-shadow:0 0 0 1px rgba(111,35,193,.2),0 0 0 6px rgba(157,72,226,.15),0 6px 14px rgba(85,25,160,.3);transition:transform .2s,box-shadow .2s}
.contact-dialog #contact-budget-range:hover::-webkit-slider-thumb,.contact-dialog #contact-budget-range:focus-visible::-webkit-slider-thumb{transform:scale(1.12);box-shadow:0 0 0 1px rgba(111,35,193,.2),0 0 0 8px rgba(157,72,226,.18),0 9px 18px rgba(85,25,160,.36)}
.contact-dialog #contact-budget-range:hover::-moz-range-thumb,.contact-dialog #contact-budget-range:focus-visible::-moz-range-thumb{transform:scale(1.12);box-shadow:0 0 0 1px rgba(111,35,193,.2),0 0 0 8px rgba(157,72,226,.18),0 9px 18px rgba(85,25,160,.36)}
.contact-dialog #contact-budget-range:focus-visible{outline:2px solid #a755e8;outline-offset:10px}
.budget-tick{position:absolute;z-index:2;top:50%;width:5px;height:5px;border-radius:50%;background:#b698d1;transform:translate(-50%,-50%);pointer-events:none}
.budget-tick-one{left:25%}.budget-tick-two{left:50%}.budget-tick-three{left:75%}
.contact-budget-scale{display:flex;justify-content:space-between;color:#938a9d;font-size:11px}
.contact-submit{display:flex;align-items:center;justify-content:center;gap:14px;width:100%;min-height:56px;border:0;border-radius:14px;background:linear-gradient(108deg,#7d23dd,#a000ef 60%,#7730dd);box-shadow:0 15px 28px rgba(112,38,199,.19);color:#fff;font-size:15px;font-weight:600;transition:transform .22s,box-shadow .22s,filter .22s}
.contact-submit:hover{transform:translateY(-2px);box-shadow:0 20px 32px rgba(112,38,199,.27);filter:brightness(1.08)}
.contact-submit:active{transform:translateY(0)}
.contact-dialog .contact-form-note{margin:-10px 0 0;text-align:center;color:#92899d;font-size:11px;line-height:1.5}
@media(max-width:760px){.contact-shell{width:min(calc(100% - 42px),600px);padding:72px 0 34px}.contact-dialog .contact-close{top:17px;right:17px;width:42px;height:42px}.contact-head{margin-bottom:24px}.contact-fields{grid-template-columns:1fr;gap:19px}.contact-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 17px}.contact-dialog #contact-form{gap:22px}}
@media(max-width:450px){.contact-shell{width:calc(100% - 36px);padding-top:70px}.contact-dialog .contact-head h2{font-size:32px}.contact-dialog .contact-head p{font-size:13px}.contact-service-grid{gap:13px 10px}.contact-dialog .contact-service{font-size:11.5px;gap:7px}.contact-dialog .contact-service input[type=checkbox]{width:16px;height:16px}.contact-submit{min-height:54px}}
@media(prefers-reduced-motion:reduce){.contact-dialog,.contact-dialog .contact-close,.contact-submit,.budget-digit,.budget-digit-track,.budget-odometer,.contact-budget-fill{animation:none;transition:none}}

/* Nine distinct service inquiry dialogs. */
body.service-inquiry-open{overflow:hidden}
.service-inquiry-dialog,.service-inquiry-dialog[open]{width:min(1040px,calc(100vw - 36px));max-width:none;max-height:min(90dvh,820px);margin:auto;padding:0;border:1px solid rgba(231,210,255,.6);border-radius:27px;overflow-x:hidden;overflow-y:auto;color:#24162f;background:#fcfaff;box-shadow:0 30px 95px rgba(19,6,42,.35);animation:service-dialog-enter .32s cubic-bezier(.2,.7,.2,1) both}
.service-inquiry-dialog::backdrop{background:rgba(17,7,32,.63);backdrop-filter:blur(13px);-webkit-backdrop-filter:blur(13px)}
@keyframes service-dialog-enter{from{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
.service-inquiry-layout{display:grid;grid-template-columns:minmax(0,42%) minmax(0,58%)}
.service-inquiry-info{--service-glow:#8e40e7;position:relative;isolation:isolate;display:flex;flex-direction:column;padding:39px 39px 30px;overflow:hidden;color:#fff;background:radial-gradient(circle at 88% 15%,var(--service-glow),transparent 43%),radial-gradient(circle at 7% 91%,rgba(154,76,255,.4),transparent 49%),linear-gradient(150deg,#22103d,#401872 68%,#1f0b3b)}
.service-inquiry-info:before{content:"";position:absolute;z-index:-1;width:340px;height:340px;right:-190px;top:28px;border:1px solid rgba(255,255,255,.18);border-radius:50%;box-shadow:0 0 0 62px rgba(255,255,255,.035),0 0 0 120px rgba(255,255,255,.025)}
.service-inquiry-info:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(115deg,transparent 45%,rgba(255,255,255,.09) 51%,transparent 58%);opacity:.65}
.service-inquiry-theme-1{--service-glow:#8064ff}.service-inquiry-theme-2{--service-glow:#a84de9}.service-inquiry-theme-3{--service-glow:#6f4be1}.service-inquiry-theme-4{--service-glow:#9d59ee}.service-inquiry-theme-5{--service-glow:#7650cf}.service-inquiry-theme-6{--service-glow:#b048ed}.service-inquiry-theme-7{--service-glow:#8343d8}.service-inquiry-theme-8{--service-glow:#9a53fa}
.service-inquiry-eyebrow{display:flex;justify-content:space-between;gap:12px;color:#d9b9ff;font-size:10px;font-weight:600;letter-spacing:.16em}
.service-inquiry-symbol{display:grid;place-items:center;width:82px;height:82px;margin:38px 0 23px;border:1px solid rgba(255,255,255,.38);border-radius:23px;background:linear-gradient(140deg,rgba(255,255,255,.4),rgba(167,93,243,.16));box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 16px 32px rgba(9,2,37,.24);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);color:#fff;font-size:45px;line-height:1}
.service-inquiry-info h2{max-width:370px;font-size:clamp(26px,2.6vw,35px);font-weight:600;line-height:1.11;letter-spacing:-.035em;outline:none}
.service-inquiry-info>p{margin:17px 0 0;color:#e2d2f3;font-size:13px;line-height:1.58}
.service-inquiry-info ul{display:grid;gap:11px;margin:26px 0 35px;padding:0;list-style:none}
.service-inquiry-info li{display:flex;align-items:flex-start;gap:10px;color:#f5ecff;font-size:12px;line-height:1.45}
.service-inquiry-info li:before{content:"✓";display:grid;place-items:center;flex:none;width:17px;height:17px;border-radius:50%;background:rgba(231,198,255,.2);color:#fff;font-size:10px}
.service-inquiry-price{display:flex;align-items:baseline;gap:11px;margin-top:auto;padding-top:20px;border-top:1px solid rgba(255,255,255,.18)}
.service-inquiry-price small{color:#cfb2e9;font-size:11px}.service-inquiry-price strong{font-size:20px;font-weight:600}
.service-inquiry-form-panel{padding:39px 48px 29px;background:radial-gradient(circle at 95% 0%,rgba(228,205,255,.35),transparent 43%),#fcfaff}
.service-form-eyebrow{color:#8d36df;font-size:10px;font-weight:600;letter-spacing:.14em}
.service-inquiry-form-panel h3{margin:10px 0 7px;color:#251630;font-size:27px;font-weight:600;line-height:1.14;letter-spacing:-.035em}
.service-form-intro{color:#817589;font-size:12px;line-height:1.5}
.service-inquiry-form{display:grid;gap:12px;margin-top:20px}
.service-inquiry-form label{display:grid;gap:7px;min-width:0;color:#382643;font-size:11px;font-weight:600;line-height:1.35}
.service-inquiry-form :is(input,textarea,select){display:block;width:100%;min-width:0;border:1px solid #e2d8eb;border-radius:11px;padding:11px 13px;background:rgba(255,255,255,.88);color:#24162f;font-size:12px;font-weight:400;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}
.service-inquiry-form textarea{min-height:66px;resize:vertical;line-height:1.5}
.service-inquiry-form :is(input,textarea,select)::placeholder{color:#aa9cb4}
.service-inquiry-form :is(input,textarea,select):focus{border-color:#a45bea;background:#fff;box-shadow:0 0 0 3px rgba(155,72,222,.1)}
.service-inquiry-form select{cursor:pointer}
.service-form-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.service-inquiry-submit{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:48px;margin-top:1px;border:0;border-radius:12px;background:linear-gradient(105deg,#6d25ca,#a01bed 66%,#7325d3);box-shadow:0 10px 22px rgba(112,34,202,.22);color:#fff;font-size:12px;font-weight:600;transition:transform .22s,box-shadow .22s,filter .22s}
.service-inquiry-submit:hover{transform:translateY(-2px);box-shadow:0 15px 29px rgba(112,34,202,.32);filter:brightness(1.08)}
.service-inquiry-submit:focus-visible,.service-inquiry-close:focus-visible{outline:3px solid #ba75f7;outline-offset:3px}
.service-inquiry-note{margin:0;color:#9b91a4;font-size:10px;line-height:1.45;text-align:center}
.service-inquiry-close{position:absolute;z-index:4;top:15px;right:15px;display:grid;place-items:center;width:38px;height:38px;border:1px solid #e6dcef;border-radius:50%;background:rgba(255,255,255,.9);color:#3f2653;font-size:25px;font-weight:300;line-height:1;transition:background .2s,color .2s,transform .2s}
.service-inquiry-close:hover{background:#862cdc;color:#fff;transform:rotate(90deg)}
@media(max-width:760px){.service-inquiry-dialog,.service-inquiry-dialog[open]{width:calc(100vw - 18px);max-height:calc(100dvh - 18px);border-radius:20px}.service-inquiry-layout{display:block}.service-inquiry-info{min-height:0;padding:27px 26px 26px}.service-inquiry-symbol{width:58px;height:58px;margin:28px 0 18px;border-radius:17px;font-size:33px}.service-inquiry-info h2{font-size:27px}.service-inquiry-info>p{margin-top:10px;font-size:12px}.service-inquiry-info ul{gap:7px;margin:17px 0 18px}.service-inquiry-info li{font-size:11px}.service-inquiry-price{padding-top:13px}.service-inquiry-form-panel{padding:28px 24px 30px}.service-inquiry-form-panel h3{font-size:25px}.service-form-two{grid-template-columns:1fr;gap:15px}.service-inquiry-close{top:15px;right:15px;width:35px;height:35px}}
@media(max-width:400px){.service-inquiry-info{padding:26px 21px}.service-inquiry-form-panel{padding:25px 20px}.service-inquiry-eyebrow{padding-right:38px}}
@media(prefers-reduced-motion:reduce){.service-inquiry-dialog,.service-inquiry-close,.service-inquiry-submit{animation:none;transition:none}}

/* Complete contact and office footer. */
.footer{padding:61px 0 100px}
.footer-main{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.8fr) minmax(0,.9fr);gap:52px;padding-bottom:46px}
.footer-brand{min-width:0}.footer-brand>p{margin:15px 0 31px}
.footer-company{display:flex;flex-wrap:wrap;column-gap:18px;row-gap:7px;max-width:260px}
.footer-company strong{flex-basis:100%;margin-bottom:3px}
.footer .footer-main strong,.footer-offices>strong{display:block;margin-bottom:16px;color:#f7f1ff;font-size:12px;font-weight:600}
.footer .footer-company strong{margin-bottom:3px}
.footer-service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 20px}
.footer-service-list button,.footer-service-list a{border:0;padding:0;background:none;color:#b2a9c0;font:inherit;font-size:12px;line-height:1.45;text-align:left;transition:color .2s,transform .2s}
.footer-service-list button:hover,.footer-service-list a:hover{color:#e6c9ff;transform:translateX(3px)}
.footer-service-list button:focus-visible,.footer a:focus-visible{outline:2px solid #b875ef;outline-offset:4px;border-radius:2px}
.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.footer .footer-contact strong{margin-bottom:6px}
.footer .footer-contact :is(.footer-phone,.footer-email){color:#f7f1ff;font-size:14px;font-weight:600;line-height:1.4;white-space:nowrap}
.footer .footer-contact :is(.footer-phone,.footer-email):hover{color:#d1a2ff}
.footer-offices{padding:30px 0 31px;border-top:1px solid rgba(205,177,233,.17)}
.footer-office-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:40px}
.footer-office-grid address{min-width:0;font-style:normal}
.footer-office-grid address b{display:block;margin-bottom:9px;color:#ede4f6;font-size:12px;font-weight:600}
.footer-office-grid address span{display:block;color:#aba1b9;font-size:11.5px;line-height:1.75}
.footer-office-grid address a{text-decoration:underline;text-decoration-color:rgba(179,145,214,.42);text-underline-offset:3px}
.footer-office-grid address a:hover{text-decoration-color:#e1baff}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:22px;border-top:1px solid rgba(205,177,233,.17)}
.footer-bottom small,.footer-bottom a{color:#948aa4;font-size:11px;line-height:1.5}
.footer-bottom a:hover{color:#e2baff}
@media(max-width:1050px){.footer-main{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:32px}.footer-contact{grid-column:1 / -1;flex-direction:row;align-items:center;gap:22px}.footer .footer-contact strong{margin:0 7px 0 0}.footer-office-grid{gap:23px}}
@media(max-width:760px){.footer{padding:46px 0 24px}.footer-main{grid-template-columns:1fr;gap:32px;padding-bottom:34px}.footer-brand>p{margin-bottom:22px}.footer-contact{grid-column:auto;flex-direction:column;align-items:flex-start;gap:8px}.footer .footer-contact strong{margin:0 0 7px}.footer-service-list{gap:10px 18px}.footer-office-grid{grid-template-columns:1fr;gap:23px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:10px}}
@media(max-width:420px){.footer-service-list{grid-template-columns:1fr}.footer-service-list button{font-size:12.5px}}
@font-face{font-family:GraphikLCG;src:url('/assets/fonts/GraphikLCG-Regular.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:GraphikLCG;src:url('/assets/fonts/GraphikLCG-Semibold.woff2') format('woff2');font-weight:600;font-display:swap}
.custdev-page{background:#faf8fc;color:#1f1429;font-family:GraphikLCG,Arial,sans-serif}.custdev-page .site-shell{overflow:hidden;background:#faf8fc}.custdev-header{position:relative;z-index:20;background:linear-gradient(180deg,#fff 0,rgba(255,255,255,.88) 70%,transparent)}.custdev-header .nav{position:relative}.custdev-header .nav-links a{color:#54495e;font-weight:400}.custdev-header .nav-links a[aria-current=page]{color:#9125de}.custdev-kicker,.custdev-heading>span{display:block;color:#9727e4;font-size:11px;letter-spacing:.14em;line-height:1.5}.custdev-hero{position:relative;min-height:690px;background:linear-gradient(110deg,#fff 0,#f8f3fc 47%,#241132 47%,#13091f 100%);isolation:isolate}.custdev-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(148,81,191,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(148,81,191,.06) 1px,transparent 1px);background-size:80px 80px;pointer-events:none}.custdev-hero-art{position:absolute;z-index:-1;right:0;top:0;width:57%;height:100%;overflow:hidden}.custdev-hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f8f3fc 0,rgba(248,243,252,.54) 12%,transparent 36%),linear-gradient(180deg,rgba(17,7,27,.08),rgba(17,7,27,.35))}.custdev-hero-art img{width:100%;height:100%;object-fit:cover;object-position:58% center;filter:saturate(.92) contrast(1.04)}.custdev-hero-grid{display:grid;grid-template-columns:54% 46%;min-height:690px;align-items:center}.custdev-hero-copy{padding:58px 0 70px;position:relative;z-index:2}.custdev-hero h1{font-size:clamp(52px,5.4vw,78px);line-height:.98;letter-spacing:-.052em;font-weight:600;max-width:790px;margin:22px 0 30px}.custdev-hero h1 em{font-style:normal;color:#9826e9}.custdev-hero-copy>p{font-size:16px;line-height:1.75;color:#73667e;max-width:630px}.custdev-hero-actions{display:flex;gap:14px;margin-top:36px}.custdev-hero-actions .button{min-height:58px}.custdev-secondary{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:rgba(255,255,255,.78);color:#2a1d35;border:1px solid rgba(74,45,94,.14);backdrop-filter:blur(14px)}.custdev-secondary:hover{background:#fff;transform:translateY(-2px)}.custdev-hero-proof{display:flex;gap:34px;margin-top:50px}.custdev-hero-proof span{display:flex;flex-direction:column;gap:5px;color:#8a7b94;font-size:10px;line-height:1.4}.custdev-hero-proof strong{font-size:24px;color:#271933;font-weight:600}.custdev-trust{background:#1b0d29;color:#fff;padding:25px 0}.custdev-trust .container{display:flex;align-items:center;gap:50px}.custdev-trust p{font-size:11px;color:#a896b6;white-space:nowrap}.custdev-trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;width:100%}.custdev-trust-grid span{font-size:11px;text-align:center;padding:14px;border-radius:50px;background:rgba(185,105,237,.09);color:#deccec}.custdev-section{padding:100px 0}.custdev-heading{display:grid;grid-template-columns:.35fr .9fr .65fr;gap:30px;align-items:start;margin-bottom:48px}.custdev-heading h2{font-size:clamp(38px,4vw,58px);font-weight:600;line-height:1.04;letter-spacing:-.045em;margin:0}.custdev-heading>p{font-size:13px;line-height:1.75;color:#81738a;margin:5px 0 0}.custdev-situation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.custdev-situation-grid article{position:relative;min-height:330px;padding:31px;border-radius:24px;background:linear-gradient(150deg,#fff,#f1e9f8);border:1px solid #e9dff0;overflow:hidden;transition:.3s}.custdev-situation-grid article:hover{transform:translateY(-6px);box-shadow:0 24px 50px rgba(65,31,86,.09)}.custdev-situation-grid article:after{content:"";position:absolute;width:150px;height:150px;border-radius:50%;right:-60px;bottom:-70px;background:radial-gradient(circle,#c767ff55,transparent 70%)}.custdev-situation-grid small{font-size:9px;letter-spacing:.12em;color:#9c42dd}.custdev-situation-grid h3{font-size:26px;line-height:1.15;font-weight:600;letter-spacing:-.025em;margin:25px 0 30px;max-width:260px}.custdev-situation-grid ul,.custdev-price-grid ul{list-style:none;padding:0;margin:0}.custdev-situation-grid li{font-size:12px;color:#7f7089;line-height:1.55;padding:7px 0 7px 18px;position:relative}.custdev-situation-grid li:before{content:"";position:absolute;left:0;top:14px;width:6px;height:6px;border-radius:50%;background:#ab45ed}.custdev-manifesto{padding:110px 0;background:#1d0e2c;color:#fff}.custdev-manifesto blockquote{font-size:clamp(44px,5.5vw,78px);font-weight:600;line-height:1.05;letter-spacing:-.05em;margin:30px 0 55px;max-width:1120px}.custdev-manifesto blockquote em{font-style:normal;color:#b74eff}.custdev-manifesto-copy{display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:980px;margin-left:auto}.custdev-manifesto-copy p{font-size:14px;line-height:1.85;color:#c6b6d1}.custdev-method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#e3d7eb;border-radius:24px;overflow:hidden}.custdev-method-grid article{padding:30px;background:#fff;min-height:310px}.custdev-method-grid b{display:flex;width:40px;height:40px;border-radius:50%;align-items:center;justify-content:center;background:#f0e4fa;color:#972ee0;font-size:11px}.custdev-method-grid h3{font-size:20px;font-weight:600;line-height:1.2;margin:72px 0 18px}.custdev-method-grid p{font-size:12px;line-height:1.75;color:#807286}.custdev-method-note{display:flex;align-items:center;gap:55px;padding:30px 36px;margin-top:16px;border-radius:20px;background:linear-gradient(110deg,#8b23da,#ba4df9);color:white}.custdev-method-note strong{font-size:24px;white-space:nowrap}.custdev-method-note span{font-size:12px;line-height:1.7;color:#f0dbff}.custdev-outcomes{padding:110px 0;background:linear-gradient(130deg,#1b0d29,#2e1342);color:#fff}.custdev-heading-light h2{color:#fff}.custdev-outcome-list{border-top:1px solid rgba(255,255,255,.14)}.custdev-outcome-list article{display:grid;grid-template-columns:70px 1fr 170px;gap:25px;align-items:center;padding:38px 0;border-bottom:1px solid rgba(255,255,255,.14)}.custdev-outcome-list>article>span{color:#b95cf4;font-size:11px}.custdev-outcome-list h3{font-size:27px;font-weight:600;margin:0 0 10px}.custdev-outcome-list p{font-size:12px;color:#bbaaC7;line-height:1.7;max-width:620px}.custdev-outcome-list strong{font-size:44px;color:#d494ff;text-align:right}.custdev-outcome-list strong small{display:block;font-size:9px;letter-spacing:.12em;color:#917da0;margin-top:8px}.custdev-process{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;list-style:none;padding:0;margin:0;counter-reset:process}.custdev-process li{padding:24px 20px;min-height:255px;border-top:2px solid #ac47ec;background:linear-gradient(180deg,#f4eafa,transparent)}.custdev-process li>span{font-size:10px;color:#a238e3}.custdev-process h3{font-size:17px;line-height:1.3;font-weight:600;margin:70px 0 15px}.custdev-process p{font-size:11px;line-height:1.7;color:#85758f}.custdev-pricing{padding:100px 0;background:#f0eaf5}.custdev-price-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.custdev-price-grid>article{padding:42px;border-radius:28px;background:white}.custdev-price-grid>article>span{font-size:9px;letter-spacing:.14em;color:#9a36de}.custdev-price-grid h3{font-size:36px;line-height:1.08;letter-spacing:-.04em;font-weight:600;margin:24px 0 14px}.custdev-price-grid>article>p{font-size:12px;color:#8b7b96}.custdev-price{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:34px 0;padding-bottom:28px;border-bottom:1px solid #e9deef}.custdev-price small{font-size:11px;color:#9a8ba3}.custdev-price strong{font-size:25px;font-weight:600}.custdev-price-grid li{position:relative;padding:7px 0 7px 21px;font-size:12px;color:#71637c}.custdev-price-grid li:before{content:"✓";position:absolute;left:0;color:#9d30e4}.custdev-price-grid .button{margin-top:32px;width:100%;min-height:58px}.custdev-price-featured{background:linear-gradient(145deg,#29113c,#160a23)!important;color:#fff;box-shadow:0 25px 70px rgba(61,22,88,.2)}.custdev-price-featured>p,.custdev-price-featured li,.custdev-price-featured .custdev-price small{color:#baa7c6!important}.custdev-price-featured .custdev-price{border-color:rgba(255,255,255,.14)}.custdev-price-button{display:flex;align-items:center;justify-content:space-between;background:#fff;color:#69229b}.custdev-why{background:#fff}.custdev-why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.custdev-why-grid article{padding:30px;border-radius:22px;background:#f6f1f9}.custdev-why-grid strong{font-size:20px;font-weight:600}.custdev-why-grid p{font-size:12px;color:#81718a;line-height:1.75;margin-top:35px}.custdev-follow{padding:100px 0;background:#f5eef9}.custdev-follow-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.custdev-follow-grid article{padding:30px;border-radius:22px;background:white}.custdev-follow-grid span{font-size:11px;color:#a03de4}.custdev-follow-grid h3{font-size:24px;font-weight:600;margin:50px 0 15px}.custdev-follow-grid p{font-size:12px;line-height:1.7;color:#806f8a}.custdev-faq-list{max-width:900px;margin-left:auto}.custdev-faq details{border-bottom:1px solid #e1d5e8}.custdev-faq summary{display:flex;justify-content:space-between;gap:25px;align-items:center;list-style:none;cursor:pointer;padding:25px 0;font-size:18px;font-weight:600}.custdev-faq summary::-webkit-details-marker{display:none}.custdev-faq summary span{font-size:26px;color:#a13ce6;transition:.25s}.custdev-faq details[open] summary span{transform:rotate(45deg)}.custdev-faq details p{font-size:13px;line-height:1.85;color:#7f7088;max-width:760px;padding:0 0 28px}.custdev-consultation{padding:85px 0;background:radial-gradient(circle at 75% 35%,#6e229d,#29103f 40%,#160920 75%);color:#fff}.custdev-consultation .container{display:flex;align-items:center;justify-content:space-between;gap:50px}.custdev-consultation span{font-size:9px;letter-spacing:.14em;color:#d399ff}.custdev-consultation h2{font-size:clamp(36px,4vw,55px);line-height:1.06;letter-spacing:-.04em;font-weight:600;margin:20px 0}.custdev-consultation p{font-size:13px;line-height:1.75;color:#c6b3d2;max-width:650px}.custdev-consultation-button{flex-shrink:0;background:white;color:#6d229f;min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:40px}.custdev-page .footer{margin-top:0}.custdev-page .footer-service-list a{font-size:11px;color:inherit;opacity:.95}.custdev-page .footer-service-list a:hover{color:#fff}
@media(max-width:1000px){.custdev-hero-grid{grid-template-columns:65% 35%}.custdev-hero h1{font-size:58px}.custdev-heading{grid-template-columns:.3fr 1fr}.custdev-heading>p{grid-column:2}.custdev-process{grid-template-columns:repeat(3,1fr)}.custdev-method-grid{grid-template-columns:repeat(2,1fr)}.custdev-why-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.custdev-header{background:#fff}.custdev-hero{min-height:0;background:#f8f3fc;padding-bottom:0}.custdev-hero-grid{display:block;min-height:0}.custdev-hero-copy{padding:45px 0 390px}.custdev-hero h1{font-size:46px}.custdev-hero-copy>p{font-size:13px}.custdev-hero-actions{flex-direction:column}.custdev-hero-actions .button{width:100%}.custdev-hero-proof{gap:18px;overflow-x:auto}.custdev-hero-proof span{min-width:120px}.custdev-hero-art{width:100%;height:390px;top:auto;bottom:0}.custdev-hero-art:after{background:linear-gradient(180deg,#f8f3fc 0,transparent 34%,rgba(20,8,30,.15))}.custdev-trust .container{display:block}.custdev-trust p{margin-bottom:15px}.custdev-trust-grid{grid-template-columns:1fr 1fr}.custdev-trust-grid span{font-size:9px}.custdev-section,.custdev-follow,.custdev-pricing{padding:70px 0}.custdev-heading{display:block;margin-bottom:35px}.custdev-heading h2{font-size:38px;margin-top:18px}.custdev-heading>p{font-size:12px;margin-top:20px}.custdev-situation-grid,.custdev-price-grid,.custdev-why-grid,.custdev-follow-grid{grid-template-columns:1fr}.custdev-situation-grid article{min-height:300px}.custdev-manifesto{padding:75px 0}.custdev-manifesto blockquote{font-size:42px}.custdev-manifesto-copy{grid-template-columns:1fr;gap:10px}.custdev-method-grid{grid-template-columns:1fr}.custdev-method-grid article{min-height:245px}.custdev-method-grid h3{margin-top:45px}.custdev-method-note{display:block;padding:25px}.custdev-method-note strong{display:block;margin-bottom:12px}.custdev-outcomes{padding:75px 0}.custdev-outcome-list article{grid-template-columns:35px 1fr}.custdev-outcome-list strong{grid-column:2;text-align:left;font-size:35px}.custdev-process{grid-template-columns:1fr}.custdev-process li{min-height:180px}.custdev-process h3{margin-top:35px}.custdev-price-grid>article{padding:30px 24px}.custdev-price{display:block}.custdev-price strong{display:block;margin-top:10px}.custdev-faq-list{margin:0}.custdev-faq summary{font-size:15px}.custdev-consultation{padding:65px 0}.custdev-consultation .container{display:block}.custdev-consultation-button{margin-top:30px;width:100%}}
@media(prefers-reduced-motion:reduce){.custdev-situation-grid article,.custdev-secondary{transition:none}}

/* Exact CustDev service page */
.cdx-page{margin:0;background:#090b14;color:#f8f5fb;font-family:GraphikLCG,Arial,sans-serif}.cdx-page .site-shell{overflow:hidden;background:#090b14}.cdx-page h1,.cdx-page h2,.cdx-page h3,.cdx-page h4,.cdx-page p{margin-top:0}.cdx-page em{font-style:normal!important}.cdx-page button{font:inherit}.cdx-site-header{position:absolute;z-index:50;top:0;left:0;width:100%;color:#fff;background:linear-gradient(180deg,rgba(15,10,25,.84),rgba(15,10,25,.58));border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 12px 34px rgba(5,2,12,.16);backdrop-filter:blur(22px) saturate(125%);-webkit-backdrop-filter:blur(22px) saturate(125%)}.cdx-site-header:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,rgba(255,255,255,.045),transparent 32%,rgba(158,72,236,.05) 72%,transparent)}.cdx-site-header .nav{position:relative}.cdx-site-header .nav-links a{color:#d8cfdf;font-family:GraphikLCG,Arial,sans-serif;font-size:12.48px;font-weight:400}.cdx-site-header .nav-links a:hover{color:#fff}.cdx-site-header .language-switcher{color:#fff}.cdx-site-header .language-switcher summary{color:#fff;background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12)}.cdx-section{padding:106px 0}.cdx-section h2{font-size:clamp(42px,4.6vw,68px);line-height:1.02;letter-spacing:-.045em;text-align:center;font-weight:600}.cdx-section em{color:#9c14f1}.cdx-hero{position:relative;min-height:780px;padding-top:90px;background:linear-gradient(135deg,#171020 0%,#100a1a 48%,#080b14 100%);overflow:hidden;isolation:isolate}.cdx-hero-grid{position:absolute;inset:0;z-index:-2;background:linear-gradient(rgba(174,75,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(174,75,255,.035) 1px,transparent 1px);background-size:82px 82px;mask-image:linear-gradient(to bottom,black,transparent 92%)}.cdx-hero-layout{display:grid;grid-template-columns:52% 48%;min-height:690px;align-items:center}.cdx-hero-copy{position:relative;z-index:3;padding:54px 0 72px}.cdx-hero h1{font-size:clamp(43px,4.15vw,60px);line-height:1.02;letter-spacing:-.045em;font-weight:600;margin-bottom:28px}.cdx-hero h1 em{display:inline-block;padding:4px 12px 7px;margin-left:-12px;border-radius:10px;color:#fff;background:linear-gradient(105deg,#7313cf,#ad00ff)}.cdx-hero ul{margin:0;padding-left:23px;max-width:610px}.cdx-hero li{font-size:16px;line-height:1.5;color:#ddd3e6;margin:5px 0}.cdx-hero-actions{display:flex;gap:16px;margin-top:34px}.cdx-hero-actions .button{min-width:215px;min-height:56px}.cdx-button-muted{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#181722,#29252c);color:#fff}.cdx-button-muted:hover{background:#30243a;transform:translateY(-2px)}.cdx-hero-art{position:absolute;z-index:0;top:0;right:0;width:73%;height:100%;margin:0}.cdx-hero-art:before{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,#120b1b 0,rgba(18,11,27,.98) 18%,rgba(18,11,27,.54) 38%,transparent 60%),linear-gradient(0deg,#090b14 0,transparent 25%),linear-gradient(180deg,rgba(8,11,20,.2),transparent 25%);pointer-events:none}.cdx-hero-art img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.88) contrast(1.04);mask-image:linear-gradient(to bottom,black 0,black 79%,transparent 100%)}
.cdx-questions{background:#080b14}.cdx-questions h2{margin-bottom:74px}.cdx-questions article{position:relative;padding:38px 0 48px;border-top:1px solid rgba(255,255,255,.42)}.cdx-questions article:last-child{border-bottom:1px solid rgba(255,255,255,.42)}.cdx-questions article:after,.cdx-faq summary:after{content:"×";position:absolute;right:8px;top:36px;font-size:32px;font-weight:200;color:rgba(255,255,255,.13)}.cdx-questions h3{font-size:25px;line-height:1.25;font-weight:600;margin-bottom:28px}.cdx-questions ul{margin:0;padding-left:25px;max-width:1250px}.cdx-questions li{font-size:18px;line-height:1.55;color:#e0dae5;margin:3px 0}
.cdx-methodology{background:#0c0f19}.cdx-methodology h2{margin-bottom:62px}.cdx-prose{font-size:20px;line-height:1.7;color:#e6dfea}.cdx-prose p{margin-bottom:38px}.cdx-prose p:last-child{margin-bottom:0}.cdx-prose strong{color:#fff}
.cdx-included{background:#080b14}.cdx-included h2{margin-bottom:48px}.cdx-lead{text-align:center;max-width:780px;margin:0 auto 90px;font-size:18px;line-height:1.55;color:#c9bfce}.cdx-included-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:95px;row-gap:90px}.cdx-included-grid article{position:relative;min-height:240px;padding-right:130px}.cdx-included-grid article>span{position:absolute;right:0;top:0;width:96px;height:96px;display:grid;place-items:center;border-radius:50%;color:transparent;background:linear-gradient(135deg,#7504cf,#b000ff)}.cdx-included-grid article>span:after{content:"";width:26px;height:26px;border:2px solid #fff;border-radius:6px;opacity:.9}.cdx-included-grid h3{font-size:27px;line-height:1.22;font-weight:600;margin-bottom:32px}.cdx-included-grid p{font-size:17px;line-height:1.62;color:#d6cddc}.cdx-center-button{display:flex;margin:55px auto 0;min-width:290px}
.cdx-benefits{background:#0a0d17}.cdx-benefits>div>h2{margin-bottom:45px}.cdx-benefits .cdx-lead{margin-bottom:50px}.cdx-benefit-card{padding:58px 58px 54px;margin-top:28px;border-radius:54px;background:#12141d}.cdx-benefit-card header{display:flex;align-items:center;gap:24px;margin-bottom:50px}.cdx-benefit-card header b{font-size:82px;line-height:.9;letter-spacing:-.06em;color:#8d0de5}.cdx-benefit-card header h3{font-size:38px;line-height:1.02;letter-spacing:-.035em;margin:0}.cdx-benefit-body{display:grid;grid-template-columns:1.2fr .8fr;gap:72px;align-items:start}.cdx-benefit-body h4{font-size:25px;margin-bottom:28px}.cdx-benefit-body ul{padding-left:24px;margin:0}.cdx-benefit-body li{font-size:20px;line-height:1.42;margin:5px 0}.cdx-benefit-body aside{padding:40px 44px;border-radius:44px;background:linear-gradient(135deg,#7700df,#b500ff);min-height:360px;display:flex;flex-direction:column}.cdx-benefit-body aside h4{font-size:27px;line-height:1.18;margin-bottom:28px}.cdx-benefit-body aside strong{font-size:17px}.cdx-benefit-body aside p{font-size:17px;line-height:1.55;margin:12px 0 28px}.cdx-benefit-body aside button,.cdx-after-grid button{margin-top:auto;min-height:54px;border:0;border-radius:999px;background:#fff;color:#7415b3;font-weight:600;cursor:pointer;transition:.2s}.cdx-benefit-body aside button:hover,.cdx-after-grid button:hover{transform:translateY(-2px);background:#f2dcff}
.cdx-why{background:#080b14}.cdx-why h2{margin-bottom:90px}.cdx-why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:60px}.cdx-why-grid article{text-align:center}.cdx-why-grid b{display:grid;place-items:center;width:100px;height:100px;border-radius:50%;margin:0 auto 30px;color:#fff;background:linear-gradient(135deg,#7504cf,#a500f5);font-size:18px}.cdx-why-grid h3{font-size:24px;line-height:1.15}.cdx-why-grid p{font-size:17px;line-height:1.65;color:#cfc5d5;margin:35px 0 0}
.cdx-packages{background:#0a0d17;padding-top:60px}.cdx-package{padding:60px 64px;margin-bottom:36px;border-radius:50px;background:#12141d}.cdx-package-title{position:relative;max-width:980px}.cdx-package-title h2{text-align:left;font-size:59px;line-height:.95;margin-bottom:24px}.cdx-package-title>p{font-size:20px;color:#827a87}.cdx-package-title>div{display:grid;grid-template-columns:auto 1fr;gap:18px;margin-top:22px}.cdx-package-title strong,.cdx-package-title button{min-height:56px;border:0;border-radius:999px;font-weight:600}.cdx-package-title strong{display:flex;align-items:center;padding:0 28px;background:#252428;font-size:18px;white-space:nowrap}.cdx-package-title button{color:#fff;background:linear-gradient(100deg,#7414ce,#a600fa);cursor:pointer;font-size:18px}.cdx-package-lists{display:grid;grid-template-columns:1fr 1fr;gap:55px;margin-top:40px}.cdx-package-lists h3{grid-column:1/-1;font-size:23px;margin-bottom:-28px}.cdx-package-lists ul{padding-left:24px;margin:0}.cdx-package-lists li{font-size:18px;line-height:1.55;margin:0 0 24px}
.cdx-after{background:#080b14}.cdx-after h2{margin-bottom:70px}.cdx-after-grid{display:grid;grid-template-columns:1.35fr .85fr;gap:18px}.cdx-after-grid article{min-height:340px;padding:42px;border-radius:28px;background:#12141d;display:flex;flex-direction:column}.cdx-after-grid article:last-child{grid-column:1/-1;min-height:310px;padding-right:46%}.cdx-after-grid h3{font-size:27px;line-height:1.18}.cdx-after-grid p{font-size:18px;line-height:1.65;color:#d3cad7;max-width:780px}.cdx-after-grid button{width:min(100%,700px);margin-top:auto;background:linear-gradient(90deg,#7110cb,#ad00ff);color:#fff}
.cdx-faq{background:#0a0d17;padding-bottom:130px}.cdx-faq h2{margin-bottom:90px}.cdx-faq details{border-top:1px solid rgba(255,255,255,.42)}.cdx-faq details:last-child{border-bottom:1px solid rgba(255,255,255,.42)}.cdx-faq summary{position:relative;list-style:none;cursor:pointer;padding:34px 70px 34px 0;font-size:25px;line-height:1.28;font-weight:600}.cdx-faq summary::-webkit-details-marker{display:none}.cdx-faq summary:after{content:"+";top:25px;transition:.2s}.cdx-faq details[open] summary:after{transform:rotate(45deg)}.cdx-faq details>div{padding:6px 0 34px;max-width:1270px}.cdx-faq details p,.cdx-faq details li{font-size:18px;line-height:1.62;color:#d1c7d7}.cdx-faq details p{margin-bottom:22px}.cdx-faq details ul{padding-left:25px;margin:0 0 22px}.cdx-page .footer{margin-top:0}.cdx-page .footer-service-list a{font-size:11px;color:inherit;opacity:.95}
@media(max-width:1050px){.cdx-hero-layout{grid-template-columns:58% 42%}.cdx-hero h1{font-size:50px}.cdx-hero-art{width:63%}.cdx-included-grid{gap:55px}.cdx-benefit-card{padding:45px}.cdx-benefit-card header h3{font-size:32px}.cdx-benefit-body{gap:35px}.cdx-package-title h2{font-size:50px}}
@media(max-width:760px){.cdx-site-header{position:relative}.cdx-section{padding:70px 0}.cdx-section h2{font-size:35px}.cdx-hero{min-height:0;padding-bottom:280px}.cdx-hero-layout{display:block;min-height:0}.cdx-hero-copy{padding:46px 0 34px}.cdx-hero h1{font-size:36px}.cdx-hero h1 em{padding:4px 8px 6px;margin-left:-8px}.cdx-hero li{font-size:14px}.cdx-hero-actions{flex-direction:column}.cdx-hero-actions .button{width:100%}.cdx-hero-art{top:auto;bottom:0;width:100%;height:330px}.cdx-hero-art:before{background:linear-gradient(180deg,#100a1a 0,transparent 28%),linear-gradient(0deg,#090b14 0,transparent 38%)}.cdx-hero-art img{object-position:65% center}.cdx-questions h2,.cdx-why h2,.cdx-faq h2{margin-bottom:48px}.cdx-questions article{padding:28px 0 34px}.cdx-questions h3,.cdx-faq summary{font-size:20px}.cdx-questions li,.cdx-prose,.cdx-faq details p,.cdx-faq details li{font-size:15px}.cdx-methodology h2{margin-bottom:38px}.cdx-prose p{margin-bottom:28px}.cdx-lead{font-size:15px;margin-bottom:55px}.cdx-included-grid{grid-template-columns:1fr;row-gap:42px}.cdx-included-grid article{padding-right:85px;min-height:0}.cdx-included-grid article>span{width:66px;height:66px}.cdx-included-grid h3{font-size:22px;margin-bottom:20px}.cdx-included-grid p{font-size:15px}.cdx-benefit-card{padding:30px 22px;border-radius:30px}.cdx-benefit-card header{align-items:flex-start;margin-bottom:32px}.cdx-benefit-card header b{font-size:54px}.cdx-benefit-card header h3{font-size:25px}.cdx-benefit-body{grid-template-columns:1fr}.cdx-benefit-body h4{font-size:21px}.cdx-benefit-body li{font-size:16px}.cdx-benefit-body aside{padding:30px 25px;border-radius:28px}.cdx-why-grid{grid-template-columns:1fr;gap:48px}.cdx-why-grid p{font-size:15px;margin-top:22px}.cdx-package{padding:34px 22px;border-radius:30px}.cdx-package-title h2{font-size:37px}.cdx-package-title>p{font-size:15px}.cdx-package-title>div{grid-template-columns:1fr}.cdx-package-title strong{font-size:16px;justify-content:center}.cdx-package-title button{font-size:15px}.cdx-package-lists{grid-template-columns:1fr;gap:0}.cdx-package-lists h3{margin-bottom:0}.cdx-package-lists li{font-size:15px;margin-bottom:15px}.cdx-after-grid{grid-template-columns:1fr}.cdx-after-grid article,.cdx-after-grid article:last-child{grid-column:auto;min-height:300px;padding:30px}.cdx-after-grid p{font-size:15px}.cdx-faq summary:after{right:0}.cdx-faq details>div{padding-right:5px}.cdx-page .floating-nav{display:none}}
@media(prefers-reduced-motion:reduce){.cdx-button-muted,.cdx-benefit-body aside button,.cdx-after-grid button{transition:none}}

/* Service card actions */
.service-card{height:380px;padding-bottom:92px}.service-card .service-meta{bottom:84px}.service-card .card-arrow{display:none}.service-card-actions{position:absolute;z-index:5;left:20px;right:20px;bottom:20px;display:grid;grid-template-columns:1.15fr .85fr;gap:8px}.service-card-actions button,.service-card-actions a{min-width:0;min-height:43px;display:flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:0 13px;font-family:GraphikLCG,Arial,sans-serif;font-size:10.5px;line-height:1;font-weight:600;white-space:nowrap;cursor:pointer;transition:transform .2s,background .2s,color .2s,box-shadow .2s}.service-card-actions button{color:#fff;background:linear-gradient(110deg,#7121ce,#9b00ef);box-shadow:0 8px 20px rgba(108,24,180,.22)}.service-card-actions a{gap:6px;color:#52216d;background:#fff;border:1px solid rgba(104,54,132,.13)}.service-card-actions button:hover,.service-card-actions a:hover{transform:translateY(-2px)}.service-card-actions a:hover{color:#7a0dbf;background:#f8edff}.service-card-actions span{font-size:14px}.recruitment-actions a{display:inline-flex}
@media(max-width:760px){.service-card{height:322px;padding-bottom:82px}.service-card .service-meta{bottom:77px}.service-card-actions{left:12px;right:12px;bottom:13px;gap:6px}.service-card-actions button,.service-card-actions a{min-height:39px;padding:0 9px;font-size:9px}.cdx-site-header .nav-links{background:rgba(20,12,34,.96);border-color:rgba(255,255,255,.1);backdrop-filter:blur(20px)}.cdx-site-header .menu-toggle{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.16)}}

@media(min-width:761px){.cdx-hero-art{width:100%}.cdx-hero-art img{object-fit:contain;object-position:center}.cdx-hero-art:before{background:linear-gradient(90deg,#120b1b 0,rgba(18,11,27,.98) 22%,rgba(18,11,27,.68) 39%,transparent 62%),linear-gradient(0deg,#090b14 0,transparent 25%),linear-gradient(180deg,rgba(8,11,20,.2),transparent 25%)}}
@media(max-width:760px){.cdx-hero-art img{object-fit:cover}}
