/* Every STEP uses the same heading/photo column and 330:140 image ratio. */
.kosodate-topic.kosodate-topic--with-photo{display:grid;grid-template-columns:330px minmax(0,1fr);gap:28px;align-items:start}
.kosodate-topic-heading--photo{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px 16px;align-items:center;width:100%;max-width:330px;margin:0}
.kosodate-topic-heading--photo .kosodate-step{width:64px}
.kosodate-topic.kosodate-topic--with-photo .kosodate-topic-heading--photo{grid-column:1;grid-row:auto}
.kosodate-topic.kosodate-topic--with-photo .kosodate-topic-heading--photo h2{font-size:20px;line-height:1.5}
.kosodate-topic-content{min-width:0;grid-column:2}
.kosodate-step-photo{position:relative;grid-column:1/-1;width:100%;aspect-ratio:33/14;height:auto;margin:0;overflow:hidden;background:#eef2e9}
.kosodate-step-photo img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.kosodate-step-photo figcaption{position:absolute;right:5px;bottom:4px;padding:1px 5px;background:#ffffffdf;color:#536052;font-size:9px;line-height:1.5;pointer-events:none}
.kosodate-topic--with-photo .kosodate-topic-content>.kosodate-copy:last-child{margin-bottom:0}
@media(min-width:901px){.kosodate-topic--with-photo .kosodate-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kosodate-topic--pregnancy-birth .kosodate-topic-grid{grid-template-columns:minmax(0,1fr)}.kosodate-topic--pregnancy-birth .kosodate-topic-card:nth-child(n){grid-column:auto;grid-row:auto}}
@media(max-width:900px){.kosodate-topic.kosodate-topic--with-photo{grid-template-columns:minmax(0,1fr);gap:18px}.kosodate-topic-content{grid-column:1}.kosodate-topic-heading--photo{max-width:330px}.kosodate-topic.kosodate-topic--with-photo .kosodate-topic-heading--photo{margin:0}}
@media(max-width:700px){.kosodate-topic-heading--photo{grid-template-columns:54px minmax(0,1fr);gap:12px}.kosodate-topic-heading--photo .kosodate-step{width:54px;min-height:60px}.kosodate-topic-heading--photo .kosodate-step strong{font-size:32px}.kosodate-topic.kosodate-topic--with-photo .kosodate-topic-heading--photo h2{font-size:20px;line-height:1.5}}
