.contact-page .contact{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:clamp(24px,4vw,48px);align-items:start;padding-block:clamp(40px,5vw,64px) clamp(56px,8vw,104px)}@media (max-width:899px){.contact-page .contact{grid-template-columns:1fr}}.contact-page .card{background:var(--surface-2);border:.5px solid var(--border);border-radius:var(--radius-card);padding:var(--pad-xl)}@media (max-width:479px){.contact-page .card{padding:var(--pad-lg)}}.contact-page .card h2{font-size:var(--step-h3);font-weight:500;line-height:1.5}.contact-page .card .sub{margin-top:var(--gap-xs);font-size:var(--step-sm);color:var(--text-secondary);line-height:1.7}.contact-page .card .notice{margin-top:var(--gap-lg);max-width:none}.contact-page .form{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap-lg);margin-top:var(--gap-xl)}.contact-page .form .full{grid-column:1/-1}@media (max-width:559px){.contact-page .form{grid-template-columns:1fr}}.contact-page .fld{display:flex;flex-direction:column;gap:var(--gap-sm)}.contact-page .fld label{font-size:var(--step-sm);font-weight:500;color:var(--text-primary)}.contact-page .fld label .opt{font-weight:400;color:var(--text-muted)}.contact-page .fld input,.contact-page .fld select,.contact-page .fld textarea{width:100%;padding:0 var(--pad-md);height:44px;font:400 var(--step-body)/1.5 var(--font-sans);color:var(--text-primary);background:var(--surface-2);border:.5px solid var(--border-strong);border-radius:var(--radius);outline:none;transition:border-color var(--dur-snap) var(--ease-out);-webkit-appearance:none;appearance:none}.contact-page .fld textarea{height:auto;min-height:148px;padding:var(--pad-md);resize:vertical;line-height:1.7}.contact-page .fld input::placeholder,.contact-page .fld textarea::placeholder{color:var(--text-muted)}.contact-page .fld input:hover,.contact-page .fld select:hover,.contact-page .fld textarea:hover{border-color:var(--border-stronger)}.contact-page .fld input:focus-visible,.contact-page .fld select:focus-visible,.contact-page .fld textarea:focus-visible{border-color:var(--border-accent);box-shadow:var(--focus-shadow)}.contact-page .fld .sel{position:relative}.contact-page .fld .sel select{padding-right:40px;cursor:pointer}.contact-page .fld .sel svg{position:absolute;right:14px;top:50%;width:14px;height:14px;transform:translateY(-50%);color:var(--text-secondary);pointer-events:none}.contact-page .fld .err{display:none;font-size:var(--step-sm);color:var(--text-danger)}.contact-page .fld.invalid input,.contact-page .fld.invalid textarea{border-color:var(--border-danger)}.contact-page .fld.invalid .err{display:block}.contact-page .form-foot{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:var(--gap-lg);margin-top:var(--gap-xs)}.contact-page .form-foot .hint{font-size:var(--step-sm);color:var(--text-secondary)}.contact-page .result{grid-column:1/-1;display:none;gap:var(--gap-md);align-items:flex-start;padding:var(--pad-md) var(--pad-lg);border-radius:var(--radius);background:var(--bg-warning);color:var(--text-warning);font-size:var(--step-sm);line-height:1.7}.contact-page .result.show{display:flex}.contact-page .result.ok{background:var(--bg-success);color:var(--text-success)}.contact-page .result svg{width:16px;height:16px;flex:none;margin-top:3px}.contact-page .aside{display:flex;flex-direction:column;gap:var(--gap-lg)}.contact-page .mails{margin-top:var(--gap-md)}.contact-page .mails div{display:flex;justify-content:space-between;align-items:center;gap:var(--gap-md);flex-wrap:wrap;padding-block:var(--pad-md);border-top:.5px solid var(--border);font-size:var(--step-sm)}.contact-page .mails div:first-child{border-top:0}.contact-page .mails dt{color:var(--text-secondary)}.contact-page .mails dd{margin:0}.contact-page .mails a.mail{font-family:var(--font-mono);font-size:var(--step-sm);color:var(--text-accent);text-decoration:none}.contact-page .mails a.mail:hover{text-decoration:underline;text-underline-offset:3px}.contact-page .reply{display:flex;gap:var(--gap-sm);align-items:center;margin-top:var(--gap-md);padding-top:var(--gap-md);border-top:.5px solid var(--border);font-size:var(--step-sm);color:var(--text-secondary)}.contact-page .reply svg{width:16px;height:16px;flex:none;color:var(--text-accent)}.contact-page .faq{padding-block:var(--pad-sm)}.contact-page .faq h2{margin-bottom:var(--gap-sm)}.contact-page .faq details{border-top:.5px solid var(--border)}.contact-page .faq details:first-of-type{border-top:0}.contact-page .faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:var(--gap-md);align-items:center;padding-block:var(--pad-md);font-size:var(--step-body);font-weight:500;line-height:1.5}.contact-page .faq summary::-webkit-details-marker{display:none}.contact-page .faq summary svg{width:16px;height:16px;flex:none;color:var(--text-muted);transition:transform var(--dur-base) var(--ease-snap)}.contact-page .faq details[open] summary svg{transform:rotate(45deg)}.contact-page .faq details p{padding-bottom:var(--pad-md);font-size:var(--step-sm);line-height:1.75;color:var(--text-secondary)}.contact-page .faq a{color:var(--text-accent);text-underline-offset:3px}.contact-page .faq a:hover{text-decoration:underline}