/* Scoped tax-refund screening: independent of provisional logo or theme fonts. */
.ttq { --ttq-navy:#13233f; --ttq-blue:#1c3856; --ttq-silver:#a4b1bf; --ttq-ice:#edf2f7; font-family:inherit; color:var(--ttq-navy); background:#fff; border:1px solid #cbd5df; border-radius:18px; padding:clamp(20px,2.4vw,34px); width:100%; max-width:560px; margin:0 auto; box-shadow:0 15px 38px rgba(10,27,49,.12); box-sizing:border-box; text-align:right; }
.ttq *, .ttq *::before, .ttq *::after { box-sizing:border-box; }
.ttq [hidden] { display:none!important; }
.ttq-intro h2 { font-size:clamp(23px,2.2vw,30px); color:var(--ttq-navy); line-height:1.3; margin:5px 0 8px; font-weight:750; }
.ttq-intro p { color:#56687b; font-size:14px; line-height:1.55; margin:0 0 13px; }
.ttq-intro .ttq-eyebrow { color:#5a6d81; font-size:12px; font-weight:700; letter-spacing:.025em; margin:0; }
.ttq-progress { height:5px; background:#e4eaf0; overflow:hidden; border-radius:9px; }
.ttq-progress-bar { display:block; height:100%; width:16.67%; background:linear-gradient(90deg,#71839a,#b3beca); transition:width .25s ease; }
.ttq-progress-label { color:#566879; font-size:12px; margin:10px 0 14px; }
.ttq fieldset { border:0; padding:0; margin:0; min-width:0; }
.ttq legend { color:var(--ttq-navy); font-weight:740; font-size:clamp(19px,1.9vw,23px); line-height:1.3; margin:0 0 16px; }
.ttq .ttq-choice { display:flex; gap:12px; align-items:center; margin:0 0 9px; border:1px solid #d6dfe8; border-radius:10px; padding:13px 14px; color:#243c54; font-size:15px; line-height:1.45; background:#fbfcfd; cursor:pointer; transition:all .15s; }
.ttq .ttq-choice:hover, .ttq .ttq-choice:focus-within { border-color:#7a91a8; background:#edf2f7; }
.ttq .ttq-choice:has(input:checked) { background:#edf2f7; border-color:#47647f; box-shadow:0 0 0 1px #47647f inset; }
.ttq .ttq-choice input { width:19px; height:19px; margin:0; flex-shrink:0; accent-color:#223b5a; }
.ttq .ttq-hint { font-size:13px; color:#657789; line-height:1.55; margin:12px 0; }
.ttq-actions { margin-top:19px; display:flex; gap:12px; align-items:center; }
.ttq-actions button { font-family:inherit; font-size:16px; font-weight:720; border-radius:10px; padding:14px 19px; cursor:pointer; min-height:48px; line-height:1.3; }
.ttq-actions .ttq-next, .ttq-actions .ttq-submit { color:#fff; background:var(--ttq-navy); border:1px solid var(--ttq-navy); flex:1; }
.ttq-actions .ttq-next:hover, .ttq-actions .ttq-submit:hover { background:#294566; }
.ttq-actions .ttq-back { background:#fff; color:#40536b; border:1px solid #cbd5df; }
.ttq-actions button:focus-visible, .ttq input:focus-visible { outline:3px solid #7c9bbb; outline-offset:2px; }
.ttq-actions button[disabled] { opacity:.6; cursor:wait; }
.ttq-assessment { background:var(--ttq-ice); border-right:4px solid #8a9fb2; border-radius:8px; padding:14px; margin:0 0 20px; }
.ttq-assessment-title { font-size:18px; line-height:1.5; display:block; }
.ttq-assessment-copy { font-size:14px; line-height:1.55; margin:6px 0 0; }
.ttq-contact h3 { font-size:21px; line-height:1.3; color:var(--ttq-navy); margin:10px 0 4px; }
.ttq .ttq-field { display:block; font-size:14px; font-weight:600; margin:0 0 12px; color:#233b54; }
.ttq .ttq-field input { display:block; width:100%; height:46px; margin-top:6px; border:1px solid #bdcad8; border-radius:8px; padding:9px 11px; font-size:16px; background:#fff; color:#152c42; font-family:inherit; }
.ttq-consent { display:flex; gap:9px; align-items:flex-start; color:#3d5065; font-size:13px; line-height:1.65; margin:14px 0 12px; }
.ttq-consent input { width:18px; height:18px; flex-shrink:0; margin-top:3px; accent-color:#223b5a; }
.ttq-consent a { color:#315d83; text-decoration:underline; }
.ttq-disclaimer { font-size:12px; line-height:1.6; color:#647588; }
.ttq .ttq-honey { position:absolute!important; left:-9999px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.ttq-error { color:#a3162b; font-size:14px; line-height:1.45; margin:12px 0; }
.ttq-success { padding:36px 9px; text-align:center; }
.ttq-success h3 { font-size:23px; color:var(--ttq-navy); margin:10px 0; }
.ttq-success p { color:#56687b; font-size:16px; line-height:1.65; }
.ttq-check { font-size:34px; color:#466c58; }
@media(max-width:781px){ .tsur-tax-hero .wp-block-columns{display:flex!important;flex-direction:column-reverse!important;} .ttq {max-width:none;padding:20px 17px;border-radius:14px;} .ttq-intro h2{font-size:24px;} .ttq .ttq-choice{padding:12px 11px;} .ttq-actions button{font-size:15px;} }
@media(prefers-reduced-motion:reduce){.ttq *{transition:none!important;}}

/* Compact multi-select cards and responsive grid for tax-year selections. */
.ttq-choice-year { display:inline-flex!important; width:calc(33.333% - 7px); margin-inline-end:5px!important; justify-content:center; padding:10px 8px!important; }
.ttq-choice-year span { font-weight:700; font-variant-numeric:tabular-nums; }
.ttq .ttq-choice-year:has(input:checked) { background:#dde7f1; }
@media(max-width:460px){.ttq-choice-year{width:calc(50% - 7px);}}
