/* Production additions on top of the designer's styles.css (kept unchanged). */

.hp {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

.contact .action[aria-busy="true"] {
  opacity: .7;
  cursor: progress;
  transform: none;
}

.lead-success {
  padding: 8px 0 4px;
  outline: none;
}
.lead-success h3 {
  font-size: clamp(1.6rem, 3vw, 2rem);
  font-weight: 900;
  color: var(--lightgold);
  margin-bottom: 12px;
}
.lead-success p {
  color: #f2dfc3;
  font-size: 1.08rem;
  line-height: 1.7;
}

.testimonial.has-poster {
  background: linear-gradient(180deg, #130d0a14 35%, #130d0aa6 100%), var(--poster) center / cover no-repeat;
}
.testimonial.has-poster .tplay {
  background: #21160f8c;
}
.testimonial[hidden],
.proof-controls[hidden] {
  display: none;
}
.testimonials.is-few {
  justify-content: center;
}

dialog video {
  max-height: min(58vh, 620px);
}

/* Footer */
.footer a {
  color: #c9ad86;
  text-underline-offset: 3px;
}
.footer a:hover {
  color: var(--lightgold);
}
.footer .sep {
  margin-inline: 8px;
  opacity: .6;
}

/* Privacy dialog */
dialog {
  scrollbar-width: thin;
  scrollbar-color: #8d6235 transparent;
}
#privacyDialog .policy {
  text-align: right;
  margin: 16px 0 22px;
  font-size: .95rem;
  line-height: 1.75;
  color: #d9cab5;
}
#privacyDialog .policy h4 {
  color: var(--lightgold);
  font-size: 1rem;
  margin: 16px 0 4px;
}
#privacyDialog .policy p {
  margin: 0;
  color: inherit;
}

/* Cookie consent (shown only when GA4 / Meta Pixel IDs are configured) */
.consent {
  position: fixed;
  inset-inline: 14px;
  bottom: 14px;
  z-index: 90;
  max-width: 560px;
  margin: auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 16px;
  padding: 16px 18px;
  border: 1px solid #d6ad6c;
  border-radius: 16px;
  background: #2b2018f2;
  backdrop-filter: blur(8px);
  box-shadow: 0 20px 60px #000a;
  font-size: .88rem;
  line-height: 1.6;
  color: #ead9c4;
}
.consent[hidden] {
  display: none;
}
.consent p {
  flex: 1 1 260px;
}
.consent a {
  color: #f3d08c;
}
.consent__actions {
  display: flex;
  gap: 8px;
}
.consent button {
  border-radius: 10px;
  padding: 8px 16px;
  font-weight: 700;
  border: 1px solid #c49a62;
  background: #513a28;
  color: #fff3dd;
}
.consent button[data-consent="granted"] {
  background: linear-gradient(115deg, #f1d899, #c99d4b 45%, #f4d796);
  border-color: transparent;
  color: #31200f;
}

/* Legal pages (accessibility statement) */
.legal {
  min-height: 100vh;
  padding: 120px 0 80px;
  background: radial-gradient(ellipse 680px 420px at 50% 0, #80512e40, transparent 76%), linear-gradient(180deg, #21160f, #1a110d);
}
.legal .container {
  max-width: 760px;
}
.legal h1 {
  font-size: clamp(2rem, 5vw, 3rem);
  font-weight: 900;
  margin-bottom: 10px;
}
.legal h2 {
  font-size: 1.3rem;
  color: var(--lightgold);
  margin: 32px 0 8px;
}
.legal p,
.legal li {
  color: #decdb6;
}
.legal ul {
  padding-inline-start: 22px;
  margin: 8px 0 0;
}
.legal .back {
  display: inline-block;
  margin-top: 40px;
  color: #f3d08c;
}
.site-top a.brand {
  text-decoration: none;
}
