@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/roboto-slab-400-greek-ext.woff2) format('woff2');unicode-range:U+1F00-1FFF;}
@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/roboto-slab-400-greek.woff2) format('woff2');unicode-range:U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;}
@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/roboto-slab-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/roboto-slab-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/roboto-slab-500-greek-ext.woff2) format('woff2');unicode-range:U+1F00-1FFF;}
@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/roboto-slab-500-greek.woff2) format('woff2');unicode-range:U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;}
@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/roboto-slab-500-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/roboto-slab-500-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/roboto-slab-700-greek-ext.woff2) format('woff2');unicode-range:U+1F00-1FFF;}
@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/roboto-slab-700-greek.woff2) format('woff2');unicode-range:U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;}
@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/roboto-slab-700-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/roboto-slab-700-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Source Sans 3';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/source-sans-3-400-i-greek-ext.woff2) format('woff2');unicode-range:U+1F00-1FFF;}
@font-face{font-family:'Source Sans 3';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/source-sans-3-400-i-greek.woff2) format('woff2');unicode-range:U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;}
@font-face{font-family:'Source Sans 3';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/source-sans-3-400-i-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Source Sans 3';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/source-sans-3-400-i-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/source-sans-3-400-greek-ext.woff2) format('woff2');unicode-range:U+1F00-1FFF;}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/source-sans-3-400-greek.woff2) format('woff2');unicode-range:U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/source-sans-3-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/source-sans-3-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/source-sans-3-600-greek-ext.woff2) format('woff2');unicode-range:U+1F00-1FFF;}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/source-sans-3-600-greek.woff2) format('woff2');unicode-range:U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/source-sans-3-600-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Source Sans 3';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/source-sans-3-600-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
/* ============================================================
   Πολύτεκνος Αγρότης — «Μαντρί & Λινό»
   Tokens από το ενεργό Novamira design.
   ============================================================ */

:root{
  --bg:#F2ECE1;
  --surface:#FBF7F0;
  --ink:#14120D;
  --accent:#B2532B;
  --accent-dark:#8E401F;
  --wheat:#A8892F;
  --sage:#869072;
  --muted:#6E6353;
  --line:#DCD2C2;

  --r:2px;

  --s-xs:8px;
  --s-sm:16px;
  --s-md:32px;
  --s-lg:64px;
  --s-xl:112px;

  --font-display:'Roboto Slab',Georgia,'Times New Roman',serif;
  --font-body:'Source Sans 3','Helvetica Neue',Helvetica,Arial,sans-serif;

  --wrap:1240px;
  --gut:24px;
  --header-h:76px;
}

/* Ουδετεροποίηση UA defaults με :where() ώστε να μη νικάει τα component rules */
:where(*,*::before,*::after){box-sizing:border-box;}
:where(body,h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd,ul,ol,fieldset){margin:0;padding:0;}
:where(ul[class],ol[class]){list-style:none;}
:where(img,svg,video){display:block;max-width:100%;height:auto;}
:where(button,input,select,textarea){font:inherit;color:inherit;}
:where(a){color:inherit;}
:where(table){border-collapse:collapse;width:100%;}

html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}

body{
  background:var(--bg);
  color:var(--ink);
  font-family:var(--font-body);
  font-size:17px;
  line-height:1.65;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

h1,h2,h3,h4,h5,h6,.display{
  font-family:var(--font-display);
  font-weight:700;
  line-height:1.08;
  letter-spacing:-0.005em;
}
h1{font-size:clamp(2.4rem,5.2vw,4.1rem);}
h2{font-size:clamp(1.85rem,3.4vw,2.85rem);line-height:1.1;}
h3{font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.15;}
h4{font-size:1.15rem;line-height:1.2;}

p{max-width:66ch;}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:3px;}
a:hover{color:var(--accent);}

strong,b{font-weight:600;}
em,i{font-style:italic;}

::selection{background:var(--wheat);color:var(--surface);}

:focus-visible{outline:2px solid var(--accent);outline-offset:3px;}

.skip-link{
  position:absolute;left:-9999px;top:0;z-index:999;
  background:var(--ink);color:var(--surface);padding:12px 18px;
}
.skip-link:focus{left:8px;top:8px;}

.screen-reader-text{
  position:absolute!important;width:1px;height:1px;overflow:hidden;
  clip:rect(1px,1px,1px,1px);white-space:nowrap;
}

/* ---------- Layout ---------- */

.wrap{
  width:100%;
  max-width:var(--wrap);
  margin-inline:auto;
  padding-inline:var(--gut);
}

.section{padding-block:clamp(56px,8vw,var(--s-xl));}
.section--tight{padding-block:clamp(40px,5vw,var(--s-lg));}
.section--ink{background:var(--ink);color:var(--surface);}
.section--surface{background:var(--surface);}

