/* Purchases use the same typography and quiet green palette as the exam library. */
.ex-commerce-included{font-size:12px;line-height:1.8;font-weight:600;color:var(--ex-green)!important;margin:0 0 17px!important}
.ex-commerce-pending-label{font-size:12px;line-height:1.8;color:#7a6331!important;margin-bottom:12px!important}
.ex-engine-page{padding:65px 0 75px;background:linear-gradient(115deg,#f7faf3,#fff);border-bottom:1px solid #e2eadb}
.ex-engine-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,390px);gap:85px;align-items:start}
.ex-engine-layout h1{font-size:clamp(34px,4vw,52px);line-height:1.2;letter-spacing:-.04em;margin-top:20px;max-width:650px}
.ex-engine-layout .hero-lead{font-size:15px;line-height:1.9;margin-top:24px;max-width:650px}
.ex-engine-features{display:grid;gap:13px;margin-top:27px!important;padding-left:20px!important;font-size:14px;line-height:1.8;color:#566c4b}
.ex-engine-offer{background:#fff;border:1px solid #d9e4cf;border-radius:11px;padding:29px;box-shadow:0 10px 28px #254e2808}
.ex-engine-offer h2{font-size:28px;line-height:1.3;margin-top:15px;letter-spacing:-.03em}
.ex-engine-price{font-size:39px!important;font-family:Manrope,sans-serif;font-weight:700;line-height:1.4!important;color:var(--ex-green)!important;margin-top:20px!important}
.ex-engine-price span{display:block;font-family:'DM Sans',sans-serif;font-size:12px;line-height:1.7;font-weight:400;color:#7a886c}
.ex-engine-offer>p:not(.eyebrow):not(.ex-engine-price){font-size:12px;line-height:1.9;margin-top:18px}
.ex-engine-offer>.ex-button{width:100%;justify-content:space-between;font-size:12px;gap:12px;margin-top:24px;padding:14px 17px}
.ex-engine-offer .text-link{font-size:11px;margin-top:22px}
.ex-engine-scope{border-top:1px solid #e4ebdc;padding-top:18px;font-size:11px!important}
.ex-commerce-checkout,.ex-commerce-cart{padding:42px 0 65px;min-height:55vh}
.ex-commerce-checkout h1,.ex-commerce-cart h1{font-size:36px;line-height:1.3;letter-spacing:-.035em;margin-bottom:18px}
.ex-commerce-checkout .hero-lead,.ex-commerce-cart .hero-lead{font-size:14px;line-height:1.9;margin-bottom:28px;max-width:680px}
.ex-commerce-checkout .woocommerce,.ex-commerce-cart .woocommerce,.ex-commerce-orders .woocommerce{font-family:'DM Sans',sans-serif;color:#4b6141;font-size:13px;line-height:1.8}
.ex-commerce-checkout .woocommerce h2,.ex-commerce-checkout .woocommerce h3{font-family:Manrope,sans-serif;color:var(--ex-green);font-size:22px;line-height:1.4;letter-spacing:-.025em;margin-bottom:20px}
.woocommerce form .form-row label{font-size:12px;font-weight:600;color:var(--ex-green);line-height:1.8}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{font:13px/1.7 'DM Sans',sans-serif;color:#405739;border:1px solid #d7e2cd;border-radius:6px;padding:10px 12px;background:#fcfdf9;box-shadow:none;min-height:43px}
.woocommerce .select2-container .select2-selection--single{height:43px;border:1px solid #d7e2cd;border-radius:6px;background:#fcfdf9}
.woocommerce .select2-container .select2-selection__rendered{line-height:41px;padding-left:12px;font-size:13px;color:#405739}
.woocommerce .select2-container .select2-selection__arrow{height:41px}
.woocommerce .required{color:#956538}
.woocommerce-checkout .col2-set,.woocommerce-checkout .col2-set .col-1{float:none;width:100%}
.woocommerce-checkout .col2-set .col-2{display:none}
.woocommerce-checkout form.checkout{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,430px);gap:18px 55px;align-items:start}
.woocommerce-checkout #customer_details{grid-column:1;grid-row:1/4}
.woocommerce-checkout #order_review_heading,.woocommerce-checkout #order_review{grid-column:2;margin:0}
body.woocommerce-checkout form.checkout #customer_details,body.woocommerce-checkout form.checkout #order_review,body.woocommerce-checkout form.checkout #order_review_heading{width:100%;max-width:none;float:none}
body.woocommerce-checkout form.checkout #customer_details .col-1{width:100%;max-width:none;float:none;padding:0}
.woocommerce-checkout .woocommerce-NoticeGroup{grid-column:1/-1}
.woocommerce table.shop_table{border:1px solid #dce5d2;border-radius:8px;border-collapse:separate;background:#fff;overflow-wrap:anywhere;font-size:12px}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:12px 14px}
.woocommerce table.shop_table th{font-weight:600;color:var(--ex-green);background:#f7faf3}
.woocommerce table.shop_table td{border-top:1px solid #e4eadc}
.woocommerce table.shop_table .product-total,.woocommerce table.shop_table .order-total{white-space:nowrap}
.woocommerce table.shop_table .variation{font-size:10px;line-height:1.8;color:#77876a;margin-top:7px}
.woocommerce table.shop_table .variation dt{float:none;display:block;margin-top:6px}
.woocommerce table.shop_table .variation dd{display:block;margin:0}
.woocommerce .woocommerce-checkout-payment{background:#f7faf3!important;border:1px solid #dce6d1;border-radius:8px!important}
.woocommerce #payment ul.payment_methods{border-bottom-color:#e0e8d8;padding:18px}
.woocommerce #payment div.form-row{padding:18px}
.woocommerce #payment .woocommerce-terms-and-conditions-wrapper{font-size:11px;line-height:1.9;margin-bottom:15px}
.woocommerce #payment div.payment_box{background:#edf4e5;color:#526a42;font-size:12px;line-height:1.9}
.woocommerce #payment div.payment_box:before{border-bottom-color:#edf4e5}
.woocommerce button.button,.woocommerce a.button,.woocommerce input.button{border:0;border-radius:6px;background:#174b3c;color:#fff;padding:12px 16px;font:600 12px/1.6 'DM Sans',sans-serif;white-space:normal;box-shadow:none}
.woocommerce button.button.alt,.woocommerce a.button.alt{background:#174b3c;color:#fff}
.woocommerce button.button:hover,.woocommerce a.button:hover,.woocommerce button.button.alt:hover{background:#22634e;color:#fff}
.woocommerce .woocommerce-info,.woocommerce .woocommerce-message,.woocommerce .woocommerce-error{background:#f4f8ed;color:#526747;border:1px solid #dce6d2;border-top:3px solid #829f5d;border-radius:6px;font-size:12px;line-height:1.9;padding:17px 20px 17px 45px;box-shadow:none}
.woocommerce .woocommerce-info:before,.woocommerce .woocommerce-message:before{color:#6b8c4d;left:18px;top:18px}
.woocommerce .woocommerce-error{border-top-color:#b68e54;background:#fffaf1}
.woocommerce .woocommerce-error:before{color:#9b7540;left:18px;top:18px}
.woocommerce .woocommerce-error li{list-style:none}
.woocommerce a{color:var(--ex-green)}
.woocommerce .woocommerce-order-overview{margin:20px 0 30px;padding-left:0;display:flex;flex-wrap:wrap;gap:18px}
.woocommerce .woocommerce-order-overview li{font-size:11px;margin:0;padding:0 20px 0 0;line-height:1.9}
.woocommerce .woocommerce-order-overview li strong{font-size:13px}
.woocommerce .woocommerce-order-details{margin-top:30px}
.woocommerce .woocommerce-customer-details address{font-style:normal;font-size:12px;line-height:1.9;padding:18px;border:1px solid #dce5d2;border-radius:8px}
.ex-commerce-orders .woocommerce-orders-table{width:100%}
.ex-commerce-orders .woocommerce-order-details h2{font-size:24px;margin-bottom:20px}
.ex-commerce-orders .woocommerce-MyAccount-content{float:none;width:100%}
.ex-commerce-thankyou{margin:24px 0}
@media(max-width:1000px){.ex-engine-layout{gap:45px}.woocommerce-checkout form.checkout{gap:18px 28px;grid-template-columns:minmax(0,1fr) minmax(270px,370px)}}
@media(max-width:750px){.woocommerce-checkout form.checkout{display:block}.woocommerce-checkout #order_review_heading{margin:30px 0 18px}.woocommerce-checkout #order_review{margin-top:15px}.ex-engine-layout{grid-template-columns:1fr;gap:32px}.ex-engine-offer{max-width:550px}.ex-engine-page{padding:35px 0 42px}.ex-engine-layout h1{font-size:36px}.ex-engine-layout .hero-lead{font-size:14px}.ex-commerce-checkout,.ex-commerce-cart{padding:30px 0 45px}.ex-commerce-checkout h1,.ex-commerce-cart h1{font-size:31px}.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:10px}.woocommerce .woocommerce-order-overview{gap:12px}}

/* Access periods and optional manual renewals. */
.ex-access-period{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:12px 14px;margin-top:12px;border:1px solid #dce6d5;border-radius:8px;background:#f5f8f0;font-size:13px;line-height:1.6;flex-basis:100%;box-sizing:border-box}.ex-access-period strong{color:#174b3c}.ex-access-period a{color:#174b3c;text-decoration:underline;font-weight:600}.ex-access-period.is-ending{border-color:#e6cd8e;background:#fff9e8}.ex-access-download-tip{flex-basis:100%;color:#66501f}.ex-access-engine{margin:18px 0}.ex-course-access-duration{font-size:13px;line-height:1.7;color:#52624b}.ex-access-expired .ex-member-course-body{opacity:.92}
