:root{
  --black:#0d0d0d;
  --dark:#151311;
  --dark-soft:#1d1916;
  --gold:#c7a36a;
  --gold-light:#dcc28f;
  --beige:#f2ece3;
  --beige-dark:#d8c9b7;
  --white:#fffdf9;
  --text-dark:#24201c;
  --muted:#6b6259;
  --transition:.4s ease;
}

*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
}

body{
  background:var(--black);
  color:var(--white);
  font-family:"Montserrat",sans-serif;
  overflow-x:hidden;
}

body.menu-open{
  overflow:hidden;
}

img{
  display:block;
  width:100%;
}

a{
  color:inherit;
  text-decoration:none;
}

ul{
  list-style:none;
}

button,
input,
textarea{
  font:inherit;
}

button{
  border:0;
}

.container{
  width:min(1180px,88%);
  margin:0 auto;
}

.section-label{
  display:inline-flex;
  align-items:center;
  gap:13px;
  margin-bottom:20px;
  color:var(--gold);
  font-size:12px;
  font-weight:500;
  letter-spacing:3px;
  text-transform:uppercase;
}

.section-label::after{
  content:"";
  width:48px;
  height:1px;
  background:var(--gold);
}

.section-title{
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(42px,5vw,68px);
  line-height:.98;
  font-weight:500;
}

.section-title em{
  color:var(--gold);
  font-weight:500;
}

.gold-button,
.outline-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:15px;
  min-height:55px;
  padding:0 30px;
  border:1px solid var(--gold);
  font-size:12px;
  font-weight:600;
  letter-spacing:1.4px;
  text-transform:uppercase;
  transition:var(--transition);
  cursor:pointer;
}

.gold-button{
  background:var(--gold);
  color:var(--black);
}

.gold-button:hover{
  background:var(--gold-light);
  border-color:var(--gold-light);
  transform:translateY(-3px);
}

.outline-button{
  background:transparent;
  color:var(--white);
}

.outline-button:hover{
  background:var(--gold);
  color:var(--black);
  transform:translateY(-3px);
}

/* HEADER */

.site-header{
  position:fixed;
  top:0;
  left:0;
  z-index:1000;
  width:100%;
  transition:background .4s ease,box-shadow .4s ease;
}

.site-header.scrolled{
  background:rgba(13,13,13,.96);
  box-shadow:0 8px 35px rgba(0,0,0,.25);
  backdrop-filter:blur(12px);
}

.navbar{
  width:min(1380px,92%);
  min-height:108px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:35px;
}

.brand{
  display:flex;
  align-items:center;
  gap:17px;
  flex-shrink:0;
}

.brand-monogram{
  font-family:"Cormorant Garamond",serif;
  position:relative;
  width:60px;
  height:66px;
  color:var(--gold);
  font-size:54px;
  font-weight:600;
  line-height:1;
}

.brand-letter{
  position:absolute;
}

.brand-letter-e{
  top:0;
  left:0;
}

.brand-letter-s{
  right:0;
  bottom:0;
}

.brand-divider{
  width:1px;
  height:56px;
  background:rgba(199,163,106,.7);
}

.brand-name strong{
  display:block;
  color:var(--gold-light);
  font-family:"Cormorant Garamond",serif;
  font-size:22px;
  font-weight:500;
  letter-spacing:5px;
  line-height:1;
}

.brand-name span{
  display:block;
  margin-top:8px;
  color:var(--gold);
  font-size:7px;
  letter-spacing:2.5px;
}

.desktop-menu{
  display:flex;
  align-items:center;
  gap:clamp(23px,3vw,46px);
}

.desktop-menu a{
  position:relative;
  padding:12px 0;
  font-size:11px;
  font-weight:500;
  letter-spacing:1.2px;
  text-transform:uppercase;
}

.desktop-menu a::after{
  content:"";
  position:absolute;
  right:0;
  bottom:3px;
  width:0;
  height:1px;
  background:var(--gold);
  transition:width var(--transition);
}

.desktop-menu a:hover::after,
.desktop-menu a.active::after{
  right:auto;
  left:0;
  width:100%;
}

.header-actions{
  display:flex;
  align-items:center;
  gap:16px;
}

.language-switch{
  font-size:11px;
  letter-spacing:1px;
}

.language-switch span{
  color:var(--gold);
}

.header-book{
  min-height:48px;
  padding:0 24px;
}

.menu-toggle{
  display:none;
  width:45px;
  height:45px;
  background:transparent;
  cursor:pointer;
}

.menu-toggle span{
  display:block;
  width:27px;
  height:1px;
  margin:7px auto;
  background:var(--gold);
  transition:var(--transition);
}

.menu-toggle.active span:nth-child(1){
  transform:translateY(8px) rotate(45deg);
}