.rule{border:0;border-top:1px solid var(--line);margin:0;}
.section--ink .rule{border-top-color:rgba(251,247,240,.22);}

/* Επικεφαλίδα ενότητας: τίτλος αριστερά, σύνδεσμος δεξιά στην ίδια γραμμή */
.sec-head{
  display:flex;align-items:baseline;justify-content:space-between;
  gap:var(--s-md);flex-wrap:wrap;
  padding-bottom:var(--s-sm);
  border-bottom:1px solid var(--line);
  margin-bottom:var(--s-md);
}
.section--ink .sec-head{border-bottom-color:rgba(251,247,240,.22);}
.sec-head__link{
  font-size:.82rem;letter-spacing:.09em;text-transform:uppercase;
  font-weight:600;text-decoration:none;border-bottom:1.5px solid var(--accent);
  padding-bottom:2px;white-space:nowrap;
}
.sec-lede{color:var(--muted);max-width:56ch;margin-top:-8px;margin-bottom:var(--s-md);}
.section--ink .sec-lede{color:rgba(251,247,240,.72);}

.label{
  font-size:.74rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;
  color:var(--muted);
}

/* ---------- Κουμπιά ---------- */

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--font-body);font-size:.95rem;font-weight:600;
  letter-spacing:.02em;
  padding:13px 26px;border-radius:var(--r);
  border:1.5px solid var(--ink);background:var(--ink);color:var(--surface);
  text-decoration:none;cursor:pointer;
  transition:background .18s ease,border-color .18s ease,color .18s ease;
}
.btn:hover,.btn:focus-visible{background:var(--accent);border-color:var(--accent);color:#fff;}
.btn--ghost{background:transparent;color:var(--ink);}
.btn--ghost:hover,.btn--ghost:focus-visible{background:var(--ink);border-color:var(--ink);color:var(--surface);}
.section--ink .btn{background:var(--surface);border-color:var(--surface);color:var(--ink);}
.section--ink .btn:hover{background:var(--accent);border-color:var(--accent);color:#fff;}
.section--ink .btn--ghost{background:transparent;color:var(--surface);border-color:var(--surface);}
.section--ink .btn--ghost:hover{background:var(--surface);color:var(--ink);}
.btn--sm{padding:9px 18px;font-size:.85rem;}
.btn--block{width:100%;}

/* ---------- Header ---------- */

.site-header{
  background:var(--bg);
  border-bottom:1px solid var(--line);
  position:sticky;top:0;z-index:60;
}
.admin-bar .site-header{top:32px;}
@media (max-width:782px){.admin-bar .site-header{top:46px;}}

.header-inner{
  min-height:var(--header-h);
  display:flex;align-items:center;gap:var(--s-md);
}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex:0 0 auto;}
.brand img{height:44px;width:auto;}
.brand__text{
  font-family:var(--font-display);font-weight:700;font-size:.95rem;
  line-height:1.05;letter-spacing:.02em;text-transform:uppercase;
}
.brand__text span{display:block;}

.nav{margin-left:auto;}
.nav ul{display:flex;align-items:center;gap:26px;list-style:none;}
.nav a{
  text-decoration:none;font-size:.94rem;font-weight:600;
  padding-block:6px;border-bottom:2px solid transparent;
  transition:border-color .16s ease,color .16s ease;
}
.nav a:hover{border-bottom-color:var(--wheat);}
.nav .current-menu-item>a,.nav .current_page_item>a,
.nav .current-menu-parent>a,.nav .current-menu-ancestor>a{border-bottom-color:var(--wheat);}
.nav .sub-menu{display:none;}

.header-actions{display:flex;align-items:center;gap:14px;flex:0 0 auto;}
.cart-link{
  display:inline-flex;align-items:center;gap:7px;text-decoration:none;
  font-size:.9rem;font-weight:600;white-space:nowrap;
}
.cart-link__count{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:21px;height:21px;padding:0 6px;
  background:var(--accent);color:#fff;border-radius:var(--r);
  font-size:.74rem;font-weight:600;line-height:1;
}
.cart-link__count[data-empty="1"]{background:var(--line);color:var(--muted);}

.nav-toggle{
  display:none;background:transparent;border:1.5px solid var(--ink);
  border-radius:var(--r);padding:8px 12px;font-size:.85rem;font-weight:600;cursor:pointer;
}

@media (max-width:960px){
  .nav-toggle{display:inline-block;order:3;}
  .header-actions{margin-left:auto;order:2;}
  .nav{
    order:4;flex-basis:100%;margin-left:0;
    display:none;border-top:1px solid var(--line);
    padding-block:var(--s-sm);
  }
  .nav.is-open{display:block;}
  .header-inner{flex-wrap:wrap;padding-block:12px;}
  .nav ul{flex-direction:column;align-items:flex-start;gap:2px;}
  .nav a{display:block;padding:9px 0;width:100%;}
}

/* ---------- Hero ---------- */

.hero{position:relative;border-bottom:1px solid var(--line);overflow:hidden;}
.hero__grid{
  display:grid;grid-template-columns:minmax(0,46%) minmax(0,54%);
  align-items:center;gap:var(--s-lg);
  min-height:min(78vh,660px);
}
.hero__text{padding-block:clamp(48px,7vw,96px);}
.hero__mark{width:74px;height:auto;margin-bottom:20px;}
.hero h1{margin-bottom:20px;max-width:14ch;}
.hero h1 .accent{color:var(--accent);}
.hero__lede{font-size:1.12rem;color:var(--muted);max-width:44ch;margin-bottom:30px;}
.hero__cta{display:flex;flex-wrap:wrap;gap:14px;}

.hero__media{
  position:relative;align-self:stretch;
  margin-right:calc((100vw - min(100vw, var(--wrap)))/-2 - var(--gut));
}
.hero__media img{
  width:100%;height:100%;min-height:340px;object-fit:cover;
  border-radius:var(--r);
}

@media (max-width:900px){
  .hero__grid{grid-template-columns:1fr;gap:0;min-height:0;}
  .hero__media{order:-1;margin-right:calc(var(--gut) * -1);margin-left:calc(var(--gut) * -1);}
  .hero__media img{min-height:0;aspect-ratio:4/3;border-radius:0;}
  .hero__text{padding-block:40px 48px;}
  .hero h1{max-width:none;}
}

/* ---------- Δύο μεγάλα πλακίδια κατηγοριών ---------- */

.cat-duo{display:grid;grid-template-columns:1.15fr .85fr;gap:var(--s-md);}
.cat-tile{
  position:relative;display:block;text-decoration:none;
  background:var(--surface);border-radius:var(--r);overflow:hidden;
  border:1px solid var(--line);
}
.cat-tile img{width:100%;aspect-ratio:16/11;object-fit:cover;transition:transform .5s ease;}
.cat-tile:hover img{transform:scale(1.03);}
.cat-tile__body{padding:22px 24px 24px;}
.cat-tile__body h3{margin-bottom:6px;}
.cat-tile__subs{color:var(--muted);font-size:.94rem;}
.cat-tile__go{
  display:inline-block;margin-top:14px;font-size:.82rem;font-weight:600;
  letter-spacing:.09em;text-transform:uppercase;
  border-bottom:1.5px solid var(--accent);padding-bottom:2px;
}
@media (max-width:860px){
  .cat-duo{grid-template-columns:1fr;}
  .cat-tile img{aspect-ratio:16/9;}
}

/* ---------- Πλέγμα προϊόντων ---------- */

.grid-products{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--s-md) var(--s-md);
  list-style:none;margin:0;padding:0;
}
@media (max-width:900px){.grid-products{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:520px){.grid-products{grid-template-columns:1fr;gap:var(--s-md);}}

.card-product{position:relative;}
.card-product a.card-product__link{text-decoration:none;display:block;}
.card-product__media{
  background:var(--surface);border-radius:var(--r);overflow:hidden;
  border:1px solid var(--line);
}
.card-product__media img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .5s ease;}
.card-product:hover .card-product__media img{transform:scale(1.035);}
.card-product__title{
  font-family:var(--font-display);font-weight:700;font-size:1.08rem;line-height:1.2;
  margin-top:14px;
}
.card-product__cat{font-size:.76rem;letter-spacing:.09em;text-transform:uppercase;color:var(--sage);font-weight:600;margin-top:12px;}
.card-product__price{color:var(--muted);margin-top:4px;font-size:1rem;}
.card-product__price ins{text-decoration:none;color:var(--accent);font-weight:600;}
.card-product__price del{opacity:.55;margin-right:6px;}
.card-product .button,.card-product .added_to_cart{
  display:inline-block;margin-top:12px;font-size:.82rem;font-weight:600;
  letter-spacing:.06em;text-transform:uppercase;text-decoration:none;
  border-bottom:1.5px solid var(--accent);padding-bottom:2px;
}

