/* Home-only scope */
body.home main.container{max-width:1180px;margin:0 auto;padding:24px 16px}

/* ===== Reset & Variables ===== */
*{box-sizing:border-box}
html,body{margin:0}
:root{
  --bg:#e8f1e6;
  --panel:#f5faf2;
  --panel-2:#e0eddc;
  --text:#182614;
  --muted:#4d634b;
  --olive:#2f7d2a;     /* κύριο πράσινο (βαθύτερο) */
  --olive-700:#225c20; /* πιο σκούρο για hover/borders */
  --olive-200:#b9dab3; /* ανοιχτό περίγραμμα */
  --white:#ffffff;
  --radius:18px;
  --shadow:0 6px 24px rgba(21,33,20,.10);
  --container:1180px;
}



body{background:var(--bg);color:var(--text);font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
.container{max-width:var(--container);margin:0 auto;padding:0 18px}
.page{padding:18px}

/* ===== Header ===== */
.header{background:var(--panel);border:1px solid var(--olive-200);border-radius:20px;box-shadow:var(--shadow);margin-bottom:18px}
.header .row{display:flex;align-items:center;gap:18px;min-height:68px}
.brand{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-weight:700;
  font-size:22px;
  text-decoration:none;
  color:inherit;
}
.brand-logo{
  height: 1.6cm;   /* ≈ 42px → >=1cm ύψος */
  width: auto;     /* κρατάει την αναλογία */
  display: block;
}
.brand-logo{ max-height:60px; height:auto; }
.nav{display:flex;gap:22px}
.nav a{color:var(--muted);text-decoration:none;padding:8px 0}
.nav a.active,.nav a:hover{color:var(--text);border-bottom:2px solid var(--olive)}
.actions{margin-left:auto;display:flex;align-items:center;gap:10px}
.search input{height:36px;border:1px solid var(--olive-200);background:var(--white);border-radius:10px;padding:0 12px;outline:none}
.icon{height:36px;border:1px solid var(--olive-200);background:var(--white);border-radius:10px;padding:0 10px;cursor:pointer}

/* ===== Buttons ===== */
.btn{display:inline-block;background:var(--olive);color:var(--white);padding:12px 18px;border-radius:12px;text-decoration:none;border:1px solid var(--olive-700);box-shadow:var(--shadow);font-weight:600}
.btn:hover{filter:brightness(.95)}
.btn.sm{padding:10px 14px}

/* ===== Categories / Products / Info ===== */
.cats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:18px 0}
.cat{display:block;background:var(--panel);border:1px solid var(--olive-200);border-radius:16px;padding:14px;text-decoration:none;color:var(--text);box-shadow:var(--shadow)}
.cat-media{height:96px;border-radius:12px;margin-bottom:10px;background:var(--panel-2)}
.cat-title{font-weight:600}
.ph1{background:linear-gradient(120deg,#def4d6,#a7d99a)}
.ph2{background:linear-gradient(120deg,#d6f0cf,#8fcd83)}
.ph3{background:linear-gradient(120deg,#e4f6da,#b3e3a5)}
.ph4{background:linear-gradient(120deg,#eef9e8,#c4ecb4)}


.best h2{margin:10px 0 8px;font-size:22px}
.products{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.product{background:var(--panel);border:1px solid var(--olive-200);border-radius:14px;padding:10px;text-decoration:none;color:var(--text);box-shadow:var(--shadow)}
.p-media{height:110px;border-radius:10px;background:linear-gradient(120deg,#c8d6bc,#9eae82)}
.p-title{margin-top:10px;font-weight:600}
.p-price{color:var(--muted)}

.info{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin:18px 0}
.pill{background:var(--panel);border:1px solid var(--olive-200);border-radius:12px;padding:14px;text-align:center;box-shadow:var(--shadow)}
.newsletter{display:flex;gap:10px;align-items:center;background:var(--panel);border:1px solid var(--olive-200);border-radius:12px;padding:10px 12px;box-shadow:var(--shadow)}
.newsletter label{white-space:nowrap;color:var(--muted)}
.newsletter input{flex:1;height:38px;border:1px solid var(--olive-200);border-radius:10px;background:var(--white);padding:0 12px;outline:none}

/* ===== Slider hero (ΜΟΝΟ αυτό για το hero) ===== */
.hero.slider{
  position: relative;
  isolation: isolate;
  height: clamp(360px, 60vh, 560px);
  background: var(--panel);
  border: 1px solid var(--olive-200);
  border-radius: 20px;
  overflow: hidden;
  margin: 0 0 28px;
  z-index: 0;
}
.hero-slide{
  position: absolute; inset: 0;
  opacity: 0;
  animation: heroFade 18s infinite;
  display: block;
  pointer-events: none;
}
.hero-slide:nth-child(1){animation-delay:0s}
.hero-slide:nth-child(2){animation-delay:6s}
.hero-slide:nth-child(3){animation-delay:12s}

@keyframes heroFade{
  0%,5%{opacity:0}
  10%,30%{opacity:1}
  35%,100%{opacity:0}
}

.hero-slide .hero-media{
  position: absolute; inset: 18px;
  border-radius: 14px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  filter: brightness(.78);
}
.hero-slide .hero-content{
  position: relative; z-index: 2;
  display: flex; flex-direction: column; gap: 14px;
  height: 100%;
  padding: 48px;
  padding-bottom: 110px; /* κρατά χώρο για το κουμπί */
  color: #fff; text-shadow: 0 2px 10px rgba(0,0,0,.18);
  pointer-events: auto;
}

/* ===== Media ===== */
@media (max-width:980px){
  .cats,.products{grid-template-columns:repeat(2,1fr)}
  .info{grid-template-columns:1fr}
  .hero-slide .hero-content{padding:32px}
  .hero-slide .hero-content{ padding-bottom: 96px; }
  .hero-slide .hero-content .btn{ left:24px; bottom:24px; }
}
@media (max-width:560px){
  .nav{display:none}
  .actions .search{display:none}
  .cats,.products{grid-template-columns:1fr}
  .hero-slide h1{font-size:32px}
  .hero-slide .hero-content{ padding:24px; padding-bottom: 84px; }
  .hero-slide .hero-content .btn{ left:16px; bottom:16px; }
}

/* Προσβασιμότητα: παύση animation αν προτιμάται λιγότερη κίνηση */
@media (prefers-reduced-motion: reduce){
  .hero-slide{animation:none;opacity:1;position:relative}
  .hero-slide:not(:first-child){display:none}
}

/* ===== Footer ===== */
.site-footer{
  border-top:1px solid var(--olive-200);
  background:var(--panel);
  margin-top:28px;
}
.site-footer .container{padding:16px 18px}
.footer-top{
  display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap;
  padding:8px 0 6px;
}
.footer-legal{ color:var(--muted) }
.footer-legal a{ color:var(--muted); text-decoration:none }
.footer-legal a:hover{ color:var(--text) }
.footer-legal .sep{ margin:0 8px; opacity:.6 }

.footer-social{ display:flex; gap:10px }
.footer-social .social{
  width:36px; height:36px; display:inline-flex; align-items:center; justify-content:center;
  border:1px solid var(--olive-200); border-radius:999px; background:var(--panel); box-shadow:var(--shadow);
  text-decoration:none;
}
.footer-social .social:hover{ filter:brightness(.96) }
.footer-social svg{ width:18px; height:18px; fill:var(--text) }

.footer-bottom{ border-top:1px solid var(--olive-200); padding-top:10px; color:var(--muted); text-align:center }

.section-title{ margin:18px 0 8px; font-size:22px; }

/* ================================
   WooCommerce Cart + Checkout UI
   (κουμπώνει με το design system σου)
   ================================ */

/* Γενικό container/spacing στις σελίδες cart/checkout */
body.woocommerce-cart .site,
body.woocommerce-checkout .site{
  background: transparent;
}

body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce{
  max-width: var(--container);
  margin: 0 auto;
  padding: 18px 18px;
}

/* Τίτλοι */
body.woocommerce-cart .woocommerce h1,
body.woocommerce-checkout .woocommerce h1,
body.woocommerce-cart .woocommerce h2,
body.woocommerce-checkout .woocommerce h2,
body.woocommerce-cart .woocommerce h3,
body.woocommerce-checkout .woocommerce h3{
  color: var(--text);
}

/* Notices */
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-info{
  background: var(--panel);
  border: 1px solid var(--olive-200);
  border-left: 6px solid var(--olive);
  border-radius: 14px;
  box-shadow: var(--shadow);
  padding: 12px 14px;
  margin: 0 0 14px;
  color: var(--text);
}

/* Links */
.woocommerce a{ color: var(--olive-700); }
.woocommerce a:hover{ color: var(--olive); }

/* Πίνακες (Cart) */
.woocommerce table.shop_table{
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: var(--panel);
  border: 1px solid var(--olive-200);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: var(--shadow);
}

.woocommerce table.shop_table th{
  background: var(--panel-2);
  color: var(--text);
  font-weight: 700;
  border-bottom: 1px solid var(--olive-200);
  padding: 12px 12px;
}

.woocommerce table.shop_table td{
  padding: 12px 12px;
  border-bottom: 1px solid var(--olive-200);
  vertical-align: middle;
}

.woocommerce table.shop_table tr:last-child td{
  border-bottom: 0;
}

/* Product name + remove */
.woocommerce-cart table.shop_table td.product-name a{
  color: var(--text);
  text-decoration: none;
  font-weight: 600;
}
.woocommerce-cart table.shop_table td.product-name a:hover{
  color: var(--olive-700);
}
.woocommerce a.remove{
  color: var(--olive-700) !important;
  border: 1px solid var(--olive-200);
  background: var(--white);
  border-radius: 10px;
  width: 32px;
  height: 32px;
  line-height: 30px;
}
.woocommerce a.remove:hover{
  background: var(--panel-2);
  color: var(--olive-700) !important;
}

/* Inputs (qty, coupon, fields) */
.woocommerce input[type="text"],
.woocommerce input[type="email"],
.woocommerce input[type="tel"],
.woocommerce input[type="password"],
.woocommerce input[type="search"],
.woocommerce textarea,
.woocommerce select{
  height: 40px;
  border: 1px solid var(--olive-200);
  background: var(--white);
  border-radius: 12px;
  padding: 0 12px;
  outline: none;
  color: var(--text);
}

.woocommerce textarea{ height: auto; padding: 10px 12px; }

.woocommerce input:focus,
.woocommerce textarea:focus,
.woocommerce select:focus{
  border-color: var(--olive);
  box-shadow: 0 0 0 3px rgba(47,125,42,.12);
}

/* Buttons (match .btn look) */
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button{
  display: inline-block;
  background: var(--olive);
  color: var(--white);
  padding: 12px 18px;
  border-radius: 12px;
  text-decoration: none;
  border: 1px solid var(--olive-700);
  box-shadow: var(--shadow);
  font-weight: 700;
  cursor: pointer;
}

.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover{
  filter: brightness(.95);
  color: var(--white);
}

.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt{
  background: var(--olive);
  border-color: var(--olive-700);
}

.woocommerce button.button:disabled,
.woocommerce input.button:disabled{
  opacity: .6;
  cursor: not-allowed;
}

/* Secondary buttons (Update cart / Apply coupon) */
.woocommerce-cart button[name="update_cart"],
.woocommerce-cart button[name="apply_coupon"],
.woocommerce-cart .coupon .button{
  background: var(--white);
  color: var(--text);
  border: 1px solid var(--olive-200);
  box-shadow: var(--shadow);
}
.woocommerce-cart button[name="update_cart"]:hover,
.woocommerce-cart button[name="apply_coupon"]:hover,
.woocommerce-cart .coupon .button:hover{
  background: var(--panel-2);
  color: var(--text);
}

/* Cart layout blocks */
.woocommerce-cart .cart-collaterals{
  margin-top: 16px;
}
.woocommerce-cart .cart_totals{
  background: var(--panel);
  border: 1px solid var(--olive-200);
  border-radius: 16px;
  box-shadow: var(--shadow);
  padding: 14px;
}
.woocommerce-cart .cart_totals h2{
  margin-top: 0;
}

/* Checkout columns/card look */
.woocommerce-checkout .woocommerce-checkout{
  display: grid;
  grid-template-columns: 1.25fr .75fr;
  gap: 16px;
  align-items: start;
}

@media (max-width: 980px){
  .woocommerce-checkout .woocommerce-checkout{
    grid-template-columns: 1fr;
  }
}

/* Left: billing/shipping card */
.woocommerce-checkout #customer_details > div{
  background: var(--panel);
  border: 1px solid var(--olive-200);
  border-radius: 16px;
  box-shadow: var(--shadow);
  padding: 14px;
  margin-bottom: 16px;
}

/* Right: order review card */
.woocommerce-checkout #order_review{
  background: var(--panel);
  border: 1px solid var(--olive-200);
  border-radius: 16px;
  box-shadow: var(--shadow);
  padding: 14px;
}

/* ================================
   WooCommerce Blocks: Cart + Checkout
   (match Piloforizo variables)
   ================================ */

/* Page background + container */
body.woocommerce-cart,
body.woocommerce-checkout{
  background: var(--bg);
  color: var(--text);
}

body.woocommerce-cart main,
body.woocommerce-checkout main{
  max-width: var(--container);
  margin: 0 auto;
  padding: 24px 16px;
}

/* --- BLOCKS CART --- */
.wp-block-woocommerce-cart{
  max-width: var(--container);
  margin: 0 auto;
}

.wp-block-woocommerce-cart .wc-block-components-notice-banner,
.wp-block-woocommerce-checkout .wc-block-components-notice-banner{
  background: var(--panel);
  border: 1px solid var(--olive-200);
  border-left: 6px solid var(--olive);
  border-radius: 14px;
  box-shadow: var(--shadow);
  color: var(--text);
}

/* Cart items panel + totals panel */
.wp-block-woocommerce-cart .wc-block-cart__form,
.wp-block-woocommerce-checkout .wc-block-checkout__form{
  gap: 16px;
}

.wp-block-woocommerce-cart .wc-block-cart__items,
.wp-block-woocommerce-cart .wc-block-cart__sidebar,
.wp-block-woocommerce-checkout .wc-block-checkout__main,
.wp-block-woocommerce-checkout .wc-block-checkout__sidebar{
  background: var(--panel);
  border: 1px solid var(--olive-200);
  border-radius: 16px;
  box-shadow: var(--shadow);
  padding: 14px;
}

/* Headings inside blocks */
.wp-block-woocommerce-cart h1,
.wp-block-woocommerce-checkout h1,
.wp-block-woocommerce-cart h2,
.wp-block-woocommerce-checkout h2,
.wp-block-woocommerce-cart h3,
.wp-block-woocommerce-checkout h3{
  color: var(--text);
}

/* Inputs/selects in blocks */
.wp-block-woocommerce-cart input,
.wp-block-woocommerce-cart select,
.wp-block-woocommerce-cart textarea,
.wp-block-woocommerce-checkout input,
.wp-block-woocommerce-checkout select,
.wp-block-woocommerce-checkout textarea{
  border: 1px solid var(--olive-200) !important;
  background: var(--white) !important;
  border-radius: 12px !important;
  color: var(--text) !important;
  outline: none;
}

.wp-block-woocommerce-cart input:focus,
.wp-block-woocommerce-cart select:focus,
.wp-block-woocommerce-checkout input:focus,
.wp-block-woocommerce-checkout select:focus{
  border-color: var(--olive) !important;
  box-shadow: 0 0 0 3px rgba(47,125,42,.12) !important;
}

/* Links */
.wp-block-woocommerce-cart a,
.wp-block-woocommerce-checkout a{
  color: var(--olive-700);
}
.wp-block-woocommerce-cart a:hover,
.wp-block-woocommerce-checkout a:hover{
  color: var(--olive);
}

/* Primary buttons (checkout, place order) */
.wp-block-woocommerce-cart .wc-block-cart__submit-button,
.wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button,
.wp-block-woocommerce-cart button,
.wp-block-woocommerce-checkout button{
  background: var(--olive) !important;
  color: var(--white) !important;
  border: 1px solid var(--olive-700) !important;
  border-radius: 12px !important;
  box-shadow: var(--shadow) !important;
  font-weight: 700 !important;
}

.wp-block-woocommerce-cart .wc-block-cart__submit-button:hover,
.wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button:hover{
  filter: brightness(.95) !important;
}

/* Secondary buttons (apply coupon / update cart) */
.wp-block-woocommerce-cart .wc-block-components-button:not(.wc-block-cart__submit-button),
.wp-block-woocommerce-checkout .wc-block-components-button:not(.wc-block-components-checkout-place-order-button){
  background: var(--white) !important;
  color: var(--text) !important;
  border: 1px solid var(--olive-200) !important;
  box-shadow: var(--shadow) !important;
}

/* Price typography */
.wp-block-woocommerce-cart .wc-block-components-totals-item__value,
.wp-block-woocommerce-checkout .wc-block-components-totals-item__value,
.wp-block-woocommerce-cart .wc-block-formatted-money-amount,
.wp-block-woocommerce-checkout .wc-block-formatted-money-amount{
  color: var(--text);
  font-weight: 700;
}

/* Tighten product rows look */
.wp-block-woocommerce-cart .wc-block-cart-items__row,
.wp-block-woocommerce-cart .wc-block-cart-items__header{
  border-bottom: 1px solid var(--olive-200);
}

/* Coupon row container */
.wp-block-woocommerce-cart .wc-block-components-totals-coupon,
.wp-block-woocommerce-checkout .wc-block-components-totals-coupon{
  background: var(--panel-2);
  border: 1px solid var(--olive-200);
  border-radius: 14px;
  padding: 10px 12px;
}

/* Mobile spacing */
@media (max-width: 980px){
  .wp-block-woocommerce-cart .wc-block-cart__items,
  .wp-block-woocommerce-cart .wc-block-cart__sidebar,
  .wp-block-woocommerce-checkout .wc-block-checkout__main,
  .wp-block-woocommerce-checkout .wc-block-checkout__sidebar{
    padding: 12px;
  }
}

/* TEST: αν αυτό δεν αλλάξει το Cart/Checkout, δεν φορτώνει το CSS εκεί */
body.woocommerce-cart,
body.woocommerce-checkout{
  background: pink !important;
}

body.woocommerce-cart main,
body.woocommerce-checkout main{
  outline: 6px solid red !important;
}
/* Order review table match */
.woocommerce-checkout #order_review table.shop_table{
  box-shadow: none;
  border-radius: 14px;
}

/* Payment box */
.woocommerce-checkout #payment{
  background: transparent;
}
.woocommerce-checkout #payment ul.payment_methods{
  background: var(--panel-2);
  border: 1px solid var(--olive-200);
  border-radius: 14px;
  padding: 10px 12px;
}
.woocommerce-checkout #payment .payment_box{
  background: var(--white);
  border: 1px solid var(--olive-200);
  border-radius: 14px;
  padding: 10px 12px;
  margin-top: 10px;
}

/* Shipping methods list */
.woocommerce ul#shipping_method li,
.woocommerce-checkout ul#shipping_method li{
  margin: 6px 0;
}

/* Coupon toggle on checkout */
.woocommerce-form-coupon-toggle .woocommerce-info{
  border-left-color: var(--olive);
}

/* Place order button full width on mobile */
@media (max-width: 560px){
  .woocommerce-checkout #place_order{
    width: 100%;
  }
}

/* Fix small typography */
.woocommerce .woocommerce-Price-amount{
  font-weight: 700;
  color: var(--text);
}
.woocommerce .woocommerce-Price-currencySymbol{
  font-weight: 700;
}