/* Only the five explicitly approved illustrative images; existing real photographs are unchanged. */
figure.approved-ai-media { display:flex; flex-direction:column; align-items:stretch; min-width:0; margin:0; padding:0; height:auto; overflow:visible; background:transparent; }
figure.approved-ai-media > img { display:block; position:static; inset:auto; width:100%; max-width:100%; height:auto; aspect-ratio:1280/853; object-fit:contain; object-position:center; border-radius:8px; }
figure.approved-ai-media > figcaption { display:block; position:static; inset:auto; margin:0; padding:6px 8px; border:0; border-radius:0; background:transparent; color:#51443e; font:400 .8rem/1.5 system-ui,sans-serif; text-align:left; white-space:normal; }
.prototype-compact-detail .approved-ai-detail { align-self:start; width:100%; }
.prototype-compact-detail .compact-plan-hero:has(.approved-ai-detail) { grid-template-columns:minmax(0,1fr); }
.prototype-plan-card > .approved-ai-media { flex-shrink:0; width:100%; }
.plan-list-card:has(> .approved-ai-media) { height:auto; grid-template-columns:minmax(0,1fr); }
.plan-list-card:has(> .approved-ai-media) > .plan-list-card-content { height:auto; min-height:296px; }
.approved-plan-gallery { max-width:1120px; margin:32px auto; padding:0 16px; }
.approved-plan-gallery > h2 { font-size:clamp(1.35rem,3vw,1.8rem); line-height:1.5; }
.approved-plan-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.approved-plan-card { min-width:0; padding:12px; background:#fffaf7; border:1px solid #dfd2c9; border-radius:12px; }
.approved-plan-card > a { display:flex; align-items:center; min-height:44px; margin-top:4px; color:#752638; font-weight:700; line-height:1.5; text-underline-offset:3px; }
@media(min-width:1000px){.prototype-compact-detail .compact-plan-hero:has(.approved-ai-detail){grid-template-columns:minmax(0,1fr) minmax(0,1fr);} .plan-list-card:has(> .approved-ai-media){grid-template-columns:minmax(0,46fr) minmax(0,54fr);align-items:center;}}
@media(max-width:720px){.approved-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.plan-list-card:has(> .approved-ai-media) > .plan-list-card-content{padding:8px;}}
@media(max-width:480px){.approved-plan-grid{grid-template-columns:minmax(0,1fr);}}
