/*
Theme Name: Ombré — nails and beauty room
Theme URI: https://1mdigital.gr
Author: 1M Digital
Author URI: https://1mdigital.gr
Description: Custom theme για το Ombré — nails and beauty room (Αρχαίου Θεάτρου 45). Χωρίς page builder και χωρίς κανένα plugin: όλα τα κείμενα, οι φωτογραφίες, ο τιμοκατάλογος, η γκαλερί και τα περιστατικά ποδολογίας αλλάζουν από native meta boxes μέσα στο wp-admin. Το site δεν έχει καμία φόρμα και κανένα email — μόνο κλικ-για-κλήση και Instagram.
Version: 1.0.3
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ombre-nails
Tags: nails, beauty, greek, custom-menu, featured-images, translation-ready
*/

/* ============================================================================
   Ombré — nails and beauty room
   Stylesheet · Παλέτα «Κρεμ Μάρμαρο & Χρυσό» (branding-locked)

   ΠΕΡΙΕΧΟΜΕΝΑ
   01 · Tokens
   02 · Reset & βάση
   03 · Τυπογραφία & helpers
   04 · Λογότυπο (εικόνα & χρυσοί κύκλοι)
   05 · Ornaments (χρυσές λεπτομέρειες)
   06 · Buttons
   07 · Topbar / Header / Mobile nav
   08 · Hero
   09 · About
   10 · Υπηρεσίες (teaser)
   11 · Ποδολογία (teaser αρχικής)
   12 · Σεμινάρια
   13 · SPA Party
   14 · Gallery (αρχική)
   15 · CTA band
   16 · Footer
   17 · Lightbox & cookies
   18 · Reveal
   19 · Page hero (εσωτερικές σελίδες)
   20 · Τιμοκατάλογος
   21 · Safe way to healthy feet (σελίδα Ποδολογίας)
   22 · Γκαλερί (φίλτρα, placeholders)
   23 · Επικοινωνία (info cards, χάρτης, ωράριο)
   24 · Βιογραφικό
   25 · Responsive
   ============================================================================ */

/* ---------- 01 · TOKENS ---------------------------------------------------- */
:root{
  /* Κρεμ / εκρού μάρμαρο */
  --bg:        #FCF9F5;
  --surface:   #F6F0E8;
  --surface-2: #EDE3D6;
  --ink:       #453A31;
  --ink-soft:  #6B5B4E;
  --muted:     #8D7C6D;

  /* Χρυσό (foil) */
  --gold:      #B9924F;
  --gold-d:    #9A7739;
  --gold-l:    #D9C08E;
  --gold-line: #DCC79D;
  --gold-soft: #F5EBD8;

  /* Taupe (εικονίδια βιογραφικού) */
  --taupe:     #A38F7D;
  --taupe-d:   #8C7766;

  --line:      #E7DCCC;
  --on-dark:   #F6F0E8;
  --on-dark-m: #C9B79F;

  /* Τυπογραφία */
  --ff-script:  "Parisienne", "Brush Script MT", cursive;
  --ff-display: "Cormorant Garamond", Georgia, "Times New Roman", serif;
  --ff-body:    "Montserrat", -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

  /* Layout */
  --wrap: 1180px;
  --wrap-w: 1400px;
  --pad: clamp(20px, 5vw, 48px);
  --r: 3px;
  --r-lg: 6px;
  --sec: clamp(72px, 9vw, 132px);
  --ease: cubic-bezier(.2,.7,.3,1);
  --shadow: 0 34px 80px -34px rgba(93,70,44,.34);
  --shadow-s: 0 20px 46px -24px rgba(93,70,44,.34);
}

/* ---------- 02 · RESET & ΒΑΣΗ ---------------------------------------------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth; scroll-padding-top:104px}
body{
  margin:0; background:var(--bg); color:var(--ink);
  font-family:var(--ff-body); font-size:16px; font-weight:400; line-height:1.8;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
body.no-scroll{overflow:hidden}
img{max-width:100%; display:block}
a{color:inherit; text-decoration:none}
h1,h2,h3,h4{font-family:var(--ff-display); font-weight:400; line-height:1.2; margin:0}
p{margin:0}
ul{margin:0; padding:0}
:focus-visible{outline:2px solid var(--gold); outline-offset:3px}

.wrap{max-width:var(--wrap); margin-inline:auto; padding-inline:var(--pad)}
.wrap-w{max-width:var(--wrap-w); margin-inline:auto; padding-inline:var(--pad)}
.sec{padding-block:var(--sec)}
.sec-sm{padding-block:clamp(52px,6vw,86px)}
.bg-surface{background:var(--surface)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* ---------- 03 · ΤΥΠΟΓΡΑΦΙΑ & HELPERS -------------------------------------- */
.eyebrow{
  font-size:11px; font-weight:500; letter-spacing:.34em; text-transform:uppercase;
  color:var(--gold-d); display:block;
}
.script{font-family:var(--ff-script); font-weight:400; color:var(--gold); line-height:1}
/* Ελληνικοί «καλλιγραφικοί» τίτλοι: το Parisienne δεν έχει ελληνικά —
   Cormorant Garamond italic σε χρυσό. */
.script-el{font-family:var(--ff-display); font-style:italic; font-weight:400; color:var(--gold); line-height:1.05}
.h-xl{font-size:clamp(34px,4.6vw,58px); letter-spacing:.01em}
.h-lg{font-size:clamp(28px,3.6vw,44px)}
.h-md{font-size:clamp(22px,2.3vw,29px)}
.h-sm{font-size:19px}
.caps{
  font-family:var(--ff-display); font-size:clamp(22px,2.6vw,32px);
  letter-spacing:.16em; text-transform:uppercase; font-weight:400; line-height:1.35;
}
.lead{font-size:clamp(16px,1.25vw,17.5px); color:var(--ink-soft); font-weight:300; line-height:1.9}
.muted{color:var(--muted)}
.sec-head{max-width:640px; display:grid; gap:16px; margin-bottom:clamp(40px,5vw,66px)}
.sec-head.center{margin-inline:auto; text-align:center; justify-items:center}
.sec-head.wide{max-width:780px}
.split-head{display:flex; justify-content:space-between; align-items:flex-end; gap:32px; flex-wrap:wrap; margin-bottom:clamp(38px,4.5vw,60px)}
.split-head .sec-head{margin-bottom:0}
.prose{display:grid; gap:18px}
.prose p{color:var(--ink-soft); font-weight:300}
.prose strong{font-weight:500; color:var(--ink)}

