:root {
  color-scheme: light;
  font-family: Arial, Helvetica, sans-serif;
  color: #263d30;
  background: #f6f3eb;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
}
* { box-sizing: border-box; }
body { margin: 0; border-top: 6px solid #263d30; }
.page {
  min-height: calc(100svh - 6px);
  max-width: 1800px;
  margin: 0 auto;
  padding: 0 56px;
  display: flex;
  flex-direction: column;
}
header, footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  font-size: .75rem;
}
header { padding: 30px 0; letter-spacing: .16em; }
main { flex: 1; text-align: center; padding: 25px 0 64px; align-content: center; }
.brand-mark { display: block; width: 148px; height: 148px; object-fit: contain; margin: 0 auto 22px; mix-blend-mode: multiply; }
h1 { font-family: Georgia, 'Times New Roman', serif; font-size: clamp(3.75rem, 7.4vw, 6.5rem); font-weight: 400; letter-spacing: -.055em; line-height: 1.02; margin: 0; }
h1 span { font-style: italic; }
.greek-name { font-size: .8125rem; letter-spacing: .24em; line-height: 1.6; margin: 28px 0 0; }
.notice { margin-top: 42px; }
.rule { display: block; width: 38px; height: 1px; background: #8b794e; margin: 0 auto 27px; }
.notice p { margin: 0; font-size: 1rem; line-height: 1.7; }
.notice p + p { color: #62665d; font-size: .875rem; margin-top: 5px; }
footer { border-top: 1px solid #d8dacf; padding: 24px 0 28px; color: #62665d; align-items: flex-end; }
.company-details { font-size: .875rem; line-height: 1.65; }
.company-details p { margin: 0; }
.company-details p:first-child { color: #263d30; }
.company-details p + p { margin-top: 4px; }
dl { display: flex; flex-wrap: wrap; gap: 6px 24px; margin: 14px 0 0; }
dl div { display: flex; flex-wrap: wrap; gap: 0 6px; }
dt, dd { margin: 0; }
.copyright { white-space: nowrap; }
@media (max-width: 1000px) {
  footer { flex-direction: column; align-items: flex-start; gap: 20px; }
}
@media (max-width: 600px) {
  .page { padding: 0 24px; }
  header { font-size: .75rem; letter-spacing: .06em; padding: 24px 0; }
  main { padding: 26px 0 46px; }
  .brand-mark { width: 124px; height: 124px; margin-bottom: 22px; }
  h1 { font-size: clamp(3.25rem, 15vw, 4.75rem); }
  .greek-name { margin-top: 23px; letter-spacing: .16em; }
  .notice { margin-top: 34px; }
  .notice p { max-width: 260px; margin-inline: auto; }
}
@media (max-width: 360px) { header { flex-wrap: wrap; justify-content: center; gap: 10px; } }
