/*
 * Shared internal-page foundation and reusable industry section styles.
 * Typography, ip-wrap/ip-section, labels, light CTA, contact rings, and motion lifecycle
 * are consumed by technology/About/products too. Scope family fixes carefully.
 * Later mobile-patterns.css supersedes old sideways strips; content stays visible
 * without animation initialization and reduced motion disables passive effects.
 */
/* Industry templates share the approved TriStar type, color, header, and CTA system. */
/* Keep enlarged closing headlines within the same shared content track. */
.ip-contact h2{overflow-wrap:anywhere}
.industry-page{--ip-navy:#072b40;--ip-dark:#071a25;--ip-teal:#63d7d4;--ip-pale:#edf7f8;--ip-muted:#a8c7d1;background:#fff;color:#0a344a;font:400 16px/1.65 var(--font-body)}
.industry-page :is(h1,h2,h3,p){margin-top:0}.industry-page h1,.industry-page h2,.industry-page h3{font-family:var(--font-display);font-weight:700}.industry-page h1{font-size:var(--type-display-size);line-height:1.08;letter-spacing:-.07em}.industry-page h2{font-size:var(--type-section-size);line-height:1.13;letter-spacing:-.065em}.industry-page h3{letter-spacing:-.045em}.industry-page em{font-style:normal;color:#169da5}.industry-page :is(a,button,summary):focus-visible{outline:2px solid #20bfc8;outline-offset:5px}.industry-page [hidden]{display:none!important}.industry-page main{overflow:clip}.industry-page .site-header{position:sticky}.industry-page .site-header :is(p,h2){line-height:1.4}.industry-page .mega-menu{z-index:100}.industry-page .ip-wrap{width:min(1600px,82%);margin-inline:auto}.industry-page .ip-section{padding-block:clamp(72px,7.5vw,128px)}.industry-page section[id]{scroll-margin-top:152px}.ip-label{display:block;font-size:var(--type-secondary-eyebrow-size);line-height:1.6;font-weight:800;letter-spacing:.17em;text-transform:uppercase;color:#078ca6;margin-bottom:22px}.ip-section-heading{display:grid;grid-template-columns:1.45fr 1fr;align-items:end;gap:8%;margin-bottom:55px}.ip-section-heading h2{margin-bottom:0}.ip-section-heading>p{margin:0 0 3px;max-width:425px;color:var(--body-text);font-size:1.05rem;line-height:1.8}.ip-cta-light{--cta-bg:#61d4d1;--cta-hover:#a7f1e7;--cta-ink:#073449}.industry-page .motion-cta{font-size:.9rem}.ip-inline-link{display:flex;align-items:center;justify-content:space-between;gap:25px;border-bottom:1px solid #6eb8c1;padding-bottom:12px;font-weight:700;transition:color .3s}.ip-inline-link:is(:hover,:focus-visible),.industry-page .ip-inline-link:is(:hover,:focus-visible){color:var(--link-hover)}.ip-inline-link .ms-icon{transition:transform .4s}.ip-inline-link:hover .ms-icon{transform:translate(3px,-3px)}
/* Compact concept switcher sits outside the customer page composition. */
.concept-bar{background:#061e2c;color:#a9c6ce;border-bottom:1px solid #ffffff16;font-size:.64rem;letter-spacing:.12em;font-weight:700}.concept-bar>.ip-wrap{min-height:44px;display:flex;justify-content:space-between;align-items:center;gap:24px}.concept-bar-divider{margin:0 12px;color:#4a7788}.concept-bar nav{display:flex;align-self:stretch;gap:30px;letter-spacing:0;font-size:.77rem}.concept-bar nav a{display:flex;align-items:center;gap:8px;border-bottom:2px solid transparent;white-space:nowrap}.concept-bar nav a span{color:#65d4d6;font-size:.67rem}.concept-bar nav a[aria-current]{color:#fff;border-color:#69ded8}.concept-bar nav a:is(:hover,:focus-visible){color:var(--link-hover-on-dark)}.ip-breadcrumb{display:flex;flex-wrap:wrap;gap:12px;color:#aac8d3;font-size:var(--type-secondary-breadcrumb-size);padding-block:27px}.ip-breadcrumb>span:not([aria-current]){color:#598495}.ip-breadcrumb a:is(:hover,:focus-visible){color:var(--link-hover-on-dark)}
/* Variant 01: editorial field guide. */
.guide-hero{color:#fff;background:radial-gradient(ellipse at 20% 30%,#0c3c53,transparent 70%),#072a40;padding-bottom:62px}.guide-hero-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:4%;align-items:center}.guide-hero-copy{padding:34px 0 20px}.guide-hero-copy .ip-label{color:#96dbdd;margin-bottom:25px}.guide-hero-copy h1{margin-bottom:28px}.guide-hero-copy h1 em{color:var(--ip-teal)}.guide-hero-copy>p{max-width:465px;color:var(--body-text-on-dark);font-size:1.05rem;margin-bottom:32px}.hero-small-note{display:flex;align-items:center;gap:12px;color:#9ebeca;font-size:.72rem;margin-top:40px}.hero-small-note span{height:1px;width:32px;background:#6ed4d2}.guide-hero-image{position:relative;min-height:460px;aspect-ratio:1/1.12;max-height:620px;overflow:hidden;background:#0c3c52}.guide-hero-image>img{height:100%;width:100%;object-fit:cover;position:absolute;object-position:63% center}.guide-hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#031c2aee,transparent 50%,#03293d7d)}.image-corners{position:absolute;inset:24px;z-index:2;pointer-events:none;background:linear-gradient(#8adcd9,#8adcd9) left top/52px 1px no-repeat,linear-gradient(#8adcd9,#8adcd9) left top/1px 52px no-repeat,linear-gradient(#8adcd9,#8adcd9) right top/52px 1px no-repeat,linear-gradient(#8adcd9,#8adcd9) right top/1px 52px no-repeat,linear-gradient(#8adcd9,#8adcd9) left bottom/52px 1px no-repeat,linear-gradient(#8adcd9,#8adcd9) left bottom/1px 52px no-repeat,linear-gradient(#8adcd9,#8adcd9) right bottom/52px 1px no-repeat,linear-gradient(#8adcd9,#8adcd9) right bottom/1px 52px no-repeat;opacity:.7}.image-data-top{position:absolute;z-index:3;left:44px;right:44px;top:45px;display:flex;justify-content:space-between;font-size:.61rem;letter-spacing:.12em;font-weight:700;color:#b7eeee}.image-data-bottom{position:absolute;z-index:3;left:44px;right:44px;bottom:45px;display:flex;justify-content:space-between;align-items:end;gap:12px;font-size:.62rem;letter-spacing:.1em;color:#99d5dc}.image-data-bottom strong{display:block;letter-spacing:-.02em;font-family:var(--font-display);font-size:1.45rem;color:#fff;margin-top:5px}.image-data-bottom>.ms-icon{font-size:35px;color:#6ce0d9}.hero-image-scan{position:absolute;left:0;right:0;height:15%;top:-15%;z-index:2;background:linear-gradient(transparent,#6ce3df14);border-bottom:1px solid #7df3eb3b;animation:ip-scan 10s linear infinite;pointer-events:none}@keyframes ip-scan{to{top:115%}}
.chapter-nav{position:sticky;top:var(--site-header-height,84px);z-index:15;background:#eaf6f7f5;backdrop-filter:blur(18px);border-bottom:1px solid #cfe3e7}.chapter-nav>.ip-wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:70px}.chapter-nav>.ip-wrap>span{font-size:.62rem;letter-spacing:.13em;font-weight:800;color:#326575}.chapter-nav .ip-wrap>div{display:flex;gap:30px;align-self:stretch}.chapter-nav a{font-size:.69rem;color:#5a8e9f;display:flex;align-items:center;gap:10px;position:relative;white-space:nowrap}.chapter-nav a b{font-size:.82rem;color:#173e51;font-weight:700}.chapter-nav a:after{content:"";position:absolute;inset:auto 0 0;height:2px;background:#21babb;transform:scaleX(0);transform-origin:left;transition:transform .4s}.chapter-nav a:is(:hover,.active):after{transform:scaleX(1)}
.priority-list{border-top:1px solid #bcd4dc}.priority-row{border-bottom:1px solid #ccdde2;padding-block:0}.priority-row summary{display:grid;grid-template-columns:80px 1fr 50px;align-items:center;cursor:pointer;list-style:none;padding:28px 0;gap:15px}.priority-row summary::-webkit-details-marker{display:none}.priority-number{font-size:.78rem;color:#168d9b;font-weight:700}.priority-row h3{font-size:clamp(1.4rem,2.15vw,2rem);margin:0}.priority-plus{width:38px;height:38px;display:grid;place-items:center;border:1px solid #c8e0e3;border-radius:50%;font-size:24px;font-weight:400;color:#228a9a;transition:background .3s,transform .4s}.priority-row[open] .priority-plus{transform:rotate(45deg);background:#e3f4f4}.priority-body{display:grid;grid-template-columns:1.2fr 1fr;gap:8%;padding:0 65px 35px 95px}.priority-body>p{font-size:1rem;line-height:1.8;color:var(--body-text);max-width:640px;margin:0}.priority-body>div{display:flex;align-items:center;gap:20px;color:var(--body-text);font-size:1rem;line-height:1.6;padding-left:30px;border-left:1px solid #cae2e6}.priority-body .ms-icon{font-size:36px;color:#0d9bab}.priority-row[open] .priority-body{animation:ip-fade .5s both}
.guide-thread{color:#fff;background:#092d42;position:relative;isolation:isolate}.guide-thread:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.25;background-image:linear-gradient(#8bd9e717 1px,transparent 1px),linear-gradient(90deg,#8bd9e717 1px,transparent 1px);background-size:60px 60px;mask-image:linear-gradient(transparent,#000,transparent)}.guide-thread .ip-label{color:#7cdddd}.guide-thread h2 em{color:#6bd9d5}.guide-thread .ip-section-heading>p{color:var(--body-text-on-dark)}.thread-timeline{position:relative;display:grid;grid-template-columns:repeat(var(--stage-count,4),minmax(0,1fr));margin:70px 0 55px}.thread-timeline .guide-stage-trigger{color:#b2ccd4;background:none;border:0;padding:0 20px;position:relative;z-index:1;cursor:pointer;text-align:left;min-width:0}.timeline-node{display:grid;place-items:center;width:76px;height:76px;background:#0a2e43;border:1px solid #315b6d;color:#7faeba;transition:background .6s,border-color .6s,box-shadow .6s}.timeline-node .ms-icon{font-size:29px}.thread-timeline .guide-stage-trigger[aria-selected=true] .timeline-node{background:#0d5265;border-color:#6ce2dc;color:#91f3e6;box-shadow:0 0 35px #4bd8d01c}.thread-timeline .guide-stage-trigger>span+span{display:flex;gap:16px;align-items:center;margin-top:25px;font:700 clamp(1rem,1.6vw,1.4rem) var(--font-display)}.thread-timeline small{font:700 .65rem var(--font-body);color:#76b9c4}.timeline-track{position:absolute;top:38px;left:40px;right:14%;height:1px;background:#3e6b7980;overflow:hidden}.timeline-track i{position:absolute;width:14%;height:1px;background:linear-gradient(90deg,transparent,#82ece1);animation:ip-packet 8s linear infinite;left:-15%}.timeline-track i:nth-child(2){animation-delay:-2.7s}.timeline-track i:nth-child(3){animation-delay:-5.4s}@keyframes ip-packet{to{left:115%}}.guide-stage-panel{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:40px;border-top:1px solid #386075;min-height:220px}.guide-stage-panel .ip-label{font-size:.65rem;margin-bottom:18px}.guide-stage-panel h3{font-size:clamp(1.8rem,2.3vw,2.5rem);line-height:1.2;max-width:430px;margin-bottom:0}.guide-stage-panel p{color:var(--body-text-on-dark);font-size:1rem}.record-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:23px}.record-tags span{font-size:.71rem;border:1px solid #315b70;padding:6px 10px;color:#7cdeda;background:#0c364b}.is-updating{animation:ip-content-in .5s both}@keyframes ip-content-in{from{opacity:.2;transform:translateY(10px)}to{opacity:1;transform:none}}
.capability-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #c7dce2;border-left:1px solid #c7dce2}.capability-card{border-right:1px solid #c7dce2;border-bottom:1px solid #c7dce2;position:relative;transition:background .5s}.capability-card:hover,.capability-card[open]{background:#f1f9fa}.capability-card summary{display:block;list-style:none;cursor:pointer;padding:36px 40px 25px}.capability-card summary::-webkit-details-marker{display:none}.capability-top{display:flex;justify-content:space-between;align-items:center;color:#57909d;margin-bottom:35px;font-size:.7rem}.capability-top .ms-icon{font-size:34px;color:#0798b0}.capability-card h3{font-size:clamp(1.35rem,2vw,1.85rem);line-height:1.2;margin-bottom:15px}.capability-card p{font-size:1rem;color:var(--body-text);max-width:440px;line-height:1.75;margin-bottom:30px}.capability-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;color:#26728a;border-top:1px solid #d1e4e7;padding-top:18px;font-size:.73rem;font-weight:700}.capability-bottom b{font-size:25px;line-height:1;font-weight:400;transition:transform .4s}.capability-card[open] .capability-bottom b{transform:rotate(45deg)}.capability-detail{padding:0 40px 30px;font-size:.95rem;color:var(--body-text);animation:ip-fade .5s both}
.ip-approach{background:#eaf5f6}.approach-steps{display:grid;grid-template-columns:repeat(4,1fr);margin-top:65px;position:relative}.approach-steps article{padding:0 30px;border-left:1px solid #bad6df;position:relative}.approach-steps article:first-child{padding-left:0;border:0}.approach-steps article:last-child{padding-right:0}.step-number{display:block;font:500 clamp(3.7rem,5.8vw,6rem)/1 var(--font-display);letter-spacing:-.09em;color:var(--process-step-rest);margin-bottom:38px;transition:color .5s}.approach-steps article:is(:hover,:focus-within) .step-number{color:var(--process-step-hover)}.approach-steps h3{font-size:1.45rem;margin-bottom:15px}.approach-steps p{font-size:.95rem;color:var(--body-text);min-height:85px}.step-output{border-top:1px solid #c1dce1;margin-top:30px;padding-top:20px;font-size:.86rem;font-weight:600}.step-output span{display:block;font-size:.61rem;color:#1b95a3;letter-spacing:.15em;margin-bottom:8px}
.ip-faq{display:grid;grid-template-columns:1fr 1.2fr;gap:10%}.ip-faq-intro>p{color:var(--body-text);max-width:310px}.ip-faq-list{border-top:1px solid #c5dce3}.ip-faq-list details{border-bottom:1px solid #c5dce3}.ip-faq-list summary{display:flex;gap:30px;justify-content:space-between;align-items:center;cursor:pointer;list-style:none;font-size:1rem;font-weight:700;padding:23px 0;line-height:1.5}.ip-faq-list summary::-webkit-details-marker{display:none}.ip-faq-list summary>span{font-size:25px;font-weight:400;color:#149aaa;transition:transform .35s}.ip-faq-list details[open] summary>span{transform:rotate(45deg)}.ip-faq-list details>div{color:var(--body-text);font-size:.95rem;animation:ip-fade .5s both}.ip-faq-list details p{margin-bottom:24px;padding-right:35px}
.ip-contact{background:linear-gradient(100deg,#0a3045,#0c485b);color:#fff;position:relative;overflow:hidden;padding-block:95px}.ip-contact>.ip-wrap{position:relative;width:min(1600px,82%);margin-inline:auto}.ip-contact h2{font-family:var(--font-display);font-weight:700;font-size:var(--type-section-contact-size);line-height:1.08;letter-spacing:-.065em;margin:0 0 25px}.ip-contact .motion-cta{font-size:.9rem}.ip-contact .ip-label{color:#80deda}.ip-contact p{font-size:1rem;line-height:1.8;color:var(--body-text-on-dark);margin-bottom:32px}.contact-mark{position:absolute;right:0;top:50%;transform:translateY(-50%);width:430px;aspect-ratio:1;pointer-events:none;opacity:.5}.contact-mark span{position:absolute;inset:0;border:1px solid #68d3d53b;border-radius:50%;animation:ip-ring 10s ease-in-out infinite}.contact-mark span:nth-child(2){inset:15%;animation-delay:-3s}.contact-mark span:nth-child(3){inset:30%;animation-delay:-6s}.contact-mark i{position:absolute;inset:45%;background:#53c7c929;border:1px solid #6ddbd688;border-radius:50%;box-shadow:0 0 70px #53d7d126}@keyframes ip-ring{0%,100%{opacity:.35;transform:scale(.96)}50%{opacity:1;transform:scale(1)}}.industry-page .site-footer{background:#f7fbfc;color:#446c7e;font-size:.72rem;padding-block:34px}.industry-page .site-footer span:last-child{font-size:.64rem}.industry-page .site-footer>span:nth-child(2){color:#356475}.ip-dialog{color:#0b364b;border:1px solid #b8dbe1;padding:50px;width:min(570px,calc(100% - 32px));box-shadow:0 40px 140px #00182470;max-height:90dvh;overflow-y:auto}.ip-dialog::backdrop{background:#031923bb;backdrop-filter:blur(8px)}.ip-dialog h2{font-size:2.7rem;line-height:1.1;margin-bottom:20px}.ip-dialog>p{font-size:.94rem;color:var(--body-text)}.dialog-close{position:absolute;right:16px;top:10px;border:0;background:none;color:#214d60;font-size:28px;cursor:pointer}.conversation-options{display:grid;gap:10px;margin:25px 0}.conversation-options button{padding:13px 16px;border:1px solid #bed9e0;background:#f0f8fa;color:#195468;text-align:left;font-weight:600;cursor:pointer}.conversation-options button:hover,.conversation-options button[aria-pressed=true]{background:#d6f2ef;border-color:#23aea9}.conversation-answer{border-top:1px solid #b9d8df;padding-top:20px;min-height:85px}
/* Variant 02: the product lifecycle is the opening experience. */
.explorer-hero{background:radial-gradient(ellipse at 80% 10%,#10506975,transparent 60%),#072a40;color:#fff;padding-bottom:35px}.explorer-heading{display:grid;grid-template-columns:1.6fr 1fr;gap:10%;align-items:end;margin:27px 0 45px}.explorer-heading .ip-label{color:#8edfdc;margin-bottom:20px}.explorer-heading h1{font-size:clamp(2.6rem,4.25vw,4.65rem);margin-bottom:0}.explorer-heading h1 em{color:#69d9d4}.explorer-heading>p{font-size:1rem;line-height:1.8;color:var(--body-text-on-dark);margin-bottom:4px}.program-console{border:1px solid #386775;background:#092536}.program-topline{display:flex;justify-content:space-between;align-items:center;padding:14px 25px;border-bottom:1px solid #315565;font-size:.62rem;font-weight:700;letter-spacing:.13em;color:#94c9d0}.program-topline>span:first-child{display:flex;align-items:center;gap:10px}.program-topline .ms-icon{color:#69d8d5;font-size:19px}.program-tabs{display:grid;grid-template-columns:repeat(4,1fr)}.program-tabs button{position:relative;border:0;border-right:1px solid #315565;border-bottom:1px solid #315565;background:#0b3145;color:#a7c7d2;text-align:left;display:flex;align-items:center;gap:22px;padding:21px 26px;cursor:pointer;font-family:var(--font-display);font-size:1.13rem;font-weight:700;transition:background .5s,color .5s;overflow:hidden}.program-tabs button:last-child{border-right:0}.program-tabs button>span{font:700 .64rem var(--font-body);color:#7abcc6}.program-tabs button>i{position:absolute;inset:auto 0 0;height:3px;background:#73e3da;transform:scaleX(0);transform-origin:left;transition:transform .65s cubic-bezier(.16,1,.3,1)}.program-tabs button[aria-selected=true]{background:#115267;color:#e0fcf7}.program-tabs button[aria-selected=true]>i{transform:scaleX(1)}.program-tabs button:hover{background:#12445a}.program-display{display:grid;grid-template-columns:1.2fr 1fr;min-height:430px}.program-image{position:relative;overflow:hidden;min-width:0;min-height:440px;background:#0b3748}.program-image>img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;object-position:center;opacity:.85}.program-image-shade{position:absolute;inset:0;background:linear-gradient(180deg,#09273633,#041b29a8),linear-gradient(90deg,transparent,#061f2b4d)}.program-image-label{position:absolute;top:35px;left:38px;font-size:.58rem;letter-spacing:.16em;font-weight:700;color:#a8e5e4}.program-flow{position:absolute;width:100%;height:100%;inset:0;opacity:.72}.flow-rail{stroke:#87e7e134;stroke-width:1}.flow-stream{stroke:#75e6df;stroke-width:1.4;stroke-dasharray:6 34;animation:ip-flow 15s linear infinite}@keyframes ip-flow{to{stroke-dashoffset:-400}}.flow-point>circle:not(.flow-halo){fill:#65e0d2;stroke:#acfff5;stroke-width:1}.flow-point .flow-halo{stroke:#90ede6;stroke-width:1;opacity:.2;fill:#57edcb05;animation:ip-node 5s ease-in-out infinite}.flow-point>path{stroke:#adf7ed;stroke-width:.6;opacity:.7}.flow-point{opacity:.3;transition:opacity .8s}.program-console[data-current-stage="0"] .flow-point-0,.program-console[data-current-stage="1"] .flow-point-1,.program-console[data-current-stage="2"] .flow-point-2,.program-console[data-current-stage="3"] .flow-point-3{opacity:1}@keyframes ip-node{0%,100%{opacity:.1;transform:scale(.75)}50%{opacity:.65;transform:scale(1.1)}}.program-signal{position:absolute;bottom:38px;left:38px;right:35px;display:flex;align-items:center;gap:13px;font-size:.6rem;letter-spacing:.11em;font-weight:700;color:#a4eee7}.program-signal i{width:6px;height:6px;background:#85eedc;box-shadow:0 0 20px #85eedc;border-radius:50%;animation:ip-signal 3s ease-in-out infinite}@keyframes ip-signal{50%{opacity:.4}}.program-copy{display:flex;flex-direction:column;justify-content:space-between;padding:35px 40px 29px;background:linear-gradient(130deg,#103e51,#0a2d42);border-left:1px solid #315b70;min-width:0}.program-copy .ip-label{font-size:.62rem;color:#7fdad8;margin-bottom:17px}.program-copy h2{font-size:clamp(1.8rem,2.5vw,2.9rem);line-height:1.15;margin-bottom:20px}.program-copy p{font-size:.94rem;color:var(--body-text-on-dark);line-height:1.7;margin-bottom:25px}.program-records{display:grid;gap:0;margin-bottom:25px}.program-records>div{display:flex;align-items:center;gap:15px;border-top:1px solid #365f6f;padding:9px 0;font-size:.76rem;color:#cae6ea}.program-records>div>span{font-size:.6rem;color:#68acbb}.program-records i{margin-left:auto;width:4px;height:4px;background:#7adad5}.program-copy .ip-inline-link{color:#9aeeea;font-size:.79rem}.program-bottom{display:grid;grid-template-columns:1fr 1.15fr 40px;gap:25px;align-items:center;padding:19px 25px;border-top:1px solid #315565}.program-bottom>span{font-size:.57rem;letter-spacing:.13em;color:#83b1c0;font-weight:700}.program-bottom p{font-size:.93rem;margin:0;color:var(--body-text-on-dark)}.next-stage{background:none;border:1px solid #456a79;width:36px;height:36px;display:grid;place-items:center;cursor:pointer;color:#73ddd7;transition:background .3s}.next-stage:hover{background:#145166}.next-stage>.ms-icon{font-size:20px}.explorer-under{display:flex;justify-content:space-between;gap:30px;font-size:.67rem;color:#96bac7;padding-top:22px}.explorer-under a{display:flex;align-items:center;gap:12px;color:#ace0e1}.explorer-under a>.ms-icon{font-size:17px}
.outcome-table-head{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:7%;font-size:.63rem;letter-spacing:.12em;color:#4b8e9b;font-weight:700;padding:0 0 20px;border-bottom:1px solid #aeced6}.outcome-row{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:7%;align-items:center;padding:35px 0;border-bottom:1px solid #c8dde3}.outcome-row>div:first-child{display:flex;align-items:center;gap:18px}.outcome-number{font-size:.64rem;color:#23909f;align-self:flex-start;padding-top:5px}.outcome-row h3{font-size:1.15rem;line-height:1.5;margin:0}.connection-pair{display:flex;gap:10px;align-items:center;font-size:.73rem;color:#276879}.connection-pair>span{max-width:100px}.connection-pair i{height:1px;flex:1;min-width:28px;background:#a4d4d6;position:relative;overflow:hidden}.connection-pair i:after{content:"";position:absolute;left:-20px;width:20px;height:100%;background:#1dabae;animation:ip-packet 4s linear infinite}.outcome-row>p{font-size:.91rem;color:var(--body-text);line-height:1.7;margin:0}.change-story{background:#071a25;color:#fff;position:relative}.change-story>.ip-wrap{display:grid;grid-template-columns:1fr 1fr;gap:12%}.change-story-intro{position:sticky;align-self:start;top:140px}.change-story .ip-label{color:#72cdcb;font-size:.65rem}.change-story h2{font-size:clamp(2.7rem,4.5vw,5rem)}.change-story h2 em{color:#6cddd4}.change-story-intro>p{max-width:385px;color:var(--body-text-on-dark);font-size:1rem}.change-path{position:relative;border-left:1px solid #31505e}.change-path article{display:flex;gap:27px;align-items:start;padding:10px 0 45px 35px;position:relative}.change-path article:last-child{padding-bottom:10px}.change-path article:before{position:absolute;content:"";width:7px;height:7px;border:1px solid #6bd8d2;box-shadow:0 0 20px #70e3ce40;background:#0b2a39;top:22px;left:-4px}.change-path article>span{font-size:.68rem;color:#68bac3;line-height:2}.change-path h3{font-size:1.35rem;margin-bottom:11px}.change-path p{font-size:.95rem;color:var(--body-text-on-dark);line-height:1.8;margin:0}.variant-2 .ip-capabilities{padding-bottom:95px}.variant-2 .ip-approach{background:linear-gradient(110deg,#0d485b,#0a3147);color:#fff}.variant-2 .ip-approach .ip-label{color:#8adfdc}.variant-2 .ip-approach .ip-section-heading>p,.variant-2 .approach-steps p{color:var(--body-text-on-dark)}.variant-2 .step-number{color:var(--process-step-rest)}.variant-2 .step-output{border-color:#3e6f7f}.variant-2 .step-output span{color:#85d9d4}.variant-2 .approach-steps article{border-color:#356877}.variant-2 .ip-contact{background:#e5f4f4;color:#0b3b50}.variant-2 .ip-contact .ip-label{color:#098999}.variant-2 .ip-contact p{color:var(--body-text)}.variant-2 .contact-mark{opacity:.6}.variant-2 .contact-mark span{border-color:#3c979e66}.variant-2 .ip-contact .motion-cta{--cta-bg:#115a7c;--cta-ink:#fff;--cta-hover:#18758e}
.ip-motion .ip-reveal{opacity:0;transform:translateY(23px);transition:opacity .8s ease,transform 1s cubic-bezier(.16,1,.3,1)}.ip-motion .ip-reveal.in-view{opacity:1;transform:none}.ip-motion .guide-hero-copy,.ip-motion .explorer-heading{animation:ip-hero-in .95s cubic-bezier(.16,1,.3,1) both}.ip-motion .guide-hero-image,.ip-motion .program-console{animation:ip-hero-in 1.1s .1s cubic-bezier(.16,1,.3,1) both}@keyframes ip-hero-in{from{opacity:.15;transform:translateY(20px);clip-path:inset(0 0 12% 0)}to{opacity:1;transform:none;clip-path:inset(0)}}@keyframes ip-fade{from{opacity:0}to{opacity:1}}
@media(min-width:1900px){.guide-hero-grid{gap:8%}.guide-hero{padding-bottom:70px}.guide-hero-image{aspect-ratio:1.12;min-height:565px}.program-display{min-height:520px}.program-copy{padding:46px 56px}.program-copy p{font-size:1.05rem}.program-records>div{font-size:.88rem;padding:13px 0}}
@media(max-width:1100px){.industry-page .ip-wrap,.ip-contact>.ip-wrap{width:86%}.concept-bar-name{display:none}.guide-hero-grid{gap:5%;grid-template-columns:1.1fr 1fr}.guide-hero-image{min-height:430px}.guide-hero-copy h1{font-size:clamp(3.2rem,6.3vw,4.5rem)}.guide-hero-copy>p{font-size:1rem}.image-data-top,.image-data-bottom{left:35px;right:35px}.image-data-top{font-size:.52rem}.chapter-nav>.ip-wrap>span{display:none}.chapter-nav .ip-wrap>div{width:100%;justify-content:space-between}.chapter-nav>.ip-wrap{min-height:60px}.ip-section-heading{gap:7%}.priority-body{padding-left:70px;padding-right:0}.priority-row summary{grid-template-columns:55px 1fr 38px}.approach-steps article{padding-inline:20px}.program-copy{padding:29px}.program-tabs button{padding:20px;gap:15px}.program-display{grid-template-columns:1fr 1fr}.program-image{min-height:445px}.explorer-heading{gap:6%;grid-template-columns:1.5fr 1fr}.explorer-heading h1{font-size:3.15rem}.explorer-heading>p{font-size:.94rem}.program-bottom{grid-template-columns:1fr 1.4fr 36px;gap:15px}.outcome-row,.outcome-table-head{gap:5%}.contact-mark{width:330px;right:-40px}.industry-page .site-footer{padding-inline:7%}}
@media(max-width:800px){.industry-page .ip-wrap,.ip-contact>.ip-wrap{width:88%}.ip-contact h2{font-size:var(--type-section-contact-size)}.industry-page .ip-section{padding-block:72px}.industry-page h2{font-size:var(--type-section-size)}.concept-bar>.ip-wrap{width:92%}.concept-bar>.ip-wrap>span{font-size:.57rem}.concept-bar-divider{display:none}.concept-bar nav{gap:18px;font-size:.7rem}.ip-breadcrumb{padding-block:22px;font-size:var(--type-secondary-breadcrumb-size)}.guide-hero{padding-bottom:40px}.guide-hero-grid{grid-template-columns:1fr 1fr;gap:6%}.guide-hero-copy{padding-top:20px}.guide-hero-copy h1{font-size:3.2rem}.guide-hero-copy .ip-label{font-size:.65rem}.guide-hero-copy>p{font-size:.93rem}.guide-hero-image{min-height:400px}.hero-small-note{font-size:.64rem;margin-top:28px;gap:9px}.image-data-top{left:28px;right:28px;top:28px;font-size:.5rem;gap:10px}.image-data-top>span{display:none}.image-corners{inset:16px}.image-data-bottom{left:28px;right:28px;bottom:28px;font-size:.5rem}.image-data-bottom strong{font-size:1.04rem}.image-data-bottom>.ms-icon{display:none}.ip-section-heading{gap:30px;grid-template-columns:1.25fr 1fr;margin-bottom:40px}.ip-section-heading>p{font-size:.94rem}.ip-label{font-size:var(--type-secondary-eyebrow-size)}.priority-body{gap:5%}.priority-body>p{font-size:.94rem}.priority-body>div{padding-left:20px;font-size:.9rem;flex-direction:column;align-items:start;gap:10px}.guide-stage-panel{gap:8%}.guide-stage-panel h3{font-size:1.9rem}.guide-stage-panel p{font-size:.94rem}.capability-card summary{padding:29px}.capability-card p{font-size:.92rem}.capability-detail{padding:0 29px 29px}.capability-top{margin-bottom:28px}.capability-bottom{font-size:.65rem}.approach-steps{grid-template-columns:repeat(2,1fr);row-gap:45px}.approach-steps article:nth-child(3){padding-left:0;border-left:0}.approach-steps article:nth-child(2){padding-right:0}.approach-steps p{min-height:50px}.step-number{font-size:4.5rem;margin-bottom:25px}.ip-faq{grid-template-columns:1fr;gap:30px}.ip-faq-intro>p{max-width:480px}.contact-mark{opacity:.25;right:-90px}.ip-contact{padding-block:70px}.explorer-heading{display:block;margin-top:18px;margin-bottom:30px}.explorer-heading h1{font-size:3.35rem}.explorer-heading>p{max-width:520px;margin-top:24px}.program-topline{padding-inline:18px;font-size:.55rem}.program-tabs button{font-size:.94rem;gap:12px;padding:18px}.program-display{grid-template-columns:1fr 1.05fr}.program-copy{padding:25px}.program-copy h2{font-size:1.85rem}.program-copy p{font-size:.88rem}.program-copy .ip-label{font-size:.55rem}.program-records>div{font-size:.7rem}.program-image-label{left:29px;top:29px;font-size:.52rem}.program-signal{left:29px;right:20px;bottom:29px;font-size:.52rem;line-height:1.8}.program-bottom>span{font-size:.5rem}.program-bottom p{font-size:.79rem}.program-bottom{padding:15px 18px}.explorer-under{font-size:.6rem}.outcome-table-head{grid-template-columns:1fr 1fr}.outcome-table-head>span:nth-child(2){display:none}.outcome-row{grid-template-columns:1fr 1fr;gap:15px 8%}.outcome-row>div:first-child{grid-column:1;grid-row:1}.connection-pair{grid-column:1;grid-row:2;padding-left:31px}.outcome-row>p{grid-column:2;grid-row:1/3}.change-story>.ip-wrap{gap:8%;grid-template-columns:1fr 1fr}.change-story h2{font-size:2.65rem}.change-story-intro>p{font-size:.94rem}.change-path article{padding-left:22px;gap:15px}.change-path h3{font-size:1.16rem}.change-path p{font-size:.88rem}.change-story .ip-label{font-size:.58rem}}
@media(max-width:600px){.industry-page .ip-wrap{width:88%}.industry-page h1{font-size:var(--type-display-size)}.industry-page h2{font-size:var(--type-section-size)}.industry-page .site-header{height:var(--site-header-height,84px)}.concept-bar>.ip-wrap{flex-direction:column;gap:4px;padding-top:9px}.concept-bar>.ip-wrap>span{font-size:.52rem}.concept-bar nav{gap:30px;justify-content:center;width:100%}.concept-bar nav a{padding-block:7px;font-size:.73rem}.guide-hero-grid{display:flex;flex-direction:column;gap:30px;align-items:stretch}.guide-hero-copy{padding-top:10px}.guide-hero-copy h1{font-size:3.75rem;line-height:1.05}.guide-hero-copy>p{font-size:1rem;max-width:430px}.guide-hero-copy .ip-label{margin-bottom:20px}.hero-small-note{font-size:.67rem;margin-top:27px}.guide-hero-image{min-height:310px;aspect-ratio:1.15;max-height:390px}.image-data-top{font-size:.54rem}.image-data-top>span{display:block}.image-data-bottom{font-size:.56rem}.image-data-bottom strong{font-size:1.35rem}.image-data-bottom>.ms-icon{display:block}.chapter-nav{top:var(--site-header-height,84px)}.chapter-nav>.ip-wrap{width:94%;min-height:54px;overflow:auto}.chapter-nav .ip-wrap>div{gap:17px}.chapter-nav a{gap:5px;font-size:.51rem}.chapter-nav a b{font-size:.63rem}.ip-section-heading{grid-template-columns:1fr;gap:24px;margin-bottom:36px}.ip-section-heading>p{max-width:100%;font-size:1rem}.ip-label{font-size:var(--type-secondary-eyebrow-size);margin-bottom:17px}.priority-row summary{grid-template-columns:28px 1fr 30px;gap:12px;padding:23px 0}.priority-row h3{font-size:1.3rem;line-height:1.3;letter-spacing:-.04em}.priority-plus{height:30px;width:30px;font-size:20px}.priority-number{font-size:.66rem}.priority-body{grid-template-columns:1fr;padding:0 0 28px 40px;gap:22px}.priority-body>div{border-left:0;border-top:1px solid #d4e6e9;padding:20px 0 0;flex-direction:row;align-items:center;gap:15px;font-size:.91rem}.priority-body>p{font-size:.94rem}.priority-body .ms-icon{font-size:28px}.thread-timeline{margin:40px 0;gap:9px}.thread-timeline .guide-stage-trigger{padding:0}.timeline-node{width:55px;height:55px}.timeline-node .ms-icon{font-size:23px}.timeline-track{top:27px;left:25px;right:12%}.thread-timeline .guide-stage-trigger>span+span{display:block;font-size:.85rem;line-height:1.6;margin-top:16px}.thread-timeline small{display:block;font-size:.56rem;margin-bottom:3px}.guide-stage-panel{grid-template-columns:1fr;gap:23px;padding-top:30px;min-height:310px}.guide-stage-panel h3{font-size:1.85rem;max-width:290px}.guide-stage-panel .ip-label{font-size:.58rem;margin-bottom:13px}.guide-stage-panel p{font-size:.95rem}.record-tags span{font-size:.63rem}.capability-grid{grid-template-columns:1fr}.capability-card summary{padding:28px}.capability-card h3{font-size:1.5rem}.capability-card p{font-size:.98rem;margin-bottom:25px}.capability-top{margin-bottom:28px}.capability-top .ms-icon{font-size:30px}.capability-bottom{font-size:.7rem}.approach-steps{column-gap:0;margin-top:40px}.approach-steps article{padding-inline:20px}.approach-steps h3{font-size:1.2rem}.approach-steps p{font-size:.9rem;min-height:99px}.step-output{font-size:.77rem;padding-top:17px;margin-top:20px}.step-output span{font-size:.53rem}.step-number{font-size:3.8rem}.ip-faq{gap:30px}.ip-faq-list summary{font-size:.95rem;gap:20px}.ip-faq-list details p{padding-right:0;font-size:.92rem}.ip-contact h2{font-size:var(--type-section-contact-size)}.ip-contact p{font-size:.96rem}.contact-mark{right:-150px;top:70%}.industry-page .site-footer{display:flex;flex-wrap:wrap;gap:18px 22px;padding-inline:6%;justify-content:space-between}.industry-page .site-footer .footer-brand{width:135px}.industry-page .site-footer .footer-brand img{width:135px}.industry-page .site-footer>span:last-child{width:100%;text-align:left}.ip-dialog{padding:40px 25px 25px}.ip-dialog h2{font-size:2.45rem}.explorer-heading{margin-top:12px}.explorer-heading h1{font-size:2.75rem;line-height:1.12}.explorer-heading>p{font-size:.97rem;margin-top:23px}.program-topline{padding:13px 16px;font-size:.56rem}.program-topline>span:last-child{display:none}.program-tabs button{display:block;padding:14px 12px;font-size:.86rem}.program-tabs button>span{display:block;font-size:.56rem;margin-bottom:5px}.program-display{grid-template-columns:1fr}.program-image{min-height:260px;aspect-ratio:1.3}.program-image>img{object-position:center 40%}.program-copy{padding:29px;border-left:0;border-top:1px solid #315b70;min-height:400px}.program-copy .ip-label{font-size:.6rem}.program-copy h2{font-size:2.05rem;max-width:285px;margin-bottom:19px}.program-copy p{font-size:.96rem}.program-records{margin-bottom:24px}.program-records>div{font-size:.78rem;padding-block:10px}.program-copy .ip-inline-link{font-size:.82rem}.program-bottom{grid-template-columns:1fr 34px;gap:8px 15px;padding:18px 22px}.program-bottom>span{grid-column:1;font-size:.49rem}.program-bottom>p{grid-column:1;font-size:.87rem}.program-bottom>button{grid-column:2;grid-row:1/3}.explorer-under{display:block;font-size:.63rem;padding-top:20px}.explorer-under>span{display:none}.explorer-under>a{justify-content:space-between}.outcome-table-head{display:none}.outcome-row{grid-template-columns:1fr;padding:27px 0;gap:18px;border-top:1px solid #c7dce2;border-bottom:0}.outcome-row:last-child{border-bottom:1px solid #c7dce2}.outcome-row>div:first-child{grid-column:1;grid-row:auto}.outcome-row h3{font-size:1.18rem}.connection-pair{grid-column:1;grid-row:auto;max-width:320px;font-size:.77rem}.connection-pair>span{max-width:none}.outcome-row>p{grid-column:1;grid-row:auto;padding-left:31px;font-size:.93rem}.change-story>.ip-wrap{grid-template-columns:1fr;gap:35px}.change-story-intro{position:static}.change-story h2{font-size:2.75rem}.change-story-intro>p{font-size:1rem}.change-path{margin-left:4px}.change-path article{padding-left:23px;padding-bottom:32px;gap:20px}.change-path h3{font-size:1.25rem}.change-path p{font-size:.96rem}.variant-2 .ip-capabilities{padding-bottom:70px}}
.next-stage>.ms-icon{transform:rotate(45deg)}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.industry-page *,.industry-page *:before,.industry-page *:after{animation:none!important;transition:none!important}.ip-motion .ip-reveal{opacity:1;transform:none}.industry-page .motion-cta:hover{transform:none}}
/* The CTA signal animates only while visible; its text remains above the artwork. */
/* Reusable lifecycle context and record-flow component. */
.guide-decision{margin-top:32px;padding:22px 0 0 20px;border-top:1px solid #396275;border-left:2px solid #63d7d470;max-width:450px}
.guide-decision>span,.guide-record-heading{font-size:.59rem;font-weight:700;letter-spacing:.13em;color:#7bc6ce}
.guide-decision h4{font:600 1.04rem/1.5 var(--font-display);letter-spacing:-.025em;margin:12px 0 10px;color:#e4f8f6}
.guide-decision p{font-size:.87rem;line-height:1.75;margin:0;color:var(--body-text-on-dark)}
.guide-record-heading{display:flex;justify-content:space-between;gap:20px;margin-top:30px;padding-bottom:13px}
.connected-records{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;list-style:none;padding:0;margin:0}
.connected-records li{min-width:0;min-height:138px;position:relative;padding:20px 15px;border:1px solid #376474;background:linear-gradient(140deg,#124456,#0b3044)}
.record-sequence{display:block;font-size:.6rem;font-weight:700;letter-spacing:.08em;color:#75c9ca;margin-bottom:22px}
.connected-records strong{display:block;font-size:.79rem;font-weight:600;line-height:1.55;color:#d2edee}
.connected-records li:before{content:"";position:absolute;left:100%;top:30px;width:19px;height:1px;background:#5aadae88}
.connected-records li:last-child:before{display:none}
.connected-records li>i{position:absolute;width:4px;height:4px;border-radius:50%;right:15px;top:26px;background:#7ee3d8;box-shadow:0 0 10px #80e8df55;animation:ip-record-light 6s ease-in-out infinite;animation-play-state:paused}
.connected-records li:nth-child(2)>i{animation-delay:1s}.connected-records li:nth-child(3)>i{animation-delay:2s}
.timeline-track:before{content:"";position:absolute;inset:0;background:#73dcd4;transform:scaleX(var(--stage-progress,0));transform-origin:left;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.thread-timeline .guide-stage-trigger.is-connected .timeline-node{border-color:#4dacae;color:#9ddedb;background:#103d50}
.guide-stage-panel.is-updating .connected-records li{animation:ip-record-in .65s both}.guide-stage-panel.is-updating .connected-records li:nth-child(2){animation-delay:.09s}.guide-stage-panel.is-updating .connected-records li:nth-child(3){animation-delay:.18s}
.hero-image-scan,.timeline-track i,.flow-stream,.flow-point .flow-halo,.program-signal i,.connection-pair i:after{animation-play-state:paused}
.ip-animation-active .hero-image-scan,.ip-animation-active .timeline-track i,.ip-animation-active .flow-stream,.ip-animation-active .flow-point .flow-halo,.ip-animation-active .program-signal i,.ip-animation-active .connection-pair i:after,.ip-animation-active .connected-records li>i{animation-play-state:running}
@keyframes ip-record-light{0%,55%,100%{opacity:.35;box-shadow:0 0 5px #80e8df22}18%{opacity:1;box-shadow:0 0 13px 2px #80e8df66}}
@keyframes ip-record-in{from{opacity:.2;transform:translateY(9px)}to{opacity:1;transform:none}}
@media(max-width:800px){.guide-stage-panel{grid-template-columns:1fr;gap:32px}.guide-decision{max-width:none}.guide-stage-panel h3{max-width:480px}.connected-records li{min-height:120px}.guide-record-heading{margin-top:24px}}
@media(max-width:420px){.connected-records{gap:12px}.connected-records li{padding:17px 10px;min-height:134px}.connected-records strong{font-size:.72rem}.connected-records li:before{width:13px;top:26px}.connected-records li>i{right:10px;top:23px}.guide-decision{padding-left:15px}}
.ip-contact .ip-reveal{position:relative;z-index:1}
.ip-contact .contact-signal{--signal-play:paused;opacity:1;isolation:isolate}
.ip-contact .contact-signal.is-active{--signal-play:running}
.ip-contact .contact-signal>span{animation:none;border-color:#79ddd71a}
.ip-contact .contact-signal>.contact-signal-ring:nth-child(2){border-color:#79ddd725}
.ip-contact .contact-signal>.contact-signal-ring:nth-child(3){border-color:#79ddd734}
.ip-contact .contact-signal>.contact-signal-pulse{inset:0;border-color:#81e7de;opacity:0;transform:scale(.1);animation:contact-signal-expand 9s cubic-bezier(.2,.45,.35,1) infinite;animation-play-state:var(--signal-play)}
.ip-contact .contact-signal>.contact-signal-pulse:nth-child(5){animation-delay:-4.5s}
.contact-signal-orbit{position:absolute;inset:15%;border-radius:50%;transform:rotate(35deg);animation:contact-signal-orbit 26s linear infinite;animation-play-state:var(--signal-play)}
.contact-signal-orbit>b{position:absolute;top:50%;left:0;width:4px;height:4px;margin:-2px;border-radius:50%;background:#99eae1;opacity:.7;box-shadow:0 0 12px 3px #67dbd233}
.contact-signal-orbit-inner{inset:30%;animation-duration:34s;animation-direction:reverse;animation-delay:-13s}
.contact-signal-orbit-inner>b{width:3px;height:3px;margin:-1.5px;opacity:.5}
.ip-contact .contact-signal .contact-signal-core{background:#65d7d21a;border-color:#87e4dc66;box-shadow:none}
.contact-signal-core:before{content:"";position:absolute;inset:-42px;border-radius:50%;background:radial-gradient(circle,#72e1d933,transparent 68%);opacity:.45;animation:contact-signal-glow 5.5s ease-in-out infinite;animation-play-state:var(--signal-play)}
@keyframes contact-signal-expand{0%{transform:scale(.1);opacity:0}14%{opacity:.3}65%{opacity:.15}100%{transform:scale(1.02);opacity:0}}
@keyframes contact-signal-orbit{to{transform:rotate(395deg)}}
@keyframes contact-signal-glow{0%,100%{opacity:.35}50%{opacity:.9}}
@media(max-width:800px){.ip-contact .contact-signal{opacity:.35}}
@media(prefers-reduced-motion:reduce){.contact-signal-pulse{display:none}}
.industry-page .mega-menu{max-height:calc(100svh - var(--site-header-height,84px));overflow-y:auto;overscroll-behavior:contain}
@font-face{font-family:"Material Symbols Industry";src:url("/assets/material-symbols-outlined-subset.woff2?v=65795d8a790f") format("woff2");font-style:normal;font-weight:400;font-display:block}
.industry-page .ms-icon{font-family:"Material Symbols Industry","Material Symbols Outlined"}
@media(max-width:850px){.industry-page .mega-menu{max-height:calc(100svh - var(--site-header-height,84px))}}

/* Primary prose shares its surface ink, including inherited answers and outputs. */
.ip-faq-list details p,.ip-dialog .conversation-answer,.step-output{color:var(--body-text)}
.variant-2 .step-output{color:var(--body-text-on-dark)}
.industry-page .program-copy .ip-inline-link:is(:hover,:focus-visible){color:var(--link-hover-on-dark)}

/* One reusable industry record chain: relationships are editorial reading context,
   never validation results. The same fields and geometry work across industries. */
.guide-hero-image>img{object-fit:var(--industry-image-fit,cover);object-position:var(--industry-image-position,63% center)}
.ip-change-related-label{position:absolute;right:22px;top:7px;font-size:.68rem;line-height:1.4;color:var(--body-text-on-dark)}
.thread-timeline .guide-stage-trigger{display:block;text-decoration:none;transition:color .3s}
.thread-timeline .guide-stage-trigger:is(:hover,:focus-visible){color:var(--cyan)}
.thread-timeline .guide-stage-trigger:is(:hover,:focus-visible) .timeline-node{border-color:#6ad9d6;background:#10485b;transform:translateY(-3px)}
.timeline-node{transition:background .6s,border-color .6s,box-shadow .6s,transform .4s}
.guide-stage-panels>.guide-stage-panel+.guide-stage-panel{margin-top:38px}
.guide-stage-panels.is-enhanced>.guide-stage-panel{margin-top:0}
.capability-card:focus-within{background:#f1f9fa}
.capability-links{display:grid;gap:17px;margin-top:25px}
.capability-links .ip-inline-link{align-items:baseline}
.capability-links .ip-inline-link>.ms-icon{flex-shrink:0;align-self:center}
.ip-change-example{margin-top:80px;padding-top:50px;border-top:1px solid #386075;position:relative}
.ip-change-intro{max-width:840px;margin-bottom:38px}
.ip-change-intro>h3{font-size:clamp(1.8rem,2.7vw,2.9rem);line-height:1.18;max-width:720px;margin-bottom:20px}
.ip-change-intro>p,.ip-change-record-detail>p,.ip-change-scope,.ip-change-record-summary{color:var(--body-text-on-dark);font-size:1rem;line-height:1.8}
.ip-change-intro>p{max-width:760px;margin-bottom:0}
.ip-change-chain{display:grid;grid-template-columns:repeat(var(--record-count,4),minmax(0,1fr));gap:26px;align-items:start}
.ip-change-record{min-width:0;border:1px solid #3b6475;background:linear-gradient(145deg,#123e51,#0a3044);position:relative;transition:border-color .45s,background .45s,box-shadow .45s}
.ip-change-record summary{list-style:none;cursor:pointer;display:block;padding:26px 22px 22px;position:relative;isolation:isolate}
.ip-change-record summary::-webkit-details-marker{display:none}
.ip-change-record summary:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 15% 0,#67d4d81a,transparent 80%);opacity:0;transition:opacity .5s}
.ip-change-record:is(:hover,:focus-within,[open]){border-color:#71d9d5;background:linear-gradient(145deg,#164c5b,#0c354a);box-shadow:0 10px 35px #001a2c22}
.ip-change-record:is(:hover,:focus-within,[open]) summary:before{opacity:1}
.ip-change-record-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:29px;color:#80c7d0}
.ip-change-record-top>.ms-icon{font-size:32px;color:#7fe3d9;transition:transform .4s,color .4s}
.ip-change-record-top>span:last-child{font-size:.7rem;letter-spacing:.08em}
.ip-change-record:is(:hover,:focus-within,[open]) .ip-change-record-top>.ms-icon{transform:translateY(-3px);color:#b2fff1}
.ip-change-record-name{display:block;font-family:var(--font-display);font-size:1.25rem;font-weight:700;line-height:1.35;letter-spacing:-.035em;color:#fff;min-height:3.4em}
.ip-change-record-summary{display:block;margin-top:12px;min-height:7.2em}
.ip-change-record-prompt{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:24px;padding-top:17px;border-top:1px solid #426675;color:#b2e8e6;font-size:.78rem;font-weight:600;line-height:1.5}
.ip-change-record-prompt>b{font-size:24px;font-weight:400;transition:transform .4s;line-height:1}
.ip-change-record[open] .ip-change-record-prompt>b{transform:rotate(45deg)}
.ip-change-record-detail{padding:0 22px 25px}
.ip-change-record-detail>h4{font-family:var(--font-display);font-size:1.05rem;font-weight:600;line-height:1.5;letter-spacing:-.02em;margin:0 0 13px;color:#fff}
.ip-change-record-detail>p{margin:0}
.ip-change-record-detail>nav{display:grid;gap:18px;margin-top:25px}
.ip-change-record-detail .ip-inline-link{color:#a0e8e7;gap:14px;align-items:baseline}
.ip-change-record-detail .ip-inline-link:is(:hover,:focus-visible){color:var(--link-hover-on-dark)}
.ip-change-record-detail .ip-inline-link>.ms-icon{flex-shrink:0;align-self:center}
.ip-change-connector{position:absolute;left:100%;top:43px;width:27px;height:1px;background:#5b96a4;pointer-events:none;overflow:hidden}
.ip-change-connector>i{display:block;position:absolute;left:-40%;width:40%;height:100%;background:linear-gradient(90deg,transparent,#c0fff0);animation:ip-change-packet 3.6s linear infinite;animation-play-state:paused;opacity:.45}
.ip-change-record:last-child>.ip-change-connector{display:none}
.ip-change-record.is-related{border-color:#62acae}
.ip-change-record.is-related>.ip-change-connector,.ip-change-record[open]>.ip-change-connector{background:#7adfd7}
.ip-change-example.ip-animation-active .ip-change-record:is([open],.is-related)>.ip-change-connector>i{animation-play-state:running;opacity:1}
.ip-change-record:nth-child(2) .ip-change-connector>i{animation-delay:-1.2s}
.ip-change-record:nth-child(3) .ip-change-connector>i{animation-delay:-2.4s}
.ip-change-scope{margin:30px 0 0;max-width:920px}
@keyframes ip-change-packet{to{left:110%}}
@media(min-width:601px) and (max-width:800px){.thread-timeline .guide-stage-trigger{padding-inline:8px}}
@media(max-width:360px){.thread-timeline .timeline-node{width:48px;height:48px}}
@media(max-width:1100px){.ip-change-chain{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.ip-change-record:nth-child(even)>.ip-change-connector{display:none}.ip-change-record-name{min-height:0}.ip-change-record-summary{min-height:5.4em}.ip-change-connector{width:25px}}
@media(max-width:600px){.thread-timeline{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 22px}.thread-timeline .guide-stage-trigger{display:flex;align-items:center;gap:clamp(10px,2.5vw,15px)}.thread-timeline .guide-stage-trigger>span+span{margin-top:0}.thread-timeline .timeline-node{flex-shrink:0}.thread-timeline .timeline-track{display:none}.ip-change-example{margin-top:55px;padding-top:36px}.ip-change-intro>h3{font-size:1.95rem}.ip-change-chain{grid-template-columns:1fr;gap:23px}.ip-change-record summary{padding:25px}.ip-change-record-top{margin-bottom:20px}.ip-change-record-summary{min-height:0}.ip-change-record-name{font-size:1.4rem}.ip-change-record-detail{padding-inline:25px}.ip-change-connector,.ip-change-record:nth-child(even)>.ip-change-connector{display:block;left:41px;top:100%;width:1px;height:24px}.ip-change-record:last-child>.ip-change-connector{display:none}.ip-change-connector>i{width:1px;height:40%;left:0;top:-40%;background:linear-gradient(transparent,#c0fff0);animation-name:ip-change-packet-vertical}.ip-change-scope{margin-top:27px}}
@keyframes ip-change-packet-vertical{to{top:110%}}
@media(prefers-reduced-motion:reduce){.ip-change-record .ip-change-connector>i{display:none}.thread-timeline .guide-stage-trigger:is(:hover,:focus-visible) .timeline-node,.ip-change-record:is(:hover,:focus-within,[open]) .ip-change-record-top>.ms-icon{transform:none}}
.guide-thread[data-industry-field]{overflow:clip}
.guide-thread[data-industry-field]:before{display:none}
.guide-thread[data-industry-field]>.ip-wrap{position:relative;z-index:1}
/* Contextual circuit field: visible routes describe connected engineering work.
 * All layers stay behind readable foreground content; CSS is static without JS. */
.industry-field{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:radial-gradient(ellipse at 100% 45%,#17657b55,transparent 54%),radial-gradient(ellipse at 0 80%,#14526b4a,transparent 48%)}
.industry-field-grid{position:absolute;inset:-24px;background-image:linear-gradient(#78c5da18 1px,transparent 1px),linear-gradient(90deg,#78c5da18 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(90deg,#0009,transparent 42%,#0009)}
.industry-field-aura{position:absolute;inset:0;background:radial-gradient(ellipse at 88% 24%,#28a9c334,transparent 42%),radial-gradient(ellipse at 12% 78%,#24bdb525,transparent 37%);animation:industry-field-breathe 16s ease-in-out infinite alternate;animation-play-state:paused}
.industry-field-routes{position:absolute;inset:0;width:100%;height:100%;overflow:visible;mask-image:linear-gradient(90deg,#000b, #0004 36%,#0004 64%,#000b)}
.industry-field-routes path{fill:none;vector-effect:non-scaling-stroke;stroke-width:1}
.industry-field-lines{stroke:#72d4df;opacity:.27}
.industry-field-packets{stroke:#79ede5;opacity:.75;filter:drop-shadow(0 0 5px #3bc5f3)}
.industry-field-packets path{stroke-width:1.5;stroke-dasharray:80 1600;stroke-dashoffset:1680;animation:industry-field-travel 22s linear infinite;animation-delay:var(--route-delay);animation-play-state:paused}
.industry-field-junctions{fill:#0c3b50;stroke:#78dbdf;stroke-width:1.3;opacity:.6}
.guide-thread.ip-animation-active .industry-field-aura,.guide-thread.ip-animation-active .industry-field-packets path{animation-play-state:running}
@keyframes industry-field-travel{to{stroke-dashoffset:0}}
@keyframes industry-field-breathe{to{opacity:.55;transform:translate3d(-18px,24px,0) scale(1.07)}}
.industry-field--assembly{background:radial-gradient(ellipse at 100% 52%,#17657b38,transparent 48%)}
.industry-field--assembly .industry-field-grid{opacity:.55;background-size:96px 96px;mask-image:linear-gradient(90deg,#000a,transparent 28%,transparent 72%,#000a)}
.industry-field--assembly .industry-field-aura{opacity:.45;background:radial-gradient(ellipse at 95% 62%,#3bc5f31e,transparent 35%)}
.industry-field--assembly .industry-field-routes{mask-image:linear-gradient(90deg,#000b,transparent 31%,transparent 69%,#000b)}
.industry-field--assembly .industry-field-packets{opacity:.5;filter:none}
.industry-field--assembly .industry-field-packets path{animation-duration:28s;stroke-dasharray:55 1700}
@media(hover:none),(pointer:coarse){.industry-field-packets{opacity:.45;filter:none}.industry-field-grid{background-size:56px 56px}}
@media(prefers-reduced-motion:reduce){.industry-field-aura,.industry-field-packets path{animation:none}.industry-field-packets{display:none}.approach-steps .step-number{transition:none}}

/* Optional component-envelope story. The native disclosure works without JS;
 * fixed geometry is illustrative, never a clearance or compatibility calculation. */
.ip-package-study{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);column-gap:5%;margin:34px 0 45px;padding:30px;border:1px solid #416b7b;background:#082c40}
.ip-package-intro{grid-column:1/-1;max-width:810px}
.ip-package-intro>h4{font-family:var(--font-display);font-size:clamp(1.4rem,2vw,1.9rem);line-height:1.3;letter-spacing:-.04em;color:#fff;margin:0 0 14px}
.ip-package-intro>p,.ip-package-controls p{color:var(--body-text-on-dark);font-size:1rem;line-height:1.8;margin:0}
.ip-package-diagram{min-width:0;align-self:center}
.ip-package-diagram>svg{display:block;width:100%;height:auto;color:#77bdcb}
.ip-package-enclosure{fill:#0a3449;stroke:#4d7d8e;stroke-width:1.5}
.ip-package-board{fill:#123e51;stroke:#6faeba;stroke-width:1.5}
.ip-package-grid{opacity:.15}
.ip-package-mounts{fill:#082c40;stroke:#6eb3c0;stroke-width:1.5}
.ip-package-mounts path{stroke-width:1;opacity:.5}
.ip-package-traces{fill:none;stroke:#538b9b;stroke-width:1.5}
.ip-package-pads{stroke:#9bdcd9;stroke-width:7}
.ip-package-baseline{fill:#184f61;stroke:#c0dde5;stroke-width:1.5;stroke-dasharray:6 5}
.ip-package-envelope{transform-box:view-box;transform-origin:380px 212px;transform:scaleX(1);opacity:0;transition:transform .65s cubic-bezier(.2,.7,.25,1),opacity .4s}
.ip-package-envelope rect{fill:#3bc5f322;stroke:var(--cyan);stroke-width:2;vector-effect:non-scaling-stroke}
.ip-package-study:has(.ip-package-toggle[open]) .ip-package-envelope{opacity:1;transform:scaleX(1.4)}
.ip-package-center{stroke:#9ccbd3;stroke-width:1;stroke-dasharray:5 6;opacity:.35}
.ip-package-neighbor{fill:#174759;stroke:#79aeb9;stroke-width:1.5}
.ip-package-labels{fill:#c0dde5;font-family:var(--font-body);font-size:12px;letter-spacing:1px}
.ip-package-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 24px;font-size:.75rem;color:#c0dde5;margin:0 0 10px}
.ip-package-legend>span{display:flex;align-items:center;gap:10px}
.ip-package-legend i{width:20px;height:11px;border:1px dashed #c0dde5}
.ip-package-legend>span+span i{border:1px solid var(--cyan);background:#3bc5f322}
.ip-package-controls{align-self:center;padding:25px 0}
.ip-package-toggle{border-block:1px solid #527c8b}
.ip-package-toggle>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;cursor:pointer;min-height:64px;padding:17px 8px 17px 0;color:#e6f6f8;font-weight:700;font-size:1rem;line-height:1.5;transition:color .3s}
.ip-package-toggle>summary::-webkit-details-marker{display:none}
.ip-package-toggle>summary:is(:hover,:focus-visible){color:var(--link-hover-on-dark)}
.ip-package-toggle>summary:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}
.ip-package-toggle>summary>span{min-width:0}
.ip-package-toggle>summary>b{display:grid;place-items:center;flex:none;width:24px;height:24px;font-size:24px;line-height:1;font-weight:400;transition:transform .4s}
.ip-package-toggle[open]>summary>b{transform:rotate(45deg)}
.ip-package-toggle>p{padding:0 0 22px}
.ip-package-controls .ip-package-reading{margin-top:23px}
.ip-package-study>figcaption{grid-column:1/-1;border-top:1px solid #365e70;padding-top:20px;margin-top:18px;color:#b0ced8;font-size:.8rem;line-height:1.7;max-width:100%}
@media(max-width:800px){.ip-package-study{grid-template-columns:minmax(0,1fr);padding:24px}.ip-package-controls{padding:15px 0 5px}.ip-package-diagram{margin-top:15px}}
@media(max-width:600px){.ip-package-study{padding:22px 16px}.ip-package-diagram{margin-inline:-8px}.ip-package-legend{font-size:.7rem;gap:10px 16px}}
@media(prefers-reduced-motion:reduce){.ip-package-envelope,.ip-package-toggle>summary,.ip-package-toggle>summary>b{transition:none}}

/* Configuration continuity: one engineering reference, two installed histories.
 * Paired unit/document branches preserve the reading order at every breakpoint.
 * Only the changed unit's route animates, while visible and motion is permitted. */
.ip-configuration-study{--configuration-gap:42px;--configuration-row-gap:24px;margin:34px 0 45px;padding:30px;border:1px solid #416b7b;background:#082c40}
.ip-configuration-intro{max-width:810px}
.ip-configuration-intro>h4{font-family:var(--font-display);font-size:clamp(1.4rem,2vw,1.9rem);line-height:1.3;letter-spacing:-.04em;color:#fff;margin:0 0 14px}
.ip-configuration-intro>p,.ip-configuration-toggle>p{color:var(--body-text-on-dark);font-size:1rem;line-height:1.8;margin:0}
.ip-configuration-map{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.1fr);align-items:center;gap:var(--configuration-gap);margin:32px 0}
.ip-configuration-branches{position:relative;display:grid;gap:var(--configuration-row-gap)}
.ip-configuration-branch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--configuration-gap);align-items:stretch;min-height:210px}
.ip-configuration-card{position:relative;min-width:0;padding:20px;border:1px solid #527a89;background:#10394b;transition:border-color .5s,background-color .5s,box-shadow .5s}
.ip-configuration-label{display:block;font-size:.875rem;font-weight:600;line-height:1.5;color:#b4d9e3;margin-bottom:17px}
.ip-configuration-card>.ms-icon{display:block;color:#80c6ce;font-size:30px;margin-bottom:18px;transition:color .5s,transform .5s}
.ip-configuration-card strong{display:block;color:#fff;font-size:1rem;line-height:1.5;font-weight:700}
.ip-configuration-card p{color:var(--body-text-on-dark);font-size:.875rem;line-height:1.7;margin:10px 0 0}
.ip-configuration-reference{background:#0b3145}
.ip-configuration-reference:after,.ip-configuration-unit:before,.ip-configuration-unit:after,.ip-configuration-branches:before{content:"";position:absolute;background:#527a89;pointer-events:none;transition:background-color .5s}
.ip-configuration-reference:after{left:100%;top:50%;width:calc(var(--configuration-gap)/2);height:1px}
.ip-configuration-branches:before{left:calc(var(--configuration-gap)/-2);top:calc(25% - var(--configuration-row-gap)/4);bottom:calc(25% - var(--configuration-row-gap)/4);width:1px}
.ip-configuration-unit:before{right:100%;top:50%;width:calc(var(--configuration-gap)/2);height:1px}
.ip-configuration-unit:after{left:100%;top:50%;width:var(--configuration-gap);height:1px}
.ip-configuration-modified{display:none}
.ip-configuration-study:has(.ip-configuration-toggle[open]) .ip-configuration-changing{border-color:#67d7d8;background:#124658;box-shadow:inset 0 3px #3bc5f3}
.ip-configuration-study:has(.ip-configuration-toggle[open]) .ip-configuration-changing>.ms-icon{color:#9aece8;transform:translateY(-2px)}
.ip-configuration-study:has(.ip-configuration-toggle[open]) .ip-configuration-changing .ip-configuration-original{display:none}
.ip-configuration-study:has(.ip-configuration-toggle[open]) .ip-configuration-changing .ip-configuration-modified{display:block;animation:ip-configuration-reveal .5s ease both}
.ip-configuration-study:has(.ip-configuration-toggle[open]) .ip-configuration-affected .ip-configuration-unit:after{background:linear-gradient(90deg,#527a89 0 30%,#87f0e6 45% 55%,#527a89 70% 100%);background-size:250% 100%;animation:ip-configuration-travel 3.8s linear infinite;animation-play-state:paused}
.ip-configuration-study.ip-animation-active:has(.ip-configuration-toggle[open]) .ip-configuration-affected .ip-configuration-unit:after{animation-play-state:running}
.ip-configuration-toggle{border-block:1px solid #527c8b}
.ip-configuration-toggle>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;cursor:pointer;min-height:64px;padding:17px 8px 17px 0;color:#e6f6f8;font-weight:700;font-size:1rem;line-height:1.5;transition:color .3s}
.ip-configuration-toggle>summary::-webkit-details-marker{display:none}
.ip-configuration-toggle>summary:is(:hover,:focus-visible){color:var(--link-hover-on-dark)}
.ip-configuration-toggle>summary:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}
.ip-configuration-toggle>summary>span{min-width:0}
.ip-configuration-toggle>summary>b{display:grid;place-items:center;flex:none;width:24px;height:24px;font-size:24px;line-height:1;font-weight:400;transition:transform .4s}
.ip-configuration-toggle[open]>summary>b{transform:rotate(45deg)}
.ip-configuration-toggle>p{padding:0 0 22px}
.ip-configuration-study>figcaption{padding-top:20px;margin-top:18px;color:#b0ced8;font-size:.8rem;line-height:1.7}
@keyframes ip-configuration-travel{from{background-position:100% 0}to{background-position:0 0}}
@keyframes ip-configuration-reveal{from{opacity:.5;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.ip-configuration-study{--configuration-gap:28px}.ip-configuration-card{padding:17px}.ip-configuration-branch{min-height:225px}}
@media(max-width:800px){.ip-configuration-study{padding:24px;--configuration-gap:24px}.ip-configuration-map{grid-template-columns:minmax(0,1fr)}.ip-configuration-reference:after,.ip-configuration-branches:before,.ip-configuration-unit:before{display:none}.ip-configuration-reference{display:grid;grid-template-columns:auto 1fr;column-gap:20px;align-items:center}.ip-configuration-reference>.ip-configuration-label{grid-column:1/-1;margin-bottom:14px}.ip-configuration-reference>.ms-icon{margin:0}.ip-configuration-branch{min-height:200px}}
@media(max-width:600px){.ip-configuration-study{padding:22px 16px}.ip-configuration-map{margin:26px 0}.ip-configuration-branch{grid-template-columns:minmax(0,1fr);gap:24px}.ip-configuration-card{padding:20px}.ip-configuration-unit:after{top:100%;left:50%;width:1px;height:24px}.ip-configuration-study:has(.ip-configuration-toggle[open]) .ip-configuration-affected .ip-configuration-unit:after{background:linear-gradient(#527a89 0 30%,#87f0e6 45% 55%,#527a89 70% 100%);background-size:100% 250%;animation-name:ip-configuration-travel-vertical}.ip-configuration-toggle>summary{font-size:1rem}}
@keyframes ip-configuration-travel-vertical{from{background-position:0 100%}to{background-position:0 0}}
@media(prefers-reduced-motion:reduce){.ip-configuration-card,.ip-configuration-card>.ms-icon,.ip-configuration-toggle>summary,.ip-configuration-toggle>summary>b{transition:none}.ip-configuration-study:has(.ip-configuration-toggle[open]) .ip-configuration-changing .ip-configuration-modified,.ip-configuration-study:has(.ip-configuration-toggle[open]) .ip-configuration-affected .ip-configuration-unit:after{animation:none}.ip-configuration-study:has(.ip-configuration-toggle[open]) .ip-configuration-affected .ip-configuration-unit:after{background:#87d8d9}}

/* Optional machine-platform story. The platform stays fixed; a native disclosure
 * introduces an authored module and corresponding records, never live operation. */
.ip-machine-study{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:24px 5%;margin:34px 0 45px;padding:30px;border:1px solid #416b7b;background:#082c40}
.ip-machine-intro{grid-column:1/-1;max-width:830px}
.ip-machine-intro>h4{font-family:var(--font-display);font-size:clamp(1.4rem,2vw,1.9rem);line-height:1.3;letter-spacing:-.04em;color:#fff;margin:0 0 14px}
.ip-machine-intro>p,.ip-machine-controls p{color:var(--body-text-on-dark);font-size:1rem;line-height:1.8;margin:0}
.ip-machine-visual{min-width:0;align-self:center}
.ip-machine-visual>svg{display:block;width:100%;height:auto;color:#76b6c3}
.ip-machine-grid{opacity:.14}
.ip-machine-floor{fill:none;stroke:#4d7e8e;stroke-width:1}
.ip-machine-platform{fill:#123e51;stroke:#8fcad2;stroke-width:2}
.ip-machine-platform>path{fill:none}
.ip-machine-platform>path:first-child{fill:#153f52}
.ip-machine-platform>circle{fill:#0d3045;stroke:#80bbc8;stroke-width:1.5}
.ip-machine-interface{fill:#3bc5f305;stroke:#8aaeba;stroke-dasharray:6 7;stroke-width:1.5;transition:opacity .5s}
.ip-machine-module{opacity:0;transform:translateY(-18px);transition:opacity .55s,transform .7s cubic-bezier(.2,.7,.25,1);fill:none;stroke:#85ece6;stroke-width:2}
.ip-machine-module-fill{fill:#174f60}
.ip-machine-module-body{fill:#0b354b}
.ip-machine-sight{fill:#3bc5f312;stroke-dasharray:5 5;stroke-width:1}
.ip-machine-reference-lines{fill:none;stroke:#5d8d9d;stroke-width:1}
.ip-machine-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 20px;color:#b7d9e2;font-size:.75rem;line-height:1.5;margin:6px 0 18px}
.ip-machine-legend>span{display:flex;align-items:center;gap:9px}
.ip-machine-legend i{flex:none;width:20px;height:10px;border:1px solid #8fcad2;background:#153f52}
.ip-machine-legend>span+span i{border:1px dashed #85ece6;background:#3bc5f305}
.ip-machine-state{color:#fff;margin:0;text-align:center;font-size:1rem;line-height:1.5}
.ip-machine-controls{align-self:center}
.ip-machine-controls>p{margin-top:23px}
.ip-machine-toggle{border-block:1px solid #527c8b}
.ip-machine-toggle>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;cursor:pointer;min-height:64px;padding:17px 8px 17px 0;color:#e6f6f8;font-weight:700;font-size:1rem;line-height:1.5;transition:color .3s}
.ip-machine-toggle>summary::-webkit-details-marker{display:none}
.ip-machine-toggle>summary:is(:hover,:focus-visible){color:var(--link-hover-on-dark)}
.ip-machine-toggle>summary:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}
.ip-machine-toggle>summary>span{min-width:0}
.ip-machine-toggle>summary>b{display:grid;place-items:center;flex:none;width:24px;height:24px;font-size:24px;line-height:1;font-weight:400;transition:transform .4s}
.ip-machine-toggle[open]>summary>b{transform:rotate(45deg)}
.ip-machine-toggle>p{padding:0 0 22px}
.ip-machine-records{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;list-style:none;padding:0;margin:12px 0 0}
.ip-machine-records>li{position:relative;min-width:0;padding:21px;border:1px solid #527a89;background:#10394b;transition:border-color .5s,background-color .5s}
.ip-machine-record-label{display:flex;gap:12px;align-items:baseline;color:#b4d9e3;font-size:.875rem;font-weight:600;line-height:1.5;margin-bottom:17px}
.ip-machine-record-label>small{color:#82c9d1;font-size:.75rem;font-weight:600}
.ip-machine-records strong{display:block;color:#fff;font-size:1rem;line-height:1.5}
.ip-machine-records p{color:var(--body-text-on-dark);font-size:.875rem;line-height:1.7;margin:10px 0 0}
.ip-machine-records>li:after{content:"";position:absolute;left:100%;top:32px;width:26px;height:1px;background:#527a89;pointer-events:none}
.ip-machine-records>li:last-child:after{display:none}
.ip-machine-selected{display:none}
.ip-machine-study:has(.ip-machine-toggle[open]) .ip-machine-baseline{display:none}
.ip-machine-study:has(.ip-machine-toggle[open]) .ip-machine-selected{display:block;animation:ip-configuration-reveal .5s ease both}
.ip-machine-study:has(.ip-machine-toggle[open]) .ip-machine-module{opacity:1;transform:none}
.ip-machine-study:has(.ip-machine-toggle[open]) .ip-machine-interface{opacity:.2}
.ip-machine-study:has(.ip-machine-toggle[open]) .ip-machine-records>li{border-color:#67c7cf;background:#124353}
.ip-machine-study:has(.ip-machine-toggle[open]) .ip-machine-records>li:after{background:linear-gradient(90deg,#527a89 0 30%,#87f0e6 45% 55%,#527a89 70% 100%);background-size:250% 100%;animation:ip-configuration-travel 4s linear infinite;animation-play-state:paused}
.ip-machine-study.ip-animation-active:has(.ip-machine-toggle[open]) .ip-machine-records>li:after{animation-play-state:running}
.ip-machine-study>figcaption{grid-column:1/-1;border-top:1px solid #365e70;padding-top:20px;color:#b0ced8;font-size:.8rem;line-height:1.7}
@media(max-width:800px){.ip-machine-study{grid-template-columns:minmax(0,1fr);padding:24px}.ip-machine-visual{margin-inline:-8px}.ip-machine-records{grid-template-columns:minmax(0,1fr);gap:24px}.ip-machine-records>li:after{left:32px;top:100%;width:1px;height:25px}.ip-machine-study:has(.ip-machine-toggle[open]) .ip-machine-records>li:after{background:linear-gradient(#527a89 0 30%,#87f0e6 45% 55%,#527a89 70% 100%);background-size:100% 250%;animation-name:ip-configuration-travel-vertical}}
@media(max-width:600px){.ip-machine-study{padding:22px 16px;gap:25px}.ip-machine-legend{font-size:.7rem;gap:10px 15px}.ip-machine-records>li{padding:20px}}
@media(prefers-reduced-motion:reduce){.ip-machine-module,.ip-machine-interface,.ip-machine-toggle>summary,.ip-machine-toggle>summary>b,.ip-machine-records>li{transition:none}.ip-machine-study:has(.ip-machine-toggle[open]) .ip-machine-selected,.ip-machine-study:has(.ip-machine-toggle[open]) .ip-machine-records>li:after{animation:none}.ip-machine-study:has(.ip-machine-toggle[open]) .ip-machine-records>li:after{background:#87d8d9}}

/* Field Guide text can enlarge without forcing grid tracks past the reading
   surface. Preserve every approved font size; wrap only when space requires it. */
.industry-page.variant-1 :is(.guide-hero-copy,.ip-section-heading>div,.ip-section-heading>p,.guide-stage-panel>div,.capability-card,.ip-faq-intro,.ip-faq-list,.ip-contact .ip-reveal){min-width:0}
.industry-page.variant-1 :is(h1,h2,h3,h4,h5,h6,p,.ip-label,.ip-change-record-name,.connected-records strong,.guide-stage-trigger>span+span,.guide-decision>span,.guide-record-heading,summary){overflow-wrap:anywhere}
.industry-page.variant-1 .ip-label{max-width:100%;white-space:normal}
.industry-page.variant-1 .guide-record-heading{flex-wrap:wrap;gap:12px}
@media(max-width:600px){.industry-page.variant-1 .priority-row summary{grid-template-columns:minmax(28px,max-content) minmax(0,1fr) 30px}.industry-page.variant-1 .guide-stage-trigger>span+span{min-width:0}}

/* Full topic labels also fit the retained Lifecycle Explorer on phones. */
@media(max-width:600px){.industry-page.variant-2 .program-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.industry-page.variant-2 .program-tabs button{min-width:0;overflow-wrap:anywhere}}

/* MedTech optional shared device-study styles */
/* Shared Field Guide optional device study. Template-owned geometry; content
   fields remain native HTML. Motion follows one information relationship only. */
.ip-device-study{margin:34px 0 45px;padding:30px;border:1px solid #416b7b;background:#082c40;color:#fff}
.ip-device-study *{box-sizing:border-box}
.ip-device-intro{max-width:920px}
.ip-device-intro>h4,.ip-device-perspective>h5{overflow-wrap:anywhere}
.ip-device-intro>h4{font-family:var(--font-display);font-size:clamp(1.4rem,2vw,1.9rem);line-height:1.3;letter-spacing:-.04em;color:#fff;margin:0 0 14px}
.ip-device-intro>p,.ip-device-perspective>p{color:var(--body-text-on-dark);font-size:1rem;line-height:1.8;margin:0}
.ip-device-workspace{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:5%;align-items:center;margin-top:26px}
.ip-device-visual,.ip-device-briefs,.ip-device-perspective{min-width:0}
.ip-device-visual>svg{display:block;width:100%;height:auto;overflow:visible}
.ip-device-anatomy{font-size:.875rem;line-height:1.7;color:var(--body-text-on-dark);margin:0;text-align:center}
.ip-device-perspective+ .ip-device-perspective{margin-top:26px;padding-top:24px;border-top:1px solid #416b7b}
.ip-device-perspective>h5{font-family:var(--font-display);font-size:1.05rem;font-weight:600;line-height:1.5;letter-spacing:-.02em;color:#fff;margin:0 0 13px}
.ip-device-perspective>ul{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:12px}
.ip-device-perspective li{border-left:2px solid #6dcacb;padding:5px 0 5px 14px;color:var(--body-text-on-dark);font-size:.875rem;line-height:1.7}
.ip-device-choices{display:none;min-width:0;border:0;padding:0;margin:26px 0 0}
.ip-device-choices>legend{float:left;width:100%;padding:0;margin:0 0 12px;color:#b4d9e3;font-size:.875rem;font-weight:600;line-height:1.5}
.ip-device-choices>div{clear:both;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#416b7b;border:1px solid #416b7b}
.ip-device-choice{position:relative;min-width:0;cursor:pointer}
.ip-device-choice>input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ip-device-choice>span{display:flex;align-items:center;justify-content:center;min-height:58px;padding:14px 18px;background:#0a3044;color:#c0dde5;font-size:1rem;font-weight:700;line-height:1.5;overflow-wrap:anywhere;border-top:3px solid transparent;transition:background .3s,color .3s,border-color .3s}
.ip-device-choice:is(:hover,:focus-within)>span{background:#13495a;color:#fff}
.ip-device-choice>input:checked+span{border-top-color:#6ddbd4;background:#155266;color:#fff}
.ip-device-choice>input:focus-visible+span{outline:2px solid var(--cyan);outline-offset:-5px}
.ip-device-study svg{stroke-linecap:round;stroke-linejoin:round;stroke-width:1.25}
.ip-device-shadow{fill:#031c2b;stroke:none}
.ip-device-floor{fill:none;stroke:#4e859333;stroke-width:1}
.ip-device-feet{fill:#0a2537;stroke:#6eafb9}
.ip-device-front{fill:#194b5c;stroke:#90d3d5;stroke-width:1.8}
.ip-device-side{fill:#103a4c;stroke:#80c4ca;stroke-width:1.8}
.ip-device-top{fill:#286779;stroke:#a1e2e1;stroke-width:1.8}
.ip-device-edge{fill:none;stroke:#b2f0e4;opacity:.6}
.ip-device-access-window{fill:#082c40;stroke:#75aebc}
.ip-device-board{fill:#174c56;stroke:#73bec3}
.ip-device-circuit{fill:none;stroke:#62a5b3;stroke-width:1}
.ip-device-chip{fill:#092738;stroke:#a2d6dc}
.ip-device-chip-detail{fill:#174757;stroke:#7daebd}
.ip-device-pins{stroke:#b0d5d9;stroke-width:1.5}
.ip-device-board-connector{fill:#397483;stroke:#a5d9dd}
.ip-device-vents{fill:none;stroke:#71a8b7;stroke-width:1.5}
.ip-device-display-rim{fill:#092a3b;stroke:#8fc1cb}
.ip-device-display-face{fill:#103747;stroke:#498896}
.ip-device-display-lines{fill:none;stroke:#6cabb7}
.ip-device-port{fill:#061d2c;stroke:#77acb9}
.ip-device-drawer-rail{fill:#154858;stroke:#76b7bd}
.ip-device-tray{fill:#337989;stroke:#a0dddc}
.ip-device-tray-inset{fill:#194d5d;stroke:#6daebb}
.ip-device-wells{fill:#082b3c;stroke:#8fc2ca}
.ip-device-drawer-face{fill:#236073;stroke:#94d6d5}
.ip-device-pull{fill:#0a3142;stroke:#88c9cb}
.ip-device-drawer-guide{fill:none;stroke:#9fd8d9}
.ip-device-sensor-seat{fill:#103f51;stroke:#8cbdc8;stroke-dasharray:4 4}
.ip-device-bracket{fill:#33788a;stroke:#b0dfe2}
.ip-device-sensor-board{fill:#245766;stroke:#8bcece}
.ip-device-sensor-body{fill:#4a8b99;stroke:#a7e0de}
.ip-device-sensor-side{fill:#276273;stroke:#a7e0de}
.ip-device-sensor-top{fill:#65a6af;stroke:#c8f4e9}
.ip-device-sensor-ribs{fill:none;stroke:#c3e6e5;stroke-width:1}
.ip-device-lens-rim{fill:#1a4d5d;stroke:#abddd9}
.ip-device-lens{fill:#082838;stroke:#8bc4cf}
.ip-device-fasteners{fill:#092b3c;stroke:#b1dde1;stroke-width:1}
.ip-device-cable-shadow{fill:none;stroke:#082639;stroke-width:8}
.ip-device-cable{fill:none;stroke:#75a5b2;stroke-width:3}
.ip-device-relation{fill:none;stroke:#81ded9;stroke-width:1.5;stroke-dasharray:5 6}
.ip-device-dimension{fill:none;stroke:#a1e6df;stroke-width:1}
.ip-device-node{fill:#9ee9df;stroke:#063243;stroke-width:2}
.ip-device-flow{fill:none;stroke:#d1fff0;stroke-width:3;stroke-dasharray:5 95;stroke-dashoffset:100;animation:ip-device-trace 7s linear infinite;animation-play-state:paused}
.ip-device-record-paper{fill:#123e51;stroke:#7fc5cd;stroke-width:1.2}
.ip-device-record-lines{fill:none;stroke:#b4dddd}
.ip-device-design-cue,.ip-device-behavior-cue,.ip-device-evidence-cue{display:none}
@supports selector(:has(*)){
  .ip-device-choices{display:block}
  .ip-device-perspective{display:none}
  .ip-device-perspective+ .ip-device-perspective{margin-top:0;padding-top:0;border-top:0}
  .ip-device-study:has(.ip-device-radio-design:checked) [data-device-perspective=design],.ip-device-study:has(.ip-device-radio-behavior:checked) [data-device-perspective=behavior],.ip-device-study:has(.ip-device-radio-evidence:checked) [data-device-perspective=evidence]{display:block}
  .ip-device-study:has(.ip-device-radio-design:checked) .ip-device-design-cue,.ip-device-study:has(.ip-device-radio-behavior:checked) .ip-device-behavior-cue,.ip-device-study:has(.ip-device-radio-evidence:checked) .ip-device-evidence-cue{display:block}
  .ip-device-study:has(.ip-device-radio-design:checked) .ip-device-sensor-body{fill:#5b9fa9}
  .ip-device-study:has(.ip-device-radio-design:checked) .ip-device-sensor-seat{stroke:#b4f2e4}
  .ip-device-study:has(.ip-device-radio-behavior:checked) .ip-device-chip-detail{fill:#388595;stroke:#d0fff0}
  .ip-device-study:has(.ip-device-radio-evidence:checked) .ip-device-controller .ip-device-board,.ip-device-study:has(.ip-device-radio-evidence:checked) .ip-device-drawer .ip-device-tray{stroke:#bcf4e7}
  .ip-device-study.ip-animation-active:has(.ip-device-radio-behavior:checked) .ip-device-flow{animation-play-state:running}
}
@keyframes ip-device-trace{to{stroke-dashoffset:-100}}
@media(max-width:800px){.ip-device-study{padding:24px}.ip-device-workspace{grid-template-columns:minmax(0,1fr);gap:28px}.ip-device-visual{margin-inline:-8px}.ip-device-anatomy{margin-inline:8px;text-align:left}.ip-device-perspective>ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}
@media(max-width:600px){.ip-device-study{padding:22px 16px}.ip-device-choices>div{grid-template-columns:repeat(auto-fit,minmax(min(100%,7.5em),1fr))}.ip-device-choice:last-child{grid-column:1/-1}.ip-device-choice>span{padding:14px 8px}.ip-device-workspace{gap:24px;margin-top:16px}.ip-device-perspective>ul{grid-template-columns:minmax(0,1fr);gap:10px}.ip-device-anatomy{margin-top:8px}}
@media(prefers-reduced-motion:reduce){.ip-device-choice>span{transition:none}.ip-device-flow{animation:none;stroke-dasharray:none;opacity:.65}}


/* Optional shared process-study styles */
/* Shared optional process study: exact Field Guide reading/control roles,
   original fixed equipment and selected information-only relationships. */
.ip-process-study :is(p,li){overflow-wrap:anywhere}
.ip-process-study{margin:34px 0 45px;padding:30px;border:1px solid #416b7b;background:#082c40;color:#fff}
.ip-process-study *{box-sizing:border-box}
.ip-process-intro{max-width:920px}
.ip-process-intro>h4,.ip-process-perspective>h5{overflow-wrap:anywhere}
.ip-process-intro>h4{font-family:var(--font-display);font-size:clamp(1.4rem,2vw,1.9rem);line-height:1.3;letter-spacing:-.04em;color:#fff;margin:0 0 14px}
.ip-process-intro>p,.ip-process-perspective>p{color:var(--body-text-on-dark);font-size:1rem;line-height:1.8;margin:0}
.ip-process-workspace{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:5%;align-items:center;margin-top:26px}
.ip-process-visual,.ip-process-briefs,.ip-process-perspective{min-width:0}
.ip-process-visual>svg{display:block;width:100%;height:auto;overflow:visible}
.ip-process-anatomy{font-size:.875rem;line-height:1.7;color:var(--body-text-on-dark);margin:0;text-align:center}
.ip-process-perspective+.ip-process-perspective{margin-top:26px;padding-top:24px;border-top:1px solid #416b7b}
.ip-process-perspective>h5{font-family:var(--font-display);font-size:1.05rem;font-weight:600;line-height:1.5;letter-spacing:-.02em;color:#fff;margin:0 0 13px}
.ip-process-perspective>ul{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:12px}
.ip-process-perspective li{border-left:2px solid #6dcacb;padding:5px 0 5px 14px;color:var(--body-text-on-dark);font-size:.875rem;line-height:1.7}
.ip-process-choices{display:none;min-width:0;border:0;padding:0;margin:26px 0 0}
.ip-process-choices>legend{float:left;width:100%;padding:0;margin:0 0 12px;color:#b4d9e3;font-size:.875rem;font-weight:600;line-height:1.5}
.ip-process-choices>div{clear:both;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#416b7b;border:1px solid #416b7b}
.ip-process-choice{position:relative;min-width:0;cursor:pointer}
.ip-process-choice>input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ip-process-choice>span{display:flex;align-items:center;justify-content:center;min-height:58px;padding:14px 18px;background:#0a3044;color:#c0dde5;font-size:1rem;font-weight:700;line-height:1.5;overflow-wrap:anywhere;border-top:3px solid transparent;transition:background .3s,color .3s,border-color .3s}
.ip-process-choice:is(:hover,:focus-within)>span{background:#13495a;color:#fff}
.ip-process-choice>input:checked+span{border-top-color:#6ddbd4;background:#155266;color:#fff}
.ip-process-choice>input:focus-visible+span{outline:2px solid var(--cyan);outline-offset:-5px}
.ip-process-study svg{stroke-linecap:round;stroke-linejoin:round;stroke-width:1.25}
.ip-process-shadow{fill:#031c2b;stroke:none}
.ip-process-floor{fill:none;stroke:#4e859333;stroke-width:1}
.ip-process-part-side{fill:#103e51;stroke:#8cc4cc}
.ip-process-part-top{fill:#2f7080;stroke:#a8dfde}
.ip-process-part-edge{fill:none;stroke:#acdcdb;opacity:.8}
.ip-process-base-rail{fill:#103748;stroke:#78b7c0}
.ip-process-base-beams{fill:none;stroke:#93c9ce;stroke-width:5}
.ip-process-fasteners{fill:#0a2d3f;stroke:#a6dce0;stroke-width:1}
.ip-process-vessel-body{fill:#21586b;stroke:#a6dce0;stroke-width:1.8}
.ip-process-vessel-head{fill:#3a8190;stroke:#a6dce0;stroke-width:1.8}
.ip-process-vessel-seam{fill:none;stroke:#91cdd2}
.ip-process-vessel-sheen{fill:none;stroke:#5c96a3;stroke-width:2}
.ip-process-flange-inset{fill:#123a4b;stroke:#80b7c4}
.ip-process-hatch-rim{fill:#326f81;stroke:#a6dce0}
.ip-process-hatch-face{fill:#205568;stroke:#91cdd2}
.ip-process-drain-shadow{fill:none;stroke:#082435;stroke-width:12}
.ip-process-drain{fill:none;stroke:#6ea8b5;stroke-width:7}
.ip-process-drain-valve{fill:#70a6b0;stroke:#b1dedd}
.ip-process-pipe-shadow{fill:none;stroke:#08283b;stroke-width:18}
.ip-process-pipe{fill:none;stroke:#6ba6b3;stroke-width:12}
.ip-process-pipe-edge{fill:none;stroke:#c2ece5;stroke-width:1}
.ip-process-flange{fill:#367788;stroke:#b6e7e2}
.ip-process-valve-body{fill:#9acdd0;stroke:#d0efe8}
.ip-process-valve-stem{fill:none;stroke:#c4e5e3;stroke-width:3}
.ip-process-handwheel{fill:#174253;stroke:#a6ddde;stroke-width:2}
.ip-process-handwheel-spokes{fill:none;stroke:#a6ddde}
.ip-process-coupling{fill:#194d60;stroke:#a5d8db}
.ip-process-motor-foot,.ip-process-pump-foot{fill:#164657;stroke:#91c3ce}
.ip-process-motor-body{fill:#337789;stroke:#9ed8db}
.ip-process-motor-front{fill:#1e5267;stroke:#9ed8db}
.ip-process-motor-back{fill:#2b697c;stroke:#9ed8db}
.ip-process-motor-fins{fill:none;stroke:#a6d8db;stroke-width:2}
.ip-process-motor-inset{fill:#113b4f;stroke:#7fbdc6}
.ip-process-motor-vents{fill:none;stroke:#a0cfd6}
.ip-process-terminal-side{fill:#4f8e9b;stroke:#b0dfdf}
.ip-process-terminal-top{fill:#679fa9;stroke:#b0dfdf}
.ip-process-coupling-guard{fill:#18495b;stroke:#a0cdd5}
.ip-process-guard-mesh{fill:none;stroke:#6c9fad;stroke-width:.8}
.ip-process-pump-side{fill:#174657;stroke:#9acfd3}
.ip-process-pump-face{fill:#3b7a89;stroke:#b6e7e0;stroke-width:1.8}
.ip-process-pump-rim{fill:#2b687b;stroke:#a6d8db}
.ip-process-pump-inset{fill:#19485c;stroke:#8cc3ce}
.ip-process-pump-hub{fill:#699eac;stroke:#b6e7e0}
.ip-process-pump-ribs{fill:none;stroke:#b4dddc}
.ip-process-delivery-shadow{fill:none;stroke:#08283b;stroke-width:17}
.ip-process-delivery{fill:none;stroke:#6ba6b3;stroke-width:11}
.ip-process-delivery-flange{fill:#367788;stroke:#b6e7e2}
.ip-process-interface-envelope{fill:#8de3d708;stroke:#b6f6e5;stroke-width:1.5;stroke-dasharray:5 5}
.ip-process-paper{fill:#113c4f;stroke:#91cbd1;stroke-width:1.3}
.ip-process-paper-lines,.ip-process-worksheet,.ip-process-record-sketch{fill:none;stroke:#b0dedd}
.ip-process-question{fill:none;stroke:#a4e8df;stroke-width:2.5}
.ip-process-relation{fill:none;stroke:#7eddd7;stroke-width:1.5;stroke-dasharray:5 6}
.ip-process-node{fill:#a4ecdf;stroke:#082c40;stroke-width:2}
.ip-process-flow{fill:none;stroke:#d2fff0;stroke-width:3;stroke-dasharray:5 95;stroke-dashoffset:100;animation:ip-process-trace 7s linear infinite;animation-play-state:paused}
.ip-process-equipment-cue,.ip-process-guidance-cue,.ip-process-feedback-cue{display:none}
@supports selector(:has(*)){
  .ip-process-choices{display:block}
  .ip-process-perspective{display:none}
  .ip-process-perspective+.ip-process-perspective{margin-top:0;padding-top:0;border-top:0}
  .ip-process-study:has(.ip-process-radio-equipment:checked) [data-process-perspective=equipment],.ip-process-study:has(.ip-process-radio-guidance:checked) [data-process-perspective=guidance],.ip-process-study:has(.ip-process-radio-feedback:checked) [data-process-perspective=feedback]{display:block}
  .ip-process-study:has(.ip-process-radio-equipment:checked) .ip-process-equipment-cue,.ip-process-study:has(.ip-process-radio-guidance:checked) .ip-process-guidance-cue,.ip-process-study:has(.ip-process-radio-feedback:checked) .ip-process-feedback-cue{display:block}
  .ip-process-study:has(.ip-process-radio-equipment:checked) .ip-process-outlet .ip-process-pipe{stroke:#a1e4db}
  .ip-process-study:has(.ip-process-radio-equipment:checked) .ip-process-coupling{stroke:#c2fff0}
  .ip-process-study.ip-animation-active:has(.ip-process-radio-guidance:checked) .ip-process-guidance-cue .ip-process-flow,.ip-process-study.ip-animation-active:has(.ip-process-radio-feedback:checked) .ip-process-feedback-cue .ip-process-flow{animation-play-state:running}
}
@keyframes ip-process-trace{to{stroke-dashoffset:-100}}
@media(max-width:800px){.ip-process-study{padding:24px}.ip-process-workspace{grid-template-columns:minmax(0,1fr);gap:28px}.ip-process-visual{margin-inline:-8px}.ip-process-anatomy{margin-inline:8px;text-align:left}.ip-process-perspective>ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}
@media(max-width:600px){.ip-process-study{padding:22px 16px}.ip-process-choices>div{grid-template-columns:repeat(auto-fit,minmax(min(100%,7.5em),1fr))}.ip-process-choice:last-child{grid-column:1/-1}.ip-process-choice>span{padding:14px 8px}.ip-process-workspace{gap:24px;margin-top:16px}.ip-process-perspective>ul{grid-template-columns:minmax(0,1fr);gap:10px}.ip-process-anatomy{margin-top:8px}}
@media(prefers-reduced-motion:reduce){.ip-process-choice>span{transition:none}.ip-process-flow{animation:none;stroke-dasharray:none;opacity:.65}}

/* Optional shared retail-study styles */
/* Optional garment study. Reading/choice layout inherits the existing shared
   Field Guide study roles; this file owns only Retail geometry, state and motion. */
.ip-retail-shadow{fill:#031c2b;stroke:none}
.ip-retail-baseline{fill:none;stroke:#629bab3d}
.ip-retail-sleeve-left{fill:#215b6c;stroke:#9ed4d7;stroke-width:1.8}
.ip-retail-sleeve-right{fill:#194a5d;stroke:#9ed4d7;stroke-width:1.8}
.ip-retail-arm-panel{fill:#113f53;stroke:#73afbd}
.ip-retail-body-left{fill:#32798a;stroke:#afe3df;stroke-width:1.8}
.ip-retail-body-right{fill:#286879;stroke:#afe3df;stroke-width:1.8}
.ip-retail-side-panel{fill:#1b5063;stroke:#79b5c2}
.ip-retail-hem,.ip-retail-cuff{fill:#103e52;stroke:#99cbd3;stroke-width:1.5}
.ip-retail-cuff-tab{fill:#367688;stroke:#a7d7db}
.ip-retail-collar-back{fill:#0c3045;stroke:#a6d8db;stroke-width:1.5}
.ip-retail-collar-left{fill:#4c8e9a;stroke:#b7e7e1;stroke-width:1.5}
.ip-retail-collar-right{fill:#327487;stroke:#b7e7e1;stroke-width:1.5}
.ip-retail-collar-seam{fill:none;stroke:#a5d5d7;stroke-width:1}
.ip-retail-zip-tape{fill:#0b3044;stroke:#75b0bd;stroke-width:.8}
.ip-retail-zip-line{fill:none;stroke:#b7dedf;stroke-width:1.3}
.ip-retail-zip-teeth{fill:none;stroke:#aad5d6;stroke-width:.8}
.ip-retail-zip-pull{fill:#9dced3;stroke:#d0f2e9;stroke-width:.9}
.ip-retail-pocket{fill:#225c70;stroke:#a0d4d7;stroke-width:1.2}
.ip-retail-pocket-weld{fill:none;stroke:#679eae;stroke-width:.8}
.ip-retail-pocket-zip{fill:none;stroke:#c2e5df;stroke-width:2}
.ip-retail-pocket-pulls{fill:#9cd3d6;stroke:#c5eae5;stroke-width:.7}
.ip-retail-seams{fill:none;stroke:#99c9d1;stroke-width:1.1}
.ip-retail-stitch{fill:none;stroke:#92c1ca;stroke-width:.8;stroke-dasharray:2 3}
.ip-retail-textile-detail{fill:none;stroke:#9dcbd1;stroke-width:.65;opacity:.6}
.ip-retail-folds{fill:none;stroke:#69a6b6;stroke-width:1}
.ip-retail-swatch-back{fill:#286578;stroke:#97cdd3}
.ip-retail-swatch{fill:#3e7f8d;stroke:#b4e4df;stroke-width:1.6}
.ip-retail-swatch-edge{fill:none;stroke:#7cb7c2;stroke-width:1;stroke-dasharray:2 3}
.ip-retail-weave{fill:none;stroke:#b1d8d7;stroke-width:.8}
.ip-retail-weave>path:nth-child(n+13){stroke:#153f51;stroke-width:1.8}
.ip-retail-swatch-hole{fill:#0a2d42;stroke:#b2dcd9}
.ip-retail-material-boundary{fill:#92e8de09;stroke:#c3f9e9;stroke-width:1.5;stroke-dasharray:4 4}
.ip-retail-note{fill:#123d50;stroke:#8dc5ce;stroke-width:1.3}
.ip-retail-note-lines{fill:none;stroke:#a6d6d8}
.ip-retail-question{fill:none;stroke:#a8e8df;stroke-width:2.5}
.ip-retail-dimension{fill:none;stroke:#91d3d6;stroke-width:1}
.ip-retail-asset-back{fill:#113449;stroke:#6ea6b5}
.ip-retail-asset-middle{fill:#154155;stroke:#85b9c6}
.ip-retail-asset-front{fill:#0b2e42;stroke:#a0d5d8;stroke-width:1.3}
.ip-retail-asset-crop{fill:none;stroke:#8bc2ce;stroke-width:1}
.ip-retail-relation{fill:none;stroke:#8adeD7;stroke-width:1.5;stroke-dasharray:5 6}
.ip-retail-node{fill:#a8eddf;stroke:#082c40;stroke-width:2}
.ip-retail-flow{fill:none;stroke:#d2fff0;stroke-width:3;stroke-dasharray:5 95;stroke-dashoffset:100;animation:ip-retail-trace 7s linear infinite;animation-play-state:paused}
.ip-retail-material-cue,.ip-retail-sample-cue,.ip-retail-launch-cue{display:none}
@supports selector(:has(*)){
  .ip-retail-study:has(.ip-retail-radio-material:checked) [data-retail-perspective=material],.ip-retail-study:has(.ip-retail-radio-sample:checked) [data-retail-perspective=sample],.ip-retail-study:has(.ip-retail-radio-launch:checked) [data-retail-perspective=launch]{display:block}
  .ip-retail-study:has(.ip-retail-radio-material:checked) .ip-retail-material-cue,.ip-retail-study:has(.ip-retail-radio-sample:checked) .ip-retail-sample-cue,.ip-retail-study:has(.ip-retail-radio-launch:checked) .ip-retail-launch-cue{display:block}
  .ip-retail-study.ip-animation-active:has(.ip-retail-radio-sample:checked) .ip-retail-sample-cue .ip-retail-flow,.ip-retail-study.ip-animation-active:has(.ip-retail-radio-launch:checked) .ip-retail-launch-cue .ip-retail-flow{animation-play-state:running}
}
@keyframes ip-retail-trace{to{stroke-dashoffset:-100}}
@media(prefers-reduced-motion:reduce){.ip-retail-flow{animation:none;stroke-dasharray:none;opacity:.65}}

/* Teal-corner hero cards: clip only the decorative scan, never media/focus. */
.hero-card-swipe-clip{position:absolute;inset:0;display:block;z-index:1;overflow:hidden;pointer-events:none}
.program-image>.hero-card-swipe-clip{z-index:0}
.hero-card-swipe-clip:not(.ip-animation-active)>.hero-image-scan{animation-play-state:paused}
.hero-card-swipe-clip.ip-animation-active>.hero-image-scan{animation-play-state:running}
[hidden] .hero-card-swipe-clip>.hero-image-scan{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.hero-card-swipe-clip>.hero-image-scan{animation:none!important;display:none}}
