/*
 Theme Name:   OOm Elementor Child
 Theme URI:    https://oom.com.sg
 Description:  Child theme for OOm Elementor
 Author:       Your Name
 Author URI:   https://oom.com.sg
 Template:     oom-elementor
 Version:      1.0.0
*/

.oom-member-menu a{
	font-weight:700!important;
}

input#user-d57042a {
    padding: 10px;
}
input#password-d57042a {
    padding: 10px;
}
input#user-3963fcd {
    padding: 10px;
}
input#password-3963fcd {
    padding: 10px;
}
input#user-cad88a8 {
    padding: 10px;
}
input#password-cad88a8 {
    padding: 10px;
}

.oom-popup-header h3 {
	color:black!important;
}
button.oom-popup-close {
    color: white !important;
}
.elementor-message.elementor-message-danger:before {
    /* 1. Change to the solid info icon */
    content: "i"; /* Eicons unicode for 'info-circle-solid' */
    font-family: "eicons";
    display: inline-block;
    
    /* 2. Positioning and Spacing */
    margin-right: 12px;
    vertical-align: middle; /* Aligns vertically with the text */
    
    /* 3. The Icon itself (The 'i') */
    color: #ffffff; /* Make the 'i' white */
    font-size: 14px; /* Adjust size of 'i' relative to the circle */
    
    /* 4. The Circular Background */
    background-color: #d9534f; /* A standard, professional warning red */
    width: 24px;   /* Diameter of the circle */
    height: 24px;  /* Same as width to make a square */
    line-height: 24px; /* Centers the icon vertically within the circle */
    text-align: center; /* Centers the icon horizontally */
    border-radius: 50%; /* Makes it a perfect circle */
    
    /* Optional: Slight border for definition */
    border: 1px solid rgba(0,0,0,0.1);
}
#oom-signup-form a{
    font-size: 14px!important;
	color:#4EC5A6!important;
}
.form-message {
    color: #e8fc00!important;
}
a.elementor-lost-password {
    font-size: inherit !important;
}
input#password-73d9870 {
	padding: 10px!important;
}
input#user-73d9870 {
    padding: 10px!important;
}
.oom-login a{
    color:#EBB553!important;
}
/* 1. The Container */
.cstm-oom-addons-text .jet-listing-dynamic-field__inline-wrap {
    display: flex;
    align-items: flex-start; 
}

/* 2. The Icon (SVG or Font) */
.cstm-oom-addons-text .jet-listing-dynamic-field__icon {
    flex-shrink: 0;
    display: flex;
    /* This is the magic number: adjust this to center the icon 
       perfectly with the FIRST line of text */
    margin-top: 5px; 
}


/* 4. The Content/Text */
.cstm-oom-addons-text .jet-listing-dynamic-field__content {
    line-height: 1.5; /* Ensure enough space for the icon to sit next to */
    display: block;
}
.cstm-oom-addons-text .jet-listing-dynamic-field__icon.is-svg-icon {

    padding-top: 7px;

}

.oom-amenities-list .jet-check-list__item {
    display: flex!important;
    justify-content: center!important;
}

a.woocommerce-terms-and-conditions-link {
color:#EBB553!important;
}
/* Change WooCommerce checkout error text to red */
.woocommerce-error li, 
.woocommerce-error li a {
    color: red !important;
}

/* Optional: Make the text bold for better readability */
.woocommerce-error li {
    font-weight: 400;
}


/* 1. Aligns the fraction numbers and the new progress bar */
.custom-combo-pagination .swiper-pagination-fraction {
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    gap: 15px; /* Space between numbers and bar */
    font-size: 16px;
    font-weight: 500;
    color: #555;
    text-align: left;
    bottom: -30px; /* Adjust this to move it up or down */
}

/* 2. Styles the background track of the progress bar */
.custom-progress-track {
    width: 150px; /* Length of the line */
    height: 4px;
    background-color: #e0e0e0; /* Light gray background */
    position: relative;
    border-radius: 4px;
    overflow: hidden;
}

/* 3. Styles the moving colored line */
.custom-progress-fill {
    height: 100%;
    background-color: #4EC5A6; /* The green color - change this hex code to match your brand */
    width: 0%;
    transition: width 0.4s ease-in-out;
}
.custom-progress-track {
    width: 100%;
    height: 10px !important;
}
.swiper-pagination.swiper-pagination-fraction.swiper-pagination-horizontal {
    width: 100% !important;
}

.oom-tab-yacht .e-n-tab-title {
    border-radius: 10px !important;
}

/* The default state (Closed) */
.oom-accordion-faq .e-n-accordion-item-title {
    border-radius: 10px !important;
    transition: border-radius 0.3s ease; /* Optional: makes the transition smooth */
}

