/* Connected editorial composition — preserve the approved homepage hero and Method. */
.program-page .hero{
 display:flex;align-items:center;isolation:isolate;min-height:720px;height:88svh;max-height:920px;
 padding:150px 6% 110px;border-radius:0 0 40px 40px;
 background:radial-gradient(ellipse at 82% 76%,#491719 0,transparent 62%),#171516;
}
.program-page .hero-media{
 position:absolute;inset:0;z-index:0;width:100%;max-width:none;height:100%;
 border:0;border-radius:0;overflow:hidden;pointer-events:none;
}
.program-page .hero-media::after{
 content:"";position:absolute;inset:0;pointer-events:none;
 background:linear-gradient(90deg,#171516 0%,#171516ee 24%,#17151699 43%,transparent 68%),linear-gradient(0deg,#21080799 0,transparent 30%,transparent 78%,#171516 100%);
}
.program-page .hero-media video{
 position:absolute;inset:0;display:block;width:100%;height:100%;max-height:none;aspect-ratio:auto;
 object-fit:cover;object-position:center;background:transparent;
}
.program-page .hero-copy{position:relative;z-index:2;width:55%;max-width:760px;padding:0;flex:none}
.program-page .hero h1{font-size:clamp(76px,8.3vw,132px);line-height:.96;letter-spacing:-.04em;margin:0 0 32px;color:var(--vs-champagne)}
.program-page .hero-line{font:italic 400 clamp(24px,2.3vw,33px)/1.4 var(--vs-serif);max-width:28ch}
.program-page .hero .eyebrow{margin-bottom:26px;font-size:10px}
.program-page .hero-media .film-toggle{pointer-events:auto;z-index:3;bottom:38px;right:5%;font-size:12px;min-height:44px}
.program-page .scroll-cue{z-index:3;bottom:48px;left:6%}
.program-page.equilibrium .hero-media video{
 inset:0 0 0 auto;width:56%;height:100%;object-fit:contain;object-position:50% 50%;
 -webkit-mask-image:radial-gradient(ellipse 64% 66% at 50% 50%,#000 47%,#000b 65%,transparent 88%);
 mask-image:radial-gradient(ellipse 64% 66% at 50% 50%,#000 47%,#000b 65%,transparent 88%);
}
.program-page.equilibrium .hero-media::after{background:linear-gradient(90deg,#171516 0%,#171516e8 26%,transparent 59%),linear-gradient(0deg,#21080780,transparent 35%,transparent 80%,#171516 100%)}
/* Two families, with a clear distinction between section titles and supporting ideas. */
.program-page .lead{font:400 18px/1.8 var(--vs-sans);letter-spacing:0}
.program-page .equilibrium-introduction{padding-top:100px;padding-bottom:80px;gap:10%;align-items:start}
.program-page .equilibrium-introduction h2{font-size:clamp(38px,4vw,56px);max-width:14ch}
.program-page .equilibrium-introduction .lead{font:400 18px/1.8 var(--vs-sans);margin-bottom:20px}
.program-page .equilibrium-recognition{max-width:1200px;padding-top:10px;padding-bottom:95px}
.program-page .equilibrium-recognition h2{font-size:clamp(36px,3.4vw,48px);margin-bottom:36px}
.program-page .equilibrium-recognition li{font:400 17px/1.75 var(--vs-sans);padding:23px 0;max-width:none}
.program-page .tier-promise{font:400 17px/1.7 var(--vs-sans);max-width:40ch}
.program-page .journey-grid h3,.program-page .outcome-grid h3{font-size:30px;line-height:1.15}
/* The sunset has its own full-width passage. Outcomes follow on paper. */
.equilibrium-transformation{background:var(--vs-cream)}
.equilibrium .sunset-film{position:relative;display:block;max-width:1440px;margin:0 auto;overflow:hidden;background:var(--vs-charcoal);border-radius:0}
.equilibrium .sunset-film video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
.equilibrium .sunset-film .film-toggle{right:4%;bottom:28px;min-height:44px;font-size:12px}
.equilibrium .transformation-editorial{padding-top:75px;padding-bottom:85px;max-width:1280px}
.equilibrium .transformation-editorial #transformation-title{font:500 clamp(38px,4vw,58px)/1.1 var(--vs-serif);max-width:22ch;margin:0 0 48px}
.transformation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 52px}
.transformation-grid article{border-top:1px solid var(--vs-rule);padding-top:22px;min-width:0}
.program-page .transformation-grid h3{font:500 29px/1.2 var(--vs-serif);margin:0 0 14px}
.program-page .transformation-grid p{font:400 15px/1.8 var(--vs-sans);margin:0;max-width:37ch;color:var(--vs-muted)}
/* Homepage invitations: a portrait of natural proportion and four editorial rows. */
.home-page .programs{padding-top:64px;padding-bottom:70px}
.home-page .program-grid{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(32px,6vw,88px);align-items:center}
.home-page .program-portrait{position:relative;align-self:center;justify-self:center;width:100%;max-width:390px;aspect-ratio:330/538;height:auto;min-height:0;max-height:none;border-radius:22px;box-shadow:none}
.home-page .program-portrait video{object-fit:contain;object-position:center}
.home-page .program-offers{gap:0;min-width:0}
.home-page .program-card{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:24px;row-gap:0;flex:none;min-height:0;padding:27px 0;border:0;border-top:1px solid var(--vs-rule);border-radius:0;background:none;box-shadow:none;overflow:visible}
.home-page .program-card:last-child{border-bottom:1px solid var(--vs-rule)}
.home-page .program-card::before,.home-page .program-card::after{display:none}
.home-page .program-card h3{grid-column:1;font:500 clamp(31px,2.7vw,39px)/1.12 var(--vs-serif);margin:0 0 12px}
.home-page .program-card p{grid-column:1;max-width:47ch}
.home-page .program-card .program-lead{font-size:14px;line-height:1.65;margin:0 0 7px}
.home-page .program-card .program-description{font-size:14px;line-height:1.75;margin:0}
.home-page .program-card .program-explore{grid-column:2;grid-row:1/5;align-self:center;margin:0;min-width:0;min-height:46px;padding:12px 18px;gap:17px;font-size:13px;box-shadow:none;background:transparent}
.home-page .program-card .program-explore:hover{background:#e7d2ad33}
.program-page.body-renaissance .intro-contact{padding-top:65px;padding-bottom:85px}
@media(min-width:761px) and (max-width:1050px){
 .home-page .program-grid{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:32px}
 .home-page .program-card{column-gap:16px}
 .home-page .program-card .program-explore{grid-column:1;grid-row:auto;justify-self:start;margin-top:18px}
 .transformation-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px}
}
@media(max-width:760px){
 .program-page .hero{display:flex;justify-content:flex-start;align-items:flex-start;height:auto;min-height:820px;max-height:none;padding:155px 7% 430px;border-radius:0 0 28px 28px}
 .program-page .hero-copy{width:100%;max-width:600px;padding:0}
 .program-page .hero h1{font-size:clamp(55px,14vw,88px);line-height:.97;margin-bottom:22px}
 .program-page .hero-line{font-size:25px;line-height:1.35;max-width:27ch}
 .program-page .hero-media{inset:0;width:100%;height:100%;max-width:none}
 .program-page .hero-media video{inset:auto 0 65px;width:100%;height:410px;object-fit:cover;object-position:100% center}
 .program-page .hero-media::after{background:linear-gradient(180deg,#171516 0%,#171516 45%,transparent 68%,#21080744 90%,#210807aa 100%)}
 .program-page.equilibrium .hero-media video{inset:auto 0 42px;width:100%;height:440px;object-fit:contain;object-position:65% center;mask-image:radial-gradient(ellipse 65% 65% at 50% 50%,#000 45%,transparent 90%);-webkit-mask-image:radial-gradient(ellipse 65% 65% at 50% 50%,#000 45%,transparent 90%)}
 .program-page.equilibrium .hero-media::after{background:linear-gradient(180deg,#171516 0%,#171516 44%,transparent 69%,#21080766 100%)}
 .program-page .hero-media .film-toggle{bottom:24px;right:7%;padding:10px 14px;font-size:11px}
 .program-page .scroll-cue{bottom:39px;left:7%;font-size:8px;letter-spacing:.1em}
 .program-page .scroll-cue span{margin-left:12px}
 .program-page .hero .eyebrow{font-size:9px;margin-bottom:22px}
 .program-page .equilibrium-introduction{padding-top:65px;padding-bottom:55px}
 .program-page .equilibrium-introduction h2{font-size:42px;max-width:15ch}
 .program-page .equilibrium-introduction .lead,.program-page .lead{font-size:16px;line-height:1.8}
 .program-page .equilibrium-recognition{padding-bottom:60px}
 .program-page .equilibrium-recognition h2{font-size:37px;margin-bottom:26px}
 .program-page .equilibrium-recognition li{font-size:16px;line-height:1.75;padding:20px 0}
 .equilibrium .sunset-film .film-toggle{bottom:14px;right:5%;font-size:10px;min-height:40px;padding:9px 13px}
 .equilibrium .transformation-editorial{padding-top:50px;padding-bottom:55px}
 .equilibrium .transformation-editorial #transformation-title{font-size:40px;margin-bottom:32px}
 .transformation-grid{grid-template-columns:1fr;gap:27px}
 .program-page .transformation-grid h3{font-size:28px;margin-bottom:10px}
 .program-page .transformation-grid p{max-width:none}
 .home-page .programs{padding:40px 26px 50px}
 .home-page .program-grid{grid-template-columns:1fr;gap:40px}
 .home-page .program-portrait{width:100%;max-width:300px;aspect-ratio:330/538;border-radius:18px}
 .home-page .program-card{padding:25px 0;grid-template-columns:1fr;gap:0}
 .home-page .program-card h3{font-size:35px}
 .home-page .program-card .program-explore{grid-column:1;grid-row:auto;justify-self:start;margin-top:19px}
}
@media(min-width:761px){
 .program-page.equilibrium .hero-media video{width:auto;right:5%;aspect-ratio:608/1080;mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 48%,#000d 66%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 48%,#000d 66%,transparent 100%)}
}
@media(min-width:761px){
 .program-page .hero-media video,.program-page.equilibrium .hero-media video{top:90px;height:calc(100% - 90px)}
 .body-renaissance .hero-line{max-width:36ch}
}
@media(max-width:760px){
 .program-page.equilibrium .hero-media video{inset:auto 50% 42px auto;transform:translateX(50%);width:auto;aspect-ratio:608/1080;mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 48%,#000d 66%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 50% 50% at 50% 50%,#000 48%,#000d 66%,transparent 100%)}
}

/* Connect the Method title to the relief; keep its open field for text. */
.home-page .method-refined{padding-top:0;background:var(--vs-cream)}
.home-page .method-copy #muses-heading{margin:0 0 clamp(20px,2.4vw,38px);font:500 clamp(32px,3vw,52px)/1.04 var(--vs-serif);color:var(--vs-burgundy);text-wrap:balance}
@media(max-width:999px){.home-page .method-copy{padding-top:40px}}
/* Match the closing invitation's cream fill, with a dark edge on ivory. */
.home-page .program-card .program-explore:is(:hover,:focus-visible),.program-page .tier-inquiry:is(:hover,:focus-visible),.closing-link:is(:hover,:focus-visible){background:var(--vs-champagne);color:var(--vs-burgundy);border-color:#907449;box-shadow:inset 0 0 0 1px #907449}
.body-renaissance :is(.for-you,.journey){background:var(--vs-burgundy);color:var(--vs-cream);box-shadow:0 0 0 100vmax var(--vs-burgundy);clip-path:inset(0 -100vmax);padding-block:clamp(54px,6vw,92px)}
.body-renaissance :is(.for-you,.journey) :is(h2,h3,.eyebrow){color:var(--vs-champagne)}
.body-renaissance .fit-grid aside{color:var(--vs-cream)}
.body-renaissance .fit-list li span{width:38px;height:38px;border:1px solid var(--vs-champagne);background:linear-gradient(130deg,#d1bc93,#b79b6c);color:var(--vs-burgundy);font:500 14px/1 var(--vs-sans);font-variant-numeric:tabular-nums}
