.contact{background:linear-gradient(#f8f6fc 0%,#efe9fa 42%,#f8f6fc 100%);position:relative;overflow:hidden}.contact__grid{z-index:1;grid-template-columns:.8fr 1.2fr;align-items:start;gap:56px;display:grid;position:relative}.contact__dots{pointer-events:none;z-index:0;background-image:radial-gradient(#6d28d924 1.5px,#0000 1.5px);background-size:18px 18px;width:380px;height:380px;position:absolute;bottom:-60px;left:-60px;-webkit-mask-image:radial-gradient(circle,#000 40%,#0000 75%);mask-image:radial-gradient(circle,#000 40%,#0000 75%)}.contact__triangles{width:max(0px, calc((100% - var(--max-width)) / 2));z-index:0;pointer-events:none;perspective:1400px;position:absolute;top:0;bottom:0;overflow:hidden}.contact__triangles--left{left:0}.contact__triangles--right{right:0}.contact__triangle-anchor{position:absolute;transform:translate(-50%,-50%)}.contact__triangle-entrance{display:block}.contact__triangle{clip-path:polygon(50% 0%,0% 100%,100% 100%);transform-style:preserve-3d;transform:rotate(var(--tri-rotate)) rotateX(var(--tri-tilt-x)) rotateY(var(--tri-tilt-y));animation:contact-triangle-drift var(--tri-duration,6s) ease-in-out infinite alternate;animation-delay:var(--tri-delay,0s);will-change:transform;transition:opacity .4s;display:block}.contact__triangle--outline{clip-path:none;overflow:visible}.contact:hover .contact__triangle{animation-duration:calc(var(--tri-duration,6s) * .35)}@keyframes contact-triangle-drift{0%{transform:rotate(var(--tri-rotate)) rotateX(var(--tri-tilt-x)) rotateY(var(--tri-tilt-y)) translate3d(0, 0, 0)}to{transform:rotate(calc(var(--tri-rotate) + 16deg)) rotateX(calc(var(--tri-tilt-x) + 12deg)) rotateY(calc(var(--tri-tilt-y) - 18deg)) translate3d(-10px, -14px, 30px)}}@media (prefers-reduced-motion:reduce){.contact__triangle{animation:none}}@media (width<=640px){.contact__triangles{display:none}.contact__form{padding:22px 18px}.contact__row{grid-template-columns:1fr;gap:14px;margin-bottom:14px}.contact__form input,.contact__form textarea,.contact__form select{padding:15px 14px;font-size:16px}.contact__row+.contact__field{margin-bottom:14px}}.contact__intro{padding-top:12px;position:relative}.contact__heading-accent{color:var(--color-primary)}.contact__blurb{color:var(--color-text);max-width:420px;margin:16px 0 0;font-size:15px;line-height:1.7}.contact__info-list{flex-direction:column;gap:22px;margin-top:32px;display:flex}.contact__info-list li{align-items:flex-start;gap:14px;display:flex}.contact__info-icon{width:44px;height:44px;color:var(--color-primary);background:#6d28d91a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.contact__info-label{color:var(--color-secondary);margin-bottom:2px;font-size:15px;font-weight:700;display:block}.contact__info-detail{color:var(--color-text);max-width:320px;font-size:13.5px;line-height:1.5;display:block}.contact__form{background:#fff;border:1px solid #ececec;border-radius:8px;padding:36px;position:relative;box-shadow:0 2px 14px #140e280d}.contact__row{grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px;display:grid}.contact__field{flex-direction:column;gap:6px;display:flex;position:relative}.contact__field label{letter-spacing:.3px;color:var(--color-secondary);font-size:12.5px;font-weight:600}.contact__field .contact__optional{color:var(--color-text);text-transform:none;letter-spacing:0;font-weight:400}.contact__required{color:var(--color-primary);margin-left:3px}.contact__form input,.contact__form textarea,.contact__form select{width:100%;color:var(--color-secondary);background:#fff;border:1px solid #e2e2e8;border-radius:6px;padding:13px 15px;font-family:inherit;font-size:14.5px;transition:border-color .2s,box-shadow .2s}.contact__form select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%2354595f' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 15px center;background-repeat:no-repeat;padding-right:36px}.contact__form textarea{resize:vertical;margin-bottom:4px}.contact__char-count{color:var(--color-text);align-self:flex-end;margin-bottom:18px;font-size:12px}.contact__form input:hover,.contact__form textarea:hover,.contact__form select:hover{border-color:#c9c9d6}.contact__form input:focus,.contact__form textarea:focus,.contact__form select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 4px #6d28d91f}.contact__privacy{color:var(--color-secondary);background:#6d28d90f;border-radius:8px;align-items:center;gap:10px;margin-bottom:22px;padding:14px 16px;font-size:13px;display:flex}.contact__privacy svg{color:var(--color-primary);flex-shrink:0}.contact__submit{border-color:var(--color-primary);background:var(--color-primary);border-radius:8px;align-items:center;gap:8px;padding:14px 28px;display:inline-flex}.contact__submit:hover{color:var(--color-primary);background:0 0}.contact__success{color:var(--color-secondary);font-size:15px;line-height:1.7}.contact__error{color:#b42318;background:#fef3f2;border:1px solid #fecdca;border-radius:8px;margin:-6px 0 6px;padding:10px 14px;font-size:13.5px}@media (width<=860px){.contact__grid,.contact__row{grid-template-columns:1fr}}
