.contactpage,.legal-page{--line: var(--steel-200);--line-strong: #A9BBD3;--surface: #FFFFFF;--bg: var(--plan-50);--bg-2: var(--plan-100);--ink: var(--ink-900);--ink-2: var(--ink-600);--muted: #5F6672;--accent: var(--mark-500);--accent-hover: var(--mark-700);--accent-ink: var(--ink-900);--accent-soft: #FBEBDD;--steel: #5E7FA8;--steel-hi: #AFC1D8;--steel-lo: #0E1D3D;--good: #15673F;--good-soft: #E2F2E8;--warn: #7A5300;--warn-soft: #FBF0D6;--danger: #9A3412;--chat: #DFF5D6;--chat-ink: #183B1F;--photo: linear-gradient(160deg, #B9C9DC, #6E8AAE 55%, #243B61);--stage: #FFFFFF;--shadow: 0 1px 2px rgba(11,26,51,.05), 0 20px 40px -24px rgba(11,26,51,.25);--ease-out: cubic-bezier(.23,1,.32,1);--ease-in-out: cubic-bezier(.77,0,.175,1);--r: 4px;--r-lg: 12px;.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:0 22px;border-radius:var(--r);font:600 .98rem var(--font);text-decoration:none;border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:transform .14s var(--ease-out),background-color .16s ease,border-color .16s ease}.btn:active{transform:scale(.97)}.btn:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-primary{background:var(--accent);color:var(--accent-ink)}@media(hover:hover)and (pointer:fine){.btn-primary:hover{background:var(--accent-hover)}.btn-ghost:hover{border-color:var(--ink)}}.contact{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:48px;align-items:start}.contact-card{border:1px solid var(--line-strong);border-radius:var(--r-lg);background:var(--surface);padding:24px;display:flex;flex-direction:column;gap:6px}.contact-card .mail{font-size:1.1rem;font-weight:600;user-select:all}@media(max-width:760px){.contact{grid-template-columns:minmax(0,1fr)}}.contact-form{display:flex;flex-direction:column;gap:18px;margin-top:48px}.contact-form .f-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.contact-form label{display:flex;flex-direction:column;gap:6px;font-size:.9rem;font-weight:500;color:var(--ink-2)}.contact-form label small{font-weight:400;color:var(--muted)}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{font:inherit;font-size:1rem;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r);padding:10px 12px;width:100%}.contact-form textarea{resize:vertical;min-height:120px}.contact-form input:focus-visible,.contact-form select:focus-visible,.contact-form textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.contact-form .f-check{flex-direction:row;align-items:flex-start;gap:10px;font-weight:400}.contact-form .f-check input{margin-top:4px;width:18px;height:18px;flex:none;accent-color:var(--accent)}.contact-form .f-check a{color:var(--accent)}.contact-form .f-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.contact-form .f-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.contact-form .f-status{font-size:.95rem;color:var(--ink-2)}.contact-form .f-status.ok{color:var(--ok, #1E8E5A);font-weight:500}.contact-form .f-status.err{color:var(--danger, #C2410C)}.contact-form.sent{display:none}.contact-done{border-left:3px solid var(--accent);padding:4px 0 4px 16px;font-size:1.05rem}.phone-reveal{font:inherit;color:var(--accent);background:none;border:0;padding:0;text-decoration:underline;cursor:pointer}.todo{border:1px dashed var(--line-strong);border-radius:var(--r);padding:10px 14px;color:var(--muted);font-size:.95rem}@media(max-width:600px){.contact-form .f-row{grid-template-columns:minmax(0,1fr)}}.contact-card{border:0;border-radius:0;background:transparent;border-left:1px solid rgba(184,200,222,.25);padding:0 0 0 24px;color:var(--steel-200)}.contact-card strong,.contact-card .mail{color:#fff}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{background:transparent;color:#fff;border:0;border-bottom:1px solid rgba(184,200,222,.4);border-radius:0;padding:10px 0}.contact-form select option{color:var(--ink-900)}.contact-form label{color:var(--steel-200);font-family:var(--mono);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.contact-form label small{text-transform:none;letter-spacing:0}.contact-form .f-check{font-family:var(--font);text-transform:none;letter-spacing:0;font-size:.95rem}.contact-form .f-check a{color:var(--mark-500)}.contact-form input:focus-visible,.contact-form select:focus-visible,.contact-form textarea:focus-visible{outline:0;border-bottom-color:var(--mark-500);box-shadow:none}.contact-form .f-status{color:var(--steel-200)}.contact-form .f-status.err{color:#f6b8a6}.contact-done{border-left-color:var(--mark-500);color:#fff}.phone-reveal{color:var(--mark-500);background:none;border:0;padding:0;font:inherit;cursor:pointer;text-decoration:underline}}.legal-page .wrap{max-width:68ch;display:flex;flex-direction:column;gap:14px}.legal-page h1{font-size:clamp(2.2rem,8.5vw,5rem);overflow-wrap:anywhere;hyphens:auto;margin-bottom:12px}.legal-page h2{font-family:var(--display);font-weight:600;font-size:1.4rem;line-height:1.2;letter-spacing:-.01em;margin-top:28px;padding-top:20px;border-top:1px solid var(--steel-200)}.legal-page p,.legal-page li{color:var(--ink-600);line-height:1.6;max-width:none}.legal-page ul{list-style:disc;padding-left:22px;display:flex;flex-direction:column;gap:4px}.legal-page a,.legal-page .phone-reveal{color:var(--mark-800)}.legal-page .phone-reveal{background:none;border:0;padding:6px 0;font:inherit;cursor:pointer;text-decoration:underline;min-height:32px}
