/* The Towbar Man – instant towbar price. Uses the towbarman theme colours with fallbacks. */
.tbm-ip{--ip-brand:var(--wp--preset--color--brand,#d71920);--ip-accent:var(--wp--preset--color--accent,#ffcc00);--ip-ink:var(--wp--preset--color--ink,#1d2329);--ip-muted:var(--wp--preset--color--muted,#55606b);--ip-soft:var(--wp--preset--color--soft,#f3f5f7);--ip-line:var(--wp--preset--color--line,#e2e6ea);--ip-r:var(--tbm-r,12px);max-width:560px;margin:0 auto;color:var(--ip-ink);font-family:inherit}
.tbm-ip *,.tbm-ip *::before,.tbm-ip *::after{box-sizing:border-box}
.tbm-ip [hidden]{display:none!important}
.tbm-ip__card{background:#fff;border:1px solid var(--ip-line);border-radius:var(--ip-r);padding:18px;margin:0 0 16px}
.tbm-ip__card:focus,.tbm-ip section:focus{outline:none}
.tbm-ip__h{font-size:1.25rem;margin:0 0 12px;line-height:1.25}
.tbm-ip fieldset{border:0;margin:0;padding:0;min-width:0}
.tbm-ip legend{font-weight:800;font-size:1.15rem;margin:0 0 12px;padding:0}
.tbm-ip__progress{margin:0 0 8px;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--ip-brand)}
.tbm-ip__field{margin:0 0 14px}
.tbm-ip__field label{display:block;font-weight:700;margin:0 0 6px}
.tbm-ip__opt{font-weight:400;color:var(--ip-muted)}
.tbm-ip input[type=text],.tbm-ip input[type=tel],.tbm-ip input[type=email],.tbm-ip select,.tbm-ip textarea{width:100%;font:inherit;font-size:1rem;color:var(--ip-ink);background:#fff;border:1px solid #c5ccd3;border-radius:10px;padding:.7em .8em;min-height:48px}
.tbm-ip textarea{min-height:0}
.tbm-ip input:focus-visible,.tbm-ip select:focus-visible,.tbm-ip textarea:focus-visible,.tbm-ip button:focus-visible,.tbm-ip a:focus-visible{outline:3px solid var(--ip-ink);outline-offset:2px}
.tbm-ip [aria-invalid=true]{border-color:var(--ip-brand)!important;box-shadow:0 0 0 1px var(--ip-brand)}
.tbm-ip input.tbm-ip__plate,.tbm-ip__plate{background:var(--ip-accent);border:2px solid var(--ip-ink);border-radius:8px;font-weight:800;font-size:1.6rem;letter-spacing:.08em;text-align:center;text-transform:uppercase;padding:.35em .5em}
.tbm-ip input.tbm-ip__plate::placeholder{color:rgba(29,35,41,.45)}
.tbm-ip__plate--static{display:inline-block;margin:0 0 8px;font-size:1.25rem;min-width:9em}
.tbm-ip__choices{display:grid;gap:8px;margin:0 0 12px}
.tbm-ip__choice{position:relative}
.tbm-ip__choice input{position:absolute;opacity:0;width:1px;height:1px}
.tbm-ip__choice label{display:flex;align-items:center;gap:10px;min-height:52px;padding:12px 14px;border:1px solid var(--ip-line);border-radius:10px;font-weight:700;cursor:pointer;background:#fff}
.tbm-ip__choice label::before{content:"";flex:0 0 20px;height:20px;border:2px solid #9aa4ae;border-radius:50%;background:#fff}
.tbm-ip__choice input:checked+label{border-color:var(--ip-ink);box-shadow:0 0 0 1px var(--ip-ink);background:var(--ip-soft)}
.tbm-ip__choice input:checked+label::before{border-color:var(--ip-ink);background:radial-gradient(circle,var(--ip-ink) 0 5px,#fff 6px)}
.tbm-ip__choice input:focus-visible+label{outline:3px solid var(--ip-ink);outline-offset:2px}
.tbm-ip__explain{background:var(--ip-soft);border-radius:10px;padding:12px 14px;margin:0 0 14px;font-size:.95rem}
.tbm-ip__explain ul{margin:0;padding-left:1.1em}
.tbm-ip__explain li+li{margin-top:6px}
.tbm-ip__btn{display:inline-flex;justify-content:center;align-items:center;width:100%;min-height:48px;border:0;border-radius:999px;background:var(--ip-accent);color:var(--ip-ink);font:inherit;font-weight:700;font-size:1.05rem;padding:.75em 1.15em;cursor:pointer;text-decoration:none}
.tbm-ip__btn:hover{filter:brightness(.95)}
.tbm-ip__btn[disabled]{opacity:.6;cursor:wait}
.tbm-ip__btn--small{width:auto;min-height:44px;font-size:1rem}
.tbm-ip__link{background:none;border:0;padding:6px 0;font:inherit;color:var(--ip-ink);text-decoration:underline;cursor:pointer}
.tbm-ip__nav{display:flex;gap:16px;align-items:center}
.tbm-ip__nav .tbm-ip__btn{flex:1}
.tbm-ip__error{color:var(--ip-brand);font-weight:700;margin:12px 0 0}
.tbm-ip__call{margin:12px 0 0}
.tbm-ip__call a,.tbm-ip__thanks a{color:inherit;font-weight:700}
.tbm-ip__vehicle{margin:0 0 12px}
.tbm-ip__vehicle p{margin:0}
.tbm-ip__vname{font-weight:800;font-size:1.15rem}
.tbm-ip__vmeta,.tbm-ip__msg{color:var(--ip-muted)}
.tbm-ip__msg{margin-top:6px!important}
.tbm-ip__ogl{margin-top:6px!important;font-size:.75rem;color:var(--ip-muted)}
.tbm-ip__test{display:inline-block;margin-top:6px!important;font-size:.8rem;font-weight:700;background:var(--ip-soft);border-radius:999px;padding:2px 10px}
.tbm-ip__manual{border-top:1px solid var(--ip-line);padding-top:14px;margin:0 0 14px}
.tbm-ip__row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.tbm-ip__price{background:var(--ip-soft);border-radius:10px;padding:14px;margin:0 0 14px}
.tbm-ip__price p{margin:0}
.tbm-ip__plabel{font-weight:700;color:var(--ip-muted);font-size:.9rem}
.tbm-ip__amount{font-size:2rem;font-weight:800;line-height:1.15;margin:2px 0 6px!important}
.tbm-ip__elec{font-weight:600;margin:0 0 4px!important}
.tbm-ip__kitnote{margin:0 0 12px!important}
.tbm-ip .form-note{font-size:.85rem;color:var(--ip-muted);margin:.5rem 0 0}
.tbm-ip__consent{display:flex;gap:10px;align-items:flex-start;margin:4px 0 14px;font-size:.9rem}
.tbm-ip__consent input{flex:0 0 auto;width:22px;height:22px;margin:1px 0 0;accent-color:var(--ip-ink)}
.tbm-ip__consent a{color:inherit}
.tbm-ip__hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.tbm-ip__turnstile{margin:0 0 12px}
@media (min-width:600px){.tbm-ip__card{padding:24px}.tbm-ip__choices{grid-template-columns:1fr 1fr}}
/* 1.0.2: the form is server-rendered visible so its space is reserved (no CLS). Hide it only when scripting is off; the <noscript> card shows instead. */
@media (scripting:none){.tbm-ip__quote{display:none!important}}
.tbm-ip__prepnote{margin:4px 0 12px!important}
