:root{--contact-blue:#1563ff;--contact-cyan:#30baf5;--contact-navy:#0b2350;--contact-ink:#10264e;--contact-muted:#5b6f91;--contact-line:#d8e3f1;--contact-soft:#f2f7ff}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:105px}
body.contact-site{margin:0;background:#f7faff;color:var(--contact-ink);font:16px/1.55 Inter,"Segoe UI",Arial,sans-serif}
.contact-page a{color:inherit}
.contact-page svg{display:block}
.contact-wrap{width:min(1200px,calc(100% - 72px));margin-inline:auto}
.contact-skip{position:fixed;z-index:200;top:10px;left:10px;padding:10px 14px;border-radius:9px;background:#fff;color:#083a9b;transform:translateY(-150%)}
.contact-skip:focus{transform:translateY(0)}
.contact-hero{position:relative;overflow:hidden;padding:108px 0 28px;background:radial-gradient(ellipse at 79% 43%,#c8e8ff 0,transparent 38%),radial-gradient(ellipse at 5% 75%,#d9f0ff 0,transparent 34%),linear-gradient(110deg,#edf7ff 0%,#fff 53%,#e8f3ff 100%)}
.contact-hero:before,.contact-hero:after{position:absolute;content:"";pointer-events:none;border:1px solid #94c9ff36;border-radius:50%;transform:rotate(-20deg)}
.contact-hero:before{width:690px;height:300px;right:-120px;top:46px}
.contact-hero:after{width:570px;height:240px;right:-40px;top:76px;border-style:dashed}
.contact-hero>.contact-wrap{position:relative;z-index:1}
.contact-breadcrumb{display:flex;align-items:center;gap:10px;margin:0 0 8px;color:#617798;font-size:13px}
.contact-breadcrumb a{text-decoration:none;transition:color .2s}
.contact-breadcrumb a:hover{color:var(--contact-blue)}
.contact-breadcrumb span[aria-current=page]{color:#334c70}
.contact-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.98fr);align-items:center;gap:25px;min-height:250px}
.contact-hero-copy{padding:18px 0 32px}
.contact-eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 13px;color:var(--contact-blue);font-size:11px;font-weight:800;letter-spacing:.16em}
.contact-eyebrow>span{width:7px;height:7px;border-radius:50%;background:var(--contact-cyan);box-shadow:0 0 0 5px #36baff1c}
.contact-hero h1{max-width:660px;margin:0;color:#0a2252;font-size:clamp(39px,5vw,62px);font-weight:780;line-height:1.02;letter-spacing:-.055em}
.contact-hero h1 span{color:#1563ff}
.contact-hero-lead{max-width:515px;margin:18px 0 0;color:#526b91;font-size:16px;line-height:1.65}
.contact-hero-art{position:relative;min-height:260px;display:grid;place-items:center;isolation:isolate}
.contact-hero-art:before{content:"";position:absolute;inset:12% 8%;z-index:-1;border-radius:50%;background:#67caff28;filter:blur(22px)}
.contact-hero-art svg{width:min(100%,600px);height:auto;overflow:visible;animation:contact-float 7s ease-in-out infinite}
.art-label{position:absolute;padding:7px 12px;border:1px solid #ffffffc9;border-radius:99px;background:#ffffffc2;box-shadow:0 9px 25px #417dbb17;color:#2c5b96;font-size:10px;font-weight:700;backdrop-filter:blur(12px)}
.art-label-top{top:12%;left:4%}.art-label-bottom{right:1%;bottom:7%}
@keyframes contact-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
.contact-channel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:2px}
.contact-channel{min-height:92px;display:flex;align-items:center;gap:15px;padding:14px 17px;border:1px solid #e4edf7;border-radius:16px;background:#ffffffed;box-shadow:0 8px 23px #1847790c;text-decoration:none;transition:transform .22s,border-color .22s,box-shadow .22s}
.contact-channel:hover{transform:translateY(-3px);border-color:#acd0ff;box-shadow:0 14px 30px #2764a71c}
.channel-icon{width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#2784ff,#0758ed);box-shadow:0 7px 17px #1563ff30;color:white}
.channel-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.channel-copy{min-width:0;display:flex;flex-direction:column;gap:1px}
.channel-copy strong{color:#102750;font-size:13px;line-height:1.35}
.channel-copy>span{overflow:hidden;color:#607496;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.channel-copy b{margin-top:4px;color:#1260ef;font-size:11px;font-weight:750}
.channel-copy b span{margin-left:5px}
.contact-main-section{position:relative;padding:22px 0 46px;background:linear-gradient(180deg,#f6faff 0,#fff 55%,#f5f9ff 100%)}
.contact-main-grid{display:grid;grid-template-columns:minmax(0,.89fr) minmax(0,1.11fr);align-items:start;gap:25px}
.contact-solution-panel{padding:22px 4px 0 4px}
.contact-solution-panel>.contact-eyebrow{margin-bottom:10px}
.contact-solution-panel h2,.contact-process-copy h2{margin:0;color:#0d2452;font-size:clamp(27px,3vw,36px);line-height:1.12;letter-spacing:-.045em}
.contact-section-intro{max-width:410px;margin:10px 0 17px;color:#607392;font-size:14px;line-height:1.6}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.solution-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:0;border:0}
.solution-choice{min-height:49px;display:flex;align-items:center;gap:11px;padding:8px 12px;border:1px solid #d8e2f0;border-radius:12px;background:#ffffffd9;color:#23395e;font-size:12px;font-weight:650;cursor:pointer;transition:border-color .18s,background .18s,box-shadow .18s,transform .18s}
.solution-choice:hover{transform:translateY(-1px);border-color:#8ebcff}
.solution-choice.is-selected{border-color:#347dff;background:#eef5ff;box-shadow:0 0 0 2px #1563ff0d;color:#0759e7}
.solution-choice input{position:absolute;width:1px;height:1px;opacity:0}
.solution-choice:focus-within{outline:3px solid #43bafb75;outline-offset:2px}
.solution-icon{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;color:#0e2b5e}
.solution-choice.is-selected .solution-icon{color:#1264f7}
.solution-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.solution-choice-wide{grid-column:1/-1}
.contact-tech-card{position:relative;overflow:hidden;min-height:140px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;padding:17px 20px;border-radius:15px;background:radial-gradient(circle at 72% 45%,#125fd6 0,transparent 45%),linear-gradient(115deg,#071d49,#063b91 62%,#0d58c2);box-shadow:0 13px 26px #123f8122;color:#fff}
.contact-tech-card:after{position:absolute;content:"";width:160px;height:160px;right:-60px;top:-80px;border:1px solid #9adaff4a;border-radius:50%;box-shadow:0 0 0 18px #ffffff08,0 0 0 36px #ffffff07}
.contact-tech-card>div{position:relative;z-index:1;flex:0 0 44%}
.contact-tech-card>div>span{display:block;font-size:19px;font-weight:800;line-height:1.13;letter-spacing:-.03em}
.contact-tech-card p{margin:10px 0 0;color:#d2e7ff;font-size:12px;line-height:1.45}
.contact-tech-card>svg{position:relative;z-index:1;width:57%;max-width:230px;height:auto;filter:drop-shadow(0 6px 13px #0003)}
.contact-privacy{display:flex;align-items:center;gap:11px;margin-top:12px;padding:10px 15px;border:1px solid #e1edfc;border-radius:12px;background:#edf5ff;color:#28466f;font-size:12px}
.privacy-icon{width:25px;height:25px;display:grid;place-items:center;border-radius:8px;background:#dceaff;color:#1261f2}
.privacy-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.contact-form-card{padding:25px 27px 23px;border:1px solid #e6eef8;border-radius:22px;background:#fff;box-shadow:0 15px 42px #24528612;scroll-margin-top:108px}
.contact-form-heading .contact-eyebrow{margin-bottom:8px}
.contact-form-heading h2{margin:0;color:#0b2555;font-size:clamp(23px,2.6vw,29px);line-height:1.2;letter-spacing:-.04em}
.contact-form-heading>p:last-child{margin:5px 0 17px;color:#637694;font-size:13px}
.contact-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 14px}
.contact-field{min-width:0;display:flex;flex-direction:column;gap:5px;color:#1a3157;font-size:12px;font-weight:650}
.contact-field>span i{color:#e5485c;font-style:normal}
.contact-field input,.contact-field select,.contact-field textarea{width:100%;min-height:42px;padding:10px 13px;border:1px solid #d7e1ee;border-radius:9px;background:#fff;color:#20375b;font-family:inherit;font-size:12px;font-weight:400;line-height:1.45;outline:none;transition:border-color .18s,box-shadow .18s}
.contact-field textarea{min-height:78px;resize:vertical}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:#9baac0}
.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:#5a9aff;box-shadow:0 0 0 3px #1563ff15}
.contact-field-wide{grid-column:1/-1}
.contact-consent{display:flex;flex-direction:row;align-items:center;gap:9px;margin:0;color:#425777;font-size:11px;font-weight:500;cursor:pointer}
.contact-consent input{width:16px;height:16px;min-height:auto;margin:0;accent-color:#1563ff}
.contact-submit{min-height:48px;display:flex;align-items:center;justify-content:center;gap:10px;margin-top:-1px;border:0;border-radius:11px;background:linear-gradient(100deg,#1868ff,#1471f7 60%,#1a63ed);box-shadow:0 9px 20px #1563ff28;color:white;font-family:inherit;font-size:13px;font-weight:700;line-height:1.2;cursor:pointer;transition:transform .2s,box-shadow .2s,filter .2s}
.contact-submit:hover{transform:translateY(-2px);box-shadow:0 13px 26px #1563ff3b;filter:saturate(1.12)}
.contact-submit:focus-visible{outline:3px solid #40baf7;outline-offset:3px}
.contact-submit svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact-email-note{margin:-2px 0 0;color:#71819a;font-size:10px;line-height:1.45}
.contact-email-note a{color:#155fe4;text-decoration:none;font-weight:650}
.contact-form-status{min-height:0;margin:0;color:#0958cf;font-size:12px}
.contact-form-status:not(:empty){padding:9px 11px;border-radius:9px;background:#edf6ff}
.contact-process{padding:0 0 25px;background:#f7faff}
.contact-process-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:34px}
.contact-team-photo{position:relative;overflow:hidden;min-height:320px;margin:0;border-radius:18px;background:#dfeeff;box-shadow:0 14px 34px #234b7c18}
.contact-team-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.contact-team-photo:after{position:absolute;content:"";inset:auto 0 0;height:26%;background:linear-gradient(transparent,#09183280)}
.contact-team-photo figcaption{position:absolute;z-index:1;bottom:14px;left:17px;padding:5px 9px;border-radius:6px;background:#061126a8;color:#fff;font-size:10px}
.contact-process-copy{padding:14px 0}
.contact-process-copy>.contact-eyebrow{margin-bottom:10px}
.contact-process-copy h2{font-size:clamp(25px,3vw,34px)}
.contact-steps{display:grid;gap:16px;margin:19px 0 18px;padding:0;list-style:none}
.contact-steps li{display:grid;grid-template-columns:46px 1fr;align-items:center;gap:13px}
.contact-steps li>span{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:#e5f0ff;color:#1767ed;font-size:17px;font-weight:800}
.contact-steps strong{display:block;color:#142d57;font-size:13px;line-height:1.35}
.contact-steps p{margin:3px 0 0;color:#667895;font-size:11px;line-height:1.45}
.contact-about-link{min-height:39px;display:inline-flex;align-items:center;gap:9px;padding:8px 15px;border:1px solid #6c9eff;border-radius:9px;color:#155ee7!important;font-size:11px;font-weight:700;text-decoration:none;transition:background .2s,color .2s}
.contact-about-link:hover{background:#1563ff;color:#fff!important}
.contact-float{position:fixed;z-index:90;right:16px;bottom:20px;display:grid;gap:8px}
.contact-float a,.contact-float button{width:42px;height:42px;display:grid;place-items:center;border:0;border-radius:50%;background:#1768f5;box-shadow:0 8px 18px #174e9c32;color:#fff;cursor:pointer;transition:transform .2s,background .2s}
.contact-float a:hover,.contact-float button:hover{transform:translateY(-3px);background:#0752d5}
.contact-float svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:1000px){.contact-wrap{width:min(100% - 52px,900px)}.contact-hero-grid{grid-template-columns:minmax(0,1fr) minmax(310px,.9fr);gap:5px}.contact-hero h1{font-size:clamp(38px,5.5vw,54px)}.contact-channel{gap:10px;padding:12px}.channel-icon{width:42px;height:42px;flex-basis:42px}.channel-copy strong{font-size:12px}.contact-main-grid{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:18px}.contact-form-card{padding:22px 21px}.contact-process-grid{gap:25px}}
@media(max-width:760px){html{scroll-padding-top:86px}.contact-wrap{width:calc(100% - 38px)}.contact-hero{padding:96px 0 20px}.contact-hero-grid{grid-template-columns:1fr;gap:0;min-height:0}.contact-hero-copy{padding:13px 0 0}.contact-hero h1{font-size:clamp(38px,9vw,54px)}.contact-hero-lead{max-width:600px;margin-top:13px;font-size:14px}.contact-hero-art{min-height:205px;margin-top:-5px}.contact-hero-art svg{width:min(100%,470px)}.art-label-top{top:13%;left:7%}.art-label-bottom{right:4%;bottom:5%}.contact-channel-grid{grid-template-columns:1fr;gap:9px;margin-top:0}.contact-channel{min-height:75px;padding:11px 13px}.channel-icon{width:44px;height:44px;flex-basis:44px}.contact-main-section{padding:15px 0 32px}.contact-main-grid{grid-template-columns:1fr;gap:17px}.contact-solution-panel{padding:13px 1px 0}.contact-solution-panel h2{font-size:30px}.contact-section-intro{margin:8px 0 14px;font-size:13px}.solution-picker{gap:8px}.solution-choice{min-height:47px;padding:8px 10px;font-size:11px}.contact-tech-card{min-height:126px}.contact-privacy{margin-top:9px}.contact-form-card{padding:22px 18px;border-radius:17px}.contact-form-heading h2{font-size:25px}.contact-process{padding-bottom:20px}.contact-process-grid{grid-template-columns:1fr;gap:16px}.contact-team-photo{min-height:250px}.contact-process-copy{padding:2px 1px}.contact-process-copy h2{font-size:29px}.contact-steps{gap:13px;margin:15px 0}.contact-float{right:10px;bottom:12px;gap:6px}.contact-float a,.contact-float button{width:38px;height:38px}}
@media(max-width:480px){.contact-wrap{width:calc(100% - 32px)}.contact-hero{padding-top:91px}.contact-hero h1{font-size:39px}.contact-eyebrow{font-size:10px}.contact-hero-art{min-height:180px}.contact-channel{min-height:71px}.solution-choice{gap:8px;padding-inline:8px}.solution-icon{width:21px;height:21px;flex-basis:21px}.solution-icon svg{width:20px;height:20px}.contact-tech-card>div>span{font-size:17px}.contact-tech-card p{font-size:11px}.contact-form-card{padding:20px 15px}.contact-form-grid{grid-template-columns:1fr;gap:10px}.contact-field-wide{grid-column:auto}.contact-submit{grid-column:auto}.contact-consent,.contact-email-note,.contact-form-status{grid-column:auto}.contact-team-photo{min-height:220px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.contact-hero-art svg{animation:none}.contact-channel,.solution-choice,.contact-submit,.contact-float a,.contact-float button{transition:none}}

/* Contact solution chooser and form: clearer scale, stronger depth, restrained tech motion. */
.contact-main-section{position:relative;isolation:isolate;overflow:hidden;padding:42px 0 62px;background:radial-gradient(ellipse at 16% 18%,#d9edff8c,transparent 39%),linear-gradient(180deg,#f5faff 0%,#fff 48%,#f2f7ff 100%)}
.contact-main-section::before{content:"";position:absolute;inset:0;z-index:-2;background-image:linear-gradient(#4e8ee70b 1px,transparent 1px),linear-gradient(90deg,#4e8ee70b 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(180deg,transparent,#000 18%,#000 78%,transparent);animation:contact-grid-drift 32s linear infinite;pointer-events:none}
.contact-main-section::after{content:"";position:absolute;z-index:-1;top:-44%;left:-22%;width:min(72vw,880px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#53b8ff20 0,transparent 68%);filter:blur(4px);animation:contact-halo-drift 15s ease-in-out infinite alternate;pointer-events:none}
.contact-main-grid{position:relative;z-index:1;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(22px,3.2vw,42px);align-items:stretch}
.contact-solution-panel{position:relative;isolation:isolate;overflow:hidden;padding:27px 24px 22px;border:1px solid #dceafa;border-radius:23px;background:linear-gradient(150deg,#fffffffa,#f8fbffed 75%);box-shadow:0 18px 48px #1f57900e,0 2px 8px #163c6808}
.contact-solution-panel::before{content:"";position:absolute;z-index:0;top:-116px;right:-105px;width:255px;height:255px;border-radius:50%;background:radial-gradient(circle,#82cbff32,transparent 70%);pointer-events:none}
.contact-solution-panel>*{position:relative;z-index:1}
.contact-solution-panel>.contact-eyebrow{margin-bottom:11px;font-size:11px;letter-spacing:.14em}
.contact-solution-panel h2{max-width:440px;font-size:clamp(28px,3.15vw,37px);line-height:1.13;letter-spacing:-.045em}
.contact-section-intro{max-width:440px;margin:12px 0 20px;color:#5b7192;font-size:15px;line-height:1.65}
.solution-picker{gap:11px;margin-top:4px}
.solution-choice{position:relative;isolation:isolate;overflow:hidden;min-height:55px;gap:10px;padding:9px 11px;border-color:#d9e5f4;border-radius:14px;background:linear-gradient(145deg,#fff,#f9fbff);box-shadow:0 3px 12px #193f7008;color:#20385d;font-size:13px;line-height:1.35;transition:transform .22s,border-color .22s,background .22s,box-shadow .22s}
.solution-choice::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(115deg,#eaf4ff,#ffffff 65%);opacity:0;transition:opacity .2s}
.solution-choice:hover{transform:translateY(-2px);border-color:#84b5ff;box-shadow:0 9px 20px #1b65bd18}
.solution-choice:hover::before,.solution-choice.is-selected::before{opacity:1}
.solution-choice.is-selected{border-color:#74a7ff;background:#f1f7ff;box-shadow:0 0 0 2px #1563ff12,0 7px 20px #1563ff14;color:#0759df;animation:contact-selected-glow 4.8s ease-in-out infinite}
.solution-choice input{z-index:2}
.solution-icon{width:33px;height:33px;flex:0 0 33px;border:1px solid #dceaff;border-radius:10px;background:linear-gradient(145deg,#f6fbff,#eaf3ff);color:#2869c6}
.solution-choice.is-selected .solution-icon{border-color:#c3dbff;background:linear-gradient(145deg,#fff,#e5f1ff);color:#1264f7}
.solution-icon svg{width:19px;height:19px}
.solution-choice-wide{grid-column:auto}
.contact-tech-card{min-height:154px;margin-top:19px;padding:19px 21px;border:1px solid #3a82e2;border-radius:18px;background:radial-gradient(circle at 74% 42%,#2c78e7 0,transparent 44%),linear-gradient(116deg,#071d49,#083b8c 61%,#0d58c2);box-shadow:0 15px 34px #0a459528,inset 0 1px 0 #ffffff26}
.contact-tech-card::before{position:absolute;z-index:1;content:"";inset:-55% -40%;background:repeating-linear-gradient(128deg,transparent 0 42px,#d9f3ff14 43px 44px,transparent 45px 86px);transform:translateX(-24%);animation:contact-tech-scan 10s ease-in-out infinite alternate;pointer-events:none}
.contact-tech-card>div,.contact-tech-card>svg{z-index:2}
.contact-tech-card>div>span{font-size:21px;letter-spacing:-.04em}
.contact-tech-card p{font-size:13px;line-height:1.55}
.contact-tech-card>svg{filter:drop-shadow(0 9px 16px #001b4d70)}
.contact-privacy{min-height:42px;margin-top:13px;padding:10px 14px;border-color:#dceaff;border-radius:12px;background:#f0f6ffdc;color:#365377;font-size:12px}
.contact-form-card{position:relative;isolation:isolate;overflow:hidden;padding:31px 32px 26px;border:1px solid transparent;border-radius:24px;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(140deg,#d8e7fa,#eef5ff 48%,#c8ddf8) border-box;box-shadow:0 24px 64px #1a4c8317,0 3px 10px #163c6808;transition:box-shadow .28s,transform .28s}
.contact-form-card:hover{box-shadow:0 29px 74px #1a4c8322,0 4px 14px #163c680b}
.contact-form-card::before{content:"";position:absolute;z-index:2;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#43c5ff,#1b66ff,#8dd9ff,#43c5ff);background-size:220% 100%;animation:contact-form-glint 7s ease-in-out infinite;pointer-events:none}
.contact-form-card::after{content:"";position:absolute;z-index:0;top:-110px;right:-112px;width:275px;height:275px;border-radius:50%;background:radial-gradient(circle,#7fcaff21,transparent 70%);animation:contact-halo-drift 13s ease-in-out infinite alternate;pointer-events:none}
.contact-form-card>*{position:relative;z-index:1}
.contact-form-heading .contact-eyebrow{font-size:11px;letter-spacing:.14em}
.contact-form-heading h2{font-size:clamp(25px,2.8vw,32px);line-height:1.18}
.contact-form-heading>p:last-child{margin:8px 0 21px;color:#627895;font-size:14px;line-height:1.55}
.contact-form-grid{gap:15px 17px}
.contact-field{gap:6px;color:#203b64;font-size:13px}
.contact-field input,.contact-field select,.contact-field textarea{min-height:48px;padding:12px 14px;border-color:#d7e4f3;border-radius:11px;background:linear-gradient(180deg,#fff,#fcfdff);box-shadow:0 2px 5px #193f7006;font-size:13px;transition:border-color .2s,box-shadow .2s,background .2s}
.contact-field textarea{min-height:96px}
.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:#6ea7ff;background:#fff;box-shadow:0 0 0 4px #1563ff14,0 4px 14px #1563ff0b}
.contact-submit{min-height:52px;border-radius:12px;font-size:14px;box-shadow:0 10px 24px #1563ff30, inset 0 1px 0 #ffffff42}
.contact-email-note{font-size:11px;line-height:1.55}
@keyframes contact-grid-drift{to{background-position:44px 44px}}
@keyframes contact-halo-drift{0%{transform:translate3d(0,0,0) scale(.96)}100%{transform:translate3d(26px,18px,0) scale(1.05)}}
@keyframes contact-tech-scan{0%{transform:translateX(-24%)}100%{transform:translateX(24%)}}
@keyframes contact-form-glint{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
@keyframes contact-selected-glow{0%,100%{box-shadow:0 0 0 2px #1563ff10,0 7px 20px #1563ff12}50%{box-shadow:0 0 0 4px #1563ff0b,0 10px 24px #1563ff1d}}
@media(max-width:1000px){.contact-main-grid{gap:22px}.contact-solution-panel{padding:24px 20px 20px}.contact-form-card{padding:27px 25px 23px}.contact-section-intro{font-size:14px}}
@media(max-width:760px){.contact-main-section{padding:22px 0 38px}.contact-main-grid{grid-template-columns:1fr;gap:18px}.contact-solution-panel{padding:24px 21px 20px}.contact-solution-panel h2{font-size:30px}.contact-section-intro{font-size:14px}.contact-tech-card{min-height:135px}.contact-form-card{padding:26px 23px 23px}}
@media(max-width:480px){.contact-main-section{padding:18px 0 31px}.contact-solution-panel{padding:21px 15px 17px;border-radius:18px}.contact-solution-panel h2{font-size:27px}.contact-section-intro{margin:9px 0 15px;font-size:13px}.solution-picker{gap:8px}.solution-choice{min-height:49px;gap:8px;padding:7px 8px;border-radius:12px;font-size:11px}.solution-icon{width:29px;height:29px;flex-basis:29px;border-radius:9px}.solution-icon svg{width:18px;height:18px}.contact-tech-card{min-height:122px;margin-top:14px;padding:15px 13px;border-radius:15px}.contact-tech-card>div{flex-basis:43%}.contact-tech-card>div>span{font-size:17px}.contact-tech-card p{font-size:11px}.contact-tech-card>svg{width:55%}.contact-privacy{font-size:11px}.contact-form-card{padding:23px 17px 20px;border-radius:19px}.contact-form-heading h2{font-size:24px}.contact-form-heading>p:last-child{font-size:13px;margin-bottom:17px}.contact-form-grid{gap:11px}.contact-field{font-size:12px}.contact-field input,.contact-field select,.contact-field textarea{min-height:45px;padding:11px 12px;font-size:12px}.contact-field textarea{min-height:86px}.contact-submit{min-height:49px;font-size:13px}}
@media(prefers-reduced-motion:reduce){.contact-main-section::before,.contact-main-section::after,.contact-solution-panel::before,.solution-choice.is-selected,.contact-tech-card::before,.contact-form-card::before,.contact-form-card::after{animation:none!important}.solution-choice,.contact-form-card{transition:none}.contact-solution-panel::before,.contact-form-card::after{opacity:.4}}

/* Contact journey: editorial photo card, clear timeline, and quiet technology motion. */
.contact-process{position:relative;isolation:isolate;overflow:hidden;padding:0;background:radial-gradient(ellipse at 88% 46%,#dceeffa6,transparent 38%),linear-gradient(180deg,#f4f8ff 0%,#f8fbff 100%)}
.contact-process::before{position:absolute;z-index:-1;inset:0;content:"";background-image:linear-gradient(#8fb7ec12 1px,transparent 1px),linear-gradient(90deg,#8fb7ec12 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,transparent 0%,#000 45%,#000 100%);animation:contact-process-grid-drift 24s linear infinite;pointer-events:none}
.contact-process::after{position:absolute;z-index:-1;top:-230px;right:-160px;width:540px;height:540px;content:"";border:1px solid #8abaff25;border-radius:50%;box-shadow:0 0 0 34px #83b4ff0a,0 0 0 72px #83b4ff08;pointer-events:none}
.contact-process-grid{position:relative;z-index:1;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:clamp(32px,5vw,72px);padding-top:56px;padding-bottom:62px}
.contact-team-photo{min-height:0;aspect-ratio:1.42;border:1px solid #d5e6fb;border-radius:26px;background:linear-gradient(145deg,#e5f2ff,#c9e1ff);box-shadow:0 28px 68px #214d801f,0 5px 16px #17487610;isolation:isolate;transform:translateZ(0)}
.contact-team-photo img{z-index:0;transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .5s}
.contact-team-photo::before{position:absolute;z-index:1;inset:-55% -40%;content:"";background:linear-gradient(112deg,transparent 40%,#ffffff08 46%,#ffffffa3 50%,#ffffff0d 54%,transparent 60%);transform:translateX(-76%) rotate(8deg);transition:transform 1.1s cubic-bezier(.2,.7,.2,1);pointer-events:none}
.contact-team-photo::after{z-index:2;height:34%;background:linear-gradient(180deg,transparent 0%,#06152a12 32%,#06152ad9 100%)}
.contact-team-photo:hover img{transform:scale(1.045);filter:saturate(1.08)}
.contact-team-photo:hover::before{transform:translateX(76%) rotate(8deg)}
.contact-team-photo figcaption{z-index:3;bottom:18px;left:19px;padding:8px 12px;border:1px solid #ffffff45;border-radius:999px;background:#06172bb8;box-shadow:0 5px 18px #04162c30;color:#fff;font-size:11px;font-weight:650;letter-spacing:.01em;backdrop-filter:blur(10px)}
.contact-process-copy{max-width:530px;padding:4px 0}
.contact-process-copy>.contact-eyebrow{display:inline-flex;align-items:center;gap:9px;margin:0 0 14px;padding:7px 11px;border:1px solid #d9e9ff;border-radius:999px;background:#ffffffb8;color:#1764df;font-size:10px;font-weight:800;letter-spacing:.13em}
.contact-process-copy>.contact-eyebrow::before{width:7px;height:7px;content:"";border-radius:50%;background:#2482ff;box-shadow:0 0 0 4px #2482ff18,0 0 14px #2482ff9c;animation:contact-process-beacon 2.4s ease-in-out infinite}
.contact-process-copy h2{max-width:500px;margin:0;color:#0b2452;font-size:clamp(31px,3.35vw,42px);line-height:1.12;letter-spacing:-.045em;text-wrap:balance}
.contact-steps{position:relative;gap:10px;margin:24px 0 21px}
.contact-steps::before{position:absolute;top:27px;bottom:27px;left:31px;width:2px;content:"";background:linear-gradient(180deg,#b8d5ff,#dceaff 50%,#b8d5ff);pointer-events:none}
.contact-steps li{position:relative;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:14px;min-height:68px;padding:11px 15px 11px 10px;border:1px solid #dfebfa;border-radius:16px;background:#ffffffc9;box-shadow:0 5px 16px #153d6908;transition:transform .22s,border-color .22s,background .22s,box-shadow .22s}
.contact-steps li:hover{transform:translateX(4px);border-color:#b8d4ff;background:#fff;box-shadow:0 12px 26px #1c5ca615}
.contact-steps li>span{position:relative;z-index:1;width:44px;height:44px;border:1px solid #d6e7ff;background:linear-gradient(145deg,#fff,#e8f2ff);box-shadow:inset 0 0 0 3px #fff,0 4px 12px #1b62bd12;color:#1768e9;font-size:14px;transition:transform .22s,box-shadow .22s}
.contact-steps li:hover>span{transform:scale(1.06);box-shadow:inset 0 0 0 3px #fff,0 0 0 4px #2377ff12,0 5px 15px #1b62bd1e}
.contact-steps strong{color:#102b58;font-size:14px;line-height:1.4}
.contact-steps p{margin-top:4px;color:#637896;font-size:12px;line-height:1.55}
.contact-about-link{min-height:44px;gap:11px;padding:10px 17px;border:1px solid transparent;border-radius:12px;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(120deg,#b9d4ff,#4282ff) border-box;box-shadow:0 7px 18px #1a5dc20d;color:#155ee7!important;font-size:12px;transition:transform .2s,box-shadow .2s,background .2s,color .2s}
.contact-about-link:hover{transform:translateY(-2px);background:linear-gradient(110deg,#1768f5,#237cf8) padding-box,linear-gradient(120deg,#5ebcff,#1768f5) border-box;box-shadow:0 12px 24px #1768f52b;color:#fff!important}
.contact-about-link span{display:inline-block;transition:transform .2s}
.contact-about-link:hover span{transform:translateX(3px)}
.contact-about-link:focus-visible{outline:3px solid #5ba8ff;outline-offset:3px}
@keyframes contact-process-grid-drift{to{background-position:42px 42px}}
@keyframes contact-process-beacon{0%,100%{opacity:1;box-shadow:0 0 0 4px #2482ff18,0 0 14px #2482ff9c}50%{opacity:.65;box-shadow:0 0 0 7px #2482ff0d,0 0 20px #2482ff65}}
@media(max-width:1000px){.contact-process-grid{gap:30px;padding-top:46px;padding-bottom:52px}.contact-team-photo{aspect-ratio:1.28}.contact-process-copy h2{font-size:clamp(30px,3.8vw,38px)}.contact-steps li{gap:11px;padding-right:12px}}
@media(max-width:760px){.contact-process-grid{grid-template-columns:1fr;gap:28px;padding-top:38px;padding-bottom:44px}.contact-team-photo{width:100%;max-height:390px;aspect-ratio:1.55}.contact-process-copy{max-width:none;padding:0 2px}.contact-process-copy h2{max-width:580px;font-size:clamp(31px,6vw,39px)}.contact-steps{margin:19px 0 18px}}
@media(max-width:480px){.contact-process-grid{gap:23px;padding-top:28px;padding-bottom:34px}.contact-team-photo{min-height:0;aspect-ratio:1.28;border-radius:20px}.contact-team-photo figcaption{bottom:12px;left:12px;padding:7px 10px;font-size:10px}.contact-process-copy>.contact-eyebrow{margin-bottom:11px;font-size:9px;letter-spacing:.1em}.contact-process-copy h2{font-size:30px}.contact-steps{gap:8px;margin:17px 0}.contact-steps::before{left:26px}.contact-steps li{grid-template-columns:38px minmax(0,1fr);gap:11px;min-height:65px;padding:9px 10px 9px 8px;border-radius:14px}.contact-steps li>span{width:38px;height:38px;font-size:13px}.contact-steps strong{font-size:13px}.contact-steps p{font-size:11px}.contact-about-link{min-height:42px}}
@media(prefers-reduced-motion:reduce){.contact-process::before,.contact-process-copy>.contact-eyebrow::before{animation:none}.contact-team-photo img,.contact-team-photo::before,.contact-steps li,.contact-steps li>span,.contact-about-link,.contact-about-link span{transition:none}}
