/*
Theme Name: Ô Pêcheur de Lune
Theme URI: https://opecheurdelune.com/
Author: Erwan Bezie
Author URI: https://erwanbezie.com/
Version: 1.0.0
Template: minimog
Text Domain:  minimog-child
Tags: editor-style, featured-images, microformats, post-formats, rtl-language-support, sticky-post, threaded-comments, translation-ready
*/

:root {
    --minimog-color-link-hover: #3b8ac4;
    --minimog-tm-button-hover-background: #a56302;
    --minimog-light-color: #f9f3ea;
    /* --minimog-color-primary: #568b8d;
    --minimog-color-button-hover-border: var(--minimog-color-primary);
    --minimog-color-button-hover-background: var(--minimog-color-primary); */
    --minimog-typography-headings-text-transform: uppercase;
    --container-default-padding-top:0;
    --container-default-padding-right:0;
    --container-default-padding-bottom:0;
    --container-default-padding-left:0;
    --minimog-large-rounded: 16px;
    --minimog-typography-headings-font-weight-secondary: 700;
}
.page-title-bar {
    --heading-font-size: 30px;
}
.page-title-bar .heading, h1.entry-title {
    font-size: var(--heading-font-size, 32px);
}
.page-title-bar-minimal-01 {
    margin-bottom: 40px!important;
}
.archive-result-count {
    font-size: 17px;
}
.minimog-blog .post-title {
    text-align: center;
    font-weight: 700;
}
.single-post .level-3 {
    display: none;
}
#menu-primary .current-menu-item {
    opacity:.6;
}
.header-above-right header-col-end {
    min-height: 34px;
}
/* #switcher-language-wrapper {
    visibility:hidden;
} */
h1 {
  /* font-size: clamp(22px, 2vw + 1rem, 34px); */
  font-size: clamp(20px, 1.8vw + 0.8rem, 30px);
}
h2 {
  font-size: clamp(20px, 1.8vw + 0.8rem, 30px);
}
h3 {
  font-size: clamp(18px, 1.5vw + 0.6rem, 26px);
}
h4 {
  font-size: clamp(16px, 1.3vw + 0.4rem, 22px);
}
blockquote {
    font-family: inherit;
    font-weight: 600;
    font-size: 22px;
}
.more-padding-lg {
    padding: 40px 0 0 0;
}
.custom-fullwidth-banner {
  position: relative;
  left: 50%;
  width: 100vw;
  margin-left: -50vw;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: clamp(120px, 20vw, 300px) 20px clamp(40px, 10vw, 90px) 20px;
  color: #fff;
  text-align: center;
  overflow: hidden;
}

.custom-fullwidth-banner::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: rgba(0, 0, 0, 0.15);
  z-index: 0;
}

.custom-fullwidth-banner .banner-content {
  position: relative;
  z-index: 1;
  max-width: 1140px;
  margin: 0 auto;
}
/* Vertically center the two columns */
.wp-block-columns.is-layout-flex {
  display: flex;
  align-items: center; /* centers vertically */
}

/* Optional: ensure equal height behavior if content differs */
.wp-block-columns.is-layout-flex > .wp-block-column {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* Make the categories list a flex grid */
.wc-block-product-categories-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; /* space between items */
  list-style: none; /* remove bullets */
  padding: 0;
  margin: 0;
  gap: 20px; /* spacing between items */
}

/* Each category item: 3 per row */
.wc-block-product-categories-list-item {
  flex: 0 0 calc(33.333% - 13.33px); /* 3 items per row with gap accounted */
  box-sizing: border-box;
  text-align: center;
  margin-bottom: 20px;
  text-decoration: none!important;
  overflow: hidden; /* ensures image stays inside when zooming */
}

.wc-block-product-categories-list-item a {
  text-decoration: none!important;
  display: block;
}

