.checkout-content{padding:64px 0 90px}.checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;align-items:start}.checkout-main{min-width:0}.checkout-card{margin-bottom:18px;padding:30px;border:1px solid #e1e7e1;border-radius:20px;background:#fff;box-shadow:0 12px 36px rgba(13,50,29,.055)}.checkout-card__heading{display:flex;align-items:flex-start;gap:16px;margin-bottom:26px}.checkout-step{display:inline-grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:50%;background:#edf4ec;color:#075f2a;font-size:.75rem;font-weight:900}.checkout-card h2{margin:4px 0 0;color:#162019;font-size:1.35rem;letter-spacing:-.025em}.checkout-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}.checkout-summary>div{padding:18px;border-radius:14px;background:#f6f9f5}.checkout-summary span{display:block;margin-bottom:6px;color:#737d76;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.checkout-summary strong{color:#173b24;font-size:1.1rem}.checkout-summary small{color:#6f7872;font-size:.75rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px}.form-field{min-width:0}.form-field--full{grid-column:1/-1}.form-field label{display:block;margin-bottom:8px;color:#26322b;font-size:.83rem;font-weight:800}.form-field label span,.checkbox-row b{color:#a20f3e}.form-field input,.form-field select{width:100%;min-height:48px;box-sizing:border-box;border:1px solid #d7ded8;border-radius:10px;background:#fff;padding:11px 13px;color:#1e2922;font:inherit;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.form-field input:focus,.form-field select:focus{border-color:#075f2a;box-shadow:0 0 0 3px rgba(7,95,42,.1)}.form-field small{display:block;margin-top:6px;color:#7b857e;font-size:.72rem}.password-field{position:relative}.password-field input{padding-right:70px}.password-toggle{position:absolute;top:50%;right:10px;transform:translateY(-50%);padding:4px;border:0;background:transparent;color:#075f2a;font-size:.75rem;font-weight:800;cursor:pointer}.login-note{margin:22px 0 0;padding-top:18px;border-top:1px solid #edf0ed;color:#69736c;font-size:.84rem}.login-note a{color:#8f1238}.checkbox-row{display:flex;gap:10px;align-items:flex-start;margin:14px 0;color:#4d5851;font-size:.86rem;line-height:1.55;cursor:pointer}.checkbox-row input{width:16px;height:16px;flex:0 0 16px;margin-top:2px;accent-color:#075f2a}.checkout-actions{display:flex;align-items:center;gap:18px;margin-top:22px}.checkout-actions p{max-width:520px;margin:0;color:#747e77;font-size:.76rem;line-height:1.55}.checkout-aside{position:sticky;top:24px}.checkout-aside__card{padding:26px;border-radius:20px;background:#073a20;color:#fff;box-shadow:0 20px 50px rgba(13,50,29,.16)}.checkout-aside__card h2{margin:12px 0 20px;font-size:1.45rem;letter-spacing:-.025em}.checkout-aside__price{display:flex;align-items:baseline;gap:5px}.checkout-aside__price strong{font-size:2rem;letter-spacing:-.04em}.checkout-aside__price span{color:rgba(255,255,255,.68);font-size:.82rem}.checkout-aside__line{height:1px;margin:22px 0;background:rgba(255,255,255,.16)}.checkout-aside__card p{margin:0 0 20px;color:rgba(255,255,255,.75);font-size:.86rem;line-height:1.65}.checkout-aside__card>a{color:#d5e868}@media(max-width:900px){.checkout-layout{grid-template-columns:1fr}.checkout-aside{position:static;order:-1}}@media(max-width:620px){.checkout-card{padding:22px}.form-grid,.checkout-summary{grid-template-columns:1fr}.form-field--full{grid-column:auto}.checkout-actions{align-items:flex-start;flex-direction:column}}

.checkout-errors {
    margin: 0 0 1.5rem;
    padding: 1.25rem 1.4rem;
    border: 1px solid rgba(128, 0, 0, .18);
    border-radius: 18px;
    background: #fff7f7;
    color: #5f1c1c;
}

.checkout-errors ul {
    margin: .65rem 0 0 1.1rem;
    padding: 0;
}

.checkout-success {
    text-align: left;
}

.checkout-success h2 {
    margin-bottom: .7rem;
}

.checkout-success__summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .8rem;
    margin: 1.5rem 0;
}

.checkout-success__summary > div {
    padding: 1rem;
    border-radius: 14px;
    background: rgba(1, 113, 23, .06);
}

.checkout-success__summary span {
    display: block;
    margin-bottom: .25rem;
    font-size: .78rem;
    text-transform: uppercase;
    letter-spacing: .08em;
    opacity: .7;
}

.checkout-success__summary strong {
    display: block;
}

.checkout-success__note {
    margin-bottom: 1.5rem;
}

@media (max-width: 640px) {
    .checkout-success__summary {
        grid-template-columns: 1fr;
    }
}


/* KENMA-UK single-page registration redesign */
.membership-registration-page .checkout-hero,
.checkout-page .checkout-hero { background:linear-gradient(115deg,#063b25,#168344); }
.checkout-hero__inner { max-width:1120px; }
.checkout-hero__inner h1 { max-width:850px; margin:14px 0 18px; font-size:clamp(2.5rem,5vw,4.5rem); line-height:1.04; letter-spacing:-.055em; }
.checkout-hero__inner p { max-width:680px; font-size:1rem; line-height:1.8; }
.checkout-content { padding:48px 0 88px; background:#f5f8f4; }
.checkout-layout--single { display:block; max-width:980px; }
.checkout-main { width:100%; }
.checkout-card { padding:clamp(22px,3.2vw,36px); border-color:#e1e9e1; border-radius:18px; box-shadow:0 10px 32px rgba(12,53,30,.055); }
.checkout-card__heading { align-items:center; gap:15px; padding-bottom:17px; border-bottom:1px solid #edf1ec; }
.checkout-card__heading .eyebrow { color:#168344; font-size:.72rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.checkout-card h2 { font-size:clamp(1.2rem,2vw,1.55rem); line-height:1.25; }
.checkout-summary { grid-template-columns:1fr; }
.checkout-summary>div { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 18px; border:1px solid #e5eee3; background:#f4f8f1; }
.checkout-summary span { margin:0; }
.checkout-summary strong { color:#168344; font-size:1.1rem; }
.standard-membership-note { margin:16px 0 0; color:#65736a; font-size:.88rem; }
.form-grid { column-gap:22px; row-gap:19px; }
.form-field label { font-size:.84rem; }
.form-field input,.form-field select { min-height:49px; border-radius:9px; }
.checkbox-row { padding:3px 0; }
.checkout-actions { flex-wrap:wrap; padding:20px 0 0; }
.checkout-actions .btn { min-height:50px; padding:14px 24px; border-radius:10px; font-weight:800; }
.checkout-actions p { flex:1 1 260px; }
.checkout-success { padding:clamp(24px,4vw,44px); }
.checkout-success h2 { font-size:clamp(1.7rem,3vw,2.3rem); }
.checkout-errors { border-radius:12px; }
@media(max-width:620px){
 .checkout-content { padding:30px 0 60px; }
 .checkout-hero__inner h1 { font-size:clamp(2.2rem,10vw,3.2rem); }
 .checkout-card { padding:22px 18px; }
 .checkout-card__heading { align-items:flex-start; }
 .checkout-actions .btn { width:100%; justify-content:center; }
}
