/* Checkout page — built on the same palette as the landing page. */
:root{
  --navy:#24397C; --navy-d:#1a2b62; --ink:#1A2138; --muted:#5a6478;
  --line:#DDE7F2; --bg:#F6F9FD; --panel:#F1F6FB;
}
*{box-sizing:border-box}
.checkout-body{margin:0;background:var(--bg);color:var(--ink);font-family:'Source Sans 3',system-ui,sans-serif}
.co-nav{display:flex;align-items:center;justify-content:space-between;padding:16px 40px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.co-logo{height:38px;width:auto;display:block}
.co-secure{display:inline-flex;align-items:center;gap:7px;font:600 14px 'Source Sans 3';color:var(--navy)}
.co-secure i{width:16px;height:16px}

.co-wrap{max-width:1040px;margin:0 auto;padding:40px 24px 80px;display:grid;grid-template-columns:1.4fr 1fr;gap:32px;align-items:start}
@media(max-width:860px){.co-wrap{grid-template-columns:1fr}}

.co-back{font:600 14px 'Source Sans 3';color:var(--navy);text-decoration:none}
.co-title{font-family:'Libre Franklin';font-weight:800;font-size:34px;margin:14px 0 6px}
.co-sub{color:var(--muted);font-size:16px;margin:0 0 24px;max-width:46ch}

.co-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;margin-bottom:20px}
.co-h{font-family:'Libre Franklin';font-weight:700;font-size:18px;margin:0 0 16px}
.co-field{margin-bottom:16px;display:flex;flex-direction:column}
.co-field:last-child{margin-bottom:0}
.co-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:520px){.co-row{grid-template-columns:1fr}}
.co-field label{font:600 13px 'Source Sans 3';color:var(--ink);margin-bottom:6px}
.co-field input,.co-field select,.co-field textarea{
  font:400 15px 'Source Sans 3';color:var(--ink);padding:11px 13px;border:1.5px solid var(--line);
  border-radius:10px;background:#fff;transition:border-color .2s;width:100%}
.co-field input:focus,.co-field select:focus,.co-field textarea:focus{outline:none;border-color:var(--navy)}
.co-field input.is-invalid,.co-field select.is-invalid{border-color:#c0392b}
.co-err{color:#c0392b;font-size:12.5px;margin-top:5px;min-height:0}

.co-check{display:flex;align-items:center;gap:10px;font:600 15px 'Source Sans 3';cursor:pointer}
.co-check input{width:18px;height:18px;accent-color:var(--navy)}
.co-gst-fields{margin-top:18px}

.co-summary{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;position:sticky;top:96px}
.co-item{display:flex;gap:14px;padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:16px}
.co-item strong{display:block;font-family:'Libre Franklin';font-weight:700;font-size:16px}
.co-item span{display:block;color:var(--muted);font-size:13.5px;margin-top:4px}
.co-breakup{margin:0 0 14px;padding:0}
.co-breakup>div{display:flex;justify-content:space-between;font-size:15px;margin:9px 0;color:var(--muted)}
.co-breakup dt,.co-breakup dd{margin:0}
.co-total{border-top:1px dashed var(--line);padding-top:14px;margin-top:14px!important;font-weight:800;color:var(--ink)!important;font-size:18px!important}
.co-note{font-size:12.5px;color:var(--muted);margin:0 0 16px}
.co-pay{width:100%;border:0;cursor:pointer;font:700 17px 'Source Sans 3';color:#fff;background:var(--navy);
  padding:16px;border-radius:12px;box-shadow:0 12px 28px rgba(36,57,124,.26);transition:.2s}
.co-pay:hover{background:var(--navy-d);transform:translateY(-1px)}
.co-pay:disabled{opacity:.6;cursor:wait;transform:none}
.co-trust{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:16px 0 12px}
.paychip{font:700 11px 'Source Sans 3';letter-spacing:.04em;color:var(--navy);background:var(--panel);border:1px solid var(--line);padding:5px 9px;border-radius:6px}
.co-fine{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--muted);margin:0}
.co-fine i{width:15px;height:15px;flex:none;color:var(--navy)}
.co-form-error{background:#fdecea;color:#c0392b;border:1px solid #f5c6cb;border-radius:10px;padding:12px 14px;font-size:14px}
