/* FULKORN commerce — scoped to the dedicated cart and checkout template. */
body.fulkorn-commerce-page {
  --fk-ink: #15130f;
  --fk-paper: #fbfaf7;
  --fk-cream: #f4eee3;
  --fk-gold: #aa8644;
  --fk-gold-dark: #82652f;
  --fk-muted: #696358;
  --fk-line: #ded7ca;
  --fk-radius: 16px;
  margin: 0;
  padding: 0;
  min-width: 0;
  color: var(--fk-ink);
  background: var(--fk-paper);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 15px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
.fulkorn-commerce-page *,
.fulkorn-commerce-page *::before,
.fulkorn-commerce-page *::after { box-sizing: border-box; }
.fulkorn-commerce-page img { max-width: 100%; height: auto; }
.fulkorn-commerce-page a { color: inherit; text-decoration: none; }
.fulkorn-commerce-page a:hover { color: var(--fk-gold-dark); }
.fulkorn-commerce-page :focus-visible { outline: 3px solid var(--fk-gold-dark); outline-offset: 4px; }
.fulkorn-commerce-page :is(h1,h2,h3,p) { margin-top: 0; }
.fulkorn-commerce-page :is(h1,h2) {
  color: var(--fk-ink);
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
  letter-spacing: -.035em;
  line-height: 1.12;
  text-transform: none;
}
.fulkorn-commerce-page h3 { color: var(--fk-ink); font-size: 18px; font-weight: 650; line-height: 1.3; }
.fulkorn-commerce-page .screen-reader-text {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
.fulkorn-commerce-page .screen-reader-text:focus {
  position: fixed; top: 12px; left: 12px; z-index: 100001;
  width: auto; height: auto; padding: 12px 20px; clip: auto;
  background: #fff; color: var(--fk-ink);
}

/* A quiet, consistent navigation without the previous shop controls. */
.fk-commerce-header { border-bottom: 1px solid var(--fk-line); background: var(--fk-paper); }
.fk-commerce-header__inner {
  display: flex; align-items: center; justify-content: space-between;
  gap: 28px; width: min(1240px, calc(100% - 48px)); min-height: 92px; margin: 0 auto;
}
.fk-commerce-brandlogo { display: inline-flex; flex: 0 0 auto; align-items: center; }
.fk-commerce-brandlogo img { display: block; width: 155px; height: auto; }
.fk-commerce-nav, .fk-commerce-nav__links { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 22px; }
.fk-commerce-nav a { color: #4e4941; font-size: 13px; font-weight: 550; }
.fk-commerce-nav a[aria-current="page"] { color: var(--fk-gold-dark); }
.fk-commerce-tools { display: flex; flex: 0 0 auto; align-items: center; gap: 12px; font-size: 13px; }
.fk-commerce-tools a {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 44px; padding: 10px 18px; border: 1px solid var(--fk-line); border-radius: 999px;
}
.fk-commerce-tools a:hover { border-color: var(--fk-gold); background: var(--fk-cream); }
.fk-commerce-tools svg { width: 18px; height: 18px; flex: 0 0 auto; }
.fk-commerce-topnote { padding: 8px 20px; background: var(--fk-ink); color: #ead8b2; text-align: center; font-size: 12px; letter-spacing: .06em; }
.fk-commerce-main { width: min(1240px, calc(100% - 48px)); margin: 0 auto; padding: 48px 0 72px; }
.fk-commerce-intro { margin: 0 0 34px; max-width: 780px; }
.fk-commerce-kicker, .fk-commerce-intro .eyebrow, .fk-commerce-intro .kicker {
  display: inline-flex; align-items: center; gap: 10px; margin: 0 0 13px;
  color: var(--fk-gold-dark); font-size: 11px; font-weight: 750; letter-spacing: .14em; text-transform: uppercase;
}
.fk-commerce-kicker::before, .fk-commerce-intro .eyebrow::before, .fk-commerce-intro .kicker::before {
  content: ""; width: 28px; height: 1px; background: var(--fk-gold);
}
.fk-commerce-intro h1 { margin: 0 0 15px; font-size: clamp(38px, 4.6vw, 62px); }
.fk-commerce-intro > p:not(.fk-commerce-kicker):not(.eyebrow):not(.kicker) { margin-bottom: 0; color: var(--fk-muted); font-size: 16px; }
.fk-commerce-steps {
  display: flex; flex-wrap: wrap; align-items: center; gap: 10px 24px;
  margin: 0 0 32px; padding: 0; list-style: none; color: var(--fk-muted); font-size: 13px;
}
.fk-commerce-steps li { display: flex; align-items: center; gap: 9px; margin: 0; }
.fk-commerce-steps :is(.is-current,[aria-current="step"]) { color: var(--fk-ink); font-weight: 750; }
.fk-commerce-steps :is(.step-number,.fk-commerce-step-number) {
  display: inline-flex; align-items: center; justify-content: center;
  width: 28px; height: 28px; border: 1px solid var(--fk-line); border-radius: 50%; font-size: 12px;
}
.fk-commerce-steps .is-current :is(.step-number,.fk-commerce-step-number) { background: var(--fk-ink); border-color: var(--fk-ink); color: #fff; }
.fk-commerce-content { min-width: 0; }
.fk-commerce-content .woocommerce { min-width: 0; }

/* Controls keep their native WooCommerce behavior. */
.fulkorn-commerce-page .woocommerce :is(button.button,input.button,a.button,#place_order),
.fulkorn-commerce-page .fk-commerce-button {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 48px; height: auto; padding: 13px 23px;
  border: 1px solid transparent; border-radius: 999px;
  background: var(--fk-gold); color: var(--fk-ink);
  font: 700 14px/1.35 Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  text-align: center; text-transform: none; text-decoration: none; white-space: normal;
  box-shadow: none; cursor: pointer; transition: background .16s ease, border-color .16s ease;
}
.fulkorn-commerce-page .woocommerce :is(button.button,input.button,a.button,#place_order):hover,
.fulkorn-commerce-page .fk-commerce-button:hover { background: #c6a469; color: var(--fk-ink); box-shadow: none; }
.fulkorn-commerce-page .woocommerce :is(button.button,input.button):disabled { opacity: .5; cursor: default; }
.fulkorn-commerce-page .woocommerce .button.loading { opacity: .65; }
.fulkorn-commerce-page .woocommerce :is(input.input-text,textarea.input-text,select),
.fulkorn-commerce-page .woocommerce .quantity input.qty {
  width: 100%; min-width: 0; min-height: 48px; height: auto; margin: 0;
  padding: 11px 13px; border: 1px solid #c6bfae; border-radius: 9px;
  background: #fff; color: var(--fk-ink); font-family: inherit; font-size: 16px; line-height: 1.5;
  box-shadow: none;
}
.fulkorn-commerce-page .woocommerce textarea.input-text { min-height: 118px; resize: vertical; }
.fulkorn-commerce-page .woocommerce :is(input.input-text,textarea.input-text,select):focus { border-color: var(--fk-gold-dark); }
.fulkorn-commerce-page .woocommerce input[type="checkbox"],
.fulkorn-commerce-page .woocommerce input[type="radio"] { accent-color: var(--fk-gold-dark); }
.fulkorn-commerce-page .woocommerce .form-row { float: none; padding: 0; margin: 0 0 20px; }
.fulkorn-commerce-page .woocommerce .form-row label { display: block; margin: 0 0 7px; color: var(--fk-ink); font-size: 13px; font-weight: 600; line-height: 1.5; }
.fulkorn-commerce-page .woocommerce .form-row label.checkbox { display: inline; }
.fulkorn-commerce-page .woocommerce .form-row .required { color: #8d2925; text-decoration: none; }
.fulkorn-commerce-page .woocommerce .form-row .optional { color: var(--fk-muted); font-weight: 400; }
.fulkorn-commerce-page .select2-container { max-width: 100%; }
.fulkorn-commerce-page .select2-container .select2-selection--single { min-height: 48px; border: 1px solid #c6bfae; border-radius: 9px; background: #fff; }
.fulkorn-commerce-page .select2-container .select2-selection--single .select2-selection__rendered { padding: 10px 30px 10px 13px; color: var(--fk-ink); font-size: 16px; line-height: 26px; }
.fulkorn-commerce-page .select2-container .select2-selection--single .select2-selection__arrow { top: 11px; right: 8px; }
.fulkorn-commerce-page .woocommerce :is(.woocommerce-message,.woocommerce-info,.woocommerce-error) {
  width: 100%; margin: 0 0 24px; padding: 18px 20px;
  border: 1px solid var(--fk-line); border-left: 3px solid var(--fk-gold); border-radius: 10px;
  background: #fff; color: var(--fk-ink); list-style: none; font-size: 14px;
}
.fulkorn-commerce-page .woocommerce :is(.woocommerce-message,.woocommerce-info,.woocommerce-error)::before { display: none; }
.fulkorn-commerce-page .woocommerce .woocommerce-error { border-left-color: #a3322a; }
.fulkorn-commerce-page .woocommerce :is(.woocommerce-message,.woocommerce-info,.woocommerce-error) a:not(.button) { text-decoration: underline; text-underline-offset: 3px; }

/* Cart: generous product previews and a compact, stable summary. */
.fk-commerce-cart .fk-commerce-content > .woocommerce { display: grid; grid-template-columns: minmax(0,1fr) 350px; gap: 28px; align-items: start; }
.fk-commerce-cart .fk-commerce-content > .woocommerce > :not(.woocommerce-cart-form):not(.cart-collaterals) { grid-column: 1 / -1; }
.fk-commerce-cart .woocommerce-cart-form { min-width: 0; margin: 0; }
.fk-commerce-cart .cart-collaterals { float: none; width: auto; min-width: 0; margin: 0; }
.fulkorn-commerce-page .woocommerce table.shop_table { width: 100%; margin: 0; border: 0; border-collapse: separate; border-spacing: 0; color: var(--fk-ink); text-align: left; }
.fulkorn-commerce-page .woocommerce table.shop_table :is(th,td) { vertical-align: middle; border: 0; border-bottom: 1px solid var(--fk-line); padding: 17px 12px; background: transparent; color: inherit; }
.fulkorn-commerce-page .woocommerce table.shop_table th { font-size: 11px; font-weight: 700; letter-spacing: .045em; text-transform: uppercase; }
.fk-commerce-cart .woocommerce-cart-form { padding: 0 22px; border: 1px solid var(--fk-line); border-radius: var(--fk-radius); background: #fff; }
.fk-commerce-cart .woocommerce table.cart thead th { padding-top: 21px; padding-bottom: 18px; color: var(--fk-muted); }
.fk-commerce-cart .woocommerce table.cart th.product-thumbnail { width: 136px; }
.fk-commerce-cart .woocommerce table.cart td.product-thumbnail { width: 136px; padding-left: 0; }
.fk-commerce-cart .woocommerce table.cart td.product-thumbnail a { display: block; }
.fk-commerce-cart .woocommerce table.cart .product-thumbnail img { display: block; width: 124px; max-width: 100%; height: 154px; margin: auto; object-fit: contain; }
.fk-cart-preview { display: flex; align-items: center; justify-content: center; width: 124px !important; height: 124px !important; overflow: hidden; border: 1px solid #e1d9cb; border-radius: 8px; background: var(--fk-cream); }
.fk-commerce-cart .woocommerce table.cart .fk-cart-preview img { width: 100%; height: 100%; padding: 6px; object-fit: contain; }
.fk-cart-preview--black { background: #292825; }
.fk-cart-preview--white { background: #f1ece2; }
.fk-commerce-cart .woocommerce table.cart .product-name { min-width: 155px; padding-left: 8px; padding-right: 16px; font-size: 14px; font-weight: 650; line-height: 1.4; }
.fk-commerce-cart .woocommerce table.cart .product-name > a { display: block; margin-bottom: 12px; color: var(--fk-ink); }
.fulkorn-commerce-page .woocommerce dl.variation { margin: 12px 0 0; font-size: 12px; font-weight: 400; line-height: 1.55; color: var(--fk-muted); }
.fulkorn-commerce-page .woocommerce dl.variation::after { content: ""; display: block; clear: both; }
.fulkorn-commerce-page .woocommerce dl.variation dt { float: left; clear: left; margin: 0 5px 4px 0; color: #4d483f; font-weight: 600; }
.fulkorn-commerce-page .woocommerce dl.variation dd { display: block; margin: 0 0 4px; padding: 0; overflow-wrap: anywhere; }
.fulkorn-commerce-page .woocommerce dl.variation dd p { margin: 0; }
.fk-commerce-cart .woocommerce table.cart :is(.product-price,.product-subtotal) { font-size: 14px; font-weight: 650; white-space: nowrap; }
.fk-commerce-cart .woocommerce table.cart td.product-remove { width: 28px; padding: 12px 0 12px 4px; }
.fulkorn-commerce-page .woocommerce a.remove { display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; border: 1px solid var(--fk-line); border-radius: 50%; color: var(--fk-muted) !important; background: #fff; font: 400 22px/1 sans-serif; text-decoration: none; }
.fulkorn-commerce-page .woocommerce a.remove:hover { border-color: #a3322a; color: #a3322a !important; background: #fff; }
.fulkorn-commerce-page .woocommerce a.remove::before,
.fulkorn-commerce-page .woocommerce a.remove::after { display: none !important; content: none !important; }
.fulkorn-commerce-page .woocommerce .quantity { display: inline-flex; width: auto; min-width: 70px; margin: 0; }
.fulkorn-commerce-page .woocommerce .quantity input.qty { width: 72px; min-height: 44px; padding: 8px 4px; text-align: center; }
.fulkorn-commerce-page .woocommerce .quantity :is(.minus,.plus) { min-width: 28px; padding: 8px 3px; border: 1px solid var(--fk-line); background: var(--fk-paper); color: var(--fk-ink); }
.fk-commerce-cart .woocommerce table.cart td.actions { padding: 20px 0; border-bottom: 0; text-align: right; }
.fk-commerce-cart .woocommerce table.cart td.actions .coupon { display: flex; flex-wrap: wrap; float: none; gap: 8px; margin: 0 0 12px; }
.fk-commerce-cart .woocommerce table.cart td.actions .coupon label { display: none; }
.fk-commerce-cart .woocommerce table.cart td.actions .coupon .input-text { float: none; width: min(100%,220px); margin: 0; }
.fk-commerce-cart .woocommerce table.cart td.actions .coupon .button { background: var(--fk-cream); border-color: var(--fk-line); }
.fk-commerce-cart .cart-collaterals .cart_totals { float: none; width: 100%; padding: 27px 24px; border: 1px solid var(--fk-line); border-radius: var(--fk-radius); background: var(--fk-cream); }
.fk-commerce-cart .cart_totals h2 { margin-bottom: 22px; font-size: 31px; text-transform: none !important; letter-spacing: normal !important; }
.fk-commerce-cart .cart_totals table.shop_table :is(td,th) { padding: 15px 0; text-transform: none; letter-spacing: 0; font-size: 13px; }
.fk-commerce-cart .cart_totals table.shop_table th { width: 39%; font-weight: 500; }
.fk-commerce-cart .cart_totals table.shop_table td { text-align: right; }
.fulkorn-commerce-page .woocommerce ul#shipping_method { margin: 0; padding: 0; list-style: none; }
.fulkorn-commerce-page .woocommerce ul#shipping_method li { margin: 0 0 8px; padding: 0; }
.fulkorn-commerce-page .woocommerce ul#shipping_method li:last-child { margin-bottom: 0; }
.fulkorn-commerce-page .woocommerce ul#shipping_method label { display: inline; font-size: 13px; line-height: 1.55; }
.fulkorn-commerce-page .woocommerce .woocommerce-shipping-destination { margin: 10px 0 0; color: var(--fk-muted); font-size: 12px; }
.fulkorn-commerce-page .woocommerce .shipping-calculator-button { display: inline-block; margin-top: 8px; color: var(--fk-gold-dark); font-size: 12px; text-decoration: underline; text-underline-offset: 3px; }
.fk-commerce-cart .cart_totals table.shop_table tr.order-total :is(td,th) { border-bottom: 0; font-size: 17px; font-weight: 700; }
.fulkorn-commerce-page .woocommerce .includes_tax { display: block; margin-top: 5px; color: var(--fk-muted); font-size: 11px; font-weight: 400; line-height: 1.45; }
.fk-commerce-cart .woocommerce .wc-proceed-to-checkout { padding: 18px 0 0; }
.fk-commerce-cart .woocommerce .wc-proceed-to-checkout .checkout-button { display: flex; width: 100%; margin: 0; font-size: 14px; }
.fk-commerce-cart .woocommerce .cart-empty { margin-bottom: 0; }
.fk-commerce-cart .woocommerce .return-to-shop { margin: 0; }
.fk-commerce-cart .woocommerce .return-to-shop .button { background: var(--fk-ink); color: #fff; }
.fk-commerce-cart .woocommerce :is(.cart_totals,.actions) p:empty { display: none; }
.fk-commerce-shipping-note, .fk-commerce-summary-note { margin: 18px 0 0; color: var(--fk-muted); font-size: 12px; line-height: 1.6; }

/* Checkout remains the native WooCommerce form and payment integration. */
.fk-commerce-checkout .woocommerce form.checkout { display: block !important; width: 100%; min-width: 0; margin: 0; }
.fk-commerce-checkout .fk-checkout-grid { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(320px,.9fr); gap: 32px; align-items: start; width: 100%; min-width: 0; }
.fk-commerce-checkout .fk-checkout-summary { width: 100%; min-width: 0; }
.fk-commerce-checkout form.checkout #customer_details { display: block !important; grid-column: auto; grid-row: auto; width: 100%; min-width: 0; margin: 0; padding: 28px; border: 1px solid var(--fk-line); border-radius: var(--fk-radius); background: #fff; }
.fk-commerce-checkout #customer_details :is(.col-1,.col-2) { display: block; float: none; flex: none !important; width: 100% !important; max-width: none; margin: 0; padding: 0; }
.fk-commerce-checkout #customer_details .col-2 { margin-top: 28px; }
.fk-commerce-checkout #customer_details h3 { margin-bottom: 22px; font-family: Georgia, "Times New Roman", serif; font-size: 29px; font-weight: 400; letter-spacing: -.025em; }
.fk-commerce-checkout #customer_details .woocommerce-billing-fields__field-wrapper,
.fk-commerce-checkout #customer_details .woocommerce-shipping-fields__field-wrapper { display: flex; flex-wrap: wrap; gap: 0 18px; }
.fk-commerce-checkout #customer_details .form-row { width: 100%; }
.fk-commerce-checkout #customer_details :is(.form-row-first,.form-row-last) { width: calc(50% - 9px); }
.fk-commerce-checkout #order_review_heading { grid-column: auto; margin: 0; padding: 27px 25px 21px; border: 1px solid var(--fk-line); border-bottom: 0; border-radius: var(--fk-radius) var(--fk-radius) 0 0; background: var(--fk-cream); font-family: Georgia, "Times New Roman", serif; font-size: 31px; font-weight: 400; letter-spacing: -.025em; text-transform: none; }
.fk-commerce-checkout #order_review { grid-column: auto; width: 100%; min-width: 0; padding: 0 25px 25px; border: 1px solid var(--fk-line); border-top: 0; border-radius: 0 0 var(--fk-radius) var(--fk-radius); background: var(--fk-cream); }
.fk-commerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info { display: block; min-height: 0; height: auto !important; margin: 0 0 24px; padding: 18px 20px !important; line-height: 1.65; }
.fk-commerce-checkout .woocommerce table.woocommerce-checkout-review-order-table :is(td,th) { padding: 16px 0; font-size: 13px; line-height: 1.5; }
.fk-commerce-checkout .woocommerce table.woocommerce-checkout-review-order-table .product-name { width: 73%; padding-right: 15px; font-weight: 600; overflow-wrap: anywhere; }
.fk-commerce-checkout .woocommerce table.woocommerce-checkout-review-order-table .product-total { text-align: right; white-space: nowrap; }
.fk-commerce-checkout .woocommerce table.woocommerce-checkout-review-order-table tfoot th { text-transform: none; letter-spacing: 0; font-weight: 500; }
.fk-commerce-checkout .woocommerce table.woocommerce-checkout-review-order-table tfoot td { text-align: right; }
.fk-commerce-checkout .woocommerce table.woocommerce-checkout-review-order-table .order-total :is(td,th) { border: 0; font-size: 17px; font-weight: 700; }
.fk-commerce-checkout .woocommerce .product-quantity { white-space: nowrap; }
.fk-commerce-checkout .fk-cart-preview { width: 74px !important; height: 74px !important; margin: 0 0 12px; }
.fk-commerce-checkout .fk-cart-preview img { width: 100%; height: 100%; object-fit: contain; padding: 5px; }
.fk-commerce-checkout .woocommerce #payment { margin: 22px 0 0; border-top: 1px solid var(--fk-line); border-radius: 0; background: transparent; }
.fk-commerce-checkout .woocommerce #payment ul.payment_methods { margin: 0; padding: 18px 0 0; border: 0; list-style: none; }
.fk-commerce-checkout .woocommerce #payment ul.payment_methods li { margin: 0 0 12px; padding: 15px; border: 1px solid #d6cdbb; border-radius: 10px; background: #fff; font-size: 14px; line-height: 1.6; text-align: left; }
.fk-commerce-checkout .woocommerce #payment ul.payment_methods li input[type="radio"] { width: 17px; height: 17px; margin: 0 7px 0 0; vertical-align: middle; }
.fk-commerce-checkout .woocommerce #payment ul.payment_methods li > label { display: inline; color: var(--fk-ink); font-weight: 650; }
.fk-commerce-checkout .woocommerce #payment ul.payment_methods li > label img { display: inline; max-width: 110px; max-height: 27px; width: auto; height: auto; margin: 0 0 0 8px; vertical-align: middle; }
.fk-commerce-checkout .woocommerce #payment div.payment_box { width: 100%; margin: 15px 0 0; padding: 14px 0 0; border-top: 1px solid var(--fk-line); background: #fff; color: var(--fk-muted); font-size: 13px; line-height: 1.6; }
.fk-commerce-checkout .woocommerce #payment div.payment_box::before { display: none; }
.fk-commerce-checkout .woocommerce #payment div.payment_box p { margin-bottom: 12px; }
.fk-commerce-checkout .woocommerce #payment div.payment_box p:last-child { margin-bottom: 0; }
.fk-commerce-checkout .woocommerce #payment fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.fk-commerce-checkout .woocommerce #payment div.form-row { margin: 0; padding: 16px 0 0; }
.fk-commerce-checkout .woocommerce #payment .woocommerce-privacy-policy-text { color: var(--fk-muted); font-size: 12px; line-height: 1.7; }
.fk-commerce-checkout .woocommerce #payment .woocommerce-terms-and-conditions-wrapper { margin: 10px 0 20px; }
.fk-commerce-checkout .woocommerce #payment .woocommerce-terms-and-conditions-wrapper a { text-decoration: underline; text-underline-offset: 3px; }
.fk-commerce-checkout .woocommerce #payment .woocommerce-terms-and-conditions-checkbox-text { font-size: 13px; font-weight: 400; }
.fk-commerce-checkout .woocommerce #payment #place_order { float: none; width: 100%; margin: 0; min-height: 52px; }
.fk-commerce-checkout .woocommerce #ship-to-different-address { margin: 0; font-family: inherit; font-size: 14px; font-weight: 600; letter-spacing: 0; }
.fk-commerce-checkout .woocommerce #ship-to-different-address label { cursor: pointer; }
.fk-commerce-checkout .woocommerce #ship-to-different-address input { margin-right: 8px; }
.fk-commerce-checkout .woocommerce .shipping_address { margin-top: 20px; }
.fk-commerce-checkout .woocommerce form.checkout_coupon,
.fk-commerce-checkout .woocommerce form.login { padding: 24px; border: 1px solid var(--fk-line); border-radius: var(--fk-radius); background: #fff; }
.fk-commerce-checkout .woocommerce .woocommerce-form-login-toggle { margin-bottom: 18px; }
.fk-commerce-checkout .woocommerce .wc-stripe-elements-field,
.fk-commerce-checkout .woocommerce .wc-stripe-iban-element-field { padding: 13px 10px; border: 1px solid #c6bfae; border-radius: 8px; background: #fff; }
.fk-commerce-checkout .woocommerce .wc-stripe-elements-field iframe { max-width: 100%; }

.fk-commerce-reassurance {
  display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px;
  margin-top: 42px; padding: 26px 0; border-top: 1px solid var(--fk-line); border-bottom: 1px solid var(--fk-line);
}
.fk-commerce-reassurance > * { display: flex; flex-direction: column; align-items: flex-start; gap: 3px; min-width: 0; }
.fk-commerce-reassurance svg { width: 23px; height: 23px; margin-top: 2px; color: var(--fk-gold-dark); flex: 0 0 auto; }
.fk-commerce-reassurance strong { display: block; font-size: 13px; font-weight: 650; }
.fk-commerce-reassurance p, .fk-commerce-reassurance span { margin: 3px 0 0; color: var(--fk-muted); font-size: 12px; }
.fk-commerce-footer { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 28px 36px; padding: 36px max(24px,calc((100% - 1240px) / 2)); border-top: 1px solid var(--fk-line); color: var(--fk-muted); font-size: 12px; }
.fk-commerce-footer__inner { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 22px 36px; }
.fk-commerce-footer :is(nav,.fk-commerce-footer__links) { display: flex; flex-wrap: wrap; gap: 12px 22px; }
.fk-commerce-footer p { margin: 0 0 7px; }
.fk-commerce-footer address { font-style: normal; }
.fk-commerce-footer a { overflow-wrap: anywhere; }
.fk-commerce-footer a:hover { text-decoration: underline; text-underline-offset: 3px; }
.fk-commerce-footer .fk-commerce-brandlogo { margin-bottom: 14px; }
.fk-commerce-footer .fk-commerce-brandlogo img { width: 132px; }
.fk-commerce-footer > nav { max-width: 360px; }
.fk-commerce-steps li > a { display: inline-flex; align-items: center; gap: 9px; }
.fk-commerce-steps li > span, .fk-commerce-steps li > a > span {
  display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto;
  width: 28px; height: 28px; border: 1px solid var(--fk-line); border-radius: 50%; font-size: 11px;
}
.fk-commerce-steps li[aria-current="step"] > span,
.fk-commerce-steps li[aria-current="step"] > a > span { border-color: var(--fk-ink); background: var(--fk-ink); color: #fff; }
.fk-commerce-delivery { margin: 20px 0 0; padding: 16px 0 0; border-top: 1px solid var(--fk-line); }
.fk-commerce-delivery strong { display: block; color: var(--fk-ink); font-size: 13px; }
.fk-commerce-delivery span { display: block; margin-top: 4px; color: var(--fk-muted); font-size: 12px; line-height: 1.6; }
.fk-commerce-empty { padding: 40px 24px; border: 1px solid var(--fk-line); border-radius: var(--fk-radius); background: #fff; text-align: center; }
.fk-commerce-empty h2 { font-size: 34px; }
.fk-commerce-empty p { color: var(--fk-muted); }
.fk-checkout-product { display: flex; align-items: center; gap: 12px; }
.fk-checkout-product .fk-cart-product-name { display: block; min-width: 0; }
.fk-commerce-checkout #customer_details h3 { text-transform: none; }
.fk-cart-preview__unavailable { padding: 10px; color: var(--fk-muted); font-size: 10px; font-weight: 400; text-align: center; }

/* No floating legacy navigation or chat can cover a purchase control. */
.fulkorn-commerce-page :is(#tidio-chat,#tidio-chat-iframe,#tidio-chat-code,.tidio-1s5t5ku,.wd-toolbar,.wd-bottom-actions,.scrollToTop,.wd-sticky-btn,.wd-side-hidden,.wd-shipping-progress-bar) { display: none !important; }

@media (max-width: 1100px) {
  .fk-commerce-header__inner { gap: 22px; }
  .fk-commerce-nav, .fk-commerce-nav__links { gap: 14px; }
  .fk-commerce-cart .fk-commerce-content > .woocommerce { grid-template-columns: minmax(0,1fr) 305px; gap: 22px; }
  .fk-commerce-cart .woocommerce-cart-form { padding: 0 15px; }
  .fk-commerce-cart .woocommerce table.cart .product-name { min-width: 125px; }
  .fk-commerce-cart .woocommerce table.cart td.product-thumbnail { width: 96px; }
  .fk-commerce-cart .woocommerce table.cart .product-thumbnail img, .fk-cart-preview { width: 90px; height: 116px; }
  .fk-commerce-cart .fk-cart-preview { width: 90px !important; height: 90px !important; }
  .fk-commerce-cart .woocommerce table.cart :is(td,th) { padding-left: 7px; padding-right: 7px; }
  .fk-commerce-cart .cart-collaterals .cart_totals { padding: 23px 19px; }
}
@media (max-width: 920px) {
  .fk-commerce-header__inner { flex-wrap: wrap; padding: 18px 0; min-height: 0; gap: 15px 22px; }
  .fk-commerce-header__inner .fk-commerce-nav { order: 3; width: 100%; justify-content: flex-start; }
  .fk-commerce-nav__links { justify-content: flex-start; }
  .fk-commerce-tools { margin-left: auto; }
  .fk-commerce-cart .fk-commerce-content > .woocommerce { grid-template-columns: minmax(0,1fr); }
  .fk-commerce-cart .cart-collaterals { width: 100%; }
  .fk-commerce-cart .woocommerce table.cart td.product-thumbnail { width: 130px; }
  .fk-commerce-cart .woocommerce table.cart .product-thumbnail img, .fk-cart-preview { width: 118px; height: 146px; }
  .fk-commerce-cart .fk-cart-preview { width: 118px !important; height: 118px !important; }
  .fk-commerce-checkout .fk-checkout-grid { grid-template-columns: minmax(0,1fr); gap: 28px; }
  .fk-commerce-checkout form.checkout #customer_details { grid-column: auto; grid-row: auto; margin-bottom: 0; }
  .fk-commerce-reassurance { gap: 20px; }
}
@media (max-width: 640px) {
  body.fulkorn-commerce-page { font-size: 14px; }
  .fk-commerce-header__inner, .fk-commerce-main { width: calc(100% - 32px); }
  .fk-commerce-header__inner { gap: 15px 10px; }
  .fk-commerce-brandlogo img { width: 126px; }
  .fk-commerce-tools { gap: 7px; }
  .fk-commerce-tools a { min-height: 40px; padding: 8px 12px; font-size: 11px; }
  .fk-commerce-nav, .fk-commerce-nav__links { gap: 8px 17px; }
  .fk-commerce-nav a { font-size: 12px; }
  .fk-commerce-main { padding-top: 29px; padding-bottom: 42px; }
  .fk-commerce-intro { margin-bottom: 24px; }
  .fk-commerce-intro h1 { font-size: clamp(36px,9vw,48px); }
  .fk-commerce-intro > p:not(.fk-commerce-kicker):not(.eyebrow):not(.kicker) { font-size: 14px; }
  .fk-commerce-kicker, .fk-commerce-intro .eyebrow, .fk-commerce-intro .kicker { font-size: 10px; letter-spacing: .11em; }
  .fk-commerce-steps { gap: 10px 13px; margin-bottom: 24px; font-size: 11px; }
  .fk-commerce-steps li { gap: 5px; }
  .fk-commerce-steps :is(.step-number,.fk-commerce-step-number) { width: 23px; height: 23px; font-size: 10px; }
  .fk-commerce-cart .woocommerce-cart-form { padding: 0 16px; }
  .fk-commerce-cart .woocommerce table.cart,
  .fk-commerce-cart .woocommerce table.cart tbody { display: block; }
  .fk-commerce-cart .woocommerce table.cart thead { display: none; }
  .fk-commerce-cart .woocommerce table.cart tr.cart_item {
    position: relative; display: grid; grid-template-columns: 88px minmax(0,1fr); gap: 0 14px;
    padding: 23px 0 19px; border-bottom: 1px solid var(--fk-line); background: transparent;
  }
  .fk-commerce-cart .woocommerce table.cart tr.cart_item td { display: block; width: auto; min-width: 0; padding: 0; border: 0; background: transparent; text-align: left !important; }
  .fk-commerce-cart .woocommerce table.cart tr.cart_item td::before { display: none; }
  .fk-commerce-cart .woocommerce table.cart tr.cart_item .product-thumbnail { display: block; grid-column: 1; grid-row: 1; width: 88px; }
  .fk-commerce-cart .woocommerce table.cart .product-thumbnail img, .fk-commerce-cart .fk-cart-preview { width: 88px; height: 114px; }
  .fk-commerce-cart .fk-cart-preview { width: 88px !important; height: 88px !important; }
  .fk-commerce-cart .woocommerce table.cart tr.cart_item .product-name { grid-column: 2; grid-row: 1; min-width: 0; padding-right: 20px; font-size: 14px; }
  .fk-commerce-cart .woocommerce table.cart tr.cart_item .product-remove { position: absolute; right: -7px; top: 16px; width: 28px; }
  .fk-commerce-cart .woocommerce a.remove { width: 28px; height: 28px; font-size: 20px; }
  .fk-commerce-cart .woocommerce table.cart tr.cart_item :is(.product-price,.product-quantity,.product-subtotal) { grid-column: 1 / -1; display: flex; justify-content: space-between; align-items: center; gap: 15px; min-height: 40px; margin-top: 13px; font-size: 14px; }
  .fk-commerce-cart .woocommerce table.cart tr.cart_item :is(.product-price,.product-quantity,.product-subtotal)::before { content: attr(data-title); display: inline; float: none; color: var(--fk-muted); font-size: 12px; font-weight: 500; }
  .fk-commerce-cart .woocommerce table.cart tr.cart_item .product-price { padding-top: 13px; border-top: 1px solid var(--fk-line); }
  .fk-commerce-cart .woocommerce table.cart tr.cart_item .product-subtotal { font-weight: 750; }
  .fk-commerce-cart .woocommerce table.cart tr:not(.cart_item), .fk-commerce-cart .woocommerce table.cart td.actions { display: block; width: 100%; }
  .fk-commerce-cart .woocommerce table.cart td.actions { text-align: left; }
  .fk-commerce-cart .woocommerce table.cart td.actions > .button { width: 100%; }
  .fk-commerce-cart .woocommerce table.cart td.actions .coupon { display: grid; grid-template-columns: minmax(0,1fr); gap: 9px; }
  .fk-commerce-cart .woocommerce table.cart td.actions .coupon :is(.input-text,.button) { width: 100%; }
  .fk-commerce-cart .cart-collaterals .cart_totals { padding: 23px 19px; }
  .fk-commerce-cart .cart_totals h2 { font-size: 29px; }
  .fk-commerce-cart .cart_totals table.shop_table tr { display: table-row; background: transparent; }
  .fk-commerce-cart .cart_totals table.shop_table :is(td,th) { display: table-cell; padding: 14px 0; }
  .fk-commerce-cart .cart_totals table.shop_table td::before { display: none; }
  .fk-commerce-cart .cart_totals table.shop_table th { width: 36%; font-size: 12px; }
  .fk-commerce-cart .cart_totals table.shop_table td { text-align: right !important; }
  .fulkorn-commerce-page .woocommerce dl.variation { margin-top: 10px; font-size: 11px; line-height: 1.65; }
  .fulkorn-commerce-page .woocommerce dl.variation dt { float: none; margin: 8px 0 0; }
  .fulkorn-commerce-page .woocommerce dl.variation dd { margin: 0; }
  .fk-commerce-checkout form.checkout #customer_details { padding: 21px 17px; }
  .fk-commerce-checkout #customer_details :is(.form-row-first,.form-row-last) { width: 100%; }
  .fk-commerce-checkout #customer_details h3 { font-size: 27px; }
  .fk-checkout-product { flex-direction: column; align-items: flex-start; gap: 10px; }
  .fk-commerce-checkout #order_review_heading { padding: 23px 17px 16px; font-size: 29px; }
  .fk-commerce-checkout #order_review { padding: 0 17px 21px; }
  .fk-commerce-checkout .woocommerce table.woocommerce-checkout-review-order-table :is(td,th) { font-size: 12px; }
  .fk-commerce-checkout .woocommerce table.woocommerce-checkout-review-order-table .product-name { width: 67%; padding-right: 9px; }
  .fk-commerce-checkout .woocommerce #payment ul.payment_methods li { padding: 13px 11px; }
  .fk-commerce-checkout .woocommerce #payment ul.payment_methods li > label { font-size: 13px; }
  .fk-commerce-checkout .woocommerce #payment ul.payment_methods li > label img { max-width: 70px; max-height: 22px; }
  .fk-commerce-checkout .woocommerce .woocommerce-checkout-payment .form-row-first,
  .fk-commerce-checkout .woocommerce .woocommerce-checkout-payment .form-row-last { width: 100%; }
  .fk-commerce-reassurance { grid-template-columns: minmax(0,1fr); gap: 19px; margin-top: 29px; padding: 24px 0; }
  .fk-commerce-footer { padding: 27px 16px; }
  .fk-commerce-footer { flex-direction: column; gap: 23px; }
  .fk-commerce-steps li > span, .fk-commerce-steps li > a > span { width: 23px; height: 23px; font-size: 10px; }
  .fk-commerce-steps li > a { gap: 5px; }
  .fk-commerce-footer__inner { flex-direction: column; gap: 18px; }
  .fk-commerce-footer :is(nav,.fk-commerce-footer__links) { gap: 10px 17px; }
  .fulkorn-commerce-page .woocommerce :is(.woocommerce-message,.woocommerce-info,.woocommerce-error) { padding: 15px 13px; font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
  .fulkorn-commerce-page *, .fulkorn-commerce-page *::before, .fulkorn-commerce-page *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}

/* Free delivery: keep the real shipping rate, omit the redundant cart calculator. */
.fk-commerce-cart .woocommerce :is(.shipping-calculator-form,.woocommerce-shipping-destination) { display:none !important; }
