.contact-v4{--ink:#092c59;--muted:#506d8d;position:relative;width:100%;margin:27px 0 35px;color:var(--ink);font-family:Inconsolata,sans-serif}.contact-v4 *{box-sizing:border-box}.contact-symbols{position:absolute;width:0;height:0}.contact-v4 svg{display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.contact-badge{display:table;width:max-content;margin:0;padding:7px 15px;border:1px solid #3faac650;border-radius:8px;background:linear-gradient(135deg,#e7fffc,#fff0fc);box-shadow:0 7px 17px #236d8918,inset 0 1px #fff;color:#087ca4;font-size:14px;font-weight:850;line-height:1;letter-spacing:.09em}.contact-v4-hero{position:relative;display:grid;grid-template-columns:.95fr 1.05fr;min-height:440px;align-items:center;overflow:hidden;padding:31px 69px;border:1px solid #38abc329;border-radius:18px;background:linear-gradient(112deg,#ffffffee,#effffcdc 53%,#fff0fbb0);box-shadow:0 18px 43px #1e66891a,inset 0 1px #fff}.contact-v4-hero h1{margin:17px 0 11px;font-size:clamp(51px,4.6vw,72px);line-height:.91;letter-spacing:-.052em;font-family:"Momo Trust Display",Inconsolata,sans-serif!important}.contact-v4-hero h1 em,.contact-v4-hero h1 strong,.contact-info h2 em,.contact-mini-faq h2 em,.contact-v4-cta h2 em{font-style:normal;font-weight:800;background:linear-gradient(90deg,#04bcc6,#0d92e8 50%,#df47d3);-webkit-background-clip:text;background-clip:text;color:transparent;font-family:"Momo Trust Display",Inconsolata,sans-serif!important}.contact-v4-hero>div>p:not(.contact-badge){max-width:590px;margin:0;color:#405f7d;font-size:18px;line-height:1.45}.contact-v4-hero>picture,.contact-v4-hero>picture img{display:block;width:100%;height:auto;max-height:400px;object-fit:contain;filter:drop-shadow(0 22px 24px #147b9c28)}.contact-v4-hero ul{display:flex;gap:30px;margin:25px 0 0;padding:0;list-style:none}.contact-v4-hero li{display:flex;align-items:center;gap:10px}.contact-v4-hero li>i{display:grid;width:45px;aspect-ratio:1;place-items:center;border:5px solid #fff;border-radius:50%;background:#f0fffc;box-shadow:0 8px 18px #246c8a1c;color:#6530e9;font-style:normal;font-size:22px}.contact-v4-hero li svg{width:20px}.contact-v4-hero li>b{display:grid;gap:3px;font-size:14px}.contact-v4-hero li small{color:#657f98;font-size:14px}.contact-orb{position:absolute;z-index:3;width:45px;aspect-ratio:1;border:1px solid #fff;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff 0 8%,#4cf4e6 18%,#08c3dc 43%,#da55df 74%,#c6ffff 90%);box-shadow:inset -7px -8px 11px #5b24bb3a,0 10px 18px #1a90b32a}.cvo-a{left:12px;top:53px;width:31px}.cvo-b{right:8px;bottom:25px;width:57px}.contact-v4-main{display:grid;grid-template-columns:1.65fr 1fr;gap:21px;margin-top:21px;align-items:stretch}.contact-v4-main>form,.contact-info,.contact-hours,.contact-v4-lower>article,.contact-v4-cta{border:1px solid #3b9fbd44;border-radius:15px;background:linear-gradient(145deg,#ffffffef,#effdfbea 55%,#fff3fce8);box-shadow:0 17px 38px #2367871b,inset 0 1px #fff}.contact-v4-main>form{padding:31px 34px}.contact-v4-main h2{margin:14px 0 5px;font-size:35px;line-height:1;font-family:"Momo Trust Display",Inconsolata,sans-serif!important}.contact-v4-main form>span,.contact-info>p:not(.contact-badge){color:var(--muted);font-size:14px}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:24px}.contact-fields label{display:grid;grid-template-columns:40px 1fr;align-items:center;min-height:55px;border:1px solid #56a4bf40;border-radius:10px;background:#ffffffb8}.contact-fields label.wide{grid-column:1/-1}.contact-fields label.message{position:relative;align-items:start;min-height:190px;padding-top:15px}.contact-fields i{display:grid;place-items:center;color:#216de8}.contact-fields svg{width:21px}.contact-fields input,.contact-fields textarea{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font:14px inherit}.contact-fields textarea{height:155px;resize:vertical;padding:2px 12px 25px 0}.contact-fields label.message small{position:absolute;right:12px;bottom:10px;color:#7890a6}.contact-button{display:flex;height:57px;align-items:center;justify-content:center;padding:0 22px;border:0;border-radius:10px;background:linear-gradient(105deg,#00cabb,#05bbdf 56%,#df48d0);box-shadow:0 11px 24px #18acb934,0 8px 18px #d84ac92b;color:#fff;font-size:14px;font-weight:800;text-decoration:none;cursor:pointer}.contact-button b{margin-left:auto;font-size:19px}.contact-v4-main form>.contact-button{width:100%;margin-top:19px}.contact-alert{margin-top:16px;padding:13px;border-radius:9px;font-size:14px}.contact-alert.success{background:#dffbed;color:#116642}.contact-alert.error{background:#fff0f2;color:#a92c42}.contact-info{padding:28px}.contact-info h2{margin:14px 0 10px;font-size:34px;line-height:.98;font-family:"Momo Trust Display",Inconsolata,sans-serif!important}.contact-methods{display:grid;gap:8px;margin-top:18px}.contact-methods>a{display:grid;grid-template-columns:58px 1fr 15px;align-items:center;gap:9px;padding:9px;border-radius:38px;background:#ffffffc9;box-shadow:0 8px 19px #2d6c8714;color:var(--ink);text-decoration:none}.contact-methods a>i{display:grid;width:51px;aspect-ratio:1;place-items:center;border:6px solid #fff;border-radius:50%;background:#e7fffb;color:#04b8bc}.contact-methods svg{width:24px}.contact-methods span{display:grid;gap:2px}.contact-methods b{font-size:14px}.contact-methods em{color:#087fe6;font-size:14px;font-style:normal}.contact-methods small{color:#71879b;font-size:14px}.contact-hours{display:flex;width:34%;min-width:340px;align-items:center;gap:15px;margin:14px 0 0 auto;padding:16px 22px}.contact-hours>i{display:grid;width:51px;aspect-ratio:1;place-items:center;border:5px solid #fff;border-radius:50%;background:#eafffb;color:#09afba}.contact-hours svg{width:25px}.contact-hours div{display:grid;gap:5px}.contact-hours b{font-size:14px}.contact-hours span{color:var(--muted);font-size:14px}.contact-hours time{margin-left:auto;color:#6e39e8;font-size:45px}.contact-v4-lower{display:grid;grid-template-columns:1.25fr 1fr;gap:20px;margin-top:18px}.contact-v4-lower>article{padding:23px}.contact-v4-lower h2{margin:0 0 5px;font-size:23px;font-family:"Momo Trust Display",Inconsolata,sans-serif!important}.contact-v4-lower>article>p{margin:0;color:var(--muted);font-size:14px}.contact-v4-lower iframe{width:100%;height:300px;margin-top:18px;border:0;border-radius:10px}.contact-mini-faq{position:relative}.contact-mini-faq picture{position:absolute;right:15px;top:6px;width:135px}.contact-mini-faq img{width:100%;height:auto}.contact-mini-faq h2 em{font-style:normal;font-family:"Momo Trust Display",Inconsolata,sans-serif!important}.contact-mini-faq details{margin-top:9px;border:1px solid #6aa7bd35;border-radius:10px;background:#fff}.contact-mini-faq summary{padding:12px;cursor:pointer;font-size:14px;font-weight:700}.contact-mini-faq details p{padding:0 12px 12px;font-size:14px}.contact-mini-faq>a{display:flex;height:43px;align-items:center;justify-content:center;margin-top:12px;border:1px solid #b95ce7;border-radius:9px;color:#0b70ba;font-size:14px;font-weight:800;text-decoration:none}.contact-v4-cta{display:grid;grid-template-columns:275px 1fr 210px;min-height:185px;align-items:center;gap:24px;margin-top:20px;padding:13px 38px}.contact-v4-cta picture,.contact-v4-cta img{display:block;width:100%;height:160px;object-fit:contain}.contact-v4-cta h2{margin:12px 0 5px;font-size:30px;font-family:"Momo Trust Display",Inconsolata,sans-serif!important}.contact-v4-cta div>span{color:#496780;font-size:14px}
@media(max-width:900px){.contact-v4-hero{grid-template-columns:1fr;padding:35px}.contact-v4-hero ul{flex-wrap:wrap}.contact-v4-hero>picture{height:310px}.contact-v4-main{grid-template-columns:1fr}.contact-hours{width:100%}.contact-v4-cta{grid-template-columns:180px 1fr}.contact-v4-cta>.contact-button{grid-column:2;width:190px}}@media(max-width:600px){.contact-v4{margin-top:12px}.contact-v4-hero{padding:27px 19px 0}.contact-v4-hero h1{font-size:43px;font-family:"Momo Trust Display",Inconsolata,sans-serif!important}.contact-v4-hero>picture{height:245px}.contact-v4-hero ul{gap:10px}.contact-v4-hero li{width:47%}.contact-v4-main>form,.contact-info{padding:20px}.contact-fields{grid-template-columns:1fr}.contact-fields label.wide{grid-column:auto}.contact-v4-lower{grid-template-columns:1fr}.contact-mini-faq picture{width:100px}.contact-v4-cta{grid-template-columns:1fr;padding:17px;text-align:center}.contact-v4-cta picture{height:145px}.contact-v4-cta .contact-badge{margin-inline:auto}.contact-v4-cta>.contact-button{grid-column:auto;width:100%}}

/* Keep the contact controls compact even when shared form styles are loaded. */
.contact-v4 .contact-fields{
  grid-template-rows:55px 55px 55px 190px;
  grid-auto-rows:auto;
  align-items:start;
}
.contact-v4 .contact-fields>label:not(.message){
  width:100%;
  height:55px!important;
  min-height:55px!important;
  max-height:55px!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden;
}
.contact-v4 .contact-fields>label.message{
  width:100%;
  height:190px!important;
  min-height:190px!important;
  max-height:190px!important;
  margin:0!important;
  padding:15px 0 0!important;
  overflow:hidden;
}
.contact-v4 .contact-fields input{
  display:block;
  height:53px!important;
  min-height:0!important;
  margin:0!important;
  padding:0 12px 0 0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.contact-v4 .contact-fields textarea{
  display:block;
  height:155px!important;
  min-height:155px!important;
  max-height:155px!important;
  margin:0!important;
  padding:2px 12px 25px 0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
@media(max-width:600px){
  .contact-v4 .contact-fields{
    grid-template-rows:repeat(5,55px) 190px;
  }
}

/* Placeholders must be readable before focus, including after instant navigation. */
.contact-v4 .contact-fields input::placeholder,
.contact-v4 .contact-fields textarea::placeholder{
  color:#607d9d!important;
  opacity:1!important;
  visibility:visible!important;
  -webkit-text-fill-color:#607d9d!important;
  transition:none!important;
}
.contact-v4 .contact-fields input:not(:focus)::placeholder,
.contact-v4 .contact-fields textarea:not(:focus)::placeholder{
  color:#607d9d!important;
  opacity:1!important;
  visibility:visible!important;
  -webkit-text-fill-color:#607d9d!important;
}

/* Inline SVGs otherwise keep the browser's 300x150 intrinsic canvas and push
   the input/placeholder below the clipped 55px control on first render. */
.contact-v4 .contact-fields>label{
  grid-template-rows:minmax(0,1fr)!important;
}
.contact-v4 .contact-fields i{
  width:40px!important;
  height:100%!important;
  min-height:0!important;
  align-self:stretch!important;
  overflow:hidden!important;
}
.contact-v4 .contact-fields svg{
  width:21px!important;
  height:21px!important;
  min-width:21px!important;
  min-height:21px!important;
}