/* ---------- 04 · ΛΟΓΟΤΥΠΟ --------------------------------------------------- */
/* Το «Ombré» ως εικόνα: το πραγματικό λογότυπο της πελάτισσας (χρυσό, διάφανο PNG). */
.logo-img{display:inline-block; width:auto; max-width:none; vertical-align:middle}

/* Χρυσός κύκλος με το λογότυπο σε μάρμαρο — ίδιος παντού.
   Το --ring ορίζει το πάχος του κρεμ πλαισίου ανάλογα με το μέγεθος του κύκλου. */
.logo-ring{
  --ring:10px;
  border-radius:50%; overflow:hidden; background:var(--bg);
  box-shadow:
    0 0 0 1px var(--gold-line),
    0 0 0 var(--ring) var(--bg),
    0 0 0 calc(var(--ring) + 1px) rgba(185,146,79,.3),
    var(--shadow-s);
}
.logo-ring img{width:100%; height:100%; object-fit:cover}

/* ---------- 05 · ORNAMENTS -------------------------------------------------- */
.orn{display:flex; align-items:center; justify-content:center; gap:14px; color:var(--gold)}
.orn::before,.orn::after{content:""; height:1px; width:clamp(48px,9vw,120px); background:linear-gradient(90deg,transparent,var(--gold-line),transparent)}
.orn svg{width:20px; height:20px; flex:none; opacity:.9}
.orn.left{justify-content:flex-start}
.orn.left::before{display:none}
.orn.left::after{width:clamp(60px,12vw,160px); background:linear-gradient(90deg,var(--gold-line),transparent)}

.rule{height:1px; background:linear-gradient(90deg,transparent,var(--gold-line),transparent); border:0; margin:0}