/* The open state */
/* We target the title when the parent item is active/open */
.e-n-accordion-item[open] .e-n-accordion-item-title,
.e-n-accordion-item.is-active .e-n-accordion-item-title {
    border-bottom-right-radius: 0px !important;
    border-bottom-left-radius: 0px !important;
}

/* 1. Position thumbnails over the main image and CENTERED */
.oom-media-carousel .elementor-thumbnails-swiper {
    margin-top: -180px !important; 
    margin-left: auto !important;
    margin-right: auto !important;
    width: 70%;
    position: relative;
    z-index: 10;
    padding-bottom: 20px;
}

/* 2. Style the individual thumbnails */
.oom-media-carousel .elementor-thumbnails-swiper .swiper-slide {
    border-radius: 15px;
    overflow: hidden;
    transition: all 0.3s ease;
}

/* Highlight ONLY the active thumbnail */
.oom-media-carousel .elementor-thumbnails-swiper .swiper-slide.swiper-slide-active {
    border: 2px solid #4EC5A6 !important;
}

/* 3. Remove border from the main big image */
.oom-media-carousel .elementor-main-swiper .swiper-slide {
    border: none !important;
}


/* Targets the title container */
.oom-yachts-info h3.elementor-image-box-title {
    color: #f2bc5a;
    font-weight: 800;
    font-size: 42px; /* Base size for the number */
    display: block;
}

/* Move the 'ft' to the top */
.oom-yachts-info h3.elementor-image-box-title::after {
    content: "ft";
    font-size: 0.5em;       /* Half the size of the number */
    font-weight: 700;
    vertical-align: super;  /* Initial move to the top */
    position: relative;
    top: -0.2em;           /* Adjust this value to push it higher or lower */
    margin-left: 2px;      /* Space between 54 and ft */
}

/* Targets the title container */
.oom-yachts-pax h3.elementor-image-box-title {
    color: #f2bc5a;
    font-weight: 800;
    font-size: 42px; /* Base size for the number */
    display: block;
}

/* Move the 'ft' to the top */
.oom-yachts-pax h3.elementor-image-box-title::after {
    content: "pax";
    font-size: 0.5em;       /* Half the size of the number */
    font-weight: 700;
    vertical-align: super;  /* Initial move to the top */
    position: relative;
    top: -0.2em;           /* Adjust this value to push it higher or lower */
    margin-left: 2px;      /* Space between 54 and ft */
}
/* Aligning icons within your specific dynamic field */
.oom-listing-dynamic .jet-listing-dynamic-field__icon,
.oom-listing-dynamic .jet-listing-dynamic-field__inline-icon {
    margin-top: 7px!important; /* Fine-tuned for standard line-heights */
    align-self: flex-start; /* 'top' isn't a valid value for align-self; use flex-start */
}



.oom-parent-container-experience:hover .oom-container-experience {
  /* Negative Y moves the element UP */
  transform: translateY(-100px); 
  
}
.elementor-widget-heading .elementor-heading-title[class*=elementor-size-]>a {
    font-family: inherit!important;
}
a.woocommerce-privacy-policy-link {
	color: #4EC5A6;
}
a.ywgc-show-giftcard {
    color: #4EC5A6;
}
/* Ensure the container allows for filling */
form.woocommerce-cart-form .oom_row #step-cart-contents > .shop_table tbody .cart_item .product-thumbnail a {
    max-width: 200px;
    display: block; /* Necessary to allow the image to fill the width */
    width: 100%;
}

/* Force the image to fill the 200px width */
form.woocommerce-cart-form .oom_row #step-cart-contents > .shop_table tbody .cart_item .product-thumbnail a img {
    width: 100% !important;
    height: auto;          /* Maintains aspect ratio */
    display: block;
    object-fit: cover;     /* Ensures the image fills the space nicely if heights vary */
}
/* Hover state */
.woocommerce div.product form.cart .tinvwl_add_to_wishlist_button:hover {
    background-color: #EBB553 !important;
    color: #ffffff!important;
}
a.button.wc-forward {
    line-height: 1.5em;
    font-weight: 400 !important;
}
.oom-single-product-add-to-cart .woocommerce div.product form.cart::after, .woocommerce div.product form.cart::before {
    display: none!important;
}

/* Add the cart icon after the Add to Cart text */
.oom-single-product-add-to-cart button.single_add_to_cart_button.button.alt::after {
    content: "";
    display: inline-block;
    width: 20px; /* Adjust size as needed */
    height: 20px; /* Adjust size as needed */
    margin-left: 10px; /* Space between text and icon */
    background-image: url('/wp-content/uploads/2026/02/cart-icon1.svg');
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
}

