/* Official vendor demonstrations. Players load only after a visitor chooses Play. */
.planning-media{margin:0;min-width:0}
.planning-media>figcaption,.service-readable .planning-media>figcaption{font-size:12px;line-height:1.65;color:#50616a;margin:13px 0 0;padding:0;max-width:76ch}
.planning-media>figcaption a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.planning-video{position:relative;background:#edf2ee;border:1px solid #d5ded8;border-radius:10px;overflow:hidden;box-shadow:0 18px 50px -36px #263e4655}
.planning-video-cover{position:relative;display:block;color:#0c1a2d;text-decoration:none}
.planning-video-cover>img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#edf2ee}
.planning-video-play{position:absolute;top:calc((100% - 60px)/2);left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:#0c1a2df2;color:#f3f3f3;box-shadow:0 5px 20px #0c1a2d33;transition:background .2s,scale .2s}
.planning-video-play svg{width:24px;height:24px;margin-left:3px}
.planning-video-cover:hover .planning-video-play{background:#213d52;scale:1.05}
.planning-video-label{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 18px;min-height:60px;font-size:14px;line-height:1.5;font-weight:500}
.planning-video-label>span:last-child{font-size:12px;font-variant-numeric:tabular-nums;font-weight:400;white-space:nowrap;color:#50616a}
.planning-video-stage:empty{display:none}
.planning-video-stage iframe{display:block;width:100%;height:auto;aspect-ratio:16/9;border:0;background:#0c1a2d}
.planning-video-tools{display:none;align-items:center;justify-content:space-between;gap:16px;min-height:60px;padding:8px 16px;font-size:13px;color:#0c1a2d}
[data-video-open="true"] .planning-video-tools{display:flex}
.planning-video-close{font:inherit;min-height:44px;padding:8px 0;cursor:pointer;background:none;border:0;color:inherit}
.planning-video-tools>a{text-decoration:underline;text-underline-offset:4px;min-height:44px;display:inline-flex;align-items:center}
.planning-video :is(a,button,iframe):focus-visible{outline:2px solid #0c1a2d;outline-offset:-4px}
.planning-sample-link{display:block;border:1px solid #d5ded8;border-radius:9px;overflow:hidden;background:#fff}
.planning-sample-link>img{display:block;width:100%;height:auto}
.planning-sample-label{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:13px;line-height:1.5;color:#0c1a2d;padding:13px 16px;min-height:46px;background:#edf2ee}
.planning-sample-label svg{flex:none}
.process-refined .meeting-work.planning-media{padding:0;background:transparent;border:0;box-shadow:none}
.process-refined .meeting-work.planning-media>figcaption{color:#4a5568;margin-top:13px;padding:0}
.process-refined .meeting-work .planning-video{box-shadow:none}
@media(max-width:760px){.planning-video-play{width:50px;height:50px}.planning-video-label{padding:13px 14px;font-size:13px;gap:10px}.planning-video-tools{font-size:12px;gap:12px}.planning-media>figcaption,.service-readable .planning-media>figcaption{font-size:12px}.planning-sample-label{font-size:12px}}
@media(prefers-reduced-motion:reduce){.planning-video-play{transition:none}}
@media print{.planning-video-stage,.planning-video-tools,.planning-video-play{display:none!important}.planning-video-cover[hidden]{display:block!important}.planning-video{box-shadow:none}.planning-video-cover>img{max-height:260px;object-fit:contain}.planning-media{break-inside:avoid}}

/* Approved planning samples are standalone images (Joseph, Sept 19 2026: the full-size link
   was removed, so the crop has to carry the figure on its own at the displayed width). The
   .planning-sample-link rules below are kept for any future figure that needs a link again. */
.planning-sample>img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border:1px solid #d5ded8;border-radius:9px;background:#fff;padding:15px;box-sizing:border-box}
@media(max-width:760px){.planning-sample>img{padding:10px}}
.planning-sample-link{color:#0c1a2d;text-decoration:none;transition:border-color .2s,box-shadow .2s}
.planning-sample-link:hover{border-color:#8d9f99;box-shadow:0 10px 35px -25px #263e4644}
.planning-sample-link:focus-visible{outline:2px solid #0c1a2d;outline-offset:4px}
.planning-sample-link>img{height:auto;aspect-ratio:auto;object-fit:contain;background:#fff}
.planning-sample-label>span:last-child{display:inline-flex;align-items:center;gap:8px;flex:none;font-size:12px;white-space:nowrap;font-weight:500}
.planning-native .service-demo-video{height:auto;aspect-ratio:auto;object-fit:contain}
.planning-extra{margin:22px 0 0;border-top:1px solid #d5ded8;border-bottom:1px solid #d5ded8;color:#0c1a2d}
.planning-extra>summary{display:flex;align-items:center;gap:16px;min-height:58px;padding:13px 0;list-style:none;cursor:pointer;font-family:"General Sans",Arial,sans-serif;font-size:15px;font-weight:500;line-height:1.5}
.planning-extra>summary::-webkit-details-marker{display:none}
.planning-extra>summary::marker{content:""}
.planning-extra>summary>span:first-child{flex:1}
.planning-extra-duration{flex:none;color:#50616a;font-size:12px;font-weight:400;font-variant-numeric:tabular-nums}
.planning-extra>summary>svg{flex:none;transition:transform .2s}
.planning-extra[open]>summary>svg{transform:rotate(45deg)}
.planning-extra>summary:focus-visible{outline:2px solid #0c1a2d;outline-offset:4px}
.planning-extra-content{padding:2px 0 22px}
.process-refined .planning-extra{margin-top:20px}
@media(max-width:760px){
 .planning-sample-label{padding:12px;gap:10px;align-items:flex-start}
 .planning-sample-label>span:first-child{max-width:18ch}
 .planning-sample-label>span:last-child{gap:6px;font-size:11px;min-height:18px}
 .planning-extra>summary{font-size:14px;gap:12px}
}
@media(prefers-reduced-motion:reduce){.planning-sample-link,.planning-extra>summary>svg{transition:none}}
@media print{.planning-sample-label>span:last-child,.planning-extra-duration{display:none}.planning-extra{display:none}.planning-sample-link{border:0;box-shadow:none}}


/* Service pages without photography yet (Sept 19, 2026): a navy line illustration in the hero
   slot, same vocabulary as the budgeting tile, and a labeled placeholder where the RightCapital
   sample will go. Swap the figure for a .service-lead-photo img when the photo exists. */
.service-lead-art{display:block;aspect-ratio:1.52;background:#0c1a2d;border-radius:12px;overflow:hidden}
.service-lead-art>svg{display:block;width:100%;height:100%}
.planning-visual-placeholder{aspect-ratio:16/9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;text-align:center;padding:28px;color:#0c1a2d;background:#f1ede4;border:1px solid #d7b486;border-radius:3px}
.planning-visual-placeholder>svg{width:68px;height:68px;color:#7d5f33}
.planning-visual-placeholder>span{font-family:"Editor's Note",Georgia,serif;font-size:clamp(28px,3vw,42px);font-weight:300;line-height:1.2}
.planning-visual-placeholder>small{font-size:13px;line-height:1.6;color:#4a5568;max-width:44ch}
@media(max-width:900px){.service-lead-art{aspect-ratio:1.65;border-radius:9px}}
@media(max-width:760px){.planning-visual-placeholder{min-height:240px;aspect-ratio:4/3;padding:22px 16px;gap:14px}.planning-visual-placeholder>svg{width:48px;height:48px}.planning-visual-placeholder>span{font-size:28px}.planning-visual-placeholder>small{font-size:12px}}
/* Valerio Wealth narrated walkthroughs (self-hosted, captions on by default). */
.planning-video-stage video{display:block;width:100%;height:auto;aspect-ratio:1250/858;background:#0c1a2d}
.planning-video[data-video-src]{background:#0c1a2d;border-color:#0c1a2d}
.planning-video[data-video-src] .planning-video-cover>img{aspect-ratio:1250/858;object-fit:cover;background:#0c1a2d}
.planning-video[data-video-src] .planning-video-label{background:#fff}
.planning-video[data-video-src] .planning-video-play{background:#d7b486;color:#0c1a2d}
.planning-video[data-video-src] .planning-video-cover:hover .planning-video-play{background:#e2c79f}
.planning-video[data-video-src] .planning-video-tools{background:#fff}
.planning-video-note{font-size:12px;color:#50616a}
/* Captions switch in the tools row, off by default (Sept 26 2026). */
.planning-video-captions{font:inherit;min-height:44px;padding:8px 0;cursor:pointer;background:none;border:0;color:inherit;margin-right:auto}
.planning-video-captions:focus-visible{outline:2px solid #0c1a2d;outline-offset:2px}