.ph{
  display:flex;align-items:center;justify-content:center;
  background:
    repeating-linear-gradient(45deg,rgba(20,18,13,.045) 0 2px,transparent 2px 9px),
    var(--surface);
}
.ph img{width:44%;max-width:130px;opacity:.5;aspect-ratio:auto!important;object-fit:contain!important;}

/* ---------- Συνταγές ---------- */

.recipes-lead{
  display:grid;grid-template-columns:1.5fr 1fr;gap:var(--s-md);align-items:start;
}
@media (max-width:900px){.recipes-lead{grid-template-columns:1fr;}}

.recipe-feature{text-decoration:none;display:block;}
.recipe-feature__media{
  border-radius:var(--r);overflow:hidden;border:1px solid var(--line);background:var(--surface);
}
.recipe-feature__media img{width:100%;aspect-ratio:3/2;object-fit:cover;transition:transform .5s ease;}
.recipe-feature:hover .recipe-feature__media img{transform:scale(1.03);}
.recipe-feature h3{font-size:clamp(1.5rem,2.6vw,2.1rem);margin-top:18px;}
.recipe-feature__meta{color:var(--muted);font-size:.92rem;margin-top:8px;}

.recipe-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line);}
.section--ink .recipe-list{border-top-color:rgba(251,247,240,.22);}
.recipe-list li{border-bottom:1px solid var(--line);}
.section--ink .recipe-list li{border-bottom-color:rgba(251,247,240,.22);}
.recipe-list a{
  display:grid;grid-template-columns:88px 1fr;gap:16px;align-items:center;
  padding:16px 0;text-decoration:none;
}
.recipe-list img{width:88px;height:66px;object-fit:cover;border-radius:var(--r);}
.recipe-list .ph{width:88px;height:66px;border-radius:var(--r);}
.recipe-list h4{font-size:1.02rem;}
.recipe-list .meta{font-size:.85rem;color:var(--muted);margin-top:3px;}
.section--ink .recipe-list .meta{color:rgba(251,247,240,.62);}