/* ---------- 06 · BUTTONS ---------------------------------------------------- */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding:15px 30px; border-radius:999px; font-size:12.5px; font-weight:500;
  letter-spacing:.16em; text-transform:uppercase; border:1px solid transparent;
  cursor:pointer; transition:all .3s var(--ease); font-family:var(--ff-body); text-align:center;
}
.btn svg{width:15px; height:15px; flex:none}
.btn-gold{background:linear-gradient(135deg,#C9A461,#A87F3C); color:#fff; box-shadow:0 12px 26px -14px rgba(154,119,57,.75)}
.btn-gold:hover{transform:translateY(-2px); box-shadow:0 18px 34px -14px rgba(154,119,57,.8)}
.btn-ghost{border-color:var(--gold-line); color:var(--gold-d); background:transparent}
.btn-ghost:hover{background:var(--gold-soft); border-color:var(--gold)}
.btn-light{background:#fff; color:var(--gold-d)}
.btn-light:hover{transform:translateY(-2px)}
.btn-outline-light{border-color:rgba(255,255,255,.45); color:#fff}
.btn-outline-light:hover{background:rgba(255,255,255,.14)}
.btn-sm{padding:12px 22px; font-size:11.5px}

.link-more{
  display:inline-flex; align-items:center; gap:9px; font-size:12px; font-weight:500;
  letter-spacing:.18em; text-transform:uppercase; color:var(--gold-d);
  padding-bottom:4px; border-bottom:1px solid var(--gold-line); transition:.25s var(--ease);
}
.link-more:hover{gap:15px; border-color:var(--gold)}
.link-more svg{width:14px;height:14px}

/* ---------- 07 · TOPBAR / HEADER ------------------------------------------- */
.topbar{background:var(--surface-2); border-bottom:1px solid var(--line); font-size:12px; color:var(--ink-soft)}
.topbar .wrap-w{display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:40px; flex-wrap:wrap}
.topbar a{display:inline-flex; align-items:center; gap:7px; letter-spacing:.06em; transition:color .2s}
.topbar a:hover{color:var(--gold-d)}
.topbar svg{width:13px; height:13px; color:var(--gold)}
.topbar .sep{color:var(--gold-line); margin-inline:12px}
.topbar-l,.topbar-r{display:flex; align-items:center}

.header{position:sticky; top:0; z-index:60; background:rgba(252,249,245,.94); backdrop-filter:blur(12px); border-bottom:1px solid var(--line)}
.header .wrap-w{display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:84px}
.brand{display:flex; flex-direction:column; align-items:flex-start; line-height:1; flex:none}
.brand .bname{height:50px; width:auto; margin-left:-4px}
.brand .btag{font-size:8.5px; letter-spacing:.32em; text-transform:lowercase; color:var(--muted); margin-top:3px; padding-left:3px}

.nav{display:flex; align-items:center; gap:clamp(14px,1.5vw,26px)}
.nav a{
  font-size:11.5px; font-weight:500; letter-spacing:.12em; text-transform:uppercase;
  color:var(--ink-soft); padding:6px 0; position:relative; transition:color .25s; white-space:nowrap;
}
.nav a::after{content:""; position:absolute; left:0; right:0; bottom:0; height:1px; background:var(--gold); transform:scaleX(0); transform-origin:left; transition:transform .3s var(--ease)}
.nav a:hover{color:var(--gold-d)}
.nav a:hover::after,.nav a[aria-current="page"]::after{transform:scaleX(1)}
.nav a[aria-current="page"]{color:var(--gold-d)}

.header-cta{display:flex; align-items:center; gap:14px; flex:none}
.burger{display:none; width:44px; height:44px; align-items:center; justify-content:center; background:none; border:1px solid var(--line); border-radius:999px; cursor:pointer; color:var(--ink)}
.burger svg{width:18px;height:18px}

/* Mobile nav */
.mnav{position:fixed; inset:0; z-index:80; background:var(--bg); transform:translateX(100%); transition:transform .38s var(--ease); display:flex; flex-direction:column; padding:24px var(--pad) 40px; overflow-y:auto}
.mnav.open{transform:none}
.mnav-top{display:flex; align-items:center; justify-content:space-between; min-height:60px; margin-bottom:22px}
.mnav-close{width:44px;height:44px; display:grid; place-items:center; background:none; border:1px solid var(--line); border-radius:999px; cursor:pointer; color:var(--ink)}
.mnav-close svg{width:18px;height:18px}
.mnav nav{display:grid; gap:2px}
.mnav nav a{font-family:var(--ff-display); font-size:25px; padding:12px 0; border-bottom:1px solid var(--line)}
.mnav-foot{margin-top:auto; padding-top:32px; display:grid; gap:12px}
.mnav-foot .btn{width:100%}
.mnav-foot .mf-line{display:flex; align-items:center; gap:10px; font-size:13px; color:var(--ink-soft)}
.mnav-foot .mf-line svg{width:15px;height:15px;color:var(--gold)}

/* ---------- 08 · HERO ------------------------------------------------------- */
.hero{position:relative; background:var(--bg); overflow:hidden; padding-block:clamp(56px,7vw,104px)}
.hero::before{
  content:""; position:absolute; inset:0;
  background:
    radial-gradient(60% 55% at 82% 12%, rgba(233,223,210,.85), transparent 70%),
    radial-gradient(50% 45% at 8% 88%, rgba(242,231,210,.7), transparent 70%);
  pointer-events:none;
}
.hero-grid{position:relative; display:grid; grid-template-columns:1.02fr .98fr; gap:clamp(36px,5vw,80px); align-items:center}
.hero-copy{display:grid; gap:24px; justify-items:start}
.hero h1{font-family:var(--ff-display); font-size:clamp(26px,3.3vw,42px); letter-spacing:.13em; text-transform:uppercase; color:var(--ink); font-weight:300; line-height:1.45}
.hero .lead{max-width:50ch}
.hero-actions{display:flex; gap:14px; flex-wrap:wrap; margin-top:6px}
.hero-meta{display:flex; gap:26px; flex-wrap:wrap; margin-top:10px; padding-top:24px; border-top:1px solid var(--line); width:100%}
.hero-meta div{display:grid; gap:2px}
.hero-meta b{font-family:var(--ff-display); font-size:20px; font-weight:500; color:var(--gold-d)}
.hero-meta span{font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--muted)}

.hero-media{position:relative; aspect-ratio:1/1.06}
.hero-media .hm-main{position:absolute; inset:0 14% 12% 0; border-radius:var(--r-lg); overflow:hidden; box-shadow:var(--shadow)}
.hero-media .hm-main img{width:100%; height:100%; object-fit:cover}
.hero-media .hm-ring{position:absolute; right:0; bottom:0; width:47%; aspect-ratio:1}

/* ---------- 09 · ABOUT ------------------------------------------------------ */
.about-grid{display:grid; grid-template-columns:.9fr 1.1fr; gap:clamp(36px,5.5vw,84px); align-items:center}
.about-media{position:relative}
.about-media .am-img{border-radius:var(--r-lg); overflow:hidden; box-shadow:var(--shadow-s)}
.about-media .am-img img{width:100%; height:auto; display:block}
.about-media .am-badge{position:absolute; right:-6%; bottom:-5%; width:44%; aspect-ratio:1; --ring:9px}
.about-copy{display:grid; gap:20px; justify-items:start}
.about-copy .welcome{font-family:var(--ff-display); font-size:clamp(22px,2.2vw,28px); color:var(--ink); font-weight:400; line-height:1.3}
.about-copy .welcome .logo-inline{height:1.9em; vertical-align:-.55em; margin-left:.12em}
.about-points{display:grid; grid-template-columns:repeat(2,1fr); gap:18px 26px; margin-top:10px; padding-top:26px; border-top:1px solid var(--line); width:100%}
.about-points li{list-style:none; display:flex; gap:12px; align-items:flex-start; font-size:14.5px; color:var(--ink-soft); font-weight:300; line-height:1.6}
.about-points svg{width:17px;height:17px;color:var(--gold); flex:none; margin-top:3px}

/* ---------- 10 · ΥΠΗΡΕΣΙΕΣ (teaser) ---------------------------------------- */
.svc-grid{display:grid; grid-template-columns:repeat(5,1fr); gap:18px}
.svc-card{
  background:var(--bg); border:1px solid var(--line); border-radius:var(--r-lg);
  padding:32px 20px 28px; display:grid; gap:14px; justify-items:center; align-content:start; text-align:center;
  transition:.35s var(--ease); position:relative; overflow:hidden;
}
.svc-card::after{content:""; position:absolute; inset:auto 0 0 0; height:2px; background:linear-gradient(90deg,transparent,var(--gold),transparent); transform:scaleX(0); transition:transform .4s var(--ease)}
.svc-card:hover{transform:translateY(-5px); box-shadow:var(--shadow-s); border-color:var(--gold-line)}
.svc-card:hover::after{transform:scaleX(1)}
.svc-ico{width:62px; height:62px; border-radius:50%; display:grid; place-items:center; border:1px solid var(--gold-line); color:var(--gold-d); background:var(--gold-soft)}
.svc-ico svg{width:26px;height:26px}
.svc-card h3{font-size:21px; color:var(--ink)}
.svc-card p{font-size:14px; color:var(--muted); font-weight:300; line-height:1.75}
.svc-card .price{font-size:11.5px; letter-spacing:.18em; text-transform:uppercase; color:var(--gold-d); margin-top:auto}

/* ---------- 11 · ΠΟΔΟΛΟΓΙΑ (teaser) ---------------------------------------- */
.podo{position:relative; overflow:hidden; background:var(--surface)}
.podo::before{
  content:""; position:absolute; inset:0; background-image:var(--omb-bg, url("assets/img/marble.jpg"));
  background-size:cover; background-position:center; opacity:.16; pointer-events:none;
}
.podo-grid{position:relative; display:grid; grid-template-columns:.92fr 1.08fr; gap:clamp(36px,5vw,78px); align-items:center}
.podo-media img{border-radius:var(--r-lg); box-shadow:var(--shadow); width:100%}
.podo-copy{display:grid; gap:20px; justify-items:start}
.podo-badges{display:flex; flex-wrap:wrap; gap:10px; margin-top:4px}
.podo-badges li{
  list-style:none; display:inline-flex; align-items:center; gap:10px;
  font-size:11.5px; letter-spacing:.16em; text-transform:uppercase; color:var(--gold-d);
  background:rgba(252,249,245,.85); border:1px solid var(--gold-line); border-radius:999px; padding:6px 16px 6px 6px;
}
.podo-badges li span{width:30px;height:30px;border-radius:50%; display:grid; place-items:center; border:1px solid var(--gold-line); background:var(--bg)}
.podo-badges svg{width:15px;height:15px}
.podo-actions{display:flex; gap:14px; flex-wrap:wrap; margin-top:6px}

/* ---------- 12 · ΣΕΜΙΝΑΡΙΑ -------------------------------------------------- */
.sem{background:var(--bg); position:relative; overflow:hidden}
.sem-grid{display:grid; grid-template-columns:.92fr 1.08fr; gap:clamp(36px,5vw,78px); align-items:center}
.sem-media{position:relative}
.sem-media img{border-radius:var(--r-lg); box-shadow:var(--shadow); width:100%}
.sem-copy{display:grid; gap:20px; justify-items:start}
.sem-title{font-family:var(--ff-display); font-size:clamp(28px,3.4vw,42px); color:var(--ink); font-weight:300; line-height:1.35}
.sem-title em{font-style:normal; color:var(--gold-d)}
.sem-list{display:grid; grid-template-columns:repeat(2,1fr); gap:0 24px; width:100%; margin-top:4px}
.sem-list li{list-style:none; font-size:14px; font-weight:300; color:var(--ink-soft); padding:9px 0; border-bottom:1px solid var(--line); display:flex; gap:10px; align-items:center}
.sem-list li::before{content:""; width:5px; height:5px; border-radius:50%; background:var(--gold); flex:none}
.sem-perks{display:grid; gap:14px; width:100%; margin-top:6px}
.sem-perks li{list-style:none; display:flex; gap:14px; align-items:flex-start}
.sem-perks .sp-ico{width:42px;height:42px;border-radius:50%;border:1px solid var(--gold-line); display:grid; place-items:center; color:var(--gold-d); flex:none}
.sem-perks .sp-ico svg{width:18px;height:18px}
.sem-perks b{display:block; font-size:14.5px; font-weight:500; color:var(--ink); line-height:1.6}
.sem-perks span{font-size:13.5px; color:var(--muted); font-weight:300; line-height:1.6}
.sem-instructor{display:flex; align-items:center; gap:18px; padding:20px 24px; background:var(--surface); border:1px solid var(--line); border-radius:var(--r-lg); width:100%; flex-wrap:wrap}
.sem-instructor .si-ring{width:74px; height:74px; flex:none; --ring:4px}
.sem-instructor .si-text{flex:1 1 180px}
.sem-instructor b{display:block; font-family:var(--ff-display); font-size:21px; font-weight:500; line-height:1.3}
.sem-instructor .si-text span{font-size:11.5px; letter-spacing:.16em; text-transform:uppercase; color:var(--gold-d)}

/* ---------- 13 · SPA PARTY -------------------------------------------------- */
.spa{background:var(--surface); position:relative; overflow:hidden}
.spa::before{content:""; position:absolute; inset:0; background:radial-gradient(45% 40% at 88% 8%, rgba(255,255,255,.75), transparent 70%); pointer-events:none}
.spa-grid{position:relative; display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(34px,5vw,72px); align-items:center}
.spa-title{display:grid; gap:0}
.spa-title .st-1{font-family:var(--ff-display); font-size:clamp(30px,4vw,50px); letter-spacing:.2em; text-transform:uppercase; color:var(--ink); font-weight:300; line-height:1.1}
.spa-title .st-2{font-family:var(--ff-script); font-size:clamp(44px,5.6vw,72px); color:var(--gold); line-height:.9; margin-top:2px}
.spa-copy{display:grid; gap:20px; justify-items:start}
.spa-copy p{color:var(--ink-soft); font-weight:300}
.spa-chips{display:flex; flex-wrap:wrap; gap:9px}
.spa-chips span{
  font-size:11.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--gold-d);
  border:1px solid var(--gold-line); background:rgba(252,249,245,.8); border-radius:999px; padding:8px 15px;
}
.spa-facts{display:flex; gap:28px; flex-wrap:wrap; padding-top:22px; border-top:1px solid var(--line); width:100%}
.spa-facts div{display:grid; gap:2px}
.spa-facts b{font-family:var(--ff-display); font-size:22px; color:var(--gold-d); font-weight:500}
.spa-facts span{font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--muted)}
.spa-media{position:relative}
.spa-media img{border-radius:var(--r-lg); box-shadow:var(--shadow); width:100%}

/* ---------- 14 · GALLERY (αρχική) ------------------------------------------ */
.gal-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:16px}
.gal-grid.gal-grid-5{grid-template-columns:repeat(5,1fr)}
.gal-item{position:relative; border-radius:var(--r-lg); overflow:hidden; aspect-ratio:3/4; cursor:zoom-in; background:var(--surface-2); border:0; padding:0; display:block; width:100%}
.gal-item img{width:100%;height:100%;object-fit:cover; transition:transform .7s var(--ease)}
.gal-item::after{content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(69,58,49,.28),transparent 55%); opacity:0; transition:opacity .35s}
.gal-item:hover img{transform:scale(1.06)}
.gal-item:hover::after{opacity:1}

