.contact-page .contact-section .section-inner,.contact-page .page-head-inner{max-width:var(--w-wide)}.contact-page .contact-grid{display:grid;grid-template-columns:1.25fr 1fr;grid-gap:3rem;gap:3rem;align-items:start}.contact-page .form-intro{margin-bottom:var(--head-gap)}.contact-page .form-intro h2{font-size:var(--fs-h2);font-weight:800;line-height:1.4;margin-bottom:.6rem}.contact-page .form-intro p{color:var(--text-sub);font-size:.95rem}.contact-page .field{margin-bottom:1.4rem}.contact-page .field label{display:block;font-size:.88rem;font-weight:600;color:var(--text-main);margin-bottom:.5rem}.contact-page .field .req{font-weight:700;color:var(--bg);background:var(--accent-text);border-radius:4px;font-family:var(--font-en);letter-spacing:.03em}.contact-page .field .opt,.contact-page .field .req{display:inline-block;font-size:.68rem;padding:.1rem .45rem;margin-left:.4rem;vertical-align:middle}.contact-page .field .opt{font-weight:600;color:var(--text-light);background:var(--bg-sub);border:1px solid var(--border);border-radius:4px}.contact-page .field input,.contact-page .field select,.contact-page .field textarea{width:100%;font-family:inherit;font-size:.95rem;color:var(--text-main);padding:.75rem .9rem;border:1.5px solid var(--border);border-radius:8px;background:var(--bg);transition:border-color .25s,box-shadow .25s}.contact-page .field input::placeholder,.contact-page .field textarea::placeholder{color:var(--text-light)}.contact-page .field input:focus,.contact-page .field select:focus,.contact-page .field textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.contact-page .field textarea{resize:vertical;min-height:140px;line-height:1.7}.contact-page .field select{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2366707F' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .9rem center;padding-right:2.4rem}.contact-page .field-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.contact-page .form-consent{display:flex;align-items:flex-start;gap:.6rem;font-size:.84rem;color:var(--text-sub);margin:.4rem 0 1.6rem}.contact-page .form-consent input{width:16px;height:16px;margin-top:.2rem;flex-shrink:0;accent-color:var(--primary)}.contact-page .form-consent a{color:var(--primary-text);text-decoration:underline;white-space:nowrap}.contact-page .contact-grid .btn-primary{width:100%;padding:.95rem 2.2rem;font-size:.98rem;border:none;font-family:inherit}.contact-page .form-note{font-size:.78rem;color:var(--text-light);margin-top:1rem;text-align:center;line-height:1.6}.contact-page .hp-field{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.contact-page .side-card{background:var(--bg-section);border:1px solid var(--border);border-radius:var(--radius-card);padding:var(--card-pad);margin-bottom:var(--card-gap)}.contact-page .side-card:last-child{margin-bottom:0}.contact-page .side-card h3.info-title{font-size:var(--fs-h3);font-weight:800;margin-bottom:1.2rem;color:var(--text-main)}.contact-page .info-item{display:flex;gap:.9rem;margin-bottom:1.1rem;align-items:flex-start}.contact-page .info-item:last-child{margin-bottom:0}.contact-page .info-ic{flex-shrink:0;width:44px;height:44px;border-radius:8px;background:var(--bg);border:1px solid var(--border);display:flex;align-items:center;justify-content:center}.contact-page .info-ic svg{width:22px;height:22px;stroke:var(--primary-text);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.contact-page .info-body{font-size:.88rem;line-height:1.6}.contact-page .info-body .info-label{display:block;font-size:.72rem;font-weight:700;color:var(--text-light);letter-spacing:.04em;margin-bottom:.15rem;text-transform:uppercase;font-family:var(--font-en)}.contact-page .info-body .info-val{color:var(--text-main)}.contact-page .info-body .info-val strong{font-weight:700}.contact-page .info-sub{font-size:.8rem;color:var(--text-sub)}@media (max-width:860px){.contact-page .contact-grid{grid-template-columns:1fr;gap:2rem}.contact-page .field-row{grid-template-columns:1fr;gap:0}}