/* Client Renewals Portal v1.2.6 */
:root{--crp-ink:#111;--crp-muted:#6b7280;--crp-line:#e8e8e8;--crp-soft:#f7f7f7;--crp-danger:#c62828;--crp-success:#16794b}

/* ---------- Account layout ---------- */
body.woocommerce-account .site-main .woocommerce,
body.woocommerce-account .entry-content>.woocommerce,
body.woocommerce-account .woocommerce{
  width:calc(100% - 48px)!important;
  max-width:1120px!important;
  margin:48px auto 72px!important;
  padding:0!important;
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  align-items:start!important;
  column-gap:0!important;
  row-gap:0!important;
  float:none!important;
  clear:both!important;
}
body.woocommerce-account .woocommerce:before,
body.woocommerce-account .woocommerce:after{display:none!important;content:none!important}
body.woocommerce-account .woocommerce-MyAccount-navigation{display:none!important}
body.woocommerce-account .woocommerce-MyAccount-content{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  float:none!important;
  margin:0!important;
  margin-left:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  position:relative!important;
  left:0!important;
  right:auto!important;
  top:auto!important;
  transform:none!important;
  z-index:1!important;
  grid-column:1!important;
  grid-row:1!important;
  overflow:visible!important;
}
body.woocommerce-account .woocommerce-MyAccount-content>p:first-child{margin-top:0!important}
body.woocommerce-account .woocommerce-MyAccount-content:before,
body.woocommerce-account .woocommerce-MyAccount-content:after{pointer-events:none!important}
body.woocommerce-account .crp-account{position:relative!important;left:0!important;transform:none!important;z-index:1!important}

/* ---------- Renewals ---------- */
.crp-account{width:100%;max-width:860px;margin:0!important;box-sizing:border-box}.crp-portal-head{margin-bottom:22px}.crp-eyebrow{display:block;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--crp-muted);margin-bottom:6px}.crp-portal-head h2{margin:0 0 7px!important;font-size:30px!important;line-height:1.2!important;color:var(--crp-ink)!important}.crp-portal-head p{margin:0!important;color:var(--crp-muted)!important}
.crp-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.crp-summary>div{border:1px solid var(--crp-line);border-radius:14px;padding:20px;background:#fff;box-sizing:border-box}.crp-summary strong{display:block;font-size:27px;line-height:1.1;color:var(--crp-ink);margin-top:8px}.crp-summary-label{font-size:13px;color:var(--crp-muted)}
.crp-payall-row{display:flex;justify-content:flex-end;margin:0 0 18px}.crp-account .button,.crp-account a.button{border:0!important;border-radius:9px!important;background:#111!important;color:#fff!important;font-weight:700!important;padding:11px 18px!important;line-height:1.2!important;text-decoration:none!important;box-shadow:none!important}.crp-account .button:hover{opacity:.86}
.crp-list{display:grid;gap:14px}.crp-card{display:flex;align-items:center;justify-content:space-between;gap:28px;border:1px solid var(--crp-line);border-radius:14px;padding:22px;background:#fff;box-sizing:border-box}.crp-card-main{min-width:0;flex:1 1 auto}.crp-card h3{margin:5px 0 10px!important;font-size:20px!important;line-height:1.25!important;color:var(--crp-ink)!important;word-break:break-word}.crp-card p{margin:4px 0!important}.crp-type{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--crp-muted);font-weight:700}.crp-date{color:#4b5563}.crp-notes{color:var(--crp-muted)}.crp-card-side{text-align:right;flex:0 0 170px;min-width:170px}.crp-amount{font-size:22px;font-weight:800;color:var(--crp-ink);margin-bottom:0}.crp-base-label{font-size:11px;color:var(--crp-muted);margin-bottom:10px}.crp-status{display:inline-block;font-size:12px;font-weight:700;border-radius:999px;padding:6px 9px;margin-bottom:14px;background:#f3f4f6}.crp-status-paid{color:var(--crp-success);background:#edf8f2}.crp-status-due,.crp-status-expired{color:var(--crp-danger);background:#fff1f1}.crp-status-upcoming{color:#4b5563}.crp-fee-note{display:flex;gap:12px;align-items:flex-start;border:1px dashed #d8d8d8;border-radius:14px;padding:14px 16px;margin-top:18px;font-size:13px}.crp-fee-note strong{white-space:nowrap}.crp-fee-note span{color:var(--crp-muted)}.crp-empty{border:1px solid var(--crp-line);border-radius:14px;padding:28px;text-align:center;background:#fff}.crp-empty h3{margin:0 0 5px!important}

/* ---------- Checkout / order pay ---------- */
body.woocommerce-checkout .site-main .woocommerce,
body.woocommerce-checkout .entry-content>.woocommerce,
body.woocommerce-checkout .woocommerce,
body.woocommerce-order-received .site-main .woocommerce,
body.woocommerce-order-received .entry-content>.woocommerce,
body.woocommerce-order-received .woocommerce{
  width:calc(100% - 48px)!important;
  max-width:980px!important;
  margin:48px auto 72px!important;
  padding:0!important;
  box-sizing:border-box!important;
  float:none!important;
  clear:both!important;
}
body.woocommerce-checkout form#order_review,body.woocommerce-checkout #order_review{width:100%!important;max-width:900px!important;margin:0 auto!important;background:#fff!important;border:1px solid var(--crp-line)!important;border-radius:16px!important;padding:28px!important;box-sizing:border-box!important}
body.woocommerce-checkout table.shop_table{width:100%!important;border:0!important;border-collapse:separate!important;border-spacing:0!important;margin:0 0 22px!important;background:#fff!important;border-radius:12px!important;overflow:hidden!important;table-layout:auto!important}
body.woocommerce-checkout table.shop_table thead th{background:#f7f7f7!important;color:#111!important;font-size:12px!important;text-transform:uppercase!important;letter-spacing:.06em!important;padding:13px 16px!important;border:0!important}
body.woocommerce-checkout table.shop_table td,body.woocommerce-checkout table.shop_table th{padding:14px 16px!important;border-top:1px solid #eee!important;color:#222!important;text-align:left!important}
body.woocommerce-checkout table.shop_table .product-total,body.woocommerce-checkout table.shop_table tfoot td{text-align:right!important}
body.woocommerce-checkout #payment{background:#f7f7f7!important;border-radius:14px!important;padding:18px!important;color:#222!important}body.woocommerce-checkout #payment ul.payment_methods{padding:0!important;margin:0 0 14px!important;border:0!important}body.woocommerce-checkout #payment .payment_box{background:#fff!important;border-radius:10px!important;color:#555!important}body.woocommerce-checkout #payment .payment_box:before{display:none!important}
body.woocommerce-checkout #place_order,body.woocommerce-checkout button.button,body.woocommerce-checkout input.button{background:#111!important;color:#fff!important;border:0!important;border-radius:10px!important;padding:14px 22px!important;font-weight:700!important;box-shadow:none!important}
body.woocommerce-checkout .woocommerce-privacy-policy-text{font-size:13px!important;color:var(--crp-muted)!important;line-height:1.6!important}

/* ---------- Thank you ---------- */
body.woocommerce-order-received .woocommerce-order{width:100%!important;max-width:900px!important;margin:0 auto!important;background:#fff!important;border:1px solid var(--crp-line)!important;border-radius:16px!important;padding:28px!important;box-sizing:border-box!important}
.crp-service-resume{display:flex!important;gap:15px!important;align-items:flex-start!important;background:#fffbea!important;border:1px solid #f0d95d!important;border-radius:14px!important;padding:18px 20px!important;margin:0 0 24px!important;box-sizing:border-box!important}.crp-success-icon{width:36px!important;height:36px!important;min-width:36px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:#111!important;color:#fff!important;font-weight:800!important;font-size:18px!important}.crp-service-resume h3{margin:0 0 5px!important;font-size:18px!important;line-height:1.3!important;color:#111!important}.crp-service-resume p{margin:0!important;color:#555!important;line-height:1.55!important;font-size:14px!important}
body.woocommerce-order-received .woocommerce-notice--success,body.woocommerce-order-received .woocommerce-thankyou-order-received{font-size:20px!important;font-weight:800!important;color:var(--crp-ink)!important;margin:0 0 20px!important}
body.woocommerce-order-received ul.woocommerce-order-overview{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin:0 0 24px!important;padding:0!important;width:100%!important}
body.woocommerce-order-received ul.woocommerce-order-overview li{float:none!important;width:auto!important;margin:0!important;padding:14px!important;border:1px solid var(--crp-line)!important;border-radius:12px!important;background:#fafafa!important;font-size:11px!important;line-height:1.45!important;box-sizing:border-box!important}body.woocommerce-order-received ul.woocommerce-order-overview li strong{font-size:14px!important;margin-top:4px!important;word-break:break-word!important}
body.woocommerce-order-received .woocommerce-order-details{margin-top:26px!important;width:100%!important}body.woocommerce-order-received .woocommerce-order-details__title{font-size:21px!important;margin-bottom:12px!important}
body.woocommerce-order-received table.shop_table{width:100%!important}

/* ---------- Mobile ---------- */
@media(max-width:767px){
 body.woocommerce-account .site-main .woocommerce,body.woocommerce-account .entry-content>.woocommerce,body.woocommerce-account .woocommerce{width:calc(100% - 28px)!important;margin:28px auto 50px!important;display:grid!important;grid-template-columns:minmax(0,1fr)!important;row-gap:20px!important}
 body.woocommerce-account .woocommerce-MyAccount-content{width:100%!important;max-width:none!important;grid-column:1!important;grid-row:1!important}
 .crp-summary{grid-template-columns:1fr!important}.crp-card{align-items:flex-start!important;flex-direction:column!important;gap:16px!important;padding:18px!important}.crp-card-side{text-align:left!important;min-width:0!important;width:100%!important;flex:0 0 auto!important}.crp-payall-row{justify-content:stretch!important}.crp-payall-row .button{width:100%!important;text-align:center!important}.crp-fee-note{flex-direction:column!important;gap:5px!important}.crp-portal-head h2{font-size:25px!important}

 /* Mobile checkout: keep everything inside the viewport. */
 body.woocommerce-checkout .site-main .woocommerce,body.woocommerce-checkout .entry-content>.woocommerce,body.woocommerce-checkout .woocommerce,body.woocommerce-order-received .site-main .woocommerce,body.woocommerce-order-received .entry-content>.woocommerce,body.woocommerce-order-received .woocommerce{width:calc(100% - 20px)!important;max-width:100%!important;margin:24px auto 44px!important;overflow:visible!important}
 body.woocommerce-checkout form#order_review,body.woocommerce-checkout #order_review,body.woocommerce-order-received .woocommerce-order{width:100%!important;max-width:100%!important;padding:14px!important;border-radius:13px!important;overflow:hidden!important}

 /* Turn the order review table into a mobile card/list instead of allowing horizontal overflow. */
 body.woocommerce-checkout table.shop_table{display:block!important;width:100%!important;max-width:100%!important;overflow:hidden!important;border-radius:10px!important;table-layout:fixed!important}
 body.woocommerce-checkout table.shop_table thead{display:none!important}
 body.woocommerce-checkout table.shop_table tbody,body.woocommerce-checkout table.shop_table tfoot{display:block!important;width:100%!important}
 body.woocommerce-checkout table.shop_table tbody tr{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:start!important;width:100%!important;border-bottom:1px solid #eee!important}
 body.woocommerce-checkout table.shop_table tbody td{display:block!important;width:auto!important;min-width:0!important;border:0!important;padding:13px 8px!important;font-size:14px!important;box-sizing:border-box!important}
 body.woocommerce-checkout table.shop_table tbody td.product-name{padding-right:8px!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important;line-height:1.45!important}
 body.woocommerce-checkout table.shop_table tbody td.product-total{text-align:right!important;white-space:nowrap!important;font-weight:700!important}
 body.woocommerce-checkout table.shop_table tfoot tr{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;width:100%!important;border-bottom:1px solid #eee!important}
 body.woocommerce-checkout table.shop_table tfoot th,body.woocommerce-checkout table.shop_table tfoot td{display:block!important;width:auto!important;min-width:0!important;border:0!important;padding:13px 8px!important;font-size:14px!important;box-sizing:border-box!important}
 body.woocommerce-checkout table.shop_table tfoot th{text-align:left!important;white-space:normal!important}
 body.woocommerce-checkout table.shop_table tfoot td{text-align:right!important;white-space:nowrap!important;font-weight:700!important}

 /* Payment gateway card and CTA. */
 body.woocommerce-checkout #payment{width:100%!important;max-width:100%!important;padding:14px!important;box-sizing:border-box!important;overflow:hidden!important}
 body.woocommerce-checkout #payment ul.payment_methods,body.woocommerce-checkout #payment ul.payment_methods li{width:100%!important;max-width:100%!important;box-sizing:border-box!important}
 body.woocommerce-checkout #payment ul.payment_methods li{margin:0!important;padding:0!important;list-style:none!important}
 body.woocommerce-checkout #payment label{display:inline!important;white-space:normal!important;overflow-wrap:anywhere!important}
 body.woocommerce-checkout #payment .payment_box{width:100%!important;max-width:100%!important;margin:12px 0!important;padding:14px!important;box-sizing:border-box!important;white-space:normal!important;overflow-wrap:anywhere!important;line-height:1.55!important}
 body.woocommerce-checkout #payment .form-row.place-order{width:100%!important;margin:0!important;padding:0!important;box-sizing:border-box!important}
 body.woocommerce-checkout #place_order,body.woocommerce-checkout button.button,body.woocommerce-checkout input.button{display:block!important;float:none!important;width:100%!important;max-width:100%!important;min-height:48px!important;margin:14px 0 0!important;padding:14px 16px!important;text-align:center!important;white-space:normal!important;box-sizing:border-box!important;font-size:15px!important;line-height:1.3!important}
 body.woocommerce-checkout .woocommerce-privacy-policy-text{width:100%!important;max-width:100%!important;margin:12px 0!important;font-size:12px!important;line-height:1.55!important;overflow-wrap:anywhere!important}

 body.woocommerce-order-received ul.woocommerce-order-overview{grid-template-columns:1fr!important}
 .crp-service-resume{padding:16px!important}.crp-success-icon{width:32px!important;height:32px!important;min-width:32px!important}
}

/* v2 portal views */
.woocommerce-account .woocommerce,
.woocommerce-account .woocommerce-MyAccount-content,
.crp-account{max-width:1120px!important;width:calc(100% - 40px)!important;margin-left:auto!important;margin-right:auto!important;float:none!important;box-sizing:border-box!important;}
.crp-account{padding:34px 0 60px;}
.crp-portal-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px;}
.crp-portal-head h2{font-size:34px;line-height:1.12;margin:5px 0 7px;}
.crp-eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;}
.crp-quick-links{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 22px;}
.crp-quick-links a{display:inline-flex;padding:10px 14px;border:1px solid #ddd;border-radius:999px;text-decoration:none!important;color:inherit!important;background:#fff;}
.crp-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0;}
.crp-summary>div{border:1px solid #e7e7e7;border-radius:14px;padding:18px;background:#fff;}
.crp-summary-label{display:block;font-size:13px;margin-bottom:6px;opacity:.72}.crp-summary strong{font-size:26px;}
.crp-payall-row{margin:0 0 18px}.crp-list{display:grid;gap:14px}.crp-card{border:1px solid #e7e7e7;border-radius:16px;padding:20px;background:#fff;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center}.crp-card h3{margin:4px 0 8px;font-size:22px;overflow-wrap:anywhere}.crp-type{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;opacity:.65}.crp-card-side{text-align:right;min-width:150px}.crp-amount{font-size:22px;font-weight:700}.crp-base-label{font-size:11px;opacity:.65;margin:2px 0 10px}.crp-status{display:inline-block;border-radius:999px;padding:6px 9px;font-size:12px;background:#f4f4f4;margin-bottom:12px}.crp-status-due,.crp-status-expired{background:#fff0e8;color:#a44100}.crp-pay-now{display:block!important}.crp-empty{border:1px dashed #d9d9d9;border-radius:16px;padding:28px;background:#fff}.crp-fee-note{display:flex;gap:14px;align-items:flex-start;border-radius:12px;background:#f6f6f6;padding:14px 16px;margin-top:18px}.crp-fee-note span{opacity:.78}
.crp-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.crp-service-card{border:1px solid #e7e7e7;border-radius:16px;padding:20px;background:#fff}.crp-service-card h3{margin:5px 0 16px;font-size:21px;overflow-wrap:anywhere}.crp-service-card dl{margin:0}.crp-service-card dl>div{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-top:1px solid #eee}.crp-service-card dt{opacity:.65}.crp-service-card dd{margin:0;text-align:right;font-weight:600}
.crp-order-list{display:grid;gap:14px}.crp-order-card{border:1px solid #e7e7e7;border-radius:16px;background:#fff;overflow:hidden}.crp-order-top{display:flex;justify-content:space-between;gap:20px;background:#fafafa;padding:16px 18px;border-bottom:1px solid #eee}.crp-order-top>div{display:flex;flex-direction:column;gap:3px}.crp-order-top>div:last-child{text-align:right}.crp-order-items{padding:4px 18px}.crp-order-items>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 18px;padding:13px 0;border-bottom:1px solid #eee}.crp-order-items>div:last-child{border-bottom:0}.crp-order-items small{grid-column:1/-1;opacity:.65}
.crp-service-resume{max-width:1120px;margin:20px auto;padding:18px 20px;border-radius:14px;background:#effbea;border:1px solid #cfecc4;display:flex;gap:14px;align-items:flex-start;box-sizing:border-box}.crp-success-icon{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#fff;font-weight:700}.crp-service-resume h3{margin:0 0 4px}.crp-service-resume p{margin:0}

/* WooCommerce payment/order pages: contained desktop layout */
.woocommerce-checkout .site-main .woocommerce,
.woocommerce-order-pay .site-main .woocommerce,
.woocommerce-order-received .site-main .woocommerce,
body.woocommerce-checkout .woocommerce,
body.woocommerce-order-pay .woocommerce,
body.woocommerce-order-received .woocommerce{max-width:1120px!important;width:calc(100% - 40px)!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box!important;}

@media (max-width:767px){
 .woocommerce-account .woocommerce,.woocommerce-account .woocommerce-MyAccount-content,.crp-account{width:calc(100% - 28px)!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important;padding-left:0!important;padding-right:0!important;}
 .crp-account{padding-top:24px}.crp-portal-head h2{font-size:28px}.crp-summary,.crp-service-grid{grid-template-columns:1fr}.crp-card{grid-template-columns:1fr;gap:14px}.crp-card-side{text-align:left;min-width:0}.crp-pay-now{width:100%;text-align:center}.crp-service-card dl>div{align-items:flex-start}.crp-order-top{flex-direction:column}.crp-order-top>div:last-child{text-align:left}.crp-order-items>div{grid-template-columns:minmax(0,1fr) auto}
 body.woocommerce-checkout .woocommerce,body.woocommerce-order-pay .woocommerce,body.woocommerce-order-received .woocommerce,.woocommerce-checkout .site-main .woocommerce,.woocommerce-order-pay .site-main .woocommerce,.woocommerce-order-received .site-main .woocommerce{width:calc(100% - 24px)!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important;overflow:hidden!important;}
 .woocommerce table.shop_table,.woocommerce table.woocommerce-table{width:100%!important;max-width:100%!important;table-layout:fixed!important;box-sizing:border-box!important}.woocommerce table.shop_table th,.woocommerce table.shop_table td,.woocommerce table.woocommerce-table th,.woocommerce table.woocommerce-table td{white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important;padding:11px 9px!important}.woocommerce table.shop_table th.product-name,.woocommerce table.shop_table td.product-name{width:auto!important}.woocommerce table.shop_table th.product-total,.woocommerce table.shop_table td.product-total{width:32%!important;text-align:right!important}.woocommerce #payment,.woocommerce-checkout #payment{width:100%!important;max-width:100%!important;box-sizing:border-box!important;overflow:hidden!important}.woocommerce #payment .payment_box,.woocommerce-checkout #payment .payment_box{width:100%!important;box-sizing:border-box!important;margin-left:0!important;margin-right:0!important}.woocommerce #payment ul.payment_methods,.woocommerce-checkout #payment ul.payment_methods{padding:14px!important}.woocommerce #payment #place_order,.woocommerce-page #payment #place_order,.woocommerce .form-row.place-order .button{width:100%!important;display:block!important;float:none!important;box-sizing:border-box!important;white-space:normal!important;min-height:48px!important}.crp-service-resume{width:calc(100% - 24px);margin:16px auto}
}