.menu-toggle.active span:nth-child(2){
  opacity:0;
}

.menu-toggle.active span:nth-child(3){
  transform:translateY(-8px) rotate(-45deg);
}

/* MOBILE MENU */

.mobile-menu{
  position:fixed;
  inset:0;
  z-index:990;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(10,10,10,.98);
  opacity:0;
  visibility:hidden;
  transition:var(--transition);
}

.mobile-menu.active{
  opacity:1;
  visibility:visible;
}

.mobile-menu ul{
  text-align:center;
}

.mobile-menu li{
  margin:22px 0;
}

.mobile-menu a{
  font-family:"Cormorant Garamond",serif;
  font-size:36px;
}

.mobile-menu a:hover,
.mobile-book-link{
  color:var(--gold);
}

/* HERO */

.hero{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  overflow:hidden;
}

.hero-background{
  position:absolute;
  inset:0;
  z-index:-3;
  background-image:url("../img/hero-clear.png");
  background-position:center center;
  background-size:cover;
  background-repeat:no-repeat;
  animation:none;
  transform:none !important;
  filter:none;
}

@keyframes heroZoom{
  from{transform:scale(1)}
  to{transform:scale(1.06)}
}

.hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:linear-gradient(
    90deg,
    rgba(7,7,7,.92) 0%,
    rgba(7,7,7,.72) 37%,
    rgba(7,7,7,.25) 72%,
    rgba(7,7,7,.15) 100%
  );
}

.hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(0deg,rgba(7,7,7,.68) 0%,transparent 35%);
}

.hero-content{
  width:min(1380px,88%);
  margin:0 auto;
  padding-top:130px;
}

.hero-eyebrow{
  display:block;
  margin-bottom:28px;
  color:var(--gold);
  font-size:13px;
  font-weight:500;
  letter-spacing:4px;
  text-transform:uppercase;
  animation:revealUp 1s ease .2s both;
}

.hero h1{
  max-width:760px;
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(64px,7.4vw,118px);
  font-weight:500;
  line-height:.84;
  letter-spacing:-2px;
  animation:revealUp 1s ease .4s both;
}

.hero h1 span{
  color:var(--gold);
}

.hero-line{
  display:flex;
  align-items:center;
  gap:18px;
  width:350px;
  margin:34px 0;
  animation:revealUp 1s ease .55s both;
}

.hero-line::before,
.hero-line::after{
  content:"";
  height:1px;
  background:var(--gold);
}

.hero-line::before{
  width:90px;
}

.hero-line::after{
  flex:1;
}

.hero-line span{
  color:var(--gold);
  font-family:"Cormorant Garamond",serif;
  font-size:24px;
}

.hero-description{
  max-width:530px;
  color:rgba(255,255,255,.82);
  font-size:15px;
  font-weight:300;
  line-height:1.9;
  animation:revealUp 1s ease .7s both;
}

.hero-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:18px;
  margin-top:38px;
  animation:revealUp 1s ease .85s both;
}

