/* Dev-only visual layer. Do not style gateway iframe contents or alter totals. */
body.tp-checkout{--tp-ink:#10180f;--tp-green:#8dd451;--tp-muted:#566153;--tp-line:#dce2d6;background:#f5f6f1!important;color:var(--tp-ink);font-family:Inter,Arial,sans-serif}
.tp-checkout *{box-sizing:border-box}
.tp-checkout vs-ai-chat,.tp-checkout .tipman-mobile-banner,.tp-checkout .tm-mobile-cta,.tp-checkout .flux-checkout__sidebar-header,.tp-checkout .flux-checkout__header,.tp-checkout .flux-step--details .flux-footer,.tp-checkout .flux-checkout__order-review>h2{display:none!important}
.tp-checkout-top{background:#fff;border-bottom:1px solid var(--tp-line)}
.tp-checkout-top__inner{max-width:1160px;margin:auto;min-height:88px;display:flex;align-items:center;justify-content:space-between;padding:16px 28px}
.tp-checkout-top img{display:block;width:112px;height:52px;object-fit:contain}
.tp-secure{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--tp-muted)}
.tp-secure svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6}
.tp-checkout .flux-checkout{background:transparent!important;min-height:0}
.tp-checkout .flux-checkout__content{max-width:1160px!important;margin:auto!important;padding:40px 28px 24px!important;width:100%!important}
.tp-checkout .flux-checkout__content-wrapper{display:grid!important;grid-template-columns:minmax(0,1fr) 390px;gap:52px;align-items:start;max-width:none!important}
.tp-checkout .flux-checkout__content-left,.tp-checkout .flux-checkout__content-right{width:auto!important;max-width:none!important;min-width:0;padding:0!important;border:0!important;margin:0!important;background:transparent!important}
.tp-checkout-intro{margin-bottom:30px}
.tp-eyebrow{display:block;font-size:10px;line-height:1.5;letter-spacing:1.6px;font-weight:800;color:#497529;margin-bottom:10px}
.tp-checkout-intro h1{font-size:40px;letter-spacing:-1.8px;line-height:1.12;font-weight:800;margin:0 0 12px;color:var(--tp-ink)}
.tp-checkout-intro h1 span{color:#4c7b28}
.tp-checkout-intro p{font-size:14px;color:var(--tp-muted);margin:0;line-height:1.6}
.tp-checkout .flux-step{background:transparent!important;padding:0!important;margin:0!important}
.tp-checkout .flux-step--payment{border-top:1px solid var(--tp-line);padding-top:24px!important;margin-top:24px!important}
.tp-checkout .flux-step h2{font-size:20px!important;font-weight:750;letter-spacing:-.5px;margin:0 0 20px!important;line-height:1.3}
.tp-checkout .flux-step__content{padding:0!important}
.tp-checkout .form-row{margin-bottom:18px!important}
.tp-checkout input.input-text,.tp-checkout select,.tp-checkout .select2-selection{border:1px solid #cbd3c5!important;border-radius:8px!important;background:#fff!important;color:var(--tp-ink)!important;min-height:54px;font-size:16px!important;box-shadow:none!important;transition:border-color .16s,box-shadow .16s}
.tp-checkout input.input-text:focus,.tp-checkout select:focus{border-color:#4c7b28!important;box-shadow:0 0 0 3px #8dd45130!important;outline:0}
.tp-checkout .form-row label{color:#4c5849!important;font-size:13px}
.tp-checkout .woocommerce-input-wrapper{max-width:100%}
.tp-checkout .wc_payment_methods{border:1px solid #cbd3c5!important;background:white!important;border-radius:12px;overflow:hidden;padding:0!important}
.tp-checkout .wc_payment_method{padding:0!important;border-bottom:1px solid var(--tp-line)!important;background:white!important}
.tp-checkout .wc_payment_method:last-child{border-bottom:0!important}
.tp-checkout .wc_payment_method>label{padding:18px 20px!important;font-weight:650!important;font-size:15px!important;color:var(--tp-ink)!important}
.tp-checkout .payment_box{padding:18px 20px!important;margin:0!important;background:#f5f8f1!important;border-top:1px solid var(--tp-line)!important;font-size:13px!important;line-height:1.6}
.tp-checkout .payment_box p{font-size:13px!important;line-height:1.6}
.tp-checkout .woocommerce-terms-and-conditions-wrapper{margin-top:24px}
.tp-checkout .woocommerce-terms-and-conditions-wrapper label,.tp-checkout .woocommerce-form__label-for-checkbox{font-size:13px!important;font-weight:400!important;line-height:1.65!important;color:#374330!important}
.tp-checkout .woocommerce-terms-and-conditions-wrapper a{color:#365c20!important;text-decoration:underline}
.tp-checkout #place_order,.tp-checkout .vscl__signin{background:var(--tp-green)!important;color:#10180f!important;border:0!important;border-radius:9px!important;min-height:56px;font-size:17px!important;font-weight:750!important;box-shadow:none!important;transition:background .16s}
.tp-checkout #place_order:hover,.tp-checkout .vscl__signin:hover{background:#7cc63e!important}
.tp-checkout button:focus-visible,.tp-checkout a:focus-visible,.tp-checkout summary:focus-visible{outline:3px solid #4c7b28!important;outline-offset:3px}
.tp-payment-note{font-size:12px!important;line-height:1.6;color:var(--tp-muted);margin:16px 0!important}
.tp-summary-heading{background:#0e170d;border-radius:16px 16px 0 0;padding:28px 28px 26px;border-bottom:3px solid var(--tp-green)}
.tp-summary-heading .tp-eyebrow{color:var(--tp-green)}
.tp-summary-heading h2{font-size:28px!important;font-weight:800;letter-spacing:-1px;line-height:1.12;color:white;margin:0 0 12px!important}
.tp-summary-heading p{font-size:12px;color:#ced7c8;margin:0;line-height:1.6}
.tp-checkout .flux-checkout__order-review{padding:24px 26px!important;background:white;border:1px solid var(--tp-line);border-top:0;border-radius:0 0 16px 16px}
.tp-checkout #order_review table{width:100%!important;table-layout:fixed;border-collapse:collapse;margin:0!important}
.tp-checkout #order_review td,.tp-checkout #order_review th{font-size:13px;line-height:1.5;padding:12px 0!important;vertical-align:top;border-color:var(--tp-line)!important}
.tp-checkout #order_review th{font-weight:500!important;text-align:left}
.tp-checkout #order_review td{text-align:right}
.tp-checkout #order_review .cart_item td{padding:0 0 20px!important;font-weight:700;font-size:16px}
.tp-checkout #order_review .product-name{text-align:left!important;width:60%!important;padding-right:14px!important}
.tp-checkout #order_review .product-total{position:relative;padding-right:24px!important;width:40%!important}
.tp-checkout .flux-checkout__remove-link{position:absolute!important;right:-10px!important;top:-7px!important;line-height:1}
.tp-checkout .flux-checkout__remove-link a{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;color:#65715e!important;font-size:20px!important}
.tp-checkout #order_review .flux-checkout__order-review-ghost-row,.tp-checkout #order_review .flux-element:has(td:empty),.tp-checkout #order_review .cart-subtotal.recurring-total{display:none!important}
.tp-checkout #order_review .order-total:not(.recurring-total) th,.tp-checkout #order_review .order-total:not(.recurring-total) td{font-size:21px!important;font-weight:750!important;border-top:1px solid var(--tp-line)!important;padding:18px 0!important}
.tp-checkout #order_review .recurring-totals th{font-size:10px!important;letter-spacing:1.2px;text-transform:uppercase;color:var(--tp-muted);padding-top:22px!important;border-top:1px solid var(--tp-line)!important;font-weight:700!important}
.tp-checkout #order_review .recurring-total th,.tp-checkout #order_review .recurring-total td{border:0!important;padding:0!important}
.tp-checkout #order_review .first-payment-date{font-size:12px;line-height:1.6;color:var(--tp-muted);margin-top:8px}
.tp-checkout #order_review .first-payment-date small{font-size:12px}
.tp-checkout .tp-coupon{padding:3px 0 10px}
.tp-checkout .tp-coupon summary{font-size:13px;font-weight:600;color:#435f32;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;min-height:32px}
.tp-checkout .tp-coupon summary::-webkit-details-marker{display:none}
.tp-checkout .tp-coupon summary:after{content:'+';font-size:21px;font-weight:400}
.tp-checkout .tp-coupon[open] summary:after{content:'−'}
.tp-checkout .tp-coupon .woocommerce-form-coupon__wrapper{margin-top:14px}
.tp-checkout .tp-coupon .form-row{margin-bottom:0!important}
.tp-checkout .tp-coupon .button{background:#182313!important;color:white!important;border-radius:8px;min-height:54px;font-size:13px!important}
.tp-summary-help{padding:18px 12px;font-size:12px;line-height:1.65;color:var(--tp-muted)}
.tp-summary-help p{margin:0 0 10px}
.tp-summary-help a{color:#23381a;font-weight:650;text-decoration:underline;text-underline-offset:3px}
.tp-checkout-bottom{max-width:1104px;margin:0 auto;padding:20px 0 28px;border-top:1px solid var(--tp-line);display:flex;justify-content:space-between;gap:16px;font-size:11px;color:var(--tp-muted)}
.tp-checkout-bottom a{color:inherit;text-decoration:underline}
.tp-checkout .vscl__status{font-size:13px;line-height:1.6}
@media(min-width:901px){.tp-checkout .flux-checkout__content-right{position:sticky;top:24px}}
@media(max-width:900px){
 .tp-checkout-top__inner{min-height:72px;padding:12px 20px}.tp-checkout-top img{width:96px;height:44px}
 .tp-checkout .flux-checkout__content{padding:24px 20px!important}.tp-checkout .flux-checkout__content-wrapper{display:flex!important;flex-direction:column;gap:28px}
 .tp-checkout .flux-checkout__content-right{display:block!important;order:-1;width:100%!important;height:auto!important;max-height:none!important;visibility:visible!important;position:static!important;transform:none!important}
 .tp-checkout .flux-checkout__content-left{width:100%!important}.tp-summary-heading{padding:18px 20px}.tp-summary-heading h2{font-size:22px!important}.tp-summary-heading h2 br{display:none}.tp-summary-heading h2 br:after{content:' '}.tp-summary-heading p{display:none}
 .tp-summary-heading .tp-eyebrow{margin-bottom:6px}.tp-checkout .flux-checkout__order-review{padding:20px!important}.tp-summary-help{padding:14px 4px 0}.tp-summary-help p{display:none}
 .tp-checkout-intro h1{font-size:32px}.tp-checkout-intro{margin-bottom:24px}.tp-checkout-intro .tp-eyebrow{display:none}
 .tp-checkout-bottom{margin:0 20px;font-size:10px}.tp-checkout .flux-step--payment{margin-top:18px!important}
}
/* Refinement: stable labels above fields, a quiet form surface, compact notices. */
body.tp-checkout{background:#f4f5f1!important}
.tp-checkout .flux-checkout__content-wrapper{gap:36px}
.tp-checkout .flux-checkout__content-left{background:#fff!important;border:1px solid #e3e6de!important;border-radius:16px;padding:30px!important}
.tp-checkout .tp-checkout-intro{margin-bottom:24px}
.tp-checkout .tp-checkout-intro h1{font-size:30px;line-height:1.2;letter-spacing:-1px}
.tp-checkout .tp-checkout-intro p{font-size:13px;line-height:1.5}
.tp-checkout .flux-step h2{font-size:18px!important;margin-bottom:18px!important}
.tp-checkout .flux-checkout .form-row:not(.woocommerce-form__label-for-checkbox)>label:not(.woocommerce-form__label-for-checkbox){position:static!important;display:block!important;transform:none!important;top:auto!important;left:auto!important;width:auto!important;max-width:100%!important;height:auto!important;margin:0 0 7px!important;padding:0!important;background:transparent!important;line-height:1.4!important;font-size:12px!important;font-weight:600!important;color:#384331!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
.tp-checkout .flux-checkout .form-row>label .required{font-size:12px!important;color:#617354!important}
.tp-checkout .flux-checkout input.input-text{background:#fff!important;height:50px;min-height:50px;padding:12px 14px!important;border-color:#d8ded2!important;border-radius:7px!important;font-size:15px!important;line-height:24px!important}
.tp-checkout .flux-checkout .form-row{padding-top:0!important;margin-top:0!important;margin-bottom:18px!important}
.tp-checkout .select2-container .select2-selection--single{height:50px!important;min-height:50px;padding:0!important;border-radius:7px!important;border-color:#d8ded2!important}
.tp-checkout .select2-container .select2-selection__rendered{line-height:48px!important;padding:0 34px 0 14px!important;font-size:15px!important}
.tp-checkout .select2-container .select2-selection__arrow{top:12px!important}
.tp-checkout .woocommerce-message,.tp-checkout .woocommerce-info{background:#f0f5e9!important;border:1px solid #d3dfc7!important;border-left:3px solid #74a743!important;border-radius:7px!important;padding:13px 16px!important;margin:0 0 18px!important;color:#33462a!important;font-size:13px!important;line-height:1.55!important;box-shadow:none!important}
.tp-checkout .woocommerce-message *,.tp-checkout .woocommerce-info *{color:inherit!important;font-size:inherit!important;line-height:inherit!important}
.tp-checkout .woocommerce-message:before,.tp-checkout .woocommerce-info:before{display:none!important}
.tp-checkout .woocommerce-error{background:#fff4f1!important;border:1px solid #e3b5aa!important;border-left:3px solid #a54530!important;color:#7a2a1c!important;border-radius:7px!important;padding:13px 16px!important;font-size:13px!important;line-height:1.55!important}
.tp-checkout .woocommerce-error li{color:inherit!important}
.tp-checkout #wc-stripe-express-checkout-button-separator{margin:16px 0!important;line-height:1.5!important;color:#7b8275!important;font-size:12px!important}
.tp-checkout .tp-summary-heading{padding:24px}.tp-checkout .tp-summary-heading h2{font-size:24px!important;line-height:1.2}
@media(max-width:900px){
 .tp-checkout .flux-checkout__content-left{padding:22px 18px!important;border-radius:12px}
 .tp-checkout .tp-checkout-intro h1{font-size:26px}
 .tp-checkout .flux-checkout__content{padding:18px 14px!important}
 .tp-checkout .tp-summary-heading{padding:14px 20px}
}
@media(prefers-reduced-motion:reduce){.tp-checkout *{transition:none!important;scroll-behavior:auto!important}}
.tp-checkout #tipman-ai-deferred-fab{display:none!important}
.tp-checkout .tp-checkout-intro h1 span{font:inherit!important;letter-spacing:inherit!important}
.tp-checkout .flux-checkout__content-left:before,.tp-checkout .flux-checkout__content-right:before,.tp-checkout .flux-checkout__content:before,.tp-checkout .flux-checkout:before{display:none!important}
.tp-checkout .flux-checkout__content-left:after,.tp-checkout .flux-checkout__content-right:after{display:none!important}
.tp-checkout .flux-step .flux-step__content{margin-top:0!important}
.tp-checkout .flux-step--details{border:0!important}
.tp-checkout .flux-step--payment{padding-bottom:0!important}
.tp-checkout .flux-checkout__content-right #order_review tr.cart_item td.product-name{display:table-cell!important;min-height:0!important;height:auto!important;width:60%!important;border-top:0!important}
.tp-checkout .flux-checkout__content-right #order_review tr.cart_item td.product-total{vertical-align:top!important;border-top:0!important;padding-right:25px!important}
.tp-checkout .flux-checkout__content-right #order_review tr.cart_item td.product-total .amount{min-width:0!important;width:auto!important;margin:0!important}
.tp-checkout .flux-checkout__content-right #order_review tr.cart_item td.product-total .flux-checkout__remove-link{top:-4px!important;right:-8px!important}
.tp-checkout .flux-checkout__content-right #order_review tr.cart_item td.product-total .flux-checkout__remove-link a.remove{width:28px;height:28px;padding:9px}
.tp-checkout .wc_payment_method>label{margin:0 16px!important;padding:16px 0!important;min-height:54px;height:auto!important}
.tp-checkout #place_order{width:100%!important;margin-top:12px!important}
.tp-checkout #place_order:before{display:none!important}
.tp-checkout .tp-coupon summary{visibility:visible!important;text-align:left!important}
.tp-checkout .flux-checkout button#place_order{width:100%!important;flex:1 0 100%!important}
.tp-checkout .flux-checkout__content-wrapper:before,.tp-checkout .flux-checkout__content-wrapper:after{display:none!important}
.tp-checkout .woocommerce,.tp-checkout .flux-checkout__steps{background:transparent!important}
.tp-checkout .flux-step--payment .flux-footer{margin-top:12px!important}
.tp-checkout .flux-step--details .woocommerce-billing-fields{margin-bottom:0!important;padding-bottom:0!important;border-bottom:0!important}
.tp-checkout .flux-step--payment .flux-review-customer{display:none!important}
.tp-checkout .tp-checkout-bottom{display:flex!important}
.tp-checkout .tp-checkout-bottom *{font-size:11px;line-height:1.6;color:inherit}
@media(max-width:900px){
 .tp-checkout .tp-summary-heading{padding:14px 20px}.tp-checkout .tp-summary-heading .tp-eyebrow{margin:0}.tp-checkout .tp-summary-heading h2{display:none}
 .tp-checkout .flux-checkout__order-review{padding:16px 20px!important}
 .tp-checkout #order_review td,.tp-checkout #order_review th{padding:7px 0!important}
 .tp-checkout #order_review .cart_item td{padding:0 0 10px!important;font-size:14px!important}
 .tp-checkout #order_review .order-total:not(.recurring-total) th,.tp-checkout #order_review .order-total:not(.recurring-total) td{padding:10px 0!important;font-size:19px!important}
 .tp-checkout #order_review .recurring-totals th{padding-top:12px!important}
 .tp-checkout #order_review .first-payment-date{margin-top:4px}
 .tp-checkout .tp-coupon{padding:0}.tp-checkout .tp-summary-help{padding-top:8px}
 .tp-checkout .flux-checkout__content-wrapper{gap:22px}
}

.tp-checkout .woocommerce form p.form-row[data-type=email]:before,.tp-checkout .woocommerce form p.form-row[data-type=country]:before{display:none!important}

.tp-checkout .select2-container .select2-selection__rendered{height:48px!important;min-height:48px!important;display:block!important}

/* Order summary: one type scale and consistent row rhythm. */
.tp-checkout .flux-checkout__content-right{font-family:Inter,Arial,sans-serif!important}
.tp-checkout .tp-summary-heading{padding:24px!important;border-bottom-width:2px}
.tp-checkout .tp-summary-heading h2{font-family:inherit!important;font-size:23px!important;font-weight:750!important;letter-spacing:-.6px!important;margin:0 0 12px!important}
.tp-checkout .tp-summary-heading p{display:flex;align-items:center;gap:7px;color:#d0d8cd;font-size:12px;line-height:18px;margin:0}
.tp-summary-heading p svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6;flex-shrink:0}
.tp-checkout .tp-summary-heading .tp-eyebrow{font-size:10px;letter-spacing:1.3px;margin-bottom:8px}
.tp-checkout .flux-checkout__order-review{padding:24px!important}
.tp-checkout .flux-checkout__content-right #order_review th,.tp-checkout .flux-checkout__content-right #order_review td{font-family:inherit!important;font-size:14px!important;line-height:22px!important;padding:14px 0!important;vertical-align:top!important}
.tp-checkout .flux-checkout__content-right #order_review .amount,.tp-checkout .flux-checkout__content-right #order_review bdi{font-family:inherit!important;font-size:inherit!important;line-height:inherit!important;font-weight:inherit!important;font-variant-numeric:tabular-nums}
.tp-checkout .flux-checkout__content-right #order_review tr.cart_item td{font-size:16px!important;font-weight:650!important;padding-top:0!important;padding-bottom:20px!important}
.tp-checkout .flux-checkout__content-right #order_review .coupon-form>td{padding:12px 0!important}
.tp-checkout .tp-coupon{padding:0!important}
.tp-checkout .tp-coupon summary{min-height:36px;font-family:inherit!important;font-size:13px!important;font-weight:500!important;line-height:20px!important;color:#4c5b43;padding:4px 0}
.tp-checkout .tp-coupon summary:after{font-size:19px}
.tp-checkout .tp-coupon summary:focus:not(:focus-visible){outline:none!important}
.tp-checkout .tp-coupon summary:focus-visible{outline:2px solid #4c7b28!important;outline-offset:3px;border-radius:4px}
.tp-checkout .flux-checkout__content-right #order_review .order-total:not(.recurring-total) th,.tp-checkout .flux-checkout__content-right #order_review .order-total:not(.recurring-total) td{font-size:20px!important;font-weight:700!important;padding:18px 0!important;line-height:26px!important}
.tp-checkout .flux-checkout__content-right #order_review .recurring-totals th{font-size:10px!important;font-weight:650!important;letter-spacing:1.1px!important;padding:18px 0 8px!important;border-bottom:0!important;line-height:16px!important}
.tp-checkout .flux-checkout__content-right #order_review .order-total.recurring-total th,.tp-checkout .flux-checkout__content-right #order_review .order-total.recurring-total td{font-size:14px!important;line-height:22px!important;padding:0!important;border:0!important}
.tp-checkout .flux-checkout__content-right #order_review .order-total.recurring-total strong{font-weight:600}
.tp-checkout .flux-checkout__content-right #order_review .first-payment-date,.tp-checkout .flux-checkout__content-right #order_review .first-payment-date small{font-family:inherit!important;font-size:12px!important;line-height:18px!important;color:#687061!important;font-weight:400!important}
.tp-checkout .flux-checkout__content-right #order_review .first-payment-date{margin-top:8px!important}
@media(max-width:900px){.tp-checkout .tp-summary-heading{padding:16px 20px!important}.tp-checkout .tp-summary-heading p{display:none}.tp-checkout .flux-checkout__order-review{padding:20px!important}}
.tp-checkout .tp-summary-heading p svg,.tp-checkout .tp-summary-heading p svg *{stroke:#d0d8cd!important;fill:none!important}.tp-checkout .flux-checkout__content-right #order_review .recurring-totals{border-bottom:0!important}.tp-checkout .flux-checkout__content-right #order_review .recurring-totals th{padding-bottom:12px!important}
/* Align the expanded coupon form without changing its native handlers. */
.tp-checkout .tp-coupon .woocommerce-form-coupon__inner{display:grid!important;grid-template-columns:minmax(0,1fr) 100px;gap:12px;align-items:end;text-align:left!important}
.tp-checkout .tp-coupon .woocommerce-form-coupon__inner>.form-row{float:none!important;width:auto!important;min-width:0!important;margin:0!important;padding:0!important;text-align:left!important}
.tp-checkout .tp-coupon .woocommerce-form-coupon__inner>.clear{display:none!important}
.tp-checkout .tp-coupon .woocommerce-form-coupon__inner label{text-align:left!important;font-size:12px!important;line-height:18px!important;margin-bottom:7px!important}
.tp-checkout .tp-coupon .woocommerce-form-coupon__inner input{width:100%!important;height:50px!important;min-height:50px!important;margin:0!important}
.tp-checkout .tp-coupon .woocommerce-form-coupon__inner button{width:100%!important;height:50px!important;min-height:50px!important;margin:0!important;padding:0 14px!important;font-size:13px!important;line-height:20px!important;border:0!important;border-radius:7px!important}
.tp-checkout .tp-coupon .woocommerce-form-coupon__wrapper{margin:12px 0 6px!important}
/* Renewal details sit together beneath one divider. */
.tp-checkout .flux-checkout__content-right #order_review .recurring-totals th{padding:20px 0 12px!important;border-bottom:0!important}
.tp-checkout .flux-checkout__content-right #order_review .order-total.recurring-total,.tp-checkout .flux-checkout__content-right #order_review .order-total.recurring-total th,.tp-checkout .flux-checkout__content-right #order_review .order-total.recurring-total td{border-top:0!important;border-bottom:0!important}
.tp-checkout .flux-checkout__content-right #order_review .order-total.recurring-total th{color:#4c5849!important;font-weight:500!important;padding-top:2px!important}
.tp-checkout .flux-checkout__content-right #order_review .order-total.recurring-total td{padding-top:2px!important}
.tp-checkout .flux-checkout__content-right #order_review .first-payment-date{margin-top:12px!important;line-height:20px!important}
.tp-checkout .flux-checkout__content-right #order_review .first-payment-date small{display:block;line-height:20px!important;font-size:12px!important}

/* Validation must not move the Apply button below its input. */
.tp-checkout .tp-coupon .woocommerce-form-coupon__inner{align-items:start!important}
.tp-checkout .tp-coupon .woocommerce-form-coupon__inner>.form-row-last{padding-top:25px!important}
.tp-checkout .tp-coupon .error,.tp-checkout .tp-coupon .woocommerce-error,.tp-checkout .tp-coupon .woocommerce-form-coupon__error{font-size:12px!important;line-height:18px!important;color:#a33224!important;text-align:left!important;margin-top:8px!important}
/* Show payable totals once; retain native discount, fee, tax and renewal rows. */
.tp-checkout .flux-checkout__content-right #order_review .cart_item .product-total>.amount,
.tp-checkout .flux-checkout__content-right #order_review .cart-subtotal:not(.recurring-total),
.tp-checkout .flux-checkout__content-right #order_review .recurring-totals{display:none!important}
.tp-checkout .flux-checkout__content-right #order_review .cart_item .product-name{width:90%!important}
.tp-checkout .flux-checkout__content-right #order_review .cart_item .product-total{width:10%!important}
.tp-checkout .flux-checkout__content-right #order_review .order-total.recurring-total th,
.tp-checkout .flux-checkout__content-right #order_review .order-total.recurring-total td{padding-top:16px!important}
.tp-checkout .flux-checkout__content-right #order_review .first-payment-date{margin-top:6px!important}
.tp-checkout .flux-checkout__content-right #order_review .cart-discount th,
.tp-checkout .flux-checkout__content-right #order_review .cart-discount td{color:#365c20!important;font-size:13px!important}
/* Compact applied-coupon confirmation and quiet removal action. */
.tp-checkout .tp-coupon .success{font-family:inherit!important;font-size:12px!important;line-height:18px!important;color:#365c20!important;margin:8px 0 0!important;padding:0!important;text-align:left!important;font-weight:400!important}
.tp-checkout .tp-coupon .checkout_coupon,.tp-checkout .tp-coupon .woocommerce-form-coupon__inner{margin-bottom:0!important;padding-bottom:0!important}
.tp-checkout .flux-checkout__content-right #order_review .cart-discount th,.tp-checkout .flux-checkout__content-right #order_review .cart-discount td{padding:12px 0!important;vertical-align:middle!important;line-height:20px!important}
.tp-checkout .flux-checkout__content-right #order_review .cart-discount th{overflow-wrap:anywhere;padding-right:12px!important}
.tp-checkout .flux-checkout__content-right #order_review .woocommerce-remove-coupon{display:inline-block!important;margin-left:8px!important;color:#64705e!important;font-family:inherit!important;font-size:12px!important;font-weight:400!important;text-decoration:underline!important;text-underline-offset:3px;white-space:nowrap}
/* Keep the applied discount close to the coupon toggle. */
.tp-checkout .flux-checkout__content-right #order_review .coupon-form>td{padding:6px 0!important}
.tp-checkout .flux-checkout__content-right #order_review .cart-discount th,.tp-checkout .flux-checkout__content-right #order_review .cart-discount td{padding:9px 0!important;font-size:13px!important;line-height:20px!important}
.tp-checkout .flux-checkout__content-right #order_review .cart-discount th{padding-right:12px!important;color:#46543e!important}
.tp-checkout .flux-checkout__content-right #order_review .cart-discount td{white-space:nowrap;font-weight:600}
.tp-checkout .flux-checkout__content-right #order_review .woocommerce-remove-coupon{margin-left:10px!important;font-size:11px!important;font-weight:400!important}
/* Treat the minus, currency and digits as one discount amount. */
.tp-checkout .flux-checkout__content-right #order_review .cart-discount td{color:#365c20!important;font-size:14px!important;font-weight:650!important;font-variant-numeric:tabular-nums;letter-spacing:0!important}
.tp-checkout .flux-checkout__content-right #order_review .cart-discount td .amount,
.tp-checkout .flux-checkout__content-right #order_review .cart-discount td .amount *{color:inherit!important;font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important;letter-spacing:inherit!important}
.tp-checkout .flux-checkout__content-right #order_review .cart-discount .woocommerce-remove-coupon{margin-left:14px!important;color:#6b7266!important;font-size:12px!important;font-weight:400!important;letter-spacing:0!important}
/* A quiet security badge, without a second heading above the summary. */
.tp-checkout .tp-summary-heading p{display:inline-flex!important;align-items:center;gap:7px;font-family:Inter,Arial,sans-serif!important;font-size:11px!important;font-weight:500;line-height:18px!important;color:#dce8d5!important;background:#ffffff08;border:1px solid #ffffff20;border-radius:6px;padding:5px 9px;margin:0!important}
.tp-checkout .tp-summary-heading p svg{width:14px!important;height:14px!important}
.tp-checkout .tp-summary-heading p svg,.tp-checkout .tp-summary-heading p svg *{stroke:#a9df7f!important;stroke-width:1.7!important}
@media(max-width:900px){.tp-checkout .tp-summary-heading h2{display:block!important;font-size:20px!important;margin-bottom:10px!important}}
/* Mobile checkout: readable inputs without iOS focus zoom. */
@media(max-width:900px){
.tp-checkout .flux-checkout input.input-text,.tp-checkout .select2-container .select2-selection__rendered{font-size:16px!important}
.tp-checkout .flux-checkout__content-right #order_review tr.cart_item td.product-name{width:85%!important}
.tp-checkout .flux-checkout__content-right #order_review tr.cart_item td.product-total{width:15%!important}
.tp-checkout .tp-coupon .woocommerce-form-coupon__inner{grid-template-columns:minmax(0,1fr) 88px;gap:10px}
}
/* Progressive mobile disclosure; the desktop summary remains untouched. */
.tp-mobile-summary,.tp-mobile-payment-total{display:none}
@media(max-width:900px){
.tp-checkout .tp-summary-ready .tp-summary-heading{display:none!important}
.tp-checkout .tp-summary-ready:not(.tp-summary-expanded) .flux-checkout__order-review{display:none!important}
.tp-checkout .tp-mobile-summary{display:block;background:#fff;border:1px solid #dce2d6;border-radius:12px;padding:16px 18px}
.tp-mobile-summary__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;font-size:14px;line-height:20px;color:#10180f}
.tp-mobile-plan{font-weight:650;min-width:0}
.tp-mobile-total{font-weight:750;white-space:nowrap;font-variant-numeric:tabular-nums}
.tp-mobile-renewal{margin-top:7px;font-size:12px;line-height:18px;color:#58634f}
.tp-mobile-discount{margin-top:6px;font-size:11px;font-weight:600;color:#365c20}
.tp-checkout .tp-mobile-summary__toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:36px;margin:8px 0 -5px;padding:5px 0;border:0;background:transparent;color:#365c20;font-family:inherit;font-size:12px;font-weight:600;text-align:left;box-shadow:none}
.tp-mobile-summary__toggle span{font-size:18px}
.tp-checkout .tp-summary-expanded .tp-mobile-summary{border-radius:12px 12px 0 0}
.tp-checkout .tp-summary-expanded .flux-checkout__order-review{display:block!important;border-top:0;border-radius:0 0 12px 12px}
.tp-checkout .tp-mobile-payment-total{display:block;font-size:12px;line-height:19px;color:#46543e;margin:16px 0}
.tp-checkout .tp-payment-note:has(+.tp-mobile-payment-total){display:none}
}
@media(max-width:900px){
.tp-checkout .tp-mobile-summary__top{font-size:14px!important;line-height:20px!important}
.tp-checkout .tp-mobile-renewal,.tp-checkout .tp-mobile-renewal div{font-size:12px!important;line-height:18px!important}
.tp-checkout .tp-mobile-discount{font-size:11px!important;line-height:16px!important}
}

/* Quiet cancellation reassurance, beneath the renewal details. */
.tp-checkout .tp-cancellation-row td {
    padding: 14px 0 0 !important;
    border: 0 !important;
    text-align: left !important;
    color: #64705d !important;
    font-size: 12px !important;
    font-weight: 400 !important;
    line-height: 19px !important;
}
@media (max-width: 900px) {
    .tp-checkout .tp-cancellation-row { display: none !important; }
    .tp-checkout .tp-mobile-summary .tp-cancellation {
        margin: 8px 0 0 !important;
        color: #64705d !important;
        font-size: 12px !important;
        font-weight: 400 !important;
        line-height: 18px !important;
    }
}
.tp-checkout .tp-cancellation {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    border-top: 1px solid #e5e9e1;
    padding-top: 14px;
    text-align: left;
}
.tp-checkout .tp-cancellation[hidden] { display: none; }
.tp-checkout .tp-cancellation strong {
    display: block;
    color: #34452b;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 18px !important;
}
.tp-checkout .tp-cancellation-detail {
    display: block;
    margin-top: 3px;
    color: #64705d;
    font-size: 12px !important;
    line-height: 18px !important;
}
.tp-checkout .tp-cancellation-icon {
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #edf5e5;
    color: #497b28;
    text-align: center;
    font-size: 12px !important;
    line-height: 18px !important;
}
@media (max-width: 900px) {
    .tp-checkout .tp-mobile-summary .tp-cancellation {
        margin-top: 12px !important;
        padding-top: 10px;
    }
}
/* Keep the summary visible between Flux's tablet and our mobile breakpoint. */
@media (min-width: 901px) {
    .tp-checkout .flux-checkout__content-right { display: block !important; }
}
