/* Focused whole-site refinements. House style, full app sources and V11 hero stay. */
body.v12 .v12-page-index {
  position: sticky;
  top: 0;
  z-index: 30;
  background: #fff;
  border-bottom: 1px solid #dfe8ee;
  box-shadow: 0 4px 14px #09234008;
}
body.v12.v5-detail .r-website .v12-page-index .r-calc-anchor-nav > .r-container { flex-wrap: wrap; row-gap: 0; overflow-x: visible; }
body.v12.v5-detail .r-website .v12-page-index a { min-height: 44px; display: inline-flex; align-items: center; }
body.v12.v5-detail .r-website .v12-page-index[data-compact-index] > summary { display: flex; }
body.v12 main [id] { scroll-margin-top: 115px; }
body.v12 .v12-work-brief > summary,
body.v12 .v12-recap > summary {
  display: flex;
  gap: 14px;
  align-items: center;
  cursor: pointer;
  list-style: none;
  min-height: 52px;
}
body.v12 .v12-work-brief > summary::-webkit-details-marker,
body.v12 .v12-recap > summary::-webkit-details-marker { display: none; }
body.v12 .v12-work-brief > summary::after,
body.v12 .v12-recap > summary::after { content: '+'; margin-left: auto; font-size: 23px; font-weight: 400; color: #005e9c; }
body.v12 .v12-work-brief[open] > summary::after,
body.v12 .v12-recap[open] > summary::after { content: '−'; }
body.v12 .v12-brief-label { flex: 0 0 auto; color: #496078; font-size: 11px; }
body.v12.v5-detail .r-website .v7-work-bridge { padding-block: 16px; }
body.v12.v5-detail .r-website .v12-work-brief h2 { font-size: 18px; line-height: 1.45; margin: 0; }
body.v12 .v12-work-brief .v7-work-points { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; padding-top: 15px; }
body.v12 .v12-work-brief .v7-work-points li { padding: 0 0 14px; }
body.v12 .v12-work-brief .v7-video-explainer { margin-top: 8px; }
body.v12 .v12-recap { border-block: 1px solid #dfe8ee; padding-block: 8px; margin-block: 30px; font-size: 15px; font-weight: 600; }
/* The play action has its own space underneath, leaving the real UI uncovered. */
body.v12 .r-product-video figcaption { gap: 12px; flex-wrap: wrap; }
body.v12 .r-product-video .v5-video-start {
  position: static;
  inset: auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: auto;
  min-height: 44px;
  padding: 7px 13px;
  border: 1px solid currentColor;
  border-radius: 5px;
  background: transparent;
  color: #005e9c;
  font: 650 12px/1.6 var(--sans);
}
body.v12 .v6-detail-proof .v5-video-start { color: #e8f1f8; }
body.v12 .r-product-video .v5-video-label { background: transparent; padding: 0; color: inherit; box-shadow: none; font-size: inherit; }
body.v12 .r-product-video .v5-video-play { width: 20px; height: 20px; background: transparent; color: inherit; box-shadow: none; font-size: 10px; }
body.v12 .r-product-video .v5-video-start:hover { background: #6fb3e81a; }
body.v12 .r-product-video .v5-video-start:hover .v5-video-label { background: transparent; }
body.v12 .r-product-video .v5-video-start[hidden],
body.v12 .r-product-video .r-video-toggle[hidden] { display: none; }
body.v12 .r-product-video .v5-video-start:focus-visible { outline-offset: 3px; }
body.v12 .close-button { min-width: 44px; min-height: 44px; }
body.v12 .zoom-scale { min-height: 44px; }
@media (min-width: 701px) {
  body.v12.v5-detail .r-website .v6-detail-hero-grid { align-items: start; }
  body.v12.v5-detail .r-website .v6-detail-copy { padding-top: 10px; }
  body.v12.v5-detail .r-website .v6-detail-proof { width: min(100%,440px); justify-self: center; }
  body.v12.v5-detail .r-website .v6-detail-proof .r-product-video:not(.v8-video-started) .r-product-video-frame { max-width: 400px; margin-inline: auto; }
  body.v12.v5-detail .r-website .v6-detail-proof .r-product-video:not(.v8-video-started) .r-product-video-frame.v8-poster-portrait { max-width: 220px; }
}
@media (max-width: 700px) {
  body.v12 .v12-page-index { max-height: calc(100dvh - 12px); overflow: auto; }
  body.v12 .v12-page-index > summary { min-height: 52px; }
  body.v12 .v12-page-index[open] { box-shadow: 0 10px 30px #09234014; }
  body.v12 .v12-brief-label { display: none; }
  body.v12 .v12-work-brief .v7-work-points { grid-template-columns: 1fr; gap: 0; }
  body.v12 .v12-work-brief .v7-work-points li { padding-block: 12px; }
  body.v12.v5-detail .r-website .v12-work-brief h2 { font-size: 17px; }
  body.v12.v5-detail .r-website .v6-detail-proof .r-product-video:not(.v8-video-started) .r-product-video-frame:has(video[data-source-mobile]) {
    width: min(100%,350px);
    max-width: 100%;
    height: auto;
    aspect-ratio: var(--v8-poster-ratio, 1 / 2);
    margin-inline: auto;
  }
  body.v12.v5-detail .r-website .v6-detail-proof .r-product-video:not(.v8-video-started) .r-product-video-frame video[data-source-mobile]:not([controls]) {
    width: 100%; height: 100%; object-fit: contain;
  }
  body.v12 .r-field { font-size: 16px; }
}
