/* CONTACT only: retain the common editorial system and unchanged form endpoint. */
body[data-page="contact"] .lf-contact .ct-form-section { padding:0 0 56px; margin-bottom:64px; }
body[data-page="contact"] .lf-contact .contact-grid { --ct-label-width:156px; --ct-field-gap:24px; grid-template-columns:minmax(0,1.65fr) minmax(0,1fr); gap:64px; }
body[data-page="contact"] .lf-contact :is(.form-card,.info-card) > h2 { margin:0 0 24px; font:600 28px/1.65 var(--font-heading); letter-spacing:-.025em; }
body[data-page="contact"] .lf-contact .ct-intro { margin:0 0 26px; color:#555; font-size:12px; line-height:1.9; }
body[data-page="contact"] .lf-contact .ct-row { display:grid; grid-template-columns:var(--ct-label-width) minmax(0,1fr); gap:var(--ct-field-gap); align-items:start; margin:0 0 22px; }
body[data-page="contact"] .lf-contact .ct-row label { display:flex; flex-wrap:wrap; align-items:center; gap:6px 8px; margin:0; padding:14px 0 0; color:#222; font:500 13px/1.8 var(--lf-sans); }
body[data-page="contact"] .lf-contact .ct-badge { display:inline-block; padding:1px 5px; border:1px solid #ddd; color:#777; font:400 10px/1.6 var(--lf-sans); white-space:nowrap; }
body[data-page="contact"] .lf-contact .ct-required { color:#333; border-color:#999; }
body[data-page="contact"] .lf-contact .ct-field { min-width:0; }
body[data-page="contact"] .lf-contact .ct-field :is(input,select,textarea) { display:block; box-sizing:border-box; width:100%; min-width:0; height:52px; min-height:52px; padding:12px 13px; border:1px solid #c9c9c9; border-radius:0; background:#fff; color:#111; font:400 15px/1.7 var(--lf-sans); scroll-margin-top:100px; }
body[data-page="contact"] .lf-contact .ct-field textarea { height:168px; min-height:168px; resize:vertical; }
body[data-page="contact"] .lf-contact .ct-field :is(input,select,textarea):focus { border-color:var(--lf-focus,#174777); outline:2px solid var(--lf-focus,#174777); outline-offset:2px; }
body[data-page="contact"] .lf-contact .ct-field [aria-invalid="true"] { border-color:#9a302b; }
body[data-page="contact"] .lf-contact .ct-field-error { margin:8px 0 0; color:#9a302b; font-size:12px; line-height:1.8; }
body[data-page="contact"] .lf-contact .ct-submit-row { display:grid; grid-template-columns:var(--ct-label-width) minmax(0,1fr); gap:var(--ct-field-gap); padding-top:2px; }
body[data-page="contact"] .lf-contact .ct-submit-column { grid-column:2; display:flex; flex-direction:column; align-items:center; min-width:0; gap:22px; }
body[data-page="contact"] .site .lf-contact .form-card button.btn.submit { display:inline-flex; align-items:center; justify-content:center; text-align:center; width:240px; max-width:100%; min-width:0; height:54px; min-height:54px; margin:0; padding:12px 20px; border:1px solid #111; border-radius:0; background:#111; color:#fff; font:500 14px/1.6 var(--lf-sans); transition:background-color .2s ease,border-color .2s ease; }
body[data-page="contact"] .site .lf-contact .form-card button.btn.submit:hover { background:#333; border-color:#333; }
body[data-page="contact"] .site .lf-contact .form-card button.btn.submit:focus-visible { outline:2px solid var(--lf-focus,#174777); outline-offset:4px; }
body[data-page="contact"] .site .lf-contact .form-card button.btn.submit:disabled { cursor:wait; opacity:.65; }
body[data-page="contact"] .lf-contact .ct-privacy-note { align-self:stretch; margin:0; color:#555; font-size:12px; line-height:1.9; }
body[data-page="contact"] .lf-contact .ct-privacy-note a { text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
body[data-page="contact"] .lf-contact .ct-send-status { margin:0; font-size:12px; line-height:1.8; color:#555; }
body[data-page="contact"] .lf-contact .ct-send-status:empty { display:none; }
body[data-page="contact"] .lf-contact .ct-contact-list { margin:0; }
body[data-page="contact"] .lf-contact .ct-contact-list > div { padding:22px 0; border-bottom:1px solid #ddd; }
body[data-page="contact"] .lf-contact .ct-contact-list > div:first-child { padding-top:0; }
body[data-page="contact"] .lf-contact .ct-contact-list dt { margin:0 0 9px; color:#666; font:500 12px/1.8 var(--lf-sans); }
body[data-page="contact"] .lf-contact .ct-contact-list dd { margin:0; color:#222; font:400 14px/1.95 var(--lf-sans); }
body[data-page="contact"] .lf-contact .ct-contact-list a { display:inline-block; min-height:32px; text-decoration:underline; text-underline-offset:4px; overflow-wrap:anywhere; }
body[data-page="contact"] .lf-contact .ct-error-summary { margin:0 0 24px; padding:16px 18px; border-left:2px solid #9a302b; background:#fcf7f6; color:#7c2521; font-size:13px; line-height:1.9; }
body[data-page="contact"] .lf-contact .ct-error-summary p { margin:0 0 8px; }
body[data-page="contact"] .lf-contact .ct-error-summary ul { margin:0; padding-left:20px; }
body[data-page="contact"] .lf-contact .ct-result { min-width:0; padding:0 0 32px; scroll-margin-top:94px; }
body[data-page="contact"] .lf-contact .ct-result h2 { margin:0 0 24px; font:600 28px/1.65 var(--font-heading); }
body[data-page="contact"] .lf-contact .ct-result:focus { outline:none; }
body[data-page="contact"] .lf-contact .ct-result .ct-phrase { display:inline-block; }
body[data-page="contact"] .lf-contact .ct-result p { margin:0 0 24px; font:400 15px/1.95 var(--lf-sans); }
body[data-page="contact"] .lf-contact [hidden] { display:none !important; }
@media(min-width:700px) and (max-width:1023px) {
 body[data-page="contact"] .lf-contact .contact-grid { --ct-label-width:108px; --ct-field-gap:16px; grid-template-columns:minmax(0,1.9fr) minmax(0,1fr); gap:32px; }
 body[data-page="contact"] .lf-contact .ct-row { grid-template-columns:minmax(0,1fr); gap:8px; }
 body[data-page="contact"] .lf-contact .ct-row label { padding:0; font-size:13px; }
 body[data-page="contact"] .lf-contact .ct-submit-row { grid-template-columns:minmax(0,1fr); }
 body[data-page="contact"] .lf-contact .ct-submit-column { grid-column:1; }
 body[data-page="contact"] .lf-contact :is(.form-card,.info-card) > h2 { font-size:24px; }
 body[data-page="contact"] .lf-contact .ct-field select { font-size:15px; padding-inline:12px; }
}
@media(max-width:699px) {
 body[data-page="contact"] .lf-contact .contact-grid { grid-template-columns:minmax(0,1fr); gap:42px; }
 body[data-page="contact"] .lf-contact .ct-row { grid-template-columns:minmax(0,1fr); gap:8px; margin-bottom:22px; }
 body[data-page="contact"] .lf-contact .ct-row label { padding:0; font-size:13px; }
 body[data-page="contact"] .lf-contact :is(.form-card,.info-card) > h2 { font-size:24px; margin-bottom:22px; }
 body[data-page="contact"] .lf-contact .ct-field :is(input,select,textarea) { font-size:16px; }
 body[data-page="contact"] .lf-contact .ct-submit-row { grid-template-columns:minmax(0,1fr); padding-top:2px; }
 body[data-page="contact"] .lf-contact .ct-submit-column { grid-column:1; gap:22px; }
 body[data-page="contact"] .site .lf-contact .form-card button.btn.submit { width:100%; }
 body[data-page="contact"] .lf-contact .ct-form-section { padding-bottom:40px; margin-bottom:48px; }
 body[data-page="contact"] .lf-contact .ct-contact-list dd { font-size:14px; }
 body[data-page="contact"] .lf-contact .ct-result { scroll-margin-top:86px; }
 body[data-page="contact"] .lf-contact .ct-result h2 { font-size:24px; }
}
