/* XTRACT Ai: problem cards (fly-in) + free Ai audit slide-out. v1 Nov 5 2026 */
.xt-probs{list-style:none;margin:32px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.xt-prob{position:relative;display:flex;gap:14px;align-items:flex-start;padding:18px 20px 18px 22px;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 18px 40px -32px rgba(17,16,24,.45);min-width:0}
.xt-prob::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--fire)}
.xt-prob .xt-ico{flex:none;width:40px;height:40px;margin:0;border-radius:10px;display:grid;place-items:center;background:#FDEEE8;color:var(--red)}
.xt-prob .xt-ico svg{width:20px;height:20px}
.xt-prob__txt{min-width:0}
.xt-prob__k{display:block;font:600 12px/1 var(--cond);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}
.xt-prob h3{margin:0;font:700 21px/1.12 var(--cond);text-transform:uppercase;color:var(--ink);text-wrap:balance}
.xt-prob p{margin:6px 0 0;font-size:15px;line-height:1.45;color:var(--body-ink)}
.xt-probs:not(.xt-probs--home) .xt-prob h3{font:600 17px/1.35 var(--body);text-transform:none}
@media (max-width:980px){.xt-probs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.xt-probs{grid-template-columns:minmax(0,1fr);gap:10px;margin-top:24px}.xt-prob{padding:14px 16px 14px 18px;gap:12px}.xt-prob .xt-ico{width:36px;height:36px}.xt-prob h3{font-size:19px}.xt-prob p{font-size:14.5px}}
html.xt-io .xt-prob{opacity:0;transform:translate3d(-40px,16px,0)}
html.xt-io .xt-prob:nth-child(even){transform:translate3d(40px,16px,0)}
html.xt-io .xt-prob.is-in,html.xt-io-safe .xt-prob{opacity:1;transform:none;transition:opacity .55s ease,transform .75s cubic-bezier(.2,.75,.2,1)}

.xt-noscroll{overflow:hidden}
/* side tab (desktop) */
.xt-adtab{position:fixed;right:0;top:50%;z-index:9000;padding:16px 10px;border:0;border-radius:6px 0 0 6px;background:#C42F22;color:#fff;font:600 14px/1 var(--cond);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;writing-mode:vertical-rl;transform:translateY(-50%) rotate(180deg);box-shadow:0 6px 18px rgba(7,7,11,.18);transition:background .15s,padding .15s}
.xt-adtab:hover{background:#930013;padding-left:14px}
/* bottom bar (mobile) */
.xt-adbar{display:none}
@media (max-width:1080px){
.xt-adtab{display:none}
.xt-adbar{display:block;position:fixed;left:0;right:0;bottom:0;z-index:9000;background:#07070B;border-top:2px solid #E74C3C;padding:0 0 env(safe-area-inset-bottom,0px);transform:translateY(110%);transition:transform .25s ease}
.xt-adbar.is-on{transform:none}
.xt-adbar button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:15px max(18px,env(safe-area-inset-right,0px)) 15px max(18px,env(safe-area-inset-left,0px));border:0;background:none;color:#fff;font:600 16px/1 var(--cond);letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.xt-adbar b{color:#E74C3C;font-size:20px;font-weight:400}
body{padding-bottom:56px}
}
/* panel */
.xt-ad{position:fixed;inset:0 0 0 auto;margin:0;width:min(460px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;padding:0;border:0;background:#fff;color:var(--ink);box-shadow:-16px 0 40px rgba(7,7,11,.25);overflow-y:auto;overscroll-behavior:contain}
.xt-ad[open]{animation:xt-adin .25s ease-out}
.xt-ad::backdrop{background:rgba(7,7,11,.55)}
@keyframes xt-adin{from{transform:translateX(100%)}to{transform:none}}
@keyframes xt-adup{from{transform:translateY(100%)}to{transform:none}}
@media (max-width:640px){.xt-ad{inset:auto 0 0 0;width:100vw;height:auto;max-height:94dvh;border-radius:12px 12px 0 0}.xt-ad[open]{animation-name:xt-adup}}
@media (prefers-reduced-motion:reduce){.xt-ad[open]{animation:none}html.xt-io .xt-prob{opacity:1;transform:none}}
.xt-ad__head{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:18px 20px 16px;background:#0E0D15;border-bottom:2px solid #E74C3C}
.xt-ad__eyebrow{margin:0 0 6px;font:600 12px/1 var(--cond);letter-spacing:.18em;text-transform:uppercase;color:rgba(242,240,244,.6)}
.xt-ad__head h2{margin:0;color:#fff;font:700 25px/1.08 var(--cond);text-transform:uppercase;text-wrap:balance}
.xt-ad__head h2 em{font:inherit;color:inherit}
.xt-ad__x{flex:none;width:34px;height:34px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:none;color:#fff;font-size:22px;line-height:1;cursor:pointer}
.xt-ad__x:hover{border-color:#fff}
.xt-ad__body{padding:16px 20px calc(18px + env(safe-area-inset-bottom,0px))}
.xt-ad__intro{margin:0 0 14px;font-size:15px;line-height:1.45;color:var(--body-ink)}
.xt-ad__form{display:grid;gap:10px}
.xt-ad__form label{display:grid;gap:4px;font:600 13px/1.2 var(--body);color:var(--ink);min-width:0}
.xt-ad__form input[type=text],.xt-ad__form input[type=email],.xt-ad__form input[type=tel],.xt-ad__form select{width:100%;min-width:0;height:44px;padding:0 12px;border:1px solid var(--line);border-radius:4px;font:400 16px/1.2 var(--body);color:var(--ink);background:#fff}
.xt-ad__form select{appearance:none;-webkit-appearance:none;padding-right:30px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%236C6878' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat right 11px center;font-size:15px;text-overflow:ellipsis}
.xt-ad__form input:focus,.xt-ad__form select:focus{outline:none;border-color:#E74C3C;box-shadow:0 0 0 3px rgba(231,76,60,.15)}
.xt-ad__row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.xt-ad__check{grid-template-columns:16px 1fr!important;align-items:start;gap:8px!important;margin-top:2px;font:400 11px/1.4 var(--body)!important;color:var(--muted)!important}
.xt-ad__check input{width:15px;height:15px;margin:1px 0 0;accent-color:#C42F22}
.xt-ad__check a{color:inherit;text-decoration:underline}
.xt-ad__hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.xt-ad__err{margin:0;padding:8px 10px;border-left:3px solid #E74C3C;background:#FDECEC;color:#8A0E13;font-size:13px}
.xt-ad__err[hidden]{display:none}
.xt-ad__submit{width:100%;justify-content:center;text-align:center;margin-top:2px}
.xt-ad__fine{margin:0;font-size:12px;color:var(--muted);text-align:center}
.xt-ad__fine a{color:var(--ink);font-weight:600;white-space:nowrap}
.xt-adbar,.xt-adbar button,.xt-ad,.xt-ad *{box-sizing:border-box}
.xt-probs .xt-prob .xt-ico{background:var(--soft);color:var(--ink)}

/* v3: A2L-style bottom button on mobile */
.xt-hdr__mcta{display:none}
@media (max-width:1080px){
.xt-adbar{transform:none!important;background:rgba(7,7,11,.82);-webkit-backdrop-filter:blur(18px) saturate(160%);backdrop-filter:blur(18px) saturate(160%);border-top:1px solid rgba(255,255,255,.08)!important;padding:10px max(12px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px))!important}
.xt-adbar button{justify-content:center!important;padding:17px 16px!important;border-radius:6px!important;background:#D42A1E!important;font:700 19px/1 var(--cond)!important;letter-spacing:.1em!important}
.xt-adbar b{display:none}
body{padding-bottom:84px}
}
.xt-sec:has(.xt-probs){overflow-x:clip}

.xt-ad__submit{background:#D42A1E!important;background-image:none!important;box-shadow:none!important;border-radius:6px!important}
.xt-ad__submit:hover{background:#B8231A!important}