.grid-recipes{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-md);
  list-style:none;margin:0;padding:0;
}
@media (max-width:900px){.grid-recipes{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:560px){.grid-recipes{grid-template-columns:1fr;}}
.card-recipe a{text-decoration:none;display:block;}
.card-recipe__media{border-radius:var(--r);overflow:hidden;border:1px solid var(--line);background:var(--surface);}
.card-recipe__media img,.card-recipe__media .ph{width:100%;aspect-ratio:3/2;object-fit:cover;}
.card-recipe__media .ph{display:flex;}
.card-recipe__cat{font-size:.74rem;letter-spacing:.09em;text-transform:uppercase;color:var(--sage);font-weight:600;margin-top:12px;}
.card-recipe h3{font-size:1.2rem;margin-top:5px;}
.card-recipe__meta{font-size:.88rem;color:var(--muted);margin-top:6px;}
.has-video{
  display:inline-flex;align-items:center;gap:6px;
  font-size:.74rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:var(--accent);
}

/* ---------- Σελίδα συνταγής ---------- */

.recipe-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:var(--s-lg);align-items:start;}
@media (max-width:900px){.recipe-hero{grid-template-columns:1fr;gap:var(--s-md);}}
.recipe-hero__media img{width:100%;border-radius:var(--r);border:1px solid var(--line);}
.recipe-hero h1{margin-bottom:14px;}
.recipe-intro{font-size:1.08rem;color:var(--muted);}

.recipe-facts{
  display:flex;flex-wrap:wrap;gap:0;margin-top:26px;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
}
.recipe-facts div{padding:14px 26px 14px 0;margin-right:26px;border-right:1px solid var(--line);}
.recipe-facts div:last-child{border-right:0;margin-right:0;padding-right:0;}
.recipe-facts dt{font-size:.74rem;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-weight:600;}
.recipe-facts dd{font-family:var(--font-display);font-weight:700;font-size:1.35rem;line-height:1.2;margin-top:2px;}

.recipe-body{display:grid;grid-template-columns:.85fr 1.15fr;gap:var(--s-lg);align-items:start;}
@media (max-width:900px){.recipe-body{grid-template-columns:1fr;gap:var(--s-md);}}
.ingredients{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:26px 28px;}
.ingredients h2{font-size:1.35rem;margin-bottom:14px;}
.ingredients ul{list-style:none;margin:0;padding:0;}
.ingredients li{padding:9px 0;border-bottom:1px solid var(--line);}
.ingredients li:last-child{border-bottom:0;}
.steps h2{font-size:1.35rem;margin-bottom:14px;}
.steps ol{list-style:none;margin:0;padding:0;counter-reset:step;}
.steps li{
  counter-increment:step;position:relative;
  padding:0 0 20px 52px;border-bottom:1px solid var(--line);margin-bottom:20px;
}
.steps li:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0;}
.steps li::before{
  content:counter(step);position:absolute;left:0;top:-2px;
  font-family:var(--font-display);font-weight:700;font-size:1.9rem;
  color:var(--wheat);line-height:1;
}
.recipe-tip{
  margin-top:var(--s-md);border-left:3px solid var(--wheat);
  padding:6px 0 6px 20px;color:var(--muted);
}
.recipe-tip strong{display:block;color:var(--ink);font-weight:600;margin-bottom:4px;}

