:root{--p-navy:#0b1f3a;--p-navy-2:#12345a;--p-blue:#087bff;--p-red:#d71920;--p-bg:#f4f6f9;--p-line:#dce3ec;--p-muted:#64748b;--p-radius:16px;--p-shadow:0 12px 30px rgb(11 31 58 / 8%)}
.cc-portal{margin:0;background:var(--p-bg);color:#172236;cursor:auto;font-family:Arial,Helvetica,sans-serif}
.cc-portal *{box-sizing:border-box}
.cc-portal a{color:inherit;text-decoration:none}
.cc-portal-header{background:var(--p-navy);box-shadow:0 6px 18px rgb(11 31 58 / 24%)}
.cc-portal-header__inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:clamp(190px,16vw,240px);margin:0 auto;width:min(1100px,92vw)}
.cc-portal-brand{display:inline-flex;align-items:center}
.cc-portal-header img{display:block;width:clamp(240px,22vw,320px);height:auto;max-width:38vw;max-height:230px;object-fit:contain}
.cc-portal-site-link{border:1px solid rgb(255 255 255 / 25%);border-radius:999px;color:#fff;font-size:13px;font-weight:800;padding:9px 15px}
.cc-portal-shell{margin:0 auto;padding:38px 0 70px;width:min(1100px,92vw)}
.cc-portal-card{background:#fff;border:1px solid var(--p-line);border-radius:var(--p-radius);box-shadow:var(--p-shadow);padding:22px}
.cc-portal-entry{margin:26px auto 0;max-width:680px;padding:clamp(24px,5vw,44px)}
.cc-portal h1,.cc-portal h2,.cc-portal h3{color:var(--p-navy)}
.cc-portal h1{margin:0 0 12px;font-size:clamp(34px,5vw,52px);letter-spacing:-.025em;line-height:1}
.cc-portal h2{margin:0 0 14px;font-size:26px}
.cc-portal h3{margin:0}
.cc-portal p{line-height:1.55}
.cc-portal-kicker,.cc-portal-eyebrow{color:var(--p-blue);font-size:12px;font-weight:900;letter-spacing:.1em;margin:0 0 9px;text-transform:uppercase}
.cc-portal-security-copy{border-left:4px solid var(--p-blue);margin:20px 0 24px;padding:10px 0 10px 15px;color:var(--p-muted);font-size:14px}
.cc-portal form{display:grid;gap:14px}
.cc-portal label{display:grid;gap:6px;color:var(--p-navy);font-weight:800}
.cc-portal input,.cc-portal textarea{border:1px solid #bdc8d7;border-radius:10px;cursor:text;font:inherit;padding:12px;width:100%}
.cc-portal input:focus,.cc-portal textarea:focus{border-color:var(--p-blue);box-shadow:0 0 0 3px rgb(8 123 255 / 14%);outline:0}
.cc-portal textarea{min-height:90px;resize:vertical}
.cc-portal button{background:var(--p-blue);border:0;border-radius:999px;color:#fff;cursor:pointer;font:inherit;font-weight:800;padding:12px 19px}
.cc-portal button.cc-portal-secondary{background:#fff;border:1px solid var(--p-line);color:var(--p-navy)}
.cc-portal button.cc-portal-decline{background:var(--p-red)}
.cc-portal-message{color:#a31218;font-weight:800;min-height:22px;text-align:center}
.cc-portal-message[data-kind="success"]{color:#176b35}
.cc-portal-heading,.cc-portal-document-head{align-items:flex-start;display:flex;justify-content:space-between;gap:16px}
.cc-portal-dashboard-label{color:var(--p-muted);margin:0}
.cc-portal-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:22px 0}
.cc-portal-summary span{color:var(--p-muted);display:block;font-size:11px;font-weight:800;letter-spacing:.06em;margin-bottom:9px;text-transform:uppercase}
.cc-portal-summary strong{color:var(--p-navy);font-size:18px;line-height:1.25}
.cc-portal-update-card{border-top:4px solid var(--p-blue)}
.cc-portal-action-list p{background:#fff3f3;border-left:4px solid var(--p-red);border-radius:8px;margin:10px 0 0;padding:10px 12px}
.cc-portal-section{margin-top:30px}
.cc-portal-stack{display:grid;gap:14px}
.cc-portal-document{background:#fff;border:1px solid var(--p-line);border-radius:14px;padding:20px}
.cc-portal-badge{background:#e8f2ff;border-radius:999px;color:#075db8;display:inline-flex;font-size:12px;font-weight:900;padding:6px 10px}
.cc-portal-money{color:var(--p-navy);font-size:22px;font-weight:900}
.cc-portal-lines{border-collapse:collapse;margin:14px 0;width:100%}
.cc-portal-lines th,.cc-portal-lines td{border-bottom:1px solid var(--p-line);padding:9px;text-align:left}
.cc-portal-lines th:last-child,.cc-portal-lines td:last-child{text-align:right}
.cc-portal-decision{border-top:1px solid var(--p-line);margin-top:14px;padding-top:14px}
.cc-portal-button-row{display:flex;flex-wrap:wrap;gap:9px}
.cc-portal-document-text{background:#f7f9fc;border-radius:10px;line-height:1.55;margin:14px 0;max-height:440px;overflow:auto;padding:15px;white-space:pre-wrap}
.cc-portal-check{align-items:flex-start;display:flex!important;flex-direction:row}
.cc-portal-check input{margin-top:3px;width:auto}
.cc-portal-notice{background:#fff4d4;border:1px solid #e2b633;border-radius:12px;margin-top:24px;padding:14px}
.cc-portal-empty{color:var(--p-muted)}
.cc-portal-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.cc-portal-status-item{background:#fff;border:1px solid var(--p-line);border-radius:13px;box-shadow:var(--p-shadow);padding:16px}
.cc-portal-status-item span{color:var(--p-muted);display:block;font-size:11px;font-weight:800;letter-spacing:.06em;margin-bottom:9px;text-transform:uppercase}
.cc-portal-status-item strong{color:var(--p-navy);font-size:15px}
.cc-portal-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.cc-portal-photo{overflow:hidden;background:#fff;border:1px solid var(--p-line);border-radius:14px;box-shadow:var(--p-shadow)}
.cc-portal-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.cc-portal-photo figcaption{padding:12px;color:var(--p-muted);font-size:13px;line-height:1.4}
.cc-portal-payment-note{background:#f7f9fc;border-radius:9px;color:var(--p-muted);padding:12px}
@media(max-width:860px){.cc-portal-summary,.cc-portal-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cc-portal-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.cc-portal-header__inner{min-height:126px}.cc-portal-header img{width:150px;height:auto;max-width:54vw;max-height:110px}.cc-portal-site-link{font-size:12px;padding:8px 12px}.cc-portal-shell{padding-top:24px}.cc-portal-summary,.cc-portal-status-grid,.cc-portal-photo-grid{grid-template-columns:1fr}.cc-portal-heading,.cc-portal-document-head{align-items:stretch;flex-direction:column}.cc-portal-lines{font-size:12px}.cc-portal-entry{margin-top:10px;padding:22px}.cc-portal h1{font-size:36px}}
.cc-portal-totals,.cc-portal-confirmation dl{display:grid;grid-template-columns:1fr auto;gap:8px 20px;margin:18px 0}.cc-portal-totals dt,.cc-portal-confirmation dt{font-weight:700}.cc-portal-totals dd,.cc-portal-confirmation dd{margin:0;text-align:right}.cc-portal-confirmation{max-width:760px;margin:32px auto;padding:28px}.cc-portal-confirmation h2{margin-top:0}.cc-portal-confirmation button{margin-top:12px}
