/* =========================================================
   JOHN IAN — v2.1.6.1 Luxury UI Hotfix
   Video controls and commerce button alignment only.
   ========================================================= */

/* Shared button geometry: preserve a stable box on hover and centre labels. */
.ji-cart-experience .button,
.ji-checkout-experience .button,
.ji-cart-experience .wc-block-components-button,
.ji-checkout-experience .wc-block-components-button,
.ji-cart-experience .wc-block-cart__submit-button,
.ji-checkout-experience #place_order{
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:56px;
  padding-top:0!important;
  padding-bottom:0!important;
  line-height:1.2!important;
  text-align:center!important;
  vertical-align:middle;
  white-space:normal;
}

/* Cart notices: keep copy and action vertically centred without browser-like outlines. */
.ji-cart-experience .woocommerce-message,
.ji-cart-experience .woocommerce-info,
.ji-cart-experience .woocommerce-error{
  box-sizing:border-box;
  display:flex;
  align-items:center;
  gap:20px;
  min-height:104px;
  padding:24px 28px!important;
  border:1px solid var(--ji-cart-line)!important;
  border-top-color:var(--gold)!important;
  outline:0!important;
}
.ji-cart-experience .woocommerce-message .button,
.ji-cart-experience .woocommerce-info .button{
  flex:0 0 auto;
  min-width:250px;
  margin-left:auto!important;
}

/* Empty cart and checkout actions remain in normal flow. */
.ji-cart-empty .return-to-shop{
  display:flex;
  justify-content:center;
  margin:0;
}
.ji-cart-empty .return-to-shop .button{
  min-width:300px;
  min-height:58px;
}
.ji-cart-experience .wc-proceed-to-checkout{
  position:relative;
  z-index:1;
  display:grid;
  gap:16px;
  overflow:visible;
}
.ji-cart-experience .wc-proceed-to-checkout .checkout-button{
  position:relative!important;
  inset:auto!important;
  z-index:2;
  min-height:58px;
  margin:0!important;
}
.ji-cart-experience .cart_totals,
.ji-cart-experience .cart_totals>*{
  overflow:visible;
}
.ji-cart-experience .ppc-button-wrapper,
.ji-cart-experience .wcpay-payment-request-wrapper,
.ji-cart-experience .wc-stripe-cart-checkout-container{
  position:relative!important;
  inset:auto!important;
  z-index:1;
  clear:both;
  margin-top:0!important;
}

/* Checkout: keep legal/help text below—not underneath—the order action. */
.ji-checkout-experience #payment .place-order{
  display:flex;
  flex-direction:column;
  gap:16px;
  overflow:visible;
}
.ji-checkout-experience #place_order{
  position:relative!important;
  inset:auto!important;
  order:10;
  margin:0!important;
}
.ji-checkout-experience .woocommerce-terms-and-conditions-wrapper,
.ji-checkout-experience .woocommerce-privacy-policy-text{
  position:relative!important;
  inset:auto!important;
  order:5;
  margin:0!important;
}
.ji-checkout-experience .ji-checkout-confidence{
  position:relative!important;
  inset:auto!important;
  order:20;
  margin-top:2px;
}

/* The Regent film: prevent legacy absolute positioning from stacking controls. */
.ji-editorial-video--editorial .ji-editorial-video__controls{
  left:22px;
  right:22px;
  bottom:18px;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  align-items:end;
  gap:28px;
  pointer-events:none;
}
.ji-editorial-video--editorial .ji-editorial-video__controls .ji-rc-video-control{
  position:static!important;
  inset:auto!important;
  z-index:auto!important;
  display:inline-flex;
  align-items:center;
  min-height:34px;
  max-width:100%;
  margin:0!important;
  padding:7px 0 5px;
  line-height:1.25;
  white-space:nowrap;
  pointer-events:auto;
  text-shadow:0 1px 12px rgba(0,0,0,.65);
}
.ji-editorial-video--editorial .ji-editorial-video__controls .ji-rc-video-control:first-child{
  justify-self:start;
  text-align:left;
}
.ji-editorial-video--editorial .ji-editorial-video__controls .ji-rc-video-control:last-child{
  justify-self:end;
  text-align:right;
}

/* Preserve centring of the overlaid play button on hover/focus. */
.ji-editorial-video__play,
.ji-editorial-video__play:hover,
.ji-editorial-video__play:focus-visible{
  transform:translate(-50%,-50%)!important;
}
@media(hover:hover){
  .ji-editorial-video__play:hover{
    opacity:.92;
  }
}

@media(max-width:700px){
  .ji-cart-experience .woocommerce-message,
  .ji-cart-experience .woocommerce-info,
  .ji-cart-experience .woocommerce-error{
    display:grid;
    gap:18px;
    padding:22px!important;
  }
  .ji-cart-experience .woocommerce-message .button,
  .ji-cart-experience .woocommerce-info .button{
    width:100%;
    min-width:0;
    margin:0!important;
  }
  .ji-editorial-video--editorial .ji-editorial-video__controls{
    left:16px;
    right:16px;
    bottom:13px;
    gap:16px;
  }
  .ji-editorial-video--editorial .ji-editorial-video__controls .ji-rc-video-control{
    font-size:9px;
    letter-spacing:.10em;
    white-space:normal;
  }
}