.video-embed{
  position:relative;width:100%;background:var(--ink);border-radius:var(--r);overflow:hidden;
}
.video-embed iframe,.video-embed video{width:100%;aspect-ratio:16/9;display:block;border:0;}
.video-embed.is-vertical iframe{aspect-ratio:9/16;max-height:78vh;}
.video-embed blockquote{margin:0;}

/* ---------- Ενότητα «η ιστορία» ---------- */

.story{display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:stretch;}
@media (max-width:900px){.story{grid-template-columns:1fr;}}
.story__media img{width:100%;height:100%;min-height:320px;object-fit:cover;}
.story__text{padding:clamp(36px,5vw,72px);display:flex;flex-direction:column;justify-content:center;}
.story__text h2{margin-bottom:18px;}
.story__text p{color:rgba(251,247,240,.78);margin-bottom:14px;}
.story__text .btn{align-self:flex-start;margin-top:12px;}

/* ---------- Λωρίδα εγγυήσεων ---------- */

.promises{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-md);}
@media (max-width:860px){.promises{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:480px){.promises{grid-template-columns:1fr;}}
.promises div{border-top:2px solid var(--ink);padding-top:14px;}
.promises h4{font-size:1rem;margin-bottom:4px;}
.promises p{font-size:.92rem;color:var(--muted);}

/* ---------- Footer ---------- */

.site-footer{background:var(--ink);color:var(--surface);padding-block:var(--s-lg) var(--s-md);}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:var(--s-md);}
@media (max-width:900px){.footer-grid{grid-template-columns:1fr 1fr;gap:var(--s-md);}}
@media (max-width:520px){.footer-grid{grid-template-columns:1fr;}}
.site-footer h4{
  font-family:var(--font-body);font-size:.76rem;font-weight:600;
  letter-spacing:.09em;text-transform:uppercase;color:rgba(251,247,240,.55);
  margin-bottom:14px;
}
.site-footer ul{list-style:none;margin:0;padding:0;}
.site-footer li{margin-bottom:8px;}
.site-footer a{text-decoration:none;font-size:.95rem;}
.site-footer a:hover{color:var(--wheat);}
.site-footer p{font-size:.95rem;color:rgba(251,247,240,.72);}
.footer-brand img{height:88px;width:auto;margin-bottom:16px;filter:invert(1) brightness(1.6);}
.footer-bottom{
  margin-top:var(--s-md);padding-top:var(--s-sm);
  border-top:1px solid rgba(251,247,240,.2);
  display:flex;justify-content:space-between;gap:var(--s-sm);flex-wrap:wrap;
  font-size:.85rem;color:rgba(251,247,240,.6);
}

/* ---------- Σελίδες περιεχομένου ---------- */

.page-head{padding-block:clamp(40px,5vw,72px) var(--s-md);border-bottom:1px solid var(--line);}
.page-head h1{max-width:20ch;}
.page-head .label{margin-bottom:12px;display:block;}
.page-head p{color:var(--muted);margin-top:14px;font-size:1.05rem;}

.entry{max-width:70ch;}
.entry h2{margin:36px 0 12px;}
.entry h3{margin:28px 0 10px;}
.entry p{margin-bottom:16px;}
.entry ul,.entry ol{margin:0 0 16px 20px;}
.entry li{margin-bottom:6px;}
.entry img{border-radius:var(--r);margin-block:20px;}
.entry blockquote{
  border-left:3px solid var(--wheat);padding:4px 0 4px 20px;margin:24px 0;
  border-top:0;border-right:0;border-bottom:0;color:var(--muted);font-size:1.08rem;
}

/* ---------- Φίλτρα / πλοήγηση αρχείου ---------- */

.chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0;}
.chips a{
  display:inline-block;text-decoration:none;font-size:.86rem;font-weight:600;
  padding:7px 14px;border:1px solid var(--line);border-radius:var(--r);
  background:var(--surface);
  transition:background .16s ease,border-color .16s ease,color .16s ease;
}
.chips a:hover{border-color:var(--ink);}
.chips a[aria-current="true"]{background:var(--ink);border-color:var(--ink);color:var(--surface);}

.pagination{margin-top:var(--s-lg);display:flex;justify-content:center;}
.pagination .page-numbers{
  display:inline-block;padding:8px 14px;text-decoration:none;
  border:1px solid var(--line);border-radius:var(--r);margin:0 4px;background:var(--surface);
  font-weight:600;font-size:.9rem;
}
.pagination .page-numbers.current{background:var(--ink);color:var(--surface);border-color:var(--ink);}

.empty-state{
  border:1px dashed var(--line);border-radius:var(--r);
  padding:clamp(32px,5vw,56px);background:var(--surface);
  max-width:62ch;
}
.empty-state h3{margin-bottom:10px;}
.empty-state p{color:var(--muted);margin-bottom:18px;}

