/* =====================================================================
   VIVEA - Βότανο & Σώμα  |  Brand palette overrides
   Derived from the logo: sage #a9c9ae + deep olive #538172
   Goal: organic, premium, "appetite" (sensory) feel.
   ===================================================================== */

:root {
  --vivea-primary:        #538172; /* deep olive (ink, headings, buttons) */
  --vivea-primary-dark:   #3e6356;
  --vivea-primary-darker: #28403a;
  --vivea-secondary:      #a9c9ae; /* sage (soft backgrounds) */
  --vivea-secondary-soft: #c8decb;
  --vivea-secondary-tint: #eaf2eb;
  --vivea-accent:         #3e9e80; /* fresh leaf green - CTA "appetite" pop */
  --vivea-accent-dark:    #2e7d64;
  --vivea-cream:          #faf8f1; /* warm off-white */
  --vivea-text:           #28403a;
  --vivea-muted:          #538172;
}

/* ---- Base ---- */
body { color: var(--vivea-text); background: var(--vivea-cream); }
a { color: var(--vivea-primary); }
a:hover, a:focus { color: var(--vivea-accent-dark); }

h1, h2, h3, h4, h5, .h1, .h2, .h3,
.page-header h1, .product-information h1 { color: var(--vivea-primary-darker); }

