@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');:root{--ink:#102846;--muted:#58718b;--line:rgba(255,255,255,.62);--accent:#2076cc;--light:#f5fbff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:hidden;background:linear-gradient(145deg,#e7f3ff 0%,#f8fcff 34%,#e5f5f5 68%,#e9edff 100%);color:var(--ink);font-family:'DM Sans',sans-serif;line-height:1.6}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.14;letter-spacing:-.045em}a{color:inherit;text-decoration:none}.ambient{position:absolute;pointer-events:none;filter:blur(15px);border-radius:50%;opacity:.55;z-index:0}.a{width:440px;height:440px;top:100px;right:-140px;background:radial-gradient(circle,#9ed8ff,transparent 70%)}.b{width:520px;height:520px;top:630px;left:-240px;background:radial-gradient(circle,#c7c4ff,transparent 70%)}.c{width:500px;height:500px;top:2200px;right:-240px;background:radial-gradient(circle,#a3e8e4,transparent 70%)}.glass{background:linear-gradient(135deg,rgba(255,255,255,.74),rgba(255,255,255,.31));border:1px solid rgba(255,255,255,.85);box-shadow:0 18px 50px rgba(52,101,151,.10),inset 0 1px 0 rgba(255,255,255,.85);backdrop-filter:blur(24px) saturate(150%);-webkit-backdrop-filter:blur(24px) saturate(150%)}.nav{position:sticky;top:14px;z-index:30;max-width:1200px;margin:14px auto 0;padding:13px 21px;border-radius:22px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;font-family:Manrope,sans-serif;font-weight:800;font-size:18px;letter-spacing:.035em}.brand small{font-size:10px;color:#477fa9}.brand-icon{display:grid;place-items:center;background:linear-gradient(145deg,#327bd1,#53c8c7);border-radius:13px;color:white;width:38px;height:38px;font-size:27px;font-weight:800;line-height:1}.brand-icon span{color:#bffcf6}.nav nav{display:flex;align-items:center;gap:27px;font-size:13px;font-weight:700}.nav nav a:hover,.footer-links a:hover{color:#2175c8}.nav-button{padding:11px 17px;border-radius:13px;background:#163c68;color:white!important}.menu{display:none;border:0;background:none;font-size:24px;color:var(--ink)}main,footer{position:relative;z-index:1}.hero{max-width:1220px;margin:auto;min-height:690px;display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:20px;padding:95px 28px 90px}.eyebrow,.kicker{font-size:11px;font-weight:800;letter-spacing:.18em;color:#337cad}.eyebrow{display:flex;align-items:center;gap:12px}.pulse{width:9px;height:9px;border-radius:50%;background:#3ccbbf;box-shadow:0 0 0 6px #3ccbbf20}.hero h1{font-size:clamp(60px,6.8vw,98px);max-width:700px;margin:24px 0}.gradient{background:linear-gradient(100deg,#3278cc,#31a5aa);background-clip:text;-webkit-background-clip:text;color:transparent}.lead{font-size:18px;color:#526c86;max-width:580px;line-height:1.8}.buttons,.contact-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:33px}.btn{display:inline-flex;align-items:center;gap:22px;border-radius:16px;padding:14px 22px;font-weight:700;font-size:13px;transition:transform .2s,box-shadow .2s}.btn:hover{transform:translateY(-3px)}.primary{color:white;background:linear-gradient(125deg,#1d65b3,#287dc9);box-shadow:0 12px 25px #2173c535}.ghost{background:#ffffff75;border:1px solid white;color:#23577e}.hero-micro{display:flex;align-items:center;gap:15px;margin-top:60px;font-size:10px;letter-spacing:.16em;font-weight:800;color:#7c91a7}.hero-micro i{width:4px;height:4px;background:#7c91a7;border-radius:50%}.hero-visual{height:500px;position:relative;display:grid;place-items:center}.halo{position:absolute;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#ffffff 0%,#b9e2ff 32%,#b4c9f5 56%,#a2eee1 77%,transparent 78%);filter:blur(2px);box-shadow:0 30px 80px #6c9fc533}.visual-main{width:370px;min-height:320px;padding:34px;border-radius:30px;position:relative;transform:rotate(-6deg)}.tiny{font-size:10px;letter-spacing:.15em;font-weight:800;color:#4386ae}.visual-title{font-family:Manrope;font-size:37px;font-weight:800;line-height:1.25;margin:40px 0 30px;letter-spacing:-.055em}.visual-title em{font-style:normal;color:#2586bb}.visual-lines{display:flex;gap:8px}.visual-lines span{height:5px;background:#6dc5d8;border-radius:8px;width:60px}.visual-lines span:nth-child(2){background:#95b9f1;width:100px}.visual-lines span:nth-child(3){background:#d3e5f4;width:42px}.visual-bottom{font-size:10px;letter-spacing:.09em;font-weight:800;margin-top:38px;color:#51789c}.visual-bottom b{padding:0 8px;color:#3aa7b6}.floating{position:absolute;padding:13px 18px;border-radius:16px;font-size:12px;font-weight:700}.float-one{top:42px;right:-6px;transform:rotate(7deg)}.float-two{bottom:48px;left:-14px;transform:rotate(4deg)}.small-icon{color:#168dba;margin-right:8px}.section{max-width:1200px;margin:auto;padding:100px 28px;scroll-margin-top:100px}.section-heading{display:flex;justify-content:space-between;gap:45px;align-items:end;margin-bottom:35px}.section-heading h2,.section h2{font-size:clamp(38px,4.5vw,58px);margin:14px 0}.section h2 span{color:#3189b7}.section-heading>p{max-width:390px;color:var(--muted);font-size:15px;line-height:1.85}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service{min-height:300px;border-radius:25px;padding:30px;transition:transform .2s,box-shadow .2s}.service:hover,.industry:hover{transform:translateY(-5px);box-shadow:0 24px 55px #4b7fa329}.service-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.service-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:16px;background:linear-gradient(135deg,#e4f1ff,#c6eae8);font-size:28px;color:#2e7cbd}.index{font-size:11px;font-weight:800;color:#8aa1b4}.service h3{font-size:21px;letter-spacing:-.035em}.service p,.step p,.industry p,.values p{color:var(--muted);font-size:14px;line-height:1.75}.chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:20px}.chips span{font-size:10px;font-weight:700;color:#467da4;padding:6px 10px;border:1px solid #c4e1f1;border-radius:30px;background:#eff9ff90}.featured{background:linear-gradient(135deg,#e1f4ffb8,#d5f5f0a6)}.process-grid,.industry-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.step,.industry{padding:27px;border-radius:23px;min-height:235px}.step>span,.industry>span{font-size:11px;font-weight:800;color:#3d91b7;letter-spacing:.12em}.step h3,.industry h3{font-size:19px;margin:34px 0 12px}.industry-grid{grid-template-columns:repeat(2,1fr)}.industry{min-height:200px}.industry h3{margin:18px 0 8px}.career-panel{border-radius:34px;padding:50px;display:grid;grid-template-columns:1fr 1fr;gap:60px}.career-panel p{color:var(--muted);max-width:460px}.career-list{padding:10px 0}.career-label{font-size:11px;letter-spacing:.14em;color:#3d84ad;font-weight:800;margin-bottom:16px}.career-label small{display:block;letter-spacing:0;font-size:11px;font-weight:500;color:#7d91a3;margin-top:4px}.career-list>div:not(.career-label){display:flex;justify-content:space-between;border-bottom:1px solid #b4d0e052;padding:12px 0;font-size:14px;font-weight:700}.career-list>div span{color:#2b8fc3}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:50px}.values span{font-size:30px;color:#388fc0}.values h3{font-size:20px}.contact-panel{text-align:center;border-radius:34px;padding:70px 30px}.contact-panel p{max-width:620px;margin:0 auto;color:var(--muted)}.contact-actions{justify-content:center}.muted{opacity:.75;cursor:default}.contact-panel .note{font-size:12px;margin-top:28px}footer{max-width:1150px;margin:auto;padding:50px 20px 25px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:25px;border-top:1px solid #b6d0df70}footer p{color:var(--muted);font-size:13px}.footer-links{display:flex;gap:18px;flex-wrap:wrap;font-size:13px;font-weight:700}.footer-bottom{width:100%;display:flex;justify-content:space-between;gap:15px;color:#7690a5;font-size:12px;margin-top:25px}@media(max-width:950px){.hero{grid-template-columns:1fr;padding-top:75px}.hero-visual{height:410px}.service-grid{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:repeat(2,1fr)}.nav nav{gap:13px}.section-heading{align-items:start;flex-direction:column;gap:0}.career-panel{gap:30px}}@media(max-width:680px){.nav{margin:10px 12px 0}.menu{display:block}.nav nav{display:none;position:absolute;top:68px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:15px;border-radius:20px;background:#f6fbffed;box-shadow:0 15px 40px #416e9d30}.nav nav.open{display:flex}.nav nav a{padding:12px}.hero{padding:65px 22px 40px;min-height:auto}.hero h1{font-size:56px}.lead{font-size:16px}.hero-visual{height:350px}.halo{width:290px;height:290px}.visual-main{width:275px;min-height:250px;padding:25px}.visual-title{font-size:27px;margin:25px 0}.floating{font-size:9px}.float-one{right:-10px}.float-two{left:0}.section{padding:65px 20px}.section h2{font-size:38px}.service-grid,.process-grid,.industry-grid,.values,.career-panel{grid-template-columns:1fr}.service{min-height:auto}.career-panel{padding:28px}.values{gap:15px}.contact-panel{padding:45px 18px}.footer-bottom{flex-direction:column}.hero-micro{margin-top:35px}}

