.pim-form-shell { border-radius: 22px; overflow: hidden; background: #fff; box-shadow: 0 18px 55px rgba(7,26,45,.11); border: 1px solid #dde5ed; }
.pim-form-intro { padding: 36px 40px; color: #fff; background: linear-gradient(135deg,#071a2d,#0b4f8a); }
.pim-form-intro h2 { margin: 8px 0; font-size: 34px; }
.pim-form-intro p { margin: 0; color: #d7e4ed; }
.pim-kicker { color: #e5bd67; text-transform: uppercase; letter-spacing: .12em; font-weight: 800; font-size: 12px; }
.pim-application-form, .pim-contact-form { padding: 38px 40px; }
.pim-form-section { padding: 24px 0; border-top: 1px solid #e4eaf0; }
.pim-form-section:first-of-type { border-top: 0; }
.pim-form-section h3 { margin: 0 0 20px; font-size: 22px; }
.pim-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.pim-field { display: flex; flex-direction: column; gap: 7px; }
.pim-field-wide { grid-column: 1/-1; }
.pim-field span { font-weight: 700; color: #233347; }
.pim-field input, .pim-field select, .pim-field textarea { width: 100%; border: 1px solid #cfd9e3; border-radius: 9px; padding: 12px 13px; background: #fff; font: inherit; }
.pim-field input:focus, .pim-field select:focus, .pim-field textarea:focus { outline: 3px solid rgba(21,165,182,.15); border-color: #15a5b6; }
.pim-field small { color: #687586; }
.pim-type-selector { display: flex; gap: 14px; padding: 0; border: 0; margin: 0 0 22px; }
.pim-type-selector legend { font-weight: 800; margin-bottom: 10px; width: 100%; }
.pim-type-selector label { flex: 1; padding: 16px; border: 1px solid #d7e0e8; border-radius: 12px; font-weight: 700; }
.pim-consent { display: flex; gap: 10px; align-items: flex-start; margin: 10px 0 24px; }
.pim-submit { cursor: pointer; border: 0; border-radius: 10px; padding: 14px 24px; color: #fff; background: linear-gradient(135deg,#0b4f8a,#15a5b6); font-weight: 800; font-size: 16px; }
.pim-alert { margin-bottom: 22px; padding: 16px 18px; border-radius: 10px; }
.pim-alert-success { background: #e8f8f2; color: #12664f; border: 1px solid #bce8d8; }
.pim-alert-error { background: #fff0f0; color: #8c2525; border: 1px solid #efc5c5; }
.pim-status-checker { max-width: 720px; padding: 30px; border: 1px solid #dde5ed; border-radius: 18px; background: #fff; }
.pim-status-result { margin-top: 20px; display: flex; justify-content: space-between; align-items: center; padding: 16px; background: #f4f7fa; border-radius: 10px; }
.pim-public-status { font-weight: 800; }
.pim-public-status-verified, .pim-public-status-completed { color: #0d7b58; }
.pim-public-status-rejected { color: #a22b2b; }
@media (max-width: 680px) { .pim-form-intro,.pim-application-form,.pim-contact-form { padding: 26px 20px; } .pim-grid { grid-template-columns: 1fr; } .pim-field-wide { grid-column: auto; } .pim-type-selector { flex-direction: column; } }

.pim-map-embed iframe { width:100%; min-height:320px; border:0; border-radius:14px; }
.pim-map-placeholder { min-height:260px; border-radius:14px; background:linear-gradient(135deg,#dfeaf3,#f7fafc); display:grid; place-items:center; padding:30px; color:#687586; text-align:center; }