/* Image container */
.wc-block-product-categories-list-item__image {
  display: inline-block;
  margin: 0!important;
  max-width: 300px!important;
  padding: 0!important;
  position: relative;
  vertical-align: middle;
  border: none!important;
  overflow: hidden; /* clip zoomed image */
  border-radius: var(--tw-block-rounded);
}

/* Image styling with transition */
.wc-block-product-categories-list-item__image img {
  width: 100%;
  height: auto;
  display: block;
  margin: 0 auto 20px;
  border-radius: var(--tw-block-rounded);
  transition: transform 0.5s ease, filter 0.4s ease;
}

/* Zoom effect on hover */
.wc-block-product-categories-list-item:hover .wc-block-product-categories-list-item__image img {
  transform: scale(1.08);
  filter: brightness(1.05);
}

/* Category name */
.wc-block-product-categories-list-item__name {
  display: block;
  margin-top: 10px;
  font-size: 1.1rem;
  font-weight: 600;
  text-transform: uppercase;
}

/* Remove unwanted margin/border defaults */
.wc-block-product-categories-list--has-images .wc-block-product-categories-list-item {
  margin: 0!important;
  padding-bottom: 20px;
}
.wc-block-product-categories-list--has-images .wc-block-product-categories-list-item__image {
  border: none!important;
}

/* Responsive breakpoints */
@media (max-width: 1024px) {
  .wc-block-product-categories-list-item {
    flex: 0 0 calc(50% - 10px);
  }
}

@media (max-width: 600px) {
  .wc-block-product-categories-list-item {
    flex: 0 0 100%;
  }
}


.br_brand_letter_element.vertical {
    width: 33% !important;
    text-align:center;
    margin-bottom: 20px;
}
.page-search-popup>.inner, #page-header.header-pinned .page-header-inner {
    background-color: var(--minimog-light-color)!important;
}
.minimog-product-categories .category-name:hover a, .minimog-product-categories .category-name a:hover {
    color: var(--minimog-color-link-hover);
}
.br_brand_letter_block .br_brand_letter_element img.align_above {
    border-radius: 20px;
}
.popup-search-form:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: none;
    background-color: var(--minimog-light-color);
    border-radius: var(--minimog-form-input-normal-rounded);
    pointer-events: none
}
.simple-footer {
    background-image: url(/wp-content/uploads/2025/10/check-bg.png);
    background-repeat: repeat-x;
    font-size: 16px;
    background-position: bottom;
}
.desktop-menu .header-05 .header-search-form .search-form {
    width: 190px;
}
/* .header-search-form .search-field {
    display: none;
}
.header-search-form .search-submit {
    margin-left: 0;
} */
.cwginstock-subscribe-form {
    margin-top: 15px;
}

#open-sizes-popup {
    display: block;
    margin-bottom: 10px;
}
.woosw-actions {
	display:none!important;
}
/* .brand-description figure.gallery-item {
    margin: 1em 10px;
} */
/* Container matches Minimog gallery width */
#brand-gallery .minimog-gallery .gallery {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

/* Each figure behaves like a product card */
#brand-gallery .minimog-gallery .gallery-item {
    flex: 1 0 calc(33.333% - 26px); /* 3 columns like gallery-columns-3 */
    box-sizing: border-box;
    margin: 0;
}

/* Make images fill the figure */
#brand-gallery .minimog-gallery .gallery-item img {
    width: 100%;
    height: auto; /* or a fixed height with object-fit: cover if you prefer */
    display: block;
    cursor: pointer;
    transition: transform 0.3s ease;
}

#brand-gallery .minimog-gallery .gallery-item img:hover {
    transform: scale(1.03);
}

/* Responsive */
@media (max-width: 1024px) {
    #brand-gallery .minimog-gallery .gallery-item {
        flex: 1 0 calc(50% - 16px); /* 2 columns on tablet */
    }
}

@media (max-width: 640px) {
    #brand-gallery .minimog-gallery .gallery-item {
        flex: 1 0 100%; /* 1 column on mobile */
    }
}

