.contact-hero{background:var(--bg);padding:12rem 3rem 5rem}.contact-hero h1{font-family:var(--font-jp);opacity:0;margin-bottom:1.5rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:800;line-height:1.25;animation:.9s cubic-bezier(.16,1,.3,1) .2s forwards heroLineIn;transform:translateY(20px)}.contact-hero p{color:var(--muted);opacity:0;font-size:.97rem;font-weight:300;line-height:2;animation:.9s cubic-bezier(.16,1,.3,1) .4s forwards heroLineIn;transform:translateY(16px)}.contact-section{background:var(--bg2);padding:5rem 3rem 8rem}.contact-layout{max-width:680px;margin:0 auto}.contact-sidebar{display:none}.contact-form-wrap{min-width:0}.contact-form{flex-direction:column;gap:2rem;display:flex}.form-group{flex-direction:column;gap:.6rem;display:flex}.form-group label{letter-spacing:.06em;color:var(--text);align-items:center;gap:.6rem;font-size:.82rem;font-weight:600;display:flex}.required{letter-spacing:.1em;color:var(--accent);border:1px solid #c8a96e4d;padding:.1rem .4rem;font-size:.65rem;font-weight:600}.optional{color:var(--muted);border:1px solid var(--border2);padding:.1rem .4rem;font-size:.65rem}.form-group input,.form-group textarea,.form-group select{background:var(--bg);border:1px solid var(--border2);color:var(--text);font-family:var(--font-en);appearance:none;outline:none;width:100%;padding:.9rem 1.2rem;font-size:.9rem;transition:border-color .25s}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--muted);opacity:.5}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:#c8a96e80}.form-group input.error,.form-group textarea.error,.form-group select.error{border-color:#ff505080}.form-group textarea{resize:vertical;min-height:160px;line-height:1.7}.select-wrap{position:relative}.select-wrap:after{content:"";border-left:4px solid #0000;border-right:4px solid #0000;border-top:5px solid var(--muted);pointer-events:none;width:0;height:0;position:absolute;top:50%;right:1.2rem;transform:translateY(-50%)}.form-group select option{background:var(--bg2);color:var(--text)}.field-error{color:#ff6464cc;font-size:.75rem;display:none}.field-error.visible{display:block}.submit-btn{cursor:pointer;border:none;align-self:center;padding:1rem 3rem;font-size:.9rem}.submit-btn:disabled{cursor:wait;opacity:.7}.contact-success[hidden]{display:none!important}.contact-success{flex-direction:column;align-items:flex-start;gap:1.5rem;padding:4rem 0;display:flex}.success-icon{color:var(--accent)}.contact-success h3{font-family:var(--font-jp);font-size:1.4rem;font-weight:700}.contact-success p{color:var(--muted);font-size:.92rem;font-weight:300;line-height:2}@media (width<=900px){.contact-layout{max-width:100%}}@media (width<=640px){.contact-hero{padding:9rem 1.5rem 4rem}.contact-section{padding:3rem 1.2rem 5rem}.submit-btn{text-align:center;width:100%}}
