/*
	Theme Name: Projekt 2030 Theme
	Theme URI: https://wpsoul.com
	Description: A Hybrid magazine/shop/review/news Wordpress Theme
	Author: Sizam
	Author URI: https://wpsoul.com
	Version: 9.4
	Template: rehub-theme
*/

/* =Theme customization starts here
-------------------------------------------------------------- */

:root :where(p) {
  font-size: 14px;
  line-height: unset;
}
.dl-menuwrapper button {
  background-color: transparent !important;
  border-radius: 0 !important;
  padding: revert !important;
}
.rh_woocartmenu_cell {
  line-height: 0px!important;
}
.wc-block-cart__empty-cart__title.with-empty-cart-icon:before {
  background-color: var(--e-global-color-primary)!important;
}
button.wpsm-button.rehub_main_btn{
  background: var(--e-global-color-primary)!important;
  border-bottom: 0px!important;
  border-radius: 5px!important;
  box-shadow: none!important;
}
span.re_ajax_pagination_btn.def_btn:hover {
  color: #ffffff;
}
/* Audio */
.mejs-container, .mejs-container .mejs-controls, 
.mejs-embed, .mejs-embed body {
  background: var(--rehub-main-color)!important;
}
/* Text selection */

::selection {
    background-color: #1a1f41!important;
    color: #ffffff!important;
}

/* Custom Scrollbar */

::-webkit-scrollbar {
  width: 10px;
}

/* Track */
::-webkit-scrollbar-track {
  background-color: #f0f0f0;
  border-radius: 0px;
}
 
/* Handle */
::-webkit-scrollbar-thumb {
  background: #1a1f41; 
  border-radius: 0px;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #c8ac42; 
}

/* DSGVO */
#cmplz-document, 
.editor-styles-wrapper .cmplz-unlinked-mode {
  max-width: 100%!important;
}

/* WCFM */
.wcfm-page-headig .wcfm-page-heading-text {
    color: var(--e-global-color-primary)!important;
}
#wcfm-main-contentainer .wcfm-page-headig, 
.wcfm_menu_logo, .wcfm_menu_no_logo {
  -webkit-box-shadow: 0 8px 6px -6px rgba(0, 0, 0, .1)!important;
    -moz-box-shadow: 0 8px 6px -6px rgba(0,0,0,.1)!important;
}
#wcfm-main-contentainer input#terms {
  margin-left: 0!important;
}
#wcfm_membership_container input.wcfm_submit_button, 
#wcfm_membership_container a.wcfm_submit_button {

}
#wcfm_membership_container input.wcfm_submit_button:hover, 
#wcfm_membership_container a.wcfm_submit_button:hover {
  background: var(--e-global-color-accent)!important;
}
#wcfm_membership_container .wcfm_email_verified .wcfm_email_verified_button, 
#wcfm_membership_container .wcfm_sms_verified .wcfm_sms_verified_button {
  padding: .84375em .875em 0.78125em !important;
}
#wcfm_membership_container .wcfm_email_verified, 
#wcfm_membership_container .wcfm_sms_verified, 
#wcfm_membership_container .wcfm_store_slug_verified {
  margin-left: 0!important;
}
#wcfm_membership_container input[type="text"], 
#wcfm_membership_container input[type="file"], #wcfm_membership_container input[type="password"], 
#wcfm_membership_container select, #wcfm_membership_container input[type="number"], 
#wcfm_membership_container input[type="time"], #wcfm_membership_container input[type="search"], 
#wcfm_membership_container textarea {
    border: 0 solid rgba(0, 0, 0, .1)!important;
    border-bottom: 1px solid rgba(0, 0, 0, .15)!important;
    border-radius: 2px!important;
    color: #555!important;
    padding: 8px 10px 7px!important;
    display: block!important;
    width: 100%!important;
    font-family: var(--uap-primary-font)!important;
    font-size: 14px!important;
    min-height: 36px!important;
    text-align: left!important;
    box-shadow: none!important;
    border: 0px!important;
}
input.wcfm-checkbox:checked:before {
  color: var(--e-global-color-primary)!important;
}
#wcfmmp-stores-lists {
    box-shadow: none!important;
}
#wcfm-main-contentainer .wcfm_membership_box_head {
  min-height: 480px;
}
#wcfm_membership_container input.wcfm_submit_button, 
#wcfm_membership_container a.wcfm_submit_button,
#wcfm_membership_container .wcfm_form_simple_submit_wrapper a.wcfm_submit_button {
  background: var(--e-global-color-primary)!important;
  color: #ffffff;
  border-radius: 5px!important;
  padding: 12px 24px;
  box-shadow: none!important;
  font-size: 14px!important; 
}
input.wcfm-text.wcfm_submit_button.wcfm_email_verified_button {
  padding: 12px 24px!important;  
}
#wcfm_membership_container input[type="text"].wcfm_validation_failed, 
#wcfm_membership_container input[type="file"].wcfm_validation_failed, 
#wcfm_membership_container input[type="password"].wcfm_validation_failed, 
#wcfm_membership_container select.wcfm_validation_failed, 
#wcfm_membership_container input[type="number"].wcfm_validation_failed, 
#wcfm_membership_container input[type="time"].wcfm_validation_failed, #wcfm_membership_container input[type="search"].wcfm_validation_failed, 
#wcfm_membership_container textarea.wcfm_validation_failed {
  border-left: 6px solid var(--e-global-color-accent)!important;
}
button.woocommerce-Button.woocommerce-button.button.woocommerce-form-register__submit,
button.woocommerce-button.button.woocommerce-form-login__submit {
  border-radius: 5px!important;
}
span.password-input {
    display: flex;
}
button.show-password-input::before {
  content: "\1F441";
  font-size: 18px;
  color: #ffffff;
  display: inline-block;
  vertical-align: middle;
  opacity: 1;
}
button.show-password-input.display-password::before {
  content: "\1F576";
  opacity: 1;
}
button.show-password-input {
  min-width: 50px;
  background-color: var(--e-global-color-primary)!important;
  border: none;
}
button.show-password-input:hover {
  background-color: var(--e-global-color-accent)!important;
}
/***********/
.vendor-blog-card {
  display: flex;
  flex-direction: row;
  margin-bottom: 30px;
  border: 1px solid #eee;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 2px 6px rgba(0,0,0,0.05);
  min-height: 180px; /* Задаёт высоту карточки */
}

