#condition,
#note {
    width: 400px;
}
input#email_to,
input#email,
input#address,
input#property_name
{
    width: 200px;
}
input#area_min,
input#area_max,
input#rent_min,
input#rent_max,
input#parking_num {
    width: 50px;
}
input#company_name {
    width: 150px;
}


#mainContainer #Single h1.form-page-title {
    font-size: 30px;
    font-weight: normal;
    line-height: normal;
}


/* GC01 v2609 scoped layout rhythm: general CONTACT and business CONTACT.
 * Keeps other -v2609 pages untouched. Business copy/heading visibility is
 * controlled separately in its Smarty template for the thanks state.
 */
#Single.-v2609:is(.contact-general-page, .contact-business-page) {
    --gc01-space-title-content: 26px;
    --gc01-space-section: 44px;
    --gc01-space-section-heading: 22px;
}

#Single.-v2609:is(.contact-general-page, .contact-business-page) > .main {
    /* master.css sets padding shorthand with !important; override only top. */
    padding-top: var(--gc01-space-title-content) !important;
}

#Single.-v2609.contact-general-page .main > section > .section-title {
    margin-bottom: var(--gc01-space-section-heading);
}

/* GC01: CONTACT cognitive rhythm */
.contact-general-page .main {
    line-height: 1.7;
}

.contact-general-page .consult-lead {
    margin: 0 0 8px;
    color: #606161;
    font-size: 16px;
    font-weight: normal;
    line-height: 1.75;
}

.contact-general-page .main > p {
    margin-top: 0;
    margin-bottom: 16px;
    line-height: 1.85;
}

/* #4028: give the opening copy, form guidance and subsequent routes room to breathe. */
.contact-general-page .main > p:last-of-type {
    margin-bottom: 28px;
}

.contact-general-page .main > section + section {
    margin-top: var(--gc01-space-section);
}

.contact-general-page #formPoint {
    margin-bottom: 28px;
    padding: 16px 18px;
    line-height: 1.85;
}

.contact-general-page #formPoint + br {
    display: none;
}

.contact-general-page .gc01-form-input .tbl01 {
    margin-top: 10px;
}

.contact-general-page .tbl01 {
    border-spacing: 18px 12px;
}

.contact-general-page .tbl01 td label {
    line-height: 1.8;
}

/* Preserve the earlier CONTACT textarea size in every existing page mode. */
.contact-general-page textarea#note {
    min-height: calc(8.4em + 14px);
}

/* GC01 PC forms: keep long text, reset, and keyboard interaction consistent. */
.gc01-form-input textarea {
    min-height: calc(8.4em + 14px);
    resize: vertical;
    max-width: 100%;
    box-sizing: border-box;
}

.gc01-form-input td label {
    line-height: 1.8;
    cursor: pointer;
}

.gc01-form-input input:focus-visible,
.gc01-form-input select:focus-visible,
.gc01-form-input textarea:focus-visible,
.gc01-form-input button:focus-visible {
    outline: 2px solid #006d35;
    outline-offset: 2px;
}

/* Reset is destructive, so it stays secondary to submit without shrinking. */
.gc01-form-input #btnReset {
    border: 1px solid #bbb;
    background: #fff;
    color: #666;
    box-shadow: none;
    min-height: 40px;
}

.gc01-form-input #btnReset:hover {
    border-color: #999;
    background: #f5f5f5;
    color: #444;
}


/* Confirmation: secondary action is consistent with the input-form reset.
 * Shared submit include uses #btnUnfreeze across CONTACT/REQUEST_DOC.
 * Styling only: the existing unfreeze event handler remains unchanged.
 */
#Single.-v2609 form #btnUnfreeze {
    border: 1px solid #bbb;
    background: #fff;
    color: #666;
    box-shadow: none;
    min-height: 40px;
}

#Single.-v2609 form #btnUnfreeze:hover {
    border-color: #999;
    background: #f5f5f5;
    color: #444;
}

/* REQUEST_DOC condition: keep region / company / department as one intentional row. */
.gc01-form-input .requestdoc-condition-contact-fields {
    display: grid;
    grid-template-columns: max-content 92px max-content minmax(110px, 1fr) max-content minmax(110px, 1fr);
    align-items: center;
    gap: 6px 8px;
    width: 100%;
}

.gc01-form-input .requestdoc-condition-contact-fields label {
    margin-right: 0;
    white-space: nowrap;
}

.gc01-form-input .requestdoc-condition-contact-fields select,
.gc01-form-input .requestdoc-condition-contact-fields input {
    box-sizing: border-box;
    min-width: 0;
    width: 100%;
}

.gc01-form-input .requestdoc-condition-contact-fields #form_e_state {
    width: 92px;
}


/* TYPE_E / #4018 #4061: business proposal submission warning.
 * Scope strictly to CONTACT_BUSINESS; do not affect other CONTACT forms.
 */
