/* =========================================================
   ΕΣΩΤΕΡΙΚΕΣ ΣΕΛΙΔΕΣ (κοινό για όλες εκτός αρχικής → inner.css)
   ========================================================= */

/* ---------- Page hero ---------- */
.page-hero{
  position:relative;overflow:hidden;
  background:linear-gradient(180deg,#fff 0%, var(--tint) 100%);
  padding:clamp(24px, 3vw, 40px) 0 clamp(56px, 7vw, 96px);
}
.page-hero-deco{position:absolute;right:-140px;top:-80px;width:min(620px, 70vw);pointer-events:none}
.page-hero-deco path{fill:none;stroke-width:6}
.page-hero .container{position:relative}
.breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:0;list-style:none;font-size:.86rem;font-weight:600;color:var(--muted)}
.breadcrumb li{display:inline-flex;align-items:center;gap:8px}
.breadcrumb li + li::before{content:"";width:6px;height:6px;background:var(--gold);transform:rotate(45deg);border-radius:1px}
.breadcrumb a{color:var(--navy)}
.breadcrumb a:hover{text-decoration:underline;text-underline-offset:3px}
.page-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(32px, 5vw, 72px);align-items:end;margin-top:clamp(32px, 5vw, 64px)}
.page-hero h1{font-size:clamp(2.2rem, 1.15rem + 3.5vw, 3.9rem);line-height:1.06;letter-spacing:-.035em;text-wrap:balance}
.page-hero-grid--single{grid-template-columns:1fr;max-width:860px}
.page-hero .lead{font-size:clamp(1.05rem, .96rem + .4vw, 1.22rem);margin-top:22px;max-width:36em}

/* ---------- Βήματα (timeline με ρόμβους) ---------- */
.steps{display:grid;grid-template-columns:repeat(var(--n, 4), 1fr);gap:28px;margin:56px 0 0;padding:0;list-style:none;position:relative}
.steps::before,.steps::after{content:"";position:absolute;top:27px;left:30px;right:calc(100% / var(--n, 4) - 10px);height:2px}
.steps::before{background:var(--line)}
.steps::after{background:var(--gold);transform-origin:left;transform:scaleX(0);transition:transform 1.8s var(--ease) .2s}
.steps.in::after{transform:scaleX(1)}
.step{position:relative}
.step-num{
  position:relative;z-index:1;width:44px;height:44px;margin:6px;display:grid;place-items:center;border-radius:9px;
  background:#fff;border:2px solid var(--sky);transform:rotate(45deg);
  transition:border-color .4s, background-color .4s;transition-delay:calc(var(--s) * 300ms + .2s);
}
.step-num span{transform:rotate(-45deg);font-weight:800;color:var(--navy);font-size:1rem}
.steps.in .step-num{border-color:var(--gold);background:var(--sand-wash)}
.step h3{font-size:1.08rem;letter-spacing:-.01em;line-height:1.3;margin:24px 0 8px}
.step p{color:var(--muted);font-size:.94rem}

/* ---------- Carousel φωτογραφιών (π.χ. κατάστημα) ---------- */
.gallery-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap}
.gallery-controls{display:flex;align-items:center;gap:10px}
.g-count{font-weight:700;font-size:.92rem;color:var(--muted);min-width:64px;text-align:center;font-variant-numeric:tabular-nums}
.g-btn{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);color:var(--navy);background:#fff;transition:background-color .2s, border-color .2s, opacity .2s}
.g-btn:hover:not(:disabled){background:var(--navy);border-color:var(--navy);color:#fff}
.g-btn:disabled{opacity:.35;cursor:default}
.g-btn .i{width:20px;height:20px}
.g-track{
  --edge:max(var(--gutter), calc((100% - var(--maxw)) / 2));
  display:grid;grid-auto-flow:column;grid-auto-columns:min(70%, 860px);gap:20px;
  margin:40px 0 0;padding:4px var(--edge) 8px;list-style:none;
  overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--edge);scroll-behavior:smooth;
  scrollbar-width:none;overscroll-behavior-x:contain;
}
.g-track::-webkit-scrollbar{display:none}
.g-slide{scroll-snap-align:start}
.g-slide figure{margin:0;position:relative;border-radius:26px;overflow:hidden;aspect-ratio:16/10;background:linear-gradient(135deg,var(--sky-wash),var(--sand-wash))}
.g-slide img{width:100%;height:100%;object-fit:cover;color:transparent;transition:transform .8s var(--ease)}
.g-slide:hover img{transform:scale(1.03)}
.g-slide figcaption{
  position:absolute;left:16px;bottom:16px;max-width:calc(100% - 32px);padding:10px 16px;border-radius:14px;
  background:rgba(255,255,255,.94);font-weight:700;font-size:.92rem;color:var(--abyss);
}
.g-ph{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:12px;color:var(--navy);font-weight:700;font-size:.92rem}
.g-ph .i{width:48px;height:48px;stroke-width:1.3}

@media (max-width:1024px){
  .page-hero-grid{grid-template-columns:1fr;align-items:start}
  .steps{grid-template-columns:repeat(2, 1fr);row-gap:44px}
  .steps::before,.steps::after{display:none}
}
@media (max-width:640px){
  .page-hero-deco{right:-220px;top:-40px;opacity:.6}
  .steps{grid-template-columns:1fr;row-gap:30px}
  .step{display:grid;grid-template-columns:56px 1fr;column-gap:18px}
  .step h3{margin:6px 0 6px}
  .step-num{grid-row:span 2}
  .g-track{grid-auto-columns:86%;gap:12px}
  .g-btn{width:44px;height:44px}
}