.vendor-blog-image {
  flex: 0 0 30%;
  max-width: 30%;
  overflow: hidden;
}

.vendor-blog-image img {
  width: 100%;
  height: 100%;         /* было auto */
  object-fit: cover;    /* обрежет лишнее, но красиво */
  display: block;
}

.vendor-blog-content {
  flex: 1;
  padding: 20px;
}

.vendor-blog-content h3 {
  margin-top: 0;
  font-size: 20px;
  margin-bottom: 10px;
}

.vendor-blog-content p {
  font-size: 14px;
  color: #555;
  margin-bottom: 15px;
}

.masonry_grid_fullwidth .small_post {
    border: none !important;
    background-color: transparent;
    background-image: radial-gradient(at bottom right, #5EDFFF1F 0%, #1A1F4100 100%);
    border-radius: 25px;
}
.uap-account-alert-warning {
    color: #fff!important;
    border: 1px solid #1a1f41!important;
    background-color: #1a1f41!important;
    border-radius: 10px;
}
a.wcfm_catalog_enquiry, a.wcfm_chat_now_button, 
a.wcfm_follow_me, span.add_enquiry {
  border-radius: 5px!important;
}
/* Elementor */


/* Woocommerce */
.woocommerce .products.grid_woo .product{
    border: none!important;
    border-radius: 15px;
}
.woocommerce .products.grid_woo .product:hover {
    box-shadow: none!important;
    background-color: transparent;
    background-image: radial-gradient(at bottom right, #5EDFFF1F 0%, #1A1F4100 100%);
}
.re_ajax_pagination .def_btn {
    font-size: 14px;
    background-color:var(--e-global-color-primary);
    color: #fff;
    border-radius: 5px!important;
    padding: 12px 24px!important;
    box-shadow: none!important;
}
.re_ajax_pagination .def_btn:hover {
    background-color: #c8ac42;
    box-shadow: none!important;
    
}
.products .button_action {
    background:var(--e-global-color-5bd2023)!important;
}
.button_action .wpsm-button.wpsm-button-new-compare, 
.button_action .heart_thumb_wrap .heartplus, 
.button_action .quick_view_wrap .quick_view_button {
  color: #fff!important;
}
.wpsm-button.white:hover {
  background-color: transparent!important;
}
#radio-control-wc-payment-method-options-stripe__content.optimized-checkout-element,
#wc-stripe-payment-method-instructions-card {
  max-width: 700px;
}
.wc-block-components-radio-control__label-group .wc-block-components-radio-control__secondary-label {
    flex: 0 0 20%!important;
  }
:root :where(.wp-element-button, .wp-block-button__link) {
  background-color: var(--e-global-color-primary)!important;
  border-radius: 5px;
}
:root :where(.wp-element-button, .wp-block-button__link):hover {
  background-color: var(--e-global-color-accent)!important;
  color: #fff!important;
}
.rh-mini-sidebar-content-area {
  width: calc(100% - 26%)!important;
}
.rh-mini-sidebar {
  width: 25%!important;
}
#wcfmmp-store .wcfm_store_description {
  margin-top: 0!important
}
h3.flowhidden.mb10.fontnormal.position-relative {
  white-space: nowrap;       /* Prevent text from wrapping to next line */
  overflow: hidden;          /* Hide text that doesn't fit */
  text-overflow: ellipsis;   /* Add "..." for long titles */
  display: block;            /* Ensure block-level rendering */
  max-width: 100%;           /* Restrict width to the container */
}
.rh-float-panel {
  background: #ffffff!important;
}
.def_btn {
  background-color: var(--e-global-color-primary)!important;
  border-radius: 5px!important;
}
.def_btn:hover {
  background-color: var(--e-global-color-accent)!important;
}
body .woo_default_full_width .row_social_inpost span.share-link-image {
  color: #fff !important;
  background: var(--e-global-color-primary)!important;
  border: 1px solid var(--e-global-color-primary)!important;
  border-radius: 5px;
  box-shadow: none !important;
}