/* Ensure the button content is centered and aligned */
.oom-single-product-add-to-cart button.single_add_to_cart_button.button.alt {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

option {
    color: black !important;
}
select#tinvwl_product_actions {
    border: 1px solid black;
	color: black;
}
.oom-single-product-add-to-cart button.minus {
    display: none;
}
.oom-single-product-add-to-cart button.plus {
    display: none;
}
/* 1. Style the actual input box globally */
.quantity .qty {
    width: 60px !important;
    height: 40px !important;
    border: 1px solid #ccc !important;
    border-radius: 4px !important;
    padding-right: 5px !important;
    text-align: center;
    appearance: textfield; /* Standard for Firefox */
}

/* 2. Force the arrows to be visible on Chrome, Safari, and Edge */
.quantity .qty::-webkit-inner-spin-button,
.quantity .qty::-webkit-outer-spin-button {
    -webkit-appearance: inner-spin-button !important;
    opacity: 1 !important;
    cursor: pointer;
}


/* First word styling */
.split-title .first-word {
    color: #000000 !important;
}

/* Rest of the text */
.split-title h2,
.split-title h2 a {
    color: rgb(235, 181, 83) !important;
    text-decoration: none; /* optional, if you want to remove underline */
}

/* 1. Target the Elementor Container */
.product-card {
    position: relative;
    overflow: hidden;
    cursor: pointer;
}

/* 2. Create the Overlay (The Text) */
.product-card::before {
    content: 'View Product'; 
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(78, 197, 166, 0.95);
    
    /* Layout for Text */
    display: flex;
    justify-content: center;
    align-items: center;    
    padding-right: 45px; /* Space to clear the icon */
    box-sizing: border-box;

    /* Typography */
    color: #fff;
    font-weight: 400;
    font-size: 16px;
    
    /* Animation Start */
    opacity: 0;
    transform: translateY(100%); 
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease;
    z-index: 2;
}

/* 3. Add the Anchor Icon */
.product-card::after {
    content: '';
    position: absolute;
    top: 0;
    /* Centering logic: adjusted to sit slightly right of center */
    left: 45%;
    margin-left: 55px; 
    width: 30px;
    height: 100%;
    
    background: url('/wp-content/uploads/2026/02/btn-icon.png') no-repeat center center;
    background-size: contain;
    
    /* Animation Start */
    opacity: 0;
    transform: translateY(100%); 
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease;
    z-index: 3;
}

/* 4. Trigger Hover */
.product-card:hover::before,
.product-card:hover::after {
    opacity: 1;
    transform: translateY(0);
}
a.oom-header-icon-link.cart-popup {
    padding-left: 10px;
}
.elementor-10 .elementor-element.elementor-element-c41fc1c .oom-mini-cart-close {
    color: white!important;
    padding: 10px;
}
button.oom-mini-cart-remove-item {
    padding: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
}
a.remove {
    line-height: 1.5em!important;
}
button.oom-mini-cart-close {
    padding: 10px !important;
    color: white !important;
}
/* Replace text with icon for the Solid Button (Icon 1) */
.oom-add-to-cart .single_add_to_cart_button, 
.add_to_cart_button {
    text-indent: -9999px; /* Hides the text */
    white-space: nowrap;
    min-width: 60px; /* Adjust based on desired size */
    height: 60px;    /* Adjust based on desired size */
    background-image: url('/wp-content/uploads/2026/02/cart-icon2.svg') !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 20px !important; /* Adjust icon size here */
}

/* Change icon on hover for both button types */
.oom-add-to-cart .single_add_to_cart_button:hover, 
.add_to_cart_button:hover {
    background-image: url('/wp-content/uploads/2026/02/cart-icon1.svg') !important;
    /* Optional: If you want a smooth transition */
    transition: background-image 0.3s ease-in-out;
}

/* If the outlined button needs a specific hover background color change too */
.oom-add-to-cart .add_to_cart_button.outlined:hover {
    background-color: #f8f8f8 !important; /* Light grey or your preferred hover color */
}
/* 1. The Circle Container */
.oom-wishlist .tinv-wishlist .tinvwl_add_to_wishlist_button {
    width: 60px !important;
    height: 60px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    border-radius: 50% !important;
    background-color: #d1d1d1 !important; /* Grey Background */
    transition: all 0.3s ease !important;
    position: relative;
    
    /* Set SVG as background */
    background-image: url('/wp-content/uploads/2026/02/heart-svgrepo-com.svg') !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 25px !important; /* Adjust size of the heart here */
}

