
/* CTN premium calculator interface — scoped to the calculator engine */
.ctn-engine{--ctn-navy:#101c32;--ctn-gold:#c5a46d;--ctn-ivory:#f8f7f3;--ctn-emerald:#187a67;max-width:1160px;margin:28px auto 36px;color:var(--ctn-navy)}
.ctn-engine .ctn-calculator{gap:22px;align-items:stretch;margin:0}
.ctn-engine .ctn-card{border:1px solid #e4e3de;border-radius:18px;background:#fff;padding:clamp(20px,3vw,34px);box-shadow:0 14px 40px rgba(16,28,50,.065)}
.ctn-engine .ctn-card:nth-child(2){background:linear-gradient(145deg,#101c32,#20334d);color:#fff;border-color:#2e415b;box-shadow:0 18px 45px rgba(16,28,50,.17)}
.ctn-engine .ctn-card label{font-size:14px;font-weight:650;letter-spacing:.01em;color:#334258;margin-top:18px}
.ctn-engine .ctn-card input,.ctn-engine .ctn-card select{min-height:48px;background:#fafaf8;border:1px solid #d7dce2;border-radius:9px;color:#101c32;font:inherit;font-size:16px;transition:border-color .18s,box-shadow .18s}
.ctn-engine .ctn-card input:focus,.ctn-engine .ctn-card select:focus{outline:2px solid #187a67;outline-offset:2px;border-color:#187a67}
.ctn-engine .ctn-button{min-height:52px;margin-top:25px;background:#c5a46d;color:#101c32;border-radius:9px;font:inherit;font-weight:750;transition:background .18s,transform .18s}
.ctn-engine .ctn-button:hover{background:#e1c38e;transform:translateY(-1px)}
.ctn-engine .ctn-button:focus-visible{outline:3px solid #187a67;outline-offset:3px}
.ctn-engine .ctn-result{font-size:clamp(29px,3.5vw,44px);font-weight:750;line-height:1.15;color:#f2d29d;overflow-wrap:anywhere}
.ctn-engine .ctn-summary{color:#e1e7f0;line-height:1.9}
.ctn-engine .ctn-summary b{color:#fff}
.ctn-engine .ctn-insight{border-left:3px solid #c5a46d;background:rgba(255,255,255,.075);border-radius:0 9px 9px 0;color:#e6eaf0;line-height:1.65;padding:16px}
.ctn-engine .ctn-error{color:#a12525;font-weight:650}
@media(max-width:720px){.ctn-engine .ctn-calculator{grid-template-columns:minmax(0,1fr)}.ctn-engine .ctn-card{padding:22px}.ctn-engine .ctn-result{font-size:32px}}


/* Final calculator surface details */
.ctn-engine .ctn-card{min-width:0}
.ctn-engine .ctn-card label{display:block;line-height:1.45}
.ctn-engine .ctn-card input,.ctn-engine .ctn-card select{width:100%;max-width:100%;box-sizing:border-box}
.ctn-engine .ctn-card input:hover,.ctn-engine .ctn-card select:hover{border-color:#aeb8c5}
.ctn-engine .ctn-button{cursor:pointer;border:1px solid #ac884e}
.ctn-engine .ctn-error:not(:empty){margin-top:13px;line-height:1.45;font-size:15px}
.ctn-engine .ctn-summary{overflow-wrap:anywhere}
.ctn-engine .ctn-result{font-variant-numeric:tabular-nums}
@media(max-width:720px){.ctn-engine{margin:20px auto 30px}.ctn-engine .ctn-card{border-radius:15px}.ctn-engine .ctn-button{width:100%}}
