:root{
  --ths-accent-gold:#c8a96a;
  --ths-accent-gold-strong:#b78f4e;
  --ths-accent-soft:rgba(200,169,106,.14);
  --ths-shadow-soft:0 10px 30px rgba(34,26,18,.06);
  --ths-shadow-lux:0 18px 48px rgba(34,26,18,.10);
  --ths-glow-gold:0 0 0 1px rgba(200,169,106,.18), 0 10px 30px rgba(200,169,106,.10);
}

/* premium highlight surfaces */
.ths-card:hover,
.ths-service-item:hover,
.ths-voucher:hover,
.ths-price-menu .item:hover{
  box-shadow:var(--ths-shadow-lux);
}

/* gentle gold ring for important blocks */
.ths-card-premium,
.ths-price-menu .item,
.ths-voucher{
  position:relative;
}
.ths-card-premium::before,
.ths-price-menu .item::before,
.ths-voucher::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(200,169,106,.14);
}

/* luxury buttons */
.ths-btn,
.ths-price-menu a.button,
.ths-voucher a.button,
.ths-banner .button{
  background-image:linear-gradient(180deg, rgba(255,255,255,.12), rgba(0,0,0,0)),
                   linear-gradient(135deg, var(--ths-accent-gold), var(--ths-accent-gold-strong));
  border:none;
  color:#fff;
  box-shadow:0 8px 24px rgba(183,143,78,.20);
}
.ths-btn:hover,
.ths-price-menu a.button:hover,
.ths-voucher a.button:hover,
.ths-banner .button:hover{
  transform:translateY(-1px);
  box-shadow:0 12px 28px rgba(183,143,78,.24);
}

/* softer headings */
.ths-heading,
.ths-banner-title,
.ths-price-menu .group-title,
.ths-price-menu .item-title,
.ths-service-item h3,
.ths-voucher-title{
  text-shadow:0 1px 0 rgba(255,255,255,.18);
}

/* elegant label treatment */
.ths-subheading,
.ths-label,
.ths-price-menu .section-label,
.ths-banner .subtitle{
  letter-spacing:1.3px;
  color:var(--ths-accent-gold-strong);
}

/* refined dividers */
.ths-divider{
  background:linear-gradient(90deg, rgba(200,169,106,0), rgba(200,169,106,.45), rgba(200,169,106,0));
}

/* soft premium sections */
.ths-surface-soft,
.ths-banner,
.ths-voucher,
.ths-price-menu .item{
  background-image:linear-gradient(180deg, rgba(255,255,255,.82), rgba(249,246,241,.96));
}

/* mobile tuning */
@media (max-width: 767px){
  .ths-section{
    padding-top:42px;
    padding-bottom:42px;
  }

  .ths-btn,
  .ths-price-menu a.button,
  .ths-voucher a.button,
  .ths-banner .button{
    padding:11px 16px;
  }

  .ths-price-menu .item,
  .ths-card,
  .ths-voucher{
    border-radius:12px;
  }
}

/* PHASE 1 MOBILE PATCH */
@media(max-width:768px){
  .booking-layout{display:flex!important;flex-direction:column!important;}
  .booking-right{position:relative!important;top:auto!important;}
  .summary-footer{position:fixed;bottom:0;left:0;right:0;background:#fff;z-index:999;padding:12px;}
  .service-chip{font-size:16px!important;padding:10px 14px!important;margin:4px;}
}
