/* V3: editable editorial copy on the right, independent player on the left. */
.wp-block-group.is-style-pivaz-video.pv-video-editorial {
 display: grid;
 grid-template-columns: repeat(2, minmax(0, 1fr));
 align-items: center;
 gap: 28px;
 padding: 24px;
 border: 1px solid #dce8e1;
 border-radius: 28px;
 background: white;
 box-sizing: border-box;
}
.pv-video-editorial > .pv-video-copy,
.pv-video-editorial > .pv-video-player { margin: 0 !important; min-width: 0; }
.pv-video-editorial .pv-video-copy { text-align: right; }
.pv-video-editorial .pv-video-copy > .pv-eyebrow {
 display: inline-flex;
 align-items: center;
 padding: 5px 13px;
 margin: 0;
 border-radius: 12px;
 background: #e5f5f1;
 color: var(--pv-brand);
 font-size: 12px;
 font-weight: 500;
 line-height: 1.75;
}
.pv-video-editorial .pv-video-copy > :is(h2,h3,h4) {
 margin: 14px 0;
 font-size: 23px;
 font-weight: 600;
 line-height: 1.6;
 color: var(--pv-ink);
}
.pv-video-editorial .pv-video-copy > p:not(.pv-eyebrow) { margin: 14px 0; font-size: 14px; line-height: 1.95; color: var(--pv-muted); }
.pv-video-editorial .pv-video-copy > .wp-block-buttons { margin: 20px 0 0 !important; justify-content: flex-start; }
.pv-video-editorial .pv-video-watch > .wp-block-button__link {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 gap: 10px;
 min-height: 50px;
 padding: 11px 24px;
 border-radius: 12px;
 font-size: 14px;
 font-weight: 600;
 line-height: 1.75;
}
.pv-video-editorial .pv-video-watch > .wp-block-button__link::after {
 content: "";
 width: 20px;
 height: 20px;
 background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23027a6d' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 12H4m6-6-6 6 6 6'/%3E%3C/svg%3E") center / contain no-repeat;
}
.pv-video-editorial .pv-video-watch > a:focus:not(:focus-visible) { outline: none; }
.pv-video-editorial .pv-video-watch > a:focus-visible { outline: 2px solid var(--pv-brand); outline-offset: 3px; }
.pv-video-editorial > .pv-video-player {
 position: relative;
 width: 100%;
 aspect-ratio: 16/9;
 border-radius: 24px;
 overflow: hidden;
 background: var(--pv-night);
}
.pv-video-editorial .pv-video-player > video { display: block; width: 100%; height: 100%; object-fit: contain; border-radius: 0; background: var(--pv-night); }
.pv-video-editorial .pv-video-player > figcaption {
 position: absolute;
 right: 16px;
 bottom: 16px;
 margin: 0;
 padding: 5px 9px;
 border-radius: 8px;
 background: #0b1120c9;
 color: white;
 font-size: 12px;
 line-height: 1.75;
 pointer-events: none;
 transition: opacity .2s;
}
.pv-video-editorial .pv-video-player:hover > figcaption,
.pv-video-editorial .pv-video-player:focus-within > figcaption,
.pv-video-editorial[data-playing="true"] .pv-video-player > figcaption { opacity: 0; }
.pv-video-editorial .pv-video-play {
 position: absolute;
 top: 50%;
 left: 50%;
 transform: translate(-50%, -50%);
 display: grid;
 place-items: center;
 width: 64px;
 height: 56px;
 padding: 0;
 border: 1px solid transparent;
 border-radius: 16px;
 background: white;
 color: var(--pv-brand);
 box-shadow: 0 8px 32px #0003;
 cursor: pointer;
}
.pv-video-editorial .pv-video-play::before { content: ""; border-top: 9px solid transparent; border-bottom: 9px solid transparent; border-left: 14px solid currentColor; margin-left: 4px; }
.pv-video-editorial .pv-video-play:hover { border-color: var(--pv-brand); box-shadow: 0 0 0 1px var(--pv-brand), 0 8px 32px #0003; }
.pv-video-editorial .pv-video-play:focus-visible { outline: 2px solid var(--pv-brand); outline-offset: 3px; }
.pv-video-editorial .pv-video-play:focus:not(:focus-visible) { outline: none; }
.pv-video-editorial .pv-video-play[hidden] { display: none !important; }
@media (max-width: 767px) {
 .wp-block-group.is-style-pivaz-video.pv-video-editorial { grid-template-columns: minmax(0, 1fr); gap: 24px; padding: 20px; }
 .pv-video-editorial > .pv-video-player { grid-row: 1; }
 .pv-video-editorial .pv-video-copy > :is(h2,h3,h4) { font-size: 21px; }
 .pv-video-editorial .pv-video-play { width: 50px; height: 46px; border-radius: 12px; }
 .pv-video-editorial .pv-video-player > figcaption { right: 9px; bottom: 9px; font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) { .pv-video-editorial * { transition: none !important; } }
