
:root{
  --v2-navy:#282958;
  --v2-navy-deep:#171a42;
  --v2-blue:#397fc7;
  --v2-aqua:#3ab0de;
  --v2-gold:#7066dc;
  --v2-gold-dark:#6756c8;
  --v3-violet:#914fb7;
  --v3-indigo:#6263d9;
  --v3-sky:#3ba9dc;
  --v3-lavender:#d8d2ff;
}

/* Purple-blue Samed Pavilion identity */
.header-book,
.btn.primary,
.booking-search,
.booking-expand,
.guest-done{
  background:linear-gradient(135deg,var(--v3-sky),var(--v3-indigo) 52%,var(--v3-violet))!important;
  box-shadow:0 12px 28px rgba(88,79,190,.24)!important;
}

.main-nav a::after,
.hero-progress span{
  background:linear-gradient(90deg,var(--v3-sky),var(--v3-indigo),var(--v3-violet))!important;
}

.lang-switch{
  color:#34366c;
  border-color:rgba(89,87,186,.22);
}

.text-link,
.guide-grid span{
  color:#6557c9;
}

.feature-icon{
  color:#555bc8;
}

.site-footer{
  background:linear-gradient(145deg,#171a42,#272961 56%,#263f72)!important;
}

/* Hero: preserve the photograph, remove the heavy black overlay. */
.hero-slide::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(
      90deg,
      rgba(69,54,137,.22) 0%,
      rgba(65,96,180,.10) 28%,
      rgba(59,167,218,.035) 52%,
      transparent 72%
    ),
    linear-gradient(
      0deg,
      rgba(33,30,83,.14) 0%,
      transparent 34%
    )!important;
}

.hero-slide.caption-right::after{
  background:
    linear-gradient(
      270deg,
      rgba(69,54,137,.22) 0%,
      rgba(65,96,180,.10) 28%,
      rgba(59,167,218,.035) 52%,
      transparent 72%
    ),
    linear-gradient(
      0deg,
      rgba(33,30,83,.14) 0%,
      transparent 34%
    )!important;
}

.hero-caption{
  width:min(690px,calc(100% - 100px));
  z-index:3;
}

.hero-slide.caption-right .hero-caption{
  left:auto;
  right:max(5vw,54px);
  text-align:left;
}

/* A soft local aura behind the copy, not a full-image filter. */
.hero-caption::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:-50px -60px -46px -60px;
  border-radius:42%;
  background:
    radial-gradient(
      ellipse at 42% 50%,
      rgba(30,30,84,.34) 0%,
      rgba(57,66,144,.20) 35%,
      rgba(79,85,176,.075) 58%,
      transparent 74%
    );
  filter:blur(18px);
  pointer-events:none;
}

.hero-location{
  color:rgba(238,240,255,.92);
}

.hero-caption .eyebrow{
  color:#d8eaff;
}

.hero-caption h1,
.hero-caption h2{
  max-width:690px;
  font-size:clamp(3.1rem,5vw,5.45rem);
  line-height:1.07;
  text-shadow:
    0 2px 2px rgba(19,18,56,.72),
    0 9px 34px rgba(23,23,70,.42);
}

.hero-title-line{
  display:block;
}

.hero-caption p{
  max-width:600px;
  color:rgba(255,255,255,.94);
  font-size:1.02rem;
  line-height:1.82;
  font-weight:500;
  text-shadow:
    0 1px 2px rgba(17,17,47,.78),
    0 5px 18px rgba(25,24,73,.40);
}

.hero-caption .btn.outline{
  background:rgba(75,72,153,.18);
  border-color:rgba(224,228,255,.65);
}

/* Keep the selected scenic images crisp and visible. */
.hero-slide picture img{
  filter:none!important;
}

.hero-slide.active picture img{
  animation:heroV3Move 6.8s cubic-bezier(.2,.72,.2,1) both!important;
}