/* ---------- Φόρμες ---------- */

input[type=text],input[type=email],input[type=tel],input[type=url],input[type=password],
input[type=search],input[type=number],textarea,select{
  width:100%;background:var(--surface);color:var(--ink);
  border:1px solid var(--line);border-radius:var(--r);
  padding:11px 13px;font-size:1rem;
}
input:focus,textarea:focus,select:focus{border-color:var(--ink);outline:none;}
textarea{min-height:150px;resize:vertical;}
label{display:block;font-size:.88rem;font-weight:600;margin-bottom:6px;}
::placeholder{color:#9a9081;opacity:1;}
/* ============================================================
   WooCommerce — προσαρμογή στο design «Μαντρί & Λινό»
   ============================================================ */

.woocommerce-notices-wrapper:empty{display:none;}
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-noreviews{
  background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--accent);
  border-radius:var(--r);padding:14px 18px;margin-bottom:var(--s-md);list-style:none;
  font-size:.96rem;
}
.woocommerce-error{border-left-color:#a4342a;}
.woocommerce-message .button,.woocommerce-info .button{
  float:right;margin-left:14px;background:transparent;border:0;padding:0;
  font-weight:600;text-decoration:none;border-bottom:1.5px solid var(--accent);
  color:var(--ink);font-size:.9rem;
}

/* Πλέγμα καταστήματος */
.woocommerce ul.products{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--s-md);list-style:none;margin:0;padding:0;
}
@media (max-width:900px){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:520px){.woocommerce ul.products{grid-template-columns:1fr;}}
.woocommerce ul.products li.product{margin:0;padding:0;width:auto;float:none;text-align:left;}
.woocommerce ul.products li.product a img{
  width:100%;aspect-ratio:4/5;object-fit:cover;margin:0;border-radius:var(--r);
  border:1px solid var(--line);background:var(--surface);transition:transform .5s ease;
}
.woocommerce ul.products li.product:hover a img{transform:scale(1.03);}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--font-display);font-weight:700;font-size:1.08rem;line-height:1.2;
  padding:14px 0 0;margin:0;
}
.woocommerce ul.products li.product .price{
  color:var(--muted);font-size:1rem;margin:4px 0 0;font-weight:400;display:block;
}
.woocommerce ul.products li.product .price ins{text-decoration:none;color:var(--accent);font-weight:600;}
.woocommerce ul.products li.product .price del{opacity:.55;margin-right:6px;}
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart{
  display:inline-block;margin-top:12px;background:transparent;color:var(--ink);
  padding:0 0 2px;border:0;border-bottom:1.5px solid var(--accent);border-radius:0;
  font-size:.82rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
}
.woocommerce ul.products li.product .button:hover{background:transparent;color:var(--accent);}
.woocommerce span.onsale{
  background:var(--accent);color:#fff;border-radius:var(--r);
  font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  padding:4px 9px;min-height:0;min-width:0;line-height:1.3;
  position:absolute;top:10px;left:10px;right:auto;margin:0;
}

.woocommerce-result-count{color:var(--muted);font-size:.92rem;}
.woocommerce .woocommerce-ordering select{width:auto;min-width:200px;}
.shop-toolbar{
  display:flex;align-items:center;justify-content:space-between;gap:var(--s-sm);
  flex-wrap:wrap;padding-bottom:var(--s-sm);border-bottom:1px solid var(--line);
  margin-bottom:var(--s-md);
}
.shop-toolbar .woocommerce-result-count,
.shop-toolbar .woocommerce-ordering{margin:0;float:none;}

