/* ═══════════════ ΕΠΙΚΟΙΝΩΝΙΑ ═══════════════ */
.contact{padding-block:clamp(60px,7vw,100px) clamp(72px,9vw,120px)}
.contact-in{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(40px,5vw,96px);align-items:start}

/* Φόρμα: γραμμές, όχι κάρτες */
.field{margin-bottom:26px}
.field label{
  display:block;font-family:var(--display);font-weight:600;font-size:12px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--muted);margin-bottom:8px;
}
.field .req{color:var(--gold-dk)}
.field input,.field select,.field textarea{
  width:100%;min-height:54px;padding:14px 0;border:0;border-bottom:2px solid var(--rule);
  background:transparent;font-family:var(--body);font-size:17px;color:var(--fg);border-radius:0;
}
.field textarea{min-height:150px;resize:vertical;line-height:1.55}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-bottom-color:var(--green)}
.field.bad input,.field.bad select,.field.bad textarea{border-bottom-color:oklch(58% .19 27)}
.err{display:none;margin-top:7px;font-size:13px;color:oklch(52% .19 27)}
.field.bad .err{display:block}
.hint{margin-top:7px;font-size:13px;color:var(--muted)}

.consent{display:flex;gap:13px;align-items:flex-start;margin:30px 0;padding-top:26px;border-top:1px solid var(--rule)}
.consent input{width:22px;height:22px;min-height:0;flex:none;margin-top:2px;accent-color:var(--green)}
.consent label{font-size:14px;color:var(--muted);line-height:1.5;text-transform:none;letter-spacing:0;font-family:var(--body);font-weight:400}
.consent.bad label{color:oklch(52% .19 27)}
.submit{border:0;cursor:pointer;font-family:var(--display)}
.sent{
  display:none;padding:26px;border:2px solid var(--green);background:color-mix(in oklch,var(--green) 8%,transparent);
  font-family:var(--display);font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:15px;color:var(--green-dk);
}

/* Πλαϊνή στήλη: στοιχεία γραφείου σε μελάνι */
.aside{background:var(--ink);color:#fff;padding:clamp(32px,3.4vw,44px);position:relative}
.aside::before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:var(--gold)}
.aside h2{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:26px;line-height:1;color:#fff;margin-bottom:28px}
.info{padding-block:18px;border-top:1px solid rgba(255,255,255,.14)}
.info:first-of-type{border-top:0;padding-top:0}
.info .k{font-family:var(--display);font-weight:600;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--gold);margin-bottom:6px}
.info .v{color:rgba(255,255,255,.82);font-size:16px}
.socials{display:flex;gap:9px;flex-wrap:wrap;margin-top:28px;padding-top:24px;border-top:1px solid rgba(255,255,255,.14)}
.socials a{width:44px;height:44px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.24);color:rgba(255,255,255,.72);transition:all .2s}
.socials a:hover{border-color:var(--gold);color:var(--gold)}

/* Χάρτης: έντιμο placeholder, όχι fake pin */
.map{margin-top:28px;position:relative}

@media (max-width:1024px){ .contact-in{grid-template-columns:1fr;gap:44px} }
/* Χάρτης: πραγματικό embed, μονόχρωμο ώστε να μη χτυπά με την παλέτα */
.map iframe{display:block;width:100%;aspect-ratio:4/3;border:0;filter:grayscale(1) contrast(.92);transition:filter .35s}
.map:hover iframe{filter:none}
.map-link{position:absolute;left:0;bottom:0;background:var(--gold);color:var(--ink);font-family:var(--display);font-weight:600;font-size:11px;letter-spacing:.13em;text-transform:uppercase;padding:10px 16px;text-decoration:none}
.map-link:hover{background:#fff}
.info .v a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(239,182,60,.5);transition:color .2s,border-color .2s}
.info .v a:hover{color:var(--gold);border-color:var(--gold)}