@keyframes heroV3Move{
  from{transform:scale(1.025)}
  to{transform:scale(1.006)}
}

.room-card::after{
  background:linear-gradient(0deg,rgba(25,26,74,.84),rgba(46,59,131,.07) 62%)!important;
}

.booking-label b{
  background:linear-gradient(135deg,var(--v3-sky),var(--v3-indigo))!important;
}

.field-icon{
  color:#6357c9!important;
  background:#f0efff!important;
}

.day:hover,
.day.selected{
  background:linear-gradient(135deg,var(--v3-sky),var(--v3-indigo))!important;
}

.day.in-range{
  background:#ecebff!important;
}

@media(max-width:900px){
  .hero-slide.caption-right .hero-caption{
    left:28px;
    right:auto;
  }
}

@media(max-width:640px){
  .hero-slide::after,
  .hero-slide.caption-right::after{
    background:
      linear-gradient(
        0deg,
        rgba(34,29,83,.25) 0%,
        rgba(70,65,151,.10) 40%,
        transparent 70%
      )!important;
  }

  .hero-caption{
    width:auto;
  }

  .hero-caption::before{
    inset:-30px -22px -30px -22px;
    filter:blur(14px);
    background:
      radial-gradient(
        ellipse at 42% 58%,
        rgba(29,27,77,.36),
        rgba(66,66,151,.16) 48%,
        transparent 72%
      );
  }

  .hero-caption h1,
  .hero-caption h2{
    font-size:clamp(2.55rem,11vw,3.25rem);
    line-height:1.12;
  }

  .hero-caption p{
    font-size:.91rem;
    line-height:1.67;
  }
}


/* =========================================================
   V4 — Official Samed Pavilion logo
   ========================================================= */

.site-header{
  height:108px;
}

.site-header.scrolled{
  height:94px;
}

.hero-progress{
  top:108px;
}

.site-header.scrolled + .hero-progress{
  top:94px;
}

.brand{
  display:flex;
  align-items:center;
  width:300px;
  max-width:25vw;
  height:100%;
}

.brand img{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:88px;
  object-fit:contain;
  filter:
    drop-shadow(0 1px 0 rgba(255,255,255,.65))
    drop-shadow(0 4px 9px rgba(72,26,89,.10));
}

.site-header.scrolled .brand img{
  max-height:76px;
}

.footer-logo{
  display:block;
  width:min(360px,100%);
  height:auto;
  max-height:none;
  margin:0 0 20px;
  padding:14px 18px;
  box-sizing:border-box;
  object-fit:contain;
  background:rgba(255,255,255,.97);
  border:1px solid rgba(255,255,255,.55);
  border-radius:14px;
  filter:
    drop-shadow(0 12px 26px rgba(4,9,36,.18));
}

/* Keep the supplied official artwork unchanged. */
.brand img,
.footer-logo{
  mix-blend-mode:normal;
  opacity:1;
}

@media(max-width:1180px){
  .brand{
    width:255px;
    max-width:27vw;
  }

  .brand img{
    max-height:78px;
  }
}

@media(max-width:900px){
  .site-header{
    height:90px;
  }

  .site-header.scrolled{
    height:84px;
  }

  .hero-progress,
  .site-header.scrolled + .hero-progress{
    top:90px;
  }

  .brand{
    width:225px;
    max-width:55vw;
  }

  .brand img,
  .site-header.scrolled .brand img{
    max-height:72px;
  }
}

@media(max-width:640px){
  .site-header,
  .site-header.scrolled{
    height:82px;
  }

  .hero-progress,
  .site-header.scrolled + .hero-progress{
    top:82px;
  }

  .header-inner{
    width:calc(100% - 20px);
  }

  .brand{
    width:205px;
    max-width:58vw;
  }

  .brand img,
  .site-header.scrolled .brand img{
    max-height:66px;
  }

  .footer-logo{
    width:min(310px,100%);
    padding:11px 14px;
  }
}
