/* Shared editorial rhythm and original PHG operating diagrams. */
:root{--phg-night:#0b253b;--phg-copper:#a96330;--phg-line:#d6e0e7;--phg-mist:#f3f6f8}
body{background:#fbfcfd}
main{overflow:clip}
main section[id]{scroll-margin-top:116px}
.section-intro{max-width:790px;margin-bottom:35px}
.section-intro h2{font:400 clamp(30px,3.2vw,44px)/1.18 'IBM Plex Serif',Georgia,serif;letter-spacing:-.025em;margin-top:15px}
.section-intro>p:not(.eyebrow){font-size:17px;line-height:1.8;color:var(--muted);margin-top:20px;max-width:710px}
.eyebrow{line-height:1.65}
.subpage-hero{padding-block:40px 50px}
.subpage-hero em{color:var(--phg-copper)}
.subpage-image{border-radius:2px}
.subpage-image>figcaption{font-size:12px;padding:28px 16px 10px;color:#e5edf3;background:linear-gradient(transparent,#091f32a8)}
.visual-caption{font-size:12px!important;color:#d0dce4!important}
.header-cta{white-space:nowrap}
.footer-inquiry{margin-top:19px;font-size:14px}
.journey-overview{list-style:none;margin:0;padding:0}
.journey-overview li{display:grid;grid-template-columns:38px 1fr;gap:18px;padding:22px 0;border-top:1px solid #ffffff26}
.journey-overview li>span{color:#e0aa7e;font-size:14px;padding-top:7px}
.journey-overview h3{font:400 27px/1.3 'IBM Plex Serif',Georgia,serif}
.journey-overview li p{font-size:16px!important;margin-top:8px;line-height:1.65!important}
.concise-technology{grid-template-columns:1fr auto;gap:40px}
.concise-technology .text-link{align-self:center;white-space:nowrap}
.doctrine{padding-block:0 65px}
.doctrine-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 50px}
.doctrine-grid article{display:grid;grid-template-columns:27px 1fr;gap:20px;border-top:1px solid var(--phg-line);padding-block:28px}
.diagram-index{font-size:14px;color:var(--phg-copper);font-weight:500;letter-spacing:.06em}
.doctrine h3,.current-tools h3{font:400 25px/1.3 'IBM Plex Serif',Georgia,serif;margin-bottom:12px}
.doctrine article p,.current-tools p{font-size:16px;line-height:1.8;color:var(--muted)}
.doctrine-promise{background:var(--phg-night);color:#eef4f8;margin-top:0;padding:33px;display:flex;flex-direction:column;justify-content:center;gap:12px}
.doctrine-promise p{font:400 29px/1.3 'IBM Plex Serif',Georgia,serif}
.doctrine-promise span{color:#dfad84;font-size:15px}
.company-story{padding-block:58px 45px}
.page-products .product-grid{grid-template-columns:1fr;gap:20px}
.page-products .product{background:#fff;border:1px solid var(--phg-line);overflow:hidden}
.page-products .product summary{display:grid;grid-template-columns:220px 1fr;gap:0;align-items:stretch}
.page-products .product-image{aspect-ratio:auto;min-height:190px;height:100%}
.page-products .product-image img{height:100%;width:100%;object-fit:cover}
.page-products .product-copy{padding:26px 32px;display:flex;flex-direction:column;justify-content:center}
.page-products .product-title{font-size:clamp(25px,2.6vw,35px);min-height:0;line-height:1.25}
.page-products .product-disclosure{margin-top:17px}
.page-products .product-detail{border-top:1px solid var(--phg-line);padding:30px 34px 35px}
.page-products .product-lead{max-width:830px;font-size:18px;line-height:1.8}
.product-requirements{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;margin:26px 0}
.product-requirements div{border-top:1px solid var(--phg-line);padding-top:16px}
.product-requirements dt{font-size:14px;font-weight:600;color:var(--phg-copper)}
.product-requirements dd{font-size:16px;color:var(--muted);line-height:1.8;margin:10px 0 0}
.market-section{padding-block:60px}
.market-diagram{margin-top:35px}
.supply-path,.architecture-path{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;margin:0;padding:0;gap:28px}
.supply-path li{position:relative;padding:28px;background:#eaf0f4;border-top:3px solid #aa7045}
.supply-path li+li:before{content:'→';position:absolute;left:-25px;top:42%;color:#8b5a36;font-size:21px}
.supply-path span{font-size:14px;color:var(--phg-copper)}
.supply-path h3,.market-destinations h3{font:400 25px/1.3 'IBM Plex Serif',Georgia,serif;margin-top:12px}
.supply-path p,.market-destinations p{font-size:16px;line-height:1.7;margin-top:13px;color:var(--muted)}
.market-branch{position:relative;padding-top:40px}
.market-branch:before{content:'';position:absolute;top:0;left:50%;right:16.666%;height:20px;border-right:1px solid #afbdc7;border-bottom:1px solid #afbdc7}
.market-branch:after{content:'';position:absolute;top:20px;left:50%;height:20px;border-left:1px solid #afbdc7}
.branch-label{text-align:center;font-size:14px;font-weight:500;color:var(--phg-copper);padding:14px;border:1px solid #becbd5;background:#f4f7f9;margin:0 auto;width:fit-content;max-width:100%}
.market-destinations{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:38px;padding-top:40px}
.market-destinations:before{content:'';position:absolute;top:0;height:22px;left:50%;border-left:1px solid #afbdc7}
.market-destinations:after{content:'';position:absolute;top:22px;left:25%;right:25%;height:18px;border:1px solid #afbdc7;border-bottom:0}
.market-destinations article{padding:28px 30px;border:1px solid #becbd5;background:white}
.market-diagram figcaption,.diagram-note{font-size:13px;line-height:1.8;margin-top:24px;color:var(--muted);max-width:900px}
.process-section{padding-block:60px}
.process-graphic{border:1px solid #c8d5df;background:#fff}
.process-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));position:relative}
.process-track:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:3px;background:#b67b4d;transform-origin:left;pointer-events:none}
.process-visible .process-track:after{animation:process-trace 2.6s ease-out 1}
@keyframes process-trace{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.process-node{appearance:none;border:0;border-right:1px solid #d2dee6;background:#f0f4f7;text-align:left;cursor:pointer;color:var(--navy);padding:26px}
.process-node:last-child{border-right:0}
.process-node>span{display:block;font-size:14px;color:#8e5428;margin-bottom:18px}
.process-node strong{font:400 30px/1.3 'IBM Plex Serif',Georgia,serif;display:block}
.process-node small{font-size:15px;line-height:1.7;display:block;margin-top:10px}
.process-node.is-active{background:var(--phg-night);color:#fff}
.process-node.is-active>span{color:#e5b387}
.process-panel{padding:35px 38px 38px}
.process-panel h3{font:400 28px/1.3 'IBM Plex Serif',Georgia,serif;margin-top:15px}
.process-panel ul{padding-left:21px;margin:18px 0 0;color:var(--muted);font-size:16px;line-height:2}
.architecture-section{background:var(--phg-night);color:#eef5f9}
.architecture-section>.section-wrap{padding-block:60px}
.architecture-section .eyebrow{color:#ddb28d}
.architecture-section .section-intro>p:not(.eyebrow){color:#bdcedc}
.architecture-path{grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border-block:1px solid #ffffff35}
.architecture-path li{padding:26px 20px;border-right:1px solid #ffffff25}
.architecture-path li:first-child{padding-left:0}
.architecture-path li:last-child{border:0}
.architecture-path span{font-size:14px;color:#e2ae83}
.architecture-path h3{font:400 24px/1.3 'IBM Plex Serif',Georgia,serif;margin-top:18px}
.architecture-path p{font-size:15px;line-height:1.75;color:#bacddb;margin-top:12px}
.architecture-control{display:flex;flex-wrap:wrap;justify-content:center;gap:15px 40px;padding:22px;background:#163a50;border-bottom:2px solid #bf875b;font-size:14px}
.architecture-section .diagram-note{color:#bacddb}
.current-execution{padding-block:60px}
.current-tools{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.current-tools article{padding-top:23px;border-top:1px solid var(--phg-line)}
.current-tools h3{margin-top:15px}
.technology-editorial{background:#edf2f6}
.concept-section{padding-block:60px}
.concept-workspace{border:1px solid #bccbd5;box-shadow:0 14px 40px #1531470a;background:#fff}
.concept-top{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:18px 25px;background:var(--phg-night);color:#f0f4f7;font-size:13px;letter-spacing:.07em}
.concept-badge{border:1px solid #b8a189;padding:5px 10px;color:#f0c29c;letter-spacing:0;white-space:nowrap}
.concept-body{display:grid;grid-template-columns:245px 1fr;min-height:385px}
.concept-nav{display:flex;flex-direction:column;padding:20px;background:#edf2f6;border-right:1px solid var(--phg-line);gap:8px}
.concept-nav button{text-align:left;border:1px solid transparent;background:transparent;color:var(--navy);padding:13px 12px;font-size:15px;line-height:1.5;cursor:pointer}
.concept-nav button[aria-pressed=true]{background:#fff;border-color:#d4e0e8;border-left:3px solid #b77a4c}
.concept-detail{padding:30px 35px}
.concept-detail h3{font:400 29px/1.3 'IBM Plex Serif',Georgia,serif;margin-top:15px}
.concept-detail>p:not(.eyebrow){font-size:16px;line-height:1.8;color:var(--muted);margin-top:15px}
.concept-detail ul{list-style:none;padding:0;margin:24px 0 0}
.concept-detail li{border-top:1px solid var(--phg-line);padding:12px 0 12px 21px;position:relative;font-size:16px}
.concept-detail li:before{content:'';position:absolute;left:0;top:23px;width:6px;height:6px;border:1px solid #a87349}
.concept-detail .concept-note{font-size:13px!important}
.next-step{border-top:1px solid var(--phg-line);background:#edf2f6}
.next-step>.section-wrap{display:flex;align-items:center;justify-content:space-between;gap:40px;padding-block:38px}
.next-step h2{font:400 30px/1.3 'IBM Plex Serif',Georgia,serif;margin-top:10px}
.next-step p:not(.eyebrow){font-size:16px;line-height:1.8;color:var(--muted);margin-top:14px}
.next-step .button{max-width:350px;flex-shrink:0;text-align:left}
[hidden]{display:none!important}
@media(max-width:1000px){.architecture-path{grid-template-columns:repeat(3,minmax(0,1fr))}.architecture-path li:first-child{padding-left:20px}.architecture-path li{border-bottom:1px solid #ffffff25}.concept-body{grid-template-columns:210px 1fr}.next-step>.section-wrap{align-items:flex-start;flex-direction:column;gap:25px}.supply-path{gap:20px}.supply-path li{padding:22px}.supply-path li+li:before{left:-19px}.header-inner{gap:19px}.navigation{gap:19px}.header-cta{font-size:13px}}
@media(max-width:700px){.section-intro{margin-bottom:26px}.section-intro h2{font-size:32px}.section-intro>p:not(.eyebrow){font-size:16px}.doctrine-grid,.current-tools,.product-requirements,.market-destinations{grid-template-columns:1fr;gap:0}.doctrine{padding-bottom:40px}.doctrine-grid article{gap:14px;padding-block:24px}.doctrine-promise{margin-top:8px}.concise-technology{grid-template-columns:1fr;gap:17px}.concise-technology .text-link{white-space:normal;justify-self:start}.page-products .products{padding-block:35px}.page-products .product summary{grid-template-columns:95px 1fr}.page-products .product-image{min-height:150px}.page-products .product-copy{padding:22px 18px}.page-products .product-title{font-size:24px}.page-products .product-detail{padding:24px 22px}.product-requirements{gap:20px}.product-requirements dd{font-size:16px}.page-products .product-lead{font-size:16px}.supply-path{grid-template-columns:1fr;gap:24px}.supply-path li{padding:22px}.supply-path li+li:before{left:50%;top:-29px;content:'↓'}.supply-path h3{font-size:24px}.market-destinations{gap:18px;padding-top:25px}.market-destinations:after{display:none}.market-destinations:before{height:25px}.market-destinations article{padding:24px}.market-section,.process-section,.current-execution,.concept-section{padding-block:40px}.process-track{grid-template-columns:1fr}.process-node{padding:18px 22px;border-right:0;border-bottom:1px solid var(--phg-line);display:grid;grid-template-columns:25px 1fr;gap:0 16px}.process-node>span{grid-row:span 2;margin:5px 0 0}.process-node strong{font-size:25px}.process-node small{margin-top:4px;grid-column:2}.process-panel{padding:26px}.process-panel h3{font-size:25px}.architecture-path{grid-template-columns:1fr}.architecture-path li,.architecture-path li:first-child{padding:20px 0;border-right:0}.architecture-path h3{display:inline;margin-left:18px;font-size:24px}.architecture-path p{margin-left:39px}.architecture-section>.section-wrap{padding-block:40px}.architecture-control{justify-content:flex-start;gap:12px 23px;font-size:14px}.current-tools{gap:25px}.concept-top{padding:16px;align-items:flex-start;font-size:12px;gap:15px}.concept-body{grid-template-columns:1fr}.concept-nav{display:grid;grid-template-columns:1fr 1fr;padding:12px;border:0;border-bottom:1px solid var(--phg-line);gap:6px}.concept-nav button{font-size:14px;padding:12px 9px}.concept-detail{padding:25px 23px}.concept-detail h3{font-size:27px}.next-step h2{font-size:28px}.next-step>.section-wrap{padding-block:30px}.next-step .button{max-width:100%;font-size:14px}.subpage-hero{padding-block:28px 35px}}
@media(prefers-reduced-motion:reduce){.process-visible .process-track:after{animation:none}}
@media(max-width:700px){.market-branch:before{left:50%;right:auto;height:40px;border-right:0;border-bottom:0;border-left:1px solid #afbdc7}.market-branch:after{display:none}}
