@import url(https://fonts.googleapis.com/css2?family=Outfit:wght@200;300;400;500;600;700;800&display=swap);:root{--paper:#f7f6fb;--paper-2:#edecf5;--card:#ffffff;--ink:#3f4142;--ink-deep:#34383a;--ink-soft:#6d7072;--lilac:#a099d3;--lilac-2:#8b83c8;--lilac-d:#6f66b8;--line:rgba(63,65,66,.14);--line-2:rgba(63,65,66,.08);--shadow:0 24px 60px -28px rgba(63,65,66,.42);--shadow-s:0 12px 34px -20px rgba(63,65,66,.45);--max:1200px;--r:16px;--ease:cubic-bezier(.22,.61,.36,1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:'Outfit',system-ui,sans-serif;background:var(--paper);color:var(--ink);line-height:1.6;overflow-x:clip;-webkit-font-smoothing:antialiased}body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.022;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.wrap{max-width:var(--max);margin:0 auto;padding:0 clamp(20px,5vw,44px)}section{position:relative}.eyebrow{display:inline-flex;align-items:center;gap:.6em;font-size:.74rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--lilac-d)}.eyebrow::before{content:"";width:26px;height:1px;background:var(--lilac)}.eyebrow.center::after{content:"";width:26px;height:1px;background:var(--lilac)}h1,h2,h3{font-weight:300;letter-spacing:-.02em;line-height:1.04}.h-xl{font-size:clamp(2.7rem,7vw,5.4rem)}.h-lg{font-size:clamp(2rem,4.6vw,3.6rem)}.h-md{font-size:clamp(1.5rem,3vw,2.2rem)}em{font-style:italic;color:var(--lilac-d)}.muted{color:var(--ink-soft)}.numeral{font-size:clamp(3rem,9vw,7rem);font-weight:200;color:var(--line);line-height:.8;letter-spacing:-.04em}.btn{display:inline-flex;align-items:center;gap:.6em;font-weight:600;font-size:.98rem;letter-spacing:.01em;padding:1rem 1.6rem;border-radius:100px;border:1px solid #fff0;cursor:pointer;transition:.35s var(--ease);white-space:nowrap}.btn svg{width:17px;height:17px}.btn-primary{background:var(--lilac);color:#26282a;box-shadow:0 14px 30px -14px rgb(160 153 211 / .95)}.btn-primary:hover{background:var(--lilac-2);color:#1f2123;transform:translateY(-2px)}.btn-ghost{background:#fff0;color:var(--ink);border-color:var(--line)}.btn-ghost:hover{border-color:var(--ink);background:var(--ink);color:#fff}.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{background:var(--ink-deep);transform:translateY(-2px)}.topbar{background:var(--ink-deep);color:#cfd1d3;font-size:.8rem;font-weight:400}.topbar .wrap{display:flex;justify-content:space-between;align-items:center;gap:14px;min-height:38px;flex-wrap:wrap}.topbar a{color:#eceef0;font-weight:500}.topbar a:hover{color:var(--lilac)}.topbar .tb-r{display:flex;gap:20px;align-items:center}.topbar .dot{color:var(--lilac)}@media(max-width:640px){.topbar .tb-l{display:none}.topbar .wrap{justify-content:center}}.nav{position:sticky;top:0;z-index:100;background:rgb(247 246 251 / .86);backdrop-filter:blur(14px);border-bottom:1px solid var(--line-2);transition:.3s}.nav.scrolled{box-shadow:0 10px 30px -22px rgb(63 65 66 / .55)}.nav .wrap{display:flex;align-items:center;justify-content:space-between;min-height:78px;gap:18px}.brand{display:inline-flex;align-items:center;text-decoration:none;line-height:1;white-space:nowrap}.brand img{height:58px;width:auto;display:block}@media(max-width:520px){.brand img{height:44px}}.nav-links{display:flex;align-items:center;gap:34px}.nav-links a{font-weight:500;font-size:.96rem;color:var(--ink-soft);transition:.2s;position:relative}.nav-links a:hover{color:var(--ink)}.nav-links a::after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:2px;background:var(--lilac);transition:.3s}.nav-links a:hover::after{width:100%}.nav-cta{display:flex;align-items:center;gap:14px}.burger{display:none;background:none;border:0;cursor:pointer;width:44px;height:44px;flex-direction:column;justify-content:center;gap:5px;align-items:center}.burger span{width:24px;height:2px;background:var(--ink);transition:.3s}.burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.burger.open span:nth-child(2){opacity:0}.burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media(max-width:940px){.nav-links,.nav-cta .btn{display:none}.burger{display:flex}}.drawer{position:fixed;inset:0;z-index:200;pointer-events:none;visibility:hidden}.drawer[data-open="true"]{pointer-events:auto;visibility:visible}.drawer .scrim{position:absolute;inset:0;background:rgb(52 56 58 / .55);opacity:0;transition:.35s}.drawer[data-open="true"] .scrim{opacity:1}.drawer .panel{position:absolute;top:0;right:0;height:100%;width:min(85vw,340px);background:var(--paper);box-shadow:var(--shadow);transform:translateX(100%);transition:.4s var(--ease);display:flex;flex-direction:column;padding:26px}.drawer[data-open="true"] .panel{transform:none}.drawer .panel .top{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.drawer .panel .brand img{height:42px}.drawer .x{background:none;border:0;font-size:1.6rem;cursor:pointer;line-height:1;color:var(--ink)}.drawer .panel a{padding:15px 4px;border-bottom:1px solid var(--line-2);font-size:1.12rem;font-weight:400}.drawer .panel .btn{margin-top:24px;justify-content:center}.hero{padding:clamp(48px,7vw,84px) 0 clamp(56px,7vw,92px);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,64px);align-items:center}.hero-copy .eyebrow{margin-bottom:22px}.hero h1{margin-bottom:22px}.hero h1 .thin{display:block;font-weight:200;color:var(--ink-soft)}.hero-lead{font-size:clamp(1.05rem,1.5vw,1.22rem);color:var(--ink-soft);max-width:36ch;margin-bottom:30px}.hero-btns{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:34px}.hero-badges{display:flex;gap:26px;flex-wrap:wrap}.hero-badges .b{display:flex;flex-direction:column;gap:2px}.hero-badges .b b{font-size:1.7rem;font-weight:600;letter-spacing:-.02em}.hero-badges .b span{font-size:.78rem;color:var(--ink-soft);letter-spacing:.03em}.hero-visual{position:relative}.hero-visual .frame{border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:4/4.4;background:var(--paper-2) center/cover}.hero-visual .frame img{width:100%;height:100%;object-fit:cover}.hero-visual .tag{position:absolute;left:-14px;bottom:26px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px 18px;box-shadow:var(--shadow-s);display:flex;align-items:center;gap:12px;max-width:230px}.hero-visual .tag .ico{width:40px;height:40px;border-radius:10px;background:var(--lilac);color:#2b2d2f;display:grid;place-items:center;flex:none}.hero-visual .tag .ico svg{width:20px;height:20px}.hero-visual .tag b{display:block;font-size:.95rem}.hero-visual .tag span{font-size:.76rem;color:var(--ink-soft)}.hero-visual .est{position:absolute;top:20px;right:-10px;background:var(--ink);color:#fff;border-radius:12px;padding:12px 16px;text-align:center;box-shadow:var(--shadow-s)}.hero-visual .est b{display:block;font-size:1.35rem;font-weight:700;color:var(--lilac)}.hero-visual .est span{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:#c6c8ca}@media(max-width:860px){.hero-grid{grid-template-columns:1fr;gap:34px}.hero-visual{order:2}.hero-visual .frame{aspect-ratio:4/3.4}}.marquee{background:var(--ink);color:#e6e7e9;overflow:hidden;padding:16px 0;border-top:1px solid rgb(255 255 255 / .06)}.marquee .track{display:flex;gap:0;white-space:nowrap;animation:scroll 34s linear infinite;width:max-content}.marquee .track span{display:inline-flex;align-items:center;font-size:1rem;font-weight:300;letter-spacing:.02em;padding:0 26px}.marquee .track span::after{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--lilac);margin-left:26px}@keyframes scroll{to{transform:translateX(-50%)}}.sec-head{max-width:640px;margin-bottom:clamp(34px,5vw,54px)}.sec-head.center{margin-left:auto;margin-right:auto;text-align:center}.sec-head .eyebrow{margin-bottom:18px}.sec-head p{margin-top:16px;color:var(--ink-soft);font-size:1.06rem}.pad{padding:clamp(64px,9vw,120px) 0}.services{background:var(--paper)}.srow{display:grid;grid-template-columns:auto 1fr auto;gap:clamp(20px,4vw,54px);align-items:center;padding:clamp(26px,4vw,40px) 0;border-top:1px solid var(--line)}.srow:last-child{border-bottom:1px solid var(--line)}.srow .n{font-size:1rem;font-weight:600;color:var(--lilac-d);letter-spacing:.1em}.srow .body{max-width:56ch}.srow .body h3{font-size:clamp(1.5rem,3vw,2.15rem);margin-bottom:10px;font-weight:400}.srow .body p{color:var(--ink-soft)}.srow .tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.srow .tags span{font-size:.78rem;padding:5px 12px;border:1px solid var(--line);border-radius:100px;color:var(--ink-soft)}.srow .art{width:220px;height:150px;border-radius:14px;overflow:hidden;flex:none;box-shadow:var(--shadow-s);background:var(--paper-2) center/cover}.srow .art img{width:100%;height:100%;object-fit:cover;transition:.6s var(--ease)}.srow:hover .art img{transform:scale(1.07)}@media(max-width:820px){.srow{grid-template-columns:auto 1fr;gap:16px 20px}.srow .art{grid-column:1/-1;width:100%;height:190px;order:3;margin-top:6px}}.caps{background:var(--paper-2)}.cap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cap{background:var(--card);border:1px solid var(--line-2);border-radius:var(--r);padding:26px;transition:.35s var(--ease)}.cap:hover{transform:translateY(-5px);box-shadow:var(--shadow-s);border-color:var(--line)}.cap .ico{width:48px;height:48px;border-radius:12px;background:rgb(160 153 211 / .2);color:var(--lilac-d);display:grid;place-items:center;margin-bottom:16px}.cap .ico svg{width:24px;height:24px}.cap h4{font-size:1.14rem;font-weight:600;margin-bottom:6px}.cap p{font-size:.94rem;color:var(--ink-soft)}@media(max-width:820px){.cap-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.cap-grid{grid-template-columns:1fr}}.process{background:var(--ink);color:#f2f2f3}.process .eyebrow{color:#c9c3ea}.process .eyebrow::before,.process .eyebrow.center::after{background:var(--lilac)}.process .sec-head p{color:#c4c6c8}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.step{border-top:2px solid rgb(255 255 255 / .16);padding-top:20px}.step .n{font-size:2.2rem;font-weight:200;color:var(--lilac);line-height:1;margin-bottom:14px}.step h4{font-size:1.16rem;font-weight:600;margin-bottom:8px}.step p{font-size:.92rem;color:#bcbfc1}@media(max-width:820px){.steps{grid-template-columns:repeat(2,1fr);gap:26px}}@media(max-width:460px){.steps{grid-template-columns:1fr}}.coverage .cov-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,60px);align-items:center}.cov-map{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:26px;box-shadow:var(--shadow-s)}.cov-map svg{width:100%;height:auto;display:block}.cov-list{columns:2;gap:14px;margin:22px 0 26px}.cov-list li{list-style:none;padding:7px 0;font-size:.96rem;color:var(--ink-soft);display:flex;align-items:center;gap:9px;break-inside:avoid}.cov-list li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--lilac);flex:none}@media(max-width:820px){.coverage .cov-grid{grid-template-columns:1fr}.cov-map{order:2}}.why{background:var(--paper-2)}.why-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(30px,5vw,60px);align-items:center}.why-list{display:grid;gap:6px;margin-top:10px}.why-item{display:flex;gap:16px;padding:18px 0;border-bottom:1px solid var(--line-2)}.why-item .ci{width:34px;height:34px;border-radius:9px;background:var(--lilac);color:#2b2d2f;display:grid;place-items:center;flex:none}.why-item .ci svg{width:18px;height:18px}.why-item h4{font-size:1.08rem;font-weight:600;margin-bottom:3px}.why-item p{font-size:.92rem;color:var(--ink-soft)}.why-photo{border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);aspect-ratio:3/3.6;background:var(--paper) center/cover;position:relative}.why-photo img{width:100%;height:100%;object-fit:cover}.stat-band{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:clamp(40px,5vw,60px);border-top:1px solid var(--line);padding-top:34px}.stat b{font-size:clamp(2.2rem,4.6vw,3.2rem);font-weight:600;letter-spacing:-.03em;display:block;white-space:nowrap}.stat b .u{color:var(--lilac-d)}.stat span{font-size:.86rem;color:var(--ink-soft);letter-spacing:.02em}@media(max-width:820px){.why-grid{grid-template-columns:1fr}.why-photo{order:-1;aspect-ratio:3/2.4}.stat-band{grid-template-columns:repeat(2,1fr);gap:26px}}.tests .t-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.tcard{background:var(--card);border:1px solid var(--line-2);border-radius:var(--r);padding:28px;display:flex;flex-direction:column;gap:16px}.tcard .stars{color:var(--lilac-d);letter-spacing:3px;font-size:.9rem}.tcard p{font-size:1rem;color:var(--ink);line-height:1.65}.tcard .who{display:flex;align-items:center;gap:12px;margin-top:auto}.tcard .who .av{width:42px;height:42px;border-radius:50%;background:var(--lilac);color:#2b2d2f;display:grid;place-items:center;font-weight:700;font-size:.95rem;flex:none;letter-spacing:.02em}.tcard .who b{font-size:.95rem;display:block}.tcard .who span{font-size:.8rem;color:var(--ink-soft)}@media(max-width:820px){.tests .t-grid{grid-template-columns:1fr}}.cta{position:relative;color:#f4f4f5;overflow:hidden}.cta .cta-bg{position:absolute;inset:0;z-index:0}.cta .cta-bg img{width:100%;height:100%;object-fit:cover}.cta .cta-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,rgb(52 56 58 / .94) 30%,rgb(90 82 150 / .78))}.cta .wrap{position:relative;z-index:1;text-align:center;padding:clamp(64px,9vw,110px) 0}.cta h2{margin:0 auto 18px;max-width:16ch}.cta p{color:#d6d7d9;max-width:48ch;margin:0 auto 32px;font-size:1.08rem}.cta .btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.cta .btn-ghost{color:#fff;border-color:rgb(255 255 255 / .42)}.cta .btn-ghost:hover{background:#fff;color:var(--ink);border-color:#fff}.enquiry{background:var(--paper)}.enq-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(34px,5vw,64px)}.enq-info h2{margin-bottom:18px}.enq-info>p{color:var(--ink-soft);max-width:42ch;margin-bottom:28px}.enq-contacts{display:grid;gap:14px}.enq-contacts .row{display:flex;align-items:center;gap:14px;background:var(--card);border:1px solid var(--line-2);border-radius:12px;padding:16px 18px;transition:.25s var(--ease)}.enq-contacts a.row:hover{border-color:var(--lilac);transform:translateY(-2px);box-shadow:var(--shadow-s)}.enq-contacts .row .ci{width:42px;height:42px;border-radius:10px;background:rgb(160 153 211 / .2);color:var(--lilac-d);display:grid;place-items:center;flex:none}.enq-contacts .row .ci svg{width:20px;height:20px}.enq-contacts .row b{display:block;font-size:.98rem}.enq-contacts .row span{font-size:.86rem;color:var(--ink-soft);word-break:break-word}form.card-form{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:clamp(24px,3vw,36px);box-shadow:var(--shadow-s)}.field{margin-bottom:16px}.field label{display:block;font-size:.84rem;font-weight:500;margin-bottom:7px;color:var(--ink-soft)}.field input,.field select,.field textarea{width:100%;font-family:inherit;font-size:.98rem;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:13px 15px;transition:.25s}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--lilac);box-shadow:0 0 0 3px rgb(160 153 211 / .28)}.field textarea{resize:vertical;min-height:110px}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}form .btn{width:100%;justify-content:center;margin-top:6px}.form-done{display:none;text-align:center;padding:20px;color:var(--lilac-d);font-weight:600}form.done .form-done{display:block}form.done .fields{display:none}@media(max-width:820px){.enq-grid{grid-template-columns:1fr}.two{grid-template-columns:1fr}}.foot{background:var(--ink-deep);color:#c3c5c7;padding:clamp(48px,6vw,72px) 0 30px}.foot .brand img{height:64px}.foot p.blurb{margin-top:18px;max-width:34ch;font-size:.94rem;color:#a4a7a9}.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;margin-bottom:40px}.foot h5{font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;color:#8b8e90;margin-bottom:16px;font-weight:600}.foot ul{list-style:none;display:grid;gap:10px}.foot ul a{color:#c3c5c7;font-size:.95rem;transition:.2s}.foot ul a:hover{color:var(--lilac)}.foot-bot{border-top:1px solid rgb(255 255 255 / .1);padding-top:22px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;font-size:.84rem;color:#8b8e90}.foot-bot a{color:#c3c5c7}.foot-ds{text-align:center;margin-top:22px;font-size:.86rem;color:#8b8e90}.foot-ds a{color:var(--lilac);font-weight:600;text-decoration:none;transition:.2s}.foot-ds a:hover{color:var(--lilac-2);text-decoration:underline}@media(max-width:820px){.foot-grid{grid-template-columns:1fr 1fr}.foot-grid .fcol-1{grid-column:1/-1}}@media(max-width:480px){.foot-grid{grid-template-columns:1fr}}.fab{display:none;position:fixed;right:16px;bottom:16px;z-index:120;background:var(--lilac);color:#26282a;width:58px;height:58px;border-radius:50%;align-items:center;justify-content:center;box-shadow:0 14px 30px -10px rgb(160 153 211 / .95)}.fab svg{width:24px;height:24px}@media(max-width:940px){.fab{display:flex}.foot{padding-bottom:92px}}html.js .reveal{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease),transform .8s var(--ease)}html.js .reveal.in{opacity:1;transform:none}.reveal.d1{transition-delay:.08s}.reveal.d2{transition-delay:.16s}.reveal.d3{transition-delay:.24s}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html.js .reveal{opacity:1;transform:none}}