/* Shared reading widths and rhythm for all catalog and company landings. */
:root { --landing-width:1440px; --landing-gutter:clamp(24px,4vw,72px); }
#products-page .products-body,#company-page .company-body { overflow-wrap:break-word; }
#products-page .products-body > *,#company-page .company-body > * { min-width:0; }
#products-page :is(.product-content,.products-detail-main,.course-main) { min-width:0; }
#products-page :is(.products-heading,.product-content,.products-detail-main,.product-section) p { line-height:1.7; }
#products-page .products-detail-layout { align-items:start; }
#products-page .product-sidebar { border-radius:12px; background:rgb(5 10 17/.86); padding:20px 14px; }
#products-page .product-sidebar a { line-height:1.5; }
#products-page .products-body :is(.mentoring-overview,.cx-overview,.automation-reference,.circular-reference) { max-width:100%; }
#products-page.is-mentoring-overview .mentoring-overview { min-height:0; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(28px,4vw,64px); padding:12px 0 40px; align-items:center; }
#products-page.is-mentoring-overview .mentoring-overview__copy { padding:clamp(24px,3vw,40px); border:1px solid rgb(var(--gold-base-rgb)/.18); border-radius:18px; background:rgb(6 11 19/.9); }
#products-page.is-mentoring-overview .mentoring-overview__copy p { margin:0; font:400 clamp(18px,1.3vw,22px)/1.85 'Segoe UI',sans-serif; color:#d2d5dc; }
#products-page.is-mentoring-overview .mentoring-overview__divider { margin:28px 0; }
#products-page.is-mentoring-overview .mentoring-overview__diagram { min-width:0; overflow:visible; }
#products-page.is-mentoring-overview .mentoring-cycle { display:block; width:100%; max-width:620px!important; min-width:0!important; margin:auto; transform:none!important; }
#products-page .mentoring-overview__footer { font-size:14px; line-height:1.7; padding:24px 10px; margin:0 0 56px; }
.mentoring-step-list { display:none; }
#products-page .product-section { margin-bottom:48px; }
#products-page .product-plans { gap:24px; align-items:stretch; }
#products-page :is(.product-plan,.product-family,.product-card) { min-width:0; }
#products-page .products-body :is(img,video) { max-width:100%; }
#products-page .products-body table { max-width:100%; }
#products-page .iso-phva__phases { align-self:start; align-content:start; grid-template-rows:none; grid-auto-rows:max-content; gap:12px; }
#products-page .iso-phva__phase { align-self:start; height:auto; min-height:0; }
#products-page .iso-phva__phase > ul { flex:none; }
#products-page .course-phase-choice { flex:none; min-height:88px; }
#products-page .course-phase-choice::after { content:'+'; margin-left:auto; padding:0 8px; font-size:25px; color:var(--gold-base); }
#products-page .course-phase-choice[aria-expanded="true"]::after { content:'−'; }
#products-page .course-phase-choice:disabled::after { opacity:.4; }
.site-directory-link { margin:36px auto 0; }
#products-page :is(.improvement-sheet,.training-reference,.mentoring-poster) { overflow:clip; }
@media(min-width:901px) {
 #stage[data-layout="fluid"] :is(#products-page,#company-page) { padding:88px var(--landing-gutter) 60px; }
 #stage[data-layout="fluid"] #products-page .products-heading,
 #stage[data-layout="fluid"] #company-page .company-heading { position:relative!important; inset:auto!important; width:100%!important; max-width:var(--landing-width)!important; transform:none!important; margin:0 auto 40px!important; }
 #stage[data-layout="fluid"] #products-page .products-heading h1,
 #stage[data-layout="fluid"] #company-page .company-heading h1 { font:400 clamp(30px,2.5vw,44px)/1.2 Georgia,serif!important; max-width:1100px; }
 #stage[data-layout="fluid"] #products-page .products-heading > p:last-child,
 #stage[data-layout="fluid"] #company-page .company-heading > p:last-child { font-size:17px; line-height:1.7; max-width:900px; }
 #stage[data-layout="fluid"] #products-page .products-body,
 #stage[data-layout="fluid"] #company-page .company-body { position:relative!important; inset:auto!important; width:100%!important; max-width:var(--landing-width)!important; transform:none!important; margin:0 auto!important; padding:0 0 40px!important; overflow-x:clip; scroll-padding-top:20px; }
 #stage[data-layout="fluid"] #products-page .products-breadcrumbs,
 #stage[data-layout="fluid"] #company-page .company-back { top:24px!important; right:var(--landing-gutter)!important; left:auto!important; max-width:80%; }
 #stage[data-layout="fluid"] #products-page > .products-footer,
 #stage[data-layout="fluid"] #company-page > .company-footer { position:relative!important; inset:auto!important; width:100%!important; max-width:var(--landing-width)!important; margin:30px auto 0!important; transform:none!important; font-size:11px!important; line-height:1.5; }
 #stage[data-layout="fluid"] #products-page .products-detail-layout { grid-template-columns:190px minmax(0,1fr); gap:36px; }
 #stage[data-layout="fluid"] .course-layout { grid-template-columns:minmax(0,1fr) minmax(280px,340px); gap:30px; }
 #products-page.is-mentoring-overview .mentoring-poster { margin-top:56px; }
}
/* Posters need readable cards rather than narrow columns of oversized words. */
#products-page .diplomas { padding:24px; }
#products-page .diplomas__programs li { min-height:110px; grid-template-columns:40px 42px minmax(0,1fr); gap:12px; padding-right:15px; }
#products-page .diplomas__programs li > span:nth-child(3) { font-size:17px; line-height:1.45; overflow-wrap:break-word; }
#products-page .diplomas__programs .diplomas__icon { width:38px; height:38px; }
#products-page .diplomas__number { font-size:18px; }
#products-page .diplomas { display:block!important; min-height:0; }
#products-page .diplomas__head { display:flex; gap:28px; justify-content:space-between; }
#products-page .diplomas__intro { max-width:70ch; letter-spacing:.06em; }
#products-page .diplomas__layout { display:grid; grid-template-columns:minmax(0,1fr)!important; gap:28px; }
#products-page .diplomas__programs { grid-column:auto!important; grid-row:auto!important; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:none; grid-auto-flow:row; gap:16px; }
#products-page .diplomas__aside { grid-column:auto!important; grid-row:auto!important; display:flex; flex-wrap:wrap; justify-content:space-around; align-items:center; }
#products-page .diplomas__aside blockquote { max-width:42ch; margin:0; }
@media(max-width:1100px) {
 #products-page.is-mentoring-overview .mentoring-overview { grid-template-columns:1fr; gap:32px; }
 #products-page.is-mentoring-overview .mentoring-cycle { max-width:600px!important; }
}
@media(max-width:900px) {
 #discovery-page .discovery-tabs { flex-wrap:wrap; overflow:visible; }
 #discovery-page .discovery-tabs button { min-width:0; max-width:100%; white-space:normal; }
 #stage #products-page .products-body,#stage #company-page .company-body,#stage #discovery-page .discovery-body { overflow-x:clip!important; }
 #stage #products-page .products-heading h1,#stage #company-page .company-heading h1 { font:400 30px/1.25 Georgia,serif!important; overflow-wrap:break-word; }
 #stage #products-page .products-heading > p:last-child,#stage #company-page .company-heading > p:last-child { font-size:16px; line-height:1.7; }
 #products-page .products-body :is(p,li),#company-page .company-body :is(p,li) { overflow-wrap:break-word; }
 #products-page.is-mentoring-overview .mentoring-overview__copy { padding:24px; }
 #products-page.is-mentoring-overview .mentoring-overview__copy p { font-size:17px; line-height:1.85; }
 #products-page .diplomas { padding:20px 12px; }
 #products-page .diplomas__head { flex-direction:column; }
 #products-page .diplomas__programs li { min-height:105px; }
 #products-page .product-section { margin-bottom:36px; }
 #company-page .about-provided :is(p,li) { font-size:17px; line-height:1.8; }
 #company-page .about-provided { background:rgb(5 10 17/.82); padding:24px 18px; border-radius:16px; }
 #products-page .product-sidebar { padding:18px 10px; }
}
@media(max-width:700px) {
 #products-page .diplomas__programs { grid-template-columns:minmax(0,1fr); }
 #products-page.is-mentoring-overview .mentoring-cycle { display:none; }
 .mentoring-step-list { display:grid; grid-template-columns:minmax(0,1fr); gap:12px; padding:0; margin:0; list-style:none; }
 .mentoring-step-list li { display:grid; grid-template-columns:40px minmax(0,1fr); gap:14px; padding:20px; border:1px solid rgb(var(--gold-base-rgb)/.3); border-radius:12px; background:rgb(6 11 19/.93); }
 .mentoring-step-list li > span { color:var(--gold-base); font:26px/1.3 Georgia,serif; }
 .mentoring-step-list strong { color:var(--gold-light); font-size:19px; }
 .mentoring-step-list p { margin:8px 0 0; font-size:15px; line-height:1.7; color:#c2c9d2; }
 #products-page .course-layout { grid-template-columns:minmax(0,1fr); }
 #products-page .course-quote { position:relative; top:auto; max-height:none; }
}