/* ---------- 15 · CTA BAND --------------------------------------------------- */
.cta{position:relative; background:#3B3128; color:var(--on-dark); overflow:hidden}
.cta::before{content:""; position:absolute; inset:0; background-image:var(--omb-bg, url("assets/img/marble.jpg")); background-size:cover; background-position:center; opacity:.14; filter:grayscale(.2)}
.cta::after{content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(59,49,40,.94),rgba(59,49,40,.74))}
.cta .wrap{position:relative; z-index:1; display:grid; gap:22px; justify-items:center; text-align:center}
.cta .cta-logo{height:clamp(72px,8vw,104px); width:auto}
.cta h2{font-family:var(--ff-display); font-size:clamp(19px,2.2vw,27px); letter-spacing:.18em; text-transform:uppercase; font-weight:300; color:#fff}
.cta p{max-width:56ch; color:var(--on-dark-m); font-weight:300}
.cta-actions{display:flex; gap:14px; flex-wrap:wrap; justify-content:center; margin-top:6px}
.cta .orn{color:#E4C88E}
.cta .orn::before,.cta .orn::after{background:linear-gradient(90deg,transparent,rgba(228,200,142,.7),transparent)}

/* ---------- 16 · FOOTER ----------------------------------------------------- */
.footer{background:var(--surface-2); padding-top:clamp(52px,6vw,78px); border-top:1px solid var(--line)}
.foot-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr 1.1fr; gap:clamp(28px,4vw,54px)}
.foot-brand .bname{height:60px; width:auto; margin-left:-4px}
.foot-brand .btag{font-size:9px; letter-spacing:.32em; text-transform:lowercase; color:var(--muted); display:block; margin:2px 0 18px; padding-left:3px}
.foot-brand p{font-size:14px; color:var(--ink-soft); font-weight:300; max-width:34ch}
.foot-col h4{font-size:11.5px; letter-spacing:.2em; text-transform:uppercase; font-family:var(--ff-body); font-weight:600; color:var(--ink); margin-bottom:18px}
.foot-col ul{display:grid; gap:11px}
.foot-col li{list-style:none}
.foot-col a,.foot-col span.fl{font-size:14px; color:var(--ink-soft); font-weight:300; display:inline-flex; gap:10px; align-items:flex-start; line-height:1.6; transition:color .2s}
.foot-col a:hover{color:var(--gold-d)}
.foot-col svg{width:15px;height:15px;color:var(--gold); flex:none; margin-top:4px}
.foot-social{display:flex; gap:10px; margin-top:18px}
.foot-social a{width:40px;height:40px;border-radius:50%;border:1px solid var(--gold-line); display:grid; place-items:center; color:var(--gold-d); transition:.25s var(--ease)}
.foot-social a:hover{background:var(--gold); color:#fff; border-color:var(--gold)}
.foot-social svg{width:17px;height:17px;margin:0;color:currentColor}
.foot-bottom{margin-top:clamp(38px,5vw,58px); border-top:1px solid var(--line); padding-block:22px; display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; font-size:12.5px; color:var(--muted)}
.foot-bottom a{transition:color .2s}
.credit{color:#E8730D; font-weight:500}
.credit:hover{color:#C75E05}

/* ---------- 17 · LIGHTBOX & COOKIES ---------------------------------------- */
.lb{position:fixed; inset:0; z-index:90; background:rgba(45,37,30,.94); display:none; align-items:center; justify-content:center; padding:24px}
.lb.open{display:flex}
.lb img{max-width:min(92vw,880px); max-height:86vh; object-fit:contain; border-radius:var(--r-lg)}
.lb-close,.lb-prev,.lb-next{position:absolute; width:48px;height:48px; border-radius:50%; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.25); color:#fff; display:grid; place-items:center; cursor:pointer; transition:.25s}
.lb-close:hover,.lb-prev:hover,.lb-next:hover{background:rgba(255,255,255,.24)}
.lb-close{top:22px; right:22px}
.lb-prev{left:22px; top:50%; transform:translateY(-50%)}
.lb-next{right:22px; top:50%; transform:translateY(-50%)}
.lb svg{width:18px;height:18px}

.cookie{
  position:fixed; left:var(--pad); bottom:20px; z-index:85; width:min(520px, calc(100vw - var(--pad)*2));
  background:var(--bg); border:1px solid var(--gold-line); border-radius:var(--r-lg);
  padding:22px 24px; box-shadow:var(--shadow); display:none; gap:16px;
}
.cookie.show{display:grid}
.cookie p{font-size:13px; color:var(--ink-soft); font-weight:300; line-height:1.7}
.cookie-actions{display:flex; gap:10px; flex-wrap:wrap}

/* ---------- 18 · REVEAL ----------------------------------------------------- */
.rv{opacity:0; transform:translateY(22px); transition:opacity .7s var(--ease), transform .7s var(--ease)}
.rv.in{opacity:1; transform:none}
@media (prefers-reduced-motion:reduce){
  .rv{opacity:1; transform:none; transition:none}
  html{scroll-behavior:auto}
}

/* ---------- 19 · PAGE HERO -------------------------------------------------- */
.phero{position:relative; overflow:hidden; background:var(--bg); padding-block:clamp(52px,7vw,96px) clamp(44px,6vw,80px)}
.phero::before,.cv-hero::before{
  content:""; position:absolute; inset:0;
  background:
    radial-gradient(55% 60% at 88% 0%, rgba(236,226,212,.85), transparent 70%),
    radial-gradient(45% 55% at 4% 100%, rgba(244,234,214,.8), transparent 70%);
  pointer-events:none;
}
.phero .wrap{position:relative; display:grid; gap:18px; justify-items:center; text-align:center; max-width:860px}
.phero h1{
  font-family:var(--ff-display); font-size:clamp(28px,4.2vw,52px); font-weight:300;
  letter-spacing:.16em; text-transform:uppercase; color:var(--ink); line-height:1.25;
}
.phero .script{font-size:clamp(40px,5.4vw,68px); line-height:.95}
.phero .lead{max-width:60ch}
.phero-actions{display:flex; gap:14px; flex-wrap:wrap; justify-content:center; margin-top:8px}

/* ---------- 20 · ΤΙΜΟΚΑΤΑΛΟΓΟΣ --------------------------------------------- */
.price-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:clamp(22px,3vw,34px); align-items:start}
.price-cat{
  background:var(--bg); border:1px solid var(--line); border-radius:var(--r-lg);
  padding:clamp(26px,3vw,38px) clamp(22px,3vw,34px) clamp(22px,3vw,32px);
  position:relative; overflow:hidden;
}
.price-cat::before{content:""; position:absolute; inset:0 0 auto 0; height:2px; background:linear-gradient(90deg,transparent,var(--gold-line),transparent)}
.price-cat .cat-head{display:grid; gap:10px; justify-items:center; text-align:center; margin-bottom:22px}
.price-cat .cat-ico{width:52px;height:52px;border-radius:50%; display:grid; place-items:center; border:1px solid var(--gold-line); background:var(--gold-soft); color:var(--gold-d)}
.price-cat .cat-ico svg{width:23px;height:23px}
.price-cat h2{font-size:clamp(30px,3.4vw,40px); letter-spacing:.01em}
.price-cat .cat-note{font-size:11px; letter-spacing:.22em; text-transform:uppercase; color:var(--muted)}

.price-list{display:grid}
.price-list li{list-style:none; display:flex; align-items:baseline; gap:10px; padding:13px 0; border-bottom:1px dashed var(--line)}
.price-list li:last-child{border-bottom:0; padding-bottom:0}
.pi-name{font-size:15px; font-weight:300; color:var(--ink-soft); flex:none; max-width:72%}
.pi-dots{flex:1 1 auto; height:1px; border-bottom:1px dotted var(--gold-line); transform:translateY(-4px)}
.pi-price{font-family:var(--ff-display); font-size:19px; font-weight:500; color:var(--gold-d); flex:none; letter-spacing:.02em}

.price-note{
  margin-top:clamp(30px,4vw,46px); display:flex; gap:16px; align-items:flex-start;
  background:var(--gold-soft); border:1px solid var(--gold-line); border-radius:var(--r-lg);
  padding:22px 26px;
}
.price-note svg{width:20px;height:20px;color:var(--gold-d); flex:none; margin-top:4px}
.price-note p{font-size:14px; color:var(--ink-soft); font-weight:300}

/* ---------- 21 · SAFE WAY TO HEALTHY FEET ---------------------------------- */
.safe{position:relative; overflow:hidden; background:var(--surface)}
.safe::before{
  content:""; position:absolute; inset:0; background-image:var(--omb-bg, url("assets/img/marble.jpg"));
  background-size:cover; background-position:center; opacity:.2;
}
.safe::after{content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(246,240,232,.92),rgba(246,240,232,.86))}
.safe .wrap{position:relative; z-index:1}
.safe-head{display:grid; gap:16px; justify-items:center; text-align:center; max-width:740px; margin-inline:auto; margin-bottom:clamp(36px,4.5vw,56px)}
.safe-head h2{font-family:var(--ff-display); font-size:clamp(20px,2.6vw,30px); letter-spacing:.2em; text-transform:uppercase; font-weight:300; color:var(--ink)}

.safe-badges{display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-bottom:clamp(36px,4.5vw,56px)}
.safe-badge{
  background:rgba(252,249,245,.86); border:1px solid var(--gold-line); border-radius:var(--r-lg);
  padding:28px 20px 24px; display:grid; gap:12px; justify-items:center; align-content:start; text-align:center;
  transition:.35s var(--ease);
}
.safe-badge:hover{transform:translateY(-4px); box-shadow:var(--shadow-s)}
.safe-badge .sb-ico{width:56px;height:56px;border-radius:50%; display:grid; place-items:center; border:1px solid var(--gold-line); color:var(--gold-d); background:var(--bg)}
.safe-badge .sb-ico svg{width:24px;height:24px}
.safe-badge b{font-family:var(--ff-display); font-size:22px; font-weight:500; color:var(--ink); letter-spacing:.04em}
.safe-badge span{font-size:13px; color:var(--muted); font-weight:300; line-height:1.7}

.ba-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:18px}
.ba-grid.ba-grid-4{grid-template-columns:repeat(4,1fr)}
.ba-item{background:var(--bg); border:1px solid var(--line); border-radius:var(--r-lg); overflow:hidden}
.ba-shot{position:relative; aspect-ratio:4/5; overflow:hidden; background:var(--surface-2); cursor:zoom-in; border:0; padding:0; width:100%; display:block}
.ba-shot img{width:100%;height:100%;object-fit:cover; transition:transform .7s var(--ease)}
.ba-shot:hover img{transform:scale(1.05)}
.ba-tag{
  position:absolute; left:12px; top:12px; z-index:1; background:rgba(252,249,245,.94); color:var(--gold-d);
  border:1px solid var(--gold-line); border-radius:999px; padding:6px 14px;
  font-size:10px; letter-spacing:.2em; text-transform:uppercase;
}
.ba-cap{padding:16px 20px 18px; display:grid; gap:4px}
.ba-cap b{font-size:14.5px; font-weight:500; color:var(--ink)}
.ba-cap span{font-size:13px; color:var(--muted); font-weight:300; line-height:1.65}

/* ---------- 22 · ΓΚΑΛΕΡΙ ---------------------------------------------------- */
.gal-filters{display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin-bottom:clamp(32px,4vw,50px)}
.gal-filters button{
  font-family:var(--ff-body); font-size:11.5px; font-weight:500; letter-spacing:.16em;
  text-transform:uppercase; color:var(--ink-soft); background:transparent; cursor:pointer;
  border:1px solid var(--line); border-radius:999px; padding:11px 22px; transition:.28s var(--ease);
}
.gal-filters button:hover{border-color:var(--gold-line); color:var(--gold-d)}
.gal-filters button[aria-pressed="true"]{background:var(--gold-soft); border-color:var(--gold); color:var(--gold-d)}

.gal-masonry{columns:4; column-gap:16px}
.gal-masonry .gal-item{width:100%; margin-bottom:16px; break-inside:avoid; aspect-ratio:auto; border:1px solid transparent}
.gal-masonry .gal-item img{height:auto; object-fit:cover}
.gal-masonry .gal-item:hover{border-color:var(--gold-line); box-shadow:var(--shadow-s)}
.gal-item.is-hidden{display:none}


.gal-empty{text-align:center; color:var(--muted); font-weight:300; padding:44px 0; display:none}
.gal-empty.show{display:block}

/* ---------- 23 · ΕΠΙΚΟΙΝΩΝΙΑ ---------------------------------------------- */
.info-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:20px}
.info-card{
  background:var(--bg); border:1px solid var(--line); border-radius:var(--r-lg);
  padding:36px 28px 32px; display:grid; gap:14px; justify-items:center; text-align:center;
  transition:.35s var(--ease);
}
.info-card:hover{transform:translateY(-4px); box-shadow:var(--shadow-s); border-color:var(--gold-line)}
.info-ico{
  width:66px;height:66px;border-radius:50%; display:grid; place-items:center;
  border:1px solid var(--gold-line); color:var(--gold-d); background:var(--gold-soft);
  box-shadow:0 0 0 6px var(--bg), 0 0 0 7px rgba(185,146,79,.16);
}
.info-ico svg{width:26px;height:26px}
.info-card h3{font-size:11.5px; font-family:var(--ff-body); font-weight:600; letter-spacing:.2em; text-transform:uppercase; color:var(--muted)}
.info-card .val{font-family:var(--ff-display); font-size:clamp(20px,2.2vw,26px); color:var(--ink); font-weight:500; line-height:1.35; transition:color .2s}
.info-card a.val:hover{color:var(--gold-d)}
.info-card .sub{font-size:13.5px; color:var(--muted); font-weight:300; line-height:1.7}