/* ---- Primary buttons / CTA (add to cart, checkout) ---- */
.btn-primary,
.btn-primary:visited,
.add-to-cart,
.cart-content-btn .btn-primary,
button[type="submit"].btn-primary,
.product-add-to-cart .btn-primary,
#checkout .btn-primary,
.checkout .btn-primary {
  background-color: var(--vivea-accent) !important;
  border-color: var(--vivea-accent) !important;
  color: #fff !important;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active,
.add-to-cart:hover, .add-to-cart:focus {
  background-color: var(--vivea-accent-dark) !important;
  border-color: var(--vivea-accent-dark) !important;
}

.btn-secondary, .btn-outline-primary {
  border-color: var(--vivea-primary) !important;
  color: var(--vivea-primary) !important;
}
.btn-secondary:hover, .btn-outline-primary:hover {
  background-color: var(--vivea-primary) !important;
  color: #fff !important;
}

/* ---- Prices ---- */
.product-price, .price, .current-price, .product-price .current-price span,
.regular-price, .has-discount .discount-product, .product-prices .price {
  color: var(--vivea-primary) !important;
}
.discount, .product-flag.discount, .on-sale, .product-flag.on-sale {
  background-color: var(--vivea-accent) !important;
}
.product-flag.new { background-color: var(--vivea-primary) !important; }

/* ---- Header ---- */
#header { background: #ffffff; border-bottom: 3px solid var(--vivea-secondary); }
.header-top, #_desktop_top_menu .top-menu, .header-nav { background: #ffffff; }
.header-top { color: var(--vivea-text); }
#header .logo { max-height: 90px; width: auto; }

/* Mega menu */
.ets_mega_menu, .ets-megamenu, #block_top_menu,
.ybc-megamenu-container, .ets_megamenu {
  background-color: var(--vivea-primary) !important;
}
.ets_mega_menu a, .ets-megamenu a, .menu-content a,
.ybc-megamenu a { color: #fff !important; }
.ets_mega_menu a:hover, .ets-megamenu a:hover,
.menu-content a:hover { color: var(--vivea-secondary-soft) !important; }

/* ---- Top bar / utility links ---- */
.header-top .user-info a, .header-top .blockcart a,
.header-top a { color: var(--vivea-text); }

/* ---- Section titles / blocks ---- */
.featured-products .h2, .products-section-title, .section-title,
.featured-products .products-section-title,
h2.products-section-title {
  color: var(--vivea-primary-darker) !important;
  border-bottom: 2px solid var(--vivea-secondary);
  display: inline-block;
  padding-bottom: .35rem;
}

/* ---- Footer ---- */
.footer-container, #footer { background: var(--vivea-primary-darker); color: #cde0d0; }
.footer-container a, #footer a { color: #cde0d0; }
/* footer contact block: same sage-green tone as the rest (not white) */
.footer-container .block-contact,
.footer-container .contactinfo_footer,
.footer-container .contactinfo_footer div,
.footer-container .contactinfo_footer a,
.footer-container .text_contact_footer { color: #cde0d0 !important; }
.footer-container a:hover, #footer a:hover { color: #fff; }
.footer-container .h3, .footer-container h3 { color: #fff; }
#footer .links .title, .footer-container li a { color: #cde0d0; }

/* ---- Reassurance / soft sections ---- */
.block-reassurance, .reassurance, .ps-reassurance {
  background: var(--vivea-secondary-tint);
}
.block-reassurance svg, .block-reassurance .block-reassurance-item svg { fill: var(--vivea-primary); }

/* ---- Links / pagination / tags ---- */
.page-list .current a, .pagination .current a {
  background: var(--vivea-primary) !important;
  border-color: var(--vivea-primary) !important;
}

/* ---- Forms focus ---- */
.form-control:focus, input:focus, textarea:focus {
  border-color: var(--vivea-accent) !important;
  box-shadow: 0 0 0 .15rem rgba(138,154,87,.25) !important;
}

/* ---- Newsletter / promo strips ---- */
.ets_newsletter, .ybc-newsletter, .block-newsletter,
.newsletter-block { background-color: var(--vivea-secondary) !important; color: var(--vivea-primary-darker); }
.ybc-newsletter input[type="submit"], .block-newsletter .btn {
  background-color: var(--vivea-primary) !important; border-color: var(--vivea-primary) !important;
}

/* ---- Misc accents ---- */
.product-quantity .qty .bootstrap-touchspin .btn-touchspin,
.cart-grid .card-block .label { color: var(--vivea-primary); }
::selection { background: var(--vivea-secondary); color: var(--vivea-primary-darker); }

/* ---- Contact page: map + details in a horizontal row ---- */
.vivea-map { margin-bottom: 30px; }
.vivea-map iframe { display: block; width: 100%; border: 0; border-radius: 6px; }
.vivea-contact-details .contact-rich {
  display: flex !important;
  flex-wrap: wrap;
  gap: 25px;
  justify-content: center;
  align-items: stretch;
  padding: 20px 0;
  width: 100% !important;
  float: none !important;
  color: var(--vivea-text);
}
.vivea-contact-details .contact-rich .block {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  text-align: center;
  flex: 1 1 240px;
  max-width: 320px;
  width: auto !important;
  float: none !important;
  overflow: visible !important;
  height: auto !important;
  padding: 24px 18px;
  background: var(--vivea-secondary-tint);
  border-radius: 8px;
}
.vivea-contact-details .contact-rich .block .icon {
  float: none !important;
  display: flex; align-items: center; justify-content: center;
  width: 56px; height: 56px;
  margin: 0 0 14px 0 !important;
  border: 2px solid var(--vivea-primary) !important;
  border-radius: 50%;
  color: var(--vivea-primary) !important;
}
.vivea-contact-details .contact-rich .block .icon i { color: var(--vivea-primary) !important; font-size: 26px; line-height: 1; }
.vivea-contact-details .contact-rich .block .data { float: none !important; }
.vivea-contact-details .contact-rich .data_title { display: block; font-weight: 700; color: var(--vivea-primary-darker); margin-bottom: 4px; }
.vivea-contact-details .contact-rich a { color: var(--vivea-primary); }


/* ============================================================================
   VIVEA — PHASE 1 front-end (2026-07-10) | reversible. Prefix html body.ybc-skin-custom
   ωστε να νικαει το inline skin CSS του ETS giftshop theme.
   ============================================================================ */
:root{ --vivea-head-font:"EB Garamond", Georgia, serif; }

/* --- TABS τιτλοι (Δημοφιλη Προϊοντα / Best Sellers) --- */
html body.ybc-skin-custom ul.tabhome_title_list li a.tabhome-nav-link,
html body.ybc-skin-custom ul.tabhome_title_list li a.tabhome-nav-link.active,
html body.ybc-skin-custom ul.tabhome_title_list li a.nav-link,
html body.ybc-skin-custom ul.tabhome_title_list li a.nav-link.active{
  font-family:"EB Garamond", Georgia, serif !important;
  font-size:1.5rem !important; font-weight:600 !important; line-height:1.4 !important;
  text-transform:none !important; letter-spacing:.3px !important;
  padding:4px 6px 10px !important; display:inline-block !important;
  border-bottom:3px solid transparent !important; transition:color .25s ease !important;
  color:#9bb3a8 !important;
}
html body.ybc-skin-custom ul.tabhome_title_list li a.tabhome-nav-link.active,
html body.ybc-skin-custom ul.tabhome_title_list li a.nav-link.active{
  color:#28403a !important; border-bottom-color:#3e9e80 !important;
}
html body.ybc-skin-custom ul.tabhome_title_list li a.tabhome-nav-link:hover{ color:#3e9e80 !important; }

/* --- SECTION titles (blog/κατηγοριες) --- */
html body.ybc-skin-custom .products-section-title{
  font-family:"EB Garamond", Georgia, serif !important;
  text-transform:none !important; text-align:center !important;
  border:0 !important; font-size:1.7rem !important; color:#28403a !important;
  position:relative !important; display:block !important; white-space:normal !important;
  padding:0 0 18px !important; margin:6px auto 30px !important;
}
html body.ybc-skin-custom .products-section-title span{
  font-family:"EB Garamond", Georgia, serif !important;
  display:inline !important; text-transform:none !important;
}
html body.ybc-skin-custom .products-section-title::after{
  content:"" !important; display:block !important; position:absolute !important;
  left:50% !important; bottom:0 !important; transform:translateX(-50%) !important;
  width:64px !important; height:3px !important; background:#3e9e80 !important; float:none !important;
}

/* --- Γενικες επικεφαλιδες --- */
html body.ybc-skin-custom h1, html body.ybc-skin-custom h2, html body.ybc-skin-custom h3,
html body.ybc-skin-custom .page-header h1, html body.ybc-skin-custom .h1, html body.ybc-skin-custom .h2{
  font-family:"EB Garamond", Georgia, serif !important; letter-spacing:.3px !important;
}

/* --- Καρτες προϊοντων: hover lift + zoom --- */
html body.ybc-skin-custom .product-miniature{ transition:transform .32s ease, box-shadow .32s ease !important; border-radius:12px !important; }
html body.ybc-skin-custom .product-miniature:hover{ transform:translateY(-6px) !important; box-shadow:0 16px 34px rgba(40,64,58,.14) !important; }
html body.ybc-skin-custom .product-miniature .thumbnail-container{ overflow:hidden !important; border-radius:10px !important; }
html body.ybc-skin-custom .product-miniature .thumbnail-container img{ transition:transform .55s ease !important; }
html body.ybc-skin-custom .product-miniature:hover .thumbnail-container img{ transform:scale(1.07) !important; }

/* --- Buttons: pill --- */
html body.ybc-skin-custom .btn-primary, html body.ybc-skin-custom .add-to-cart{ border-radius:30px !important; padding:.7rem 1.6rem !important; }

/* --- Mobile --- */
@media (max-width:768px){
  html body.ybc-skin-custom ul.tabhome_title_list li a.tabhome-nav-link{ font-size:1.4rem !important; }
  html body.ybc-skin-custom .products-section-title{ font-size:1.7rem !important; }
  html body.ybc-skin-custom .product-miniature:hover{ transform:none !important; }
  html body.ybc-skin-custom .product-miniature:hover .thumbnail-container img{ transform:none !important; }
}

/* --- PROMO cards (τα 3 banner ΒΟΤΑΝΑ/SUPERFOODS/ΠΡΟΣΦΟΡΕΣ) --- */
html body.ybc-skin-custom .ybc-widget-display-top-column .ybc-widget-item{ padding-left:12px !important; padding-right:12px !important; margin-bottom:16px !important; }
html body.ybc-skin-custom .ybc-widget-item .ybc-widget-item-content{ border-radius:16px !important; overflow:hidden !important; box-shadow:0 6px 20px rgba(40,64,58,.08) !important; transition:transform .3s ease, box-shadow .3s ease !important; position:relative !important; }
html body.ybc-skin-custom .ybc-widget-item .ybc-widget-item-content:hover{ transform:translateY(-6px) !important; box-shadow:0 18px 36px rgba(40,64,58,.16) !important; }
html body.ybc-skin-custom .ybc-widget-item .ybc_widget_link_img{ display:block !important; border-radius:16px !important; overflow:hidden !important; margin:0 !important; }
html body.ybc-skin-custom .ybc-widget-item .ybc_widget_link_img img{ width:100% !important; height:auto !important; display:block !important; border-radius:16px !important; transition:transform .55s ease !important; }
html body.ybc-skin-custom .ybc-widget-item .ybc-widget-item-content:hover .ybc_widget_link_img img{ transform:scale(1.045) !important; }
/* κρυβω το διπλο κειμενο του theme (το banner τα εχει ολα) */
html body.ybc-skin-custom .ybc-widget-item .ybc-widget-title,
html body.ybc-skin-custom .ybc-widget-item .ybc-widget-subtitle,
html body.ybc-skin-custom .ybc-widget-item .ybc-widget-description-content,
html body.ybc-skin-custom .ybc-widget-item .ybc-widget-description{ display:none !important; }

/* --- ΠΕΛΑΤΗΣ 2026-07-13: ΜΟΝΟ χρωμα #5E9A84. Βαφω ΜΟΝΟ την εξωτερικη .menu_header ωστε να ΜΗΝ σκεπαζεται το dashed πλαισιο (::before/::after). Εσωτερικα = διαφανα. --- */
html body.ybc-skin-custom .menu_header{ background-color:#5E9A84 !important; }
html body.ybc-skin-custom .menu_header .ets_mm_megamenu,
html body.ybc-skin-custom .menu_header .ets_mm_megamenu_content,
html body.ybc-skin-custom .menu_header .container{ background:transparent !important; background-color:transparent !important; }
html body.ybc-skin-custom .menu_header .mm_menus_ul > li > a,
html body.ybc-skin-custom .menu_header .mm_menus_ul > li > a > span,
html body.ybc-skin-custom .menu_header .mm_menus_ul > li > a .ets_mm_title{ color:#ffffff !important; }
/* footer social λωριδα (δεν εχει πλαισιο, ασφαλες) */
html body.ybc-skin-custom .footer-container .footer_top_extra{ background-color:#5E9A84 !important; }
html body.ybc-skin-custom .footer-container .footer_top_extra,
html body.ybc-skin-custom .footer-container .footer_top_extra a,
html body.ybc-skin-custom .footer-container .footer_top_extra p,
html body.ybc-skin-custom .footer-container .footer_top_extra label,
html body.ybc-skin-custom .footer-container .footer_top_extra .title_social,
html body.ybc-skin-custom .footer-container .footer_top_extra .h3,
html body.ybc-skin-custom .footer-container .footer_top_extra h3{ color:#ffffff !important; }

/* --- ΩΡΑΡΙΟ στο footer --- */
.contactinfo_footer .vivea-hours-footer{ margin-top:6px; line-height:1.6; }
.contactinfo_footer .vivea-hours-footer > .fa-clock-o{ margin-right:6px; }
.contactinfo_footer .vivea-hours-footer .vivea-hours-lines{ display:block; }
.contactinfo_footer .vivea-hours-footer .vivea-hours-title{ display:block; }
.contactinfo_footer .vivea-hours-footer .vivea-hours-lines span{ display:block; padding-left:0; font-size:13px; }
/* --- ΝΟΜΙΚΑ ΣΤΟΙΧΕΙΑ (ΑΦΜ/ΓΕΜΗ) στο footer --- */
.contactinfo_footer .vivea-legal-footer{ margin-top:10px; line-height:1.6; }
.contactinfo_footer .vivea-legal-footer > .fa-university{ margin-right:6px; }
.contactinfo_footer .vivea-legal-footer .vivea-legal-lines{ display:inline-block; vertical-align:top; }
.contactinfo_footer .vivea-legal-footer .vivea-legal-lines span{ display:block; }

/* sticky menu (scroll_heading): να κραταει το χρωμα οταν κολλαει πανω — αλλιως φαινεται διαφανο πανω απο τα promo */
html body.ybc-skin-custom .menu_header .ets_mm_megamenu.scroll_heading,
html body.ybc-skin-custom .ets_mm_megamenu.scroll_heading{ background-color:#5E9A84 !important; }
html body.ybc-skin-custom .ets_mm_megamenu.scroll_heading .ets_mm_megamenu_content,
html body.ybc-skin-custom .ets_mm_megamenu.scroll_heading .container{ background:transparent !important; }

/* --- MOBILE μενου (≤991px): panel ανοιχτο → ΣΚΟΥΡΑ γραμματα (τα λευκα του desktop γινονται αορατα) --- */
@media (max-width:991px){
  html body.ybc-skin-custom .menu_header .mm_menus_ul > li.mm_menus_li > a,
  html body.ybc-skin-custom .menu_header .mm_menus_ul > li.mm_menus_li > a > span,
  html body.ybc-skin-custom .menu_header .mm_menus_ul > li.mm_menus_li > a .ets_mm_title{ color:#28403a !important; }
  html body.ybc-skin-custom .menu_header .mm_menus_ul .mm_menus_li .ets_mm_categories li a{ color:#28403a !important; }
}

/* --- κουμπι «Αγορα» στις καρτες προϊοντων: κεντραρισμα + σωστο μεγεθος (τα big-CTA στυλ μου το χαλουσαν) --- */
html body.ybc-skin-custom .product-miniature .highlighted-informations{ display:flex !important; justify-content:center !important; align-items:center !important; width:100% !important; left:0 !important; right:0 !important; text-align:center !important; }
html body.ybc-skin-custom .product-miniature .add_to_cart_button{ float:none !important; margin:0 !important; display:inline-flex !important; align-items:center !important; }
html body.ybc-skin-custom .product-miniature .add_to_cart_button .btn.btn-primary,
html body.ybc-skin-custom .product-miniature .highlighted-informations .btn.btn-primary{ float:none !important; margin:0 4px !important; padding:.4rem 1.1rem !important; height:auto !important; line-height:1.35 !important; border-radius:20px !important; transform:none !important; box-shadow:none !important; }
html body.ybc-skin-custom .product-miniature .add_to_cart_button .btn.btn-primary:hover{ transform:none !important; }
html body.ybc-skin-custom .product-miniature .quick-view{ float:none !important; }

/* --- product grid: ισο υψος + ευθυγραμμιση τιτλου/τιμης/κουμπιου σε καθε σειρα (desktop+mobile) --- */
html body.ybc-skin-custom .products.product_list .product-miniature{ display:flex !important; flex-direction:column !important; }
html body.ybc-skin-custom .products.product_list .product-miniature > .thumbnail-container{ display:flex !important; flex-direction:column !important; flex:1 1 auto !important; height:auto !important; }
html body.ybc-skin-custom .product-miniature .product-description{ display:flex !important; flex-direction:column !important; flex:1 1 auto !important; }
html body.ybc-skin-custom .product-miniature .product-title{ min-height:2.7em !important; margin-bottom:6px !important; display:flex !important; align-items:center !important; justify-content:center !important; }
html body.ybc-skin-custom .product-miniature .product-title a{ display:-webkit-box !important; -webkit-line-clamp:2 !important; -webkit-box-orient:vertical !important; overflow:hidden !important; text-align:center !important; }
html body.ybc-skin-custom .product-miniature .short_description{ display:-webkit-box !important; -webkit-line-clamp:2 !important; -webkit-box-orient:vertical !important; overflow:hidden !important; }
html body.ybc-skin-custom .product-miniature .product-price-and-shipping{ margin-top:auto !important; }

/* --- COOKIE CONSENT BANNER (Αποδοχή/Απόρριψη) --- */
.vivea-cookie-banner{ position:fixed; left:0; right:0; bottom:0; z-index:99999; background:#28403a; color:#fff; padding:14px 18px; display:flex; align-items:center; justify-content:center; gap:18px; flex-wrap:wrap; box-shadow:0 -2px 12px rgba(0,0,0,.2); font-size:14px; line-height:1.5; transition:transform .35s ease, opacity .35s ease; }
.vivea-cookie-banner.vcb-hidden{ transform:translateY(100%); opacity:0; }
.vivea-cookie-banner .vcb-text{ max-width:820px; }
.vivea-cookie-banner .vcb-text a{ color:#a9e0cd; text-decoration:underline; }
.vivea-cookie-banner .vcb-actions{ display:flex; gap:10px; flex-shrink:0; }
.vivea-cookie-banner .vcb-btn{ border:0; border-radius:22px; padding:.5rem 1.4rem; font-weight:600; cursor:pointer; font-size:14px; line-height:1.2; }
.vivea-cookie-banner .vcb-accept{ background:#5E9A84; color:#fff; }
.vivea-cookie-banner .vcb-accept:hover{ background:#4e8571; }
.vivea-cookie-banner .vcb-reject{ background:transparent; color:#fff; border:1px solid rgba(255,255,255,.5); }
.vivea-cookie-banner .vcb-reject:hover{ background:rgba(255,255,255,.12); }
@media (max-width:600px){ .vivea-cookie-banner{ flex-direction:column; text-align:center; gap:10px; padding:14px; } .vivea-cookie-banner .vcb-actions{ width:100%; justify-content:center; } }

/* --- BANNERS auto-fit (object-fit: cover) — εικονες οποιασδηποτε αναλυσης γεμιζουν σωστα, χωρις παραμορφωση --- */
/* promo banners (ybc_widget) */
html body.ybc-skin-custom .ybc-widget-item-content .ybc_widget_link_img img,
html body.ybc-skin-custom .ybc-widget-item-content img{ width:100% !important; height:auto !important; aspect-ratio:370 / 200; object-fit:cover !important; display:block; }
/* hero slider (ps_imageslider — bootstrap carousel) */
html body.ybc-skin-custom .carousel-inner .carousel-item figure img,
html body.ybc-skin-custom .carousel-inner .carousel-item img{ width:100% !important; height:auto !important; aspect-ratio:1170 / 450; object-fit:cover !important; display:block; }