.woo_default_full_width .row_social_inpost span.share-link-image:hover {
  color: #fff !important;
  background: var(--e-global-color-accent)!important;
  border: 1px solid var(--e-global-color-accent)!important;
}
.woocommerce div.product .summary .single_add_to_cart_button, 
.woocommerce div.product .woo-button-area .masked_coupon, 
.woocommerce div.product .summary form.cart button.button,
.woocommerce div.product .float-panel-woo-button .single_add_to_cart_button,
.woocommerce a.button.checkout,
span.wpsm-button.rehub_main_btn {
  border-radius: 5px!important;
  box-shadow: none!important;
  font-size: 14px!important;
}
.woocommerce a.button, .woocommerce-page a.button {
  color: #fff !important;
  background: var(--e-global-color-primary)!important;
  border-radius: 5px!important;
  box-shadow: none!important;
  font-size: 14px!important;
}
.woocommerce a.button:hover, .woocommerce-page a.button:hover {
  background: var(--e-global-color-accent)!important;
}
.woocommerce-mini-cart__buttons a.button {
  color: #ffffff!important;
  border-radius: 5px!important;
  box-shadow: none!important;
  font-size: 14px!important;
  background: var(--e-global-color-accent)!important;
}
.woocommerce #reviews .comment-respond #submit {
  background: var(--e-global-color-primary)!important;
  color: #ffffff;
  border-radius: 5px!important;
  box-shadow: none!important;
  font-size: 14px!important; 
}
.woocommerce-info:before {
  background-color: var(--e-global-color-accent)!important;
}
.woocommerce div.product .woocommerce-tabs .panel {
  border-bottom: none!important;
}
/* === HEADER LAYOUT: LOGO | SEARCH | RIGHT ICONS === */

/* Main container that holds logo, search bar, and right icons */
.logo-section {
  display: flex;                /* Use flexbox for horizontal alignment */
  align-items: center;          /* Vertically center all items */
  justify-content: space-between; /* Spread logo (left) and icons (right) apart */
  gap: 20px;                    /* Space between each element */
}

/* Logo block - fixed width, does not stretch */
.logo-section .logo {
  flex: 0 0 auto;               /* Prevent the logo from growing or shrinking */
}

/* Search area - fills all available space between logo and right icons */
.logo-section .search.head_search.position-relative {
  flex: 1 1 auto;               /* Allow this block to grow and shrink as needed */
  width: auto !important;       /* Reset any predefined width */
  min-width: 0;                 /* Prevent flex overflow issues */
  max-width: 100%;              /* Avoid expanding beyond container width */
  display: flex;                /* Make internal form elements align properly */
  align-items: center;          /* Vertically center the search input */
}

/* Ensure the search form uses full available width */
.logo-section .search.head_search form {
  width: 100%;                  /* Let form stretch across the whole search area */
}

/* Make the search input responsive and consistent */
.logo-section .search.head_search input[type="search"] {
  width: 100%;                  /* Full width inside the form */
  box-sizing: border-box;       /* Include padding & border in total width */
}

/* Right-side block (icons, cart, login, etc.) */
.logo-section .rh-flex-right-align {
  flex: 0 0 auto;               /* Fixed width, no stretching */
  display: flex;                /* Align internal icons horizontally */
  align-items: center;          /* Vertically center icons */
  justify-content: flex-end;    /* Push icons to the far right */
}


@media (max-width: 1023px) { .search.head_search.position-relative {
  display: none!important;
  }
}