/* .logged-in .woosw-actions {
	display:block!important;
} */
/*.cwginstock-subscribe-form .panel-primary>.panel-heading {
     background:var(--minimog-color-button-background)!important;
    border-color:var(--minimog-color-button-background)!important; 
}*/
.cwginstock-subscribe-form .panel-primary>.panel-heading h4 {
    font-size:24px;
    margin-bottom:2px;
}
select[name="attribute_size"] option.out-of-stock {
    color: #b0b0b0;
}
.blog-archive .post-categories {
    display:none!important;
}
.categories-hp {
    display:none!important;
}
.mobile-menu .header-05 .header-center {
    width: calc(var(--minimog-tablet-branding-size) + 20px);
}
.desktop-menu .header-05 .menu--primary .menu__container>li>a {
    padding-bottom: 15px;
    padding-top: 8px;
}
.desktop-menu .sm-simple .children, .primary-menu-sub-visual {
    border: 1px solid #666;
    border-radius: 5px;
}
.desktop-menu .sm-simple .children>li:hover>a {
    color: var(--minimog-color-link-hover);
    background: transparent;
    text-decoration: underline;
}
.search-popup-heading h4 {
    display: none;
}
.archive.tax-berocket_brand .woocommerce-result-count {
    visibility:hidden;
}
.archive.tax-berocket_brand .woocommerce-no-products-found {
    display: none;
}
/* .br_brand_letter_element.vertical {
    text-align:center;
    width: 25%!important;
    margin-bottom: 20px;
} */
.brand-info {
    display: flex;
    gap: 2rem;
    align-items: flex-start;
}
.brand-logo {
    flex: 0 0 30%;
}
.brand-description {
    flex: 0 0 70%;
}
.brand_info h3 {
    font-size: 19px;
    min-height: 50px;
}
.brand_info h3 a {
    text-decoration: none!important;
}
.apple-pay-btn.black > span > svg {
    fill:white!important;
}
.brand-info {
    margin-bottom: 30px;
}
.woocommerce .product-badges .out-of-stock {
    --p-badge-bg: #000;
}
#sb_instagram #sbi_load .sbi_load_btn, #sb_instagram .sbi_follow_btn a {
    font-size: var(--minimog-typography-button-font-size)!important;
    border-radius: var(--minimog-button-rounded)!important;
    padding:10px 25px!important;
}
.entry-product.outofstock .product-popup-links, .entry-product:not(.purchasable) .product-popup-links {
    border-top: none!important;
}
.product.outofstock .price {
    display: none!important;
}
.woocommerce-tabs,
.modal-promo-popup.style-01 .promo-popup-image {
    display:none;
}
html[lang="fr-FR"] #form-en {
    display:none;
}
html[lang="en-US"] #form-fr {
    display:none;
}
#successMessageDiv {
    justify-content: start!important;
}
.wp-block-button .wp-block-button__link,
div.wpforms-container-full input[type=submit]:not(:hover):not(:active), div.wpforms-container-full button[type=submit]:not(:hover):not(:active), div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active), .wp-core-ui div.wpforms-container-full input[type=submit]:not(:hover):not(:active), .wp-core-ui div.wpforms-container-full button[type=submit]:not(:hover):not(:active), .wp-core-ui div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) {
    background-color: var(--minimog-color-button-background);
    padding: 0 25px!important;
    min-height: 45px!important;
    border-radius: var(--minimog-button-rounded)!important;
    font-family: var(--minimog-typography-button-font-family)!important;
    font-size: var(--minimog-typography-button-font-size)!important;
    font-weight: var(--minimog-typography-button-font-weight)!important;
    letter-spacing: var(--minimog-typography-button-letter-spacing)!important;
    text-transform: var(--minimog-typography-button-text-transform)!important;
}
div.wpforms-container-full input[type=submit]:hover, div.wpforms-container-full input[type=submit]:active, div.wpforms-container-full button[type=submit]:hover, div.wpforms-container-full button[type=submit]:active, div.wpforms-container-full .wpforms-page-button:hover, div.wpforms-container-full .wpforms-page-button:active, .wp-core-ui div.wpforms-container-full input[type=submit]:hover, .wp-core-ui div.wpforms-container-full input[type=submit]:active, .wp-core-ui div.wpforms-container-full button[type=submit]:hover, .wp-core-ui div.wpforms-container-full button[type=submit]:active, .wp-core-ui div.wpforms-container-full .wpforms-page-button:hover, .wp-core-ui div.wpforms-container-full .wpforms-page-button:active {
    background-color: var(--minimog-tm-button-hover-background)!important;
    padding: 0 25px!important;
    min-height: 45px!important;
    border-radius: var(--minimog-button-rounded)!important;
    font-family: var(--minimog-typography-button-font-family)!important;
    font-size: var(--minimog-typography-button-font-size)!important;
    font-weight: var(--minimog-typography-button-font-weight)!important;
    letter-spacing: var(--minimog-typography-button-letter-spacing)!important;
    text-transform: var(--minimog-typography-button-text-transform)!important;
}
.button, button, input[type=button], input[type=reset], input[type=submit] {
    min-height: 45px;
    height: auto;
}
.button:hover, button:hover, input[type=button]:hover, input[type=reset]:hover, input[type=submit]:hover,
.minimog-box:hover div.tm-button.style-border, .minimog-box:hover div.tm-button.style-flat, a.tm-button.style-border:hover, a.tm-button.style-flat:hover {
    box-shadow: 0 0 0 .1rem var(--minimog-tm-button-hover-background);
}
.page-mobile-tabs .page-open-popup-search,
.row-popular-search-keywords,
.header-above, #page-top-bar .container {
    display:none!important;
}
.home .minimog-banner .content-wrap__bottom {
    margin-bottom: 40px;
}
.page-title-bar-minimal-01 .page-breadcrumb {
    padding: 10px 0 0px 0;
}
.page-scroll-up.show {
    bottom: 10px;
}
.page-top-bar {
    min-height: 35px;
    padding:0;
}
.wpml-ls-legacy-list-horizontal {
    border: none;
    padding: 4px 0;
}
.wpml-ls-legacy-list-horizontal a {
    text-align: right;
    padding: 5px 0;
}
.switcher-language-wrapper .wpml-ls .wpml-ls-native {
    margin-right: 0;
}
.wpml-ls-slot-shortcode_actions.wpml-ls-current-language, .wpml-ls-display {
    display:none!important;
}
.header-above-left, .header-above-right {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
    -ms-flex: 1 1 0px;
    flex: 1 1 0px;
    display:block!important;
}
.header-above-center {
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}
.home .page-title-bar {
    display:none;
}
.grecaptcha-badge { visibility: hidden; }
.popup-search-logo m-image {
    max-width: none;
}
h1,h2,h3,h4 {
    text-transform: uppercase;
}
.wpforms-form .newsletter-icon {
    display:none;
}
.page-footer .is-layout-flex.wp-container-core-group-is-layout-13 {
    justify-content: space-between;
    font-size:1rem;
    align-items: center;
}
.page-footer .is-layout-flex.wp-container-core-group-is-layout-13 a {
    color: white;
    padding-right:20px;
}
.page-footer .is-layout-flex.wp-container-core-group-is-layout-13 a:hover {
    color: var(--minimog-color-link-hover);
}
.page-footer .is-layout-flex.wp-container-core-group-is-layout-13 a:hover svg {
    fill: var(--minimog-color-link-hover);
}
.page-footer .is-layout-flex.wp-container-core-group-is-layout-13 a svg {
    fill: white;
}
.pas-body .pas-section {
    display: none!important;
}
.wishlist-btn.icon-star a:before {
    content: ""
}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__products,
.wp-block-woocommerce-empty-cart-block h2:nth-child(2) {
    display:none!important;
}
.minimog-product .woocommerce-loop-product__title {
    font-size: 19px;
}
.minimog-product .product-stock-status-item.sold, .entry-product-stock {
    display: none!important;
}
.minimog-product .loop-product-stock .status-bar {
    display: none;
}
.wc-block-components-quantity-selector {
    box-sizing: border-box!important;
}
.single-product .entry-title {
    font-size: 28px;
    line-height: 1.3;
    text-transform: uppercase;
}
input[type=checkbox]:checked:before, input[type=checkbox]:hover:before, input[type=checkbox]:before {
    border-color: transparent;
    background: transparent;
    -webkit-transform: none;
    transform: none;
}

