.molecule-calculation{display:grid;grid-template-columns:minmax(240px,1fr) minmax(220px,.82fr);align-items:center;gap:clamp(20px,4vw,52px);margin:30px 0 0;padding:clamp(20px,4vw,42px);border:1px solid rgba(44,76,73,.14);border-radius:22px;background:linear-gradient(135deg,#f2f4e9,#fffdf7 64%);overflow:hidden}
.molecule-stage{position:relative;min-height:190px;display:grid;place-items:center;isolation:isolate;background:radial-gradient(ellipse at center,rgba(174,194,151,.25),transparent 70%)}
.molecule-stage svg{display:block;width:100%;max-width:520px;overflow:visible}
.molecule-bonds path{fill:none;stroke:#90a78a;stroke-width:2.5;opacity:.54;stroke-linecap:round}
.molecule-bonds .molecule-flow{stroke:#557a65;stroke-width:3.2;stroke-dasharray:8 12;opacity:.9;animation:molecule-flow 8s linear infinite}
.molecule-atoms circle{fill:#e0e9cf;stroke:#6f907b;stroke-width:2;transform-box:fill-box;transform-origin:center;animation:molecule-breathe 4.5s ease-in-out infinite}
.molecule-atoms circle:nth-child(3n){fill:#f4e5bf;stroke:#b19a61;animation-delay:-1.4s}
.molecule-atoms circle:nth-child(2n){animation-delay:-2.5s}
.molecule-value{position:absolute;z-index:2;top:50%;left:50%;transform:translate(-50%,-55%);max-width:75%;padding:11px 15px;border-radius:99px;background:#fffdf6;color:#253e3d;font-weight:700;font-size:clamp(15px,2vw,22px);box-shadow:0 5px 22px rgba(45,70,60,.1);white-space:nowrap}
.molecule-caption{position:absolute;bottom:3px;left:50%;transform:translateX(-50%);font-size:9px;letter-spacing:.12em;color:#66766e;white-space:nowrap}
.molecule-calculation figcaption{display:grid;gap:10px;max-width:38rem;color:#344743}
.molecule-calculation figcaption strong{font-size:clamp(18px,2.4vw,25px);line-height:1.2;color:#233b3c}
.molecule-calculation figcaption span{font-size:14px;line-height:1.6;color:#4e625d}
.molecule-calculation figcaption small{font-size:11px;line-height:1.5;color:#5d6a63}
@keyframes molecule-flow{to{stroke-dashoffset:-120}}
@keyframes molecule-breathe{0%,100%{transform:scale(.92);opacity:.78}50%{transform:scale(1.12);opacity:1}}
@media(max-width:720px){.molecule-calculation{grid-template-columns:1fr;gap:15px;padding:20px}.molecule-stage{min-height:160px}.molecule-calculation figcaption{padding:0 5px 3px}}
@media(prefers-reduced-motion:reduce){.molecule-bonds .molecule-flow,.molecule-atoms circle{animation:none!important}.molecule-bonds .molecule-flow{stroke-dasharray:none}}
