.jaw-pay-wrap,.jaw-receipt{max-width:860px;margin:2rem auto;font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#172033}.jaw-pay-wrap form,.jaw-receipt{background:#fff;border:1px solid #d9dee7;border-radius:12px;padding:clamp(18px,4vw,36px);box-shadow:0 10px 30px rgba(20,35,60,.08)}.jaw-pay-wrap fieldset{border:0;border-top:1px solid #e2e6ec;margin:1.5rem 0 0;padding:1.25rem 0 0}.jaw-pay-wrap legend{font-size:1.15rem;font-weight:700;padding-right:.75rem}.jaw-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.jaw-full{grid-column:1/-1}.jaw-pay-wrap label{display:block;font-weight:600}.jaw-pay-wrap label span{color:#a21b1b}.jaw-pay-wrap small{display:block;font-weight:400;color:#596579}.jaw-pay-wrap input,.jaw-pay-wrap textarea,.jaw-pay-wrap select{box-sizing:border-box;width:100%;margin-top:6px;padding:11px 12px;border:1px solid #aeb7c4;border-radius:7px;font:inherit}.jaw-methods{display:grid;gap:10px}.jaw-methods label,.jaw-auth{padding:13px;border:1px solid #ccd4df;border-radius:8px}.jaw-methods input,.jaw-auth input{width:auto;margin:0 8px 0 0}.jaw-invoice-row{position:relative;border:1px solid #d8dee8;border-radius:9px;padding:15px;margin-bottom:12px;background:#fafbfd}.jaw-remove,.jaw-secondary{appearance:none;border-radius:7px;padding:9px 14px;font:inherit;font-weight:700;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.jaw-secondary{border:1px solid #1d4f91;background:#eaf1fb;color:#163f75}.jaw-secondary:hover,.jaw-secondary:focus-visible{background:#1d4f91;color:#fff;border-color:#1d4f91;box-shadow:0 0 0 3px rgba(29,79,145,.18);outline:0}.jaw-remove{margin-top:10px;border:1px solid #b53535;background:#fff0f0;color:#8a1f1f}.jaw-remove:hover,.jaw-remove:focus-visible{background:#a92525;color:#fff;border-color:#a92525;box-shadow:0 0 0 3px rgba(169,37,37,.16);outline:0}.jaw-summary{margin:1.5rem 0;border-top:1px solid #dbe1e9}.jaw-summary>div{display:flex;justify-content:space-between;padding:8px 0}.jaw-summary .jaw-total{font-size:1.25rem;border-top:2px solid #172033;margin-top:6px;padding-top:12px}.jaw-pay-wrap button[type=submit],.jaw-receipt button{width:100%;padding:14px 20px;border:0;border-radius:8px;background:#1d4f91;color:#fff;font-size:1.05rem;font-weight:700;cursor:pointer}.jaw-pay-wrap button[disabled]{opacity:.55;cursor:not-allowed}.jaw-security-note{text-align:center;color:#5d6877;font-size:.9rem}.jaw-test-banner{padding:10px 14px;background:#fff1ba;border:1px solid #d6a646;border-radius:8px;font-weight:800;margin-bottom:18px;letter-spacing:.04em}.jaw-error{padding:12px 15px;background:#ffeded;border:1px solid #c23b3b;color:#811717;border-radius:8px;margin:12px 0}.jaw-receipt-page{max-width:920px;margin:0 auto}.jaw-receipt{font-size:15px;line-height:1.45}.jaw-receipt *{box-sizing:border-box}.jaw-receipt-header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;border-bottom:2px solid #172033;padding-bottom:18px;margin-bottom:18px}.jaw-company-name{font-size:28px!important;line-height:1.15!important;font-weight:800!important;margin:0!important;color:#172033!important}.jaw-receipt-title{font-size:17px;font-weight:600;color:#536074;margin-top:4px}.jaw-receipt address{font-style:normal;text-align:right;margin:0;font-size:14px}.jaw-status-box{display:flex;flex-direction:column;gap:4px;border-radius:8px;padding:13px 15px;margin-bottom:18px}.jaw-status-box strong{font-size:15px;letter-spacing:.03em}.jaw-status-box span{font-size:14px}.jaw-status-approved{background:#eaf7ee;border:1px solid #68a878;color:#194e29}.jaw-status-pending{background:#fff7dc;border:1px solid #d5a72e;color:#644a00}.jaw-receipt-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:1px solid #dfe4eb;border-radius:8px;overflow:hidden;margin:0 0 20px}.jaw-receipt-details>div{padding:9px 12px;border-bottom:1px solid #e4e8ee}.jaw-receipt-details>div:nth-child(odd){border-right:1px solid #e4e8ee}.jaw-receipt-details>div:nth-last-child(-n+2){border-bottom:0}.jaw-receipt-details dt{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#647084;margin:0}.jaw-receipt-details dd{margin:2px 0 0;font-weight:600;overflow-wrap:anywhere}.jaw-section-title{font-size:20px!important;line-height:1.25!important;margin:0 0 9px!important;color:#172033!important}.jaw-table-wrap{overflow-x:auto}.jaw-receipt table{width:100%;border-collapse:collapse;font-size:14px}.jaw-receipt th,.jaw-receipt td{padding:9px;border:1px solid #dfe4eb;text-align:left}.jaw-receipt th{background:#f4f6f9;font-weight:700}.jaw-payment-method,.jaw-thanks{margin:14px 0 0}.jaw-thanks{padding-top:14px;border-top:1px solid #e0e5eb}.jaw-no-print{float:right;margin:0 0 12px 12px}.jaw-no-print button{width:auto;padding:9px 14px;font-size:.95rem}.jaw-partial-wrap{display:none}@media(max-width:650px){.jaw-grid{grid-template-columns:1fr}.jaw-full{grid-column:auto}.jaw-receipt{margin:0}.jaw-no-print{float:none;margin:0 0 15px}.jaw-receipt-header{flex-direction:column}.jaw-receipt address{text-align:left}.jaw-receipt-details{grid-template-columns:1fr}.jaw-receipt-details>div,.jaw-receipt-details>div:nth-child(odd){border-right:0;border-bottom:1px solid #e4e8ee}.jaw-receipt-details>div:last-child{border-bottom:0}}
@media print{@page{size:letter;margin:.45in}body *{visibility:hidden!important}.jaw-receipt-page,.jaw-receipt-page *{visibility:visible!important}.jaw-receipt-page{position:absolute!important;left:0!important;top:0!important;width:100%!important;max-width:none!important;margin:0!important}.jaw-receipt{box-shadow:none!important;border:0!important;border-radius:0!important;margin:0!important;max-width:none!important;padding:0!important;font-size:11pt!important}.jaw-no-print{display:none!important}.jaw-test-banner{border:2px solid #000!important;margin-bottom:10px!important}.jaw-receipt-header{padding-bottom:10px!important;margin-bottom:10px!important}.jaw-company-name{font-size:22pt!important}.jaw-status-box{padding:8px 10px!important;margin-bottom:10px!important}.jaw-receipt-details{margin-bottom:12px!important}.jaw-receipt-details>div{padding:5px 8px!important}.jaw-receipt th,.jaw-receipt td{padding:5px 7px!important}.jaw-summary{margin:10px 0!important}.jaw-summary>div{padding:4px 0!important}.jaw-payment-method,.jaw-thanks{margin-top:8px!important}.jaw-thanks{padding-top:8px!important}}

.jaw-customer-types{grid-template-columns:repeat(2,minmax(0,1fr));}.jaw-correction-question select{max-width:240px}.jaw-correction-note td{background:#fff8df;font-size:.92em}.jaw-home-only[hidden],.jaw-business-only[hidden],.jaw-correction-fields[hidden]{display:none!important}@media(max-width:650px){.jaw-customer-types{grid-template-columns:1fr}}


/* Mobile form improvements */
.jaw-pay-wrap,
.jaw-pay-wrap * {
    box-sizing: border-box;
}

.jaw-pay-wrap {
    width: 100%;
    padding-inline: 12px;
}

.jaw-pay-wrap form {
    width: 100%;
    overflow: hidden;
}

.jaw-pay-wrap input,
.jaw-pay-wrap textarea,
.jaw-pay-wrap select,
.jaw-pay-wrap button {
    max-width: 100%;
}

.jaw-pay-wrap select {
    min-height: 46px;
    background-color: #fff;
}

.jaw-area-select {
    width: 100%;
}

.jaw-area-select select {
    width: 100%;
}

@media (max-width: 650px) {
    .jaw-pay-wrap {
        margin: 1rem auto;
        padding-inline: 8px;
    }

    .jaw-pay-wrap form {
        padding: 16px;
        border-radius: 10px;
    }

    .jaw-pay-wrap h2 {
        font-size: 1.55rem;
        line-height: 1.2;
        margin-top: 0;
    }

    .jaw-pay-wrap fieldset {
        margin-top: 1.15rem;
        padding-top: 1rem;
    }

    .jaw-pay-wrap legend {
        font-size: 1.05rem;
        line-height: 1.3;
        max-width: 100%;
    }

    .jaw-grid,
    .jaw-customer-types {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .jaw-full {
        grid-column: auto;
    }

    .jaw-pay-wrap input,
    .jaw-pay-wrap textarea,
    .jaw-pay-wrap select {
        min-height: 46px;
        padding: 12px;
        font-size: 16px;
    }

    .jaw-pay-wrap textarea {
        min-height: 88px;
        resize: vertical;
    }

    .jaw-methods label,
    .jaw-auth {
        display: flex;
        align-items: flex-start;
        gap: 8px;
        padding: 12px;
        line-height: 1.35;
    }

    .jaw-methods input,
    .jaw-auth input {
        flex: 0 0 auto;
        margin: 3px 0 0;
        width: 20px;
        height: 20px;
    }

    .jaw-invoice-row {
        padding: 13px;
    }

    .jaw-secondary,
    .jaw-remove,
    .jaw-pay-wrap button[type=submit] {
        width: 100%;
        min-height: 46px;
        padding: 12px 14px;
        white-space: normal;
    }

    .jaw-summary > div {
        gap: 16px;
        align-items: flex-start;
    }

    .jaw-summary > div > :last-child {
        text-align: right;
        white-space: nowrap;
    }

    .jaw-security-note {
        font-size: .86rem;
        line-height: 1.4;
        padding-inline: 4px;
    }

    .jaw-test-banner,
    .jaw-error {
        font-size: .92rem;
        line-height: 1.4;
    }

    .jaw-correction-question select {
        max-width: none;
    }
}

@media (max-width: 390px) {
    .jaw-pay-wrap {
        padding-inline: 4px;
    }

    .jaw-pay-wrap form {
        padding: 13px;
    }

    .jaw-pay-wrap h2 {
        font-size: 1.4rem;
    }

    .jaw-pay-wrap legend {
        font-size: 1rem;
    }

    .jaw-invoice-row {
        padding: 11px;
    }
}


.jaw-address-help {
    display: block;
    margin-top: 6px;
    font-size: .84rem;
    line-height: 1.35;
    color: #555;
}

.pac-container {
    z-index: 100000 !important;
    font-family: inherit;
}

.pac-item {
    padding: 8px 10px;
    font-size: 14px;
    cursor: pointer;
}

.pac-item-query {
    font-size: 15px;
}

.jaw-customer-intro{margin:.5rem 0 1rem;color:#444}
.jaw-ach-note{padding:10px 12px;background:#fff7d6;border-left:4px solid #d6a646}


.jaw-ach-authorization-box {
    margin-top: 18px;
    padding: 16px;
    border: 2px solid #d6a646;
    border-radius: 10px;
    background: #fff7d6;
    box-shadow: 0 2px 8px rgba(0,0,0,.06);
}

.jaw-ach-authorization-heading {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
    font-size: 1.05rem;
}

.jaw-required-badge {
    display: inline-block;
    padding: 3px 8px;
    border-radius: 999px;
    background: #b32d2e;
    color: #fff;
    font-size: .75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .03em;
}

.jaw-ach-authorization-box .jaw-auth {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 0;
    background: transparent;
    border: 0;
}

.jaw-ach-authorization-box .jaw-auth input {
    width: 22px;
    height: 22px;
    margin-top: 2px;
    flex: 0 0 auto;
}

.jaw-ach-required-note {
    margin: 10px 0 0 32px;
    font-size: .9rem;
    font-weight: 600;
}

.jaw-ach-authorization-error {
    margin: 8px 0 0 32px;
    color: #b32d2e;
    font-weight: 700;
}

.jaw-pay-wrap button[type=submit].jaw-button-disabled,
.jaw-pay-wrap button[type=submit]:disabled {
    opacity: .5;
    cursor: not-allowed;
    filter: grayscale(.15);
}

@media (max-width: 650px) {
    .jaw-ach-authorization-box {
        padding: 14px;
    }

    .jaw-ach-authorization-heading {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .jaw-ach-required-note,
    .jaw-ach-authorization-error {
        margin-left: 0;
    }
}


/* Printable receipt layout used by the editable receipt template. */
.jaw-receipt-status {
    margin: 0 0 6px;
    font-size: 1rem;
    font-weight: 700;
}

.jaw-receipt-section {
    margin: 22px 0 0;
}

.jaw-receipt-section > h3,
.jaw-receipt > h3 {
    margin: 0 0 10px;
    font-size: 1.08rem;
    line-height: 1.3;
    font-weight: 750;
    color: #172033;
}

.jaw-receipt-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border: 1px solid #dfe4eb;
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
}

.jaw-receipt-grid > div {
    min-width: 0;
    padding: 10px 12px;
    border-bottom: 1px solid #e4e8ee;
}

.jaw-receipt-grid > div:nth-child(odd) {
    border-right: 1px solid #e4e8ee;
}

.jaw-receipt-grid > div:nth-last-child(-n+2) {
    border-bottom: 0;
}

.jaw-receipt-grid > .jaw-receipt-detail-full {
    grid-column: 1 / -1;
    border-right: 0;
}

.jaw-receipt-grid > div > span {
    display: block;
    margin-bottom: 3px;
    color: #596579;
    font-size: .79rem;
    font-weight: 700;
    line-height: 1.25;
    text-transform: uppercase;
    letter-spacing: .035em;
}

.jaw-receipt-grid > div > strong {
    display: block;
    overflow-wrap: anywhere;
    font-size: .96rem;
    font-weight: 650;
    line-height: 1.4;
    color: #172033;
}

.jaw-receipt .jaw-invoice-table {
    width: 100%;
    margin: 0;
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid #dfe4eb;
    border-radius: 8px;
    overflow: hidden;
}

.jaw-receipt .jaw-invoice-table th,
.jaw-receipt .jaw-invoice-table td {
    padding: 10px 12px;
}

.jaw-receipt .jaw-invoice-table th:first-child,
.jaw-receipt .jaw-invoice-table td:first-child {
    width: 58%;
}

.jaw-receipt .jaw-invoice-table th:nth-child(n+2),
.jaw-receipt .jaw-invoice-table td:nth-child(n+2) {
    text-align: right;
}

.jaw-receipt .jaw-ach-note {
    margin: 0 0 18px;
    line-height: 1.45;
}

.jaw-receipt .jaw-summary {
    margin-top: 22px;
}

.jaw-receipt .jaw-thanks {
    margin-top: 22px;
    color: #3f4b5d;
}

@media (max-width: 650px) {
    .jaw-receipt-grid {
        grid-template-columns: 1fr;
    }

    .jaw-receipt-grid > div,
    .jaw-receipt-grid > div:nth-child(odd),
    .jaw-receipt-grid > div:nth-last-child(-n+2) {
        border-right: 0;
        border-bottom: 1px solid #e4e8ee;
    }

    .jaw-receipt-grid > div:last-child {
        border-bottom: 0;
    }

    .jaw-receipt .jaw-invoice-table {
        font-size: .9rem;
    }

    .jaw-receipt .jaw-invoice-table th,
    .jaw-receipt .jaw-invoice-table td {
        padding: 8px;
    }
}

@media print {
    .jaw-receipt-section {
        margin-top: 12px !important;
    }

    .jaw-receipt-section > h3,
    .jaw-receipt > h3 {
        margin-bottom: 6px !important;
        font-size: 12pt !important;
    }

    .jaw-receipt-grid > div {
        padding: 5px 7px !important;
    }

    .jaw-receipt-grid > div > span {
        font-size: 7.5pt !important;
    }

    .jaw-receipt-grid > div > strong {
        font-size: 9.5pt !important;
    }
}


/* Receipt polish: use full-width stacked sections instead of cramped side-by-side cards. */
.jaw-receipt > .jaw-receipt-grid {
    display: block;
    border: 0;
    border-radius: 0;
    overflow: visible;
    background: transparent;
}

.jaw-receipt > .jaw-receipt-grid > .jaw-receipt-section {
    width: 100%;
    margin: 20px 0 0;
}

.jaw-receipt-section > h3,
.jaw-receipt > h3 {
    font-family: inherit;
    font-size: 1.02rem;
    font-weight: 800;
    letter-spacing: 0;
}

.jaw-receipt-section .jaw-receipt-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    border: 1px solid #dfe4eb;
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
}

.jaw-receipt-section .jaw-receipt-grid > div {
    min-width: 0;
    padding: 11px 13px;
    border-bottom: 1px solid #e4e8ee;
}

.jaw-receipt-section .jaw-receipt-grid > div:nth-child(odd) {
    border-right: 1px solid #e4e8ee;
}

.jaw-receipt-section .jaw-receipt-grid > div:nth-last-child(-n+2) {
    border-bottom: 0;
}

.jaw-receipt-section .jaw-receipt-grid > .jaw-receipt-detail-full {
    grid-column: 1 / -1;
    border-right: 0;
}

.jaw-receipt-section .jaw-receipt-grid > div > strong {
    overflow-wrap: anywhere;
    word-break: normal;
}

.jaw-receipt-section .jaw-receipt-grid > div:nth-child(2) strong {
    white-space: normal;
}

.jaw-receipt-header {
    align-items: flex-start;
}

.jaw-receipt-header address {
    line-height: 1.45;
}

.jaw-receipt-status {
    display: inline-block;
    margin: 2px 0 10px;
    padding: 6px 10px;
    border-radius: 6px;
    background: #eef4ff;
    color: #163d73;
    font-weight: 800;
}

.jaw-receipt .jaw-ach-note {
    border-radius: 0 6px 6px 0;
}

.jaw-receipt .jaw-invoice-table th {
    font-size: .86rem;
    text-transform: uppercase;
    letter-spacing: .025em;
}

.jaw-receipt .jaw-summary {
    padding-top: 4px;
}

.jaw-receipt .jaw-summary > div {
    padding: 9px 0;
}

.jaw-receipt .jaw-total {
    margin-top: 2px;
    padding-top: 13px !important;
}

@media (max-width: 650px) {
    .jaw-receipt-section .jaw-receipt-grid {
        grid-template-columns: 1fr;
    }

    .jaw-receipt-section .jaw-receipt-grid > div,
    .jaw-receipt-section .jaw-receipt-grid > div:nth-child(odd),
    .jaw-receipt-section .jaw-receipt-grid > div:nth-last-child(-n+2) {
        border-right: 0;
        border-bottom: 1px solid #e4e8ee;
    }

    .jaw-receipt-section .jaw-receipt-grid > div:last-child {
        border-bottom: 0;
    }

    .jaw-receipt-header {
        gap: 14px;
    }
}

@media print {
    .jaw-receipt > .jaw-receipt-grid > .jaw-receipt-section {
        margin-top: 10px !important;
    }

    .jaw-receipt-section .jaw-receipt-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .jaw-receipt-status {
        padding: 3px 7px !important;
        margin-bottom: 5px !important;
    }
}
