/* Then & Now — scoped submission form layout fix */
.tn-form-page { max-width: 1120px; margin-left: auto; margin-right: auto; padding-left: 20px; padding-right: 20px; }
.tn-form-page .tn-form-card { max-width: 920px; width: 100%; padding: 24px; box-sizing: border-box; }
.tn-form-page .form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 18px; margin-bottom: 22px; }
.tn-form-page .form-grid > div { min-width: 0; }
.tn-form-page .form-grid > .full { grid-column: 1 / -1; }
.tn-form-page .form-grid label { display: block; margin-bottom: 8px; font-weight: 700; color: #253144; }
.tn-form-page .form-grid input:not([type="checkbox"]),
.tn-form-page .form-grid select,
.tn-form-page .form-grid textarea { display: block; box-sizing: border-box; width: 100%; min-width: 0; max-width: 100%; border: 1px solid #dce3eb; border-radius: 9px; padding: 11px 12px; background: #fff; color: #202735; font: inherit; }
.tn-form-page .form-grid input:not([type="file"]), .tn-form-page .form-grid select { min-height: 44px; }
.tn-form-page .form-grid textarea { min-height: 200px; resize: vertical; line-height: 1.6; }
.tn-form-page .form-grid input[type="file"] { padding: 10px; }
.tn-form-page .form-grid :is(input,select,textarea):focus { outline: 2px solid #8bbad6; outline-offset: 1px; }
.tn-form-page .field-help { margin: 8px 0 0; font-size: .88rem; color: #687386; }
.tn-form-page .check-row { display: flex; align-items: flex-start; gap: 10px; line-height: 1.55; margin: 20px 0 16px; }
.tn-form-page .check-row input { flex: 0 0 auto; margin-top: 5px; }
.tn-form-page .hp { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
@media(max-width: 640px) { .tn-form-page .form-grid { grid-template-columns: 1fr; } .tn-form-page .tn-form-card { padding: 18px; } }
