body:has(.m2-contact){background:#0f182a}.m2.m2-contact{min-height:100vh;position:relative;overflow-x:hidden;isolation:isolate;color:#fff;background:radial-gradient(80% 50% at 30% 112%,rgba(244,170,96,.85) 0,rgba(244,170,96,0) 60%),radial-gradient(55% 60% at 88% 0,rgba(82,217,250,.32) 0,transparent 62%),linear-gradient(180deg,#0f182a,#1b2d4c 45%,#39466a 78%,#6b5a6a)}.m2-contact:before{inset:-20%;background:var(--prism);opacity:.45;mix-blend-mode:screen;transform:rotate(4deg)}.m2-contact:after,.m2-contact:before{content:"";position:fixed;z-index:-1;pointer-events:none}.m2-contact:after{left:46%;top:-10%;width:3%;height:130%;background:var(--spectrum);filter:blur(24px);opacity:.32;transform:rotate(18deg)}.m2-contact .page{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(32px,6vw,96px);align-items:center;padding-block:clamp(40px,7vh,96px) clamp(56px,9vh,120px)}.m2-contact .intro{max-width:34rem}.m2-contact h1{margin:0;font-family:var(--serif);font-weight:300;font-size:clamp(42px,5vw,72px);line-height:1.02;letter-spacing:-.015em}.m2-contact h1 em{font-style:italic}.m2-contact .alt{margin:20px 0 0;font-size:14.5px;color:hsla(0,0%,100%,.75)}.m2-contact .alt a{color:#fff;text-decoration:underline;text-decoration-color:hsla(0,0%,100%,.4);text-underline-offset:3px}.m2-contact .card{background:#fff;color:var(--ink);border-radius:16px;padding:clamp(28px,3.4vw,52px);box-shadow:0 30px 80px rgba(6,10,20,.35)}.m2-contact .card h2{margin:0 0 8px;font-family:var(--serif);font-weight:300;font-size:clamp(32px,3vw,42px);letter-spacing:-.012em;line-height:1.05}.m2-contact .card .sub{margin:0 0 28px;color:var(--ink-3);font-size:15px}.m2-contact form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px}.m2-contact .f{display:flex;flex-direction:column;gap:7px;min-width:0}.m2-contact .f.full{grid-column:1/-1}.m2-contact label{font-size:13.5px;font-weight:500;color:var(--ink-2)}.m2-contact .opt{font-weight:400;color:var(--ink-3)}.m2-contact input,.m2-contact select,.m2-contact textarea{font:inherit;font-size:15.5px;color:var(--ink);background:#f5f2ee;border:1px solid transparent;border-radius:9px;padding:11px 13px;width:100%;transition:border-color .15s ease,box-shadow .15s ease}.m2-contact textarea{resize:vertical;min-height:96px;line-height:1.5}.m2-contact select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23776b63' stroke-width='1.6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:38px}.m2-contact input:focus,.m2-contact select:focus,.m2-contact textarea:focus{outline:none;background:#fff;border-color:var(--cyan-ink);box-shadow:0 0 0 3px rgba(11,127,168,.14)}.m2-contact .f.bad input,.m2-contact .f.bad select{border-color:#c2412d}.m2-contact .err{display:none;font-size:12.5px;color:#b03a28}.m2-contact .f.bad .err{display:block}.m2-contact .submit{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;margin-top:6px}.m2-contact .btn{display:inline-flex;align-items:center;justify-content:center;border-radius:9px;padding:12px 22px;font:inherit;font-weight:500;font-size:15.5px;border:0;cursor:pointer;background:var(--ink);color:var(--cream);transition:background .2s ease}.m2-contact .btn:hover{background:#000}.m2-contact .fine{font-size:13px;color:var(--ink-3)}.m2-contact .fine a{text-decoration:underline;text-underline-offset:2px}.m2-contact .done h2{font-size:34px}.m2-contact .done .tick{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--paper-2);margin-bottom:18px}.m2-contact .done .tick:before{content:"";width:14px;height:8px;border-left:2px solid var(--cyan-ink);border-bottom:2px solid var(--cyan-ink);transform:rotate(-45deg) translateY(-2px)}.m2-contact .done h2{margin:0}.m2-contact .done p{color:var(--ink-2);font-size:16px;line-height:1.6;margin:12px 0 0}.m2-contact .done a{text-decoration:underline;text-underline-offset:3px}@media (max-width:960px){.m2-contact .page{grid-template-columns:minmax(0,1fr);gap:36px;padding-block:24px 48px}.m2-contact .alt{display:none}}@media (max-width:520px){.m2-contact form{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.m2-contact,.m2-contact *{transition:none!important}}.m2-contact .btn[disabled]{opacity:.55;cursor:default}.m2-contact .form-error{flex-basis:100%;margin:0;font-size:13.5px;color:#b03a28}