.rf-tie-section{padding:54px 0 44px;background:#fff;border-bottom:1px solid #e9ecee;scroll-margin-top:24px;overflow:clip}
.rf-tie-lab{max-width:1000px}
.rf-tie-tabs{display:flex;align-items:stretch;justify-content:center;max-width:620px;margin:0 auto;border-bottom:1px solid #dfe3e5}
.rf-tie-tabs button{display:flex;align-items:center;justify-content:center;gap:14px;flex:1;min-height:62px;margin:0 0 -1px;padding:12px 20px 17px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:#626a6e;font-size:24px;font-weight:500;white-space:nowrap;transition:color .2s,border-color .2s}
.rf-tie-tabs button>span{display:grid;place-items:center;width:24px;height:24px;flex:none;border:1px solid #e0e4e6;border-radius:50%;color:#aeb6ba}
.rf-tie-tabs .dvp-icon{width:14px;height:14px;transition:transform .2s}
.rf-tie-tabs button[aria-selected=true]{color:var(--rf-red-dark);border-bottom-color:var(--rf-red-dark)}
.rf-tie-tabs button[aria-selected=true]>span{background:var(--rf-red);border-color:var(--rf-red);color:#fff}
.rf-tie-tabs button[aria-selected=true] .dvp-icon{transform:rotate(45deg)}
.rf-tie-stage{position:relative;height:540px;isolation:isolate}
.rf-tie-word{position:absolute;z-index:-1;top:34%;left:50%;transform:translateX(-50%);width:max-content;min-width:100%;color:transparent;-webkit-text-stroke:1px #e5e9e7;font-size:clamp(48px,12vw,172px);font-weight:700;line-height:1.2;letter-spacing:-.04em;text-align:center;white-space:nowrap;user-select:none;pointer-events:none}
.rf-tie-orbit{position:absolute;z-index:-1;left:50%;top:50%;width:410px;height:410px;max-width:82%;border:1px dashed #eef0ee;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}
.rf-tie-orbit::before,.rf-tie-orbit::after{content:'';position:absolute;left:50%;width:1px;height:20px;background:#eef0ee}
.rf-tie-orbit::before{top:-21px}.rf-tie-orbit::after{bottom:-21px}
.rf-tie-note{position:absolute;z-index:3;left:0;right:0;top:23px;display:flex;align-items:center;justify-content:center;gap:8px;margin:0!important;color:#6e7577;font-size:12px;line-height:1.6;pointer-events:none}
.rf-tie-note>span:first-child{width:6px;height:6px;border-radius:50%;background:var(--rf-red);box-shadow:0 0 0 4px #d600140b}
.rf-tie-model{position:absolute;inset:0;touch-action:pan-y;outline-offset:-4px!important}
.rf-tie-model.is-ready{cursor:grab}.rf-tie-model.is-dragging{cursor:grabbing}
.rf-tie-model canvas{display:block;width:100%;height:100%;position:absolute;inset:0;z-index:1}
.rf-tie-fallback{position:absolute;inset:75px 13% 20px;display:grid;place-items:center;color:#737d77;pointer-events:none}
.rf-tie-fallback svg{width:100%;height:auto;max-height:100%}
.rf-tie-model.is-ready .rf-tie-fallback{visibility:hidden}
.rf-tie-stage .dvn-model-callout{position:absolute;z-index:3;left:0;top:0;width:1px;height:1px;opacity:0;pointer-events:none;color:var(--rf-red-dark);font-size:12px;line-height:1.6}
.rf-tie-lab[data-model-state=ready] .dvn-model-callout{opacity:1}
.rf-tie-stage .dvn-model-callout::before{content:'';position:absolute;left:-4px;top:-4px;width:8px;height:8px;border-radius:50%;background:var(--rf-red);border:2px solid #fff;box-shadow:0 0 0 2px #d600141c}
.rf-tie-stage .dvn-model-callout>span{position:absolute;left:16px;bottom:14px;padding:0 5px 6px;border-bottom:1px solid #cb7a83;background:#ffffffd9;white-space:nowrap}
.rf-tie-macro{position:absolute;z-index:4;right:25px;bottom:35px;width:120px;height:155px;padding:0;border:5px solid #fff;border-radius:0;background:#29302d;transform:rotate(6deg);box-shadow:0 9px 22px #21332c12;overflow:hidden;transition:transform .25s}
.rf-tie-macro:hover{transform:rotate(0deg) translateY(-3px)}
.rf-tie-macro img{display:block;width:100%;height:100%;object-fit:cover;object-position:68% center}
.rf-tie-macro>span{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:5px;background:#28352fe6;color:#fff;padding:8px 5px;font-size:10px;font-weight:600;line-height:1.5}
.rf-tie-macro .dvp-icon{width:13px;height:13px}
.rf-tie-tools{display:flex;align-items:center;justify-content:center;gap:42px;max-width:840px;margin:6px auto 0}
.rf-tie-rotation{display:flex;align-items:center;gap:5px}
.rf-tie-rotation button{display:grid;place-items:center;width:42px;height:42px;min-height:42px;padding:0;border:1px solid #e2e6e8;border-radius:50%;background:#fff;color:#48524e;font-size:12px;line-height:1.5;transition:border-color .2s,color .2s}
.rf-tie-rotation button:hover{border-color:var(--rf-red);color:var(--rf-red-dark)}
.rf-tie-rotation .dvp-icon{width:17px;height:17px}
.rf-tie-rotation [data-tie-rotate="-1"] .dvp-icon{transform:rotate(180deg)}
.rf-tie-rotation [data-tie-reset]{width:84px;min-height:44px;border:0;border-radius:3px;padding:0 5px}
.rf-tie-tightness{width:245px;max-width:100%;min-width:120px}
.rf-tie-tightness label{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#48524e;font-size:13px;line-height:1.5;margin:0 0 7px}
.rf-tie-tightness small{font-size:10px;color:#68716b;white-space:nowrap}
.rf-site .rf-tie-tightness input[type=range]{display:block;width:100%;height:22px;min-height:22px;margin:0;padding:0;border:0;border-radius:0;background:transparent;accent-color:var(--rf-red);box-shadow:none;cursor:pointer}
.rf-tie-colors{display:flex;align-items:center;gap:8px;color:#68716b;font-size:12px;line-height:1.5}
.rf-tie-colors>span{margin-right:5px;white-space:nowrap}
.rf-tie-colors button{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid transparent;border-radius:50%;background:transparent}
.rf-tie-colors button>span{width:23px;height:23px;border:1px solid #818c84;border-radius:50%;background:#2b302e}
.rf-tie-colors [data-tie-color=white]>span{background:#eeecd9}
.rf-tie-colors button[aria-pressed=true]{border-color:var(--rf-red-dark)}
.rf-tie-panels{max-width:790px;margin:32px auto 0;text-align:center}
.rf-tie-panels p{font-size:15px;line-height:1.9;color:#616b65;margin:0}
.rf-tie-panels [role=tabpanel]{padding:0 8px}
.rf-site .rf-tie-dialog{width:min(880px,calc(100vw - 36px));max-width:880px;padding:0 0 22px;overflow:auto;border-radius:6px}
.rf-tie-dialog>img{display:block;width:100%;height:auto;max-height:72svh;object-fit:contain;background:#202625}
.rf-site .rf-tie-dialog>h3{font-size:20px;line-height:1.5;margin:19px 24px 6px}
.rf-tie-dialog>p{font-size:13px;line-height:1.8;color:#626b67;margin:0 24px}
.rf-tie-dialog .rf-dialog-close{top:12px;right:12px;background:#fff;border:1px solid #d7ded9;z-index:2}
@media(max-width:1100px){
 .rf-tie-stage{height:490px}.rf-tie-orbit{width:370px;height:370px}
 .rf-tie-tools{gap:24px}.rf-tie-tightness{width:220px}
 .rf-tie-macro{width:100px;height:130px;right:12px;bottom:30px}
}
@media(max-width:767px){
 .rf-tie-section{padding-block:30px 32px}.rf-tie-tabs button{font-size:18px;min-height:54px;gap:7px;padding:10px 6px 13px}
 .rf-tie-tabs button>span{width:20px;height:20px}.rf-tie-tabs .dvp-icon{width:12px;height:12px}
 .rf-tie-stage{height:420px;margin-inline:-8px}.rf-tie-word{font-size:15vw;top:37%}
 .rf-tie-orbit{width:290px;height:290px}.rf-tie-note{top:17px;font-size:10px}
 .rf-tie-macro{width:78px;height:100px;right:11px;bottom:12px;border-width:3px}
 .rf-tie-macro>span{font-size:8px;padding:6px 4px}.rf-tie-macro .dvp-icon{width:10px;height:10px}
 .rf-tie-tools{gap:18px 14px;flex-wrap:wrap;justify-content:space-between;margin-top:9px}
 .rf-tie-rotation{gap:1px}.rf-tie-rotation button{width:35px;height:38px;min-height:38px}
 .rf-tie-rotation [data-tie-reset]{width:66px;font-size:10px}
 .rf-tie-tightness{width:calc(100% - 156px);min-width:110px}.rf-tie-tightness label{font-size:11px;gap:6px}.rf-tie-tightness small{font-size:9px}
 .rf-tie-colors{margin-inline:auto;font-size:11px}.rf-tie-colors button{width:37px;height:37px}
 .rf-tie-panels{margin-top:20px}.rf-tie-panels p{font-size:13px;line-height:1.9}
 .rf-tie-panels [role=tabpanel]{padding:0 40px 0 4px}
 .rf-tie-stage .dvn-model-callout{font-size:10px}
}
@media(max-width:359px){
 .rf-tie-tabs button{font-size:16px;gap:5px}.rf-tie-tabs button>span{width:18px;height:18px}
 .rf-tie-stage{height:370px}.rf-tie-orbit{width:250px;height:250px}
 .rf-tie-macro{width:67px;height:87px;right:7px}.rf-tie-macro>span{font-size:7px}
 .rf-tie-tightness{width:calc(100% - 156px)}
}
@media(prefers-reduced-motion:reduce){.rf-tie-lab *{transition:none!important}}
