/* Contact reuses approved shared chapter and hero components. */
.page-contact .contact-hero{min-height:360px}
.page-contact .contact-hero .about-hero-inner{display:block}
.page-contact .contact-hero .about-hero-copy{max-width:680px;position:relative;z-index:1}
.page-contact .contact-hero:after{display:block;content:"";position:absolute;inset:0;background:url("assets/floral-line-fill.webp") -240px -260px/720px no-repeat;opacity:.06;filter:invert(1);mix-blend-mode:screen;z-index:-1;pointer-events:none}
.page-contact .contact-phone-link{display:flex;align-items:flex-start;flex-direction:column;gap:10px;margin:30px 0;padding:24px 0;border-block:1px solid #ac946780;min-width:0}
.page-contact .contact-phone-link strong{font-weight:400;font-size:clamp(26px,4vw,44px);letter-spacing:.04em;line-height:1.5}
.page-contact .contact-phone-link span{font-size:14px}
.page-contact .contact-guide-list article{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1fr);gap:7%;padding:35px 0;border-bottom:1px solid #ac94675c}
.page-contact .contact-guide-list h3{font-size:24px;font-weight:400;line-height:1.7;margin:0}
.page-contact .contact-guide-list p{font-size:16px;line-height:1.9;margin:0 0 14px}
.page-contact .contact-guide-list article>div{min-width:0}
.page-contact .contact-guide-list .about-link{min-height:44px;overflow-wrap:anywhere}
.page-contact .contact-preview-note{margin-top:34px;padding:20px 24px;background:#e5e5d9;border-left:2px solid #9e8555}
.page-contact .contact-preview-note p{font-size:14px;line-height:1.8;margin:0}
@media(max-width:700px){.page-contact .contact-hero{min-height:0}.page-contact .contact-hero:after{background-size:520px;background-position:calc(100% + 160px) -180px;opacity:.07}.page-contact .contact-guide-list article{grid-template-columns:minmax(0,1fr);gap:16px;padding:28px 0}.page-contact .contact-guide-list h3{font-size:22px}.page-contact .contact-guide-list p{font-size:15px}.page-contact .contact-preview-note{padding:18px}.page-contact .contact-phone-link strong{font-size:28px}}

/* E146 inquiry preview; scoped and never transmitted. */
.page-contact #contact-inquiry{max-width:780px;min-width:0;margin-top:30px}
.page-contact .contact-field{display:flex;flex-direction:column;gap:9px;margin:0 0 24px}
.page-contact .contact-field label{font-size:17px;line-height:1.7}
.page-contact .contact-required,.page-contact .contact-optional{display:inline-block;font-size:12px;line-height:1.5;padding:3px 8px;border-radius:3px;margin-left:8px}
.page-contact .contact-required{background:#72552f;color:#fff}.page-contact .contact-optional{border:1px solid #81755d}
.page-contact .contact-field input,.page-contact .contact-field textarea{box-sizing:border-box;display:block;width:100%;min-width:0;min-height:48px;padding:12px 14px;border:1px solid #7c8781;border-radius:3px;background:#fffdf6;color:#163f43;font:16px/1.7 sans-serif}
.page-contact .contact-field textarea{resize:vertical}.page-contact .contact-error{font:14px/1.7 sans-serif;color:#963a28}.page-contact [aria-invalid="true"]{border-color:#963a28}
.page-contact .contact-action{min-height:48px;padding:12px 22px;border:1px solid #163f43;border-radius:3px;background:#163f43;color:#fff;font-family:inherit;font-size:16px;line-height:1.7;cursor:pointer}
.page-contact .contact-action:disabled{background:#deded4;color:#5b635c;border-color:#9da199;cursor:not-allowed}
.page-contact .contact-actions{display:flex;gap:16px;flex-wrap:wrap}.page-contact .contact-confirm-values>div{padding:18px 0;border-bottom:1px solid #ac94675c}.page-contact .contact-confirm-values dt{font-size:14px;color:#795631}.page-contact .contact-confirm-values dd{margin:8px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;line-height:1.8}.page-contact .contact-demo-note{font-size:14px!important;line-height:1.8!important}
.page-contact #contact-inquiry [hidden]{display:none!important}.page-contact #contact-inquiry :focus-visible{outline:2px solid #9d743f;outline-offset:4px}

/* E154: text/pattern hero needs no inherited building-image space on mobile. */
@media(max-width:700px){.page-contact .contact-hero{min-height:0;padding-top:38px;padding-bottom:36px}}
