.contact-layout{display:grid;grid-template-columns:1fr;gap:48px}@media (min-width:1024px){.contact-layout{grid-template-columns:1fr 360px;gap:64px;align-items:start}}.contact-form{background-color:var(--color-white);border-radius:var(--radius-xl);padding:40px 32px;box-shadow:var(--shadow-card)}.form-group{margin-bottom:24px}.form-label{display:block;font-size:14px;font-weight:700;color:var(--color-text);margin-bottom:8px}.form-required{display:inline-block;margin-left:6px;padding:2px 6px;background-color:var(--color-primary);color:var(--color-white);font-size:10px;font-weight:700;border-radius:var(--radius-sm);vertical-align:middle}.form-optional{display:inline-block;margin-left:6px;padding:2px 6px;background-color:var(--color-border);color:var(--color-sub);font-size:10px;font-weight:500;border-radius:var(--radius-sm);vertical-align:middle}.form-input,.form-select,.form-textarea{width:100%;padding:12px 16px;font-family:var(--font-family);font-size:15px;color:var(--color-text);background-color:var(--color-bg-alt);border:2px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition),background-color var(--transition);appearance:none;-webkit-appearance:none}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:0;border-color:var(--color-primary);background-color:var(--color-white);box-shadow:0 0 0 3px rgba(224,140,10,.15)}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-sub)}.form-textarea{resize:vertical;min-height:160px}.form-select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23464649' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:40px;cursor:pointer}.form-note{font-size:12px;color:var(--color-sub);margin-top:6px;line-height:1.6}.form-privacy{font-size:13px;color:var(--color-sub);line-height:1.8;margin-bottom:24px}.form-privacy a{color:var(--color-primary);text-decoration:underline}.form-submit{width:100%;padding:18px;font-size:16px}.contact-info{display:flex;flex-direction:column;gap:20px}.contact-info-box{background-color:var(--color-white);border-radius:var(--radius-lg);padding:28px 24px;box-shadow:var(--shadow-card)}.contact-info-box__icon{margin-bottom:12px;color:var(--color-primary)}.contact-info-box__icon [data-lucide]{width:28px;height:28px}.contact-info-box__title{font-size:15px;font-weight:700;margin-bottom:8px}.contact-info-box__text{font-size:13px;color:var(--color-sub);line-height:1.8}.privacy-content{max-width:800px;margin:0 auto;background-color:var(--color-white);border-radius:var(--radius-xl);padding:48px 40px;box-shadow:var(--shadow-card)}@media (max-width:767px){.privacy-content{padding:32px 20px}}.privacy-content h2{font-size:20px;font-weight:700;margin:40px 0 16px;padding-bottom:8px;border-bottom:2px solid var(--color-primary-light);color:var(--color-text)}.privacy-content h2:first-child{margin-top:0}.privacy-content p{font-size:14px;color:var(--color-text);line-height:1.9;margin-bottom:16px}.privacy-content ol,.privacy-content ul{padding-left:24px;margin-bottom:16px}.privacy-content li{font-size:14px;color:var(--color-text);line-height:1.8;margin-bottom:8px}.privacy-content ol{list-style:decimal}.privacy-content ul{list-style:disc}.privacy-content .privacy-date{font-size:13px;color:var(--color-sub);margin-bottom:32px}.contact-info-box--line{background:linear-gradient(135deg,#06c755 0,#05a847 100%);color:#fff;text-align:center;padding:24px 20px}.contact-info-box__lead{font-size:14px;font-weight:600;color:#fff;margin-bottom:14px}.contact-info-box__sub{font-size:12px;color:rgba(255,255,255,.85);margin-top:10px}.form-input.is-invalid,.form-select.is-invalid,.form-textarea.is-invalid{border-color:#e53e3e;box-shadow:0 0 0 1px #e53e3e}.form-input.is-valid,.form-select.is-valid,.form-textarea.is-valid{border-color:var(--color-primary)}.form-field-error{display:none;font-size:12px;color:#e53e3e;margin-top:4px;line-height:1.4}