.ttt-tool,.ttt-warranty{box-sizing:border-box;max-width:1120px;margin:40px auto;padding:28px;background:#fff;color:#13243a;border:1px solid #d7e2ed;border-radius:18px;font:400 16px/1.65 system-ui,sans-serif}
.ttt-tool *,.ttt-warranty *{box-sizing:border-box}
.ttt-tool h2,.ttt-warranty h2{font-size:clamp(1.6rem,4vw,2.3rem);line-height:1.2;margin:0 0 14px}
.ttt-tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ttt-tool label{display:block;font-weight:700}
.ttt-tool select{display:block;width:100%;min-height:48px;margin-top:8px;padding:10px;border:1px solid #66788b;border-radius:8px;background:#fff;color:#13243a;font:inherit}
.ttt-tool-output{min-height:300px;margin-top:24px;padding:24px;background:#edf5ff;border-radius:12px}
.ttt-tool-price{display:block;font-size:clamp(1.7rem,4vw,2.4rem);line-height:1.25;margin:12px 0}
.ttt-badges{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.ttt-badges span{padding:7px 12px;background:#13243a;color:#fff;border-radius:8px;font-size:.88rem;font-weight:700}
.ttt-tool a,.ttt-warranty a{color:#075ca8}
.ttt-tool .ttt-reserve{display:inline-flex;min-height:48px;align-items:center;padding:12px 18px;background:#075ca8;color:#fff;font-weight:700;text-decoration:none;border-radius:8px}
.ttt-tool :focus-visible,.ttt-warranty :focus-visible{outline:3px solid #a86100;outline-offset:4px}
.ttt-warranty{border-left:5px solid #075ca8}
.ttt-warranty p{margin:12px 0}
.ttt-mobile-contact{display:none}
@media(max-width:767px){
 html{scroll-padding-bottom:calc(106px + env(safe-area-inset-bottom,0px))}
 body{padding-bottom:calc(106px + env(safe-area-inset-bottom,0px))}
 .ttt-tool,.ttt-warranty{margin:24px 16px;padding:20px}
 .ttt-tool-grid{grid-template-columns:1fr}
 .ttt-mobile-contact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;position:fixed;inset:auto 0 0;z-index:1000;height:calc(88px + env(safe-area-inset-bottom,0px));padding:10px 10px calc(10px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid #d7e2ed;box-shadow:0 -4px 16px #13243a1a;box-sizing:border-box}
 .ttt-mobile-contact a{display:flex;align-items:center;justify-content:center;border-radius:8px;padding:6px;color:#fff;background:#075ca8;font:700 13px/1.35 system-ui,sans-serif;text-align:center;text-decoration:none}
 .ttt-mobile-contact a:last-child{background:#13243a}
 .ttt-mobile-contact a:focus-visible{outline:3px solid #a86100;outline-offset:2px}
}
@media(prefers-reduced-motion:reduce){.ttt-tool,.ttt-mobile-contact{scroll-behavior:auto}}