/* 2. Hide the default FontAwesome icon */
.oom-wishlist .tinv-wishlist .tinvwl_add_to_wishlist_button::before {
    display: none !important;
}

/* 3. Hide the "Add to Wishlist" text */
.oom-wishlist .tinv-wishlist .tinvwl_add_to_wishlist_button .tinvwl_add_to_wishlist_text {
    display: none !important;
}

/* 4. Hover State */
.oom-wishlist .tinv-wishlist .tinvwl_add_to_wishlist_button:hover {
    background-color: #ff7c7c !important; /* Red Background on hover */
    /* If you have a white version of the SVG, you can swap it here */
}
.oom-wishlist span.tinvwl_add_to_wishlist-text {
    display: none;
}

.imagebox-contact .elementor-image-box-content {
    margin-top: -5px;
}
/* Assign a default order to the items */
.oom-header-icon-item {
  order: 2; 
}

/* Move the cart (3rd) to appear after the wishlist */
.oom-cart-icon {
  order: 4;
}

/* Move the wishlist (4th) to appear before the cart */
.oom-wishlist-icon {
  order: 3;
}


/* 1. Ensure the menu item can contain the absolute underline */
.oom-menu-header .elementor-item {
    position: relative !important;
    overflow: visible !important;
}

/* 2. Create the hidden starting state */
.oom-menu-header .elementor-item::after {
    content: "" !important;
    position: absolute;
    bottom: -5px;      /* Spacing below text */
    left: 50%;         /* Start at center */
    width: 0;          /* Start at zero width */
    height: 2px;       /* Thickness */
    background-color: #D4AF37; 
    transition: width 0.5s ease, transform 0.5s ease;
    transform: translateX(-50%); /* Keeps it centered while growing */
    display: block !important;    /* Force it to show */
}

/* 3. The Hover State */
.oom-menu-header .elementor-item:hover::after {
    width: 100% !important; /* Grow to full width */
}
a.button.product_type_simple.add_to_cart_button.ajax_add_to_cart {
	line-height: 1.5;
    font-weight: 400;
}
a.button.wc-backward {
    line-height: 1.5;
    font-weight: 400;
}
a.woocommerce-Button.wc-forward.button {
    line-height: 1.5;
     font-weight: 400;
}

span.elementor-button-content-wrapper {
    display: flex;
    align-items: center;
}
.back-to-top-btn {
    cursor: pointer; /* This adds the hand cursor */
    display: none;   /* Hide it initially on page load */
    position: fixed; /* Ensures it stays in place */
    z-index: 999;    /* Keeps it above other elements */
}
/* Adds the hand cursor and a subtle hover effect */
.oom-icon-close {
  cursor: pointer;
  transition: transform 0.2s ease, opacity 0.2s ease;
  display: inline-block; /* Required for transform to work */
}

.oom-icon-close:hover {
  opacity: 0.7;
  transform: scale(1.1); /* Slight grow effect when hovering */
}

/* Default icon */
.oom-button-experience span.elementor-button-icon {
    font-size: 25px;
    display: inline-block;
    width: 25px; /* adjust size if needed */
    height: 25px;
    background-image: url('/wp-content/uploads/2026/02/btn-icon.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/* Hide any <i> or <svg> inside */
.oom-button-experience span.elementor-button-icon i,
.oom-button-experience span.elementor-button-icon svg {
    display: none;
}

/* Change icon on hover */
.oom-button-experience:hover span.elementor-button-icon {
    background-image: url('/wp-content/uploads/2026/02/accordion-icon3.svg');
}

.oom-button-news span.elementor-button-icon {
    font-size: 25px;
    display: inline-block;
    width: 25px; /* adjust size if needed */
    height: 25px;
    background-image: url('/wp-content/uploads/2026/02/accordion-icon2.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/* Hide any <i> or <svg> inside */
.oom-button-news span.elementor-button-icon i,
.oom-button-news span.elementor-button-icon svg {
    display: none;
}

/* Change icon on hover */
.oom-button-news:hover span.elementor-button-icon {
    background-image: url('/wp-content/uploads/2026/02/accordion-icon3.svg');
}


/* Ensure the wrapper allows the height */
.oom-image-client {
    height: 100%;
}

/* Apply the fit logic to the actual image element */
.oom-image-client img {
    width: 100%!important;
    height: 100%!important;
    object-fit: cover; /* This preserves aspect ratio and prevents stretching */
    display: block;    /* Removes extra bottom whitespace */
}

input#form-field-c_date {
    background-image: url('/wp-content/uploads/2026/02/calendar.png');
    background-repeat: no-repeat;
    /* This positions the icon 15px from the right and centers it vertically */
    background-position: right 15px center;
    /* Adjust the size of your icon here */
    background-size: 16px auto;
    /* Prevents text from overlapping the icon */
    padding-right: 45px !important;
}

/* Optional: Removes the default browser arrow if it's still showing */
input#form-field-c_date::-webkit-calendar-picker-indicator {
    opacity: 0;
    cursor: pointer;
    position: absolute;
    right: 0;
    width: 40px;
    height: 100%;
}

input#form-field-c_start_Time {
    background-image: url('/wp-content/uploads/2026/02/time.png');
    background-repeat: no-repeat;
    /* This positions the icon 15px from the right and centers it vertically */
    background-position: right 15px center;
    /* Adjust the size of your icon here */
    background-size: 16px auto;
    /* Prevents text from overlapping the icon */
    padding-right: 45px !important;
}

/* Optional: Removes the default browser arrow if it's still showing */
input#form-field-c_start_Time::-webkit-calendar-picker-indicator {
    opacity: 0;
    cursor: pointer;
    position: absolute;
    right: 0;
    width: 40px;
    height: 100%;
}

