.contact-page { --contact-red:#b51717; --contact-ink:#17233a; --contact-muted:#5e6878; color:var(--contact-ink); background:#fff; }
.contact-page .page-title { background:#f7f9fc; border-bottom:1px solid #e7ebf2; }
.contact-page .page-title-inner,.contact-page .container { width:min(1180px,calc(100% - 40px)); margin:0 auto; }
.contact-page .page-title-inner { padding:48px 0; }
.contact-page .eyebrow { margin:0 0 12px; color:var(--contact-red); font-size:13px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.contact-page h1 { margin:0; font-size:clamp(30px,4vw,46px); line-height:1.17; color:var(--contact-ink); }
.contact-page .title-copy { max-width:800px; margin:18px 0 0; color:var(--contact-muted); font-size:16px; line-height:1.8; }
.contact-page .section { padding:52px 0; }
.contact-page .section + .section { padding-top:0; }
.contact-page .two-column { display:grid; grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr); gap:28px; align-items:start; }
.contact-page .panel { min-width:0; border:1px solid #e2e7ef; border-radius:8px; background:#fff; }
.contact-page .panel-inner { padding:28px; }
.contact-page h2 { margin:0; color:var(--contact-ink); font-size:28px; line-height:1.25; }
.contact-page .panel-copy { margin:14px 0 22px; color:var(--contact-muted); font-size:15px; line-height:1.7; }
.contact-page .contact-list { display:grid; gap:14px; }
.contact-page .contact-item { display:grid; grid-template-columns:40px minmax(0,1fr); gap:14px; padding:15px; border:1px solid #e7ebf2; border-radius:6px; }
.contact-page .contact-icon { display:grid; place-items:center; width:40px; height:40px; border-radius:6px; background:#fff2f2; color:var(--contact-red); font-size:15px; font-weight:800; }
.contact-page .contact-label { display:block; color:var(--contact-muted); font-size:13px; font-weight:600; }
.contact-page .contact-value { display:inline-block; margin-top:4px; color:var(--contact-ink); font-size:15px; line-height:1.6; font-weight:600; overflow-wrap:anywhere; }
.contact-page a.contact-value:hover { color:var(--contact-red); }
.contact-page .tip { margin-top:20px; padding:15px 18px; background:#f7f9fc; border-left:3px solid var(--contact-red); color:var(--contact-muted); font-size:14px; line-height:1.7; }
.contact-page .quote-form { display:grid; gap:16px; }
.contact-page .form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.contact-page label { display:grid; gap:7px; min-width:0; color:#425166; font-size:13px; font-weight:700; }
.contact-page input,.contact-page select,.contact-page textarea { width:100%; min-height:45px; padding:10px 12px; border:1px solid #d7dde7; border-radius:5px; color:var(--contact-ink); background:#fff; font-family:inherit; font-size:14px; font-weight:400; line-height:1.5; }
.contact-page textarea { min-height:130px; resize:vertical; }
.contact-page input:focus,.contact-page select:focus,.contact-page textarea:focus { outline:2px solid #f0cccc; outline-offset:2px; border-color:var(--contact-red); }
.contact-page .form-note,.contact-page .inquiry-status { margin:0; color:var(--contact-muted); font-size:13px; line-height:1.7; }
.contact-page .inquiry-actions { display:flex; flex-wrap:wrap; gap:12px; }
.contact-page .button { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:11px 20px; border:1px solid var(--contact-red); border-radius:4px; background:var(--contact-red); color:#fff; font:700 14px/1.4 Arial,Helvetica,sans-serif; cursor:pointer; text-decoration:none; }
.contact-page .button:hover { background:#951414; }
.contact-page .button-secondary { border-color:#d7dde7; color:var(--contact-ink); background:#fff; }
.contact-page .button-secondary:hover { background:#f7f9fc; }
.contact-page .inquiry-result { display:grid; gap:12px; padding:18px; border:1px solid #e2e7ef; border-radius:6px; background:#f7f9fc; }
.contact-page .inquiry-result[hidden] { display:none; }
.contact-page .inquiry-preview { min-height:180px; font-size:13px; }
.contact-page .support-head { margin-bottom:24px; }
.contact-page .support-head p { max-width:760px; margin:14px 0 0; color:var(--contact-muted); line-height:1.7; }
.contact-page .support-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.contact-page .support-card { padding:22px; border:1px solid #e7ebf2; border-radius:6px; background:#f7f9fc; }
.contact-page .support-card strong { display:block; margin-bottom:10px; font-size:17px; }
.contact-page .support-card span { color:var(--contact-muted); font-size:14px; line-height:1.7; }
@media (max-width:900px) { .contact-page .two-column { grid-template-columns:1fr; } .contact-page .support-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:550px) { .contact-page .page-title-inner,.contact-page .container { width:calc(100% - 28px); } .contact-page .page-title-inner { padding:34px 0; } .contact-page .section { padding:36px 0; } .contact-page .panel-inner { padding:20px; } .contact-page .form-grid,.contact-page .support-grid { grid-template-columns:1fr; } .contact-page .button { width:100%; } }
