/* Checkout selectors are scoped to the page or form, never WooCommerce's body class. */
body.es-checkout{width:100%;max-width:none}
.es-checkout-main{padding-top:38px;padding-bottom:90px;min-height:70vh}
.es-checkout-trail{display:flex;align-items:center;gap:16px;font-size:12px;color:#7c8977;margin-bottom:35px}
.es-checkout-trail a{display:inline-flex;gap:7px;align-items:center;color:#516648}
.es-checkout-trail .icon{width:15px;height:15px;color:#708e48}
.es-checkout-trail>span:last-child{color:var(--ink)}
.es-checkout-intro{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:30px}
.es-checkout-intro .eyebrow{margin-bottom:16px}
.es-checkout-intro h1{font-size:clamp(34px,4vw,52px);line-height:1.1}
.es-checkout-intro p{font-size:14px;line-height:1.7;color:var(--muted);margin-top:15px}
.es-checkout-secure{display:inline-flex;align-items:center;gap:8px;color:#75836a;font-size:11px;white-space:nowrap}
.es-checkout-secure .icon{width:18px;height:18px}
.es-checkout-signin{display:flex;align-items:center;gap:16px;font-size:12px;color:var(--muted);margin-bottom:24px}
.es-checkout-signin a{display:inline-flex;align-items:center;gap:8px;color:#354d2f;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.es-checkout-signin .icon{width:15px;height:15px}
.es-checkout-content .woocommerce{width:100%;min-width:0}
form.es-checkout-form{width:100%;max-width:none;margin:0}
.es-checkout-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:32px;align-items:start}
.es-checkout-details{min-width:0;background:#fffef9;border:1px solid #dce3d4;border-radius:8px;padding:34px}
.es-checkout-section-label{display:flex;align-items:center;gap:9px;color:#7d8d6b;font-size:9px;letter-spacing:.11em;margin-bottom:20px}
.es-checkout-section-label .icon{width:18px;height:18px}
.es-checkout h3{font-size:25px;letter-spacing:-.035em;font-weight:550;margin:0 0 27px}
.es-checkout #customer_details,.es-checkout #customer_details .col-1{float:none;width:100%;margin:0;min-width:0}
.es-checkout #customer_details .col-2{display:none}
.es-checkout .woocommerce-billing-fields__field-wrapper{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.es-checkout .woocommerce form .form-row{float:none;display:block;width:auto;margin:0;padding:0;min-width:0}
.es-checkout .woocommerce form .form-row-wide{grid-column:1/-1}
.es-checkout .woocommerce label{display:block;font-size:12px;font-weight:500;color:#52634b;margin:0 0 8px;line-height:1.5}
.es-checkout label .optional{font-weight:400;color:#7e8d75;font-size:11px}
.es-checkout .required{color:#8b623c;text-decoration:none}
.es-checkout .woocommerce-input-wrapper{display:block}
.es-checkout input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=hidden]),.es-checkout select,.es-checkout textarea{display:block;width:100%;min-width:0;min-height:51px;padding:12px 14px;font-size:14px;font-weight:400;line-height:1.5;color:var(--ink);background:#fff;border:1px solid #d4dec9;border-radius:5px;box-shadow:0 1px 2px #21391f03;transition:border-color .2s,box-shadow .2s}
.es-checkout input::placeholder{color:#9aa491;font-size:13px}
.es-checkout input:focus,.es-checkout select:focus,.es-checkout textarea:focus{outline:0;border-color:#87a360;box-shadow:0 0 0 3px #97b66b20}
.es-checkout .woocommerce-invalid input.input-text,.es-checkout .woocommerce-invalid select{border-color:#b86848}
.es-checkout .woocommerce-input-wrapper>strong{display:flex;align-items:center;min-height:51px;font-size:14px;font-weight:400;color:#708167;padding:12px 14px;background:#f4f6ee;border:1px solid #dce3d4;border-radius:5px}
.es-checkout .select2-container{width:100%!important;font-size:14px}
.es-checkout .select2-container .select2-selection--single{height:51px;border:1px solid #d4dec9;border-radius:5px;background:#fff}
.es-checkout .select2-container .select2-selection--single .select2-selection__rendered{line-height:49px;padding-left:14px;color:var(--ink);padding-right:30px}
.es-checkout .select2-container .select2-selection--single .select2-selection__arrow{height:49px;right:8px}
body.es-checkout>.select2-container{width:auto!important}
.es-checkout .woocommerce-account-fields{margin-top:30px;padding-top:26px;border-top:1px solid #e1e7d9}
.es-checkout .es-checkout-account-note h3{font-size:22px;margin-bottom:12px}
.es-checkout .es-checkout-account-note p{font-size:12px;line-height:1.8;color:#7a8970;margin-bottom:20px}
.es-checkout .woocommerce-account-fields .create-account{font-size:13px}
.es-checkout .password-input{display:block;position:relative}
.es-checkout .password-input input{padding-right:44px!important}
.es-checkout .show-password-input{position:absolute;right:15px;top:12px;cursor:pointer}
.es-checkout .woocommerce-password-strength{font-size:11px;padding:7px 10px;border-radius:6px;margin-top:8px;background:#edf1e4}
.es-checkout .woocommerce-password-hint{display:block;color:#78896b;font-size:11px;line-height:1.7;margin-top:8px}
.es-checkout-summary{min-width:0;border:1px solid #d4dfc8;border-radius:8px;background:#fffef9;overflow:hidden;position:sticky;top:110px}
.es-checkout-plan{padding:29px;background:#1b3124;color:#f5f8ec}
.es-checkout-plan-top{display:flex;align-items:center;gap:11px;font-size:9px;letter-spacing:.1em;color:#b8ce9d}
.es-checkout-plan-top>span:first-child{display:grid;place-items:center;width:32px;height:32px;border:1px solid #91b56850;border-radius:5px;color:#edb99f}
.es-checkout-plan-top .icon{width:17px;height:17px}
.es-checkout-plan h2{font-size:29px;line-height:1.15;margin:18px 0 10px;color:#f5f8ec}
.es-checkout-plan p{font-size:12px;line-height:1.7;color:#b7c7aa}
.es-checkout-plan-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:23px;padding-top:17px;border-top:1px solid #b8ce9d25;font-size:10px}
.es-checkout-plan-bottom>span,.es-checkout-plan-bottom a{display:inline-flex;align-items:center;gap:6px}
.es-checkout-plan-bottom>span{color:#b7d694}
.es-checkout-plan-bottom a{color:#e1edcf;text-decoration:underline;text-underline-offset:4px}
.es-checkout-plan-bottom .icon{width:13px;height:13px}
.es-checkout-costs{padding:27px 29px 0}
.es-checkout #order_review_heading{font-size:19px;line-height:1.3;margin:0 0 18px;letter-spacing:-.025em}
.es-checkout table.shop_table{border:0;border-collapse:collapse;border-spacing:0;width:100%;margin:0;text-align:left;font-size:12px;line-height:1.6;table-layout:fixed}
.es-checkout .shop_table th,.es-checkout .shop_table td{padding:12px 0;border:0;border-bottom:1px solid #e5e9de;vertical-align:top;font-weight:400;overflow-wrap:anywhere}
.es-checkout .shop_table th{color:#75856b}
.es-checkout .shop_table th:first-child,.es-checkout .shop_table td:first-child{width:58%;padding-right:12px}
.es-checkout .shop_table td:last-child,.es-checkout .shop_table th:last-child{text-align:right}
.es-checkout .shop_table thead{font-size:10px;color:#80916f}
.es-checkout .shop_table .product-name{font-weight:500;color:#3a5032}
.es-checkout .shop_table .product-quantity{font-weight:400;color:#7b8b70;font-size:10px}
.es-checkout .shop_table .subscription-price{display:block;font-size:11px;line-height:1.7;color:#7c8d70}
.es-checkout .shop_table .amount{white-space:nowrap;color:#294128;font-variant-numeric:tabular-nums}
.es-checkout .shop_table .order-total>th,.es-checkout .shop_table .order-total>td{padding-top:16px;padding-bottom:16px;font-size:14px;font-weight:600;color:var(--ink)}
.es-checkout .shop_table .recurring-totals>th{font-size:11px;font-weight:600;color:#516848;padding-top:24px;padding-bottom:8px;text-align:left}
.es-checkout .shop_table .recurring-total th,.es-checkout .shop_table .recurring-total td{font-size:11px}
.es-checkout .shop_table .recurring-total.order-total th,.es-checkout .shop_table .recurring-total.order-total td{font-size:12px}
.es-checkout .first-payment-date small{display:block;font-size:10px;font-weight:400;color:#80916f;line-height:1.7;margin-top:6px}
.es-checkout #payment{margin-top:24px;border-top:1px solid #dce4d2;padding-top:20px}
.es-checkout ul.wc_payment_methods{padding:0;margin:0 0 17px;list-style:none;font-size:12px}
.es-checkout ul.wc_payment_methods li{padding:0;margin:0;list-style:none}
.es-checkout .payment_method_estapa_local>label{display:inline;font-weight:550;font-size:13px}
.es-checkout .payment_box{background:#eff4e5;border-radius:5px;padding:13px;font-size:11px;color:#6a7f56;line-height:1.7;margin-top:12px}
.es-checkout .payment_box p{margin:0}
.es-checkout .woocommerce-info{font-size:12px;line-height:1.8;padding:15px 17px;margin-bottom:0;background:#f0f4e8;border-color:#dbe5cc;color:#60744f}
.es-checkout .woocommerce-info a{text-decoration:underline;text-underline-offset:3px}
.es-checkout .woocommerce-privacy-policy-text{font-size:11px;color:#7a8b6d;line-height:1.8}
.es-checkout .woocommerce-privacy-policy-text p{margin:0 0 17px}
.es-checkout .woocommerce-privacy-policy-text a{text-decoration:underline;text-underline-offset:3px}
.es-checkout .woocommerce #payment .place-order{margin:0}
.es-checkout #place_order{width:100%;padding:16px 15px;background:#edb99f;border:1px solid #b6df68;color:#203c24;font-size:13px;font-weight:600;line-height:1.5;border-radius:5px;white-space:normal;box-shadow:none;transition:background .2s,transform .2s}
.es-checkout #place_order:hover:not(:disabled){background:#f3ccb4;transform:translateY(-2px)}
.es-checkout #place_order:disabled{background:#edf0e6;color:#8a9481;border-color:#e2e7d9;cursor:not-allowed}
.es-checkout .es-checkout-help{padding:20px 29px 23px;margin:22px 0 0;border-top:1px solid #e4e9db;font-size:11px;color:#7c8c70}
.es-checkout-help a{color:#354f2d;text-decoration:underline;text-underline-offset:3px}
.es-checkout .woocommerce-NoticeGroup{margin-bottom:24px}
.es-checkout .woocommerce-error{list-style:none;font-size:13px;line-height:1.8;margin:0 0 24px;padding:17px 21px}
.es-checkout .woocommerce-error a{text-decoration:underline}
.es-checkout .woocommerce-error li+li{margin-top:6px}
.es-checkout .local-notice{margin-bottom:24px}
@media(max-width:1100px){.es-checkout-grid{gap:23px;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.es-checkout-details{padding:26px}.es-checkout-plan{padding:24px}.es-checkout-costs{padding:24px 24px 0}.es-checkout .es-checkout-help{padding:18px 24px}.es-checkout .shop_table th:first-child,.es-checkout .shop_table td:first-child{width:54%}.es-checkout-secure{font-size:10px}.es-checkout-plan-bottom{flex-wrap:wrap}}
@media(max-width:850px){.es-checkout-grid{grid-template-columns:1fr;gap:24px}.es-checkout-summary{position:static}.es-checkout-intro{align-items:flex-start;flex-direction:column;gap:16px}.es-checkout-intro h1{font-size:43px}.es-checkout-intro p{font-size:13px}.es-checkout .es-checkout-main{max-width:720px}.es-checkout .shop_table th:first-child,.es-checkout .shop_table td:first-child{width:62%}.es-checkout-plan-bottom{flex-wrap:nowrap}}
@media(max-width:700px){.es-checkout-main{padding-top:26px;padding-bottom:50px}.es-checkout-trail{font-size:10px;gap:10px;margin-bottom:28px}.es-checkout-intro{margin-bottom:23px}.es-checkout-intro h1{font-size:36px}.es-checkout-intro .eyebrow{font-size:8px;margin-bottom:13px}.es-checkout-intro p{font-size:13px;max-width:300px}.es-checkout-secure{font-size:10px}.es-checkout-signin{font-size:11px;gap:12px;flex-wrap:wrap;margin-bottom:21px}.es-checkout-signin .icon{width:13px}.es-checkout-details{padding:25px 21px;border-radius:16px}.es-checkout h3{font-size:24px;margin-bottom:24px}.es-checkout .woocommerce-billing-fields__field-wrapper{gap:17px 13px}.es-checkout .woocommerce label{font-size:11px;line-height:1.6}.es-checkout input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=hidden]),.es-checkout select{padding:12px;font-size:14px}.es-checkout label .optional{font-size:10px}.es-checkout-plan h2{font-size:28px}.es-checkout-plan p{font-size:12px}.es-checkout-plan-bottom{font-size:10px;flex-wrap:wrap}.es-checkout-summary{border-radius:16px}.es-checkout .shop_table th:first-child,.es-checkout .shop_table td:first-child{width:58%}.es-checkout-costs{padding:25px 23px 0}.es-checkout-plan{padding:25px 23px}.es-checkout #order_review_heading{font-size:19px}.es-checkout .shop_table .recurring-total.order-total th,.es-checkout .shop_table .recurring-total.order-total td{font-size:11px}}
@media(max-width:370px){.es-checkout-details{padding:22px 17px}.es-checkout .woocommerce-billing-fields__field-wrapper{grid-template-columns:1fr}.es-checkout-intro h1{font-size:32px}.es-checkout-plan,.es-checkout-costs{padding-left:19px;padding-right:19px}.es-checkout .es-checkout-help{padding-left:19px;padding-right:19px}.es-checkout .shop_table th:first-child,.es-checkout .shop_table td:first-child{width:54%}}
@media(prefers-reduced-motion:reduce){.es-checkout input,.es-checkout #place_order{transition:none}}
.es-checkout .woocommerce-billing-fields__field-wrapper #billing_company_field,.es-checkout .woocommerce-billing-fields__field-wrapper #billing_country_field,.es-checkout .woocommerce-billing-fields__field-wrapper #billing_address_1_field,.es-checkout .woocommerce-billing-fields__field-wrapper #billing_address_2_field,.es-checkout .woocommerce-billing-fields__field-wrapper #billing_email_field{grid-column:1/-1}
.es-checkout .woocommerce-billing-fields__field-wrapper #billing_postcode_field,.es-checkout .woocommerce-billing-fields__field-wrapper #billing_city_field,.es-checkout .woocommerce-billing-fields__field-wrapper #billing_state_field,.es-checkout .woocommerce-billing-fields__field-wrapper #billing_phone_field{grid-column:auto}
.es-checkout button.show-password-input{padding:0;border:0;background:none;width:22px;height:22px;font-size:0;color:#738668;box-shadow:none}
.es-checkout button.show-password-input::after{content:'';display:block;width:20px;height:20px;background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23738668' stroke-width='1.6'%3E%3Cpath d='M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7S2 12 2 12Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E")}
@media(max-width:700px){.es-checkout .woocommerce-billing-fields__field-wrapper #billing_state_field,.es-checkout .woocommerce-billing-fields__field-wrapper #billing_phone_field{grid-column:1/-1}}
/* Astra's WooCommerce integration also adds checkout floats. Keep those inside this form's explicit grid. */
.es-checkout #customer_details,.es-checkout #customer_details.col2-set,.es-checkout #customer_details .col-1,.es-checkout #order_review,.es-checkout #order_review_heading{float:none!important;width:100%!important;max-width:none!important;clear:none!important;position:static!important;border:0!important;box-shadow:none!important;margin-left:0!important;margin-right:0!important}
.es-checkout #customer_details,.es-checkout #customer_details .col-1{padding:0!important}
.es-checkout #order_review{padding:0!important;margin:0!important}
.es-checkout #order_review_heading{padding:0!important;margin:0 0 20px!important}
.es-checkout .woocommerce-billing-fields__field-wrapper>.form-row{width:auto!important;float:none!important}
.es-checkout .es-checkout-costs{display:block;min-width:0}
.es-checkout #payment .form-row{width:100%!important}
.es-checkout .woocommerce form .form-row label{font-size:12px}
.es-checkout .woocommerce form .form-row-wide{grid-column:1/-1}
.es-checkout-summary .es-checkout-help{clear:both;float:none!important;width:100%!important}
