/* Revisión visual: tipografía original y dibujo continuo, sin panel independiente. */
.calc-nav{min-height:85px;padding:0;gap:22px}
.calc-brand{font-family:var(--serif);font-size:18px;font-weight:560;letter-spacing:0;line-height:1.25}
.calc-brand svg{width:34px;height:34px;flex:none}.calc-brand svg circle{stroke:var(--ink)}
.calc-langs{gap:14px;letter-spacing:.12em}.calc-langs a{position:relative;padding:10px 0;text-decoration:none}
.calc-langs a:after{content:'';position:absolute;bottom:3px;left:0;right:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.calc-langs a:hover:after,.calc-langs [aria-current]:after{transform:scaleX(1)}
.calc-intro{padding:46px 0 30px}.calc-intro h1{max-width:860px;animation:dq-intro-in .8s var(--ease) both}.calc-intro .lede{animation:dq-intro-in .8s .09s var(--ease) backwards}
.calc-intro h1 .accent{display:inline-block}
.calc-intro .eyebrow:before{transform-origin:left;animation:dq-hairline .9s var(--ease) both}
.calc-layout{gap:64px}.calc-progress{border-bottom-width:1px;padding-bottom:18px}
.calc-progress span{transition:color .3s}.calc-progress span.active{font-weight:500}
.calc-progress:after{bottom:-1px;width:100%;transform:scaleX(var(--progress-scale,.25));transform-origin:left;transition:transform .7s cubic-bezier(.16,1,.3,1)}
.calc-panel{animation:none}.calc-panel h2{scroll-margin-top:28px}
.calc-panel .hint{line-height:1.7}.calc-panel label.field{font-size:13px;margin-bottom:8px}
.calc-panel textarea,.calc-panel input:not([type=checkbox]),.calc-panel select{border-color:#c9c5ba;border-radius:5px;transition:border-color .3s,background .3s,box-shadow .3s}
.calc-panel textarea{line-height:1.6}.calc-panel textarea::placeholder{color:#77796f}
.calc-panel input:focus,.calc-panel textarea:focus,.calc-panel select:focus{outline-color:#666a60;outline-offset:3px;background:#ffffffb8;box-shadow:0 3px 16px #342f1f06}
.calc-panel .btn{font-size:12px}.calc-page .btn:hover{transform:translateY(-2px)}
.calc-panel .btn span{transition:transform .35s var(--ease)}.calc-panel .btn:hover span{transform:translateX(4px)}
.calc-back{transition:transform .3s,color .3s}.calc-back:hover{transform:translateX(-3px)}
.calc-service{position:relative;padding:18px 4px;transition:background .4s,padding .4s var(--ease)}
.calc-service:before{content:'';position:absolute;left:0;bottom:-1px;height:1px;width:100%;background:#777568;transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}
.calc-service:has(input:checked){background:linear-gradient(90deg,#e8e4d967,transparent);padding-left:12px}.calc-service:has(input:checked):before{transform:scaleX(1)}
.calc-contact{border-bottom-color:#a6a496;margin-top:17px;margin-right:16px;transition:border-color .3s}.calc-contact:hover{border-color:var(--ink)}

.calc-visual{padding:0 0 12px;border:0;border-radius:0;overflow:visible;background:radial-gradient(ellipse at 50% 48%,#e8e2d58a 0,transparent 65%);color:var(--ink)}
.calc-visual:before{display:none}.scene-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:35px}
.scene-heading .eyebrow{font-size:10px;color:#606459;letter-spacing:.14em}
.motion-toggle{display:grid;place-items:center;border:1px solid transparent;border-radius:50%;background:transparent;color:#686b61;width:36px;height:36px;flex:0 0 36px;cursor:pointer;transition:background .3s,border-color .3s}
.motion-toggle:hover{background:#e8e3d66b;border-color:var(--line)}
.calc-visual .motion-toggle svg{width:18px;height:18px;margin:0;fill:none;stroke:currentColor;stroke-width:1.4}
.motion-toggle .play-icon{display:none}.motion-toggle[aria-pressed=true] .play-icon{display:block}.motion-toggle[aria-pressed=true] .pause-icon{display:none}
.calc-visual .scene{width:100%;height:auto;overflow:visible;margin:10px 0 0;max-height:none;max-width:100%}
.calc-visual .scene .caption{font:9px var(--mono);letter-spacing:1.5px;fill:#64675d}
.calc-visual .scene .node-text{font-size:12px;fill:#53574e;opacity:1}.calc-visual .scene .node-count{font:9px var(--mono);fill:#6b6d63}
.calc-visual .scene .unknown-symbol{font:16px var(--serif);fill:#6f7167}
.scene-landscape{fill:none;opacity:.27;transform-origin:220px 210px;animation:dq-scene-breathe 13s ease-in-out infinite alternate}
.calc-visual .scene-landscape path{stroke:#b4ac99;stroke-width:.7}.scene-landscape path:nth-child(2){opacity:.8}.scene-landscape path:nth-child(3){opacity:.5}
.calc-visual .scene-guide{fill:none;stroke:#c8c4b7;stroke-width:.8}
.calc-visual .scene-line{fill:none;stroke:#777b6c;stroke-width:1;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1s cubic-bezier(.16,1,.3,1),opacity .5s;opacity:0}
.scene-branch.is-active .scene-line{stroke-dashoffset:0;opacity:.8}.calc-visual .scene-flow-path{fill:none;stroke:none}
.calc-visual .scene .scene-traveler{fill:#686b5c;stroke:none;opacity:0;visibility:hidden;will-change:transform}.scene-branch.is-active .scene-traveler{visibility:visible}
.calc-visual .scene-origin .node{fill:#f7f5ee;stroke:#ccc8ba;stroke-width:1;transition:stroke .5s,fill .5s}.calc-visual .scene-origin.is-active .node{stroke:#8b8c7c;fill:#fdfbf4}
.calc-visual .scene .node-ring{fill:none;stroke:#d3cebe;opacity:0;transform-box:fill-box;transform-origin:center;transform:scale(.7);transition:opacity .5s,transform .8s var(--ease)}
.calc-visual .scene-origin.is-active .node-ring{opacity:.8;transform:scale(1)}
.calc-visual .scene-icon,.calc-visual .scene-icon path,.calc-visual .scene-icon circle{fill:none;stroke:#767b6d;stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round}
.scene-unknown{opacity:0;transition:opacity .5s}.has-unknown .scene-unknown{opacity:1}.calc-visual .scene-unknown .scene-guide{stroke-dasharray:2 5}
.scene-hub{transform-origin:220px 225px}
.calc-visual .scene .hub-aura{fill:#f0ecdfaa;stroke:#b5af9d;stroke-width:.65;stroke-dasharray:100 25 30 50;transform-origin:220px 225px;animation:dq-hub-breathe 7s ease-in-out infinite}
.calc-visual .scene .hub-outline{fill:var(--paper);stroke:#767c6b;stroke-width:1.5}.calc-visual .scene .hub-inner{fill:none;stroke:#aaa895;stroke-width:.9}.calc-visual .scene .seal{font:italic 43px var(--serif);fill:var(--ink)}
.calc-visual .scene .service-halo{fill:var(--paper);stroke:#c0baaa;stroke-width:.8;opacity:0;transform-box:fill-box;transform-origin:center;transform:scale(.5);transition:opacity .5s,transform .65s var(--ease)}
.calc-visual .scene-service.selected .service-halo{opacity:1;transform:scale(1)}.calc-visual .service-dot{fill:#9e9d8e;opacity:.5;transition:opacity .4s}.calc-visual .scene-service.selected .service-dot{opacity:1;fill:#555d4d}
.calc-visual .scene .service-number{font:9px var(--mono);fill:#99988a}.calc-visual .scene-service.selected .service-number{fill:#555d4d}
.calc-visual .scene-summary{font:11px/1.8 var(--mono);color:#616557;min-height:20px;text-align:center;margin:7px 0 15px}
.calc-visual .diagram-services{justify-content:center;min-height:30px;margin:0 0 16px}.diagram-services span{font:10px/1.5 var(--mono);color:#454d3f;border-color:#d2cdbf;border-radius:20px;background:#f8f6ef;padding:6px 10px;animation:dq-chip-in .55s var(--ease) both}
.calc-visual .calc-scene-caption{border-color:var(--line);padding-top:13px;color:#6e7165;font-size:11px;line-height:1.7;text-align:center}
.calc-visual.reduced-motion .scene-traveler{display:none}.calc-visual.is-result .scene .hub-outline{stroke-width:2}.calc-visual.is-result .scene .hub-aura{animation:none;stroke-dasharray:none;opacity:.6}
@keyframes dq-intro-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes dq-chip-in{from{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes dq-hairline{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes dq-scene-breathe{from{transform:translate(-3px,2px) rotate(-3deg) scale(.98)}to{transform:translate(4px,-3px) rotate(3deg) scale(1.02)}}
@keyframes dq-hub-breathe{0%,100%{transform:scale(.98);opacity:.55}50%{transform:scale(1.035);opacity:.85}}
@media(max-width:850px){
 .calc-layout{gap:26px}.calc-visual{padding:0;background:radial-gradient(ellipse at 50% 45%,#e8e2d577,transparent 64%)}
 .calc-visual .scene{height:210px;width:auto;max-width:100%;margin:0 auto}.scene .node-text,.scene .node-count,.scene .caption,.scene .service-number{display:none}
 .scene-heading .eyebrow{font-size:9px}.calc-visual .scene-summary{margin:0 0 11px;font-size:11px}.calc-visual .diagram-services{min-height:0;margin-bottom:10px}
 .calc-visual .calc-scene-caption{padding-top:10px;font-size:11px}.calc-intro{padding-top:30px}.calc-progress{margin-bottom:26px}
}
@media(max-width:600px){.calc-brand span{display:none}.calc-brand{gap:0}.calc-nav{min-height:72px}.calc-langs{gap:16px}.calc-layout{gap:25px}.calc-visual .scene{height:190px}}
@media(max-width:390px){.calc-brand{font-size:18px}.calc-brand svg{width:34px;height:34px}.scene-heading .eyebrow{letter-spacing:.08em}.calc-visual .scene-summary{font-size:10px}}
@media(prefers-reduced-motion:reduce){.calc-page *,.calc-page *:before,.calc-page *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-toggle{display:none}.scene-traveler{display:none}}