.password-input {
    position: relative;
    display: flex;
    align-items: center;
}
.password-input input {
    flex: 1;
    padding-right: 2.5rem; /* Add space for the button inside the input */
}
.password-input .show-password-input {
    position: absolute;
    right: 0.5rem;
    background: none;
    border: none;
    cursor: pointer;
    height: 100%;
    width: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
    padding: 0;
}
.show-password-input::before {
    content: "👁️";
    font-size: 1rem;
}

.cky-switch input[type="checkbox"]:before {
    top: unset;
}
.cky-btn-revisit-wrapper {
    background-color: #7f7f7fdd!important;
}
button.cky-btn-revisit:hover {
    box-shadow:none;
}
.menu__container .menu-item-icon svg {
    display: none!important;
}
#wpadminbar { 
    display: none !important;
}
.page-footer-wrapper {
    border-top: 1px solid #eee;
}
#wpfront-scroll-top-container img {
    width: 46px!important;
    height: 46px!important;
}
/* .mini-cart__button {
    display: none!important;
} */
.page-footer h4 {
    margin-bottom: .4rem;
}
.page-footer .elementor a:not(.tm-button):not(.button):not(.wp-element-button), .page-content article a:not(.tm-button):not(.button):not(.wp-element-button) {
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-decoration-color: #777;
    text-underline-position: under;
}
.lien-map {
    align-items: center;
    background-color: inherit;
    display: flex;
    position: relative;
    margin-bottom: 20px;
    line-height: 1.7rem;
}
.lien-map:before {
    content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path fill="%23818a91" d="M215.7 499.2C267 435 384 279.4 384 192C384 86 298 0 192 0S0 86 0 192c0 87.4 117 243 168.3 307.2c12.3 15.3 35.1 15.3 47.4 0zM192 128a64 64 0 1 1 0 128 64 64 0 1 1 0-128z"/></svg>');
    width: 28px;
    height: 28px;
    padding: 0 12px 12px 0;
    display: inline-block;
}
.page-footer .tm-social-networks svg {
    width:42px;
    height:42px;
}
#gt_float_wrapper {
    position: absolute!important;
    top: 5px!important;
    right: 7px!important;
}
.gt_float_switcher img {
    width: 23px!important;
}
.gt_float_switcher {
    font-family: inherit!important;
    font-size: 16px!important;
    box-shadow:none!important; 
}
.category-name a {
    text-decoration: none!important;
}
.minimog-product:not(.style-list).group-style-06 .product-thumbnail {
    overflow: unset;
}
.woocommerce-tabs {
    margin: 20px 0 0;
}
.minimog-product:not(.style-list).group-style-06 .product:hover .background-color-expand {
    height: calc(100% + 32px);
}
#wpforms-2081-field_4-container, #wpforms-2081-field_5-container, #wpforms-2081-field_6-container, #wpforms-form-2081 .newsletter-icon, #wpforms-form-30869 .newsletter-icon {
    display: none!important;
}
.product-popup-links {
    align-items: center;
}
.minimog-tabs__header-wrap {
    display: none!important;
}
.woo-single-info .entry-summary p {
    margin-bottom: .3em;
}
.woo-single-info .product-popup-links {
    margin-top: 2em;
}
.minimog-nice-select li:first-child {
    display: none!important;
}
/* .product-quick-view-content .cart, .woo-single-info .cart, .row-popular-search-keywords {
    display: none!important;
} */
.woocommerce-MyAccount-navigation-link--orders, .woocommerce-MyAccount-navigation-link--downloads, .woocommerce-MyAccount-navigation-link--edit-address {
    display: none!important;
}
/* swiper fix */ 
.swiper-container-vertical>.swiper-wrapper {
    flex-direction: column
}
.swiper-container {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
}
/* .elementor-element-71a4457 .minimog-banner .content-wrap {

} */
.elementor-327 .elementor-element.elementor-element-71a4457 .sub-title {
    font-size: 33px;
    font-weight:400;
}
.error404 .page-404-content {
    background-color: white;
}
.error404 .error-image {
    margin-top: 40px;
}
.error404 .error-image img {
    margin: 0 auto;
}
@media only screen and (min-width: 1200px) {
    .more-padding-lg {
        padding: 40px 40px 0 40px;
    }
}
@media only screen and (max-width: 1199px) {
    body:not(.rtl) .elementor-327 .elementor-element.elementor-element-ab3dd34 > .elementor-element-populated.elementor-element-populated {
        padding:15px;
    }
}
@media screen and (min-width: 768px) {
    .minimog-product .has-hover-thumbnail .product-hover-image {
        webkit-transition: opacity .8s ease;
        transition: opacity .8s ease;
        transition: opacity .8s ease;
        transition: opacity .8s ease;
    }
    .minimog-product .has-hover-thumbnail .product-thumbnail:hover .product-hover-image {
        -webkit-transform: none;
        transform: none;
    }
    .product-quick-view-content .quick-view-col-images {
        overflow:hidden;
    }
    #wpforms-form-2081 {
        width:50%;
    }
    .gt_float_switcher .gt-selected .gt-current-lang {
        padding: 2px 6px!important;
    }
}
@media (max-width: 767px) {
    .brand-info {
        flex-direction: column;
    }
    .brand-logo,
    .brand-description {
        flex: 0 0 100%;
    }
    .br_brand_letter_element.vertical {
        width: 100%!important;
        text-align:center;
        margin-bottom: 0px;
        float:none;
    }
    .error404 .page-404-content>.container>.row {
        padding-top: 0px;
        padding-bottom: 60px;
    }
    .page-footer .is-layout-flex.wp-container-core-group-is-layout-13,
    .page-footer .is-layout-flex.wp-container-core-group-is-layout-13 .is-layout-flex {
        display:block;
        text-align:center;
    }
    .page-footer.is-layout-flex p, .page-footer.is-layout-flex div,.page-footer.is-layout-flex .is-layout-flex p, .page-footer.is-layout-flex .is-layout-flex div {
        margin: 0;
        display: block;
        text-align: center;
        width: 100%;
    }
    .page-footer p {
        margin-bottom: .7rem!important;
    }
    #wpfront-scroll-top-container, .cky-btn-revisit-wrapper {
        bottom: 64px!important;
    }
    .cky-btn-revisit-wrapper {
        width: 28px!important;
        height: 28px!important;
    }
    #wpfront-scroll-top-container img {
        width: 30px !important;
        height: 30px !important;
    }
    #gt_float_wrapper {
        top: 0!important;
        right: 0!important;
    }
    .gt_float_switcher .gt-selected .gt-current-lang span.gt-lang-code {
        display:none!important;
    }
    /* .top-bar-center .top-bar-column-wrap, .top-bar-left .top-bar-column-wrap, .top-bar-right .top-bar-column-wrap {
        justify-content: flex-end;
    }
    .gt_float_switcher .gt-selected .gt-current-lang span.gt-lang-code {
        display: none!important;
    }
    .gt_float_switcher img {
        width: 23px !important;
    } */
}
@media (max-width: 575px) {
    .woocommerce .product-badges>div {
        max-width: 90%;
    }
}