@keyframes revealUp{
  from{
    opacity:0;
    transform:translateY(35px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

.scroll-indicator{
  position:absolute;
  bottom:30px;
  left:50%;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  transform:translateX(-50%);
  color:rgba(255,255,255,.75);
  font-size:9px;
  letter-spacing:2px;
  text-transform:uppercase;
}

.mouse{
  position:relative;
  width:19px;
  height:31px;
  border:1px solid rgba(255,255,255,.7);
  border-radius:12px;
}

.mouse::after{
  content:"";
  position:absolute;
  top:6px;
  left:50%;
  width:2px;
  height:6px;
  background:var(--gold);
  transform:translateX(-50%);
  animation:scrollMouse 1.8s infinite;
}

@keyframes scrollMouse{
  0%{
    opacity:0;
    transform:translate(-50%,0);
  }
  35%{opacity:1}
  100%{
    opacity:0;
    transform:translate(-50%,10px);
  }
}

/* HIGHLIGHTS */

.highlights{
  padding:45px 0;
  border-top:1px solid rgba(199,163,106,.35);
  border-bottom:1px solid rgba(199,163,106,.22);
  background:var(--black);
}

.highlight-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
}

.highlight-item{
  padding:16px 35px;
  text-align:center;
  border-right:1px solid rgba(199,163,106,.25);
}

.highlight-item:last-child{
  border-right:0;
}

.highlight-icon{
  margin-bottom:15px;
  color:var(--gold);
  font-size:32px;
}

.highlight-item h3{
  margin-bottom:8px;
  color:var(--gold-light);
  font-family:"Cormorant Garamond",serif;
  font-size:28px;
  font-weight:500;
}

.highlight-item p{
  color:rgba(255,255,255,.62);
  font-size:10px;
  line-height:1.6;
  letter-spacing:1px;
  text-transform:uppercase;
}

/* SERVICES */

.services{
  padding:120px 0;
  background:var(--beige);
  color:var(--text-dark);
}

.services-heading{
  max-width:750px;
  margin:0 auto 60px;
  text-align:center;
}

.services-heading .section-label{
  justify-content:center;
}

.services-heading .section-label::before{
  content:"";
  width:48px;
  height:1px;
  background:var(--gold);
}

.services-heading p{
  max-width:680px;
  margin:25px auto 0;
  color:#62594f;
  font-size:14px;
  line-height:1.9;
}

.services-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.service-card{
  position:relative;
  min-height:330px;
  padding:40px 32px;
  overflow:hidden;
  border:1px solid rgba(138,111,72,.25);
  background:rgba(255,255,255,.42);
  transition:var(--transition);
}

.service-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:var(--dark);
  transform:translateY(101%);
  transition:transform .55s ease;
}

.service-card:hover::before{
  transform:translateY(0);
}

.service-card:hover{
  color:var(--white);
  transform:translateY(-8px);
  box-shadow:0 25px 60px rgba(44,32,20,.14);
}

.service-content{
  position:relative;
  z-index:1;
}

.service-number{
  display:block;
  margin-bottom:45px;
  color:var(--gold);
  font-family:"Cormorant Garamond",serif;
  font-size:20px;
}

.service-card h3{
  margin-bottom:18px;
  font-family:"Cormorant Garamond",serif;
  font-size:31px;
  font-weight:500;
}

.service-card p{
  color:#655c52;
  font-size:13px;
  line-height:1.8;
  transition:var(--transition);
}

.service-card:hover p{
  color:rgba(255,255,255,.7);
}

.service-link{
  display:inline-block;
  margin-top:26px;
  color:var(--gold);
  font-size:10px;
  font-weight:600;
  letter-spacing:1.4px;
  text-transform:uppercase;
}

/* ABOUT */

.about{
  display:grid;
  grid-template-columns:44% 56%;
  min-height:720px;
  background:var(--black);
}

.about-content{
  display:flex;
  align-items:center;
  padding:100px max(6vw,45px);
}

.about-text{
  max-width:540px;
}

.about-text p{
  margin:30px 0;
  color:rgba(255,255,255,.67);
  font-size:14px;
  line-height:1.95;
}

.about-list{
  display:grid;
  gap:14px;
  margin-bottom:38px;
}

.about-list li{
  display:flex;
  align-items:center;
  gap:13px;
  color:rgba(255,255,255,.82);
  font-size:13px;
}

.about-list li::before{
  content:"✓";
  display:grid;
  place-items:center;
  width:21px;
  height:21px;
  flex:0 0 21px;
  border:1px solid var(--gold);
  border-radius:50%;
  color:var(--gold);
  font-size:10px;
}

.about-image{
  position:relative;
  min-height:600px;
  overflow:hidden;
}

.about-image::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(13,13,13,.65),transparent 40%);
}

.about-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform 1.3s ease;
}

.about-image:hover img{
  transform:scale(1.04);
}

/* GALLERY */

.gallery{
  padding:120px 0;
  background:var(--beige);
  color:var(--text-dark);
}

.gallery-header{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:30px;
  margin-bottom:50px;
}

.gallery-grid{
  display:grid;
  grid-template-columns:1.15fr .85fr .85fr;
  gap:18px;
}

.property-card{
  position:relative;
  min-height:480px;
  overflow:hidden;
  background:var(--dark);
}

.property-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .8s ease;
}

.property-card:hover img{
  transform:scale(1.07);
}

.property-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,rgba(7,7,7,.96) 0%,rgba(7,7,7,.12) 62%);
}

.property-info{
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  z-index:2;
  padding:28px;
  color:var(--white);
}

.property-info span{
  display:block;
  margin-bottom:8px;
  color:var(--gold);
  font-size:10px;
  letter-spacing:1.5px;
  text-transform:uppercase;
}

.property-info h3{
  font-family:"Cormorant Garamond",serif;
  font-size:30px;
  font-weight:500;
}

.property-info p{
  margin-top:8px;
  color:rgba(255,255,255,.65);
  font-size:12px;
}

/* TESTIMONIAL */

.testimonial{
  position:relative;
  padding:120px 0;
  overflow:hidden;
  text-align:center;
  background:var(--black);
}

.testimonial::before{
  content:"“";
  position:absolute;
  top:55px;
  left:50%;
  color:rgba(199,163,106,.09);
  font-family:"Cormorant Garamond",serif;
  font-size:250px;
  transform:translateX(-50%);
}

