/* Contact page follows the homepage service palette; keep form/captcha behavior. */
.page-id-24 #content .elementor-24 {
    color:#243b4b;
    font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif;
    font-size:17px;
    line-height:1.85;
}
.page-id-24 #content .elementor-24 .elementor-element-d8bdc5a {
    width:calc(100% - 48px);
    max-width:1160px;
    margin:32px auto 48px;
    padding:36px;
    background:#f4f8f7;
    border:1px solid #dce7e4;
    border-radius:12px;
}
.page-id-24 #content .elementor-24 .elementor-element-4c2fc51 > .elementor-element-populated {
    margin:0;
    padding:0;
}
.page-id-24 #content .elementor-24 .ct-heading .item--title {
    color:#132e42;
    font-family:inherit;
    font-size:clamp(30px,3.2vw,46px);
    font-weight:700;
    line-height:1.45;
}
.page-id-24 #content .elementor-24 .ct-heading-divider span,
.page-id-24 #content .elementor-24 .ct-heading-divider span::before,
.page-id-24 #content .elementor-24 .ct-heading-divider span::after {
    background:#187c53;
}
.page-id-24 #content .elementor-24 .elementor-widget-text-editor,
.page-id-24 #content .elementor-24 .elementor-widget-text-editor p {
    color:#243b4b;
    font-family:inherit;
    font-size:17px;
    line-height:1.85;
}
.page-id-24 #content .elementor-24 .elementor-widget-text-editor a {
    color:#176947;
}
.page-id-24 #content .elementor-24 .elementor-element-1e25594 {
    margin-top:12px;
    padding:28px;
    background:#fff;
    border:1px solid #dce7e4;
    border-top:4px solid #187c53;
    border-radius:8px;
}
.page-id-24 #content .elementor-24 .elementor-form,
.page-id-24 #content .elementor-24 .elementor-field-label,
.page-id-24 #content .elementor-24 .elementor-field,
.page-id-24 #content .elementor-24 .elementor-button {
    font-family:inherit;
    font-size:17px;
}
.page-id-24 #content .elementor-24 .elementor-field-label {
    color:#243b4b;
    font-weight:600;
    padding-bottom:8px;
}
.page-id-24 #content .elementor-24 .elementor-field-group:not(.elementor-field-type-recaptcha) {
    margin-bottom:18px;
}
.page-id-24 #content .elementor-24 .elementor-field:not([type="checkbox"]):not([type="hidden"]) {
    min-height:52px;
    background:#fff;
    color:#243b4b;
    border:1px solid #bccfc6;
    border-radius:6px;
    padding:12px 14px;
}
.page-id-24 #content .elementor-24 textarea.elementor-field {
    min-height:160px;
    resize:vertical;
}
.page-id-24 #content .elementor-24 .elementor-field:focus {
    border-color:#187c53;
    outline:2px solid #187c53;
    outline-offset:2px;
}
.page-id-24 #content .elementor-24 .elementor-element-1e25594 .elementor-button {
    min-height:52px;
    padding:14px 24px;
    background:#187c53;
    color:#fff;
    border:0;
    border-radius:6px;
    font-weight:700;
    box-shadow:none;
}
.page-id-24 #content .elementor-24 .elementor-element-1e25594 .elementor-button:hover {
    background:#11613f;
}
.page-id-24 #content .elementor-24 .elementor-button:focus-visible {
    outline:3px solid #d49a20;
    outline-offset:4px;
}
.page-id-24 #content .elementor-24 .elementor-message-success {
    color:#176947;
    padding:16px;
    border-radius:6px;
    background:#edf5f1;
    line-height:1.85;
    overflow-wrap:anywhere;
}
@media(max-width:767px) {
    .page-id-24 #content .elementor-24 .elementor-element-d8bdc5a {
        width:100%;
        margin:20px auto 32px;
        padding:20px 0;
        border-left:0;
        border-right:0;
    }
    .page-id-24 #content .elementor-24 .elementor-element-1e25594 {
        padding:20px 12px;
    }
}
@media(max-width:359px) {
    .page-id-24 #content .content-container {
        padding-left:8px;
        padding-right:8px;
    }
    .page-id-24 #content .elementor-24 .elementor-element-d8bdc5a {
        width:100%;
        padding:16px 0;
        border-left:0;
        border-right:0;
    }
    .page-id-24 #content .elementor-24 .elementor-element-1e25594 {
        padding:16px 0;
        border-left:0;
        border-right:0;
    }
}
