/** Public MatterVanta homepage. New classes only (bk-home-*). Kept to selectors used by landing.blade.php. */
html.bk-home-page { scroll-behavior: auto; }
.bk-home { --home-navy:#102c59; --home-blue:#1671e8; --home-muted:#64748b; background:#fff; color:var(--home-navy); }
.bk-home main { overflow-x: clip; overflow-y: visible; }
.bk-home-container { width:min(1120px,calc(100% - 48px)); margin:0 auto; }
.bk-home .al4-topnav { position:fixed; z-index:300; }
.bk-home .al4-nav-link { font-size:12px; }
.bk-home section[id] { scroll-margin-top:90px; }

.bk-home-hero { padding:122px 0 64px; background:radial-gradient(circle at 82% 20%,rgba(95,180,255,.18),transparent 30%),linear-gradient(135deg,#f8fcff,#eef8ff 58%,#f9fdff); }
.bk-home-hero__grid { display:grid; grid-template-columns:.88fr 1.12fr; align-items:center; gap:58px; }
.bk-home-eyebrow,.bk-home-section-head>p { margin:0 0 10px; color:var(--home-blue); text-transform:uppercase; letter-spacing:.11em; font-size:11px; font-weight:800; }
.bk-home-hero h1 { margin:0; color:var(--home-navy); font-size:clamp(37px,4.2vw,57px); line-height:1.07; letter-spacing:-.045em; }
.bk-home-hero h1 span,.bk-home-collaboration h2 span { color:var(--home-blue); }
.bk-home-lead { max-width:600px; margin:22px 0 26px; color:#52647e; font-size:15px; line-height:1.72; }
.bk-home-cta-row { display:flex; flex-wrap:wrap; gap:12px; }
.bk-home-btn { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:11px 22px; border-radius:8px; font-size:13px; font-weight:800; transition:.2s ease; }
.bk-home-btn:hover { transform:translateY(-2px); box-shadow:0 8px 22px rgba(20,75,145,.13); }
.bk-home-btn--primary { color:#fff!important; background:var(--home-blue); }
.bk-home-btn--secondary { color:var(--home-navy)!important; border:1px solid #a9c7e9; background:#fff; }
.bk-home-trust { display:flex; flex-wrap:wrap; gap:10px 20px; margin:23px 0 0; padding:0; list-style:none; color:#50627a; font-size:9px; font-weight:700; }
.bk-home-trust li::before { content:"✓"; display:inline-grid; place-items:center; width:16px; height:16px; margin-right:6px; color:var(--home-blue); background:#fff; border:1px solid #cfe1f4; border-radius:50%; }

.bk-home-product { position:relative; padding:0; border-radius:28px; filter:drop-shadow(0 28px 44px rgba(27,83,148,.18)); }
.bk-home-product>img,
.bk-home-product>picture,
.bk-home-product>picture>img,
.bk-home-media-frame img,
.bk-home-media-frame>picture,
.bk-home-media-frame>picture>img,
.bk-home-ai__visual>img,
.bk-home-ai__visual>picture,
.bk-home-ai__visual>picture>img {
    display:block;
    width:100%;
    height:auto;
    border-radius:20px;
}
.bk-home-product__status {
    position:absolute;
    right:4%;
    bottom:3%;
    display:flex;
    align-items:center;
    gap:10px;
    padding:13px 16px;
    background:rgba(255,255,255,.95);
    border:1px solid #d8e7f5;
    border-radius:12px;
    box-shadow:0 16px 34px rgba(20,76,140,.18);
}
.bk-home-product__status i {
    display:grid;
    place-items:center;
    width:30px;
    height:30px;
    color:#fff;
    background:#18a76b;
    border-radius:50%;
    font-style:normal;
}
.bk-home-product__status strong,.bk-home-product__status small { display:block; }
.bk-home-product__status strong { font-size:10px; }
.bk-home-product__status small { margin-top:2px; color:#71839a; font-size:7px; }

.bk-home-section { padding:58px 0; }
.bk-home-section-head { max-width:670px; margin:0 auto 30px; text-align:center; }
.bk-home-section-head h2,.bk-home-mobile h2,.bk-home-final h2 { margin:0; color:var(--home-navy); font-size:clamp(25px,3vw,34px); letter-spacing:-.03em; }
.bk-home-section-head>span { display:block; margin-top:8px; color:var(--home-muted); font-size:13px; }

.bk-home-collaboration { padding:66px 0; background:linear-gradient(120deg,#f7fcff,#e8f6ff); }
.bk-home-collaboration__grid { display:grid; grid-template-columns:.78fr 1.22fr; align-items:center; gap:55px; }
.bk-home-collaboration h2,.bk-home-ai h2,.bk-home-contact h2 { margin:0; font-size:clamp(30px,3.6vw,43px); line-height:1.08; letter-spacing:-.04em; }
.bk-home-collaboration__grid>div:first-child>p:not(.bk-home-eyebrow),
.bk-home-ai__intro>p:not(.bk-home-eyebrow),
.bk-home-contact__copy>p { color:var(--home-muted); font-size:13px; line-height:1.7; }
.bk-home-media-frame,.bk-home-ai__visual {
    position:relative;
    filter:drop-shadow(0 20px 35px rgba(27,83,148,.13));
}

.bk-home-ai { padding:65px 0; background:#fff; }
.bk-home-ai>.bk-home-container {
    display:grid;
    grid-template-columns:.38fr .62fr;
    align-items:center;
    gap:42px;
    padding:42px;
    background:linear-gradient(120deg,#f7fcff,#eef8ff);
    border:1px solid #dcebf7;
    border-radius:14px;
}
.bk-home-ai__intro ul { margin:18px 0 0; padding:0; list-style:none; color:#49708e; font-size:9px; line-height:2; }
.bk-home-ai__intro li::before { content:"✓"; margin-right:7px; color:var(--home-blue); font-weight:800; }
.bk-home-ai__visual>img,
.bk-home-ai__visual>picture>img { border:1px solid #deebf6; }

.bk-home-mobile { padding:62px 0; background:linear-gradient(110deg,#edf8ff,#f8fcff); }
.bk-home-mobile__copy>p:not(.bk-home-eyebrow) { color:var(--home-muted); font-size:13px; line-height:1.65; }
.bk-home-device-list { display:flex; flex-wrap:wrap; gap:8px; margin:17px 0 2px; }
.bk-home-device-list span { padding:7px 11px; color:#1768c7; background:#e5f3ff; border:1px solid #c4e0f8; border-radius:999px; font-size:12px; font-weight:800; }
.bk-home-store-row { display:flex; gap:10px; margin-top:20px; }
.bk-home-store-row img { width:115px; height:36px; }

.bk-home-workflow { background:#fff; }

.bk-home-export { padding:72px 0; background:#fff; }
.bk-home-export .bk-home-section-head { max-width:820px; }
.bk-home-export .bk-home-section-head>span { line-height:1.65; }
.bk-home-export__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.bk-home-export__grid article {
    position:relative;
    padding:30px;
    overflow:hidden;
    background:linear-gradient(150deg,#f5fbff,#fff);
    border:1px solid #d4e6f6;
    border-radius:14px;
    box-shadow:0 14px 34px rgba(24,80,143,.08);
    transition:transform .22s ease,box-shadow .22s ease;
}
.bk-home-export__grid article:hover { transform:translateY(-6px); box-shadow:0 22px 45px rgba(24,80,143,.14); }
.bk-home-export__icon { display:grid; place-items:center; width:52px; height:52px; margin-bottom:20px; color:#fff; background:linear-gradient(135deg,#126fe2,#2cb9ef); border-radius:12px; font-size:13px; font-weight:900; }
.bk-home-export__grid h3 { margin:0 0 10px; color:var(--home-navy); font-size:19px; }
.bk-home-export__grid p { margin:0; color:var(--home-muted); font-size:15px; line-height:1.65; }

.bk-home-pricing { padding:58px 0 68px; background:linear-gradient(180deg,#f3f9ff,#fff); }
.bk-home-pricing #pricing_sec { scroll-margin-top:90px; }
.bk-home-pricing .ap4-plans { padding:0; }
.bk-home-pricing .bk-plan-section>.container { max-width:1120px; }
.bk-home-pricing .ap4-plan { min-height:100%; }
.bk-home-pricing .ap4-plan-col { display:flex; }
.bk-home-pricing .ap4-plan-col>.ap4-plan { width:100%; }

.bk-home-final { padding:48px 0; color:#fff; background:linear-gradient(90deg,#125fcc,#2184ef); }
.bk-home-final .bk-home-container {
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:25px;
    text-align:center;
}
.bk-home-final h2 {
    width:100%;
    max-width:820px;
    color:#fff;
    font-size:22px;
    line-height:1.25;
}
.bk-home-final .bk-home-container>div { display:flex; justify-content:center; flex-wrap:wrap; gap:12px; }
.bk-home-final a {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:210px;
    min-height:46px;
    padding:12px 24px;
    color:#1260c9!important;
    background:#fff;
    border-radius:6px;
    font-size:13px;
    font-weight:800;
}
.bk-home-final a:last-child { color:#fff!important; background:transparent; border:1px solid rgba(255,255,255,.65); }

.bk-home-contact { padding:74px 0; background:#f4f9fe; }
.bk-home-contact__grid { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); align-items:start; gap:70px; }
.bk-home-contact__copy ul { margin:25px 0 0; padding:0; list-style:none; }
.bk-home-contact__copy li { display:flex; flex-direction:column; margin:14px 0; font-size:12px; }
.bk-home-contact__copy li b { margin-bottom:3px; color:var(--home-navy); }
.bk-home-contact__copy li a,.bk-home-contact__copy li span { color:var(--home-blue); }
.bk-home-contact__form { position:relative; min-width:0; max-width:100%; padding:30px; background:#fff; border:1px solid #dce8f4; border-radius:12px; box-shadow:0 16px 38px rgba(24,74,130,.08); }
.bk-home-contact__row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:16px; }
.bk-home-contact__form label { display:block; margin-bottom:16px; color:#263c5d; font-size:11px; font-weight:800; }
.bk-home-contact__form label small { color:#8190a3; font-weight:500; }
.bk-home-contact__form input,.bk-home-contact__form textarea { display:block; width:100%; margin-top:7px; padding:11px 12px; color:#203653; background:#fbfdff; border:1px solid #cedceb; border-radius:7px; font:inherit; font-weight:500; outline:none; }
.bk-home-contact__form input:focus,.bk-home-contact__form textarea:focus { border-color:var(--home-blue); box-shadow:0 0 0 3px rgba(22,113,232,.11); }
.bk-home-contact__form label>span,.bk-home-contact__captcha>span { display:block; margin-top:5px; color:#c83d3d; font-size:9px; font-weight:600; }
.bk-home-contact__captcha { margin:2px 0 16px; max-width:100%; overflow:hidden; }
.bk-home-contact__captcha .g-recaptcha {
    display:inline-block;
    max-width:100%;
    transform-origin:left center;
}
.bk-home-contact__captcha iframe {
    max-width:100%;
}
.bk-home-contact__form>button { min-width:145px; padding:12px 20px; color:#fff; background:var(--home-blue); border:0; border-radius:7px; font-size:12px; font-weight:800; cursor:pointer; }
.bk-home-contact__note { margin:12px 0 0; color:#8391a3; font-size:8px; }
.bk-home-contact-alert { margin-bottom:18px; padding:11px 13px; border-radius:7px; font-size:11px; }
.bk-home-contact-alert.is-success { color:#166b4a; background:#e9f8f0; }
.bk-home-contact-alert.is-error { color:#9e3434; background:#fdeeee; }
.bk-home-honeypot {
    position:absolute!important;
    left:0!important;
    top:0!important;
    width:1px!important;
    height:1px!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    clip:rect(0,0,0,0)!important;
    clip-path:inset(50%)!important;
    border:0!important;
    white-space:nowrap!important;
}

.bk-home-footer {
    position:relative;
    overflow:hidden;
    padding:64px 0 24px!important;
    color:#c8d4e7!important;
    text-align:left!important;
    background:
        radial-gradient(circle at 94% 14%,rgba(28,108,231,.22),transparent 34%),
        linear-gradient(135deg,#071426 0%,#08182d 56%,#061120 100%)!important;
    border-top:1px solid rgba(80,142,231,.28);
}
.bk-home-footer::after {
    position:absolute;
    top:-90px;
    right:-70px;
    width:440px;
    height:440px;
    content:"";
    opacity:.22;
    background-image:linear-gradient(rgba(68,132,224,.2) 1px,transparent 1px),linear-gradient(90deg,rgba(68,132,224,.2) 1px,transparent 1px);
    background-size:34px 34px;
    transform:rotate(18deg);
    pointer-events:none;
}
.bk-home-footer .bk-home-container { position:relative; z-index:1; }
.bk-home-footer__grid { display:grid; grid-template-columns:1.55fr repeat(4,1fr); gap:42px; }
.bk-home-footer__brand { max-width:330px; }
.bk-home-footer__logo { display:inline-flex; width:min(240px,100%); margin-bottom:14px; }
.bk-home-footer__logo img { display:block; width:100%; height:auto; object-fit:contain; object-position:left center; }
.bk-home-footer__brand h2 { margin:0 0 15px; color:#f7fbff; font-size:17px; font-weight:700; letter-spacing:-.01em; }
.bk-home-footer__brand p { margin:0; color:#b4c4db; font-size:13px; line-height:1.7; }
.bk-home-footer__links { display:flex; flex-direction:column; align-items:flex-start; gap:10px; }
.bk-home-footer__links h3 {
    position:relative;
    width:100%;
    margin:7px 0 12px;
    padding-bottom:11px;
    color:#f8fbff;
    font-size:12px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase;
    border-bottom:1px solid rgba(142,174,216,.2);
}
.bk-home-footer__links h3::after { position:absolute; bottom:-1px; left:0; width:32px; height:2px; content:""; background:#4d9fff; }
.bk-home-footer__links a,.bk-home-footer__links>span { color:#b7c7dc!important; font-size:12px; line-height:1.45; text-decoration:none!important; transition:color .2s ease,transform .2s ease; }
.bk-home-footer__links a:hover { color:#fff!important; transform:translateX(3px); }
.bk-home-footer__support a,.bk-home-footer__support>span { display:flex; align-items:flex-start; gap:7px; }
.bk-home-footer__support a span,.bk-home-footer__support>span span { color:#58a6ff; font-size:14px; }
.bk-home-footer__trust {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:center;
    gap:10px 12px;
    margin-top:36px;
    padding:12px 14px;
    border:1px solid rgba(90,150,230,.22);
    border-radius:12px;
    background:linear-gradient(180deg,rgba(22,58,110,.35),rgba(10,28,52,.45));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.bk-home-footer__trust-item {
    display:inline-flex;
    align-items:center;
    gap:8px;
    min-height:34px;
    padding:6px 12px 6px 8px;
    border:1px solid rgba(120,168,230,.16);
    border-radius:999px;
    background:rgba(7,22,42,.55);
    color:#c5d4e8;
    font-size:12px;
    line-height:1.3;
    white-space:nowrap;
}
.bk-home-footer__trust-text strong {
    color:#f4f8ff;
    font-weight:700;
}
.bk-home-footer__trust-icon {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    width:26px;
    height:26px;
    border-radius:8px;
}
.bk-home-footer__trust-icon svg {
    display:block;
    width:14px;
    height:14px;
}
.bk-home-footer__trust-icon--ssl {
    color:#3dd6a0;
    background:rgba(15,159,110,.16);
    border:1px solid rgba(61,214,160,.28);
}
.bk-home-footer__trust-icon--aws {
    color:#7eb6ff;
    background:rgba(77,159,255,.14);
    border:1px solid rgba(126,182,255,.28);
}
.bk-home-footer__trust-icon--legal {
    color:#9ec5ff;
    background:rgba(13,87,194,.22);
    border:1px solid rgba(158,197,255,.26);
}
.bk-home-footer__bottom {
    display:flex;
    justify-content:space-between;
    gap:24px;
    margin-top:22px;
    padding-top:20px;
    color:#91a5c0;
    font-size:11px;
    border-top:1px solid rgba(142,174,216,.22);
}

/* Readable marketing typography — kept for legacy; product-v2 overrides these. */
.bk-home:not(.bk-home--product-v2) .al4-nav-link { font-size:14px; }
.bk-home:not(.bk-home--product-v2) .bk-home-eyebrow,
.bk-home:not(.bk-home--product-v2) .bk-home-section-head>p { font-size:13px; }
.bk-home:not(.bk-home--product-v2) .bk-home-lead { font-size:18px; }
.bk-home:not(.bk-home--product-v2) .bk-home-btn { min-height:50px; padding:13px 25px; font-size:15px; }
.bk-home:not(.bk-home--product-v2) .bk-home-trust { font-size:12px; }
.bk-home:not(.bk-home--product-v2) .bk-home-section-head h2,
.bk-home:not(.bk-home--product-v2) .bk-home-mobile h2,
.bk-home:not(.bk-home--product-v2) .bk-home-final h2 { font-size:clamp(32px,3.4vw,44px); }
.bk-home:not(.bk-home--product-v2) .bk-home-section-head>span { font-size:16px; }
.bk-home:not(.bk-home--product-v2) .bk-home-collaboration__grid>div:first-child>p:not(.bk-home-eyebrow),
.bk-home:not(.bk-home--product-v2) .bk-home-ai__intro>p:not(.bk-home-eyebrow),
.bk-home:not(.bk-home--product-v2) .bk-home-contact__copy>p { font-size:16px; }
.bk-home:not(.bk-home--product-v2) .bk-home-ai__intro ul { font-size:13px; line-height:1.75; }
.bk-home:not(.bk-home--product-v2) .bk-home-mobile__copy>p:not(.bk-home-eyebrow) { font-size:16px; }
.bk-home:not(.bk-home--product-v2) .bk-home-contact__copy li { font-size:15px; }
.bk-home:not(.bk-home--product-v2) .bk-home-contact__form label { font-size:14px; }
.bk-home:not(.bk-home--product-v2) .bk-home-contact__form input,
.bk-home:not(.bk-home--product-v2) .bk-home-contact__form textarea { font-size:15px; }
.bk-home:not(.bk-home--product-v2) .bk-home-contact__form label>span,
.bk-home:not(.bk-home--product-v2) .bk-home-contact__captcha>span { font-size:12px; }
.bk-home:not(.bk-home--product-v2) .bk-home-contact__form>button { padding:14px 23px; font-size:15px; }
.bk-home:not(.bk-home--product-v2) .bk-home-contact__note { font-size:11px; }

.bk-home-reveal {
    opacity:1;
    transform:none;
}
html.bk-home-reveal-on .bk-home-reveal:not(.is-visible) {
    opacity:0;
    transform:translateY(14px);
    transition:opacity .36s ease,transform .44s cubic-bezier(.2,.7,.2,1);
    transition-delay:var(--mv-reveal-delay, 0ms);
}
html.bk-home-reveal-on .bk-home-reveal.is-visible { opacity:1; transform:translateY(0); }
.bk-home .bk-auth-nav-link--current:not(.al4-nav-link--signup) { color:var(--home-blue); }

/* Centered, themed pricing cards */
body.attorney-pricing-v4 .bk-home-pricing .ap4-plans {
    width:100%;
    max-width:1180px;
    margin:0 auto;
    padding:0 24px;
}
body.attorney-pricing-v4 .bk-home-pricing .ap4-plans .container {
    width:100%;
    max-width:1120px;
    margin-right:auto;
    margin-left:auto;
    padding-right:0;
    padding-left:0;
}
body.attorney-pricing-v4 .bk-home-pricing .ap4-plans .bk-pricelists {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,350px));
    justify-content:center;
    align-items:stretch;
    gap:24px;
    width:100%;
    margin-right:auto!important;
    margin-left:auto!important;
}
body.attorney-pricing-v4 .bk-home-pricing .ap4-plan-col {
    width:100%!important;
    max-width:350px!important;
}
body.attorney-pricing-v4 .bk-home-pricing .ap4-plan {
    overflow:hidden;
    border:1px solid #cfe2f5!important;
    border-top:5px solid #2495ee!important;
    background:linear-gradient(180deg,#f7fcff 0,#fff 28%)!important;
    box-shadow:0 16px 38px rgba(24,91,162,.1)!important;
}
body.attorney-pricing-v4 .bk-home-pricing .ap4-plan-col:nth-child(2) .ap4-plan {
    border-top-color:#136fe1!important;
    background:linear-gradient(180deg,#eaf5ff 0,#fff 31%)!important;
    box-shadow:0 22px 48px rgba(22,105,210,.18)!important;
}
body.attorney-pricing-v4 .bk-home-pricing .ap4-plan-col:nth-child(3) .ap4-plan {
    border-top-color:#32b7df!important;
    background:linear-gradient(180deg,#effcff 0,#fff 28%)!important;
}
body.attorney-pricing-v4 .bk-home-pricing .ap4-plan .bk-pc-cta-btn {
    color:#fff!important;
    background:linear-gradient(90deg,#146fe2,#27a9ef)!important;
    border-color:transparent!important;
}

@media(prefers-reduced-motion:reduce) {
    html { scroll-behavior:auto; }
    .bk-home * { transition-duration:.01ms!important; animation-duration:.01ms!important; }
}

@media(max-width:980px){
 .bk-home-hero__grid,.bk-home-collaboration__grid,.bk-home-contact__grid { grid-template-columns:minmax(0,1fr); }
 .bk-home-contact__copy,.bk-home-contact__form { min-width:0; max-width:100%; }
 .bk-home-contact__row { grid-template-columns:minmax(0,1fr); }
 .bk-home-contact { overflow-x:clip; }
 .bk-home-contact__form { overflow-x:clip; }
 .bk-home-footer__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .bk-home-footer__brand { grid-column:1/-1; max-width:560px; }
 .bk-home-export__grid { grid-template-columns:1fr; }
 .bk-home-product { width:min(680px,100%); }
 .bk-home-ai>.bk-home-container { grid-template-columns:1fr; }
 body.attorney-pricing-v4 .bk-home-pricing .ap4-plans .bk-pricelists { grid-template-columns:repeat(2,minmax(0,420px)); }
 body.attorney-pricing-v4 .bk-home-pricing .ap4-plan-col { max-width:420px!important; }
}
@media(max-width:640px){
 .bk-home-container { width:min(100% - 30px,1120px); }
 .bk-home-footer { padding-top:46px!important; }
 .bk-home-footer__grid { grid-template-columns:1fr; gap:26px; }
 .bk-home-footer__brand { grid-column:auto; }
 .bk-home-footer__trust { margin-top:28px; padding:10px; gap:8px; justify-content:flex-start; }
 .bk-home-footer__trust-item { white-space:normal; max-width:100%; }
 .bk-home-footer__bottom { align-items:flex-start; flex-direction:column; margin-top:18px; }
 .bk-home-hero { padding-top:105px; }
 .bk-home-hero h1 { font-size:34px; }
 .bk-home-product { padding-right:0; }
 .bk-home-contact__row { grid-template-columns:1fr; }
 .bk-home-contact__form { padding:18px; }
 /* reCAPTCHA v2 is a fixed ~304px widget; scale it down on narrow phones. */
 .bk-home-contact__captcha .g-recaptcha {
    transform:scale(.92);
 }
 .bk-home-final .bk-home-container { align-items:center; flex-direction:column; }
 .bk-home-final a { width:min(100%,280px); }
 body.attorney-pricing-v4 .bk-home-pricing .ap4-plans { padding:0 15px; }
 body.attorney-pricing-v4 .bk-home-pricing .ap4-plans .bk-pricelists { grid-template-columns:minmax(0,420px); }
 body.attorney-pricing-v4 .bk-home-pricing .ap4-plan-col { max-width:420px!important; }
}
@media(max-width:380px){
 .bk-home-contact__form { padding:14px; }
 .bk-home-contact__captcha .g-recaptcha {
    transform:scale(.82);
 }
}