.contact-grid{display:grid; grid-template-columns:1.25fr .75fr; gap:clamp(28px,4vw,54px); align-items:start}
.map-wrap{border:1px solid var(--line); border-radius:var(--r-lg); overflow:hidden; box-shadow:var(--shadow-s); background:var(--surface-2)}
.map-wrap iframe{width:100%; height:clamp(320px,42vw,470px); border:0; display:block; filter:grayscale(.25) sepia(.12)}
.map-actions{display:flex; gap:12px; flex-wrap:wrap; padding:18px 20px; background:var(--bg); border-top:1px solid var(--line)}

.hours{background:var(--bg); border:1px solid var(--line); border-radius:var(--r-lg); padding:clamp(26px,3vw,34px); display:grid; gap:18px}
.hours .h-head{display:grid; gap:10px; justify-items:center; text-align:center}
.hours .h-head .h-title{font-size:clamp(28px,3vw,36px)}
.hours .h-head .h-sub{font-size:10.5px; letter-spacing:.24em; text-transform:uppercase; color:var(--muted)}
.hours ul{display:grid}
.hours li{list-style:none; display:flex; justify-content:space-between; align-items:baseline; gap:14px; padding:12px 0; border-bottom:1px dashed var(--line); font-size:14.5px; font-weight:300; color:var(--ink-soft)}
.hours li:last-child{border-bottom:0}
.hours li b{font-weight:500; color:var(--ink)}
.hours li.off span{color:var(--muted)}
.hours .h-note{font-size:13px; color:var(--muted); font-weight:300; text-align:center; line-height:1.7; padding-top:16px; border-top:1px solid var(--line)}
.hours .btn{width:100%}

