/* OPXpress Contact 0.1.0 - isolated presentation; text/dir come from locale. */
.opxc-section { max-width: 760px; margin: 2.25rem auto 1rem; text-align: start; font: inherit; }
.opxc-section h2 { font-family: var(--opx-font-heading, inherit); font-size: clamp(1.3rem, 2.3vw, 1.65rem); margin: 1.8rem 0 .65rem; line-height: 1.5; }
.opxc-section > p { margin: .4rem 0 1.4rem; line-height: 1.75; }
.opxc-channels { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1rem; }
.opxc-channel { padding: 1.1rem 1.25rem; border: 1px solid #d7dfe6; border-radius: 12px; background: #fbfcfe; min-width: 0; }
.opxc-channel strong { display:block; margin-bottom: .4rem; font-weight: 600; }
.opxc-channel a { overflow-wrap: anywhere; font-size: .97rem; text-decoration: underline; text-underline-offset: 2px; }
.opxc-form { display: grid; gap: 1.05rem; }
.opxc-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.05rem; }
.opxc-form label { display:block; margin-bottom:.4rem; font-weight:600; font-size:.95rem; }
.opxc-form input:not([type=hidden]), .opxc-form select, .opxc-form textarea { width: 100%; box-sizing:border-box; display:block; padding:.74rem .85rem; min-height:44px; border:1px solid #b3bfc9; background: #fff; border-radius: 7px; font:inherit; font-size:1rem; color:#172333; }
.opxc-form textarea { min-height:140px; resize:vertical; }
.opxc-form :is(input, select, textarea, button):focus-visible { outline:3px solid #4c92da; outline-offset:2px; }
.opxc-form button { justify-self:start; cursor:pointer; min-height:44px; border:0; padding:.8rem 1.45rem; background:#162f4b; color:#fff; font:inherit; font-weight:600; border-radius:7px; }
.opxc-form button:hover { background:#275577; }
.opxc-note { font-size:.875rem; line-height:1.65; color:#475569; margin:0; }
.opxc-feedback { border-inline-start: 3px solid #889aab; padding:.65rem .9rem; margin:1rem 0; background:#f4f7fb; }
.opxc-success { border-inline-start-color:#21835b; }
.opxc-error { border-inline-start-color:#b14242; }
.opxc-hp { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
@media(max-width:640px) { .opxc-grid,.opxc-channels { grid-template-columns:1fr; } .opxc-channel{padding:1rem;} }