.contact-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:790px;margin:34px auto 8px;text-align:left}.contact-detail{padding:26px;border-radius:22px}.contact-label{display:block;font-size:10px;font-weight:800;letter-spacing:.13em;color:#337cad;margin-bottom:14px}.contact-detail>a,.contact-detail address{font-family:Manrope,sans-serif;font-size:clamp(17px,2vw,22px);font-weight:800;line-height:1.45;font-style:normal;overflow-wrap:anywhere}.contact-detail>a:hover{text-decoration:underline}.contact-detail p{font-size:13px;margin:13px 0 0;text-align:left}.contact-panel .contact-detail p{margin:13px 0 0}.contact-panel .contact-actions{margin-top:24px}@media(max-width:680px){.contact-details{grid-template-columns:1fr}.contact-detail{padding:21px}}

/* Compact contact details */
.contact-detail>a,.contact-detail address{font-size:clamp(14px,1.5vw,17px);font-weight:650;line-height:1.55}


/* Legal page and footer links */
.footer-legal{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.footer-legal a,.footer-bottom a{color:inherit;text-decoration:underline;text-underline-offset:4px}.legal-nav a{color:inherit;text-decoration:none}.legal-main{padding:145px 24px 80px;max-width:1000px;margin:0 auto}.legal-panel{padding:clamp(24px,5vw,64px);border-radius:28px}.legal-panel h1{font-size:clamp(2.5rem,6vw,4.5rem);margin:18px 0}.legal-panel h2{font-size:1.25rem;margin:34px 0 12px}.legal-panel p{line-height:1.85;max-width:76ch;margin:0 0 14px}.legal-panel .legal-updated{opacity:.7;margin-bottom:30px}.legal-panel a:not(.btn){color:#176bb4}@media(max-width:650px){.legal-main{padding:110px 14px 55px}.footer-legal{gap:10px}}

.booking-panel{padding:clamp(28px,5vw,70px);border-radius:32px}.booking-panel h2{font-size:clamp(2.4rem,5vw,4.5rem);line-height:1.12;letter-spacing:-.045em;margin:18px 0}.booking-panel h2 span{color:#5685ba}.booking-panel>p{max-width:720px;line-height:1.8}.booking-topics{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0}.booking-topics span{padding:9px 15px;border:1px solid rgba(86,133,186,.25);border-radius:999px;background:rgba(255,255,255,.35);font-size:.9rem}.booking-status{max-width:680px;padding:22px 25px;border:1px solid rgba(86,133,186,.25);border-radius:20px;background:rgba(255,255,255,.28)}.booking-status p{margin:8px 0 0;line-height:1.7}@media(max-width:650px){.booking-panel{padding:26px 20px}}

/* V22: consulting engagement, deliverables and FAQ sections */
.deliverable-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.deliverable{padding:28px;border-radius:23px}.deliverable>span{display:block;color:#337cad;font-size:11px;font-weight:800;letter-spacing:.1em}.deliverable h3{font-size:20px;margin:18px 0 10px}.deliverable p{line-height:1.75;margin:0}.faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.faq-item{padding:23px 25px;border-radius:20px}.faq-item summary{cursor:pointer;font-weight:750;line-height:1.5}.faq-item summary:focus-visible{outline:2px solid #337cad;outline-offset:5px}.faq-item p{line-height:1.75;margin:15px 0 0}.booking-status strong{color:#23567f}@media(max-width:850px){.deliverable-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.deliverable-grid,.faq-grid{grid-template-columns:1fr}.deliverable,.faq-item{padding:22px}}
