.product-details { border-block: 1px solid var(--color-border); }
.product-details h2 { margin-block: 1rem 3rem; max-width: 42rem; }
.product-details__grid { display: grid; gap: 2rem; }
.product-details__grid article { border-top: 1px solid var(--color-border); padding-top: 1.5rem; }
.product-details__grid h3 { margin-block: 1.5rem 1rem; }
.product-details__grid p { color: var(--color-muted); }
@media (min-width: 48rem) { .product-details__grid { grid-template-columns: repeat(3, 1fr); } }
.product-details__note { max-width: 52rem; color: var(--color-muted); margin: -1.5rem 0 2.5rem; }
.product-details__stages { list-style: none; padding: 0; margin: 0; display: grid; gap: clamp(1.25rem, 2vw, 2rem); }
/* Incubation stages: separate timeline panel and content surface. */
.product-details__stage { display:grid; grid-template-columns:minmax(0,1fr); gap:1rem; }
.product-details__stage-heading { position:relative; isolation:isolate; overflow:hidden; display:grid; grid-template-columns:2.75rem minmax(0,1fr); gap:1.25rem; align-items:start; padding:clamp(1.25rem,2.2vw,2rem); border-radius:1.25rem; background:linear-gradient(135deg,var(--color-primary-soft),var(--color-green-surface)); min-width:0; }
.product-details__stage-heading::before { content:''; position:absolute; z-index:-1; pointer-events:none; width:32rem; height:28rem; left:-22rem; bottom:-24rem; border-radius:45%; background:color-mix(in srgb, var(--color-green-icon) 37.65%, transparent); box-shadow:3rem -3rem 0 color-mix(in srgb, var(--color-green-icon) 30.2%, transparent),6rem -6rem 0 color-mix(in srgb, var(--color-primary-soft) 36.08%, transparent); transform:rotate(28deg); }
.product-details__heading-copy { display:grid; justify-items:start; gap:.9rem; min-width:0; }
.product-details__number { color:#677e8d; font-size:.75rem; font-weight:700; letter-spacing:.16em; line-height:1.4; text-transform:uppercase; }
.product-details__stage-heading h3 { margin:0; font-size:clamp(1.2rem,1.7vw,1.6rem); line-height:1.3; letter-spacing:-.025em; overflow-wrap:break-word; }
.product-details__duration { display:inline-flex; align-items:center; gap:.5rem; padding:.55rem .85rem; border-radius:999px; background:var(--color-green-icon); color:var(--color-green-dark); font-size:.875rem; line-height:1.4; font-weight:700; margin:.25rem 0 0; }
.product-details__duration svg { width:1.15rem; height:1.15rem; flex:none; }
.product-details__rail { display:flex; flex-direction:column; align-items:center; gap:1.6rem; position:relative; }
.product-details__rail::before { content:''; position:absolute; width:1px; top:.5rem; bottom:.5rem; background:var(--color-primary-border); z-index:-1; }
.product-details__step { display:grid; place-items:center; width:.85rem; height:.85rem; border:1px solid var(--color-primary-border); border-radius:50%; background:var(--color-green-surface); }
.product-details__step.is-current { width:2.75rem; height:2.75rem; border:1px solid var(--color-primary); background:linear-gradient(135deg,var(--color-primary),var(--color-primary)); box-shadow:0 4px 12px color-mix(in srgb, var(--color-primary) 14.9%, transparent),inset 0 1px 4px #ffffff40; font-size:1.2rem; font-weight:700; color:#fff; }
.product-details__stage-body { min-width:0; display:grid; align-content:start; gap:1.75rem; padding:clamp(1.25rem,2.5vw,2.25rem); border:1px solid var(--color-green-border); border-radius:1.25rem; background:linear-gradient(130deg,#fff,var(--color-green-surface)); box-shadow:0 12px 36px -24px color-mix(in srgb, var(--color-green-dark) 20.78%, transparent); }
.product-details__intro { display:grid; grid-template-columns:2.75rem minmax(0,1fr); align-items:start; gap:1.25rem; font-size:clamp(1.15rem,1.65vw,1.5rem); font-weight:700; margin:0; line-height:1.4; letter-spacing:-.015em; }
.product-details__stage-icon { display:grid; place-items:center; width:2.75rem; height:2.75rem; border-radius:.75rem; color:var(--color-green-dark); background:var(--color-green-icon); }
.product-details__stage-icon svg { width:1.65rem; height:1.65rem; }
.product-details__stage-body ul { list-style:none; margin:0; padding:0; display:grid; gap:1.25rem; color:#516687; }
.product-details__stage-body li { position:relative; padding-left:2.65rem; line-height:1.65; }
.product-details__stage-body li::before { content:'✓'; position:absolute; left:0; top:.05rem; display:grid; place-items:center; width:1.8rem; height:1.8rem; border-radius:50%; background:var(--color-green-icon); color:var(--color-green-dark); font-weight:800; font-size:1.15rem; }
.product-details__goal { margin:.75rem 0 0; padding:clamp(1rem,2vw,1.75rem); border-left:4px solid var(--color-primary); border-radius:.3rem .9rem .9rem .3rem; background:linear-gradient(120deg,var(--color-primary-soft),var(--color-primary-soft)); }
.product-details__goal-heading { display:grid; grid-template-columns:2.75rem minmax(0,1fr); gap:1rem; align-items:start; }
.product-details__goal strong { display:block; color:var(--color-primary); margin:0 0 .25rem; line-height:1.5; font-size:1.1rem; }
.product-details__goal p { margin:0; line-height:1.65; color:#36596a; }
.product-details__goal ul { margin-top:1rem; padding-top:1rem; border-top:1px solid var(--color-green-border); color:var(--color-primary); font-weight:600; gap:.65rem; }
.product-details__disclosure summary { display:flex; align-items:center; gap:1rem; min-height:3.25rem; padding:.875rem 1.25rem; border:1px solid var(--color-green-border); border-radius:.75rem; color:var(--color-primary); background:linear-gradient(120deg,var(--color-green-icon),var(--color-primary-soft)); font-weight:700; cursor:pointer; list-style:none; }
.product-details__goal-toggle-icon { width:1.4rem; height:1.4rem; flex:none; }
.product-details__disclosure summary::-webkit-details-marker { display:none; }
.product-details__disclosure summary::after { content:''; margin-left:auto; flex:0 0 .5rem; height:.5rem; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:translateY(-.125rem) rotate(45deg); }
.product-details__disclosure summary:hover { background:var(--color-green-icon); border-color:var(--color-primary-border); }
.product-details__disclosure summary:focus-visible { outline:3px solid var(--color-primary); outline-offset:3px; }
.product-details__hide,.product-details__disclosure[open] .product-details__show { display:none; }
.product-details__disclosure[open] .product-details__hide { display:inline; }
.product-details__disclosure[open] summary::after { transform:translateY(.125rem) rotate(225deg); }
@media(min-width:64rem) {
 .product-details__stage { grid-template-columns:minmax(16rem,1fr) minmax(0,2.6fr); gap:1.5rem; }
 .product-details__stage-heading { padding-top:2.5rem; }
 .product-details__heading-copy { padding-top:.25rem; }
 .product-details__rail { gap:2rem; }
 .product-details__stage-body > ul { margin-left:4rem; }
}
@media(max-width:35rem) {
 .product-details__intro { grid-template-columns:2.25rem minmax(0,1fr); gap:.75rem; }
 .product-details__intro .product-details__stage-icon { width:2.25rem; height:2.25rem; }
 .product-details__goal-heading { grid-template-columns:minmax(0,1fr); gap:.75rem; }
 .product-details__stage-body { gap:1.4rem; }
}

.product-details__topics { padding: clamp(1.25rem, 3vw, 2rem); margin-bottom: 2.5rem; border: 1px solid var(--color-green-border); border-radius: 1.25rem; background: linear-gradient(120deg, var(--color-primary-soft), var(--color-green-surface)); }
.product-details__topics h3 { margin: 0 0 1.25rem; font-size: 1.25rem; }
.product-details__topics ul { display: grid; gap: 1.25rem 2rem; margin: 0; padding-left: 1.25rem; }
.product-details__topics li { padding-left: .25rem; line-height: 1.6; }
.product-details__topics li::marker { color: var(--color-primary); }
@media (min-width: 60rem) { .product-details__topics ul { grid-template-columns: repeat(3, minmax(0, 1fr)); } }


/* Microlearning editorial layout, isolated from the incubation stage cards. */
.product-details--training > .container > h2 { max-width: 64rem; margin-bottom: clamp(2rem, 4vw, 3rem); letter-spacing: -.035em; }
.product-details--training .product-details__topics { background: linear-gradient(125deg, var(--color-primary-soft), var(--color-green-surface)); border-color: var(--color-green-border); padding: clamp(1.25rem, 2.5vw, 2rem); }
.product-details--training .product-details__topics h3 { display: flex; align-items: center; gap: 1.25rem; font-size: 1.2rem; line-height: 1.4; margin-bottom: 1.25rem; }
.product-details__training-icon { display: grid; place-items: center; flex: none; width: 3rem; height: 3rem; border-radius: .8rem; background: linear-gradient(140deg, #f0f3f4, var(--color-primary-soft)); color: var(--color-green-ink); }
.product-details__training-icon svg { width: 1.75rem; height: 1.75rem; }
.product-details--training .product-details__topics ul { list-style: none; padding: 0; gap: 1.25rem; }
.product-details--training .product-details__topics li { position: relative; padding-left: 1.75rem; color: var(--color-muted); }
.product-details--training .product-details__topics li::before { content: ''; position: absolute; left: .3rem; top: .65em; width: .4rem; height: .4rem; border-radius: 50%; background: var(--color-primary-border); }
.product-details--training .product-details__grid { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
.product-details--training .product-details__grid article { min-width: 0; padding: clamp(1.25rem, 2.2vw, 2rem); border: 1px solid var(--color-green-icon); border-radius: 1.25rem; background: linear-gradient(125deg, #fff, var(--color-green-surface)); box-shadow: 0 10px 32px -18px color-mix(in srgb, var(--color-green-ink) 14.9%, transparent); }
.product-details--training .product-details__grid h3 { margin: 0; font-size: clamp(1.1rem, 1.6vw, 1.4rem); line-height: 1.3; letter-spacing: -.02em; }
.product-details--training .product-details__grid p { margin: 0; font-size: 1rem; line-height: 1.7; color: #536078; }
.product-details__training-heading { display: flex; align-items: center; gap: 1rem; margin-bottom: 1rem; }
.product-details__training-heading .product-details__training-icon { color: var(--color-green-muted); background: linear-gradient(135deg, var(--color-primary-soft), var(--color-primary-soft)); }
@media (min-width: 40rem) { .product-details--training .product-details__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 64rem) {
 .product-details--training .product-details__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; }
 .product-details--training .product-details__topics li:not(:nth-child(3n + 1)) { border-left: 1px solid var(--color-green-border); padding-left: 2.5rem; }
 .product-details--training .product-details__topics li:not(:nth-child(3n + 1))::before { left: 1rem; }
}

.product-details__format-title { margin: 0 0 1.25rem; font-size: 1.4rem; }
.product-details--training .product-details__topics li strong { display:block; margin-bottom:.65rem; color:var(--color-green-ink); font-size:1.05rem; line-height:1.4; }
.product-details--training .product-details__topics li span { display:block; }
