/* Microsite extras — allowed additions only (contract §9 / 02 §9 / 02 §12). */
html { overflow-x: clip; }
/* tokens.css sets overflow-x:hidden on body, which computes overflow-y to auto
   and kills position:sticky on the reviews stats / FAQ title columns. */
body { overflow-x: clip; }
:focus-visible {
  outline: 2px solid var(--amber-400);
  outline-offset: 2px;
}
@media (max-width: 960px) {
  input, select, textarea { font-size: 16px; }
}
[data-coast] button,
[data-coast] a,
.subnav-scroll button {
  position: relative;
}
[data-coast] button::after,
[data-coast] a::after,
.subnav-scroll button::after {
  content: '';
  position: absolute;
  inset: -6px;
}

[data-coast="reviews"] [data-coast$=".p-1"],
[data-coast="page-reviews"] [data-coast$=".p-1"] {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  overflow-wrap: break-word;
}

.ms-review-more {
  display: inline-flex;
  align-items: center;
  font-family: 'Hanken Grotesk', system-ui, sans-serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 1.2;
  color: var(--magenta-500);
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  margin: 0 0 14px;
}
[data-coast] button.ms-review-more::after {
  inset: -15px 0;
}
.ms-review-more:active {
  opacity: 0.7;
}
@media (hover: hover) and (pointer: fine) {
  .ms-review-more:hover {
    text-decoration: underline;
  }
}
[data-ms-review-read-close] {
  position: relative;
}
[data-ms-review-read-close]::after {
  content: '';
  position: absolute;
  inset: -5px;
}

[data-coast="faq"] [data-coast$=".text-1"] p { margin: 0; }
[data-coast="faq"] [data-coast$=".text-1"] p + p { margin-top: 0.6em; }

[data-coast="listen.wrap.card-1"] iframe,
[data-coast="page-tracks.wrap-2.card-1"] iframe {
  width: 100%;
  border: 0;
  display: block;
}

.cf-turnstile {
  margin: 12px 0 4px;
}
[data-coast="enquiry.wrap.card-1"] .cf-turnstile {
  margin: 0 0 16px;
}
#enquiry {
  scroll-margin-top: 109px;
}
