:root{color-scheme:light;--navy:#132c3c;--gold:#a1844f;--ink:#263b46;--line:#c9d3d6}*{box-sizing:border-box}body{margin:0;background:#f6f8f8;color:var(--ink);font:16px/1.65 system-ui,-apple-system,sans-serif}header{background:var(--navy);padding:24px max(24px,calc((100vw - 1020px)/2));display:flex;align-items:center;justify-content:space-between;gap:24px}header a{color:#fff}a{color:#25566b;text-underline-offset:3px}.brand{text-decoration:none;font-family:Georgia,serif;font-size:23px;line-height:1.2;letter-spacing:1px}.brand span{color:#dcc69b}.brand small{display:block;font:10px/1.8 system-ui;letter-spacing:5px}main{max-width:1020px;margin:42px auto;padding:0 24px 40px}h1{color:var(--navy);font:400 clamp(28px,4vw,44px)/1.2 Georgia,serif}h2,legend{color:var(--navy);font-size:21px;font-weight:600}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:12px;color:#725a32}.steps{display:flex;gap:30px;flex-wrap:wrap;padding-left:24px;color:#52656f}.terms,fieldset,article{border:1px solid var(--line);border-radius:10px;background:white;padding:24px;margin:24px 0}.terms{border-top:3px solid var(--gold)}.terms strong{font-size:25px;color:var(--navy)}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px}label{display:block;font-size:15px;font-weight:600;margin:14px 0}.grid label{margin:0}input:not([type=checkbox]),textarea,select{font:400 16px/1.5 system-ui;display:block;width:100%;margin-top:7px;padding:11px 12px;border:1px solid #8599a3;border-radius:6px;background:white;color:var(--ink)}input[type=file]{font-size:14px}textarea{resize:vertical;min-height:100px}input:focus,textarea:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid #be995b;outline-offset:3px}.consent{display:flex;align-items:flex-start;gap:12px;font-weight:400}.consent input{flex:none;width:20px;height:20px;margin-top:4px}button,.button{display:inline-block;font:600 16px/1.4 system-ui;background:var(--navy);color:white;border:0;border-radius:6px;padding:14px 22px;cursor:pointer;margin:10px 10px 10px 0}button:disabled{opacity:.5;cursor:not-allowed}.secondary{background:#e4e9eb;color:var(--navy)}.notice{padding:14px;border-left:4px solid var(--gold);background:#fff9eb}.hint,small{font-size:14px;color:#52656f}.choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.choices a{padding:22px;background:white;border:1px solid var(--line);border-radius:8px;display:flex;flex-direction:column;gap:8px;text-decoration:none}.choices a:hover{border-color:var(--gold)}.choices strong{color:var(--navy)}.choices span{font-size:14px}#form-message,#signing-message{font-weight:500;overflow-wrap:anywhere}#signing-frame{width:100%;height:min(800px,80vh);min-height:520px;border:1px solid var(--line);background:white}footer{border-top:1px solid var(--line);padding:28px;text-align:center;font-size:13px}table{border-collapse:collapse;width:100%}td,th{padding:10px;border-bottom:1px solid var(--line);text-align:left;overflow-wrap:anywhere}[hidden]{display:none!important}@media(max-width:650px){header{padding:20px}.brand{font-size:19px}main{margin-top:28px;padding:0 18px 25px}.grid,.choices{grid-template-columns:1fr}.steps{gap:10px 25px;font-size:14px}fieldset,.terms,article{padding:18px}.consent{font-size:14px}button{width:100%;margin-right:0}#signing-frame{min-height:600px}.choices a{padding:18px}}

/* A matching card directory for customers opening all services directly. */
.choices a{border-radius:14px;padding:24px;background:linear-gradient(120deg,#fffdf8,#fff);box-shadow:0 4px 16px rgba(19,44,60,.035);border-top:3px solid var(--gold);gap:12px}
.choices a>b{font:600 11px/1.5 system-ui;letter-spacing:1px;text-transform:uppercase;color:#725a32}
.choices a>strong{font:400 25px/1.3 Georgia,serif;overflow-wrap:anywhere}
.choices .choice-continue{margin-top:auto;padding-top:12px;font-weight:600;color:var(--navy)}
.choices a:hover{background:#fff8e9;border-color:#9b7d46;box-shadow:0 8px 22px rgba(19,44,60,.08)}
@media(max-width:650px){.choices a{padding:20px}.choices a>strong{font-size:23px}}
/* Welcoming service introduction with a separate, clearly spaced agreement link. */
.terms.welcome{position:relative;padding:30px 32px;background:linear-gradient(120deg,#fffdf8 0%,#ffffff 75%);border-top:4px solid var(--gold);box-shadow:0 8px 28px rgba(19,44,60,.045)}
.welcome .welcome-label{display:block;font:600 12px/1.6 system-ui,-apple-system,sans-serif;letter-spacing:1.5px;text-transform:uppercase;color:#725a32}
.welcome h2{max-width:760px;margin:12px 0 14px;font:400 clamp(25px,3.3vw,36px)/1.25 Georgia,serif;color:var(--navy);text-wrap:balance}
.welcome .welcome-copy{max-width:70ch;margin:0;font-size:16px;line-height:1.75;color:#40545e}
.welcome .agreement-download{display:flex;align-items:center;justify-content:space-between;gap:18px;width:fit-content;max-width:100%;margin-top:26px;padding:12px 16px;background:#fff;border:1px solid #a7b9bf;border-radius:6px;font-size:14px;font-weight:600;line-height:1.5;color:var(--navy);text-decoration:underline;text-underline-offset:4px}
.welcome .agreement-download:hover{background:#f3f7f8;border-color:var(--navy)}
.welcome .agreement-download span{flex:none;font-size:19px;text-decoration:none}
@media(max-width:650px){.terms.welcome{padding:24px 20px}.welcome .welcome-label{font-size:11px;letter-spacing:1px}.welcome .welcome-copy{font-size:15px}.welcome .agreement-download{width:100%;margin-top:22px;padding:12px 14px}}

/* Phone layouts: allow long labels and native file controls to shrink safely. */
fieldset,.grid>label,input,select,textarea{min-width:0;max-width:100%}header>a:last-child{flex-shrink:0}footer{overflow-wrap:anywhere}#signing-open-tab{max-width:100%;text-align:center}#signing-section .hint{display:block;margin-bottom:16px}
@media(max-width:650px){#signing-open-tab{width:100%;margin-right:0}header{gap:14px}header>a:last-child{font-size:14px;min-height:44px;display:flex;align-items:center}.brand{font-size:18px}#signing-frame{height:80svh;min-height:480px}.grid>label{overflow-wrap:anywhere}}
