/* A quiet typographic surface, with one stable, animated model tag. */
.provider-hero {
  scroll-margin-top: 96px;
  position: relative;
  width: 100%;
  padding-block: clamp(48px, 5vw, 80px) calc(clamp(28px, 3vw, 40px) + 4px);
  container-type: inline-size;
  display: grid;
  place-items: center;
  isolation: isolate;
  background: var(--paper);
  color: var(--ink);
  border: 0;
}
.provider-content {
  width: 100%;
  max-width: 1296px;
  padding-inline: 28px;
  text-align: center;
}
.provider-content h1 {
  font: 400 clamp(36px, 5.5cqw, 76px)/1.13 var(--body);
  letter-spacing: -.052em;
  text-wrap: balance;
}
.provider-headline { display: block; }
.provider-tailoring { display: block; }
.provider-headline em,
.provider-tailoring em {
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 400;
  font-style: italic;
  letter-spacing: -.025em;
}
.provider-line {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .3em;
  margin-top: calc(.7em + 4px);
  font-size: clamp(22px, 2.6cqw, 34px);
  line-height: 1.25;
  letter-spacing: -.03em;
  white-space: nowrap;
}
.provider-pill {
  --provider-accent: var(--orange);
  display: inline-flex;
  align-items: center;
  gap: .3em;
  width: 6.25em;
  padding: .2em .46em .24em;
  font-size: .98em;
  letter-spacing: -.042em;
  border: 1px solid #2538470e;
  border-radius: 100px;
  background: #eef1f380;
  box-shadow: inset 0 1px 0 #ffffffb3;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.provider-dot {
  width: .14em;
  height: .14em;
  flex-shrink: 0;
  border-radius: 50%;
  background: var(--provider-accent);
  transition: background .6s ease;
}
.provider-words {
  display: grid;
  flex: 1;
  text-align: left;
  position: relative;
}
.provider-word {
  grid-area: 1 / 1;
  visibility: hidden;
  opacity: 0;
  transform: translateY(.38em);
  filter: blur(7px);
  transition: opacity .52s ease, transform .62s cubic-bezier(.22, 1, .36, 1), filter .52s ease, visibility .62s;
}
.provider-word.is-current { visibility: visible; opacity: 1; transform: none; filter: none; }
.provider-word.is-leaving { visibility: visible; opacity: 0; transform: translateY(-.38em); filter: blur(7px); }
.provider-cta {
  display: inline-flex;
  padding: 12px 23px;
  margin-top: clamp(32px, 3vw, 44px);
  border-radius: 100px;
  background: #191c21;
  color: #fff;
  border: 1px solid #191c21;
  font-size: 14px;
  text-decoration: none;
  box-shadow: 0 5px 16px #14233515;
}
.provider-cta:hover { background: #343a42; border-color: #343a42; }
.provider-motion {
  position: absolute;
  right: 18px;
  bottom: 18px;
  padding: 10px;
  border-radius: 50%;
  border: 1px solid #ffffffb0;
  background: #ffffff78;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  color: #586271;
}
.provider-motion svg { width: 18px; height: 18px; }
.provider-play-icon, .provider-motion[aria-pressed=true] .provider-pause-icon { display: none; }
.provider-motion[aria-pressed=true] .provider-play-icon { display: block; }
html[data-theme=dark] .provider-pill { background: #ffffff0a; border-color: #ffffff1c; box-shadow: inset 0 1px 0 #ffffff12; }
html[data-theme=dark] .provider-dot { background: color-mix(in srgb, var(--provider-accent) 75%, white); }
html[data-theme=dark] .provider-cta { background: #f0f3f7; color: #171e29; border-color: #f0f3f7; }
html[data-theme=dark] .provider-motion { color: #d1d9e3; background: #ffffff0c; border-color: #ffffff25; }
/* Carry the same typographic rhythm into the existing product content. */
.product-copy h2 { font-weight: 620; letter-spacing: -.055em; }
.product-copy .product-lead { font-size: 19px; line-height: 1.65; text-wrap: pretty; }
.product-copy .product-detail { font-size: 16px; line-height: 1.75; text-wrap: pretty; }
.trailer-section { padding: 0 0 64px; }
.film-label { display: flex; justify-content: space-between; gap: 20px; color: var(--muted); font-size: 12px; padding: 24px 0 17px; border-top: 1px solid var(--line); }
.trailer-player { position: relative; aspect-ratio: 16/9; overflow: hidden; border-radius: 22px; background: #000; }
.trailer-player .trailer-play { top: 64%; }
html.motion-paused .provider-word { transition: none; }
@media (max-width: 700px) {
  .provider-content { padding-inline: 20px; }
  .provider-content h1 { font-size: clamp(32px, 8.5cqw, 44px); }
  html[lang=en] .provider-headline { max-width: 8.8em; margin-inline: auto; text-wrap: balance; }
  .provider-pill { padding-inline: .38em; }
  .provider-line { font-size: clamp(20px, 5.6cqw, 24px); gap: .3em; }
  .provider-cta { margin-top: 32px; }
  .provider-motion { right: 12px; bottom: 12px; padding: 9px; }
  .product-copy h2 { font-size: clamp(36px, 10vw, 52px); }
  .product-copy .product-lead, .product-copy .product-detail { font-size: 16px; }
  .trailer-section { padding-bottom: 40px; }
  .trailer-player { border-radius: 14px; }
  .trailer-player .trailer-play { top: 72%; }
}
@media (prefers-reduced-motion: reduce) { .provider-word, .provider-pill, .provider-dot { transition: none; } }
