:root{--navy:#0a1640;--brand:#173583;--b2:#2a5bd7;--sky:#5d8dff;--tint:#f2f5ff;--line:#dfe6f7;--ink:#231f20;--mut:#4c5370;--g:linear-gradient(120deg,#173583,#2a5bd7 60%,#5d8dff);--mx:50%;--my:50%}
*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}
body{background:#fff;color:var(--mut);font:400 1.02rem/1.7 "DM Sans",system-ui,sans-serif;overflow-x:hidden}
h1,h2,h3,h4,.btn,.pill{font-family:"Bricolage Grotesque","DM Sans",sans-serif;color:var(--ink)}
img{max-width:100%;display:block}a{color:inherit}:focus-visible{outline:3px solid var(--sky);outline-offset:3px}
.w{width:min(1180px,92%);margin:0 auto;position:relative}
.sk{position:absolute;left:-999px}.sk:focus{left:12px;top:8px;z-index:99;background:#fff;color:#000;padding:8px 12px}
.hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0;pointer-events:none;padding:0;border:0}
.aur{position:fixed;inset:0;z-index:-1;overflow:hidden;background:radial-gradient(circle 420px at var(--mx) var(--my),rgba(42,91,215,.09),transparent)}
.aur i{position:absolute;width:44vw;height:44vw;border-radius:50%;filter:blur(90px);opacity:.22;animation:fl 18s ease-in-out infinite alternate;background:var(--b2)}
.aur i:nth-child(1){left:-10vw;top:-12vw}.aur i:nth-child(2){right:-12vw;top:20vh;background:var(--sky);animation-delay:-6s}.aur i:nth-child(3){left:28vw;bottom:-26vw;background:var(--brand);animation-delay:-11s;opacity:.14}
@keyframes fl{to{transform:translate(8vw,6vh) scale(1.25) rotate(40deg)}}
.fi{width:26px;height:17px;border-radius:3px;display:block;box-shadow:0 0 0 1px rgba(255,255,255,.28)}.dfl{display:block;margin-bottom:14px}.dfl .fi{width:48px;height:32px;border-radius:5px;box-shadow:0 0 0 1px var(--line),0 6px 16px rgba(10,22,64,.15)}.pill .dfl{display:inline-block;vertical-align:middle;margin:0 8px 0 0}.pill .dfl .fi{width:24px;height:16px;box-shadow:none}
.ub{position:relative;z-index:70;background:var(--navy);color:#c9d4f5;font-size:.84rem}.ub .w{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px}.ub a{color:#fff;text-decoration:none}.ub .mk,.ub .ur{display:flex;align-items:center;gap:14px}.ub .mk a{display:flex;transition:.25s}.ub .mk a:hover{transform:translateY(-2px)}.ub .ur>a:hover{text-decoration:underline}
.fl{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);border-radius:99px;padding:6px 12px;cursor:pointer;color:#fff;font:600 .8rem "DM Sans",sans-serif}.fl svg:last-child{width:10px;height:10px;stroke:#fff;fill:none;stroke-width:2.4}
.rgx{position:relative}.rm{position:absolute;right:0;top:calc(100% + 8px);display:none;flex-direction:column;padding:6px;background:#fff;border-radius:14px;box-shadow:0 20px 50px rgba(10,22,64,.3);z-index:9;min-width:130px}.rgx.open .rm{display:flex}footer .rm{top:auto;bottom:calc(100% + 8px);left:0;right:auto}
.rm button{display:flex;align-items:center;gap:10px;background:none;border:0;padding:9px 12px;border-radius:9px;cursor:pointer;font:600 .85rem "DM Sans",sans-serif;color:var(--ink)}.rm button:hover{background:var(--tint)}.rm .fi{box-shadow:0 0 0 1px var(--line)}
header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);transition:box-shadow .3s}header.sc{box-shadow:0 10px 30px rgba(10,22,64,.1)}
.bar{display:flex;align-items:center;gap:22px;height:78px}.lg{height:48px;width:auto}
nav{margin-left:auto}nav ul{display:flex;gap:2px;list-style:none;padding:0}
nav a,nav .t{display:flex;align-items:center;padding:10px 16px;border-radius:10px;text-decoration:none;color:var(--ink);font:600 .95rem "DM Sans",sans-serif;background:none;border:0;cursor:pointer;position:relative}
nav a:hover,nav .t:hover{color:var(--b2);background:var(--tint)}nav [aria-current]{color:var(--brand)}nav>ul>li>[aria-current]:after{content:"";position:absolute;left:16px;right:16px;bottom:3px;height:3px;border-radius:3px;background:var(--g)}
.has{position:relative}.t svg{width:11px;height:11px;margin-left:7px;stroke:currentColor;fill:none;stroke-width:2.4;transition:.25s}.has:hover .t svg{transform:rotate(180deg)}
.sm{position:absolute;top:100%;left:-60px;width:360px;padding:10px;border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:0 30px 70px rgba(10,22,64,.2);opacity:0;visibility:hidden;transform:translateY(8px);transition:.25s}
.has:hover .sm,.has:focus-within .sm,.has.open .sm{opacity:1;visibility:visible;transform:none}
.sm a{display:flex;gap:14px;align-items:center;padding:12px;border-radius:14px}.sm b{display:block;color:var(--ink);font:700 .98rem "Bricolage Grotesque",sans-serif}.sm small{color:var(--mut);font-size:.84rem;line-height:1.35;display:block}
.ham{display:none;background:none;border:1px solid var(--line);border-radius:12px;width:44px;height:44px;cursor:pointer}.ham i,.ham i:before{display:block;width:18px;height:2px;background:var(--ink);margin:auto;position:relative}.ham i:before{content:"";top:-6px;position:absolute;left:0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 26px;border-radius:99px;background:var(--g);background-size:200%;color:#fff;font-weight:600;text-decoration:none;border:0;cursor:pointer;transition:.4s;box-shadow:0 10px 26px rgba(23,53,131,.28)}
.btn:hover{background-position:100% 0;transform:translateY(-2px)}.btn.o{background:transparent;border:1.5px solid var(--brand);color:var(--brand);box-shadow:none}.btn.o:hover{background:var(--brand);color:#fff}.btn.y{background:#fff;color:var(--brand);box-shadow:none}
.row{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
section{padding:92px 0;position:relative}.tn{background:var(--tint);border-block:1px solid var(--line)}
.dk{background:linear-gradient(120deg,#0a1640,#173583 65%,#2a5bd7);text-align:center}.dk h2,.dk h3{color:#fff}
.dk .card{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.26);box-shadow:none}
.dk .card h3{color:#fff}.dk .card p,.dk .card li{color:#dbe4ff}
.dk .card .n{background:#fff;color:var(--brand)}
.dk .card:hover{border-color:#fff;box-shadow:0 22px 46px rgba(0,0,0,.28)}.dk .card:before{background:radial-gradient(260px circle at var(--cx,50%) var(--cy,0),rgba(255,255,255,.16),transparent 70%)}
.c{text-align:center;max-width:780px;margin:0 auto 48px}h2{font-size:clamp(1.9rem,4vw,3rem);line-height:1.1;letter-spacing:-.02em;margin-bottom:14px}h3{font-size:1.2rem;margin-bottom:8px}
.sub{color:var(--mut);font-size:1.12rem;max-width:62ch}.c .sub{margin:auto}.dk .sub{color:#dbe4ff;margin:0 auto}
.hero{padding:96px 0 76px;overflow:hidden}.hero h1{font-size:clamp(2.3rem,5.4vw,4.5rem);line-height:1.02;letter-spacing:-.03em;max-width:17ch;margin:18px 0}
.hero em,.cy{font-style:normal;background:var(--g);background-size:200%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:gs 6s linear infinite}@keyframes gs{to{background-position:200% 0}}
.pill{display:inline-block;padding:7px 16px;border:1px solid var(--line);border-radius:99px;background:#fff;font-size:.88rem;color:var(--brand);font-weight:600}
.hh{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.col{position:relative;height:500px;perspective:900px}.col figure{position:absolute;border-radius:22px;overflow:hidden;border:6px solid #fff;box-shadow:0 30px 60px rgba(10,22,64,.25);transition:transform .2s;background:var(--g)}
.col img{width:100%;height:100%;object-fit:cover}.col .f1{width:62%;height:62%;left:0;top:0;animation:bob 7s ease-in-out infinite}.col .f2{width:56%;height:50%;right:0;top:22%;animation:bob 8s -2s ease-in-out infinite}.col .f3{width:50%;height:42%;left:14%;bottom:0;animation:bob 9s -4s ease-in-out infinite}
@keyframes bob{50%{translate:0 -14px}}
.col b{position:absolute;z-index:3;padding:8px 16px;border-radius:99px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);box-shadow:0 10px 30px rgba(10,22,64,.18);font:700 .9rem "Bricolage Grotesque",sans-serif;color:var(--brand)}.col .k1{right:6%;top:6%}.col .k2{left:2%;top:58%}.col .k3{right:2%;bottom:8%}
.mq{overflow:hidden;padding:20px 0;background:var(--navy)}.mq div{display:flex;gap:56px;width:max-content;animation:mq 30s linear infinite;font:700 1.9rem "Bricolage Grotesque",sans-serif;white-space:nowrap;color:#fff}.mq span:nth-child(even){-webkit-text-stroke:1px #8fb0ff;color:transparent}@keyframes mq{to{transform:translateX(-50%)}}
.g{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}.g2{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}
.card{position:relative;padding:30px;border-radius:24px;background:#fff;border:1px solid var(--line);overflow:hidden;text-decoration:none;display:block;transition:transform .35s,box-shadow .35s,border-color .35s;box-shadow:0 4px 18px rgba(10,22,64,.05)}
.card:before{content:"";position:absolute;inset:0;background:radial-gradient(260px circle at var(--cx,50%) var(--cy,0),rgba(42,91,215,.12),transparent 70%);opacity:0;transition:.3s}.card:hover:before{opacity:1}.card:hover{transform:translateY(-6px);border-color:var(--sky);box-shadow:0 24px 50px rgba(23,53,131,.16)}
.card>*{position:relative}.card ul{padding-left:18px;display:grid;gap:6px;margin-top:10px}.lk{color:var(--b2);font-weight:700;display:inline-block;margin-top:8px}
.ic{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;margin-bottom:18px;background:var(--g);flex:none;box-shadow:0 10px 20px rgba(23,53,131,.25);transition:.4s}.card:hover .ic{rotate:8deg;scale:1.08}.ic.s{width:42px;height:42px;margin:0;border-radius:12px}.ic svg{width:26px;height:26px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.ic.s svg{width:20px;height:20px}
.n{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font:700 1.2rem "Bricolage Grotesque",sans-serif;background:var(--g);color:#fff;margin-bottom:14px}
.big{min-height:420px;display:flex;flex-direction:column;justify-content:flex-end;padding:0;border:0}.big .bi{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s}.big:hover .bi{transform:scale(1.08)}
.big:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,22,64,0) 10%,rgba(10,22,64,.94) 82%)}.big>div,.big>span{z-index:2;padding:0 28px}.big>span{padding-bottom:28px;font-weight:700;color:#fff}.big h3{color:#fff}.big p{color:#dbe4ff}.big .pv{color:#9fc0ff}
.pc{display:flex;flex-direction:column}.pc.f{background:linear-gradient(160deg,#173583,#0a1640);border-color:var(--brand)}.pc.f h3,.pc.f .p{color:#fff}.pc.f li,.pc.f .note,.pc.f p,.pc.f small{color:#cfd9ff}.pc.f .btn{background:#fff;color:var(--brand)}.pc .btn{margin-top:auto}.pc ul{margin-bottom:22px}.tag{min-height:1.4em;color:var(--b2);font-weight:700;font-size:.85rem}.pc.f .tag{color:#9fc0ff}
.p{font:700 2.2rem "Bricolage Grotesque",sans-serif;margin:6px 0;color:var(--ink)}.p small{font-size:1rem;color:var(--mut);font-weight:400}.note{font-size:.88rem;color:var(--mut)}.pc .note{min-height:1.3em}
.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.split p{margin-bottom:14px}.ph{border-radius:28px;overflow:hidden;min-height:340px;background:var(--g);box-shadow:0 30px 60px rgba(23,53,131,.2)}.ph img{width:100%;height:100%;min-height:340px;object-fit:cover}
.chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:34px}.chips button,.chips input{font:600 .95rem "DM Sans",sans-serif;color:var(--ink);padding:10px 20px;border-radius:99px;background:#fff;border:1px solid var(--line);cursor:pointer}.chips button[aria-pressed=true]{background:var(--brand);color:#fff;border-color:var(--brand)}.chips input{cursor:text;font-weight:400}
.pg{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px}
.pj{all:unset;box-sizing:border-box;cursor:pointer;border-radius:22px;overflow:hidden;background:#fff;border:1px solid var(--line);transition:.4s;display:block;box-shadow:0 4px 18px rgba(10,22,64,.06)}.pj:hover{transform:translateY(-8px);box-shadow:0 30px 60px rgba(23,53,131,.2);border-color:var(--sky)}.pj:focus-visible{outline:3px solid var(--sky)}
.th{aspect-ratio:16/10;position:relative;overflow:hidden;background:var(--g)}.th:before{content:attr(data-d);position:absolute;z-index:2;left:0;right:0;top:0;padding:9px 14px 9px 66px;background:#f4f6fc;border-bottom:1px solid var(--line);font-size:.78rem;color:var(--mut)}
.th:after{content:"";position:absolute;z-index:3;left:14px;top:12px;width:9px;height:9px;border-radius:50%;background:#ff5f57;box-shadow:15px 0 #febc2e,30px 0 #28c840}.th img{width:100%;height:100%;object-fit:cover;padding-top:34px;background:#fff;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}.pj:hover img{transform:scale(1.1)}
.bd{padding:22px}.bd small{color:var(--b2);font-weight:700}.bd h3{margin:6px 0}.bd p{font-size:.95rem}
details{border:1px solid var(--line);border-radius:16px;padding:18px 22px;margin:0 auto 12px;max-width:820px;background:#fff}summary{cursor:pointer;font:600 1.08rem "Bricolage Grotesque",sans-serif;color:var(--ink)}details p{margin-top:10px}
form{display:grid;gap:16px}.fr{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font-weight:600;margin-bottom:6px;font-size:.92rem;color:var(--ink)}.req{color:#c62850}
input,select,textarea{width:100%;font:inherit;color:var(--ink);background:#fff;border:1px solid #c9d4ee;border-radius:12px;padding:13px 15px}input:focus,select:focus,textarea:focus{border-color:var(--b2);outline:0;box-shadow:0 0 0 4px rgba(42,91,215,.18)}
.er{color:#c62850;font-size:.85rem;min-height:1em}#msg.ok{color:#127a4b}#msg.bad{color:#c62850}
dialog{margin:auto;max-width:560px;width:92%;border-radius:26px;padding:32px;background:#fff;color:var(--mut);border:0;box-shadow:0 40px 90px rgba(10,22,64,.4)}dialog::backdrop{background:rgba(10,22,64,.6);backdrop-filter:blur(5px)}dialog p{margin:10px 0}dialog h2{color:var(--ink)}
footer{background:var(--navy);color:#b8c4ea;padding:0 0 26px}.fc{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding:38px 42px;border-radius:28px;background:var(--g);margin:0 0 60px;transform:translateY(-50%);margin-bottom:10px}.fc h3{font-size:clamp(1.4rem,3vw,2.1rem);margin:0;color:#fff}
.fg2{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.1fr;gap:36px;padding-top:30px}footer h4{margin-bottom:14px;color:#fff;font-size:1rem}footer .fg2 a{display:block;color:#b8c4ea;text-decoration:none;padding:4px 0}footer .fg2 a:hover{color:#fff}.fg2 p{font-size:.95rem}.flg{height:50px;margin-bottom:16px;filter:brightness(0) invert(1)}
.fk{display:flex!important;align-items:center;gap:10px}.fk .fi{width:24px;height:16px}
.soc{display:flex;gap:10px;margin-top:16px}.soc a{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.25);display:grid!important;place-items:center;padding:0!important}.soc a:hover{background:var(--b2);border-color:var(--b2)}.soc svg{width:18px;height:18px;stroke:#fff;fill:none;stroke-width:1.8}
.fb{margin-top:44px;border-top:1px solid rgba(255,255,255,.14);padding-top:22px;font-size:.88rem;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.rv{opacity:0;transform:translateY(34px);transition:opacity .8s,transform .8s cubic-bezier(.2,.7,.2,1)}.rv.in{opacity:1;transform:none}
@media(max-width:900px){.hh,.split,.fg2{grid-template-columns:1fr}.col{height:380px}.ham{display:block}.fr{grid-template-columns:1fr}.ub .mk span,.ub .ur>a{display:none}.bar{height:68px}.lg{height:40px}
nav{position:absolute;top:100%;left:0;right:0;background:#fff;padding:14px;display:none;border-bottom:1px solid var(--line);box-shadow:0 20px 30px rgba(10,22,64,.12)}nav.open{display:block}nav ul{flex-direction:column}.sm{position:static;width:auto;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;padding:0 0 0 10px;display:none}.has.open .sm{display:block}.rt .btn{display:none}section{padding:68px 0}.fc{padding:28px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto}.rv{opacity:1;transform:none}}
.er:empty{display:none}

.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.tbc{display:contents}
.cx-d{display:grid;gap:12px;margin:0}.cx-d div{display:grid;grid-template-columns:150px 1fr;gap:12px;align-items:start}.cx-d dt{font-weight:600;color:var(--ink);font-size:.93rem}.cx-d dd{margin:0;font-size:.95rem}.cx-d a{color:var(--b2);font-weight:600;word-break:break-word}
.cxc{margin-bottom:12px}.cxc-h{display:flex;align-items:center;gap:12px;margin-bottom:14px}.cxc-h h3{margin:0}.cxc-h .fi{width:34px;height:23px;box-shadow:0 0 0 1px var(--line)}
/* clients: two lines moving in opposite directions */
.cl{display:grid;gap:18px;padding:6px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.cr{overflow:hidden;padding:8px 0}.ct{display:flex;width:max-content;will-change:transform}
.cr.l .ct{animation:clL 84s linear infinite}.cr.r .ct{animation:clR 98s linear infinite}
@keyframes clL{to{transform:translateX(-50%)}}@keyframes clR{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.cl:hover .ct,.cl:not(.on) .ct{animation-play-state:paused}
.cli{flex:none;display:flex;align-items:center;gap:14px;padding:14px 24px 14px 14px;margin-right:18px;border-radius:18px;background:#fff;border:1px solid var(--line);box-shadow:0 4px 18px rgba(10,22,64,.06);white-space:nowrap;transition:transform .3s,border-color .3s,box-shadow .3s}
.cli:hover{transform:translateY(-4px);border-color:var(--sky);box-shadow:0 18px 36px rgba(23,53,131,.16)}
.cli .mn{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--g);color:#fff;font:700 1.05rem "Bricolage Grotesque",sans-serif}
.cli b{display:block;font:700 1.06rem "Bricolage Grotesque",sans-serif;color:var(--ink);line-height:1.2}.cli small{color:var(--mut);font-size:.83rem}
.cli img{height:36px;width:auto;max-width:150px;object-fit:contain}
@media(max-width:900px){.cx-d div{grid-template-columns:1fr;gap:2px}}
@media(prefers-reduced-motion:reduce){.cr{overflow-x:auto}.ct{animation:none!important}.cli[aria-hidden=true]{display:none}.cl{-webkit-mask-image:none;mask-image:none}}

.dk .card .n{margin-inline:auto}
.gs{display:flex;flex-wrap:wrap;justify-content:center;gap:20px}.gs>.card{flex:1 1 210px;max-width:calc(25% - 15px)}.gs.g5>.card{max-width:calc(20% - 16px)}
@media(max-width:900px){.gs>.card,.gs.g5>.card{max-width:none;flex-basis:calc(50% - 10px)}}@media(max-width:560px){.gs>.card,.gs.g5>.card{flex-basis:100%}}

/* FAQ in two independent columns */
.fqc{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.fqc>div{display:grid;gap:14px;align-content:start}.fqc details{max-width:none;margin:0}
@media(max-width:900px){.fqc{grid-template-columns:1fr}}
/* keyword block: two-line heading + wider photo */
.c.wide{max-width:1100px}.c.wide h2{font-size:clamp(1.55rem,3.1vw,2.45rem);text-wrap:balance}
.split.kwx .ph{width:100%;justify-self:stretch;min-height:0;aspect-ratio:16/9}.split.kwx .ph img{min-height:0;height:100%}.split.kwx p{max-width:64ch}
@media(min-width:901px){.split.kwx{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:48px}}

/* logo tiles: every logo sits in the same box, whatever its shape */
.cli.lg{width:260px;height:124px;padding:12px 22px;justify-content:center}
.cli.lg img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}
@media(max-width:560px){.cli.lg{width:210px;height:100px;padding:10px 18px}}

/* ===== v7: plans, billing switch, popup, trust band, artwork ===== */
html:has(dialog[open]){overflow:hidden}
.cyc-w{display:flex;justify-content:center;margin:-18px 0 30px}
.cyc{display:inline-flex;padding:5px;border-radius:99px;background:#fff;border:1px solid var(--line);box-shadow:0 6px 20px rgba(10,22,64,.07)}
.cyc button{display:inline-flex;align-items:center;gap:8px;border:0;background:none;padding:10px 22px;border-radius:99px;cursor:pointer;font:600 .95rem "DM Sans",sans-serif;color:var(--ink);transition:.25s}
.cyc button[aria-pressed=true]{background:var(--brand);color:#fff;box-shadow:0 6px 16px rgba(23,53,131,.3)}
.cyc em{font-style:normal;font-size:.74rem;font-weight:700;padding:3px 9px;border-radius:99px;background:#ffe9c7;color:#8a4b00}.cyc button[aria-pressed=true] em{background:#f78f21;color:#fff}
.gdp .p .was{font-size:1.05rem;font-weight:500;color:#8b93b3;margin-right:10px;text-decoration:line-through}.pc.f .was{color:#9fb2ef}
.gdp .gdn{min-height:2.8em;line-height:1.4}
.tri{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;margin:6px 0 4px;padding:7px 14px;border-radius:99px;background:#e8f6ef;color:#0f6b43;font:700 .85rem "DM Sans",sans-serif}
.tri svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.pc.f .tri{background:rgba(255,255,255,.16);color:#fff}
.gdp ul li:first-child{font-weight:700;color:var(--ink)}.pc.f ul li:first-child{color:#fff}
.gdp ul li:last-child{color:#0f6b43;font-weight:600}.pc.f ul li:last-child{color:#a9f0cd}
.exn{max-width:860px;margin:10px auto 0!important;padding:12px 18px;border-radius:14px;background:var(--tint);border:1px dashed #b9c7ef;color:var(--ink)}
.trust{display:grid;grid-template-columns:repeat(3,1fr);margin:34px auto 0;max-width:980px;border-radius:22px;background:#fff;border:1px solid var(--line);box-shadow:0 10px 30px rgba(10,22,64,.07)}
.trust>div{display:flex;align-items:center;justify-content:center;gap:14px;padding:20px 16px;text-align:left}.trust>div+div{border-left:1px solid var(--line)}.trust .ic{margin:0}.trust b{font:700 1.05rem "Bricolage Grotesque",sans-serif;color:var(--ink);line-height:1.25}
.tr-s{padding:38px 0 0}.tr-s .trust{margin-top:0}
@media(max-width:760px){.trust{grid-template-columns:1fr}.trust>div{justify-content:flex-start;padding:14px 20px}.trust>div+div{border-left:0;border-top:1px solid var(--line)}.cyc button{padding:9px 16px;font-size:.9rem}}
/* artwork */
.ph.art{position:relative;display:flex;align-items:flex-end;justify-content:center;min-height:0;aspect-ratio:auto;padding:46px 20px 0;background:linear-gradient(165deg,#e6edff,#fff 72%);border:1px solid var(--line);box-shadow:0 30px 60px rgba(23,53,131,.14)}
.ph.art:before{content:"";position:absolute;width:64%;aspect-ratio:1;left:50%;top:-14%;translate:-50% 0;border-radius:50%;background:var(--g);opacity:.14}
.ph.art:after{content:"";position:absolute;width:54px;height:54px;right:9%;top:13%;border-radius:50%;background:#f78f21;opacity:.95;animation:bob 6s ease-in-out infinite}
.ph.art img{position:relative;z-index:1;width:100%;height:auto;min-height:0;object-fit:contain}
.split.kwx .ph.cut{position:relative;aspect-ratio:1/1;max-width:520px;max-height:520px;width:100%;justify-self:center;background:none;box-shadow:none;border-radius:0;overflow:visible}
.split.kwx .ph.cut:before{content:"";position:absolute;inset:6%;border-radius:50%;background:radial-gradient(circle,rgba(93,141,255,.30),rgba(93,141,255,0) 68%);animation:bob 8s ease-in-out infinite}
.split.kwx .ph.cut img{position:relative;width:100%;height:100%;object-fit:contain}
@media(min-width:901px){.split.kwx:has(.cut){grid-template-columns:minmax(0,1fr) minmax(0,.9fr)}}
/* plan popup */
dialog.pd{max-width:700px;width:94%;max-height:94vh;padding:0;overflow:hidden}
.pd-b{position:relative;max-height:94vh;overflow:auto;padding:34px 34px 26px;overscroll-behavior:contain}
.pd-x{position:absolute;right:16px;top:14px;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--ink);font:400 1.6rem/1 "DM Sans",sans-serif;cursor:pointer}.pd-x:hover{background:var(--tint)}
.pd-h{margin-bottom:20px;padding-right:44px}.pd-h h2{font-size:clamp(1.5rem,3.4vw,2rem);margin:8px 0 10px}
.pd-k{display:inline-block;padding:6px 14px;border-radius:99px;background:#e8f6ef;color:#0f6b43;font:700 .85rem "DM Sans",sans-serif}
.pd-f{display:flex;flex-wrap:wrap;gap:8px;margin:0}.pd-f span{padding:5px 12px;border-radius:99px;background:var(--tint);border:1px solid var(--line);font-size:.86rem;color:var(--brand);font-weight:600}
.pd-pr{margin:12px 0 0!important;font-size:.98rem}.pd-pr b{font:700 1.5rem "Bricolage Grotesque",sans-serif;color:var(--ink)}
.pd .hint{font-size:.92rem;margin:0 0 12px}
fieldset.hrs{border:1px solid var(--line);border-radius:18px;padding:16px 18px 18px;margin:0;min-width:0;background:var(--tint)}fieldset.hrs legend{font:700 1.05rem "Bricolage Grotesque",sans-serif;color:var(--ink);padding:0 8px}
.hr-t{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:12px}.hr-t>div{flex:1 1 200px}.hc{margin:0 0 10px!important;font-weight:700;color:#c62850}.hc.ok{color:#0f6b43}
.hg{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
.hb{padding:10px 4px;border-radius:11px;border:1px solid #c9d4ee;background:#fff;color:var(--ink);font:600 .86rem "DM Sans",sans-serif;cursor:pointer;transition:.2s}.hb:hover{border-color:var(--b2)}
.hb[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 6px 14px rgba(23,53,131,.28)}
.hs{margin:12px 0 0!important;font-size:.95rem}.hs b{color:var(--ink)}
.pd-bill{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.pd-bill>span{font-weight:600;color:var(--ink)}
.pd .btn{width:100%;padding:15px 26px;font-size:1.05rem}.pd .row .btn{width:auto;flex:1 1 140px}
.pd-s{margin:4px 0 0!important;text-align:center;font-size:.88rem}
.pd-ex{margin:18px 0 0!important;padding-top:14px;border-top:1px solid var(--line);font-size:.8rem;color:#6a7294}
.er.ok{color:#127a4b;font-weight:600}.er.bad{color:#c62850;font-weight:600}#pd-err:not(:empty),#pd-m:not(:empty){padding:2px 0}
.pd-h3{font-size:1.35rem;margin:0 0 14px}
.pd-due{padding:18px 20px;border-radius:18px;background:linear-gradient(160deg,#173583,#0a1640);color:#dbe4ff;margin-bottom:16px}.pd-due span{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:#9fc0ff;font-weight:700}.pd-due b{display:block;font:700 2.6rem/1.1 "Bricolage Grotesque",sans-serif;color:#fff;margin:2px 0 8px}.pd-due p{margin:0!important;color:#dbe4ff}.pd-due strong{color:#fff}
.pd-d{margin:0 0 14px;display:grid;gap:0;border:1px solid var(--line);border-radius:16px;overflow:hidden}.pd-d>div{display:grid;grid-template-columns:130px 1fr;gap:12px;padding:12px 16px}.pd-d>div+div{border-top:1px solid var(--line)}.pd-d dt{font-weight:600;color:var(--ink);font-size:.92rem}.pd-d dd{margin:0;font-size:.95rem}.pd-d small{color:var(--mut)}
.pd-r{margin-top:14px}
@media(max-width:620px){.pd-b{padding:26px 18px 20px}.hg{grid-template-columns:repeat(4,1fr)}.pd-d>div{grid-template-columns:1fr;gap:2px}dialog.pd{width:96%}}
@media(max-width:700px){.tbc{display:none}}

[hidden]{display:none!important}
.pc .tag{display:block}
.g+.note.c{margin-top:22px}
.trust{max-width:1060px}.trust>div{padding:20px 12px}

/* India: the flag opens the separate India website (in/) */
.rm a.rmi{display:flex;align-items:center;gap:10px;margin-top:4px;padding:11px 12px 9px;border-top:1px solid var(--line);border-radius:0 0 9px 9px;text-decoration:none;font:600 .85rem "DM Sans",sans-serif;color:var(--ink)}.rm a.rmi:hover{background:var(--tint)}

/* very small phones (320px): fit the flag row and the portfolio cards */
@media(max-width:380px){.ub .w,.ub .mk,.ub .ur{gap:8px}.pg{grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr))}}
@media(max-width:380px){.g2{grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr))}}

/* phone number with a country code picker */
.phn{display:flex;align-items:stretch;border:1px solid #c9d4ee;border-radius:12px;background:#fff;overflow:hidden}
.phn:focus-within{border-color:var(--b2);box-shadow:0 0 0 4px rgba(42,91,215,.18)}
.phn .pf{display:grid;place-items:center;padding-left:12px}.phn .pf .fi{width:26px;height:17px;box-shadow:0 0 0 1px var(--line)}
.phn select.pcs{width:auto;flex:none;border:0;border-radius:0;background:transparent;padding:13px 6px 13px 8px;font-weight:600;color:var(--ink);cursor:pointer}
.phn select.pcs:focus{box-shadow:none;outline:0}
.phn input{border:0;border-radius:0;border-left:1px solid var(--line);flex:1 1 auto;min-width:0}.phn input:focus{box-shadow:none;outline:0}

/* city lists and the links to the other countries' service pages */
.chips.cityc{gap:8px}.chips.cityc span{padding:8px 16px;border-radius:99px;background:#fff;border:1px solid var(--line);font:600 .92rem "DM Sans",sans-serif;color:var(--ink)}
.tn .chips.cityc span{background:#fff}
.alsoc{margin:0;text-align:center;color:var(--mut)}.alsoc a{color:var(--b2);font-weight:700;text-decoration:none}.alsoc a:hover{text-decoration:underline}
section:has(>.w>.alsoc){padding:34px 0}
.g.mkg{grid-template-columns:repeat(auto-fit,minmax(208px,1fr))}

/* v11: service-page hero with a picture, country photo banner */
.hero.hi .hh{align-items:center}
.hf{margin:0;border-radius:28px;overflow:hidden;box-shadow:0 30px 60px rgba(23,53,131,.22);background:var(--g);aspect-ratio:4/3}
.hf img{width:100%;height:100%;object-fit:cover}
.hero.hi h1{max-width:15ch}
.cph{margin:0 0 30px;border-radius:26px;overflow:hidden;height:clamp(190px,32vw,340px);background:var(--g);box-shadow:0 24px 50px rgba(23,53,131,.16)}
.cph img{width:100%;height:100%;object-fit:cover}
.ph:not(.cut):not(.art) img{aspect-ratio:3/2}
@media(max-width:900px){.hf{aspect-ratio:16/10}}

.g4{grid-template-columns:repeat(4,1fr)}@media(max-width:1000px){.g4{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.g4{grid-template-columns:1fr}}

.pfh{display:grid;grid-template-columns:1.05fr .95fr;gap:36px;align-items:center;text-align:left}.pfh .row{justify-content:flex-start}.pfd{width:100%;height:auto;max-width:560px;justify-self:end}@media(max-width:860px){.pfh{grid-template-columns:1fr;text-align:center}.pfh .row{justify-content:center}.pfd{max-width:400px;justify-self:center}}

.nx{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:10px}.nx li{display:flex;align-items:center;gap:12px;padding:10px 16px;min-height:52px;border:1px solid var(--line);border-radius:14px;background:#fff;font-size:.95rem;line-height:1.4;color:var(--ink);box-shadow:0 2px 10px rgba(10,22,64,.04)}.nx b{width:28px;height:28px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--g);color:#fff;font:700 .85rem "Bricolage Grotesque",sans-serif}