/* Σελίδα προϊόντος */
.woocommerce div.product{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-lg);align-items:start;}
@media (max-width:900px){.woocommerce div.product{grid-template-columns:1fr;gap:var(--s-md);}}
.woocommerce div.product div.images,
.woocommerce div.product div.summary{width:auto;float:none;margin:0;}
.woocommerce div.product div.images img{border-radius:var(--r);border:1px solid var(--line);}
.woocommerce div.product .flex-control-thumbs{display:flex;gap:10px;margin-top:10px;padding:0;}
.woocommerce div.product .flex-control-thumbs li{width:auto;flex:0 0 84px;margin:0;float:none;}
.woocommerce div.product .product_title{margin-bottom:10px;}
.woocommerce div.product p.price,.woocommerce div.product span.price{
  font-family:var(--font-display);font-weight:700;font-size:1.7rem;color:var(--ink);
  margin-bottom:18px;
}
.woocommerce div.product p.price ins{text-decoration:none;color:var(--accent);}
.woocommerce div.product p.price del{opacity:.5;font-size:1.1rem;margin-right:8px;}
.woocommerce div.product .woocommerce-product-details__short-description{
  color:var(--muted);margin-bottom:22px;
}
.woocommerce div.product form.cart{display:flex;gap:12px;align-items:stretch;flex-wrap:wrap;margin-bottom:22px;}
.woocommerce div.product form.cart .variations{width:100%;}
.woocommerce .quantity .qty{width:84px;text-align:center;height:100%;min-height:48px;}
.woocommerce div.product form.cart .button,
.woocommerce button.button,.woocommerce a.button,.woocommerce input.button,
.woocommerce button.button.alt,.woocommerce a.button.alt,.woocommerce input.button.alt,
.woocommerce #respond input#submit{
  background:var(--ink);color:var(--surface);border:1.5px solid var(--ink);
  border-radius:var(--r);padding:13px 26px;font-family:var(--font-body);
  font-size:.95rem;font-weight:600;letter-spacing:.02em;line-height:1.2;
  text-transform:none;transition:background .18s ease,border-color .18s ease;
}
.woocommerce button.button:hover,.woocommerce a.button:hover,.woocommerce input.button:hover,
.woocommerce button.button.alt:hover,.woocommerce a.button.alt:hover,
.woocommerce #respond input#submit:hover{background:var(--accent);border-color:var(--accent);color:#fff;}
.woocommerce .product_meta{font-size:.9rem;color:var(--muted);border-top:1px solid var(--line);padding-top:16px;}
.woocommerce .product_meta>span{display:block;margin-bottom:4px;}

.woocommerce div.product .woocommerce-tabs{grid-column:1/-1;margin-top:var(--s-md);}
.woocommerce div.product .woocommerce-tabs ul.tabs{
  padding:0;margin:0 0 var(--s-md);border-bottom:1px solid var(--line);display:flex;gap:0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none;}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0;margin:0 26px 0 0;padding:0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{border-bottom-color:var(--accent);}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  padding:10px 0;font-family:var(--font-body);font-weight:600;font-size:.94rem;color:var(--ink);
}
.woocommerce div.product .woocommerce-tabs .panel{max-width:70ch;}
.woocommerce div.product .woocommerce-tabs .panel h2{font-size:1.35rem;margin-bottom:12px;}

.related.products,.upsells.products{grid-column:1/-1;margin-top:var(--s-lg);}
.related.products>h2,.upsells.products>h2,.cross-sells>h2{
  font-size:1.5rem;padding-bottom:var(--s-sm);border-bottom:1px solid var(--line);
  margin-bottom:var(--s-md);
}

/* Καλάθι */
.woocommerce table.shop_table{
  border:1px solid var(--line);border-radius:var(--r);background:var(--surface);
  border-collapse:separate;border-spacing:0;
}
.woocommerce table.shop_table th{
  font-family:var(--font-body);font-size:.76rem;letter-spacing:.09em;text-transform:uppercase;
  color:var(--muted);font-weight:600;padding:14px 16px;border-bottom:1px solid var(--line);
}
.woocommerce table.shop_table td{padding:16px;border-top:1px solid var(--line);}
.woocommerce table.shop_table img{width:72px;border-radius:var(--r);}
.woocommerce-cart table.cart td.actions .coupon .input-text{width:180px;display:inline-block;margin-right:8px;}
.woocommerce-cart .cart-collaterals{margin-top:var(--s-md);display:flex;justify-content:flex-end;}
.woocommerce .cart_totals{width:100%;max-width:440px;}
.woocommerce .cart_totals h2{font-size:1.35rem;margin-bottom:12px;}
.woocommerce-cart .wc-proceed-to-checkout{padding-top:16px;}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{display:block;text-align:center;}

/* Ταμείο */
.woocommerce form.checkout{display:grid;grid-template-columns:1.1fr .9fr;gap:var(--s-lg);align-items:start;}
@media (max-width:900px){.woocommerce form.checkout{grid-template-columns:1fr;gap:var(--s-md);}}
.woocommerce form.checkout #customer_details{grid-column:1;}
.woocommerce form.checkout h3{font-size:1.35rem;margin-bottom:14px;}
.woocommerce form .form-row{padding:0;margin-bottom:14px;}
.woocommerce form .form-row label{font-size:.88rem;}
.woocommerce-checkout #payment{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);}
.woocommerce-checkout #payment ul.payment_methods{border-bottom:1px solid var(--line);padding:18px;}
.woocommerce-checkout #payment div.form-row{padding:18px;}
.woocommerce-checkout #payment div.payment_box{background:var(--bg);border-radius:var(--r);}
.woocommerce-checkout #payment div.payment_box::before{display:none;}

