/* =========================================================
   Footloose — checkout, bag, thank-you (0.7.0)
   Overrides the inherited main.css checkout rules. Sharp corners, ink + red, display headings.
   ========================================================= */
.fl-copage .okk-content,.fl-cartpage .okk-content,.woocommerce-order-received .okk-content{font-size:15px;line-height:1.5}
.fl-copage .okk-page--app,.fl-cartpage .okk-page--app{padding-top:20px;padding-bottom:56px}
.fl .fl-hide{display:none!important}
.fl .fl-free{color:var(--fl-red);font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:12.5px}

/* ---------- steps ---------- */
.fl-costeps{list-style:none;margin:0 0 28px;padding:0;display:flex;align-items:center;gap:10px;max-width:760px;margin-inline:auto}
.fl-costeps li{display:flex;align-items:center;gap:10px;font-size:13.5px;font-weight:700;color:var(--fl-mute);white-space:nowrap}
.fl-costeps li+li::before{content:"";width:clamp(18px,8vw,120px);height:1px;background:var(--fl-line2);flex:none}
.fl-costeps li span{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--fl-line2);font-size:12.5px;background:#fff;flex:none}
.fl-costeps li a{display:inline-flex;align-items:center;gap:10px;color:inherit;text-decoration:none}
.fl-costeps li.is-done{color:var(--fl-ink)}
.fl-costeps li.is-done span{background:var(--fl-ink);border-color:var(--fl-ink);color:#fff}
.fl-costeps li.is-on{color:var(--fl-ink)}
.fl-costeps li.is-on span{background:var(--fl-red);border-color:var(--fl-red);color:#fff}
.fl-costeps li.is-done+li::before{background:var(--fl-ink)}
@media (max-width:560px){.fl-costeps{gap:6px;justify-content:center}.fl-costeps li{font-size:12px;gap:6px}.fl-costeps li+li::before{width:14px}.fl-costeps li:not(.is-on) a,.fl-costeps li:not(.is-on){font-size:0;gap:0}.fl-costeps li:not(.is-on) span{font-size:12px}}

/* ---------- notices ---------- */
.fl-copage .woocommerce-error,.fl-copage .woocommerce-info,.fl-copage .woocommerce-message,.fl-cartpage .woocommerce-error,.fl-cartpage .woocommerce-info,.fl-cartpage .woocommerce-message{list-style:none;margin:0 0 18px;padding:14px 16px;border:1px solid var(--fl-line);border-inline-start:3px solid var(--fl-ink);background:#fff;border-radius:0;box-shadow:none;font-size:14px;color:var(--fl-ink)}
.fl-copage .woocommerce-error,.fl-cartpage .woocommerce-error{border-inline-start-color:var(--fl-red)}
.fl-copage .woocommerce-error li,.fl-cartpage .woocommerce-error li{margin:2px 0}

/* ---------- layout ---------- */
.fl form.checkout.fl-co{display:block;margin:0}
.fl-co__grid{display:flex;flex-direction:column;gap:18px}
.fl-co__main{display:flex;flex-direction:column;gap:18px;min-width:0}
.fl-co__side{display:contents}
.fl-co__sum{order:-1}
.fl-co__main{order:0}
.fl-co__place{order:1}
@media (min-width:1000px){
  .fl-co__grid{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:48px;align-items:start}
  .fl-co__side{display:flex;flex-direction:column;gap:14px;position:sticky;top:96px}
  .fl-co__sum,.fl-co__main,.fl-co__place{order:0}
}
@media (min-width:1200px){.fl-co__grid{grid-template-columns:minmax(0,1fr) 460px;gap:64px}}

/* ---------- form sections ---------- */
.fl .fl-co .col2-set,.fl .fl-co .woocommerce-checkout-review-order{background:none;box-shadow:none;border-radius:0;padding:0;margin:0;position:static;grid-column:auto;grid-row:auto}
.fl .fl-co #order_review_heading{display:block}
.fl-co__details{display:flex;flex-direction:column;gap:18px}
.fl-co__details>.col-1,.fl-co__details>.col-2{width:auto;float:none;max-width:none}
.fl-co__sec{border:1px solid var(--fl-line);background:#fff;padding:22px 20px 24px}
.fl-co__sec--more:not(:has(.woocommerce-shipping-fields *,.woocommerce-additional-fields *)){display:none}
.fl-co__sec--more{padding-top:16px}
@media (min-width:768px){.fl-co__sec{padding:28px 30px 30px}}
.fl .fl-co__h{display:flex;align-items:center;gap:12px;font-family:var(--fl-display);font-stretch:75%;font-weight:800;text-transform:uppercase;font-size:24px;line-height:1;margin:0 0 20px;letter-spacing:.005em}
.fl-co__h span{width:30px;height:30px;border-radius:50%;background:var(--fl-ink);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-family:inherit;font-size:15px;font-stretch:100%;flex:none}
.fl-co .woocommerce-billing-fields>h3,.fl-co .woocommerce-additional-fields>h3{display:none}
.fl-co .woocommerce-additional-fields{margin-top:4px}
.fl-co #ship-to-different-address{font-size:14px;font-weight:700;margin:0 0 14px;font-family:inherit;text-transform:none}

/* fields */
.fl-co .woocommerce-billing-fields__field-wrapper,.fl-co .woocommerce-shipping-fields__field-wrapper,.fl-co .woocommerce-additional-fields__field-wrapper{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 14px}
.fl-co .form-row{margin:0;padding:0;width:auto!important;float:none!important;grid-column:1/-1;display:flex;flex-direction:column;gap:6px}
.fl-co .form-row-first{grid-column:1}
.fl-co .form-row-last{grid-column:2}
@media (max-width:420px){.fl-co .form-row-first,.fl-co .form-row-last{grid-column:1/-1}}
.fl-co .form-row label{font-size:13px;font-weight:700;color:var(--fl-ink);margin:0;line-height:1.3}
.fl-co .form-row label .optional{font-weight:500;color:var(--fl-mute)}
.fl-co .form-row label .required{color:var(--fl-red);text-decoration:none;border:0}
.fl-co .form-row .input-text,.fl-co .form-row select,.fl-co .form-row textarea,.fl-co .select2-container .select2-selection--single{width:100%;min-height:50px;height:auto;border:1px solid var(--fl-line2);border-radius:0;background:#fff;padding:12px 14px;font:inherit;font-size:15px;color:var(--fl-ink);box-shadow:none;outline:0;transition:border-color .15s}
.fl-co .form-row textarea{min-height:88px;resize:vertical}
.fl-co .select2-container .select2-selection--single{display:flex;align-items:center;padding:0 14px}
.fl-co .select2-container .select2-selection--single .select2-selection__rendered{padding:0;line-height:1.4;color:var(--fl-ink)}
.fl-co .select2-container .select2-selection--single .select2-selection__arrow{height:48px;inset-inline-end:8px}
.fl-co .form-row .input-text:focus,.fl-co .form-row select:focus,.fl-co .form-row textarea:focus,.fl-co .select2-container--focus .select2-selection--single,.fl-co .select2-container--open .select2-selection--single{border-color:var(--fl-ink);box-shadow:inset 0 0 0 1px var(--fl-ink)}
.fl-co .form-row .input-text::placeholder,.fl-co .form-row textarea::placeholder{color:#9A9A9A}
.fl-co .form-row .description{font-size:12.5px;color:var(--fl-mute);margin:0;position:static;background:none;padding:0;display:block!important}
.fl-co .form-row .description::before{display:none}
.fl-co .form-row.woocommerce-invalid .input-text,.fl-co .form-row.woocommerce-invalid select,.fl-co .form-row.okk-has-err .input-text,.fl-co .form-row.woocommerce-invalid .select2-selection--single{border-color:var(--fl-red);box-shadow:inset 0 0 0 1px var(--fl-red)}
.fl-co .form-row.woocommerce-validated .input-text{border-color:var(--fl-line2)}
.fl-co .okk-ferr{margin:0;font-size:12.5px;color:var(--fl-red);font-weight:600}
.fl-co .okk-co-eta{grid-column:1/-1;margin:14px 0 0;background:var(--fl-soft2);color:var(--fl-ink);border-radius:0;font-weight:600;font-size:13.5px;padding:10px 12px;border-inline-start:3px solid var(--fl-red)}
.fl-co .okk-co-eta svg{color:var(--fl-red)}
.fl-co .woocommerce-input-wrapper{display:block;width:100%}
.fl-co .woocommerce-input-wrapper strong{font-weight:600}

/* ---------- payment cards ---------- */
.fl .fl-co #payment,.fl-paybox{background:none;border-radius:0;margin:0;padding:0}
.fl .fl-co #payment ul.payment_methods{list-style:none;margin:0;padding:0;border:0;display:flex;flex-direction:column;gap:10px}
.fl .fl-co #payment ul.payment_methods li{position:relative;border:1px solid var(--fl-line2);border-radius:0;background:#fff;padding:0;margin:0;transition:border-color .15s,box-shadow .15s}
.fl .fl-co #payment ul.payment_methods li::before,.fl .fl-co #payment ul.payment_methods li::after{display:none}
.fl .fl-co #payment ul.payment_methods li:hover{border-color:var(--fl-ink)}
.fl .fl-co #payment ul.payment_methods li:has(input:checked){border-color:var(--fl-ink);box-shadow:inset 0 0 0 1px var(--fl-ink)}
.fl .fl-co #payment ul.payment_methods li>input.input-radio{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none}
.fl .fl-co #payment .fl-pm__l{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 18px;cursor:pointer;margin:0;font-weight:400}
.fl-pm__dot{width:20px;height:20px;border-radius:50%;border:1.5px solid var(--fl-line2);display:inline-block;position:relative;background:#fff;flex:none}
.fl .fl-co #payment li:has(input:checked) .fl-pm__dot{border-color:var(--fl-ink)}
.fl .fl-co #payment li:has(input:checked) .fl-pm__dot::after{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--fl-red)}
.fl .fl-co #payment li>input:focus-visible+.fl-pm__l{outline:2px solid var(--fl-ink);outline-offset:2px}
.fl-pm__t{display:flex;flex-direction:column;gap:2px;min-width:0}
.fl-pm__t b{font-size:15px;font-weight:700;color:var(--fl-ink)}
.fl-pm__t small{font-size:12.5px;color:var(--fl-mute);line-height:1.35}
.fl-pm__logos{display:inline-flex;align-items:center;gap:6px;justify-content:flex-end}
.fl-pm__logos img{max-height:22px;width:auto;display:block}
.fl-pm__chip{display:inline-flex;align-items:center;justify-content:center;height:28px;min-width:52px;padding:0 10px;border:1px solid var(--fl-line);font-size:11.5px;font-weight:800;letter-spacing:.02em;color:var(--fl-ink);white-space:nowrap;background:#fff}
.fl-pm__chip img{max-height:16px}
.fl .fl-co #payment .payment_box{margin:0;padding:0 18px 16px 52px;background:none;color:var(--fl-mute);font-size:13.5px;border-radius:0}
.fl .fl-co #payment .payment_box::before{display:none}
.fl .fl-co #payment .payment_box p{margin:0}
.fl .fl-co #payment .payment_box fieldset{border:0;padding:0;margin:10px 0 0}
[dir=rtl] .fl .fl-co #payment .payment_box{padding:0 52px 16px 18px}
@media (max-width:480px){.fl .fl-co #payment .fl-pm__l{grid-template-columns:auto minmax(0,1fr);row-gap:8px}.fl-pm__logos{grid-column:2;justify-content:flex-start}.fl .fl-co #payment .payment_box{padding-inline-start:52px}}
.fl-paybox__none{border:0!important;padding:0!important}
.fl-paybox__none .woocommerce-info,.fl-paybox__none .woocommerce-error,.fl-paybox__none .wc-block-components-notice-banner{display:block;margin:0;border:1px solid var(--fl-line);border-inline-start:3px solid var(--fl-red);background:var(--fl-soft2);padding:14px 16px;font-size:14px;line-height:1.5;border-radius:0}
.fl-paybox__none a{color:var(--fl-red);font-weight:700;text-decoration:underline}
.fl-paybox__free{margin:0;font-size:14px;color:var(--fl-mute)}

/* ---------- order summary ---------- */
.fl-co__sum{background:var(--fl-soft2);border:1px solid var(--fl-line)}
.fl-co__sumbody{padding:22px 20px 20px}
@media (min-width:768px){.fl-co__sumbody{padding:26px 26px 22px}}
.fl .fl-co__sumh{font-family:var(--fl-display);font-stretch:75%;font-weight:800;text-transform:uppercase;font-size:24px;line-height:1;margin:0 0 16px;display:block}
.fl-co__sumbar{display:none}
@media (max-width:999px){
  .fl-co__sum{background:var(--fl-soft2)}
  .fl-co__sumbar{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:0;background:none;font:inherit;font-size:14px;font-weight:700;color:var(--fl-ink);cursor:pointer;text-align:start}
  .fl-co__sumbar>span{display:inline-flex;align-items:center;gap:8px}
  .fl-co__sumbar svg:last-child{transition:transform .2s}
  .fl-co__sumbar[aria-expanded=true] svg:last-child{transform:rotate(180deg)}
  .fl-co__sumbar b{font-size:17px;font-weight:800}
  .fl-co__sum.is-collapsed .fl-co__sumbody{display:none}
  .fl-co__sumbody{border-top:1px solid var(--fl-line);padding-top:16px}
  .fl .fl-co #order_review_heading{display:none}
}
.fl .fl-co .fl-rev{width:100%;border:0;border-collapse:collapse;margin:0;background:none;box-shadow:none;border-radius:0}
.fl .fl-co .fl-rev th,.fl .fl-co .fl-rev td{border:0;padding:8px 0!important;background:none;vertical-align:middle;font-size:14px;color:var(--fl-ink)}
.fl .fl-co .fl-rev tbody td{padding:10px 0!important;border-bottom:1px solid var(--fl-line)}
.fl .fl-co .fl-rev td.product-total{text-align:end;font-weight:700;white-space:nowrap;padding-inline-start:12px!important}
.fl .fl-co .fl-rev td.product-name{font-weight:400;text-align:start}
.fl .fl-co .fl-rev tbody tr:first-child td{padding-top:8px!important}
.fl-rev__it{display:flex;align-items:center;gap:14px;min-width:0}
.fl-rev__img{position:relative;flex:none;width:68px;height:68px;background:#fff;border:1px solid var(--fl-line);display:flex;align-items:center;justify-content:center}
.fl-rev__img img{width:100%;height:100%;object-fit:contain;padding:6px;mix-blend-mode:multiply}
.fl-rev__q{position:absolute;top:-8px;inset-inline-end:-8px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--fl-ink);color:#fff;font-style:normal;font-size:11.5px;font-weight:800;display:flex;align-items:center;justify-content:center}
.fl-rev__b{display:flex;flex-direction:column;gap:2px;min-width:0}
.fl-rev__brand{font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--fl-mute)}
.fl-rev__n{font-size:14px;font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fl-rev__m{font-size:12.5px;color:var(--fl-mute)}
.fl-rev .product-quantity{display:none}
.fl .fl-co .fl-rev tfoot th{text-align:start;font-weight:500;color:#444}
.fl .fl-co .fl-rev tfoot td{text-align:end;font-weight:600}
.fl .fl-co .fl-rev tfoot tr:first-child th,.fl .fl-co .fl-rev tfoot tr:first-child td{padding-top:16px!important}
.fl .fl-co .fl-rev tr.cart-discount th,.fl .fl-co .fl-rev tr.cart-discount td,.fl .fl-co .fl-rev tr.fee th,.fl .fl-co .fl-rev tr.fee td{color:var(--fl-red)}
.fl .fl-co .fl-rev tr.cart-discount td a{font-size:12px;color:var(--fl-mute);margin-inline-start:6px}
.fl .fl-co .fl-rev .woocommerce-shipping-totals td{text-align:end}
.fl .fl-co .fl-rev ul#shipping_method{list-style:none;margin:0;padding:0;text-align:end}
.fl .fl-co .fl-rev ul#shipping_method li{margin:0 0 4px;padding:0;text-indent:0;display:flex;justify-content:flex-end;align-items:center;gap:6px;font-weight:600}
.fl .fl-co .fl-rev ul#shipping_method input{margin:0;accent-color:var(--fl-red)}
.fl .fl-co .fl-rev .woocommerce-shipping-destination,.fl .fl-co .fl-rev .woocommerce-shipping-calculator{display:none}
.fl .fl-co .fl-rev tr.order-total th,.fl .fl-co .fl-rev tr.order-total td{border-top:2px solid var(--fl-ink);padding-top:14px!important;font-size:19px;font-weight:800;color:var(--fl-ink)}
.fl .fl-co .fl-rev tr.order-total td{color:var(--fl-ink)}
.fl .fl-co .fl-rev tr.order-total td small{font-size:12px;font-weight:500;color:var(--fl-mute);display:block}

/* inline discount code */
.fl-co__coupon{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0;margin-top:16px}
.fl-co__coupon input{min-height:46px;border:1px solid var(--fl-line2);border-inline-end:0;border-radius:0;padding:0 14px;font:inherit;font-size:14px;background:#fff;min-width:0}
.fl-co__coupon input:focus{outline:0;border-color:var(--fl-ink)}
.fl-co__apply{min-height:46px;padding:0 20px;border:1px solid var(--fl-ink);background:var(--fl-ink);color:#fff;font:inherit;font-weight:700;font-size:14px;cursor:pointer}
.fl-co__apply:hover{background:var(--fl-red);border-color:var(--fl-red)}
.fl-co__coupon.is-busy{opacity:.6}
.fl-co__cmsg{grid-column:1/-1}
.fl-co__cmsg:empty{display:none}
.fl-co__cmsg .woocommerce-error,.fl-co__cmsg .woocommerce-message,.fl-co__cmsg .woocommerce-info,.fl-co__cmsg [role=alert]{margin:10px 0 0!important;padding:10px 12px!important;font-size:13px!important;list-style:none;border:1px solid var(--fl-line);border-inline-start:3px solid var(--fl-ink);background:#fff}
.fl-co__cmsg .woocommerce-error{border-inline-start-color:var(--fl-red)}

/* place order box */
.fl-co__place{border:1px solid var(--fl-line);background:#fff;padding:20px}
@media (min-width:1000px){.fl-co__place{border:0;background:none;padding:0}}
.fl .fl-co .fl-co__placebox{margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.fl .fl-co #place_order,.fl .fl-co .fl-co__btn{width:100%;min-height:58px;border-radius:0;border:0;background:var(--fl-red);color:#fff;font:inherit;font-weight:800;font-size:16px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;box-shadow:none;animation:none;transition:background-color .15s}
.fl .fl-co #place_order:hover{background:var(--fl-red-d)}
.fl .fl-co #place_order:disabled,.fl .fl-co #place_order.disabled{opacity:.6;cursor:not-allowed}
.fl-co .woocommerce-terms-and-conditions-wrapper{font-size:12.5px;color:var(--fl-mute);line-height:1.5}
.fl-co .woocommerce-terms-and-conditions-wrapper a{color:var(--fl-ink);text-decoration:underline}
.fl-co .woocommerce-privacy-policy-text p{margin:0}
.fl-co__trust{list-style:none;margin:14px 0 12px;padding:0;display:flex;flex-direction:column;gap:6px;font-size:12.5px;color:#444}
.fl-co__trust li{display:flex;align-items:center;gap:8px}
.fl-co__trust svg{color:var(--fl-red);flex:none}
.fl-co__place .fl-pay{margin-top:2px}

/* sticky mobile bar (markup from cart-checkout.php, logic in main.js) */
.fl .okk-cobar{border-top:1px solid var(--fl-line);box-shadow:0 -8px 24px rgba(0,0,0,.08)}
.fl .okk-cobar__btn{border-radius:0;background:var(--fl-red);box-shadow:none;animation:none;text-transform:uppercase;letter-spacing:.06em;font-weight:800;font-size:15px;min-height:50px}
.fl .okk-cobar__t b{font-weight:800}

/* ---------- bag (cart page) ---------- */
.fl-cart{display:flex;flex-direction:column;gap:24px}
@media (min-width:1000px){.fl-cart{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:48px;align-items:start}.fl-cart__side{position:sticky;top:96px}}
@media (min-width:1200px){.fl-cart{grid-template-columns:minmax(0,1fr) 440px;gap:64px}}
.fl .fl-cart__h{font-family:var(--fl-display);font-stretch:75%;font-weight:800;text-transform:uppercase;font-size:clamp(36px,7vw,60px);line-height:.95;margin:0 0 18px;display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.fl-cart__h span{font-family:inherit;font-stretch:100%;font-size:14px;font-weight:600;color:var(--fl-mute);text-transform:none;letter-spacing:0}
.fl .fl-cart__form{margin:0}
.fl .fl-cart__table{width:100%;border:0;border-collapse:collapse;margin:0;box-shadow:none;border-radius:0;background:none}
.fl .fl-cart__table tbody{display:block;border-top:1px solid var(--fl-line)}
.fl .fl-cart__table tr.fl-ci{display:grid;grid-template-columns:96px minmax(0,1fr) auto;grid-template-areas:"img name rm" "img qty sub";column-gap:16px;row-gap:10px;padding:18px 0;border-bottom:1px solid var(--fl-line);align-items:start}
@media (min-width:640px){.fl .fl-cart__table tr.fl-ci{grid-template-columns:128px minmax(0,1fr) auto auto;grid-template-areas:"img name qty rm" "img name sub sub";column-gap:20px}}
.fl .fl-cart__table tr.fl-ci td{display:block;border:0;padding:0!important;background:none;text-align:start}
.fl .fl-cart__side .cart_totals table.shop_table th{text-align:start}
.fl .fl-cart__table tr.fl-ci td::before{display:none!important}
.fl .fl-cart__table td.product-thumbnail{grid-area:img;width:auto!important;display:block!important}
.fl .fl-cart__table td.product-thumbnail a,.fl .fl-cart__table td.product-thumbnail>img{display:block}
.fl .fl-cart__table td.product-thumbnail img{width:100%;max-width:none;height:auto;aspect-ratio:4/5;object-fit:contain;background:#F5F5F4;padding:8%;mix-blend-mode:multiply}
.fl .fl-cart__table td.product-name{grid-area:name;font-size:15px;font-weight:600;line-height:1.35;min-width:0}
.fl .fl-cart__table td.product-name a{color:var(--fl-ink);text-decoration:none}
.fl .fl-cart__table td.product-name a:hover{color:var(--fl-red)}
.fl-ci__brand{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--fl-mute);margin-bottom:3px}
.fl .fl-cart__table td.product-name dl.variation{margin:6px 0 0;display:flex;flex-wrap:wrap;gap:2px 10px;font-size:13px;font-weight:500;color:var(--fl-mute)}
.fl .fl-cart__table td.product-name dl.variation dt,.fl .fl-cart__table td.product-name dl.variation dd{margin:0;float:none;display:inline;padding:0}
.fl .fl-cart__table td.product-name dl.variation dd p{margin:0;display:inline}
.fl .fl-cart__table td.product-price{display:none!important}
.fl .fl-cart__table td.product-subtotal{grid-area:sub;font-weight:800;font-size:15px;align-self:end;text-align:end!important;white-space:nowrap}
.fl .fl-cart__table td.product-subtotal del{font-weight:500;color:#8A8A8A;font-size:13px;margin-inline-end:6px}
.fl .fl-cart__table td.product-quantity{grid-area:qty;align-self:end}
.fl .fl-cart__table td.product-remove{grid-area:rm;justify-self:end;width:auto!important}
.fl .fl-cart__table td.product-remove a.remove{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:0;color:var(--fl-mute)!important;background:none!important;font-size:0}
.fl .fl-cart__table td.product-remove a.remove:hover{color:var(--fl-red)!important;background:var(--fl-soft)!important}
@media (min-width:640px){.fl .fl-cart__table td.product-quantity{align-self:start}}
.fl-qty .quantity{display:inline-flex;align-items:stretch;border:1px solid var(--fl-line2);height:42px;background:#fff}
.fl-qty .quantity .qty{width:44px;height:40px;border:0;text-align:center;font:inherit;font-weight:700;font-size:15px;-moz-appearance:textfield;padding:0;background:none;box-shadow:none}
.fl-qty .quantity .qty::-webkit-outer-spin-button,.fl-qty .quantity .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.fl-qty__b{width:40px;border:0;background:none;color:var(--fl-ink);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.fl-qty__b:hover{background:var(--fl-soft)}
.fl .fl-cart__table tr.fl-cart__actions-row{display:block;padding:16px 0 0}
.fl .fl-cart__table tr.fl-cart__actions-row td{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center;border:0;padding:0!important;background:none}
.fl .fl-cart__table .coupon{display:flex;flex:1 1 280px;max-width:420px}
.fl .fl-cart__table .coupon .input-text{flex:1;min-width:0;min-height:46px;border:1px solid var(--fl-line2);border-inline-end:0;border-radius:0;padding:0 14px;font:inherit;font-size:14px;width:auto!important;margin:0}
.fl .fl-cart__table .coupon .button{min-height:46px;padding:0 18px;border-radius:0;background:var(--fl-ink);color:#fff;font-weight:700;font-size:14px;margin:0}
.fl .fl-cart__table .coupon .button:hover{background:var(--fl-red)}
.fl .fl-cart__update{min-height:46px;padding:0 18px;border-radius:0;background:#fff;color:var(--fl-ink);box-shadow:inset 0 0 0 1px var(--fl-line2);font-weight:600;font-size:13.5px}
.fl .fl-cart__update:disabled,.fl .fl-cart__update[disabled]{opacity:.45}
.fl .fl-cart__form.fl-js .fl-cart__update{display:none}
/* totals */
.fl .fl-cart__side .cart_totals{width:100%!important;float:none!important;background:var(--fl-soft2);border:1px solid var(--fl-line);padding:22px 20px;border-radius:0;box-shadow:none}
@media (min-width:768px){.fl .fl-cart__side .cart_totals{padding:26px}}
.fl .fl-cart__side .cart_totals>h2{font-family:var(--fl-display);font-stretch:75%;font-weight:800;text-transform:uppercase;font-size:24px;line-height:1;margin:0 0 16px}
.fl .fl-cart__side .cart_totals table.shop_table{width:100%;border:0;margin:0 0 16px;border-collapse:collapse;box-shadow:none;border-radius:0;background:none}
.fl .fl-cart__side .cart_totals table.shop_table th,.fl .fl-cart__side .cart_totals table.shop_table td{border:0;padding:8px 0;background:none;font-size:14px;color:var(--fl-ink);width:auto;vertical-align:top}
.fl .fl-cart__side .cart_totals table.shop_table th{font-weight:500;color:#444;text-align:start}
.fl .fl-cart__side .cart_totals table.shop_table td{text-align:end;font-weight:600}
.fl .fl-cart__side .cart_totals table.shop_table td::before{display:none}
.fl .fl-cart__side .cart_totals .order-total th,.fl .fl-cart__side .cart_totals .order-total td{border-top:2px solid var(--fl-ink);padding-top:14px;font-size:19px;font-weight:800;color:var(--fl-ink)}
.fl .fl-cart__side .cart_totals .cart-discount th,.fl .fl-cart__side .cart_totals .cart-discount td{color:var(--fl-red)}
.fl .fl-cart__side ul#shipping_method{list-style:none;margin:0;padding:0}
.fl .fl-cart__side ul#shipping_method li{margin:0;padding:0;text-indent:0}
.fl .fl-cart__side .woocommerce-shipping-destination,.fl .fl-cart__side .woocommerce-shipping-calculator{display:none}
.fl .fl-cart__side .okk-shipbar{background:#fff;border:1px solid var(--fl-line);border-radius:0;box-shadow:none;padding:12px 14px;margin:0 0 14px;font-size:13.5px}
.fl .fl-cart__side .okk-shipbar__bar{height:4px;border:0;border-radius:0;background:var(--fl-line);margin-top:8px}
.fl .fl-cart__side .okk-shipbar__bar span{background:var(--fl-red);border-radius:0}
.fl .fl-cart__side .okk-shipbar.is-done .okk-shipbar__bar span{background:var(--fl-ink)}
.fl .fl-cart__side .wc-proceed-to-checkout{padding:0;margin:0}
.fl .fl-cart__side .fl-cart__go{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:58px;border-radius:0;background:var(--fl-red);color:#fff;font-weight:800;font-size:16px;letter-spacing:.06em;text-transform:uppercase;box-shadow:none;margin:0;padding:0 20px}
.fl .fl-cart__side .fl-cart__go:hover{background:var(--fl-red-d);color:#fff}
.fl .fl-cart__side .okk-cart-trust{display:none}
.fl-cartpage .cross-sells{margin-top:48px}
.fl-cartpage .cross-sells>h2{font-family:var(--fl-display);font-stretch:75%;font-weight:800;text-transform:uppercase;font-size:28px;margin:0 0 18px}
/* empty bag */
.fl-cartpage .okk-empty--cart{padding:64px 16px 24px}
.fl-cartpage .return-to-shop{text-align:center;margin:0 0 64px}
.fl-cartpage .return-to-shop .button{min-height:54px;padding:0 32px;border-radius:0;background:var(--fl-ink);color:#fff;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.fl-cartpage .return-to-shop .button:hover{background:var(--fl-red)}

/* ---------- thank-you ---------- */
.woocommerce-order-received .fl-costeps{margin-bottom:8px}
.fl .woocommerce-order{max-width:880px;margin:0 auto}
.fl .woocommerce-order .woocommerce-thankyou-order-received{display:none}
.fl .woocommerce-order ul.woocommerce-order-overview{list-style:none;margin:8px 0 28px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--fl-line);border-inline-start:1px solid var(--fl-line)}
@media (min-width:768px){.fl .woocommerce-order ul.woocommerce-order-overview{grid-template-columns:repeat(4,minmax(0,1fr))}}
.fl .woocommerce-order ul.woocommerce-order-overview li{margin:0;padding:14px 16px;border:0;border-bottom:1px solid var(--fl-line);border-inline-end:1px solid var(--fl-line);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--fl-mute);float:none}
.fl .woocommerce-order ul.woocommerce-order-overview li strong{display:block;margin-top:6px;font-size:15px;letter-spacing:0;text-transform:none;color:var(--fl-ink)}
.fl .woocommerce-order h2{font-family:var(--fl-display);font-stretch:75%;font-weight:800;text-transform:uppercase;font-size:26px;margin:28px 0 12px}
.fl .woocommerce-order table.shop_table{width:100%;border:1px solid var(--fl-line);border-collapse:collapse;border-radius:0;box-shadow:none;background:#fff}
.fl .woocommerce-order table.shop_table th,.fl .woocommerce-order table.shop_table td{padding:12px 16px;border-top:1px solid var(--fl-line);font-size:14px;text-align:start}
.fl .woocommerce-order table.shop_table tfoot tr:last-child th,.fl .woocommerce-order table.shop_table tfoot tr:last-child td{font-size:17px;font-weight:800}
.fl .woocommerce-order address{border:1px solid var(--fl-line);border-radius:0;padding:16px;font-style:normal;line-height:1.6;box-shadow:none;background:#fff}
/* bag: neutralise inherited (rounded, coloured) bag styles */
.fl .fl-cart__table td.product-thumbnail img,.fl .fl-cart__table td.product-thumbnail a{border-radius:0}
.fl .fl-cart__table td.product-subtotal,.fl .fl-cart__table td.product-subtotal .amount{color:var(--fl-ink)}
.fl .fl-cart__table td.product-subtotal ins .amount{color:var(--fl-red)}
.fl .fl-qty .quantity{border-radius:0;box-shadow:none;gap:0;padding:0}
.fl .fl-cart__table .coupon{border:0;padding:0;border-radius:0;background:none;box-shadow:none;margin:0}
.fl .fl-cart__side .cart_totals table.shop_table tr.order-total th,.fl .fl-cart__side .cart_totals table.shop_table tr.order-total td{border-top:2px solid var(--fl-ink);padding-top:14px;font-size:19px;font-weight:800;color:var(--fl-ink)}
.fl .fl-cart__side .cart_totals table.shop_table tr.order-total td .amount{color:var(--fl-ink)}
.fl .fl-cart__side .cart_totals table.shop_table tr.cart-discount th,.fl .fl-cart__side .cart_totals table.shop_table tr.cart-discount td{color:var(--fl-red)}
.fl .fl-cart__table .coupon .button{box-shadow:none}
.fl .fl-cart__table .coupon{gap:0}

/* 0.8.5 — bag & checkout use the full page width (WordPress's block "content width" was boxing them to ~720px) */
.fl-cartpage .okk-content,.fl-copage .okk-content{max-width:none}
.fl-cartpage .okk-content .is-layout-constrained>*,.fl-copage .okk-content .is-layout-constrained>*,
.fl-cartpage .okk-content>.wp-block-group,.fl-copage .okk-content>.wp-block-group,
.fl-cartpage .woocommerce,.fl-copage .woocommerce{max-width:none!important;width:100%;margin-inline:0!important}
/* item rows adapt to the width of the bag column itself (not the screen) */
.fl-cart__main{container-type:inline-size;min-width:0}
.fl .fl-cart__table tr.fl-ci{grid-template-columns:96px minmax(0,1fr) auto;grid-template-areas:"img name rm" "img qty sub"}
@container (min-width:560px){
  .fl .fl-cart__table tr.fl-ci{grid-template-columns:128px minmax(0,1fr) auto auto;grid-template-areas:"img name qty rm" "img name sub sub";column-gap:20px}
}
.fl .fl-cart__table td.product-name{word-break:normal;overflow-wrap:break-word;hyphens:none}
.fl .fl-cart__table td.product-name a{display:block}
/* the bag's two columns follow the real space available (stack when narrow, side by side when wide) */
.fl-cartpage .okk-content{container-type:inline-size}
.fl .fl-cart{display:flex;flex-direction:column;gap:24px}
.fl .fl-cart__side{position:static}
@container (min-width:900px){
  .fl .fl-cart{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:44px;align-items:start}
  .fl .fl-cart__side{position:sticky;top:96px}
}
@container (min-width:1150px){.fl .fl-cart{grid-template-columns:minmax(0,1fr) 430px;gap:64px}}
