/* Fit Formulas - Shopify-style, distraction-free checkout (real WooCommerce) */
.ffnew .ffco{ max-width:1120px; margin:0 auto; padding:0 22px 90px; }
.ffnew .ffco-head{ display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; padding:24px 0 18px; border-bottom:1px solid var(--line); }
.ffnew .ffco-crumbs{ font-size:13px; color:var(--ink-faint); }
.ffnew .ffco-crumbs a{ color:var(--coral-700); font-weight:700; }
.ffnew .ffco-crumbs .on{ color:var(--ink); font-weight:700; }
.ffnew .ffco-crumbs span{ margin:0 6px; }
.ffnew .ffco-wrap{ padding-top:32px; }
.ffnew .ffco-secure{ text-align:center; color:var(--ink-faint); font-size:13px; margin-top:34px; }

/* two-column: customer details left, order summary (sticky) right */
.ffnew .ffco-wrap form.checkout{ display:grid; grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr); gap:clamp(30px,4vw,60px); align-items:start; }
.ffnew .ffco-wrap #customer_details{ grid-column:1; grid-row:1 / span 2; }
.ffnew .ffco-wrap #order_review_heading{ grid-column:2; grid-row:1; margin:0 0 14px; font-family:'Bricolage Grotesque',sans-serif; font-weight:800; font-size:1.4rem; }
.ffnew .ffco-wrap #order_review{ grid-column:2; grid-row:2; position:sticky; top:20px; background:var(--oat-50); border:1px solid var(--line); border-radius:var(--r-lg); padding:22px 24px; }
@media(max-width:860px){
  .ffnew .ffco-wrap form.checkout{ grid-template-columns:1fr; }
  .ffnew .ffco-wrap #customer_details, .ffnew .ffco-wrap #order_review_heading, .ffnew .ffco-wrap #order_review{ grid-column:1; grid-row:auto; position:static; }
}

/* section headers like Shopify */
.ffnew .ffco-wrap #customer_details h3{ font-family:'Bricolage Grotesque',sans-serif; font-weight:800; font-size:1.25rem; margin:26px 0 12px; }
.ffnew .ffco-wrap #customer_details .col-1, .ffnew .ffco-wrap #customer_details .col-2{ width:100%; float:none; }

/* fields: clean, roomy */
.ffnew .ffco-wrap .form-row{ margin-bottom:14px; padding:0; }
.ffnew .ffco-wrap .form-row-first, .ffnew .ffco-wrap .form-row-last{ width:calc(50% - 7px); }
.ffnew .ffco-wrap input.input-text, .ffnew .ffco-wrap textarea, .ffnew .ffco-wrap select, .ffnew .ffco-wrap .select2-selection{
  border:1.6px solid var(--line-strong) !important; border-radius:12px !important; padding:14px 15px !important;
  background:#fff !important; font-size:15px !important; min-height:50px;
}
.ffnew .ffco-wrap label{ font-weight:700; color:var(--ink); font-size:14px; }

/* order summary: line items, totals */
.ffnew .ffco-wrap #order_review table.shop_table{ background:transparent !important; border:none !important; }
.ffnew .ffco-wrap #order_review table.shop_table thead{ display:none; }
.ffnew .ffco-wrap #order_review table.shop_table td, .ffnew .ffco-wrap #order_review table.shop_table th{ border:none !important; border-top:1px solid var(--line) !important; padding:12px 0 !important; background:transparent !important; }
.ffnew .ffco-wrap #order_review .cart-subtotal td, .ffnew .ffco-wrap #order_review .order-total td{ text-align:right; }
.ffnew .ffco-wrap #order_review .order-total th, .ffnew .ffco-wrap #order_review .order-total td{ font-family:'Bricolage Grotesque',sans-serif; font-weight:800; font-size:1.15rem; }
.ffnew .ffco-wrap #order_review .product-thumbnail img{ width:54px; border-radius:10px; }

/* place order button full width coral */
.ffnew .ffco-wrap #place_order{ width:100%; margin-top:14px; }

/* payment box on the summary side */
.ffnew .ffco-wrap #payment{ background:transparent !important; border:none !important; margin-top:14px; }
.ffnew .ffco-wrap #payment ul.payment_methods{ border:1px solid var(--line) !important; border-radius:14px; background:#fff; padding:8px 12px !important; }