.testimonial-content{
  position:relative;
  z-index:1;
  max-width:850px;
  margin:0 auto;
}

.stars{
  margin-bottom:25px;
  color:var(--gold);
  letter-spacing:6px;
}

.testimonial blockquote{
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(30px,4vw,48px);
  font-weight:400;
  line-height:1.3;
}

.testimonial-name{
  display:block;
  margin-top:30px;
  color:var(--gold);
  font-size:11px;
  letter-spacing:2px;
  text-transform:uppercase;
}

/* CONTACT */

.booking{
  position:relative;
  padding:120px 0;
  background:
    linear-gradient(90deg,rgba(14,14,14,.96),rgba(14,14,14,.74)),
    url("../img/hero-clear.png") center/cover no-repeat;
}

.booking-grid{
  display:grid;
  grid-template-columns:.8fr 1.2fr;
  gap:90px;
  align-items:center;
}

.booking-copy p{
  max-width:480px;
  margin-top:25px;
  color:rgba(255,255,255,.68);
  font-size:14px;
  line-height:1.9;
}

.contact-details{
  display:grid;
  gap:18px;
  margin-top:35px;
}

.contact-details a,
.contact-details span{
  display:flex;
  align-items:center;
  gap:14px;
  color:rgba(255,255,255,.85);
  font-size:13px;
}

.contact-details b{
  color:var(--gold);
  font-weight:500;
}

.booking-form{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
  padding:45px;
  border:1px solid rgba(199,163,106,.45);
  background:rgba(12,12,12,.78);
  backdrop-filter:blur(12px);
}

.form-group.full{
  grid-column:1/-1;
}

.form-group label{
  display:block;
  margin-bottom:10px;
  color:var(--gold);
  font-size:9px;
  letter-spacing:1.5px;
  text-transform:uppercase;
}

.form-group input,
.form-group textarea{
  width:100%;
  border:0;
  border-bottom:1px solid rgba(255,255,255,.25);
  outline:none;
  background:transparent;
  color:var(--white);
  font-size:13px;
  padding:12px 3px;
}

.form-group input:focus,
.form-group textarea:focus{
  border-color:var(--gold);
}

.form-group textarea{
  min-height:110px;
  resize:vertical;
}

.booking-form button{
  grid-column:1/-1;
  border-radius:0;
}

/* FOOTER */

.footer{
  padding:75px 0 25px;
  border-top:1px solid rgba(199,163,106,.25);
  background:#090909;
}

.footer-grid{
  display:grid;
  grid-template-columns:1.5fr 1fr 1fr 1.2fr;
  gap:55px;
}

.footer .brand{
  margin-bottom:25px;
}

.footer-description{
  max-width:300px;
  color:rgba(255, 255, 255, 0.582);
  font-size:12px;
  line-height:1.8;
}

.footer h4{
  margin-bottom:24px;
  color:var(--gold);
  font-size:10px;
  font-weight:600;
  letter-spacing:2px;
  text-transform:uppercase;
}
/* ΟΛΑ ΤΑ ΚΕΙΜΕΝΑ ΤΟΥ FOOTER ΣΕ ΚΑΦΕ */

.footer .footer-links a,
.footer .footer-description,
.footer .footer-contact a,
.footer .footer-contact span,
.footer .footer-bottom,
.footer .footer-bottom span,
.footer .footer-bottom p {
  color: #5e4b3d !important;
}

.footer .footer-links a:hover,
.footer .footer-contact a:hover {
  color: #a87337 !important;
}

.footer-links{
  display:grid;
  gap:13px;
}

.footer-links a{
  color:rgba(255,255,255,.6);
  font-size:12px;
  transition:var(--transition);
}

.footer-links a:hover{
  color:var(--gold);
  transform:translateX(4px);
}

.footer-contact{
  display:grid;
  gap:14px;
}

.footer-contact a,
.footer-contact span{
  color:rgba(255,255,255,.6);
  font-size:12px;
  line-height:1.6;
}

.footer-contact a:hover{
  color:var(--gold);
}

.footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:25px;
  margin-top:60px;
  padding-top:22px;
  border-top:1px solid rgba(255,255,255,.08);
  color:rgba(255,255,255,.35);
  font-size:10px;
}

/* SCROLL REVEAL */

.reveal{
  opacity:0;
  transform:translateY(45px);
  transition:opacity .9s ease,transform .9s ease;
}

.reveal.visible{
  opacity:1;
  transform:translateY(0);
}

/* RESPONSIVE */

