.contact-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;scroll-margin-top:40px}.contact-intro p{color:var(--muted);line-height:1.8}.contact-form{padding:28px;border:1px solid var(--line);border-radius:24px;background:var(--wash);min-width:0}.contact-form label{display:block;font-weight:700;margin:0 0 18px}.contact-form label span{font-size:12px;font-weight:400;color:var(--muted)}.contact-form input,.contact-form textarea,.contact-form select{display:block;width:100%;padding:14px 16px;margin-top:8px;font:inherit;color:var(--ink);background:white;border:1px solid var(--line);border-radius:12px;box-sizing:border-box;min-width:0}.contact-form textarea{resize:vertical;min-height:130px;line-height:1.6}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-help{font-size:13px;line-height:1.7;color:var(--muted)}.contact-form a,.legal-content a{color:var(--brand);text-decoration:underline;text-underline-offset:3px}.contact-form button{cursor:pointer}.contact-form input:focus-visible,.contact-form select:focus-visible,.contact-form textarea:focus-visible{outline:3px solid var(--brand-soft);border-color:var(--brand)}#contact-status{font-size:14px;line-height:1.7}#contact-fallback{border-top:1px solid var(--line);margin-top:20px;padding-top:16px}#contact-copy{padding:12px 18px;border:1px solid var(--line);border-radius:12px;font:inherit;background:white}.legal-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:28px;padding-bottom:28px;border-bottom:1px solid var(--line)}.legal-content{max-width:820px;padding-top:60px;padding-bottom:60px}.legal-content h1{font-size:clamp(36px,7vw,60px);line-height:1.1;letter-spacing:-1.5px;margin:14px 0 24px}.legal-content h2{font-size:24px;line-height:1.3;margin:32px 0 14px}.legal-content p,.legal-content li{line-height:1.8;color:var(--muted)}.legal-content ul{padding-left:22px}.legal-notice{background:#fff4da;color:#654500!important;border:1px solid #ecd3a0;border-radius:16px;padding:18px 22px}.legal-footer{display:flex;flex-wrap:wrap;gap:22px;padding-top:28px;padding-bottom:36px;border-top:1px solid var(--line)}.site-footer{flex-wrap:wrap;row-gap:18px}.contact-section [hidden]{display:none!important}@media(max-width:800px){.contact-section{grid-template-columns:1fr;gap:26px}.contact-form{padding:20px}.contact-fields{grid-template-columns:1fr;gap:0}.legal-header{flex-wrap:wrap}.legal-content{padding-top:36px}}