input#form-field-c_end_time {
    background-image: url('/wp-content/uploads/2026/02/time.png');
    background-repeat: no-repeat;
    /* This positions the icon 15px from the right and centers it vertically */
    background-position: right 15px center;
    /* Adjust the size of your icon here */
    background-size: 16px auto;
    /* Prevents text from overlapping the icon */
    padding-right: 45px !important;
}

/* Optional: Removes the default browser arrow if it's still showing */
input#form-field-c_end_time::-webkit-calendar-picker-indicator {
    opacity: 0;
    cursor: pointer;
    position: absolute;
    right: 0;
    width: 40px;
    height: 100%;
}

.oom-single-page-form .elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option {
    flex-basis: 15%;
}
.oom-single-page-form .elementor-field-type-html.elementor-field-group.elementor-column.elementor-field-group-field_b888013.elementor-col-100 {
    display: flex;
    gap: 5px;
}

.booking-note {
  display: flex;
  align-items: center;
  font-family: sans-serif;
  gap: 8px;
}

.info-icon {
  background-color: #4EC5A6;
  color: white;
  width: 14px;
  height: 14px;
  border-radius: 50%; /* Makes it a circle */
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  font-weight: bold;
  font-style: italic; /* Common for "i" icons */
}

.oom-gallery-picture .elementor-gallery-item__overlay::before {
    content: "+";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -40%);
    font-size: 48px;
    color: #ffffff; /* WHITE */
    opacity: 0;
    transition: opacity 0.3s ease, transform 0.3s ease;
    pointer-events: none;
}

.oom-gallery-picture .elementor-gallery-item:hover .elementor-gallery-item__overlay::before {
    opacity: 1;
    transform: translate(-50%, -50%);
}





/* Progress bar fill */
.oom-gallery .swiper-pagination-progressbar-fill {
    background-color: #4EC5A6 !important;
    border-radius: 20px !important;
    height: 8px !important;
}


.oom-feature-title a {
    color: inherit;
    text-decoration: none;
    font-family: inherit;
}

.oom-feature-title a:hover {
    color: inherit;
    text-decoration: none;
    font-family: inherit;
}

.oom-loop-yacth .elementor-cta__content {
	display:none;
}
input#form-field-username {
	padding-left: 10px!important;
}
input#user-29b9f1aa {
    padding-left: 10px!important;
}
input#password-29b9f1aa {
	padding-left: 10px!important;
}
.elementor-34 .elementor-element.elementor-element-b3d9b73 .elementor-social-icon svg {
    font-size: 20px !important;
}
.social-media-icon .elementor-social-icons-wrapper.elementor-grid {
    display: flex;
}
.elementor-34 .elementor-element.elementor-element-b3d9b73 
.elementor-social-icon.elementor-repeater-item-b0f5862 svg {
    font-size: 35px!important;
}

.elementor-repeater-item-b0f5862:hover svg image {
    opacity: 0;
}

