/* PLM overview uses shared technology hero, type, buttons and FAQ components. */
.plm-detail{--pl-ink:#092d40;--pl-teal:#087d83;--pl-border:#cbdce1}
.pl-hero-copy h1{hyphens:auto;overflow-wrap:anywhere}
.pln-page main :is(h1,h2,h3,h4,p,a,li){overflow-wrap:anywhere}
.pln-page main :is(article,figure,section,div){min-width:0}
.pln-page main :is(h3,h4){font-family:var(--font-display);font-weight:600;line-height:1.4}
.pln-page main h3{font-size:1.35rem;margin:0 0 16px}
.pln-page main h4{font-size:1rem;margin:0}
.pln-page main p{line-height:1.75;color:var(--body-text)}
.pln-page .td-hero-copy p,.pln-page .ip-contact p{color:var(--body-text-on-dark)}
.pln-links{display:flex;flex-wrap:wrap;gap:18px 28px;align-items:flex-start}
.pln-links .ip-inline-link{max-width:100%;white-space:normal}
.pln-intro-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:54px;align-items:start}
.pln-intro-grid>div>p:first-child{margin-top:0}.pln-intro-grid>div>p{margin-bottom:22px}
.pln-intro-grid .pln-links{margin-top:30px;flex-direction:column}
.pln-video{margin:0;border-top:3px solid #15949a;background:#eef5f5}
.pln-video-stage{position:relative;aspect-ratio:16/9;background:#092d40}
.pln-video-stage>img{width:100%;height:100%;object-fit:cover;display:block}
.pln-video-stage>button{position:absolute;left:24px;bottom:24px;display:flex;align-items:center;gap:14px;padding:13px 20px;border:1px solid #88d6d1;background:#092d40;color:white;cursor:pointer;font:inherit}
.pln-video-stage>button .ms-icon{font-size:30px;color:#8ce0d5}
.pln-video-stage [data-pln-player]{position:absolute;inset:0}
.pln-video iframe{border:0;width:100%;height:100%;display:block}
.pln-video figcaption{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px 24px;flex-wrap:wrap;color:#335d6c;line-height:1.6}
.pln-video figcaption>div{display:flex;flex-wrap:wrap;gap:20px;align-items:center}
.pln-video figcaption button{font:inherit;color:#0b6473;border:0;border-bottom:1px solid #8fbcc4;background:transparent;cursor:pointer;padding:4px 0}
.pln-video-status{margin:0;padding:0 24px 20px}.pln-video-status:empty{display:none}
.pln-page [hidden]{display:none!important}
.pln-video :is(button,a):focus-visible,.pln-industry-tabs button:focus-visible{outline:3px solid #12a2ab;outline-offset:5px}
.pln-history{background:var(--pale,#e8f6f9);border-block:1px solid #d4e4e7}
.pln-timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;margin:0;padding:0;gap:44px}
.pln-timeline li{position:relative;border-top:1px solid #8dbbc2;padding-top:32px}
.pln-era{display:block;color:#087984;margin:0 0 26px;line-height:1.6;font-weight:500}
.pln-time-node{position:absolute;right:0;top:-20px;background:var(--pale,#e8f6f9);border:1px solid #83b5be;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;color:#087984;font-weight:600}
.pln-timeline p{margin:0}
.pln-page .pln-note{margin:30px 0 0;max-width:100ch;padding-top:24px;border-top:1px solid #b6d2d9}
.pln-leadership{background:var(--ip-navy,#072b40);color:white}
.pln-leadership h2 em{color:#77d8d0}.pln-leadership .ip-label{color:#8bded7}
.pln-page .pln-leadership p{color:var(--body-text-on-dark)}
.pln-portfolio{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #456f80}
.pln-portfolio article{padding:28px 24px;border-bottom:1px solid #456f80;border-right:1px solid #456f80}
.pln-portfolio .pln-product-0{grid-column:span 2;grid-row:span 2;background:linear-gradient(135deg,#154b5b,#0a3346);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:40px}
.pln-product-0 h3{font-size:2rem!important}.pln-portfolio article>span{display:block;color:#8bded7;line-height:1.6;margin-bottom:18px}
.pln-portfolio .ip-inline-link{color:#a1e8df}.pln-portfolio article p{margin:0 0 20px}
.pln-portfolio article:nth-child(3),.pln-portfolio article:nth-child(5){border-right:0}
.pln-leadership .pln-note{border-color:#456f80}
.pln-outcomes{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:22px}
.pln-outcomes article{grid-column:span 2;border:1px solid #bbd6dc;padding:28px;background:linear-gradient(155deg,#fff,#f0f7f7);box-shadow:0 8px 20px #0b405407;transition:border-color 200ms ease,box-shadow 200ms ease}
.pln-outcomes article:nth-child(n+4){grid-column:span 3}
.pln-outcomes article:hover{border-color:#218e95;box-shadow:0 10px 24px #0b405411}
.pln-benefit-art{height:154px;margin:0 0 24px;border-bottom:1px solid #d4e6e8;display:flex;align-items:center;justify-content:flex-start}
.pln-benefit-art svg{display:block;width:auto;max-width:100%;height:100%;overflow:visible}
.pln-page .pln-outcome-question{border-top:1px solid #c6dce1;padding-top:18px;margin-bottom:0;color:#166676}
.pln-framework{background:var(--pale,#e8f6f9)}
.pln-boundary{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:40px;margin-top:28px;align-items:start}
.pln-boundary p{margin:0}
.pln-sustainability{background:#fff}
.pln-sustain-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:50px;align-items:start}
.pln-sustain-grid figure{margin:0;position:sticky;top:110px}
.pln-sustain-grid img{display:block;width:100%;height:auto;aspect-ratio:1.3;object-fit:cover}
.pln-sustain-grid figcaption{line-height:1.65;padding:18px 0;border-bottom:1px solid var(--pl-border);color:var(--body-text)}
.pln-sustain-grid article{border-top:1px solid var(--pl-border);padding:24px 0}
.pln-sustain-grid article p{margin:0}.pln-sustain-grid .pln-links{margin-top:26px;flex-direction:column}
@media(max-width:1100px){.pln-intro-grid{gap:34px}.pln-portfolio{grid-template-columns:repeat(2,minmax(0,1fr))}.pln-portfolio .pln-product-0{grid-row:auto;grid-column:span 2}.pln-portfolio article:nth-child(3){border-right:1px solid #456f80}.pln-outcomes article{grid-column:span 3}.pln-outcomes article:last-child{grid-column:span 6}.pln-sustain-grid{gap:34px}}
@media(max-width:850px){.pln-intro-grid,.pln-sustain-grid{grid-template-columns:minmax(0,1fr)}.pln-intro-grid .pln-links{flex-direction:row}.pln-sustain-grid figure{position:static}.pln-sustain-grid img{aspect-ratio:2}.pln-timeline{gap:26px}.pln-boundary{grid-template-columns:minmax(0,1fr);gap:22px}}
@media(max-width:600px){.pln-timeline{grid-template-columns:minmax(0,1fr);gap:38px}.pln-timeline li{padding-top:24px}.pln-era{margin-bottom:18px}.pln-outcomes{grid-template-columns:minmax(0,1fr);gap:18px}.pln-outcomes article,.pln-outcomes article:nth-child(n+4){grid-column:auto}.pln-portfolio{grid-template-columns:minmax(0,1fr)}.pln-portfolio .pln-product-0{grid-column:auto;padding:28px}.pln-portfolio article{border-right:0!important}.pln-video-stage>button{left:16px;bottom:16px;padding:10px 14px}.pln-video figcaption{padding:18px}.pln-video figcaption>div{width:100%;justify-content:space-between}.pln-video-status{padding-inline:18px}}
@media(prefers-reduced-motion:reduce){.pln-outcomes article{transition:none}}
/* Right-align the invisible intrinsic-width probe so it cannot extend phone
   document width; its max-content measurement and shared runtime stay intact. */
.industry-page.pln-page .shared-chapter-nav[data-shared-chapters] .cn-measure{left:auto;right:0}
/* Enlarged text keeps the current-label animation inside its available button;
   the full section names remain available in the ordinary dropdown links. */
.industry-page.pln-page .shared-chapter-nav[data-shared-chapters] .cn-toggle-copy{flex:1;max-width:100%;overflow:hidden}
.industry-page.pln-page .shared-chapter-nav[data-shared-chapters] .cn-current{max-inline-size:100%}
.industry-page.pln-page .shared-chapter-nav[data-shared-chapters] .cn-caption{max-inline-size:100%;white-space:normal}
.industry-page.pln-page .shared-chapter-nav[data-shared-chapters] .cn-toggle-copy{width:0;flex:1 1 0;grid-template-columns:minmax(0,1fr)}
/* Intrinsic probes and label-transition layers must not create a horizontal
   scroll range; the dropdown retains its own full-width wrapping links. */
.industry-page.pln-page .shared-chapter-nav[data-shared-chapters]{overflow-x:clip;overflow-y:visible}
.pln-page .td-question-text{min-width:0;overflow-wrap:anywhere}
.pln-industry-tabs button{min-width:0;overflow-wrap:anywhere}

/* Product identity: faded contextual photography stays behind native copy. */
.pln-portfolio article{position:relative;isolation:isolate;overflow:hidden;background:#092f43}
.pln-portfolio article .pln-product-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.23;z-index:-2;pointer-events:none;transition:opacity 350ms ease}
.pln-portfolio article::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(110deg,rgba(5,31,46,.5),rgba(5,31,46,.18) 70%),linear-gradient(0deg,rgba(5,31,46,.65),transparent 80%)}
.pln-portfolio .pln-product-0{background:#0c3a4a}
.pln-portfolio .pln-product-0 .pln-product-photo{object-position:65% center;opacity:.29}
.pln-portfolio .pln-product-title{display:flex;align-items:center;gap:12px;max-width:100%}
.pln-product-title>span{min-width:0;overflow-wrap:anywhere}
.pln-portfolio .pln-product-logo{display:block;flex:0 0 34px;width:34px;height:40px;object-fit:contain}
.pln-portfolio .pln-product-0 .pln-product-logo{flex-basis:43px;width:43px;height:50px}
.pln-portfolio .pln-product-logo-ptc{flex-basis:60px;width:60px;height:30px}
.pln-portfolio article:hover .pln-product-photo,.pln-portfolio article:focus-within .pln-product-photo{opacity:.32}
@media(prefers-reduced-motion:reduce){.pln-portfolio article .pln-product-photo{transition:none}}

/* Open industry cards share the Windchill family surface and aligned reading rows. */






/* A manual handoff sequence, distinct from outcome cards and portfolio imagery. */
.pln-handoff{border:1px solid #b4d1da;background:#fff}
.pln-handoff-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid #b4d1da}
.pln-handoff-tabs[hidden],.pln-handoff-controls[hidden],.pln-handoff-slide[hidden]{display:none}
.pln-handoff-tabs button{display:flex;align-items:center;gap:16px;min-width:0;border:0;border-right:1px solid #b4d1da;background:#e7f1f3;color:#365e6c;text-align:left;padding:22px 26px;font:500 1rem/1.4 var(--font-body);cursor:pointer;transition:background 200ms ease,color 200ms ease}
.pln-handoff-tabs button:last-child{border-right:0}.pln-handoff-tabs button>span:first-child{font-size:.8rem;color:#497b85}
.pln-handoff-tabs button>b{font-weight:600;overflow-wrap:anywhere}
.pln-handoff-tabs button>.ms-icon{margin-left:auto;font-size:18px}
.pln-handoff-tabs button[aria-selected=true]{background:#fff;color:#0a6675;box-shadow:inset 0 -3px #278d97}
.pln-handoff-tabs button:focus-visible,.pln-handoff-controls button:focus-visible{outline:3px solid #0c7b8b;outline-offset:-5px}
.pln-handoff-slide{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);scroll-margin-top:170px;border-bottom:1px solid #b4d1da}
.pln-handoff-records{position:relative;overflow:hidden;background:linear-gradient(125deg,#0a3549,#103f50);padding:38px;color:#fff}
.pln-handoff-number{position:absolute;right:22px;top:10px;font:500 7rem/1 var(--font-display);letter-spacing:-.07em;color:#fff;opacity:.06;pointer-events:none}
.pln-handoff-records .ip-label{color:#8ed8d3;position:relative}
.pln-page .pln-handoff-core{position:relative;color:#fff;font:500 1.5rem/1.35 var(--font-display);letter-spacing:-.03em;max-width:17ch;margin:22px 0 30px}
.pln-handoff-records ul{list-style:none;padding:0;margin:0;border-top:1px solid #426e7a;position:relative}
.pln-handoff-records li{padding:12px 0 12px 22px;border-bottom:1px solid #426e7a;position:relative;font:400 .95rem/1.5 var(--font-body);color:#d1e6ea}
.pln-handoff-records li:before{content:"";position:absolute;left:0;top:21px;width:6px;height:6px;border:1px solid #88d2cc}
.pln-handoff-reading{padding:42px 46px;align-self:center;min-width:0}
.pln-handoff-reading h3{margin-top:18px;margin-bottom:20px}
.pln-handoff-reading>p{margin:0 0 28px}
.pln-handoff-reading .pln-links{gap:22px;flex-wrap:wrap;margin:0}
.pln-handoff-controls{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;background:#f5f9fa}
.pln-page .pln-handoff-controls>p{margin:0;color:#406b77;font-variant-numeric:tabular-nums;font-size:.9rem}
.pln-handoff-controls>div{display:flex;gap:8px}.pln-handoff-controls button{display:grid;place-items:center;width:44px;height:44px;border:1px solid #9fc4cd;border-radius:50%;background:#fff;color:#135568;cursor:pointer;transition:background 200ms ease}
.pln-handoff-controls button:hover{background:#e4f2f4}.pln-handoff-controls button:disabled{opacity:.32;cursor:default}
.pln-handoff-controls svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7}
.pln-handoff-status{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.pln-handoff.is-enhanced .pln-handoff-slide{animation:pln-handoff-enter 230ms ease-out}
@keyframes pln-handoff-enter{from{opacity:.35;transform:translateX(6px)}to{opacity:1;transform:translateX(0)}}
@media(max-width:850px){.pln-handoff-tabs button{padding:18px 16px;gap:9px}.pln-handoff-tabs button>.ms-icon{display:none}.pln-handoff-records{padding:28px}.pln-handoff-reading{padding:30px}}
@media(max-width:600px){.pln-handoff-slide{grid-template-columns:minmax(0,1fr)}.pln-handoff-tabs button{padding:16px 10px;flex-direction:column;align-items:flex-start;gap:6px;font-size:.9rem}.pln-handoff-records{padding:26px}.pln-page .pln-handoff-core{max-width:none;font-size:1.35rem;margin:16px 0 22px}.pln-handoff-reading{padding:28px 26px}.pln-handoff-records li{padding-block:9px}.pln-handoff-records li:before{top:18px}}
@media(prefers-reduced-motion:reduce){.pln-handoff.is-enhanced .pln-handoff-slide{animation:none}.pln-handoff-tabs button,.pln-handoff-controls button{transition:none}}

/* An open discipline directory: structural bands rather than another card grid. */
.pln-components{background:#fff;border-top:8px solid #329ba4}
.pln-directory-intro{padding:32px 36px 22px;background:var(--pale,#e8f6f9);border-left:1px solid #b3d4de;border-right:1px solid #b3d4de}
.pln-directory-intro .ip-section-heading{margin-bottom:24px}
.pln-page .pln-directory-key{display:flex;flex-wrap:wrap;gap:12px 28px;margin:0;color:#206978;font-size:.9rem}
.pln-directory-key>span{display:flex;align-items:center;gap:10px}
.pln-directory-key>span:before{content:"";width:5px;height:5px;background:#268996}
.pln-directory{border-top:1px solid #90bcc8}
.pln-directory-band{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,2fr);gap:44px;padding:34px 0 10px;border-bottom:1px solid #aacbd4}
.pln-directory-group{padding-right:28px;border-right:1px solid #c9dfe5;min-width:0}
.pln-directory-index{display:block;font:500 3.5rem/1 var(--font-display);letter-spacing:-.06em;color:#78aeb9;margin-bottom:20px}
.pln-directory-group h3{margin:0;color:#0b3f54;max-width:11ch;line-height:1.3}
.pln-directory ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 34px}
.pln-directory li{padding:0 0 24px;margin:0 0 22px;border-bottom:1px solid #dfebef;min-width:0}
.pln-directory li:nth-last-child(-n+2){border-bottom:0;margin-bottom:0}
.pln-directory .ip-inline-link{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;white-space:normal;color:#075c72;transition:color 180ms ease}
.pln-directory .ip-inline-link:hover{color:#087f89}
.pln-directory .ip-inline-link .ms-icon{flex-shrink:0;transition:transform 180ms ease}
.pln-directory .ip-inline-link:hover .ms-icon,.pln-directory .ip-inline-link:focus-visible .ms-icon{transform:translate(2px,-2px)}
.pln-directory li h4{font:600 1rem/1.45 var(--font-body);margin:0;color:#123f54}
.pln-directory li p{margin:12px 0 0}
.pln-components .pln-note{margin-top:24px}
@media(max-width:1100px){.pln-directory-band{grid-template-columns:minmax(0,.65fr) minmax(0,2fr);gap:28px}.pln-directory-intro{padding:28px}.pln-directory ul{gap:0 26px}}
@media(max-width:850px){.pln-directory-band{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:28px}.pln-directory-group{display:flex;align-items:center;gap:24px;border-right:0;padding:0}.pln-directory-index{font-size:2.75rem;margin:0}.pln-directory-group h3{max-width:none}.pln-directory-intro{padding:26px}}
@media(max-width:600px){.pln-directory ul{grid-template-columns:minmax(0,1fr)}.pln-directory li:nth-last-child(-n+2){border-bottom:1px solid #dfebef;margin-bottom:22px}.pln-directory li:last-child{border-bottom:0;margin-bottom:0}.pln-directory-intro{padding:24px 20px}.pln-directory-group{gap:18px}.pln-directory-key{flex-direction:column}}
@media(prefers-reduced-motion:reduce){.pln-directory .ip-inline-link,.pln-directory .ip-inline-link .ms-icon{transition:none}}
