   body {
      margin: 0;
      padding: 40px;
      font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      background: #fff;
      color: #000;
    }

a {
    text-decoration: none;
}
a:hover {
    color: #3d6bff;          /* lighter blue */
    opacity: 0.85;
}

    /* Logo + Titles */
    .header {
      margin-bottom: 40px;
      text-align: center;
    }
    .header img {
      width: 180px;
      height: auto;
      margin-bottom: 20px;
    }
	
    .brand {
      font-size: 42px;
      letter-spacing: 0.12em;
      font-weight: 500;
      text-align: center;
    }

    .brand a, .brand a:link, .brand a:active, .brand a:visited{
		color:#565757;
		text-decoration:none;
    }

    .brand a:hover{
		color:#1a4cff;
    }

	
    .fineart {
      font-size: 26px;
      letter-spacing: 0.25em;
      margin-top: 10px;
      text-transform: lowercase;
      text-align: center;
    }
	
    .promo {
		margin:auto;
      font-size: 15px;
      letter-spacing: 0.15em;
      margin-top: 10px;
      text-align: center;
	  width: 75%;
    }

    .footer {
	  margin:auto;
	  width:75%;
      font-size: 20px;
      letter-spacing: 0.25em;
      margin-top: 60px;
      text-transform: lowercase;
	  padding-top:10px;
	  border-top:solid 1px #999;
      text-align: center;
    }


    .exhibition-title {
      font-size: 24px;
      font-weight: 700;
      margin-top: 25px;
      margin-bottom: 25px;
      text-align: center;
    }


/* Links row */
.links {
    margin-bottom: 20px;
    font-size: 18px;
    letter-spacing: 0.05em;
    text-align: center;
    display: flex;
    justify-content: center; /* ΚΕΝΤΡΟ */
    flex-wrap: wrap;
    gap: 12px;
}

.links a {
    color: #1a4cff;          /* premium blue */
    text-decoration: none;
    margin: 0 15px;
    font-weight: 600;
    transition: 0.25s ease;
    white-space: nowrap;
    position: relative;       /* για το underline */
    padding-bottom: 10px;     /* η απόσταση που ζήτησες */
}

/* Underline animation */
.links a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0%;
    height: 2px;
    background-color: currentColor; /* ίδιο χρώμα με το link */
    transition: width 0.25s ease;
}

.links a:hover::after {
    width: 100%;
}

/* Colors */
.links a:visited {
    color: #163bbd;          /* darker blue */
}

.links a:hover {
    color: #3d6bff;          /* lighter blue */
    opacity: 0.85;
}

.links a:active {
    color: #ff7b00;          /* premium orange */
}

  .row {
    display:flex;
    align-items:flex-start;
    padding:10px 0;
    border-bottom:1px solid #333;
  }

  /* Σταθερός χώρος για τη φωτογραφία */
.photo-cell {
    width:auto;
	min-width:400px;
    height:150px; /* τελικό ύψος thumbnail */
    display:flex;
    align-items:center;
    justify-content:center;
    background:#fff;
}

/* το image μικραίνει ώστε ΜΑΖΙ με τα borders να είναι 150px */
.photo-cell img {
    height:108px;
    width:auto;
    display:block;

    border:12px solid #fff; /* 20px λευκό frame */
    box-shadow:5px 5px 10px rgba(0,0,0,0.4); /* ομαλή μαύρη σκιά */
}


/* frame που χωράει ΟΛΟΚΛΗΡΟ μέσα στο container μαζί με το μαύρο περίγραμμα */
.photo-frame {
    max-width:220px;
    max-height:160px;
    display:flex;
    align-items:center;
    justify-content:center;

    border:12px solid #fff; /* 20px λευκό frame */
    box-shadow:5px 5px 10px rgba(0,0,0,0.4); /* ομαλή μαύρη σκιά */
    box-sizing:content-box;
}

.photo-frame img {
    max-width:100%;
    max-height:100%;
    object-fit:contain;
    display:block;
}


  .cell300, .cell200 {
    width:480px;
    margin-right:20px;
	padding:15px;
	text-align:center;
  }

  .cell300 {
	  background-color:#f6f5ed;
	    box-shadow: inset 0 0 0 9px #f6f5ed, inset 0 0 0 10px #999;
	  border-radius: 0px 25px 0px 25px;
  }

  .cell200 {
	  background-color:#d27f00;
  }


  /* filename πάνω από τις 3 στήλες */
  .filename-bar {
    width:660px;
    font-size:14px;
    color:#2A35AF;
    margin-bottom:6px;
  }

#zoomOverlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.75);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}

#zoomWindow {
    width: 400px;
    height: 400px;
    background: #000;
    overflow: hidden;
    position: relative;
    border: 2px solid #fff;
}

#zoomImage {
    position: absolute;
    top: 0;
    left: 0;
    cursor: grab;
}

#zoomClose {
    position: absolute;
    top: 5px;
    right: 5px;
    background: #fff;
    border: none;
    padding: 5px 10px;
    cursor: pointer;
    font-weight: bold;
}

#zoomArrows {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 10px;
}

.arrow {
    background: #fff;
    border: 1px solid #000;
    padding: 5px 10px;
    cursor: pointer;
    font-size: 18px;
    font-weight: bold;
}

/* Popup overlay */
#interestPopup {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.65);
    z-index: 99999;
    backdrop-filter: blur(3px);
}

/* Popup box */
#interestPopup .popup-content {
    background: #ffffff;
    width: 420px;
    max-width: 90%;
    margin: 120px auto;
    padding: 30px;
    border-radius: 10px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.35);
    position: relative;
    font-family: inherit;
}

/* Close button */
#interestPopup .close {
    position: absolute;
    top: 12px;
    right: 18px;
    font-size: 28px;
    cursor: pointer;
    color: #333;
}

/* Title */
#popupTitle {
    margin-bottom: 20px;
    font-size: 18px;
    font-weight: 600;
}

/* Form fields */
#interestPopup label {
    display: block;
    margin-top: 12px;
    margin-bottom: 4px;
    font-size: 14px;
    font-weight: 500;
}

#interestPopup input,
#interestPopup textarea {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #ccc;
    border-radius: 6px;
    font-size: 14px;
    font-family: inherit;
    box-sizing: border-box;
}

#interestPopup textarea {
    height: 90px;
    resize: vertical;
}

/* Submit button */
#interestPopup button {
    margin-top: 18px;
    width: 100%;
    padding: 12px;
    background: #000;
    color: #fff;
    border: none;
    border-radius: 6px;
    font-size: 15px;
    cursor: pointer;
    transition: 0.2s;
}

#interestPopup button:hover {
    background: #333;
}

.purpose-container {
  max-width: 900px;
  margin: 0 auto 60px auto;
  text-align: left;
}

.purpose-container .cv-block {
  width: 100%;
  margin-bottom: 40px;
}

.purpose-img-right {
  float: right;
  width: 260px;
  margin: 0 0 20px 30px; /* top right bottom left */
  border-radius: 4px;
}

.purpose-img-left {
  float: left;
  width: 260px;
  margin: 0 30px 20px 0; /* top right bottom left */
  border-radius: 4px;
}

/* Για να καθαρίζει το float μετά από κάθε παράγραφο */
.clearfix::after {
  content: "";
  display: block;
  clear: both;
}


    /* Two-column layout */
    .cv-container {
      display: flex;
      justify-content: center;
      gap: 60px;
      max-width: 1400px;
      margin: 0 auto;
      text-align: left;
    }

    .cv-block {
      width: 45%;
      font-size: 18px;
      line-height: 1.55;
    }

    .cv-block strong {
      font-weight: 600;
    }

    /* Responsive */
    @media (max-width: 900px) {
      .cv-container {
        flex-direction: column;
        gap: 40px;
      }
      .cv-block {
        width: 100%;
      }
    }
  
      .viewer-frame {
		  margin:auto;
      width: 800px;
      height: 450px;
      border: 1px solid #333;
      border-radius: 8px;
      overflow: hidden;
      position: relative;
      background: #000;
    }

    .controls {
      position: absolute;
      bottom: 10px;
      left: 50%;
      transform: translateX(-50%);
      display: flex;
      gap: 8px;
      z-index: 10;
    }

    .btn {
      background: rgba(255,255,255,0.15);
      border: 1px solid rgba(255,255,255,0.3);
      padding: 6px 12px;
      color: #fff;
      font-size: 14px;
      border-radius: 4px;
      cursor: pointer;
      backdrop-filter: blur(4px);
      transition: 0.2s;
    }

    .btn:hover {
      background: rgba(255,255,255,0.3);
    }