.elementor-repeater-item-b0f5862:hover svg {
    background-image: url("/wp-content/uploads/2026/02/social-icon1.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}
.elementor-3501 .elementor-element.elementor-element-edbbaef
.elementor-social-icon.elementor-repeater-item-b0f5862 svg {
    font-size: 35px!important;
}

button.iti__selected-country {
    background: none;
    padding: 0px;
}
input#field_c_phone {
    padding-left: 50px !important;
}
.iti__arrow {
    border-top: var(--iti-arrow-height) solid #ffffff!important;
}
.iti__arrow--up {
    border-top: none;
    border-bottom: var(--iti-arrow-height) solid #ffffff!important;
}
.contact-form-class .elementor-field-group.elementor-column.elementor-field-type-submit.elementor-col-100.e-form__buttons {
    padding-top: 30px;
}
.subscription-form-class .elementor-field-group.elementor-column.elementor-field-type-submit.elementor-col-20.e-form__buttons {
    position: absolute;
    right: 0px;
    padding: 0px;
    bottom: 0px !important;
}

.oom-single-page-form .elementor-field-type-text input, .elementor-field-type-email input, .elementor-field-type-textarea textarea {
    padding: 15px !important;
}
.subscription-form-class span.elementor-button-text {
    font-weight: 700;
}

/* Targets all inputs in Elementor forms */
.elementor-field-type-text input,
.elementor-field-type-email input,
.elementor-field-type-textarea textarea {
    padding: 0; /* Remove default padding */
}

.elementor-389 .elementor-element.elementor-element-1b62d19 .elementor-button[type="submit"] {
    padding: 0px !important;
}
.social-media-icon svg.e-font-icon-svg {
  font-size: 20px !important;
}

.span-text-title{
	color:#EBB553;
}

.contact-link {
  color: #ffffff;
  text-decoration: none;
  transition: color 0.3s ease;
}

.contact-link:hover {
  color: #EBB553;
}

html {
	overflow-x: hidden;
}


/** Elementor Container **/
.oom-full-viewport {
	width: 100vw !important;
}

.oom-constraint-width {
	max-width:1920px;
	width:100%;
	margin:0 auto;
}

.oom-elementor.e-parent {
	width: 90%;
	margin: 0px auto;
}

#global-footer .top,
.oom-elementor-full-width.e-parent .e-con-boxed {
	width: 90%;
	margin: 0px auto;
}

.oom-elementor-full-width.e-parent {
	width: 100%;
	margin: 0px auto;
}

.oom-elementor.e-parent .e-con-inner > .e-con-inner {
  	width: 100%;
}

.e-loop-item .e-parent .e-con-inner {
	width: 100%;
}

/** Mobile Slide Menu **/
.oom-mobile-logo img {
	width: 80px;
}

.mm-hidden + .mm-navbar__breadcrumbs {
	visibility: hidden;
}

.mm-navbar__breadcrumbs a,
.mm-navbar__breadcrumbs span.mm-separator {
	display: none;
}

.mm-listitem {
	position: unset;
}

.mm-listitem__btn:not(.mm-listitem__text) {
	border-left-width: 0px;
}

/** Payment Gateway **/
.hitpay-payment-gateway-form {
	flex-wrap: inherit;
}

/** Mobile Slide menu **/
#sticky-header i.fas.fa-bars {
	font-size: 35px;
}

/** Elementor Login Ajax **/
.elementor-message-success {
	color: green;
}

.elementor-message-danger {
	color: red;
}

/** Hide Default Arrows **/
.swiper-button-next::after, 
.swiper-button-prev::after {
	content: ""!important;
}
.swiper-button-next,
.swiper-button-prev {
	background-image: none;
}

.swiper-button-next:after, 
.swiper-button-prev:after {
	display: none;
}

/** Custom Display Ratings/Stars **/
.fa-star.checked {
	color: #F4D174;
}

.fa-star {
	color: #808080;
}

/** Rows and Columns */
.oom_column_100 {
	float: left;
	width: 100%;
}

.oom_column_90 {
	float: left;
	width: 90%;
}

.oom_column_80 {
	float: left;
	width: 80%;
}

.oom_column_70 {
	float: left;
	width: 70%;
}

.oom_column_60 {
	float: left;
	width: 60%;
}

.oom_column_50 {
	float: left;
	width: 50%;
}

.oom_column_40 {
	float: left;
	width: 40%;
}

.oom_column_33_33 {
	float: left;
	width: 33.33%;
}

.oom_column_33 {
	float: left;
	width: 33%;
}

.oom_column_30 {
	float: left;
	width: 30%;
}

.oom_column_20 {
	float: left;
	width: 20%;
}

.oom_column_10 {
	float: left;
	width: 10%;
}

/** Cover Spin Loading **/
#oom-cover-spin {
	position:fixed;
	width:100%;
	left:0;right:0;top:0;bottom:0;
	background-color: rgba(255,255,255,0.7);
	z-index:9999;
	display:none;
}

#oom-cover-spin::after {
	content:'';
	display:block;
	position:absolute;
	left:calc(50% - 22px);
	top:calc(50% - 22px);
	width:44px;
	height:44px;
	border-style:solid;
	border-color:black;
	border-top-color:transparent;
	border-width: 4px;
	border-radius:50%;
	-webkit-animation: spin .8s linear infinite;
	-moz-animation: spin .8s linear infinite;
	animation: spin .8s linear infinite;
}