@media (max-width:1100px){
  .desktop-menu,
  .header-book,
  .language-switch{
    display:none;
  }

  .menu-toggle{
    display:block;
  }

  .services-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .about{
    grid-template-columns:1fr;
  }

  .about-image{
    min-height:550px;
  }

  .gallery-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .property-card:first-child{
    grid-column:1/-1;
  }

  .booking-grid{
    grid-template-columns:1fr;
    gap:55px;
  }

  .footer-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

@media (max-width:760px){
  .navbar{
    min-height:85px;
  }

  .brand-monogram{
    width:43px;
    height:49px;
    font-size:41px;
  }

  .brand-divider{
    height:42px;
  }

  .brand-name strong{
    font-size:16px;
    letter-spacing:3px;
  }

  .brand-name span{
    font-size:5px;
    letter-spacing:1.7px;
  }

  .hero{
    min-height:820px;
  }

  .hero-content{
    width:88%;
    padding-top:100px;
  }

  .hero h1{
    font-size:clamp(55px,17vw,82px);
    line-height:.9;
  }

  .hero-line{
    width:250px;
  }

  .hero-buttons{
    flex-direction:column;
    align-items:flex-start;
  }

  .hero-buttons a{
    width:100%;
    max-width:290px;
  }

  .scroll-indicator{
    display:none;
  }

  .highlight-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .highlight-item{
    border-bottom:1px solid rgba(199,163,106,.2);
  }

  .highlight-item:nth-child(2){
    border-right:0;
  }

  .services{
    padding:90px 0;
  }

  .services-grid{
    grid-template-columns:1fr;
  }

  .about-content{
    padding:90px 7%;
  }

  .about-image{
    min-height:430px;
  }

  .gallery{
    padding:90px 0;
  }

  .gallery-header{
    align-items:flex-start;
    flex-direction:column;
  }

  .gallery-grid{
    grid-template-columns:1fr;
  }

  .property-card:first-child{
    grid-column:auto;
  }

  .property-card{
    min-height:430px;
  }

  .testimonial{
    padding:90px 0;
  }

  .booking{
    padding:90px 0;
  }

  .booking-form{
    grid-template-columns:1fr;
    padding:30px 22px;
  }

  .form-group.full,
  .booking-form button{
    grid-column:auto;
  }

  .footer-grid{
    grid-template-columns:1fr;
  }

  .footer-bottom{
    flex-direction:column;
  }
}

@media (max-width:480px){
  .brand-divider,
  .brand-name span{
    display:none;
  }

  .brand-name strong{
    max-width:125px;
    line-height:1.1;
  }

  .highlight-grid{
    grid-template-columns:1fr;
  }

  .highlight-item{
    border-right:0;
  }

  .hero-description{
    font-size:14px;
  }
}

/* =========================================
   ELYSIAN SIGNATURE — MINIMAL LIGHT EDITION
========================================= */

:root{
  --black:#2e261f;
  --dark:#493b2f;
  --dark-soft:#665444;
  --gold:#aa7a3f;
  --gold-light:#caa66f;
  --beige:#f4eadf;
  --beige-dark:#dfcdbb;
  --white:#fffaf4;
  --text-dark:#3c3028;
  --muted:#76685c;
}

body{
  background:#f4eadf;
  color:var(--text-dark);
}

.site-header{
  background:rgba(247,238,228,.94);
  border-bottom:1px solid rgba(92,69,48,.13);
  backdrop-filter:blur(14px);
}

.site-header.scrolled{
  background:rgba(247,238,228,.98);
  box-shadow:0 8px 30px rgba(79,55,36,.08);
}

.desktop-menu a,
.language-switch{
  color:#564638;
}

.outline-button{
  color:#5b4736;
}

.hero{
  min-height:790px;
  margin:24px;
  margin-top:108px;
}

.hero-background{
  inset:0;
  background-position:center;
}

.hero::before{
  background:linear-gradient(90deg,rgba(42,31,23,.74),rgba(42,31,23,.29) 58%,rgba(42,31,23,.08));
}

.hero::after{
  background:linear-gradient(0deg,rgba(40,29,22,.35),transparent 42%);
}

.hero-content{
  padding-top:30px;
}

.hero h1{
  font-size:clamp(65px,7vw,108px);
  line-height:.9;
}

.hero-description{
  color:rgba(255,250,244,.88);
}

.highlights,
.testimonial,
.footer{
  background:#e9dacb;
  color:var(--text-dark);
}

.highlight-item p,
.testimonial blockquote,
.footer-description,
.footer-contact a,
.footer-contact span{
  color:#6d5d50;
}

.services,
.gallery{
  background:#f7efe7;
}

.service-card{
  min-height:300px;
  border-color:rgba(134,98,61,.2);
  background:#f1e4d7;
}

.service-card::before{
  background:#6c5643;
}

.about{
  background:#efe1d4;
  color:var(--text-dark);
}

.about-text p,
.about-list li{
  color:#6d5d50;
}

.about-image::after{
  background:linear-gradient(90deg,rgba(239,225,212,.55),transparent 45%);
}

.gallery-grid{
  grid-template-columns:repeat(2,1fr);
  gap:24px;
}

.property-card,
.property-card:first-child{
  min-height:500px;
  grid-column:auto;
  border-radius:2px;
}

.property-card::after{
  background:linear-gradient(0deg,rgba(35,26,20,.86),transparent 67%);
}

.property-arrow{
  position:absolute;
  top:22px;
  right:22px;
  z-index:3;
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border:1px solid rgba(255,250,244,.72);
  border-radius:50%;
  color:#fffaf4;
  font-size:20px;
  transition:transform .35s ease,background .35s ease,color .35s ease;
}

.property-card:hover .property-arrow{
  background:#fffaf4;
  color:#5b4736;
  transform:rotate(45deg);
}

.booking{
  background:linear-gradient(90deg,rgba(64,48,36,.91),rgba(64,48,36,.61)),url("../img/emma3.jpg") center/cover no-repeat;
}

@media (max-width:760px){
  .hero{
    min-height:720px;
    margin:12px;
    margin-top:85px;
  }

  .gallery-grid{
    grid-template-columns:1fr;
  }

  .property-card,
  .property-card:first-child{
    min-height:430px;
  }
}

/* PROPERTIES NAVIGATION */

.properties-dropdown{
  position:relative;
}

.properties-trigger{
  display:flex;
  align-items:center;
  gap:7px;
  padding:12px 0;
  background:transparent;
  color:#564638;
  font-size:11px;
  font-weight:500;
  letter-spacing:1.2px;
  text-transform:uppercase;
  cursor:pointer;
}

.properties-trigger span{
  color:var(--gold);
  font-size:15px;
  transition:transform .3s ease;
}

.properties-menu{
  position:absolute;
  top:calc(100% + 16px);
  left:50%;
  width:285px;
  padding:14px 0;
  border:1px solid rgba(117,87,57,.15);
  background:rgba(255,250,244,.98);
  box-shadow:0 20px 50px rgba(65,43,27,.14);
  opacity:0;
  visibility:hidden;
  transform:translate(-50%,10px);
  transition:opacity .3s ease,transform .3s ease,visibility .3s ease;
}

.properties-menu::before{
  content:"";
  position:absolute;
  right:0;
  bottom:100%;
  left:0;
  height:18px;
}

.properties-menu li{
  width:100%;
}

.properties-menu a{
  display:block;
  padding:13px 22px;
  color:#59483a;
  font-family:"Cormorant Garamond",serif;
  font-size:17px;
  letter-spacing:.3px;
  text-transform:none;
}

.properties-menu a::after{
  display:none;
}

.properties-menu a:hover{
  background:#f1e4d7;
  color:var(--gold);
}

.properties-dropdown:hover .properties-menu,
.properties-dropdown:focus-within .properties-menu,
.properties-dropdown.open .properties-menu{
  opacity:1;
  visibility:visible;
  transform:translate(-50%,0);
}

.properties-dropdown.open .properties-trigger span{
  transform:rotate(180deg);
}

.mobile-properties-title{
  display:block;
  color:var(--gold);
  font-family:"Cormorant Garamond",serif;
  font-size:30px;
}

.mobile-properties-links{
  display:grid;
  gap:7px;
  margin-top:10px;
}

.mobile-menu .mobile-properties-links a{
  color:#d8c9b7;
  font-family:"Montserrat",sans-serif;
  font-size:12px;
  letter-spacing:.5px;
}
/* SOCIAL MEDIA – ABOUT SECTION */

.about-socials {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 35px;
}

.about-socials a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 48px;
  padding: 0 22px;

  border: 1px solid #aa7a3f;
  color: #5e4b3d;

  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1.2px;
  text-transform: uppercase;

  transition:
    background 0.3s ease,
    color 0.3s ease,
    transform 0.3s ease;
}

