@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--ink:#153456;--muted:#3c5979;--accent:#247ac5;--glass-border:rgba(255,255,255,.94)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:#deefff;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;-webkit-font-smoothing:antialiased;isolation:isolate}
body:before{content:'';position:fixed;inset:0;z-index:-3;background:radial-gradient(ellipse at 2% 2%,#eaf7ff 0,transparent 38%),radial-gradient(ellipse at 97% 13%,#8fc5fa 0,transparent 53%),radial-gradient(ellipse at 7% 85%,#88c5f3 0,transparent 47%),radial-gradient(ellipse at 90% 100%,#e5f6ff 0,transparent 48%),linear-gradient(135deg,#d7eaff,#b6dcfb 52%,#e5f4ff)}
a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid #287cbd;outline-offset:6px}::selection{background:#9cd1ff;color:#143559}
.ambient-light{position:fixed;inset:0;overflow:hidden;z-index:-2;pointer-events:none}
.ambient-light:before{content:'';position:absolute;inset:-25%;transform:rotate(-24deg);background:linear-gradient(90deg,transparent 22%,#ffffff6e 24%,#ffffff1a 29%,transparent 35%,transparent 59%,#a4d4ff52 62%,#ffffff6e 67%,transparent 76%);filter:blur(17px)}
.ambient-light:after{content:'';position:absolute;width:780px;height:780px;border-radius:50%;left:-380px;top:460px;border:36px solid #ffffff70;box-shadow:0 0 0 1px #ffffff9e,0 0 80px #ffffff59,inset 0 0 45px #ffffff99;transform:rotate(-30deg) scaleY(.72);filter:blur(2px)}
.light{position:absolute;border-radius:50%;pointer-events:none}
.light-one{width:490px;height:490px;top:-130px;right:-130px;background:radial-gradient(circle at 27% 21%,#ffffffc9 0,#ffffff1c 30%,#7bbdff40 55%,#e7f7ffa6 72%,#4d97e738 84%,#ffffffa6 97%);border:1px solid #ffffffa8;box-shadow:inset 12px 15px 30px #ffffff9e,inset -14px -15px 36px #66a9ed52,0 20px 90px #73acf326;filter:blur(1px);opacity:.86}
.light-two{width:780px;height:440px;left:-260px;top:450px;background:radial-gradient(ellipse,#5daffa70 0,#b3e6ff57 46%,transparent 70%);filter:blur(28px)}
.light-three{width:480px;height:480px;right:-160px;top:630px;border:48px solid #ffffff70;background:radial-gradient(circle,#c5e5ff05 35%,#82bfff52 67%,#f3fbff8c 85%);box-shadow:inset 0 0 30px #fff9,0 0 0 1px #ffffffab,0 8px 60px #95c5f533;filter:blur(2px);opacity:.8}
.shell{max-width:1360px;margin:0 auto;padding:30px 5.2% 0}
.header{height:83px;display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:relative;background:linear-gradient(125deg,#ffffff42,#ffffff14);border:1px solid var(--glass-border);border-right-color:#ffffff70;border-bottom-color:#ffffff65;border-radius:22px;box-shadow:0 9px 35px #3b80c010,inset 0 1px 0 #fff,inset 1px 0 0 #ffffff91,inset -1px -1px 0 #ffffff21;-webkit-backdrop-filter:blur(20px) saturate(145%);backdrop-filter:blur(20px) saturate(145%)}
.wordmark{font-family:'Manrope',Arial,sans-serif;font-size:28px;letter-spacing:-1.8px;font-weight:800;display:inline-block}.brand-dot{color:#4b9dd9}.wordmark-dev{font-weight:500}.header nav{display:flex;align-items:center;font-size:13px;font-weight:550}.nav-contact{display:flex;align-items:center;gap:22px;transition:opacity .2s}.nav-contact:hover{opacity:.6}.arrow-icon{width:20px;height:20px;display:inline-block;flex:none;vertical-align:middle}
.hero{position:relative;overflow:hidden;margin:28px 0 27px;padding:67px 62px 70px;border:1px solid #ffffffed;border-right-color:#ffffff9e;border-bottom-color:#ffffff75;border-radius:32px;background:linear-gradient(110deg,#ffffff42,#ffffff1f 48%,#eff8ff14);box-shadow:0 22px 65px #3579bd14,0 2px 5px #fff3,inset 0 2px 1px #fff,inset 2px 0 2px #ffffffa6,inset -1px -2px 2px #ffffff52;-webkit-backdrop-filter:blur(23px) saturate(145%);backdrop-filter:blur(23px) saturate(145%)}
.hero:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(116deg,#ffffff5c 0,#ffffff1c 21%,transparent 34%,#ffffff05 48%,#ffffff59 49%,#ffffff0d 54%,transparent 64%),radial-gradient(ellipse at 97% 0%,#ffffff75,transparent 48%);opacity:.72}
.hero:after{content:'';position:absolute;width:530px;height:530px;right:-195px;top:-290px;border-radius:50%;border:1px solid #ffffffa6;box-shadow:0 0 0 16px #ffffff14,0 0 0 17px #ffffff4d,inset 4px 2px 16px #ffffff6e,0 12px 45px #9ccaff1a;transform:rotate(-26deg) scaleY(.68);pointer-events:none}
.hero-copy{position:relative;z-index:1}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:650;margin:0 0 31px;line-height:1.6;color:#3b6188}.tiny-square{display:inline-block;width:6px;height:6px;vertical-align:1px;margin-right:10px;border-radius:2px;background:#4a9bdb;box-shadow:0 0 0 4px #81bfff21,0 0 10px #b5deff}
.hero h1{font-family:'Manrope',Arial,sans-serif;font-size:clamp(55px,6.1vw,84px);font-weight:500;letter-spacing:-3.7px;line-height:1.09;margin:0;white-space:nowrap}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-2.5px}.hero h1 em{font-size:1.08em;color:#346f9f}.hero-intro{max-width:600px;font-size:17px;line-height:1.8;color:var(--muted);margin:29px 0 31px}
.button{position:relative;overflow:hidden;display:inline-flex;gap:37px;align-items:center;background:linear-gradient(135deg,#1a5082eb,#124373ed);color:#fff;padding:18px 22px;border:1px solid #ffffffc2;border-radius:12px;font-size:13px;font-weight:550;box-shadow:0 7px 22px #286cb829,inset 0 1px 1px #ffffffb3,inset 0 -1px 1px #ffffff29;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:transform .2s,box-shadow .2s}.button:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,#ffffff24,transparent 40%,#ffffff21 65%,transparent 85%)}.button:hover{transform:translateY(-2px);box-shadow:0 11px 28px #286cb838,inset 0 1px 1px #ffffffb3}
.contact{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:9%;position:relative;overflow:hidden;padding:53px 62px 54px;color:var(--ink);border-radius:30px;background:linear-gradient(120deg,#eaf7ff36,#ffffff1a 60%,#d6eeff38);border:1px solid #fffffff0;border-right-color:#ffffff91;border-bottom-color:#ffffff8c;box-shadow:0 20px 58px #387ab820,inset 0 2px 1px #ffffffeb,inset 2px 0 1px #ffffff91,inset -1px -2px 2px #ffffff4d;-webkit-backdrop-filter:blur(24px) saturate(150%);backdrop-filter:blur(24px) saturate(150%)}
.contact:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,#ffffff33,transparent 32%,#ffffff05 56%,#ffffff4d 57%,#ffffff0d 65%,transparent 82%),radial-gradient(ellipse at 100% 100%,#ffffff85,transparent 64%)}
.contact:after{content:'';position:absolute;right:-110px;bottom:-280px;width:520px;height:520px;border-radius:50%;border:1px solid #ffffffc9;box-shadow:0 0 0 20px #ffffff14,inset 0 8px 27px #ffffff47;transform:rotate(-25deg) scaleY(.62);pointer-events:none}
.contact>div{position:relative;z-index:1}.contact h2{font:500 clamp(40px,4.3vw,63px)/1.09 'Manrope',Arial,sans-serif;letter-spacing:-2.3px;margin:0}.contact-right{padding-bottom:4px}.contact-right>p:first-child{font-size:14px;line-height:1.8;color:#385b7c;margin:0 0 23px}.email-link{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:12px;border-bottom:1px solid #4789bd5e;font:500 clamp(21px,2.1vw,29px)/1.4 'Manrope',Arial,sans-serif;letter-spacing:-.8px;color:#1b64a0;transition:color .2s}.email-link:hover{color:#123f71}.email-link .arrow-icon{width:28px;height:28px}
footer{display:flex;justify-content:space-between;align-items:center;gap:24px;height:107px;padding:0 8px;font-size:11px;color:#426584}.footer-brand{font-size:23px;color:var(--ink)}.skip-link{position:fixed;top:12px;left:12px;background:var(--ink);color:#fff;padding:12px;z-index:100;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.header{background:#dceeffe8}.hero{background:linear-gradient(120deg,#edf7fff0,#d0e7fbe8)}.contact{background:linear-gradient(120deg,#d5ecfff0,#e8f5fff0)}}
@media(max-width:1000px){.shell{padding:24px 4.7% 0}.hero{padding:58px 46px 62px}.hero h1{font-size:clamp(52px,6.7vw,72px)}.hero-intro{font-size:16px;max-width:560px}.contact{padding:45px 46px;gap:7%}.contact h2{font-size:46px}.contact-right>p:first-child{font-size:13px}.email-link{font-size:23px}}
@media(max-width:700px){.shell{padding:18px 5% 0}.header{height:74px;padding:0 23px;border-radius:20px}.wordmark{font-size:26px}.header nav{font-size:12px}.nav-contact{gap:14px}.hero{margin:20px 0;padding:44px 32px 47px;border-radius:27px}.hero h1{font-size:clamp(42px,7.8vw,55px);letter-spacing:-2.8px}.hero-intro{font-size:15px;max-width:470px;margin:24px 0 28px}.eyebrow{font-size:9px;letter-spacing:1.7px;margin-bottom:25px}.contact{grid-template-columns:1fr;padding:37px 32px;gap:31px;border-radius:26px}.contact h2{font-size:51px}.contact-right{max-width:430px}.contact-right>p:first-child{font-size:14px}.email-link{font-size:26px}footer{height:95px}.light-two{width:520px;height:520px;top:220px;left:-330px}.light-three{width:600px;height:600px;top:600px;right:-270px}}
@media(max-width:480px){.shell{padding:14px 4% 0}.header{height:69px;padding:0 20px;border-radius:18px}.wordmark{font-size:24px}.nav-contact{gap:11px;font-size:11px}.nav-contact .arrow-icon{width:18px;height:18px}.hero{margin:16px 0;padding:35px 25px 38px;border-radius:24px}.eyebrow{font-size:8px;letter-spacing:1.35px;margin-bottom:23px}.tiny-square{margin-right:8px}.hero h1{font-size:clamp(32px,9.1vw,43px);letter-spacing:-1.8px}.hero h1 em{letter-spacing:-1.8px}.hero-intro{font-size:13px;line-height:1.85;margin:23px 0 25px}.button{font-size:11px;gap:23px;padding:16px 17px;border-radius:10px}.button .arrow-icon{width:18px;height:18px}.contact{padding:30px 25px 32px;border-radius:24px;gap:27px}.contact h2{font-size:44px;letter-spacing:-1.8px}.contact-right>p:first-child{font-size:12px;margin-bottom:20px}.email-link{font-size:22px;letter-spacing:-.6px;gap:12px}.email-link .arrow-icon{width:25px;height:25px}footer{height:87px;padding:0 9px;font-size:9px;gap:12px}.footer-brand{font-size:22px}.light{filter:blur(55px)}.light-one{width:420px;height:420px;right:-170px;top:-150px}}
@media(max-width:350px){.hero,.contact{padding-left:20px;padding-right:20px}.hero h1{font-size:31px}.email-link{font-size:20px}.contact h2{font-size:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}a{transition:none!important}.button:hover{transform:none}.light{will-change:auto}}
/* Keep the refraction shapes crisp enough to read through the glass on phones. */
@media(max-width:700px){.light-two{filter:blur(28px)}.light-three{width:440px;height:440px;top:550px;right:-270px;filter:blur(2px)}.ambient-light:after{width:620px;height:620px;left:-450px;top:410px}.hero:after{right:-270px;top:-310px}}
@media(max-width:480px){.light-one{filter:blur(1px);width:370px;height:370px;right:-205px;top:-90px}.light-two{filter:blur(28px)}.light-three{filter:blur(2px)}.hero,.contact{-webkit-backdrop-filter:blur(19px) saturate(140%);backdrop-filter:blur(19px) saturate(140%)}}
/* Keep only soft light and glass surfaces; omit decorative circular patterns. */
.ambient-light::after,.hero::after,.contact::after{content:none}
.light-one,.light-three{display:none}

/* Comfortable body copy at every screen size, including iPhone. */
.hero-intro,.contact-right>p:first-child{font-size:18px;line-height:1.65;overflow-wrap:break-word}