/* ---------- 24 · ΒΙΟΓΡΑΦΙΚΟ ------------------------------------------------- */
.cv-hero{position:relative; overflow:hidden; background:var(--bg); padding-block:clamp(52px,7vw,96px)}
.cv-hero-grid{position:relative; display:grid; grid-template-columns:1.3fr .7fr; gap:clamp(32px,5vw,72px); align-items:center}
.cv-intro{display:grid; gap:18px; justify-items:start}
.cv-name{font-family:var(--ff-display); font-weight:400; font-size:clamp(38px,5.4vw,68px); letter-spacing:.08em; text-transform:uppercase; line-height:1.08; color:var(--ink)}
.cv-roles{font-size:clamp(11px,1.1vw,13px); letter-spacing:.2em; text-transform:uppercase; color:var(--ink-soft); font-weight:500; line-height:1.9}
.cv-roles i,.cv-tags i{font-style:normal; color:var(--gold); margin-inline:.6em}
.cv-intro .rule{width:100%; max-width:540px; background:linear-gradient(90deg,var(--gold-line),transparent)}
.cv-tags{font-size:14.5px; letter-spacing:.12em; color:var(--ink-soft); font-weight:300}
.cv-sign{font-family:var(--ff-script); font-size:clamp(32px,3.6vw,46px); color:var(--gold-d); display:flex; align-items:center; gap:12px; line-height:1.2}
.cv-sign svg{width:20px; height:20px; color:var(--gold); flex:none}
.cv-photo{
  margin:0; justify-self:center; width:min(100%,320px); padding:8px;
  border:1px solid var(--gold-line); border-radius:999px 999px 8px 8px;
  background:var(--bg); box-shadow:var(--shadow);
}
.cv-photo img{width:100%; aspect-ratio:374/530; object-fit:cover; border-radius:999px 999px 4px 4px}

