
/* Premium Clean — lebih sederhana, rapi, dan elegan */

:root{
  --pc-primary:#0f6f86;
  --pc-primary-dark:#0b5366;
  --pc-text:#17384a;
  --pc-muted:#647b89;
  --pc-line:#d8e6eb;
  --pc-soft:#f3f9fb;
  --pc-shadow:0 12px 34px rgba(28,72,88,.10);
}

body{
  background:#f4f9fb;
  color:var(--pc-text);
}

/* Header */
.site-header{
  position:sticky;
  top:0;
  z-index:100;
  width:100%;
  margin:0;
  border:0;
  border-bottom:1px solid var(--pc-line);
  border-radius:0;
  background:rgba(255,255,255,.96);
  box-shadow:0 4px 18px rgba(28,72,88,.06);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.nav a{
  border-radius:8px;
  transition:background .2s ease,color .2s ease;
}

.nav a:not(.btn):hover,
.nav a:not(.btn).active{
  color:var(--pc-primary);
  background:#eaf5f8;
}

/* Tombol */
.btn{
  border:1px solid var(--pc-primary);
  background:var(--pc-primary);
  box-shadow:none;
  transition:background .2s ease,transform .2s ease;
}

.btn::before{
  display:none;
}

.btn:hover{
  background:var(--pc-primary-dark);
  transform:translateY(-1px);
  box-shadow:0 8px 18px rgba(15,111,134,.16);
}

.btn.ghost{
  color:var(--pc-primary);
  background:#fff;
  border-color:#9fc7d1;
  box-shadow:none;
}

/* Hero */
.hero{
  width:100%;
  margin:0;
  min-height:520px;
  border:0;
  border-radius:0;
  box-shadow:none;
  overflow:hidden;
}

.hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(
    90deg,
    rgba(8,29,39,.82) 0%,
    rgba(8,42,54,.64) 42%,
    rgba(8,42,54,.18) 78%
  );
}

.hero::after{
  display:none;
}

.hero img{
  transform:none;
  transition:none;
}

.hero:hover img{
  transform:none;
}

.hero-content{
  position:relative;
  z-index:2;
  max-width:720px;
  margin-left:clamp(28px,6vw,110px);
  padding:86px 0;
  animation:none;
}

.hero-content h1{
  text-shadow:none;
}

/* Search */
.search-band{
  width:min(1320px,calc(100% - 32px));
  margin:-28px auto 0;
  position:relative;
  z-index:5;
  border:1px solid var(--pc-line);
  border-radius:16px;
  background:#fff;
  box-shadow:var(--pc-shadow);
  backdrop-filter:none;
}

.filter input,
.filter select,
.panel-form input,
.panel-form select,
.panel-form textarea{
  background:#fff;
  border:1px solid #cadde4;
  box-shadow:none;
}

.filter input:focus,
.filter select:focus,
.panel-form input:focus,
.panel-form select:focus,
.panel-form textarea:focus{
  outline:none;
  border-color:var(--pc-primary);
  box-shadow:0 0 0 3px rgba(15,111,134,.12);
  transform:none;
}

/* Section */
.section{
  width:min(1320px,calc(100% - 32px));
  margin-inline:auto;
}

.section.alt,
.page-title,
.detail-hero,
.form-section{
  border:1px solid var(--pc-line);
  border-radius:18px;
  background:#fff;
  box-shadow:none;
}

/* Cards */
.card,
.testimonial-card,
.feature,
.facility-list > div,
.faq details{
  border:1px solid var(--pc-line);
  background:#fff;
  box-shadow:0 8px 24px rgba(28,72,88,.07);
  transition:transform .22s ease,box-shadow .22s ease;
}

.card::before,
.testimonial-card::before,
.feature::before,
.facility-list > div::before{
  display:none;
}

.card:hover,
.testimonial-card:hover,
.feature:hover,
.facility-list > div:hover{
  transform:translateY(-4px);
  border-color:#bfd7de;
  box-shadow:0 14px 30px rgba(28,72,88,.11);
}

.card img{
  transition:transform .35s ease;
}

.card:hover img{
  transform:scale(1.025);
  filter:none;
}

.price{
  color:var(--pc-primary);
  background:none;
  -webkit-text-fill-color:initial;
}

/* Galeri */
.gallery-strip button,
.gallery-grid button{
  border-radius:14px;
  border:1px solid var(--pc-line);
  box-shadow:0 8px 22px rgba(28,72,88,.08);
}

.gallery-strip button:hover,
.gallery-grid button:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 26px rgba(28,72,88,.12);
}

.gallery-strip button:hover img,
.gallery-grid button:hover img{
  transform:scale(1.03);
  filter:none;
}

/* CTA */
.section.cta{
  background:var(--pc-primary-dark);
  box-shadow:none;
}

.section.cta::after{
  display:none;
}

/* Footer */
.footer{
  width:100%;
  margin:24px 0 0;
  border:0;
  border-radius:0;
  background:#0d3545;
  box-shadow:none;
}

/* Mobile */
@media(max-width:900px){
  .site-header{
    border-radius:0;
  }

  .hero{
    min-height:480px;
  }

  .hero-content{
    margin-left:28px;
    margin-right:28px;
    padding:68px 0;
  }

  .search-band{
    margin-top:14px;
  }
}

@media(max-width:620px){
  .site-header,
  .hero,
  .footer{
    width:100%;
  }

  .search-band,
  .section{
    width:calc(100% - 20px);
  }

  .hero{
    min-height:440px;
  }

  .hero-content{
    margin:0;
    padding:54px 20px;
  }

  .section.alt,
  .page-title,
  .detail-hero,
  .form-section{
    border-radius:14px;
  }

  .card:hover,
  .testimonial-card:hover,
  .feature:hover,
  .facility-list > div:hover{
    transform:none;
  }
}
