body.nbh-checkout-page { --nbh-olive:#65742c; --nbh-gold:#c8ae7c; --nbh-ink:#33392f; --nbh-line:#dedfd5; }
.nbh-checkout-page article .woocommerce { max-width:1200px; margin:0 auto; padding:0 24px 56px; color:var(--nbh-ink); }
.nbh-checkout-intro { padding:32px 0 24px; border-bottom:1px solid var(--nbh-gold); margin-bottom:24px; }
.nbh-checkout-intro h1 { color:var(--nbh-olive); font:400 38px/1.2 "Cormorant Garamond",Georgia,serif; margin:0 0 8px; letter-spacing:0; }
.nbh-checkout-intro p { margin:0; color:#696e64; font-size:15px; }
.nbh-checkout-page .entry-title { display:none; }
.nbh-checkout-grid { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(320px,1fr); gap:48px; align-items:start; clear:both; }
.nbh-checkout-grid h2 { color:var(--nbh-olive); font:500 25px/1.3 "Cormorant Garamond",Georgia,serif; letter-spacing:0; margin:0 0 18px; }
.nbh-checkout-page .page_content_wrap { padding-top:40px; padding-bottom:48px; }
.nbh-checkout-page .woocommerce_status_bar { margin:24px 0 32px !important; padding:12px 0 !important; font-size:14px; }
.nbh-checkout-page .woocommerce_status_bar > div::after { color:var(--nbh-olive) !important; }
.nbh-checkout-page .woocommerce form.checkout #customer_details { width:100% !important; float:none !important; margin:0; padding:0 !important; box-sizing:border-box; }
.nbh-checkout-page .woocommerce form.checkout #customer_details .col-1,.nbh-checkout-page .woocommerce form.checkout #customer_details .col-2 { width:100% !important; float:none !important; padding:0 !important; margin:0; }
.nbh-checkout-page .woocommerce-billing-fields > h3,.nbh-checkout-page #order_review_heading { display:none; }
.nbh-checkout-contact,.nbh-checkout-page .woocommerce-billing-fields,.nbh-checkout-page .woocommerce-shipping-fields,.nbh-checkout-page .woocommerce-additional-fields,.nbh-checkout-delivery { padding-bottom:24px; margin-bottom:24px; border-bottom:1px solid var(--nbh-line); }
.nbh-checkout-contact { margin-top:0; }
.nbh-contact-fields,.nbh-checkout-page .woocommerce-billing-fields__field-wrapper,.nbh-checkout-page .woocommerce-shipping-fields__field-wrapper { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:18px; }
.nbh-checkout-page form.checkout .form-row { float:none; width:auto; margin:0 0 16px; padding:0; min-width:0; }
.nbh-checkout-page form.checkout .form-row-wide { grid-column:1 / -1; }
.nbh-contact-fields .form-row { grid-column:auto !important; }
.nbh-checkout-page form.checkout label { color:#41473e; font-size:14px; line-height:1.5; margin-bottom:7px; }
.nbh-checkout-page form.checkout input.input-text,.nbh-checkout-page form.checkout textarea,.nbh-checkout-page .select2-container .select2-selection--single { border:1px solid #d5d8ce; border-radius:4px; background:#fff; color:#33392f; font:400 15px/1.5 inherit; min-height:46px; box-shadow:none; padding:10px 12px; width:100%; }
.nbh-checkout-page form.checkout textarea { min-height:96px; }
.nbh-checkout-page .select2-container .select2-selection--single { padding:7px 10px; }
.nbh-checkout-page .select2-container .select2-selection__arrow { top:10px; }
.nbh-checkout-page #billing_tax_number_field { display:block !important; }
.nbh-checkout-page #billing_tax_number_field .description { display:block !important; position:static !important; background:transparent !important; padding:0 !important; color:#72776b; font-size:12px; margin-top:6px; }
.nbh-checkout-page #billing_tax_number_field .description::before { display:none; }
.nbh-tax-required label .optional { display:none; }
.nbh-tax-optional label .required { display:none !important; }
.nbh-tax-optional label .optional { display:inline !important; }
.nbh-shipping-summary { display:none; }
.nbh-checkout-arranged .nbh-shipping-summary { display:table-row; }
.nbh-checkout-page .woocommerce form.checkout input.input-text,.nbh-checkout-page .woocommerce form.checkout textarea.input-text { border:1px solid #d5d8ce !important; border-radius:4px; padding:10px 12px !important; box-sizing:border-box; font-family:inherit; font-size:15px; line-height:1.5; font-weight:400; }
.nbh-checkout-page #ship-to-different-address { font-size:16px; margin:0; }
.nbh-checkout-page #ship-to-different-address label { display:flex; align-items:center; gap:10px; margin:0; }
.nbh-direct-note { font-size:14px; line-height:1.7; color:#646b5b; margin:0 0 16px; }
.nbh-checkout-summary { background:#f8f9f5; border:1px solid #e2e5d9; border-top:2px solid var(--nbh-gold); padding:24px; border-radius:4px; min-width:0; }
.nbh-checkout-page .woocommerce form.checkout #order_review { width:100% !important; float:none !important; padding:0 !important; }
.nbh-checkout-page .woocommerce form.checkout table.shop_table { display:table !important; padding:0 !important; border:0; border-collapse:collapse; background:transparent; width:100% !important; font-size:14px; table-layout:auto; }
.nbh-checkout-page .woocommerce form.checkout div.shop_table { display:block !important; padding:0 !important; width:100% !important; background:transparent; border:0; }
.nbh-checkout-page .woocommerce form.checkout table.shop_table_in { width:100%; border-collapse:collapse; border:0; background:transparent; font-size:14px; }
.nbh-checkout-page table.shop_table_in td,.nbh-checkout-page table.shop_table_in th { padding:14px 0; border:0; border-bottom:1px solid var(--nbh-line); vertical-align:top; }
.nbh-checkout-page table.shop_table_in td:last-child { text-align:right; padding-left:14px; }
.nbh-checkout-page table.shop_table_in .product-name { line-height:1.6; }
.nbh-checkout-product-image { float:left; width:48px; height:70px; margin:0 12px 8px 0; }
.nbh-checkout-product-image img { display:block; width:48px; height:70px; object-fit:contain; }
.nbh-checkout-page table.shop_table_in .order-total { color:var(--nbh-olive); font-size:20px; }
.nbh-checkout-page table.shop_table_in .order-total small { display:block; font-size:12px; font-weight:400; margin-top:6px; }
.nbh-checkout-page table.shop_table th,.nbh-checkout-page table.shop_table td { padding:14px 0; border:0; border-bottom:1px solid var(--nbh-line); vertical-align:top; }
.nbh-checkout-page table.shop_table td:last-child,.nbh-checkout-page table.shop_table th:last-child { text-align:right; padding-left:14px; }
.nbh-checkout-page table.shop_table thead { display:none; }
.nbh-checkout-page table.shop_table .product-name { line-height:1.6; }
.nbh-checkout-page table.shop_table .order-total { color:var(--nbh-olive); font-size:20px; }
.nbh-checkout-page table.shop_table .order-total small { font-size:12px; font-weight:400; }
.nbh-shipping-options { border:0; width:100%; border-collapse:collapse; }
.nbh-shipping-options th { display:none; }
.nbh-shipping-options td { padding:0; border:0; text-align:left; }
.nbh-checkout-page #shipping_method { margin:0; padding:0; list-style:none; }
.nbh-checkout-page #shipping_method li { padding:12px 14px; border:1px solid var(--nbh-line); border-radius:4px; margin:0 0 10px; background:white; }
.nbh-checkout-page #shipping_method li label { display:inline; cursor:pointer; }
.nbh-checkout-page #payment { background:transparent; border-radius:0; }
.nbh-checkout-payments { margin-bottom:24px; padding-bottom:24px; border-bottom:1px solid var(--nbh-line); }
.nbh-checkout-page #order_review_heading_payment { display:none; }
.nbh-checkout-page #payment ul.payment_methods { padding:0; border:0; }
.nbh-checkout-page #payment ul.payment_methods > li { padding:14px; border:1px solid var(--nbh-line); margin-bottom:10px; border-radius:4px; background:#fff; }
.nbh-checkout-page #payment div.payment_box { background:#f4f6ef; margin:12px 0 0; color:#545c48; font-size:13px; line-height:1.6; padding:12px; }
.nbh-checkout-page #payment div.payment_box::before { display:none; }
.nbh-checkout-page #payment img { max-height:38px; max-width:100%; object-fit:contain; }
.nbh-place-order-target { padding-top:16px; }
.nbh-place-order-target .place-order { margin:0; padding:0; }
.nbh-checkout-page .woocommerce-privacy-policy-text { font-size:12px; line-height:1.65; color:#72776b; }
.nbh-checkout-page .nbh-legal-language-note { font-size:12px; line-height:1.5; color:#72776b; margin:12px 0 0; }
.nbh-checkout-page .woocommerce-terms-and-conditions-wrapper { font-size:13px; line-height:1.6; }
.nbh-checkout-page #place_order { display:block; width:100%; float:none; background:var(--nbh-olive); color:white; border:0; border-radius:4px; padding:16px; margin-top:20px; font:500 20px/1.3 "Cormorant Garamond",Georgia,serif; letter-spacing:0; white-space:normal; }
.nbh-checkout-page #place_order:hover { background:#516021; }
.nbh-checkout-page .nbh-cart-link { display:inline-block; margin-top:18px; color:var(--nbh-olive); font-size:13px; text-decoration:underline; }
.nbh-checkout-page .woocommerce-info { background:#f8f9f5; border-top-color:var(--nbh-gold); color:#545c48; font-size:14px; }
.nbh-checkout-page .woocommerce-info::before { color:var(--nbh-olive); }
.nbh-checkout-page .woocommerce a { color:var(--nbh-olive); }
.nbh-checkout-page .woocommerce-error a { color:inherit; }
.nbh-checkout-page .woocommerce-additional-fields > h3 { display:none; }
@media(max-width:900px) { .nbh-checkout-grid { grid-template-columns:minmax(0,1fr); gap:28px; } .nbh-checkout-summary { padding:22px; } }
@media(max-width:540px) { .nbh-checkout-page article .woocommerce { padding:0 16px 36px; } .nbh-checkout-intro h1 { font-size:32px; } .nbh-contact-fields,.nbh-checkout-page .woocommerce-billing-fields__field-wrapper,.nbh-checkout-page .woocommerce-shipping-fields__field-wrapper { grid-template-columns:minmax(0,1fr); } .nbh-checkout-summary { padding:18px; } .nbh-checkout-grid h2 { font-size:23px; } }