.cv-body{max-width:980px; display:grid; gap:clamp(30px,3.6vw,44px)}
.cv-block{display:grid; grid-template-columns:64px 1fr; gap:clamp(18px,2.4vw,28px); align-items:start}
.cv-ico{
  width:64px; height:64px; border-radius:50%; display:grid; place-items:center;
  background:linear-gradient(145deg,var(--taupe),var(--taupe-d)); color:#fff;
  box-shadow:0 0 0 5px var(--surface), 0 0 0 6px var(--gold-line);
}
.cv-ico svg{width:26px; height:26px}
.cv-content{display:grid; gap:14px; padding-top:10px; min-width:0}
.cv-pill{
  justify-self:start; font-family:var(--ff-body); font-size:12.5px; font-weight:500; letter-spacing:.2em;
  text-transform:uppercase; color:var(--ink); background:var(--surface-2); border-radius:999px; padding:9px 22px; line-height:1.4;
}
.cv-text{color:var(--ink-soft); font-weight:300; font-size:15.5px; line-height:1.85}
.cv-rows{display:grid}
.cv-rows li{list-style:none; display:grid; grid-template-columns:150px 1fr; gap:18px; padding:12px 0; border-bottom:1px dashed var(--line); font-size:15px; color:var(--ink-soft); font-weight:300; align-items:baseline}
.cv-rows li:last-child{border-bottom:0}
&
.cv-rows li.cv-lang .cv-year{border-right:0; padding-right:0}
.cv-rows b{display:block; font-weight:500; color:var(--ink); font-size:15.5px}
.cv-rows b .logo-inline{height:1.8em; vertical-align:-.6em; margin-right:.1em}
.cv-sub{display:block; font-size:13.5px; color:var(--muted); margin-top:4px; line-height:1.7}
.cv-dash{font-style:normal; color:var(--gold); margin-inline:.4em}
.cv-chips{display:flex; flex-wrap:wrap; gap:9px}
.cv-chips li{list-style:none; font-size:12px; letter-spacing:.12em; text-transform:uppercase; color:var(--gold-d); border:1px solid var(--gold-line); background:var(--bg); border-radius:999px; padding:8px 16px}
.cv-skills{display:grid; grid-template-columns:repeat(3,1fr); gap:16px}
.cv-skill{display:flex; gap:14px; align-items:flex-start; background:var(--bg); border:1px solid var(--line); border-radius:var(--r-lg); padding:20px 18px}
.cs-ico{width:44px; height:44px; border-radius:50%; border:1px solid var(--gold-line); display:grid; place-items:center; color:var(--gold-d); flex:none}
.cs-ico svg{width:20px; height:20px}
.cv-skill b{display:block; font-weight:500; color:var(--ink); font-size:14.5px; margin-bottom:4px}
.cv-skill span{font-size:13.5px; color:var(--muted); font-weight:300; line-height:1.7}
.cv-closing{
  display:flex; align-items:center; justify-content:flex-end; gap:12px; width:100%;
  font-family:var(--ff-script); font-size:clamp(30px,3.2vw,40px); color:var(--gold-d); line-height:1.2;
  padding-top:18px; border-top:1px solid var(--line);
}
.cv-closing svg{width:18px; height:18px; color:var(--gold); flex:none}