#oom-cart-cover-spin {
	position:absolute;
	width:100%;
	left:0;right:0;top:0;bottom:0;
	background-color: rgba(255,255,255,0.7);
	z-index:9999;
	display:none;
}

#oom-cart-cover-spin::after {
	content:'';
	display:block;
	position:absolute;
	left:calc(50% - 22px);
	top:calc(50% - 22px);
	width:44px;
	height:44px;
	border-style:solid;
	border-color:black;
	border-top-color:transparent;
	border-width: 4px;
	border-radius:50%;
	-webkit-animation: spin .8s linear infinite;
	-moz-animation: spin .8s linear infinite;
	animation: spin .8s linear infinite;
}

@-webkit-keyframes spin {
	from {-webkit-transform:rotate(0deg);}
	to {-webkit-transform:rotate(360deg);}
}

@keyframes spin {
	from {transform:rotate(0deg);}
	to {transform:rotate(360deg);}
}

/** Login Popup **/
#oom-signup-form label[for=form-field-i_agree] {
	font-size: 14px;
}

#oom-login-form .elementor-remember-me label {
	font-size: 16px;
}

#oom-login-form .elementor-button {
	width: 100%;
}

#oom-login-form .elementor-lost-password {
	font-size: 16px;
	color: #B4B4B4;
	margin: auto;
	float: right;
}

#oom-login-form .elementor-field-group {
	display: block;
}

#oom-login-form .elementor-register,
#oom-login-form .elementor-login-separator {
	display: none;
}

#oom-signup-form {
	display: none;
}

#oom-login-form .oom-form-link,
#oom-signup-form .oom-form-link {
	text-align: center;
	font-size: 16px;
}

#oom-signup-form label {
	display: none;
}

.mo-openid-app-icons {
	text-align: center;
}

.mo-openid-app-icons>p {
	display: none;
}

.mo-openid-app-icons>a {
	padding-right: 5px;
}

.mo_openid-login-button {
	border-radius: 5px;
	box-shadow: rgb(0 0 0 / 25%) 0px 1px 6px;
}

.mo-openid-app-icons>a {
	padding-right: 5px;
}

/* Login Popup Password Toggle */
#oom-psw-toggle {
	position: absolute;
	top: 10px;
	right: 10px;
}

#oom-psw-reg-toggle {
	position: absolute;
	top: 10px;
	right: 10px;
}

#oom-cfm-psw-reg-toggle {
	position: absolute;
	top: 10px;
	right: 10px;
}

/** Floating icons **/
.oom_float {
	position:fixed;
	padding: 15px;
	color:#FFF;
	padding: 10px 20px;
	text-align:center;
	border-radius: 30px;
	/*box-shadow: 1px 1px 3px #c4c2c2;*/
	z-index: 99;
	font-size: 18px;
	font-weight: 300;
}

.oom_float i {
	font-size: 22px;
}

.oom_left {
	left:20px;
}

.oom_right {
	right:20px;
}

#oom_floating_whatsapp .oom_right {
	bottom: 20px;
	background-color: #27D366;
	padding: 16px;
	width: 60px;
	height: 60px;
}

#oom_floating_whatsapp .oom_right:hover {
	color: #fff;
	background-color: #118C7E;
	bottom: 22px;
	transition: bottom 0.2s ease-in-out;
}

#oom_floating_whatsapp .oom_float i {
	font-size: 30px;
}


/* 1. Force the container to display buttons in a single row */
.oom-single-product-add-to-cart .e-atc-qty-button-holder {
    width: 200px;
    row-gap: 20px !important;
    column-gap: 0px !important;
}
/* 1. Ensure the parent container aligns items in a row and handles height */
form.cart {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-end !important; /* Aligns them along the bottom edge */
    gap: 5px !important;
    flex-wrap: nowrap !important;
}

/* 2. Style both buttons to have the exact same height */
.oom-single-product-add-to-cart button.single_add_to_cart_button,
.tinvwl_add_to_wishlist_button {
    height: 50px !important; /* Change this value to your preferred height */
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
}

/* 3. Specific Wishlist button desktop styling (> 1000px) */

    .tinvwl_add_to_wishlist_button {
        width: 200px !important;
        background-color: #d3d3d3 !important;
        color: #333 !important;
        border-radius: 6px !important;
        text-decoration: none !important;
        flex-direction: row-reverse !important; /* Heart icon after text */
        gap: 10px !important;
    }
