.contact{padding:clamp(100px,16vh,200px) var(--page-pad);position:relative;overflow:hidden}.contact:before{content:"";position:absolute;left:75%;top:62%;transform:translate(-50%,-50%);width:48vw;height:48vw;max-width:640px;max-height:640px;background:radial-gradient(circle,var(--accent) 0%,transparent 60%);opacity:.1;border-radius:50%;filter:blur(20px);animation:orbPulse 14s var(--e-in-out) infinite alternate;pointer-events:none}body[data-mode=light] .contact:before{opacity:.05}.contact__inner{position:relative;z-index:2;max-width:1320px;margin:0 auto}.contact__head{margin-bottom:clamp(40px,6vw,72px);max-width:900px}.contact__head .eyebrow{margin-bottom:20px}.contact__title{font-family:var(--f-display);font-size:clamp(48px,8vw,128px);line-height:.95;letter-spacing:-.035em;font-weight:500;margin:0 0 24px}.contact__title em{font-style:normal;color:var(--accent);font-family:var(--f-display)}.contact__lede{color:var(--fg-dim);font-size:clamp(15px,1.4vw,18px);max-width:52ch;line-height:1.55;margin:0}.contact__grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.65fr);gap:clamp(48px,7vw,112px);align-items:start}.contact__side{display:flex;flex-direction:column;gap:0;padding:0;background:none;border:0;border-top:1px solid var(--line)}.contact__side-block{display:flex;flex-direction:column;gap:8px;padding:22px 0 24px;border-bottom:1px solid var(--line)}.contact__side-block .mono-up{font-size:10px;color:var(--fg-mute);letter-spacing:.12em}.contact__side-block a,.contact__side-block p{font-family:var(--f-display);font-size:clamp(18px,1.55vw,24px);font-weight:500;letter-spacing:-.015em;line-height:1.25;margin:0;color:var(--fg);transition:color .25s var(--e-out);word-break:break-word}.contact__side-block a:hover{color:var(--accent)}.contact__side-block p{color:var(--fg-dim)}.contact__mail{display:inline-block}.contact__form{display:flex;flex-direction:column;gap:28px;border-top:1px solid var(--line);padding-top:22px}.contact__row{display:grid;grid-template-columns:1fr 1fr;gap:28px}.contact__field{position:relative;display:flex;flex-direction:column;gap:6px;padding-bottom:12px;border-bottom:1px solid var(--line);min-width:0;transition:border-color .25s var(--e-out)}.contact__field:hover{border-bottom-color:var(--fg-dim)}.contact__field:focus-within{border-bottom-color:var(--accent)}.contact__label{font-size:10px;color:var(--fg-mute);letter-spacing:.12em}.contact__form input,.contact__form select,.contact__form textarea{appearance:none;-webkit-appearance:none;width:100%;background:transparent;border:0;border-radius:0;padding:4px 0;font-family:var(--f-display);font-size:clamp(16px,1.35vw,19px);color:var(--fg);line-height:1.35;letter-spacing:-.01em;outline:none}.contact__form textarea{resize:vertical;min-height:120px;font-family:var(--f-sans);letter-spacing:0;padding-top:6px}.contact__form select{cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--fg-dim) 50%),linear-gradient(135deg,var(--fg-dim) 50%,transparent 50%);background-position:calc(100% - 8px) 60%,calc(100% - 3px) 60%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:24px}.contact__form input::placeholder,.contact__form textarea::placeholder{color:var(--fg-mute);font-family:var(--f-sans);font-size:15px;letter-spacing:0}.contact__form input:focus,.contact__form select:focus,.contact__form textarea:focus{outline:none}.contact__foot{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-top:12px;flex-wrap:wrap}.contact__legal{font-size:10px;color:var(--fg-mute);letter-spacing:.12em;max-width:42ch;line-height:1.6;margin:0}.contact__submit{appearance:none;cursor:pointer;display:inline-flex;align-items:center;gap:16px;padding:10px 0;background:transparent;border:0;color:var(--fg);font-family:var(--f-display);font-size:clamp(22px,2.3vw,32px);font-weight:500;letter-spacing:-.02em;line-height:1;position:relative;transition:color .25s var(--e-out)}.contact__submit:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(.45);transform-origin:left center;transition:transform .4s var(--e-out)}.contact__submit:hover{color:var(--accent)}.contact__submit:hover:after{transform:scaleX(1)}.contact__submit:hover .contact__submit-arrow{transform:translate(8px)}.contact__submit:disabled{cursor:progress;color:var(--fg-mute)}.contact__submit:disabled:after{transform:scaleX(.45)}.contact__submit-arrow{font-family:var(--f-mono);font-size:.7em;display:inline-block;transition:transform .4s var(--e-out)}.contact__submit:focus-visible{outline:2px solid var(--accent);outline-offset:6px;border-radius:2px}@media(max-width:900px){.contact__grid{grid-template-columns:1fr;gap:32px}.contact__row{grid-template-columns:1fr;gap:24px}.contact__form{gap:24px}.contact__foot{flex-direction:column;align-items:flex-start;gap:20px}}.footer{background:var(--bg-2);border-top:1px solid var(--line);padding:40px 0 24px;position:relative;overflow:hidden}.footer__brand{display:block;padding:0 var(--page-pad);margin-bottom:32px;color:var(--fg);line-height:1;text-decoration:none}.footer__brand-svg{display:block;width:100%;height:auto;color:var(--fg)}.footer__row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;padding:24px var(--page-pad) 0;border-top:1px solid var(--line)}.footer__col{display:flex;flex-direction:column;gap:6px}.footer__col--c{text-align:center}.footer__col--end{text-align:right;align-items:flex-end}.footer__tel{color:var(--fg);text-decoration:none;transition:color .25s var(--e-out)}.footer__tel:hover{color:var(--accent)}.footer__top{font-family:var(--f-mono)}