#Single.contact-business-page .business-proposal-warning {
    margin: 26px 0 30px;
    padding: 18px 22px 20px;
    border: 1px solid #cbded1;
    border-left: 4px solid #5d9074;
    border-radius: 4px;
    background: #f4f8f2;
    color: #33473b;
    box-sizing: border-box;
}

#Single.contact-business-page .business-proposal-warning__title {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 13px;
    padding: 0;
    color: #345e47;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.5;
    background: none;
    border: 0;
}

#Single.contact-business-page .business-proposal-warning__icon {
    display: inline-flex;
    flex: 0 0 23px;
    width: 23px;
    height: 23px;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    background: #527e64;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    line-height: 1;
}

#Single.contact-business-page .business-proposal-warning ul {
    margin: 0;
    padding-left: 1.4em;
    list-style: disc;
}

#Single.contact-business-page .business-proposal-warning li {
    margin: 0 0 9px;
    line-height: 1.75;
}

#Single.contact-business-page .business-proposal-warning li:last-child {
    margin-bottom: 0;
}

@media screen and (max-width: 680px) {
    #Single.contact-business-page .business-proposal-warning {
        margin: 20px 0 26px;
        padding: 15px 15px 17px;
    }
}


/* #4065: visually separate the completed submission flow from optional consultation routes. */
#Single.contact-property-page .property-contact-alternatives {
    margin: var(--gc01-space-section) 0 10px;
    padding: var(--gc01-space-section-heading) 0 0;
    border-top: 1px solid #d9e0dd;
    line-height: 1.7;
}

#Single.contact-property-page .property-contact-alternatives h3 {
    margin: 0 0 var(--gc01-space-section-heading);
    padding: 8px 12px;
    border: 0;
    border-left: 3px solid #b0c6b8;
    background: #f7faf8;
    color: #37594a;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
}

#Single.contact-property-page .property-contact-alternatives p {
    margin: 0 0 11px;
}

@media screen and (max-width: 680px) {
    #Single.contact-property-page .property-contact-alternatives {
        margin-top: 40px;
        padding-top: 22px;
    }
}

/* CONTACT business enquiry route: compact utility guidance, not a consultation CTA.
 * Reusable for other form types when their input templates adopt the class.
 */
#Single.-v2609 .contact-business-route {
    margin: 36px 0 0;
    padding: 10px 12px;
    border: 1px solid #e3e5e4;
    border-radius: 3px;
    background: #fafafa;
    color: #555;
    font-size: 14px;
    line-height: 1.7;
}

#Single.-v2609 .contact-business-route a {
    color: #168271;
    text-decoration: underline;
    text-underline-offset: 2px;
}

/* CONTACT: calm exit routes after successful submission, all TYPE_D/E/C forms. */
#Single.-v2609 .contact-thanks-routes {
    margin-top: 34px;
    padding-top: 22px;
    border-top: 1px solid #e1e5e2;
}
#Single.-v2609 .contact-thanks-routes__title {
    margin: 0 0 14px;
    font-size: 15px;
    font-weight: 600;
    color: #444;
}
#Single.-v2609 .contact-thanks-routes ul {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 28px;
    margin: 0;
    padding: 0;
    list-style: none;
}
#Single.-v2609 .contact-thanks-routes a {
    color: #19794a;
    text-decoration: underline;
    text-underline-offset: 3px;
}
#Single.-v2609 .contact-thanks-routes a:focus-visible {
    outline: 2px solid #006d35;
    outline-offset: 3px;
}
#Single.-v2609 .contact-thanks-routes__primary {
    flex-basis: 100%;
}
#Single.-v2609 .contact-thanks-routes__primary a {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    min-height: 44px;
    padding: 10px 18px;
    border-radius: 4px;
    background: #008e4b;
    color: #fff;
    font-weight: 700;
    text-decoration: none;
    box-sizing: border-box;
}
#Single.-v2609 .contact-thanks-routes__primary a:hover,
#Single.-v2609 .contact-thanks-routes__primary a:focus-visible {
    background: #00733c;
}
#Single.-v2609 .contact-thanks-routes__primary .contact-thanks-routes__arrow {
    font-size: 22px;
    line-height: 1;
}

/* SLR v0.1 — PROPERTY CONTACT only. Do not alter fields or shared layout. */
#Single.-v2609.contact-property-page {
    --gc01-space-title-content: 26px;
    --gc01-space-section: 44px;
    --gc01-space-section-heading: 22px;
}

#Single.-v2609.contact-property-page > .main {
    padding-top: var(--gc01-space-title-content) !important;
}

#Single.-v2609.contact-property-page .main > p {
    margin-top: 0;
    margin-bottom: 10px;
}

#Single.-v2609.contact-property-page .main > section:first-of-type {
    margin-top: var(--gc01-space-section);
}

#Single.-v2609.contact-property-page .main > section > .section-title {
    margin-bottom: var(--gc01-space-section-heading);
}

/* A utility route is subordinate to the form; keep its own boundary. */
#Single.-v2609.contact-property-page .contact-business-route {
    margin-top: 32px;
}



