

/* Responsive Embed / iframe / YouTube Fix */
.wp-block-embed,
.wp-block-embed__wrapper,
.elementor-widget-video,
.elementor-widget-youtube {
  position: relative;
  width: 100%;
}

.wp-block-embed__wrapper iframe,
.wp-block-embed__wrapper video,
.elementor-widget-video iframe,
.elementor-widget-youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  border: 0;
}

/* 16:9 ratio wrapper */
.wp-block-embed.is-type-video .wp-block-embed__wrapper,
.wp-block-embed-youtube .wp-block-embed__wrapper,
.wp-block-embed-vimeo .wp-block-embed__wrapper {
  padding-bottom: 56.25%;
  /* 16:9 */
  height: 0;
  overflow: hidden;
}

/* 4:3 ratio — add class "is-ratio-4-3" to the block if needed */
.wp-block-embed.is-ratio-4-3 .wp-block-embed__wrapper {
  padding-bottom: 75%;
  height: 0;
  overflow: hidden;
}

/* Elementor section/column video background fix */
.elementor-section .elementor-background-video-container {
  width: 100% !important;
  height: 100% !important;
}

/* General catch-all for any raw iframe drops */
iframe {
  max-width: 100%;
}

/* Remove figure wrapper margins */
.wp-block-embed {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* Make the wrapper fill the parent fully */
.wp-block-embed__wrapper {
  position: relative;
  width: 100% !important;
  max-width: 100% !important;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}

.wp-block-embed__wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  border: 0;
}

/* If inside an Elementor column, remove column padding interference */
.elementor-column .wp-block-embed,
.elementor-widget-wrap .wp-block-embed {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}

.is-active a:hover {
  color: #fff !important;
}

.elementor-post:last-of-type {
  border-width: 0 0 0 0 !important;
  padding: 0 0 0 0 !important;
  margin-bottom: 0 !important;
}

button.pswp__button.pswp__button--fs,
.pswp--zoom-allowed .pswp__button--zoom {
  display: none !important;
}

.u-columns {
  text-transform: lowercase !important;
}

a.button {
  background: #000 !important;
  color: #fff !important;
  border-radius: 0 !important;
  text-transform: lowercase !important;
}

.woocommerce-info::before {
  color: #000 !important;
}

.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
  color: #000 !important;
  border-top: 3px solid #000 !important;
}

address {
  text-transform: none !important;
  font-style: normal !important;
}

.woocommerce table.shop_table {
  border: 0 !important;
  border-radius: 0 !important;
}

*:focus {
  outline: none !important;
}


.select2-selection__rendered {
  line-height: 28px !important;
}

.elementor-widget-woocommerce-checkout-page .woocommerce #customer_details .col-1,
.elementor-widget-woocommerce-checkout-page .woocommerce .e-checkout__order_review,
.elementor-widget-woocommerce-checkout-page .woocommerce .e-coupon-box,
.elementor-widget-woocommerce-checkout-page .woocommerce .e-woocommerce-login-section,
.elementor-widget-woocommerce-checkout-page .woocommerce .shipping_address,
.elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-additional-fields,
.elementor-widget-woocommerce-checkout-page .woocommerce .woocommerce-checkout #payment {
  border-radius: 0 !important;
  border-width: 0 !important;
}

body {
  padding: 0;
  margin: 0;
}

.woocommerce .woocommerce-error .button,
.woocommerce .woocommerce-info .button,
.woocommerce .woocommerce-message .button,
.woocommerce-page .woocommerce-error .button,
.woocommerce-page .woocommerce-info .button,
.woocommerce-page .woocommerce-message .button {
  float: left;
  margin-top: 8px;
}


  .woocommerce .woocommerce-error .button,
  .woocommerce .woocommerce-info .button,
  .woocommerce .woocommerce-message .button,
  .woocommerce-page .woocommerce-error .button,
  .woocommerce-page .woocommerce-info .button,
  .woocommerce-page .woocommerce-message .button {
display: none;
  }

  /* Gallery: 3 columns, full width, centered, 50px gaps */
.wp-block-gallery {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 50px !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* Remove default figure constraints */
.wp-block-gallery figure {
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Images fit inside box, maintain aspect ratio */
.wp-block-gallery img {
    width: 100% !important;
    height: auto !important;
    max-height: 250px !important;
    object-fit: contain !important;
    display: block !important;
}

/* Remove any link constraints */
.wp-block-gallery figure a {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}