/* ============================================================
   tourism-signature-exclusive.css
   Signature Exclusive refinement layer
   ============================================================ */

:root {
  --signature-gold: #e0c28b;
  --signature-gold-soft: #f7e8c7;
  --signature-ink: #102019;
  --signature-shadow: 0 26px 70px rgba(10, 17, 14, .12);
  --signature-shadow-lg: 0 40px 100px rgba(10, 17, 14, .16);
}

body {
  background:
    radial-gradient(circle at 14% 0%, rgba(224,194,139,.12), transparent 24%),
    radial-gradient(circle at 100% 12%, rgba(48,82,69,.08), transparent 18%),
    linear-gradient(180deg, #fffefb 0%, #faf5ec 46%, #fcfaf5 100%);
}

.site-header {
  background: linear-gradient(180deg, rgba(8,15,12,.76), rgba(8,15,12,.30));
}

.site-header.scrolled {
  background: rgba(10,18,15,.88);
}

.hero::before,
.page-hero::before {
  background:
    linear-gradient(180deg, rgba(7,12,10,.64), rgba(7,12,10,.24) 24%, rgba(7,12,10,.42) 62%, rgba(7,12,10,.78)),
    radial-gradient(circle at 18% 16%, rgba(224,194,139,.20), transparent 28%),
    radial-gradient(circle at 82% 20%, rgba(255,255,255,.08), transparent 24%),
    linear-gradient(90deg, rgba(7,12,10,.40), rgba(7,12,10,.02) 42%, rgba(7,12,10,.18));
}

.hero__title,
.page-hero h1 {
  text-shadow: 0 10px 34px rgba(0,0,0,.34);
}

.hero__title {
  max-width: 13ch;
  font-size: clamp(3.2rem, 6vw, 6.4rem);
}

.hero__subtitle {
  max-width: 48rem;
}

.hero__actions .btn,
.header-cta,
.btn-group .btn {
  position: relative;
  overflow: hidden;
}

.hero__actions .btn::after,
.header-cta::after,
.btn-group .btn::after {
  content: "";
  position: absolute;
  top: 0;
  left: -120%;
  width: 45%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.28), transparent);
  transform: skewX(-20deg);
  transition: left .6s ease;
}

.hero__actions .btn:hover::after,
.header-cta:hover::after,
.btn-group .btn:hover::after {
  left: 130%;
}

.intro__img-wrap,
.service-card,
.room-card,
.menu-card,
.offer-card,
.page-card,
.feature-card,
.contact-form-wrap,
.contact-info .info-card,
.info-card,
.testimonial-card,
.gal-item .gal-inner,
.map-container,
.form-card,
.reservation-card {
  box-shadow: var(--signature-shadow);
}

.intro__img-wrap:hover,
.service-card:hover,
.room-card:hover,
.menu-card:hover,
.offer-card:hover,
.page-card:hover,
.feature-card:hover,
.contact-form-wrap:hover,
.contact-info .info-card:hover,
.info-card:hover,
.testimonial-card:hover,
.gal-item:hover .gal-inner,
.map-container:hover {
  box-shadow: var(--signature-shadow-lg);
}

.section-title .label,
.hero__eyebrow,
.page-hero .label {
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.20);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.section-title h2 {
  font-size: clamp(2.1rem, 3vw, 3.35rem);
}

.section-title p {
  margin-inline: auto;
}

.gal-over {
  background: linear-gradient(180deg, transparent 16%, rgba(7,12,10,.85));
}

.gal-zoom,
.service-card__icon,
.info-row-icon,
.info-item__icon,
.direction-step__num,
.rez-section__num {
  box-shadow: 0 12px 30px rgba(224,194,139,.18);
}

.cta-banner {
  position: relative;
  overflow: hidden;
}

.cta-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 18% 0%, rgba(224,194,139,.18), transparent 24%),
    linear-gradient(120deg, rgba(255,255,255,.06), transparent 32%, rgba(255,255,255,.025) 64%, transparent 100%);
  pointer-events: none;
}

.footer-legal__badge {
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 999px;
  padding: .65rem .9rem;
}

.footer-legal__badge:hover {
  background: rgba(224,194,139,.14);
}

.page-contact .contact-form-wrap,
.page-rezervare .rez-form-card,
.page-rezervare .rez-info-card {
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,251,246,.88));
}

.page-home .intro__content,
.page-cazare .room-grid,
.page-restaurant .restaurant-grid,
.page-terasa .terasa-grid,
.page-contact .contact-layout,
.page-locatie .locatie-grid {
  position: relative;
}

@media (max-width: 991px) {
  .hero__title { font-size: clamp(2.8rem, 9vw, 4.8rem); }
}

@media (max-width: 768px) {
  .hero__actions .btn,
  .btn-group .btn,
  .header-cta { min-height: 50px; }
  .section-title h2 { font-size: clamp(1.9rem, 7vw, 2.8rem); }
}
