/* Infrastructure — © 2026 Πασχάλης Κυρανούδης. Δημιουργός και δικαιούχος (ν. 2121/1993, άρθρα 6, 10).
 *
 * viberry.me — σύγχρονο «δέρμα» ΠΑΝΩ από το Startuply. Μόνο εμφάνιση: κανένα κείμενο, καμία εικόνα,
 * καμία σειρά ενοτήτων δεν αλλάζει. Φορτώνεται από το mu-plugin vb-modern.php· σβήνεις το mu-plugin
 * και το site γυρίζει ακριβώς όπως ήταν.
 */

/* ---- γραμματοσειρές (τοπικά, όχι Google: χωρίς τρίτο αίτημα / GDPR) ---- */
@font-face { font-family: "Inter"; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url(fonts/inter-latin-wght-normal.woff2) format("woff2"); }
@font-face { font-family: "Plus Jakarta Sans"; font-style: normal; font-weight: 200 800; font-display: swap;
  src: url(fonts/plus-jakarta-sans-latin-wght-normal.woff2) format("woff2"); }

:root {
  --vb-pink: #ec3463;
  --vb-pink-dark: #d01f4f;
  --vb-pink-soft: #fdeef2;
  --vb-ink: #1d1e24;
  --vb-text: #3d3f48;
  --vb-muted: #6b6e7a;
  --vb-line: #ececf1;
  --vb-bg-soft: #f7f7fa;
  --vb-radius: 14px;
  --vb-radius-sm: 10px;
  --vb-shadow: 0 1px 2px rgba(20, 20, 40, .04), 0 8px 24px rgba(20, 20, 40, .06);
  --vb-shadow-hover: 0 2px 4px rgba(20, 20, 40, .06), 0 16px 40px rgba(20, 20, 40, .10);
  --vb-ease: cubic-bezier(.2, .7, .2, 1);
  --vb-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --vb-display: "Plus Jakarta Sans", "Inter", system-ui, sans-serif;
}

html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
  font-family: var(--vb-sans) !important;
  color: var(--vb-text);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}
::selection { background: var(--vb-pink); color: #fff; }

/* Κείμενο: 14 -> 15/16 px, ανοιχτό διάστιχο, καλύτερη αντίθεση από το αχνό γκρι του θέματος */
body p, body li, .wpb_text_column, .woocommerce-product-details__short-description,
.woocommerce-Tabs-panel, .vc_toggle_content { font-size: 15.5px; line-height: 1.7; }
.wpb_text_column p, .wpb_text_column li { color: var(--vb-text); }

h1, h2, h3, h4, h5, h6, .section-title, .sub-title, .product_title, .page-title, .widget-title, .kb-title,
.navigation-bar a, .btn, .button {
  font-family: var(--vb-display) !important;
}
h1, h2, h3, .section-title, .product_title, .page-title { letter-spacing: -.02em; color: var(--vb-ink); }
.section-title { font-weight: 800 !important; line-height: 1.15 !important; }
.sub-title, .sub-header { color: var(--vb-muted) !important; }

a { transition: color .2s var(--vb-ease); }

/* ---- κεφαλίδα ---- */
.navigation, .navigation-header { transition: background-color .3s var(--vb-ease), box-shadow .3s var(--vb-ease); }
.navigation.headhesive, .navigation.headhesive--clone, .navigation.headhesive--stick {
  background: rgba(255, 255, 255, .82) !important;
  -webkit-backdrop-filter: saturate(180%) blur(14px);
  backdrop-filter: saturate(180%) blur(14px);
  box-shadow: 0 1px 0 rgba(20, 20, 40, .06), 0 6px 20px rgba(20, 20, 40, .05);
}
.navigation-bar > li > a {
  font-weight: 600 !important;
  letter-spacing: .06em !important;
  font-size: 12.5px !important;
}
/* ΟΧΙ ::after/position:relative στα a του μενού: το θέμα έχει δικό του ::after, που τότε φαίνεται ως
   ροζ γραμμή κάτω από ΟΛΑ τα στοιχεία (το μενού είναι one-page, όλα «current»). */

/* ---- κουμπιά ---- */
.btn, .button, button.button, input[type="submit"], .single_add_to_cart_button, .add_to_cart_button,
.vc_btn3, a.checkout-button, #place_order, .wc-forward {
  border-radius: 999px !important;
  font-weight: 700 !important;
  letter-spacing: .04em !important;
  padding-left: 26px !important; padding-right: 26px !important;
  transition: transform .2s var(--vb-ease), box-shadow .2s var(--vb-ease), background-color .2s var(--vb-ease), color .2s var(--vb-ease), border-color .2s var(--vb-ease) !important;
}
.btn-solid, .single_add_to_cart_button, .button.alt, .checkout-button, #place_order {
  box-shadow: 0 6px 18px rgba(236, 52, 99, .28) !important;
}
.btn:hover, .button:hover, .single_add_to_cart_button:hover, .add_to_cart_button:hover,
input[type="submit"]:hover, #place_order:hover, .wc-forward:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(236, 52, 99, .32) !important;
}
.btn:active, .button:active { transform: translateY(0); }
.btn:focus-visible, .button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid rgba(236, 52, 99, .45) !important; outline-offset: 2px;
}
.single_add_to_cart_button { padding-top: 14px !important; padding-bottom: 14px !important; font-size: 13px !important; }

