.engineering{padding:58px 0 64px;border-bottom:1px solid var(--line)}.engineering-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:28px 0 20px}.mechanism-tabs{display:flex;gap:8px;flex-wrap:wrap}.mechanism-tabs button{background:transparent;border-color:transparent;border-radius:0;padding:12px 10px;border-bottom:2px solid transparent;color:#516975}.mechanism-tabs button[aria-selected=true]{color:#173e52;border-bottom-color:#173e52;font-weight:700}.engineering .segmented{flex-shrink:0}.cycle-grid{display:grid;grid-template-columns:1fr 1.04fr;border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden}.cycle-left,.cycle-right{padding:26px;min-width:0}.cycle-right{border-left:1px solid var(--line);background:#fbfcfd}.mini-heading{display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap}.mini-heading h3{font-size:18px;margin:0 0 8px;letter-spacing:-.3px}.mini-heading>span{font-size:12px;color:#5c7482}.engineering svg{display:block;overflow:visible;font-family:'DM Sans',sans-serif}.engineering svg text{fill:#2b4d60;font-size:12px}.engineering svg text.node-title{font-size:14px;font-weight:600}.engineering svg text.node-sub{font-size:12px;fill:#536c7c}.engineering svg text.selected{fill:#fff}.engineering svg .state-label,.engineering svg .valve-label{font-size:11px;font-weight:600;letter-spacing:.2px}.engineering svg .diagram-pressure{font-size:12px}.engineering svg .axis-title{font-size:12px}.engineering svg .state-number{font-weight:700}.diagram-surface{margin:10px 0 18px}.cycle-steps{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cycle-steps button{text-align:left;font-size:14px;min-height:44px}.process-detail{padding:24px 0 0;min-height:237px}.process-detail .eyebrow{font-size:11px;margin-bottom:10px}.process-detail h3{margin:0 0 10px;font-size:23px;letter-spacing:-.6px}.process-detail p:not(.eyebrow){font-size:15px;line-height:1.65;color:#4e6978}.process-detail p.process-equation{font-size:18px;color:#193e51;margin-bottom:8px;font-variant-numeric:tabular-nums}.ph-chart{margin-top:10px}.state-table{border-collapse:collapse;width:100%;font-size:13px;font-variant-numeric:tabular-nums;margin-top:20px}.state-table th,.state-table td{padding:10px 7px;border-bottom:1px solid #d4e0e6;text-align:right}.state-table th:first-child{text-align:left}.state-table thead th{font-size:12px;font-weight:500;color:#526f80}.state-table th>span{display:block;font-size:11px;font-weight:400;color:#617888}.state-table th small{font-size:11px}.state-table .active-state{background:#eaf2f6}.temperature-lab{display:grid;grid-template-columns:1fr 1.04fr;gap:50px;padding:36px 26px 24px}.temperature-lab h3{font-size:24px;letter-spacing:-.6px;margin:0 0 14px}.temperature-lab p{font-size:15px;line-height:1.65;color:#536d7c}.temperature-lab p.caption{font-size:12px}.temperature-controls label,.rotary-copy>label{display:block;font-size:15px;margin:0 0 10px}.temperature-controls output,.rotary-copy output{float:right;font-weight:700;font-variant-numeric:tabular-nums}.temperature-controls input[type=range],.rotary-copy input[type=range]{width:100%;accent-color:#1c7395;height:25px;margin:0 0 22px}.cycle-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;border-top:1px solid var(--line);padding-top:20px}.cycle-metrics strong{font-size:24px;font-weight:500;display:block;white-space:nowrap;font-variant-numeric:tabular-nums}.cycle-metrics span{font-size:12px;color:#5a7280;display:block;margin-top:7px;line-height:1.5}.model-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 26px;font-size:14px;color:#526a78}.model-details summary{cursor:pointer;color:#214558;font-size:15px}.model-details p{line-height:1.7;max-width:1000px}.physics-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding:28px 26px 0}.physics-notes h3{font-size:17px;font-weight:600}.physics-notes p{font-size:14px;line-height:1.7;color:#536d7c}.rotary-grid{display:grid;grid-template-columns:1.18fr 1fr;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.rotary-surface{display:flex;flex-direction:column;position:relative;min-height:650px;background:#e8eff3;min-width:0}.rotary-surface>.mini-heading{padding:22px;position:relative;z-index:1}.rotary-surface .mini-heading>span:first-child{font-size:11px;letter-spacing:1px}.rotary-view-buttons{display:flex;gap:8px;flex-wrap:wrap;padding:20px;position:relative;z-index:1;margin-top:auto}.rotary-view-buttons button{min-height:44px;font-size:13px}#rotary-scene{position:absolute;inset:65px 0 76px;touch-action:none}#rotary-scene canvas{display:block}#rotary-fallback{padding:35px}.rotary-copy{padding:30px;min-width:0}.rotary-copy h3{font-size:28px;letter-spacing:-.8px;line-height:1.3;margin:0 0 20px}.rotary-copy>p{font-size:15px;color:#526d7c;line-height:1.7}.rotary-copy>p.caption{font-size:12px}.rotary-copy h4{font-family:Manrope,sans-serif;font-size:17px;font-weight:600;margin:26px 0 10px}.pocket-legend{display:flex;flex-direction:column;gap:9px;padding:16px 0 22px;font-size:13px}.pocket-legend span{display:flex;align-items:center;gap:9px}.pocket-legend i{display:inline-block;width:12px;height:12px;border-radius:2px}.suction-swatch{background:#63bdde}.compression-swatch{background:#e99459}.rotary-play-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.rotary-play-row>span{font-size:12px;color:#556e7a;flex:1;min-width:120px}.rotary-play-row button{min-height:44px}.reverse-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:28px;border:1px solid var(--line);border-radius:16px;background:#fff}.reverse-grid>div{min-width:0}.reverse-copy h3{font-size:26px;letter-spacing:-.6px;line-height:1.3;margin:10px 0 18px}.reverse-copy p{font-size:15px;line-height:1.7;color:#526d7c}.reverse-copy p.caption{font-size:12px}.reverse-copy h4{font-size:17px;line-height:1.5}.coil-role-list{padding:6px 0}.coil-role-list>div{padding:14px 0;display:flex;gap:18px;justify-content:space-between;border-top:1px solid var(--line);font-size:14px}.coil-role-list span{color:#526d7c}.coil-role-list strong{font-weight:500}.defrost-controls{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:20px}.defrost-controls>span{font-size:12px;color:#526d7c}.engineering button:disabled{cursor:default;opacity:.5}.engineering .text-button{font-size:14px;min-height:44px}.engineering a{color:#17648a}@media(max-width:1100px){.engineering-toolbar{align-items:flex-start;flex-direction:column}.cycle-left,.cycle-right{padding:20px}.cycle-metrics strong{font-size:21px}.temperature-lab{gap:28px}.rotary-grid{grid-template-columns:1fr 1fr}.rotary-copy{padding:24px}.reverse-grid{gap:25px;padding:22px}}@media(max-width:760px){.engineering{padding:42px 0}.engineering-toolbar{gap:12px}.mechanism-tabs{gap:0}.mechanism-tabs button{font-size:13px;padding:12px 8px;min-height:44px}.cycle-grid,.rotary-grid,.reverse-grid{grid-template-columns:1fr}.cycle-right{border-left:0;border-top:1px solid var(--line)}.cycle-left,.cycle-right{padding:19px}.cycle-grid .mini-heading{gap:2px;flex-direction:column;align-items:flex-start}.mini-heading h3{font-size:17px}.temperature-lab{grid-template-columns:1fr;padding:30px 0 20px;gap:18px}.temperature-controls{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px 18px}.cycle-metrics strong{font-size:22px}.process-detail{min-height:0}.state-table{font-size:12px}.state-table td,.state-table th{padding:10px 4px}.state-table th>span{font-size:11px}.model-details{padding:18px 0}.physics-notes{grid-template-columns:1fr;padding:20px 0 0;gap:0}.physics-notes article{padding:8px 0}.physics-notes h3{margin-bottom:8px}.rotary-surface{min-height:470px}.rotary-copy{border-top:1px solid var(--line);padding:22px}.rotary-copy h3{font-size:25px}.rotary-view-buttons{padding:15px;gap:6px}.rotary-view-buttons button{font-size:12px;padding:9px}.reverse-grid{padding:20px;gap:30px}.reverse-copy h3{font-size:24px}.engineering svg .valve-label{font-size:11px}.reverse-grid .mini-heading{gap:4px}.coil-role-list>div{flex-direction:column;gap:5px}}@media(max-width:360px){.mechanism-tabs button{font-size:12px;padding:12px 6px}.cycle-left,.cycle-right{padding:14px}.cycle-steps button{font-size:12px}.cycle-metrics strong{font-size:19px}}

.header-links{display:flex;gap:24px;align-items:center}@media(max-width:760px){.header-links{gap:10px}.header-links a{font-size:12px}.header-links a:first-child{display:none}}

#rotary-scene{position:relative;inset:auto;flex:0 0 500px;height:500px;margin:auto 0}.rotary-surface{justify-content:space-between}.rotary-view-buttons{margin-top:0}@media(max-width:760px){#rotary-scene{height:330px;flex-basis:330px}}

.language-switch{display:flex;gap:4px;align-items:center}.language-switch button{font-size:12px;padding:7px 9px}.language-switch button[aria-pressed=true]{background:#183e52;color:#fff}html[lang=ja] h1{font-size:clamp(32px,3.6vw,52px);line-height:1.3;letter-spacing:-1px}html[lang=ja] h2{line-height:1.45;letter-spacing:0}html[lang=ja] .section-heading h2{font-size:32px}html[lang=ja] .process-detail h3,html[lang=ja] .rotary-copy h3{line-height:1.5}html[lang=ja] .balance span{font-size:11px}html[lang=ja] .state-table th>span{white-space:normal}html[lang=ja] .edition{letter-spacing:1px}@media(max-width:1100px){header .edition{display:none}}@media(max-width:760px){header{flex-wrap:wrap;height:auto;min-height:70px;padding-top:12px;padding-bottom:12px;gap:12px}header .header-links{display:none}.language-switch{margin-left:auto}html[lang=ja] h1{font-size:33px}.engineering-toolbar .segmented{max-width:100%}html[lang=ja] .section-heading h2{font-size:29px}html[lang=ja] .cycle-steps button{font-size:13px}}

.rotary-controls{padding:10px 22px 0}.rotary-controls label{display:block;font-size:15px;margin-bottom:10px}.rotary-controls output{float:right;font-weight:600}.rotary-controls input[type=range]{width:100%;height:25px;accent-color:#1c7395;margin:0 0 12px}.rotary-controls .caption{margin-bottom:0}.rotary-surface{justify-content:flex-start}#rotary-scene{margin:0}.rotary-view-buttons{margin-top:auto}@media(max-width:760px){.rotary-controls{padding:8px 16px 0}#rotary-scene{height:300px;flex-basis:300px}}
