body{background:#f5f6f8;color:#252830;margin:0}.subscription{max-width:780px;margin:48px auto;padding:0 24px 48px}.subscription *{box-sizing:border-box}.subscription [hidden]{display:none!important}.checkout-heading{display:flex;align-items:center;gap:18px;margin-bottom:26px}.checkout-back{width:42px;height:42px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #e1e4e8;border-radius:12px;color:#333;text-decoration:none;font-size:23px;flex-shrink:0}.eyebrow{font-size:10px;letter-spacing:.14em;font-weight:700;color:#777d87;margin:0 0 7px}.checkout-heading h1{font-size:28px;line-height:1.2;margin:0;letter-spacing:-.6px}.selected-plan{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px;font-size:15px;padding:0 2px}.plan-tag{font-size:11px;color:#737985}.checkout-card{background:#fff;border:1px solid #e4e7eb;border-radius:16px;padding:24px;margin-bottom:18px;box-shadow:0 3px 12px #25334a03}.checkout-card h2{font-size:16px;display:flex;align-items:center;gap:11px;margin:0 0 20px;font-weight:650}.step-number{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;border-radius:50%;background:#f0f2f5;font-size:12px;font-weight:700;color:#56606e}.billing-options{display:grid;grid-template-columns:1fr 1fr;gap:14px}.option{position:relative;display:flex;align-items:flex-start;gap:12px;border:1px solid #dfe3e8;border-radius:11px;padding:17px;cursor:pointer;transition:border-color .15s,background .15s;margin:0;min-width:0}.option:has(input:checked){border-color:#333;background:#fafafa}.option input:focus-visible{outline:2px solid #777;outline-offset:3px}.option input{flex-shrink:0;margin:3px 0 0;accent-color:#222}.option-content{display:flex;flex-direction:column;gap:9px;min-width:0;flex:1}.option-content>strong,.option-title>strong{font-size:14px}.option-title{display:flex;justify-content:space-between;gap:7px;align-items:center;flex-wrap:wrap}.saving{color:#276346;background:#edf6ef;border-radius:5px;padding:4px 6px;font-size:10px;font-weight:600;white-space:nowrap}.option-price{font-size:20px;font-weight:700;line-height:1.4}.option-price small{font-size:12px;font-weight:400;color:#777;margin-left:3px}.option-price del{display:block;font-size:12px;font-weight:400;color:#91969f}.option-detail{font-size:12px;color:#7a808a;line-height:1.5}.payment-options{display:grid;gap:12px}.payment-option{align-items:center}.payment-option input{margin:0;order:3;margin-left:auto}.payment-option .option-content{gap:4px}.method-icon{width:38px;height:34px;display:flex;align-items:center;justify-content:center;border:1px solid #e2e5e9;border-radius:7px;background:white;flex-shrink:0}.method-icon svg{width:21px;height:21px}.renewal-note{font-size:12px;color:#737985;line-height:1.6;margin:15px 0 0}.billing-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.full-field{grid-column:1/-1}.billing-fields label{display:block;font-size:13px;font-weight:500;margin-bottom:8px}.billing-fields .form-control{width:100%;border-radius:8px;background:#fff}.checkout-bottom{padding:3px 2px}.terms{display:flex;align-items:center;gap:10px;font-size:12px;color:#666;line-height:1.6}.terms input{margin:0;flex-shrink:0;accent-color:#222}.terms a{color:#333}.checkout-pay{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #e0e3e7;padding-top:22px;margin-top:22px}.checkout-pay>div{display:flex;flex-direction:column;gap:5px}.total-label{font-size:12px;color:#737985}.checkout-pay strong{font-size:25px;letter-spacing:-.4px}.checkout-pay .btn{gap:18px;border-radius:9px;padding:13px 22px;display:inline-flex;align-items:center;justify-content:center}.setup-note{text-align:right;font-size:11px;color:#888;margin:12px 0 0}.checkout-error{padding:14px;background:#fff1f0;color:#a32323;border-radius:8px}
@media(max-width:600px){.subscription{margin:26px auto;padding:0 16px 30px}.checkout-heading{gap:12px}.checkout-heading h1{font-size:23px}.plan-tag{display:none}.checkout-card{padding:20px 17px}.billing-options{grid-template-columns:1fr}.option-price del{display:inline;margin-right:6px}.billing-fields{grid-template-columns:1fr}.checkout-pay{align-items:stretch;flex-direction:column;gap:17px}.checkout-pay>div{flex-direction:row;justify-content:space-between;align-items:center}.checkout-pay .btn{width:100%}.setup-note{text-align:center}}
/* Draw the control explicitly: native Safari checkbox sizing varies. */
.subscription .terms input[type="checkbox"] {
    -webkit-appearance: none;
    appearance: none;
    display: inline-block;
    box-sizing: border-box;
    width: 22px;
    height: 22px;
    min-width: 22px;
    min-height: 22px;
    max-width: 22px;
    max-height: 22px;
    flex: 0 0 22px;
    margin: 0;
    padding: 0;
    border: 1.5px solid #777;
    border-radius: 4px;
    background: #fff;
    cursor: pointer;
}
.subscription .terms input[type="checkbox"]:checked {
    border-color: #222;
    background-color: #222;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 22'%3E%3Cpath d='m5 11 4 4 8-8' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-size: 100% 100%;
    background-repeat: no-repeat;
}
.subscription .terms input[type="checkbox"]:focus-visible {
    outline: 2px solid #555;
    outline-offset: 3px;
}
.subscription .terms { min-height: 44px; cursor: pointer; }
@media (forced-colors: active) {
    .subscription .terms input[type="checkbox"] { -webkit-appearance: checkbox; appearance: auto; }
}