@media (max-width: 1000px) {
	
/* 1. Position thumbnails over the main image and CENTERED */
.oom-media-carousel .elementor-thumbnails-swiper {
    margin-top: 0px !important; 
    margin-left: auto !important;
    margin-right: auto !important;
    width: 90%;
    position: relative;
    z-index: 10;
    padding-bottom: 20px;
}
	
.oom-single-product-add-to-cart .e-atc-qty-button-holder {
    width: 150px;
    row-gap: 20px !important;
    column-gap: 0px !important;
}

}

/* 4. Reset the Wishlist wrapper so it doesn't take up full width */
.tinv-wraper.tinv-wishlist {
    display: contents !important; /* Lets the button inside talk directly to the flex parent */
}

/* 5. Fix the heart icon spacing to prevent it from affecting height */
.tinvwl_add_to_wishlist_button::before {
    margin: 0 !important;
    line-height: 1 !important;
    display: inline-block !important;
}
/** Responsive **/
@media (max-width: 1920px) {

}

@media (max-width: 1440px) {

}

@media (min-width: 1201px) {

/* Progress bar container */
.oom-gallery .swiper-horizontal > .swiper-pagination-progressbar,
.oom-gallery .swiper-pagination-progressbar.swiper-pagination-horizontal,
.oom-gallery .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 70% !important;
    height: 8px !important;
    border-radius: 20px !important;
    left: 100px !important;
    top: 97% !important; /* FIXED */
}

}

@media (max-width: 1200px) {
		/* Aligning icons within your specific dynamic field */
.oom-listing-dynamic .jet-listing-dynamic-field__icon,
.oom-listing-dynamic .jet-listing-dynamic-field__inline-icon {
    margin-top: 2px!important; /* Fine-tuned for standard line-heights */
    align-self: flex-start; /* 'top' isn't a valid value for align-self; use flex-start */
}
/* Progress bar container */
.oom-gallery .swiper-horizontal > .swiper-pagination-progressbar,
.oom-gallery .swiper-pagination-progressbar.swiper-pagination-horizontal,
.oom-gallery .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 70% !important;
    height: 8px !important;
    border-radius: 20px !important;
    left: 100px !important;
    top: 98.5% !important; /* FIXED */
}

}

/* Apply these styles only to screens wider than 1000px */
@media (min-width: 1000px) {
    .oom-single-product-add-to-cart button.single_add_to_cart_button.button.alt {
    width: 200px;
}
    .tinvwl_add_to_wishlist_button {
        width: 200px !important;
        display: inline-flex !important;
        flex-direction: row-reverse !important; /* Icon on the right */
        justify-content: center !important;
        align-items: center !important;
        background-color: #d3d3d3 !important; /* Grey color from Image 1 */
        color: #333 !important;
        padding: 12px 0 !important; /* Vertical padding only, width is fixed */
        border-radius: 6px !important;
        text-decoration: none !important;
        gap: 10px !important;
    }
}

/* Global fix for the icon and text link appearance */
.tinvwl_add_to_wishlist_button, 
.tinvwl_add_to_wishlist_button .tinvwl_add_to_wishlist-text {
    text-decoration: none !important;
}

.tinvwl_add_to_wishlist_button::before {
    margin: 0 !important;
}
/*
* Surface Pro
*/
/* Force 1 column on mobile devices for the checklist */
@media (max-width: 767px) {
    /* Target the checklist inside or associated with your custom class */
    .oom-listing-dynamic .jet-check-list {
        display: grid !important;
        grid-template-columns: 1fr !important;
    }

    .oom-listing-dynamic .jet-check-list__item {
        flex: 0 0 100% !important;
        width: 100% !important;
    }
	/* Aligning icons within your specific dynamic field */
.oom-listing-dynamic .jet-listing-dynamic-field__icon,
.oom-listing-dynamic .jet-listing-dynamic-field__inline-icon {
    margin-top: 0px!important; /* Fine-tuned for standard line-heights */
    align-self: flex-start; /* 'top' isn't a valid value for align-self; use flex-start */
}
}
@media (max-width: 912px) {

}

/*
* iPad Air
*/
@media (max-width: 820px) {

}

/*
* iPad 9th
*/
@media (max-width: 810px) {

}

/*
* iPad Mini
*/
@media (max-width: 768px) {
	#oom-signup-form label[for=form-field-i_agree] {
		top: -20px;
		left: 20px;
	}
	.contact-form-class .elementor-field-group.elementor-column.elementor-field-type-submit.elementor-col-100.e-form__buttons {
    padding-top: 20px;
	}
}

@media (max-width: 480px) {

}

@media (max-width: 414px) {

}

/*
* iPhone 14/15
*/
@media (max-width: 395px) {

}

@media (max-width: 375px) {

}

@media (max-width: 360px) {

}

@media (max-width: 320px) {

}

@media (max-width: 280px) {

}