.about-socials a span {
  color: #aa7a3f;
  font-size: 16px;
}

.about-socials a:hover {
  background: #aa7a3f;
  color: #fffaf4;
  transform: translateY(-3px);
}

.about-socials a:hover span {
  color: #fffaf4;
}

@media (max-width: 480px) {
  .about-socials {
    flex-direction: column;
  }

  .about-socials a {
    width: 100%;
  }
}

/* =========================================
   PRIVATE HOME CARE
========================================= */

.home-care{
  display:grid;
  grid-template-columns:1fr 1fr;
  min-height:760px;
  background:#f8f1e9;
  color:#3c3028;
}

.home-care-image{
  min-height:760px;
  background-image:url("../el/home.jpg");
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}

.home-care-image img{
  display:none;
}

.home-care-content{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding:90px clamp(50px,7vw,120px);
}

.home-care-content .section-label{
  margin-bottom:28px;
}

.home-care-content .section-title{
  color:#3c3028;
  font-size:clamp(52px,5.4vw,82px);
  line-height:.95;
}

.home-care-tagline{
  margin-top:25px;
  color:#8f622f;
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(25px,2.2vw,36px);
  font-style:italic;
  line-height:1.15;
}

.home-care-description{
  max-width:680px;
  margin-top:28px;
  padding-top:28px;
  border-top:1px solid rgba(170,122,63,.35);
  color:#69594c;
  font-size:14px;
  line-height:1.9;
}