/* GC01: secondary, shared business-proposal routing after submit controls.
 * Not a form field, instruction, warning or competing primary CTA.
 * Scoped by its own class, including legacy REQUEST_DOC layouts.
 */
.gc01-business-route {
    margin: 28px 0 0;
    padding: 16px 18px;
    border-top: 1px solid #dbe2dd;
    background: #f8faf8;
    color: #515e55;
    font-size: 14px;
    line-height: 1.75;
    box-sizing: border-box;
}
.gc01-business-route__label {
    display: block;
    margin-bottom: 4px;
    font-weight: 600;
}
.gc01-business-route a {
    color: #167549;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.gc01-business-route a:focus-visible {
    outline: 2px solid #006d35;
    outline-offset: 3px;
}


/* Thanks supplementary actions: preserve existing .title, .main and completion message. */
#Single.-v2609 .contact-thanks-download {
    margin: 26px 0 0;
    padding: 18px 22px 20px;
    border: 1px solid #d9dfdb;
    background: #fafcfb;
    box-sizing: border-box;
}
#Single.-v2609 .contact-thanks-download__title {
    margin: 0 0 10px;
    color: #2f4738;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
}
#Single.-v2609 .contact-thanks-download__lead { margin: 0 0 8px; line-height: 1.9; }
#Single.-v2609 .contact-thanks-download__note { margin: 0 0 14px; color: #666; font-size: 14px; line-height: 1.7; }
#Single.-v2609 .contact-thanks-download__action {
    margin: 18px 0 0;
    text-align: center;
}
#Single.-v2609 .contact-thanks-download__action a.button {
    display: inline-block;
    min-width: 254px;
    padding: 12px 24px;
    border: 1px solid #2f934c;
    border-radius: 4px;
    background: #37984c;
    color: #fff !important;
    text-align: center;
    text-decoration: none;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.5;
    box-sizing: border-box;
}
#Single.-v2609 .contact-thanks-download__action a.button:hover {
    background: #2f8a44;
    border-color: #2a7b3c;
    color: #fff !important;
    text-decoration: none;
}
#Single.-v2609 .contact-thanks-download__action a.button:focus-visible {
    outline: 2px solid #006d35;
    outline-offset: 3px;
}
#Single.-v2609 .contact-thanks-routes {
    margin-top: 34px;
    padding-top: 22px;
    border-top: 1px solid #dfe4e1;
}
#Single.-v2609 .contact-thanks-routes__title {
    margin: 0 0 14px;
    color: #333;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.5;
}
#Single.-v2609 .contact-thanks-routes ul {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 16px;
    margin: 0;
    padding: 0;
    list-style: none;
}
#Single.-v2609 .contact-thanks-routes li { flex: 1 1 260px; }
#Single.-v2609 .contact-thanks-routes a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 46px;
    padding: 8px 16px;
    border: 1px solid #cfd9d3;
    background: #fff;
    color: #19794a;
    text-decoration: none;
    box-sizing: border-box;
}
#Single.-v2609 .contact-thanks-routes a:hover { background: #f7faf8; }
#Single.-v2609 .contact-thanks-routes a:focus-visible,
#Single.-v2609 .contact-thanks-download__action a:focus-visible {
    outline: 2px solid #006d35;
    outline-offset: 3px;
}
#Single.-v2609 .contact-thanks-routes__arrow { margin-left: 12px; color: #7a8c82; }
@media screen and (max-width: 680px) {
    #Single.-v2609 .contact-thanks-download { padding: 16px; }
    #Single.-v2609 .contact-thanks-download__action a.button {
        display: block;
        width: 100%;
        min-width: 0;
    }
    #Single.-v2609 .contact-thanks-routes ul { display: block; }
    #Single.-v2609 .contact-thanks-routes li + li { margin-top: 10px; }
}

/* RequestDoc thanks: secondary navigation, distinct from the save action. */
#Single.requestdoc-page .contact-thanks-routes {
    margin: 30px 0 0;
    padding-top: 20px;
    border-top: 1px solid #dfe4e1;
}
#Single.requestdoc-page .contact-thanks-routes__title {
    margin: 0 0 14px;
    color: #333;
    font-size: 16px;
    font-weight: 600;
}
#Single.requestdoc-page .contact-thanks-routes ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
#Single.requestdoc-page .contact-thanks-routes a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 430px;
    min-height: 48px;
    padding: 9px 16px;
    border: 1px solid #cfd9d3;
    background: #fff;
    color: #19794a;
    text-decoration: none;
    box-sizing: border-box;
}
#Single.requestdoc-page .contact-thanks-routes a:hover { background: #f7faf8; }
#Single.requestdoc-page .contact-thanks-routes a:focus-visible {
    outline: 2px solid #006d35;
    outline-offset: 3px;
}
#Single.requestdoc-page .contact-thanks-routes__arrow {
    margin-left: 12px;
    color: #7a8c82;
}
