/* LEGAL pages (Privacy / Terms) */
.page-legal{
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
.legal-main{ flex: 1; }

.legal-hero{
  position: relative;
  width: 100%;
  padding: 34px 0 64px;
  overflow: hidden;
}

.legal-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(to bottom, rgba(255,255,255,.82), rgba(255,255,255,.92)),
    url("https://olympus-thea.gr/wp-content/uploads/2024/09/458601217_2262898854059897_1684404015735385737_n.jpg");
  background-size: cover;
  background-position: center;
}

.legal-hero .container{
  position: relative;
  z-index: 1;
}

/* Title */
.legal-title{
  margin: 0 0 8px;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 700;
  font-size: 30px;
  line-height: 1.15;
  color: #111;
}

.legal-subtitle{
  margin: 0 0 18px;
  color: #374151;
  font-size: 14px;
}

/* Luxury card panel */
.legal-card{
  background: #f3eedf;
  border: 1px solid #cdbb8b;
  border-radius: 16px;
  box-shadow: 0 10px 24px rgba(0,0,0,.12);
  padding: 26px 26px;
}

.legal-card h2{
  margin: 18px 0 8px;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-size: 16px;
  font-weight: 800;
  color: #111;
}

.legal-card p{
  margin: 0 0 12px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 15.5px;
  line-height: 1.85;
  color: #1b1b1b;
}

.legal-card ul{
  margin: 0 0 12px 18px;
  padding: 0;
}
.legal-card li{
  margin: 0 0 8px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 15.5px;
  line-height: 1.75;
  color: #1b1b1b;
}

.legal-card a{
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Table */
.legal-table-wrap{
  margin: 14px 0 12px;
  overflow: auto;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.12);
  background: rgba(255,255,255,.65);
}
.legal-table{
  width: 100%;
  border-collapse: collapse;
  min-width: 860px;
}
.legal-table th,
.legal-table td{
  padding: 12px 12px;
  vertical-align: top;
  border-bottom: 1px solid rgba(0,0,0,.10);
  font-size: 13px;
  line-height: 1.5;
  color: #111827;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}
.legal-table th{
  position: sticky;
  top: 0;
  background: rgba(243,238,223,.95);
  font-weight: 800;
}

/* meta chips */
.legal-meta{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top: 14px;
}
.chip{
  display:inline-flex;
  align-items:center;
  padding: 7px 10px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.14);
  background: rgba(255,255,255,.75);
  font-size: 13px;
  color: #111827;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

/* Actions */
.legal-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top: 16px;
}

/* Scribble divider (same as contact) */
.scribble{
  height: 22px;
  margin: 18px 0;
  background-repeat: repeat-x;
  background-position: center;
  background-size: auto 18px;
  opacity: .7;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='22' viewBox='0 0 220 22'%3E%3Cpath d='M0 11c10-10 20 10 30 0s20-10 30 0 20 10 30 0 20-10 30 0 20 10 30 0 20-10 30 0 20 10 30 0' fill='none' stroke='%23111' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}

/* Responsive */
@media (max-width: 900px){
  .legal-title{ font-size: 26px; }
  .legal-card{ padding: 22px; }
  .legal-table{ min-width: 780px; }
}