.home-care-list{
  display:grid;
  gap:15px;
  margin-top:30px;
}

.home-care-list li{
  position:relative;
  padding-left:36px;
  color:#58483c;
  font-size:13px;
  line-height:1.6;
}

.home-care-list li::before{
  content:"✓";
  position:absolute;
  top:0;
  left:0;
  display:grid;
  place-items:center;
  width:21px;
  height:21px;
  border:1px solid #aa7a3f;
  border-radius:50%;
  color:#aa7a3f;
  font-size:10px;
}

.home-care-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  min-height:54px;
  margin-top:38px;
  padding:0 28px;
  border:1px solid #aa7a3f;
  color:#705234;
  font-size:11px;
  font-weight:600;
  letter-spacing:1.3px;
  text-transform:uppercase;
  transition:background .3s ease,color .3s ease,transform .3s ease;
}

.home-care-button:hover{
  background:#aa7a3f;
  color:#fffaf4;
  transform:translateY(-3px);
}

.about-text strong{
  color:#9b672f;
  font-weight:600;
}

@media (max-width:1100px){
  .home-care{
    grid-template-columns:1fr;
  }

  .home-care-image{
    min-height:550px;
  }

  .home-care-content{
    padding:85px 8%;
  }
}

@media (max-width:760px){
  .home-care-image{
    min-height:430px;
  }

  .home-care-content{
    padding:75px 7%;
  }

  .home-care-content .section-title{
    font-size:clamp(48px,14vw,66px);
  }

  .home-care-button{
    width:100%;
  }
}
/* PRIVATE HOME CARE – Η ΦΩΤΟΓΡΑΦΙΑ ΕΛΕΓΧΕΤΑΙ ΑΠΟ ΤΗΝ HTML */

.home-care-image {
  position: relative;
  min-height: 760px;
  overflow: hidden;
  background-image: none !important;
}

.home-care-image img {
  display: block !important;
  width: 100%;
  height: 100%;
  min-height: 760px;
  object-fit: cover;
  object-position: center;
}

@media (max-width: 1100px) {
  .home-care-image,
  .home-care-image img {
    min-height: 550px;
    height: 550px;
  }
}

@media (max-width: 760px) {
  .home-care-image,
  .home-care-image img {
    min-height: 430px;
    height: 430px;
  }
}

.brand-monogram {
    position: relative;
    display: inline-block;
    width: 65px;
    height: 68px;
    flex: 0 0 65px;
    color: #b47b37;
    font-family: "Cormorant Garamond", Georgia, serif;
}

.brand-monogram .brand-letter {
    position: absolute;
    display: block;
    font-weight: 500;
    line-height: 1;
}

.brand-monogram .brand-letter-e {
    top: 0;
    left: 0;
    z-index: 1;
    font-size: 64px;
}

.brand-monogram .brand-letter-s {
    top: 25px;
    left: 18px; /* Το μετακινεί μέσα στο E */
    z-index: 2;
    font-size: 54px;
}
/* =================================
   HERO – ΤΕΛΙΚΟ DESKTOP / TABLET / MOBILE
================================= */

/* ---------- DESKTOP ---------- */

.hero-background {
    background-color: #d8ccbd !important;

    background-image:
        linear-gradient(
            90deg,
            #d8ccbd 0%,
            rgba(216, 204, 189, 0.96) 28%,
            rgba(216, 204, 189, 0.65) 50%,
            rgba(216, 204, 189, 0.10) 76%,
            transparent 100%
        ),
        url("../el/image2.png") !important;

    /* Η φωτογραφία εμφανίζεται πιο μακρινή */
    background-size:
        100% 100%,
        auto 125% !important;

    background-position:
        center,
        right 62% !important;

    background-repeat: no-repeat !important;
    filter: none !important;
    opacity: 1 !important;
}

/* Αφαίρεση του παλιού σκούρου overlay */
.hero::before,
.hero::after,
.hero-background::before,
.hero-background::after {
    content: none !important;
    background: transparent !important;
    opacity: 0 !important;
}