/* ---- εικόνες ---- */
.single-product .images img, .woocommerce-product-gallery img, .thumbnails-nav img,
.product-item img, .wpb_single_image .vc_single_image-wrapper.vc_box_rounded img {
  border-radius: var(--vb-radius);
}
.thumbnails-nav img { transition: transform .2s var(--vb-ease), box-shadow .2s var(--vb-ease); }
.thumbnails-nav img:hover { transform: translateY(-2px); box-shadow: var(--vb-shadow); }

/* ---- κάρτες προϊόντων (κατάστημα, σχετικά) ---- */
.products .product-item, ul.products li.product {
  border-radius: calc(var(--vb-radius) + 4px);
  padding-bottom: 18px;
  transition: transform .3s var(--vb-ease), box-shadow .3s var(--vb-ease), background-color .3s var(--vb-ease);
}
.products .product-item:hover, ul.products li.product:hover {
  transform: translateY(-4px);
  background: #fff;
  box-shadow: var(--vb-shadow-hover);
}
.product-item .product-wrap, .product-item .product-mask { border-radius: var(--vb-radius); overflow: hidden; }
.product-item .product-wrap img { transition: transform .6s var(--vb-ease); }
.product-item:hover .product-wrap img { transform: scale(1.04); }
.price, .price .amount { font-family: var(--vb-display); font-weight: 700; color: var(--vb-ink); }
.price del, .price del .amount { color: var(--vb-muted); font-weight: 500; }
.price ins { text-decoration: none; color: var(--vb-pink); }
.star-rating span::before, .star-rating::before { color: #f5a623; }

/* ---- σελίδα προϊόντος ---- */
.product_title { font-weight: 800 !important; }
.single-product .summary .price { font-size: 30px !important; }
.vc_toggle {
  border: 1px solid var(--vb-line) !important;
  border-radius: var(--vb-radius-sm) !important;
  background: var(--vb-bg-soft) !important;
  margin-bottom: 10px !important;
  overflow: hidden;
  transition: box-shadow .2s var(--vb-ease), border-color .2s var(--vb-ease);
}
.vc_toggle:hover { border-color: #dcdce4 !important; box-shadow: var(--vb-shadow); }
.vc_toggle_title { padding: 14px 18px !important; }
.vc_toggle_title > h4 { font-family: var(--vb-display) !important; font-weight: 600 !important; letter-spacing: .03em; }
.vc_toggle_content { padding: 0 18px 4px !important; background: #fff; }

/* καρτέλες Περιγραφή / Κριτικές -> pills */
.woocommerce-tabs ul.tabs, .wc-tabs { border: 0 !important; display: inline-flex; gap: 8px; padding: 6px !important;
  background: var(--vb-bg-soft); border-radius: 999px; }
.woocommerce-tabs ul.tabs li, .wc-tabs li { border: 0 !important; background: transparent !important; margin: 0 !important; border-radius: 999px !important; }
.woocommerce-tabs ul.tabs li a, .wc-tabs li a { border: 0 !important; border-radius: 999px !important; padding: 9px 20px !important;
  font-family: var(--vb-display) !important; font-weight: 600 !important; color: var(--vb-muted) !important; background: transparent !important; }
.woocommerce-tabs ul.tabs li.active a, .wc-tabs li.active a { background: #fff !important; color: var(--vb-ink) !important; box-shadow: var(--vb-shadow); }

/* κριτικές */
#reviews .commentlist li .comment_container, #reviews .commentlist > li {
  border-radius: var(--vb-radius);
}
#reviews .commentlist li .comment-text {
  border: 1px solid var(--vb-line) !important; border-radius: var(--vb-radius) !important; background: #fff;
  padding: 16px 20px !important;
}
#reviews .commentlist li img.avatar { border-radius: 50% !important; }

/* ---- φόρμες ---- */
input[type="text"], input[type="email"], input[type="tel"], input[type="password"], input[type="number"],
input[type="search"], input.input-text, select, textarea, .select2-container .select2-selection {
  border-radius: var(--vb-radius-sm) !important;
  border: 1px solid #dcdce4 !important;
  box-shadow: none !important;
  transition: border-color .2s var(--vb-ease), box-shadow .2s var(--vb-ease) !important;
}
input[type="text"]:focus, input[type="email"]:focus, input[type="tel"]:focus, input[type="password"]:focus,
input[type="number"]:focus, input[type="search"]:focus, input.input-text:focus, select:focus, textarea:focus {
  border-color: var(--vb-pink) !important;
  box-shadow: 0 0 0 4px rgba(236, 52, 99, .14) !important;
}
.quantity input.qty { border-radius: 999px !important; }

/* καλάθι / ταμείο */
.woocommerce table.shop_table, .shop_table { border-radius: var(--vb-radius) !important; overflow: hidden; border-collapse: separate !important; }
.cart_totals, .woocommerce-checkout-review-order, #order_review {
  border-radius: var(--vb-radius); }
.woocommerce-message, .woocommerce-info, .woocommerce-error {
  border-radius: var(--vb-radius-sm) !important; border-top-width: 0 !important; border-left: 4px solid var(--vb-pink) !important;
  box-shadow: var(--vb-shadow);
}

/* ---- ενότητες / εικονίδια ---- */
.wpb_column .vc_icon_element-inner, .feature-box .icon { transition: transform .3s var(--vb-ease); }
.wpb_column:hover .vc_icon_element-inner { transform: translateY(-3px); }

/* ---- footer ---- */
.footer { font-size: 13.5px; }
.footer a { text-decoration: none; }
.footer a:hover { color: #fff !important; }

/* ---- ειδοποίηση cookies -> κάρτα ---- */
#cookie-notice, .cookie-notice-container, #cn-notice-text, .cc-window, #catapult-cookie-bar, .cookie-law-info-bar {
  border-radius: var(--vb-radius) !important;
}

/* ---- κινητό ---- */
@media (max-width: 767px) {
  body p, body li, .wpb_text_column { font-size: 16px; }
  .section-title { font-size: clamp(24px, 7vw, 32px) !important; }
  .single_add_to_cart_button { width: 100%; }
  .woocommerce-tabs ul.tabs, .wc-tabs { display: flex; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
  .products .product-item:hover, .btn:hover, .button:hover { transform: none; }
}
