/* United Legal review V3 — shared additions. Loaded after original.css + landing.css on every page. */
:root{--ease-out:cubic-bezier(.22,1,.36,1);--spring:cubic-bezier(.2,.9,.25,1.15)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- Private-review bar (not part of the live site) ---------- */
.preview-note{background:var(--primary);color:#fff;font:500 12px/1.4 var(--f-text);padding:7px 16px;text-align:center}
.preview-note strong{color:var(--accent);font-weight:600}

/* ---------- Practice menu: seven areas, Lemon Law expands to the two states ---------- */
.ula-header .sub-menu{min-width:330px;max-width:calc(100vw - 40px);padding:6px 0}
.ula-header .sub-menu>li{margin:0}
.ula-header .sub-menu a,.ula-header .sub-menu button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:46px;padding:11px 20px;border:0;background:none;text-align:start;font:600 15px/1.45 var(--f-text);color:var(--primary);cursor:pointer;text-decoration:none;white-space:normal;overflow-wrap:anywhere}
.ula-header .sub-menu a:hover,.ula-header .sub-menu button:hover{background:var(--panel)}
.ula-header .sub-menu a:focus-visible,.ula-header .sub-menu button:focus-visible{outline:3px solid var(--blue);outline-offset:-4px;background:var(--panel)}
.ula-header .sub-menu .chev{width:14px;height:14px;flex:0 0 14px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s var(--ease-out)}
.ula-header .sub-menu li.is-open>button .chev{transform:rotate(90deg)}
.ula-header .sub-menu li.is-open>button{background:var(--panel)}
.ula-header .sub-menu ul{display:none;list-style:none;margin:0;padding:2px 0 8px;background:#F7FAFD;border-bottom:1px solid var(--sky)}
.ula-header .sub-menu li.is-open>ul{display:block}
.ula-header .sub-menu .state-hint{display:block;padding:8px 20px 2px 44px;font:700 11px/1.4 var(--f-text);letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}
.ula-header .sub-menu ul a{padding-inline-start:44px;font-weight:500;min-height:42px}
.ula-header .sub-menu ul a[aria-current=page]{background:var(--panel);font-weight:600}
.ula-header .sub-menu ul a[aria-current=page]::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 2px var(--primary)}
[dir=rtl] .ula-header .sub-menu .state-hint{padding:8px 44px 2px 20px}
[dir=rtl] .ula-header .sub-menu li.is-open>button .chev{transform:rotate(-90deg)}
[dir=rtl] .ula-header .sub-menu .chev{transform:scaleX(-1)}

/* mobile menu: same structure, stacked */
.mobile-nav button.group-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;border:0;background:none;padding:13px 30px 13px 50px;font:500 16px/20px var(--f-text);color:var(--primary);text-align:start;cursor:pointer}
.mobile-nav button.group-toggle .chev{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.mobile-nav li.is-open>button.group-toggle .chev{transform:rotate(90deg)}
.mobile-nav li.is-open>button.group-toggle{background:var(--panel)}
.mobile-nav ul ul ul{display:none;background:#F7FAFD}
.mobile-nav li.is-open>ul{display:block}
.mobile-nav ul ul ul a{padding-left:70px!important;font-weight:500}
.mobile-nav .state-hint{display:block;padding:8px 30px 2px 70px;font:700 11px/1.4 var(--f-text);letter-spacing:.1em;text-transform:uppercase;color:var(--blue)}
.mobile-nav ul ul ul a[aria-current=page]{background:var(--panel);font-weight:600}
@media(max-width:767px){.mobile-nav button.group-toggle{padding:13px 20px 13px 36px}.mobile-nav ul ul ul a{padding-left:52px!important}.mobile-nav .state-hint{padding-left:52px}}
[dir=rtl] .mobile-nav button.group-toggle{padding:13px 50px 13px 30px}
[dir=rtl] .mobile-nav ul ul ul a{padding-left:20px!important;padding-right:70px}
[dir=rtl] .mobile-nav .state-hint{padding:8px 70px 2px 30px}
[dir=rtl] .mobile-nav li.is-open>button.group-toggle .chev{transform:rotate(-90deg)}
[dir=rtl] .mobile-nav .chev{transform:scaleX(-1)}

/* ---------- State pages: small cross-link under the eyebrow (visitor already chose Lemon Law) ---------- */
.state-swap{display:inline-flex;align-items:center;gap:8px;font:500 14px/1.5 var(--f-text);color:#CCE1F6;text-decoration:none;margin-top:-6px;min-height:36px}
.state-swap:hover,.state-swap:focus-visible{color:#fff;text-decoration:underline;text-underline-offset:4px}
.state-swap svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
[dir=rtl] .state-swap svg{transform:scaleX(-1)}

/* ---------- Case Chat launcher: glides above button rows it would otherwise cover ---------- */
.cc-launcher-wrap{transition:transform .28s var(--ease-out)}
@media(prefers-reduced-motion:reduce){.cc-launcher-wrap{transition:none}}
html.comp-static .skip-link{display:none}
/* While lifted over page content the launcher shrinks to its mascot so it covers as little as possible */
.cc-lifted .cc-launcher{padding:4px;min-height:0;gap:0;border-radius:50%}.cc-lifted .cc-launcher .cc-launcher__copy{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ---------- Case Chat launcher on phones: icon only, so it covers as little as possible ---------- */
@media(max-width:600px){.cc-launcher{padding:4px;min-height:0;gap:0;border-radius:50%}.cc-launcher .cc-launcher__copy{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.cc-launcher .cc-mascot{width:50px;height:50px}.cc-launcher .cc-mascot svg{width:40px;height:40px}.cc-launcher--lemon .cc-mascot{width:56px;height:56px}.cc-launcher--lemon .cc-mascot svg{width:58px;height:58px}}

/* ---------- Footer: four columns (disclaimer · practice areas · quick links · contact) ---------- */
.site-footer .footer-cols--4{grid-template-columns:1.5fr .95fr .8fr 1fr;gap:44px}
@media(max-width:1050px){.site-footer .footer-cols--4{grid-template-columns:1fr 1fr 1fr;gap:28px}.site-footer .footer-cols--4 .footer-disclaimer{grid-column:1/-1}}
@media(max-width:600px){.site-footer .footer-cols--4{grid-template-columns:1fr}}

/* ---------- Review hub (index.html) ---------- */
.hub{max-width:1100px;margin:0 auto;padding:60px 30px 80px;color:var(--primary)}
.hub .hub-eyebrow{font:600 13px/1.5 var(--f-text);letter-spacing:.14em;text-transform:uppercase;color:var(--blue);margin:28px 0 8px}
.hub h1{font:600 64px/1.02 var(--f-primary);margin:0 0 18px}.hub h1 span{color:var(--blue)}
.hub .hub-lede{font:400 17px/1.7 var(--f-text);max-width:720px;margin:0 0 36px;color:#2B3650}
.hub-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
.hub-card{border:1px solid var(--sky);border-radius:24px;padding:26px 26px 22px;background:#fff;display:flex;flex-direction:column;gap:10px}
.hub-card>p:first-child{font:700 11px/1.4 var(--f-text);letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin:0}
.hub-card h2{font:600 30px/1.1 var(--f-primary);margin:0}
.hub-card .desc{font:400 14px/1.65 var(--f-text);color:#3B4660;margin:0 0 6px}
.hub-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto}
.hub-links .btn{font-size:16px;padding:11px 20px 12px}
.hub-links .btn--outline{border-color:var(--primary);color:var(--primary)}
.hub-links .btn.is-pending{opacity:.45;pointer-events:none}
.hub-notes{margin-top:40px;padding:24px 28px;border-radius:20px;background:var(--panel);font:400 14px/1.7 var(--f-text);color:#2B3650}
.hub-notes h2{font:600 26px/1.2 var(--f-primary);color:var(--primary);margin:0 0 10px}
.hub-notes p{margin:0 0 10px}
@media(max-width:767px){.hub{padding:36px 20px 60px}.hub h1{font-size:44px}}