/* Ο λογαριασμός μου */
.woocommerce-account .woocommerce-MyAccount-navigation{width:26%;float:left;}
.woocommerce-account .woocommerce-MyAccount-content{width:70%;float:right;}
@media (max-width:768px){
  .woocommerce-account .woocommerce-MyAccount-navigation,
  .woocommerce-account .woocommerce-MyAccount-content{width:100%;float:none;}
  .woocommerce-account .woocommerce-MyAccount-navigation{margin-bottom:var(--s-md);}
}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--line);}
.woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--line);}
.woocommerce-MyAccount-navigation li a{display:block;padding:12px 0;text-decoration:none;font-weight:600;font-size:.95rem;}
.woocommerce-MyAccount-navigation li.is-active a{color:var(--accent);}

/* Breadcrumb */
.woocommerce .woocommerce-breadcrumb{
  font-size:.85rem;color:var(--muted);margin-bottom:var(--s-sm);
}
.woocommerce .woocommerce-breadcrumb a{text-decoration:none;}

/* Κριτικές */
.woocommerce #reviews #comments ol.commentlist li .comment-text{
  border:1px solid var(--line);border-radius:var(--r);background:var(--surface);padding:18px;
}
.woocommerce .star-rating span{color:var(--wheat);}
.woocommerce p.stars a{color:var(--wheat);}

/* placeholders */
.cat-tile .ph{aspect-ratio:16/11;width:100%;}
.hero__media .ph{min-height:340px;height:100%;width:100%;}
.card-product__media .ph{aspect-ratio:4/5;width:100%;}
.recipe-feature__media .ph{aspect-ratio:3/2;width:100%;}
.recipe-hero__media .ph{aspect-ratio:3/2;width:100%;border-radius:var(--r);border:1px solid var(--line);}
.story__media .ph{min-height:320px;height:100%;width:100%;}
@media (max-width:900px){.cat-tile .ph{aspect-ratio:16/9;}.hero__media .ph{min-height:0;aspect-ratio:4/3;}}

/* hero height cap */
@media (min-width:901px){
.hero__grid{align-items:stretch;min-height:0;}
.hero__text{align-self:center;}
.hero__media{height:min(80vh,640px);}
.hero__media img{height:100%;min-height:0;}
.hero__media .ph{height:100%;min-height:0;}
}

/* story media fill */
.story__media{position:relative;min-height:480px;overflow:hidden;}
.story__media img,.story__media .ph{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;min-height:0;}
@media (max-width:900px){.story__media{min-height:0;position:static;}.story__media img,.story__media .ph{position:static;aspect-ratio:4/3;height:auto;}}

/* footer brand */
.footer-brand img{height:84px;width:auto;margin:0 0 12px;filter:invert(1);}
.footer-brand__name{display:block;font-family:var(--font-display);font-weight:700;font-size:1.05rem;line-height:1.1;letter-spacing:.02em;text-transform:uppercase;margin-bottom:16px;}

/* woo blocks cart-checkout */
.woocommerce-cart .entry,.woocommerce-checkout .entry,.woocommerce-account .entry{max-width:none;}
.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout{max-width:none;}
.wc-block-components-button:not(.is-link){background:var(--ink);color:var(--surface);border:1.5px solid var(--ink);border-radius:var(--r);font-family:var(--font-body);font-weight:600;letter-spacing:.02em;}
.wc-block-components-button:not(.is-link):hover{background:var(--accent);border-color:var(--accent);color:var(--white,#FFFFFF);}
.wc-block-components-button.is-link{color:var(--accent);}
.wc-block-components-title,.wc-block-cart__totals-title,.wp-block-woocommerce-checkout-order-summary-block .wc-block-components-totals-item__label{font-family:var(--font-display);font-weight:700;}
.wc-block-cart-items__header{font-family:var(--font-body);font-size:.76rem;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);}
.wc-block-cart-items__row{border-bottom:1px solid var(--line);}
.wc-block-components-product-name{font-family:var(--font-display);font-weight:700;color:var(--ink);text-decoration:none;}
.wc-block-components-product-price__value{color:var(--muted);}
.wc-block-components-sidebar,.wp-block-woocommerce-checkout-order-summary-block{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:20px;}
.wc-block-components-text-input input[type=text],.wc-block-components-text-input input[type=email],.wc-block-components-text-input input[type=tel],.wc-block-components-combobox input{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);}
.wc-block-components-notice-banner{border-radius:var(--r);}
.wc-block-components-totals-item__value{font-family:var(--font-display);font-weight:700;}

/* woo loop grid override */
ul.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-md);list-style:none;margin:0;padding:0;}
ul.products::before,ul.products::after{display:none!important;}
ul.products li.product{width:auto!important;float:none!important;margin:0!important;padding:0!important;text-align:left;clear:none!important;position:relative;}
ul.products li.product a img{width:100%;aspect-ratio:4/5;object-fit:cover;margin:0;border-radius:var(--r);border:1px solid var(--line);background:var(--surface);}
@media (max-width:900px){ul.products{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:520px){ul.products{grid-template-columns:1fr;}}
