.bermark-payment {
    --bermark-ink: #1d1d1b;
    --bermark-muted: #68655f;
    --bermark-gold: #a9895b;
    --bermark-gold-dark: #80633d;
    --bermark-line: #d8d1c5;
    --bermark-surface: #fbfaf7;
    box-sizing: border-box;
    color: var(--bermark-ink);
    font-family: inherit;
    margin: 2rem auto;
    max-width: 680px;
    padding: 0 1rem;
}

.bermark-payment *, .bermark-payment *::before, .bermark-payment *::after { box-sizing: inherit; }
.bermark-payment__card { background: var(--bermark-surface); border: 1px solid var(--bermark-line); padding: clamp(1.5rem, 5vw, 3rem); }
.bermark-payment__eyebrow { color: var(--bermark-gold-dark); font-size: .75rem; font-weight: 700; letter-spacing: .14em; margin: 0 0 .8rem; text-transform: uppercase; }
.bermark-payment h2 { font-size: clamp(1.7rem, 4vw, 2.4rem); font-weight: 500; letter-spacing: -.02em; line-height: 1.15; margin: 0; }
.bermark-payment__intro { color: var(--bermark-muted); line-height: 1.65; margin: 1rem 0 2rem; max-width: 55ch; }
.bermark-payment__notice { border-left: 3px solid; margin: 0 0 1.5rem; padding: .85rem 1rem; }
.bermark-payment__notice--error { background: #fff3f1; border-color: #ae3b2e; color: #7d2118; }
.bermark-payment__notice--success { background: #f4f8f1; border-color: #638249; color: #3c5d28; }
.bermark-payment__field { margin-bottom: 1.25rem; }
.bermark-payment label { display: block; font-size: .9rem; font-weight: 600; margin-bottom: .5rem; }
.bermark-payment label span { color: var(--bermark-gold-dark); }
.bermark-payment input { background: #fff; border: 1px solid #aaa39a; border-radius: 0; color: var(--bermark-ink); font: inherit; min-height: 3rem; padding: .75rem .9rem; width: 100%; }
.bermark-payment input:focus { border-color: var(--bermark-gold-dark); box-shadow: 0 0 0 2px rgba(169, 137, 91, .22); outline: 2px solid transparent; }
.bermark-payment__amount-input { align-items: center; display: flex; }
.bermark-payment__amount-input span { background: #f0ece5; border: 1px solid #aaa39a; border-right: 0; font-size: 1.1rem; min-height: 3rem; padding: .75rem .9rem; }
.bermark-payment__amount-input input { flex: 1; }
.bermark-payment__button { background: var(--bermark-ink); border: 1px solid var(--bermark-ink); color: #fff; cursor: pointer; font: inherit; font-weight: 600; letter-spacing: .04em; min-height: 3.1rem; padding: .75rem 1.5rem; transition: background .2s ease, border-color .2s ease; width: 100%; }
.bermark-payment__button:hover, .bermark-payment__button:focus { background: var(--bermark-gold-dark); border-color: var(--bermark-gold-dark); }
.bermark-payment__button:focus { outline: 2px solid var(--bermark-gold); outline-offset: 3px; }
.bermark-payment__security-note { color: var(--bermark-muted); font-size: .8rem; line-height: 1.5; margin: 1rem 0 0; text-align: center; }
@media (max-width: 480px) { .bermark-payment { margin: 1rem auto; padding: 0 .75rem; } .bermark-payment__card { padding: 1.25rem; } }