/* Το περιεχόμενο πάνω από τη φωτογραφία */
.hero-content {
    position: relative;
    z-index: 2;
    transform: translateY(-25px);
}

/* Καφέ τίτλοι */
.hero-eyebrow,
.hero-content h1,
.hero-content h1 span {
    color: #5b4030 !important;
    text-shadow: none !important;
}

/* Μικρός επάνω τίτλος */
.hero-eyebrow {
    display: inline-block;
    font-weight: 600;
    letter-spacing: 4px;
    line-height: 1.6;
}

/* Κεντρικός τίτλος */
.hero-content h1 {
    line-height: 0.95;
}

.hero-content h1 span {
    font-style: italic;
}

/* Ελληνική περιγραφή */
.hero-description {
    color: #ffffff !important;

    text-shadow:
        0 2px 5px rgba(0, 0, 0, 0.65),
        0 4px 15px rgba(0, 0, 0, 0.45);
}

/* Δεύτερο κουμπί */
.hero .outline-button {
    color: #ffffff !important;
    border-color: #ffffff !important;
}

.hero .outline-button:hover {
    color: #5b4030 !important;
    background-color: #ffffff !important;
}


/* =================================
   TABLET
================================= */

@media (min-width: 761px) and (max-width: 1100px) {

    .hero-background {
        background-image:
            linear-gradient(
                90deg,
                #d8ccbd 0%,
                rgba(216, 204, 189, 0.94) 32%,
                rgba(216, 204, 189, 0.48) 62%,
                rgba(216, 204, 189, 0.05) 100%
            ),
            url("../el/image2.png") !important;

        background-size:
            100% 100%,
            auto 115% !important;

        background-position:
            center,
            right 60% !important;
    }

    .hero-content {
        transform: translateY(-10px);
        max-width: 580px;
    }

    .hero-content h1 {
        font-size: clamp(58px, 8vw, 82px);
    }

    .hero-eyebrow {
        letter-spacing: 3px;
    }
}


/* =================================
   MOBILE
================================= */

@media (max-width: 760px) {

    .hero-background {
        background-color: transparent !important;

        background-image:
            linear-gradient(
                180deg,
                rgba(0, 0, 0, 0.05) 0%,
                rgba(0, 0, 0, 0.18) 100%
            ),
            url("../el/image2.png") !important;

        background-size:
            100% 100%,
            cover !important;

        background-position:
            center,
            center 58% !important;
    }

    .hero-content {
        transform: none;
        max-width: 100%;
    }

    .hero-content h1 {
        font-size: clamp(48px, 15vw, 68px);
        line-height: 0.92;
    }

    .hero-eyebrow {
        font-size: 10px;
        letter-spacing: 2.5px;
        line-height: 1.6;
    }

    .hero-description {
        font-size: 14px;
        line-height: 1.8;
    }
}
/* =================================
   MOBILE HERO LAYOUT
================================= */

@media (max-width: 760px) {

    .hero {
        min-height: 100svh !important;
        padding: 135px 21px 42px !important;
        align-items: stretch !important;
    }

    .hero-content {
        display: flex !important;
        flex-direction: column;
        align-items: stretch;

        width: 100%;
        min-height: calc(100svh - 177px);

        transform: none !important;
    }

    /* Κείμενα επάνω */
    .hero-eyebrow {
        margin-bottom: 25px !important;
    }

    .hero-content h1 {
        margin: 0 !important;
        font-size: clamp(54px, 17vw, 72px) !important;
        line-height: 0.88 !important;
    }

    /* Δημιουργεί το μεγάλο κενό στη μέση */
    .hero-buttons {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 15px !important;

        width: 100%;
        margin-top: auto !important;
        padding-top: 80px;
    }

    /* Ίδιο πλάτος και στα δύο κουμπιά */
    .hero-buttons a {
        width: 100% !important;
        min-height: 55px;
        justify-content: center !important;
        margin: 0 !important;
    }
}
/* =================================
   LOGO — ΣΚΟΥΡΟ ΚΑΦΕ ΣΕ ΟΛΟ ΤΟ SITE
================================= */

:root {
    --logo-color: #6f472c;
}

body:not(.property-page) .site-header .brand,
body:not(.property-page) .site-header .brand-monogram,
body:not(.property-page) .site-header .brand-letter,
body:not(.property-page) .site-header .brand-name,
body:not(.property-page) .site-header .brand-name strong,
body:not(.property-page) .site-header .brand-name > span {
    color: var(--logo-color) !important;
}

body:not(.property-page) .site-header .brand-divider {
    background-color: var(--logo-color) !important;
    border-color: var(--logo-color) !important;
    opacity: 0.55;
}