﻿/* System Screens handoff: contact page only. */
.drmvpv2-contact{--navy:#071b4d;--blue:#0b63e5;--yellow:#ffbd1a;--line:#d8e2ef;--soft:#f3f7fc;--muted:#60728e;--green:#08b94e;--shadow:0 18px 50px rgba(7,27,77,.12);color:var(--navy);font-family:"Microsoft JhengHei","Noto Sans TC",Arial,sans-serif;line-height:1.65}
.drmvpv2-contact,.drmvpv2-contact *,.drmvpv2-contact *::before,.drmvpv2-contact *::after{box-sizing:border-box}
.drmvpv2-contact[hidden],.drmvpv2-contact [hidden]{display:none!important}
.drmvpv2-contact a{color:inherit}
.drmvpv2-contact.system-main{min-height:640px;background:linear-gradient(150deg,#f6f9fd 0,#fff 48%,#f0f5fc 100%)}
.drmvpv2-contact .page-hero{padding:72px 30px 52px;text-align:center;background:radial-gradient(circle at 82% 12%,rgba(255,189,26,.18),transparent 24%),linear-gradient(150deg,#edf5ff,#fff)}
.drmvpv2-contact .eyebrow{margin:0 0 14px;color:var(--blue);font-size:13px;font-weight:900;letter-spacing:.16em}
.drmvpv2-contact .page-hero h1{margin:0;font-size:46px;line-height:1.25}
.drmvpv2-contact .page-hero p:not(.eyebrow){max-width:760px;margin:16px auto 0;color:var(--muted);font-size:17px;line-height:1.9}
.drmvpv2-contact .content-wrap{max-width:1240px;margin:auto;padding:48px 30px 80px}
.drmvpv2-contact .split-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:60px;align-items:start}
.drmvpv2-contact .info-panel{position:sticky;top:125px;padding:30px;border-radius:24px;background:linear-gradient(140deg,#071b4d,#123f86);color:#fff}
.drmvpv2-contact .info-panel h2{margin:0 0 12px;font-size:30px}
.drmvpv2-contact .info-panel p{color:#dce8fa;line-height:1.8}
.drmvpv2-contact .info-list{display:grid;gap:14px;margin-top:25px}
.drmvpv2-contact .info-list a,.drmvpv2-contact .info-list span{color:#fff;text-decoration:none;font-size:14px;overflow-wrap:anywhere}
.drmvpv2-contact .form-card{min-width:0;padding:38px;border:1px solid var(--line);border-radius:26px;background:#fff;box-shadow:var(--shadow)}
.drmvpv2-contact .form-card h2{margin:0 0 26px;font-size:28px}
.drmvpv2-contact .form-grid{display:grid;gap:17px}
.drmvpv2-contact .form-grid.two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.drmvpv2-contact .field{min-width:0;display:grid;gap:7px;color:#314564;font-size:14px;font-weight:800}
.drmvpv2-contact .field input,.drmvpv2-contact .field select,.drmvpv2-contact .field textarea{width:100%;min-height:52px;padding:12px 14px;border:1px solid #cbd8e8;border-radius:10px;background:#fff;color:var(--navy);font:inherit;outline:0}
.drmvpv2-contact .field textarea{min-height:140px;resize:vertical}
.drmvpv2-contact .field input:focus,.drmvpv2-contact .field select:focus,.drmvpv2-contact .field textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(11,99,229,.1)}
.drmvpv2-contact .wide{grid-column:1/-1}
.drmvpv2-contact .primary-action{width:100%;min-height:54px;border:0;border-radius:10px;background:var(--blue);color:#fff;font-size:16px;font-weight:900;cursor:pointer}
.drmvpv2-contact .primary-action:disabled{opacity:.6;cursor:wait}
.drmvpv2-contact .inline-result{margin:14px 0 0;padding:12px 14px;border-radius:10px;font-size:13px;overflow-wrap:anywhere}
.drmvpv2-contact .inline-result.is-success{background:#e8f7ee;color:#17693b}
.drmvpv2-contact .inline-result.is-error,.drmvpv2-contact .error-msg{color:#a4262c}
.drmvpv2-contact .inline-result.is-error{background:#fff1f1}
.drmvpv2-contact .inline-result.is-unknown{background:#fff5d9;color:#785600}
.drmvpv2-contact .error-msg:empty{display:none}
/* case 416 T1: consent checkbox - local size so the .field input rule (full width, 52px) does not turn it into a text box. */
.drmvpv2-contact .contact-consent-label{display:flex;align-items:flex-start;gap:10px;font-weight:700;cursor:pointer}
.drmvpv2-contact .field .contact-consent-label input[type=checkbox]{flex:0 0 auto;width:18px;height:18px;min-height:0;margin:3px 0 0;padding:0;accent-color:var(--blue)}
.drmvpv2-contact .contact-consent-label a{color:var(--blue);text-decoration:underline}
.drmvpv2-contact .contact-honeypot{position:absolute;left:-9999px;top:-9999px;height:0;width:0;overflow:hidden}
.drmvpv2-contact a:focus-visible,.drmvpv2-contact button:focus-visible,.drmvpv2-contact .inline-result:focus{outline:3px solid var(--yellow);outline-offset:3px}
@media(max-width:767px){
    .drmvpv2-contact .page-hero{padding:52px 18px 38px}
    .drmvpv2-contact .page-hero h1{font-size:32px}
    .drmvpv2-contact .page-hero p:not(.eyebrow){font-size:15px}
    .drmvpv2-contact .content-wrap{padding:34px 18px 60px}
    .drmvpv2-contact .split-layout{display:block}
    .drmvpv2-contact .info-panel{position:static;margin-bottom:22px}
    .drmvpv2-contact .form-card{padding:24px 18px;border-radius:20px}
    .drmvpv2-contact .form-grid.two{grid-template-columns:1fr}
}