/* ---------- 25 · RESPONSIVE ------------------------------------------------- */
/* 8 στοιχεία μενού: κάτω από αυτό το πλάτος περνάμε σε burger */
@media (max-width:1260px){
  .nav{display:none}
  .header-cta .btn{display:none}
  .burger{display:flex}
}
@media (max-width:1080px){
  .svc-grid{grid-template-columns:repeat(3,1fr)}
  .gal-grid,.gal-grid.gal-grid-5{grid-template-columns:repeat(3,1fr)}
  .foot-grid{grid-template-columns:repeat(3,1fr)}
  .foot-brand{grid-column:1/-1}
  .gal-masonry{columns:3}
  .safe-badges{grid-template-columns:repeat(2,1fr)}
  .ba-grid.ba-grid-4{grid-template-columns:repeat(2,1fr)}
  .cv-skills{grid-template-columns:1fr}
}
@media (max-width:920px){
  .topbar-r{display:none}
  .hero-grid,.about-grid,.spa-grid,.sem-grid,.podo-grid{grid-template-columns:1fr}
  .hero-media{aspect-ratio:4/3.4; order:-1; max-width:560px; width:100%; margin-inline:auto}
  .about-media{max-width:460px}
  .sem-media,.spa-media,.podo-media{max-width:520px}
  .about-media .am-badge{width:38%}
  .svc-grid{grid-template-columns:repeat(2,1fr)}
  .price-grid{grid-template-columns:1fr}
  .contact-grid{grid-template-columns:1fr}
  .info-grid{grid-template-columns:1fr}
  .ba-grid{grid-template-columns:1fr}
  .gal-masonry{columns:2}
  .cv-hero-grid{grid-template-columns:1fr}
  .cv-photo{order:-1; width:min(100%,260px)}
}
@media (max-width:680px){
  body{font-size:15.5px}
  .svc-grid{grid-template-columns:1fr}
  .gal-grid,.gal-grid.gal-grid-5{grid-template-columns:repeat(2,1fr)}
  .about-points,.sem-list{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr}
  .hero-actions .btn,.cta-actions .btn,.podo-actions .btn{width:100%}
  .hero-media .hm-ring{width:42%}
  .lb-prev{left:8px} .lb-next{right:8px}
  .foot-bottom{justify-content:center; text-align:center}
  .safe-badges{grid-template-columns:1fr}
  .ba-grid.ba-grid-4{grid-template-columns:1fr}
  .gal-masonry{columns:1}
  .phero-actions .btn,.map-actions .btn{width:100%}
  .pi-name{max-width:62%}
  .pi-price{font-size:18px}
  .brand .bname{height:44px}
  .cv-block{grid-template-columns:46px 1fr; gap:14px}
  .cv-ico{width:46px; height:46px}
  .cv-ico svg{width:20px; height:20px}
  .cv-content{padding-top:4px}
  .cv-rows li{grid-template-columns:1fr; gap:2px}
  .cv-year{border-right:0; padding-right:0; font-size:17px}
  .cv-closing{justify-content:center}
}

/* ============================================================================
   26 · WORDPRESS
   Ό,τι χρειάζεται επιπλέον το WordPress σε σχέση με το στατικό mockup:
   μπάρα διαχείρισης, σύνδεσμος παράλειψης, περιεχόμενο απλής σελίδας,
   πλαίσιο χάρτη με συγκατάθεση και σημειώσεις προς τη διαχειρίστρια.
   ============================================================================ */

/* --- Σύνδεσμος παράλειψης (προσβασιμότητα) --- */
.skip-link{
  position:absolute; left:-9999px; top:0; z-index:100;
  background:var(--bg); color:var(--ink); padding:12px 20px; border:1px solid var(--gold-line);
  border-radius:0 0 var(--r-lg) 0; font-size:13px;
}
.skip-link:focus{left:0; width:auto; height:auto; clip:auto; margin:0; overflow:visible; white-space:normal}

/* --- Μπάρα διαχείρισης: ο header είναι sticky, πρέπει να κατέβει --- */
.admin-bar .header{top:32px}
.admin-bar .mnav{top:32px}
@media (max-width:782px){
  .admin-bar .header{top:46px}
  .admin-bar .mnav{top:46px}
}

/* --- Σημείωση που βλέπει μόνο η διαχειρίστρια, όταν μια λίστα είναι άδεια --- */
.empty-note{
  margin:0; padding:20px 24px; border:1px dashed var(--gold-line); border-radius:var(--r-lg);
  background:var(--gold-soft); color:var(--ink-soft); font-size:14px; font-weight:300;
}

/* --- Πλαίσιο χάρτη (με ή χωρίς συγκατάθεση) --- */
.map-frame{position:relative; display:block; background:var(--surface-2)}
.map-frame iframe{width:100%; height:clamp(320px,42vw,470px); border:0; display:block; filter:grayscale(.25) sepia(.12)}
.map-consent{
  display:grid; place-items:center; text-align:center; padding:clamp(30px,5vw,56px) 24px;
  height:clamp(320px,42vw,470px); background:linear-gradient(150deg,#F7F1E8 0%,#EFE5D7 48%,#F5EDE2 100%);
}
.map-consent__inner{display:grid; gap:14px; justify-items:center; max-width:42ch}
.map-consent svg{width:28px; height:28px; color:var(--gold)}
.map-consent p{font-size:14px; color:var(--ink-soft); font-weight:300; line-height:1.75}

/* --- Περιεχόμενο απλής σελίδας (π.χ. Πολιτική Απορρήτου) --- */
.page-content{max-width:75ch; display:grid; gap:18px; color:var(--ink-soft); font-weight:300}
.page-content h2{font-family:var(--ff-display); font-size:clamp(22px,2.4vw,30px); color:var(--ink); margin-top:16px}
.page-content h3{font-family:var(--ff-display); font-size:21px; color:var(--ink); margin-top:10px}
.page-content a{color:var(--gold-d); border-bottom:1px solid var(--gold-line)}
.page-content a:hover{border-color:var(--gold)}
.page-content ul,.page-content ol{display:grid; gap:8px; padding-left:20px}
.page-content li{list-style:disc}
.page-content ol li{list-style:decimal}
.page-content img{border-radius:var(--r-lg)}
.page-content blockquote{
  margin:0; padding:18px 24px; border-left:2px solid var(--gold-line);
  background:var(--surface); font-style:italic;
}

/* --- Λίστα αποτελεσμάτων (εφεδρικό πρότυπο) --- */
.plain-list{display:grid; gap:16px; margin-bottom:32px}
.plain-list li{list-style:none}

/* --- Εικόνες μέσα σε περιεχόμενο --- */
.alignleft{float:left; margin:0 24px 18px 0}
.alignright{float:right; margin:0 0 18px 24px}
.aligncenter{margin-inline:auto}
.wp-caption{max-width:100%}
.wp-caption-text{font-size:13px; color:var(--muted); text-align:center; margin-top:8px}
