@font-face { font-family: Manrope; font-style: normal; font-weight: 400 800; font-display: swap; src: url("/assets/fonts/manrope-var.woff2") format("woff2"); }
@font-face { font-family: Sora; font-style: normal; font-weight: 600 800; font-display: swap; src: url("/assets/fonts/sora-var.woff2") format("woff2"); }

:root {
    color-scheme: light;
    --ink: #142033;
    --navy: var(--ink);
    --ink-2: #102342;
    --blue: #1768e5;
    --blue-2: #1258c7;
    --ice: #eef5ff;
    --canvas: #f4f6f9;
    --surface: #ffffff;
    --soft: #f6f9fe;
    --line: #dce5f1;
    --muted: #3d5068;
    --green: #17a673;
    --green-soft: #e9f8f1;
    --purple: #8058e8;
    --purple-soft: #f1ecff;
    --amber: #f5a524;
    --amber-soft: #fff6df;
    --orange: #f2763d;
    --red: #e9505b;
    --shadow: 0 18px 55px rgb(20 32 51 / 10%);
    --shadow-soft: 0 10px 30px rgb(20 32 51 / 7%);
    --radius: 20px;
    --shell: min(1180px, calc(100% - 40px));
}

/* Merchant Feed Validator */
.merchant-demo-section { background: linear-gradient(180deg,#f4f8ff 0%,#fff 100%); }
.merchant-workbench { display:grid;grid-template-columns:minmax(250px,.36fr) minmax(0,1fr);gap:20px;align-items:start; }
.merchant-config,.merchant-results { background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-soft);padding:24px; }
.merchant-config { display:grid;gap:18px;position:sticky;top:90px; }
.merchant-config label,.merchant-config fieldset { display:grid;gap:8px;font-weight:700; }
.merchant-config select,.merchant-config input,.merchant-toolbar select,.merchant-toolbar input { width:100%;min-height:46px;border:1px solid #cdd8e9;border-radius:10px;background:#fff;padding:10px 12px;font:inherit;color:var(--ink); }
.merchant-config fieldset { border:1px solid var(--line);border-radius:12px;padding:14px; }
.merchant-config fieldset label { display:flex;align-items:center;font-weight:500; }
.merchant-config fieldset input { width:20px;min-height:20px; }
.merchant-summary { display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px; }
.merchant-summary article { background:#f5f8fd;border-radius:12px;padding:15px;display:grid;gap:3px; }
.merchant-summary b { font-size:1.65rem;color:var(--navy); }.merchant-summary span { color:var(--muted);font-size:.84rem; }
.merchant-toolbar { display:grid;grid-template-columns:180px 1fr;gap:12px;margin-bottom:16px; }.merchant-toolbar label { display:grid;gap:6px;font-weight:700;font-size:.84rem; }
.issue-list { display:grid;gap:10px; }.issue-row { display:grid;grid-template-columns:74px minmax(0,1fr) auto;gap:14px;align-items:start;border:1px solid var(--line);border-left:4px solid #e5a31b;border-radius:12px;padding:15px; }
.issue-row.error { border-left-color:#db4b53; }.issue-row p { margin:5px 0;color:var(--muted); }.issue-row small { display:block;overflow-wrap:anywhere;color:#4f6078; }.issue-row s { color:#9a3d45; }
.issue-severity,.safe-fix { text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:800; }.issue-row.error .issue-severity { color:#b32636; }.issue-row.warning .issue-severity { color:#9b6500; }.safe-fix { color:#08765e;background:#e8f8f2;padding:5px 8px;border-radius:999px;white-space:nowrap; }
.merchant-empty { text-align:center;color:var(--muted);padding:30px; }.output-file-grid { display:grid;grid-template-columns:repeat(5,1fr);gap:12px; }.output-file-grid article { display:grid;gap:8px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px; }.output-file-grid b { color:var(--navy); }.output-file-grid span { color:var(--muted);font-size:.9rem; }
@media(max-width:800px){.merchant-workbench{grid-template-columns:1fr}.merchant-config{position:static}.merchant-summary{grid-template-columns:repeat(2,1fr)}.merchant-toolbar{grid-template-columns:1fr}.output-file-grid{grid-template-columns:1fr 1fr}.issue-row{grid-template-columns:66px minmax(0,1fr)}.issue-row>.safe-fix{grid-column:2;justify-self:start}}
@media(max-width:420px){.merchant-config,.merchant-results{padding:17px}.output-file-grid{grid-template-columns:1fr}.merchant-summary{gap:7px}.merchant-summary article{padding:12px}}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    color: var(--ink);
    background: var(--surface);
    font-family: Manrope, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 16px;
    line-height: 1.55;
    text-rendering: optimizeLegibility;
}

h1, h2, h3, .brand, .plan-price {
    font-family: Sora, Manrope, ui-sans-serif, system-ui, sans-serif;
    font-weight: 700;
}

button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; }
svg { display: block; }

.sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.skip-link {
    position: fixed;
    z-index: 1000;
    left: 16px;
    top: 12px;
    padding: 10px 14px;
    color: #fff;
    background: var(--ink);
    border-radius: 8px;
    transform: translateY(-150%);
}
.skip-link:focus { transform: translateY(0); }

:focus-visible { outline: 3px solid #71a4ff; outline-offset: 3px; }

.shell { width: var(--shell); margin-inline: auto; }

.offer-bar {
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 8px 20px;
    color: #3d2500;
    background: linear-gradient(90deg, #ffc94f, #ffb12f 60%, #ffc94f);
    font-size: .86rem;
    text-align: center;
}
.offer-bar svg { width: 17px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.offer-bar a { margin-left: 4px; font-weight: 800; text-underline-offset: 3px; }

.site-header {
    position: sticky;
    z-index: 100;
    top: 0;
    color: #fff;
    background: rgb(20 32 51 / 94%);
    backdrop-filter: blur(14px);
    transition: box-shadow .2s ease, background .2s ease;
}
.site-header.scrolled { box-shadow: 0 10px 30px rgb(0 0 0 / 18%); background: rgb(20 32 51 / 98%); }
.header-shell {
    width: var(--shell);
    min-height: 74px;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 36px;
    margin-inline: auto;
}
.brand {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: inherit;
    font-size: 1.25rem;
    font-weight: 850;
    letter-spacing: -.03em;
    text-decoration: none;
}
.brand-mark {
    width: 34px;
    height: 34px;
    display: inline-grid;
    place-items: center;
    color: #fff;
    background: var(--blue);
    border-radius: 10px;
    box-shadow: 0 8px 24px rgb(23 104 229 / 35%);
    font-size: 1.05rem;
    font-weight: 900;
}
.primary-nav { display: flex; justify-content: center; gap: clamp(18px, 2.4vw, 34px); }
.primary-nav a,
.header-actions a,
.login-preview {
    color: #dce7f8;
    font-size: .9rem;
    font-weight: 650;
    text-decoration: none;
}
.primary-nav a { position: relative; padding-block: 10px; }
.primary-nav a::after {
    content: "";
    position: absolute;
    left: 0;
    right: 100%;
    bottom: 4px;
    height: 2px;
    background: #6fa2ff;
    transition: right .2s ease;
}
.primary-nav a:hover::after { right: 0; }
.primary-nav a[aria-current] { color: #fff; }
.primary-nav a[aria-current]::after { right: 0; }
.mobile-nav-cta { display: none; }
.header-actions { display: flex; align-items: center; gap: 20px; }
.login-preview { cursor: help; }
.menu-toggle { display: none; }

.button {
    min-height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 20px;
    border: 1px solid transparent;
    border-radius: 10px;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
    transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.button:hover { transform: translateY(-2px); }
.button-primary { color: #fff; background: var(--blue); box-shadow: 0 12px 28px rgb(23 104 229 / 25%); }
.button-primary:hover { background: var(--blue-2); box-shadow: 0 15px 34px rgb(23 104 229 / 32%); }
.button-secondary { color: var(--ink); background: #fff; border-color: #bfcce0; }
.button-secondary:hover { border-color: #7c97bb; box-shadow: var(--shadow-soft); }
.button-small { min-height: 44px; padding: 9px 16px; font-size: .87rem !important; }
.button-large { min-height: 54px; padding-inline: 24px; }
.button-ghost-light { color: #fff; background: rgb(255 255 255 / 7%); border-color: rgb(255 255 255 / 28%); }
.button-ghost-light:hover { background: rgb(255 255 255 / 13%); border-color: rgb(255 255 255 / 45%); }

.hero {
    position: relative;
    min-height: 625px;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 74% 45%, rgb(23 104 229 / 42%), transparent 31%),
        linear-gradient(135deg, #06122a, #071a3b 62%, #09234c);
}
.hero::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .15;
    background-image: linear-gradient(rgb(255 255 255 / 8%) 1px, transparent 1px), linear-gradient(90deg, rgb(255 255 255 / 8%) 1px, transparent 1px);
    background-size: 64px 64px;
    mask-image: linear-gradient(to right, black, transparent 52%, black);
}
.hero-grid {
    position: relative;
    z-index: 1;
    width: var(--shell);
    min-height: 625px;
    display: grid;
    grid-template-columns: 1.04fr .96fr;
    align-items: center;
    gap: clamp(36px, 6vw, 86px);
    margin-inline: auto;
    padding: 74px 0 92px;
}
.eyebrow {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 0 0 12px;
    color: var(--blue-2);
    font-size: .77rem;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.eyebrow > span { width: 18px; height: 2px; background: currentColor; }
.eyebrow-light { color: #8eb7ff; }
.hero h1 {
    max-width: 690px;
    margin: 0;
    font-size: clamp(3rem, 4.75vw, 5.05rem);
    line-height: .98;
    letter-spacing: -.062em;
}
.hero h1 > span { white-space: nowrap; }
.hero h1 em { color: #4d8dff; font-style: normal; }
.hero-lead { max-width: 610px; margin: 28px 0 30px; color: #c8d6ea; font-size: clamp(1rem, 1.4vw, 1.16rem); }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.hero-facts { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.hero-facts span { padding: 7px 10px; color: #cbdcf6; background: rgb(255 255 255 / 6%); border: 1px solid rgb(255 255 255 / 13%); border-radius: 999px; font-size: .72rem; font-weight: 750; }

.hero-search,
.directory-search {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 12px;
    padding: 7px 7px 7px 18px;
    background: #fff;
    border: 1px solid rgb(255 255 255 / 55%);
    border-radius: 14px;
    box-shadow: 0 20px 50px rgb(0 0 0 / 24%);
}
.hero-search svg,
.directory-search svg { width: 22px; fill: none; stroke: #7e8da4; stroke-width: 1.9; }
.hero-search input,
.directory-search input { min-width: 0; padding: 11px 2px; color: var(--ink); border: 0; outline: 0; background: transparent; }
.hero-search input::placeholder,
.directory-search input::placeholder { color: #7b899e; }
.hero-search button { min-height: 46px; padding: 10px 22px; color: #fff; background: var(--blue); border: 0; border-radius: 10px; font-weight: 800; cursor: pointer; }
.task-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.task-chips button {
    padding: 8px 11px;
    color: #cddaf0;
    background: rgb(255 255 255 / 7%);
    border: 1px solid rgb(255 255 255 / 12%);
    border-radius: 999px;
    font-size: .75rem;
    cursor: pointer;
}
.task-chips button:hover { color: #fff; background: rgb(255 255 255 / 13%); }
.search-feedback { min-height: 24px; margin: 10px 0 0; color: #a9c5f2; font-size: .84rem; }

.section { padding: 96px 0; scroll-margin-top: 90px; }
.section-soft { background: var(--soft); }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 34px; }
.section-heading h2 { margin: 0; letter-spacing: -.04em; line-height: 1.08; }
.section-heading h2 { font-size: clamp(2rem, 3.4vw, 3.2rem); }
.section-heading > p { max-width: 530px; margin: 0; color: var(--muted); }

.button-row { display: flex; flex-wrap: wrap; gap: 10px; }
.directory-search { max-width: none; box-shadow: var(--shadow-soft); }

.guide-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.guide-grid details { padding: 22px; background: #fff; border: 1px solid var(--line); border-radius: 14px; box-shadow: var(--shadow-soft); }
.guide-grid summary { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; cursor: pointer; list-style: none; }
.guide-grid summary::-webkit-details-marker { display: none; }
.guide-grid strong, .guide-grid small { display: block; }
.guide-grid small { margin-top: 4px; color: var(--muted); font-size: .73rem; }
.guide-grid details > p { margin: 16px 0 0; padding-top: 14px; color: var(--muted); border-top: 1px solid var(--line); font-size: .82rem; }
.guide-grid details[open] summary b { transform: rotate(45deg); }
.brand-light { color: #fff; }

.content-hero {
    color: #fff;
    background:
        radial-gradient(circle at 76% 38%, rgb(23 104 229 / 36%), transparent 28%),
        linear-gradient(135deg, #06122a, #071a3b 65%, #09234c);
}
.content-hero-inner { min-height: 410px; display: flex; flex-direction: column; justify-content: center; padding-block: 72px 78px; }
.content-hero h1 { max-width: 900px; margin: 0; font-size: clamp(2.8rem, 5vw, 5.2rem); line-height: .98; letter-spacing: -.06em; }
.content-lead { max-width: 760px; margin: 24px 0 0; color: #c8d6ea; font-size: clamp(1.03rem, 1.5vw, 1.22rem); }
.content-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.content-hero-facts { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 22px; }
.content-hero-facts span { padding: 7px 11px; color: #d7e5f8; background: rgb(255 255 255 / 7%); border: 1px solid rgb(255 255 255 / 15%); border-radius: 999px; font-size: .78rem; font-weight: 750; }
.breadcrumbs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 26px; color: #aebed5; font-size: .82rem; }
.breadcrumbs a { color: #d8e4f6; text-underline-offset: 3px; }
.breadcrumbs span[aria-hidden="true"] { opacity: .55; }
.content-section { padding-top: 56px; }
.status-banner { display: grid; grid-template-columns: auto 1fr; gap: 16px 22px; align-items: center; margin-bottom: 30px; padding: 20px 22px; background: var(--amber-soft); border: 1px solid #f1d38f; border-radius: 14px; }
.status-banner strong { color: #8a5400; }
.status-banner span { color: #6e5c39; }
.outcome-strip { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.outcome-strip > div { min-height: 92px; display: flex; align-items: center; gap: 12px; padding: 17px 18px; background: #fff; border: 1px solid var(--line); border-radius: 14px; box-shadow: var(--shadow-soft); }
.outcome-strip span { width: 34px; height: 34px; display: grid; place-items: center; flex: 0 0 auto; color: var(--blue-2); background: var(--ice); border-radius: 9px; font-weight: 900; }
.outcome-strip strong { font-size: .88rem; }
.content-grid { display: grid; gap: 16px; }
.content-grid.four-up { grid-template-columns: repeat(4, 1fr); }
.content-grid.three-up { grid-template-columns: repeat(3, 1fr); }
.related-workflows .content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.content-grid article { padding: 26px; background: #fff; border: 1px solid var(--line); border-radius: 16px; box-shadow: var(--shadow-soft); }
.content-grid h2, .content-grid h3 { margin: 18px 0 8px; font-size: 1.1rem; }
.content-grid p { margin: 0; color: var(--muted); font-size: .9rem; }
.content-icon { width: 42px; height: 42px; display: inline-grid; place-items: center; border-radius: 12px; font-weight: 900; }
.content-icon.green { color: var(--green); background: var(--green-soft); }
.content-icon.blue { color: var(--blue); background: var(--ice); }
.content-icon.purple { color: var(--purple); background: var(--purple-soft); }
.content-icon.amber { color: #b77400; background: var(--amber-soft); }
.article-layout { display: grid; grid-template-columns: minmax(0, 1fr) 310px; gap: 28px; align-items: start; }
.article-card { min-width: 0; padding: clamp(26px, 4vw, 48px); background: #fff; border: 1px solid var(--line); border-radius: 18px; box-shadow: var(--shadow-soft); }
.article-card > :first-child { margin-top: 0; }
.article-card > :last-child { margin-bottom: 0; }
.article-card h2 { margin: 36px 0 12px; font-size: clamp(1.35rem, 2.2vw, 1.8rem); line-height: 1.18; letter-spacing: -.03em; }
.article-card p, .article-card li { color: #465975; }
.article-card a:not(.button), .content-aside a, .text-link { color: var(--blue-2); font-weight: 750; text-underline-offset: 3px; }
.article-card code { padding: 2px 6px; color: #213d68; background: var(--ice); border-radius: 5px; overflow-wrap: anywhere; }
.article-card.narrow, .about-copy { max-width: 880px; margin-inline: auto; }
.article-meta { margin-bottom: 26px; padding-bottom: 16px; border-bottom: 1px solid var(--line); font-size: .8rem; }
.content-aside { display: grid; gap: 16px; position: sticky; top: 98px; }
.aside-card { padding: 24px; background: #fff; border: 1px solid var(--line); border-radius: 15px; box-shadow: var(--shadow-soft); }
.aside-card h2 { margin: 0 0 12px; font-size: 1.05rem; }
.aside-card p { color: var(--muted); font-size: .86rem; }
.aside-card > a { display: block; margin-top: 12px; font-size: .83rem; }
.step-list { display: grid; gap: 18px; padding: 0; counter-reset: steps; list-style: none; }
.step-list li { display: grid; grid-template-columns: auto 1fr; gap: 2px 14px; counter-increment: steps; }
.step-list li::before { content: counter(steps); grid-row: 1 / 3; width: 34px; height: 34px; display: grid; place-items: center; color: #fff; background: var(--blue); border-radius: 10px; font-weight: 850; }
.step-list strong, .step-list span { display: block; }
.fact-table { border: 1px solid var(--line); border-radius: 12px; overflow: hidden; }
.fact-table div { display: grid; grid-template-columns: 160px 1fr; gap: 16px; padding: 13px 16px; border-bottom: 1px solid var(--line); }
.fact-table div:last-child { border-bottom: 0; }
.fact-table strong { color: var(--ink); }
.fact-table span { color: var(--muted); }
.check-list { display: grid; gap: 10px; padding: 0; list-style: none; }
.check-list li { position: relative; padding-left: 23px; color: var(--muted); font-size: .84rem; }
.check-list li::before { content: "✓"; position: absolute; left: 0; color: var(--green); font-weight: 900; }
.pricing-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.pricing-card { display: flex; flex-direction: column; padding: 30px; background: #fff; border: 1px solid var(--line); border-radius: 18px; box-shadow: var(--shadow-soft); }
.pricing-card.featured { border: 2px solid var(--blue); box-shadow: 0 20px 55px rgb(23 104 229 / 14%); }
.pricing-card h2 { margin: 12px 0 6px; }
.pricing-card p { min-height: 92px; color: var(--muted); }
.pricing-card .button { margin-top: auto; }
.plan-label { width: fit-content; padding: 5px 8px; color: var(--blue-2); background: var(--ice); border-radius: 6px; font-size: .7rem; font-weight: 850; text-transform: uppercase; }
.plan-price { font-size: 1.45rem; }
.legal-note { display: grid; gap: 4px; margin-top: 24px; padding: 20px 22px; background: var(--soft); border: 1px solid var(--line); border-radius: 13px; }
.legal-note span { color: var(--muted); }
.resource-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.resource-card { display: grid; grid-template-columns: auto 1fr; gap: 18px; padding: 26px; color: inherit; background: #fff; border: 1px solid var(--line); border-radius: 16px; box-shadow: var(--shadow-soft); text-decoration: none; transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.resource-card:hover { border-color: #9bb9e6; box-shadow: var(--shadow); transform: translateY(-3px); }
.resource-card .eyebrow { margin-bottom: 6px; font-size: .67rem; }
.resource-card h2, .resource-card h3 { margin: 0 0 8px; font-size: 1.18rem; }
.resource-card p { margin: 0 0 12px; color: var(--muted); font-size: .85rem; }
.resource-card div > span { color: var(--blue-2); font-size: .79rem; font-weight: 800; }
.article-cta { margin-top: 34px; padding: 24px; background: var(--ice); border: 1px solid #cfdef5; border-radius: 14px; }
.article-cta h2 { margin-top: 0; }
.example-summary { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-bottom: 20px; }
.example-summary > div { padding: 20px; background: #fff; border: 1px solid var(--line); border-radius: 14px; text-align: center; }
.example-summary strong, .example-summary span { display: block; }
.example-summary strong { font-size: 1.55rem; }
.example-summary span { color: var(--muted); font-size: .75rem; }
.example-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.simple-table { margin: 18px 0; border: 1px solid var(--line); border-radius: 10px; overflow: auto; }
.simple-table > div { min-width: 440px; display: grid; grid-template-columns: .7fr 1.4fr .7fr; gap: 10px; padding: 10px 12px; border-bottom: 1px solid var(--line); font-size: .78rem; }
.simple-table > div:first-child { color: #344761; background: var(--soft); }
.simple-table > div:last-child { border-bottom: 0; }
.simple-table.wide > div { min-width: 620px; grid-template-columns: .7fr 1fr .7fr .7fr .9fr; }
.result-example { margin-top: 18px; }
.text-link.light { color: #a9c8ff; }
.contact-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.contact-card { padding: 28px; background: #fff; border: 1px solid var(--line); border-radius: 18px; box-shadow: var(--shadow-soft); text-decoration: none; }
.contact-card h2 { margin: 18px 0 8px; }
.contact-card p { min-height: 76px; color: var(--muted); }
.contact-card strong { color: var(--blue-2); }
.error-page { min-height: 100vh; display: grid; place-items: center; color: #fff; background: var(--ink); }
.error-page main { width: min(680px, calc(100% - 40px)); text-align: center; }
.error-page .brand { margin-bottom: 50px; }
.error-page .eyebrow { justify-content: center; }
.error-page h1 { margin: 0; font-size: clamp(2.6rem, 7vw, 5.5rem); line-height: 1; letter-spacing: -.06em; }
.error-page p:not(.eyebrow) { margin: 20px 0 28px; color: #b8c7dc; }

.noscript { position: fixed; z-index: 500; right: 16px; bottom: 16px; max-width: 400px; padding: 12px; color: #fff; background: var(--ink); border-radius: 8px; }

/* Price List Compare buyer journey */
.buyer-grid { display: grid; grid-template-columns: 1.05fr .95fr; gap: 20px; align-items: stretch; }
.buyer-card, .access-card { padding: clamp(26px, 4vw, 42px); border-radius: 20px; }
.buyer-card { background: #fff; border: 1px solid var(--line); box-shadow: var(--shadow-soft); }
.buyer-card h3, .access-card h3 { margin: 0 0 22px; font-size: clamp(1.45rem, 2.7vw, 2.15rem); line-height: 1.08; letter-spacing: -.04em; }
.audience-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.audience-list > div { display: grid; grid-template-columns: auto 1fr; gap: 2px 11px; padding: 17px; background: var(--soft); border: 1px solid var(--line); border-radius: 13px; }
.audience-list span { grid-row: 1 / 3; width: 30px; height: 30px; display: grid; place-items: center; color: var(--blue-2); background: var(--ice); border-radius: 8px; font-size: .65rem; font-weight: 900; }
.audience-list strong { font-size: .9rem; }
.audience-list p { margin: 2px 0 0; color: var(--muted); font-size: .76rem; }
.access-card { color: #fff; background: linear-gradient(145deg, #07152f, #0c2a58); box-shadow: 0 22px 60px rgb(20 32 51 / 18%); }
.access-card .eyebrow { margin-bottom: 9px; }
.access-list { display: grid; gap: 9px; }
.access-list > div { display: grid; grid-template-columns: 110px 1fr; gap: 1px 14px; padding: 14px 15px; background: rgb(255 255 255 / 6%); border: 1px solid rgb(255 255 255 / 12%); border-radius: 11px; }
.access-list span { grid-row: 1 / 3; align-self: center; color: #92b9fb; font-size: .68rem; font-weight: 850; text-transform: uppercase; }
.access-list strong { font-size: .84rem; }
.access-list small { color: #aebdd2; font-size: .69rem; }
.access-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; margin-top: 22px; }
.faq-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 12px; }
.faq-grid details { padding: 0 20px; background: #fff; border: 1px solid var(--line); border-radius: 13px; box-shadow: var(--shadow-soft); }
.faq-grid details[open] { border-color: #b9ceeb; }
.faq-grid summary { position: relative; padding: 19px 30px 19px 0; color: var(--ink); font-size: .9rem; font-weight: 800; cursor: pointer; list-style: none; }
.faq-grid summary::-webkit-details-marker { display: none; }
.faq-grid summary::after { content: "+"; position: absolute; right: 0; top: 15px; width: 27px; height: 27px; display: grid; place-items: center; color: var(--blue-2); background: var(--ice); border-radius: 50%; font-size: 1.1rem; }
.faq-grid details[open] summary::after { content: "−"; }
.faq-grid p { margin: -2px 0 19px; padding-right: 20px; color: var(--muted); font-size: .82rem; }
.tool-resource-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.tool-final-cta { display: grid; grid-template-columns: minmax(0, 1.1fr) auto; gap: 34px; align-items: center; padding: clamp(30px, 5vw, 54px); overflow: hidden; color: #fff; background: radial-gradient(circle at 88% 10%, rgb(23 104 229 / 48%), transparent 32%), linear-gradient(135deg, #06122a, #0b2857); border-radius: 22px; box-shadow: 0 24px 70px rgb(20 32 51 / 18%); }
.tool-final-cta h2 { max-width: 700px; margin: 0; font-size: clamp(2rem, 4.4vw, 3.55rem); line-height: 1.02; letter-spacing: -.055em; }
.tool-final-cta p:not(.eyebrow) { max-width: 650px; margin: 16px 0 0; color: #bdcde3; }
.tool-final-actions { display: grid; gap: 10px; min-width: 260px; }

/* Interactive Price List Compare sample */
.tool-demo-section { background: linear-gradient(180deg, #f7faff 0%, #eef5ff 100%); scroll-margin-top: 70px; }
.demo-heading { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 34px; align-items: end; margin-bottom: 26px; }
.demo-heading h2 { max-width: 760px; margin: 0; font-size: clamp(2.05rem, 4.4vw, 3.8rem); line-height: 1.02; letter-spacing: -.055em; }
.demo-heading > div:first-child > p:last-child { max-width: 720px; margin: 16px 0 0; color: var(--muted); }
.demo-trust { min-width: 235px; display: flex; align-items: center; gap: 12px; padding: 15px 17px; color: #0d6347; background: var(--green-soft); border: 1px solid #bfe7d6; border-radius: 14px; }
.demo-trust > span { width: 33px; height: 33px; display: grid; place-items: center; flex: 0 0 auto; color: #fff; background: var(--green); border-radius: 50%; font-weight: 900; }
.demo-trust strong, .demo-trust small { display: block; }
.demo-trust small { margin-top: 2px; color: #487666; font-size: .78rem; }
.tool-demo { overflow: hidden; background: #fff; border: 1px solid #cddcf1; border-radius: 22px; box-shadow: 0 28px 80px rgb(20 32 51 / 13%); }
.demo-topbar { min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 14px 22px; color: #fff; background: var(--ink); }
.demo-topbar > div { display: flex; align-items: center; gap: 11px; }
.demo-topbar strong, .demo-topbar small { display: block; }
.demo-topbar small { color: #aebdd2; font-size: .7rem; }
.demo-product-mark { width: 38px; height: 38px; display: grid; place-items: center; color: #fff; background: var(--blue); border-radius: 10px; font-size: 1.1rem; }
.demo-ready { display: inline-flex; align-items: center; gap: 7px; padding: 6px 9px; color: #b8f2dc; background: rgb(23 166 115 / 14%); border: 1px solid rgb(117 226 185 / 25%); border-radius: 999px; font-size: .72rem; font-weight: 800; }
.demo-ready > span { width: 7px; height: 7px; background: #45dcaa; border-radius: 50%; box-shadow: 0 0 0 4px rgb(69 220 170 / 12%); }
.demo-stepper { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; margin: 0; padding: 0 22px; background: #f8faff; border-bottom: 1px solid var(--line); list-style: none; }
.demo-stepper li { position: relative; min-height: 70px; display: flex; align-items: center; justify-content: center; gap: 9px; color: #7b8aa1; font-size: .78rem; }
.demo-stepper li:not(:last-child)::after { content: ""; position: absolute; width: 1px; height: 24px; right: 0; background: var(--line); }
.demo-stepper span { width: 26px; height: 26px; display: grid; place-items: center; background: #e8eef7; border-radius: 50%; font-weight: 850; }
.demo-stepper li.active, .demo-stepper li.complete { color: var(--ink); }
.demo-stepper li.active span { color: #fff; background: var(--blue); box-shadow: 0 6px 16px rgb(23 104 229 / 24%); }
.demo-stepper li.complete span { color: #fff; background: var(--green); }
.demo-file-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; padding: 24px; }
.demo-file-card { min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 15px; }
.demo-file-title { display: grid; grid-template-columns: auto 1fr auto; gap: 11px; align-items: center; padding: 15px 16px; background: var(--soft); border-bottom: 1px solid var(--line); }
.demo-file-title > span { width: 34px; height: 34px; display: grid; place-items: center; color: var(--blue-2); background: var(--ice); border: 1px solid #cedff8; border-radius: 9px; font-size: .78rem; font-weight: 900; }
.demo-file-title h3 { margin: 0; font-size: .9rem; }
.demo-file-title p { margin: 1px 0 0; color: var(--muted); font-size: .7rem; }
.demo-file-title > strong { padding: 4px 7px; color: #4b5f7c; background: #fff; border: 1px solid var(--line); border-radius: 6px; font-size: .64rem; }
.demo-source-wrap { overflow-x: auto; }
.demo-source-table, .demo-result-table { width: 100%; border-collapse: collapse; font-size: .82rem; }
.demo-source-table th, .demo-source-table td, .demo-result-table th, .demo-result-table td { padding: 10px 12px; border-bottom: 1px solid #e7edf5; text-align: left; white-space: nowrap; }
.demo-source-table th, .demo-result-table th { color: #52647f; background: #fbfcff; font-size: .72rem; letter-spacing: .025em; text-transform: uppercase; }
.demo-source-table th:last-child, .demo-source-table td:last-child { text-align: right; }
.demo-source-table tr:last-child td, .demo-result-table tr:last-child td { border-bottom: 0; }
.demo-source-toggle { display: none; }
.demo-run-panel { display: flex; align-items: center; justify-content: space-between; gap: 22px; padding: 21px 24px; background: #f8faff; border-bottom: 1px solid var(--line); }
.demo-run-panel strong, .demo-run-panel span { display: block; }
.demo-run-panel span { margin-top: 2px; color: var(--muted); font-size: .76rem; }
.demo-results { border-top: 1px solid var(--line); }
.demo-result-heading { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 28px 24px 18px; }
.demo-result-heading .eyebrow { margin-bottom: 5px; }
.demo-result-heading h3 { margin: 0; font-size: clamp(1.45rem, 3vw, 2.1rem); line-height: 1.1; letter-spacing: -.04em; }
.demo-reset { padding: 8px 10px; color: var(--blue-2); background: transparent; border: 0; font-size: .78rem; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.demo-stats { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 8px; padding: 0 24px 22px; }
.demo-stats > div { min-width: 0; padding: 13px 10px; background: var(--soft); border: 1px solid var(--line); border-radius: 10px; }
.demo-stats span, .demo-stats strong { display: block; }
.demo-stats span { overflow: hidden; color: var(--muted); font-size: .61rem; text-overflow: ellipsis; }
.demo-stats strong { margin-top: 2px; font-size: 1.2rem; }
.demo-stats .increase { color: #087d59; background: var(--green-soft); border-color: #c9eadc; }
.demo-stats .decrease { color: #c33a47; background: #fff1f2; border-color: #f2ccd0; }
.demo-stats .new { color: #6140bb; background: var(--purple-soft); border-color: #ded2ff; }
.demo-stats .removed { color: #9a5c00; background: var(--amber-soft); border-color: #f2dcaa; }
.demo-stats .increase span, .demo-stats .decrease span, .demo-stats .new span, .demo-stats .removed span { color: inherit; opacity: .78; }
.demo-controls { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px 24px; background: #f8faff; border-block: 1px solid var(--line); }
.demo-filters { display: flex; flex-wrap: wrap; gap: 7px; }
.demo-filters button { min-height: 44px; padding: 6px 9px; color: #4b5e79; background: #fff; border: 1px solid #ced9e8; border-radius: 8px; font-size: .69rem; font-weight: 750; cursor: pointer; }
.demo-filters button:hover, .demo-filters button.active { color: var(--blue-2); background: var(--ice); border-color: #93b9ef; }
.demo-filters button span { margin-left: 3px; color: inherit; opacity: .68; }
.demo-search { width: min(240px, 100%); min-height: 38px; display: flex; align-items: center; gap: 7px; padding: 0 11px; background: #fff; border: 1px solid #cbd7e7; border-radius: 9px; }
.demo-search > span { color: #7c8ca3; }
.demo-search input { min-width: 0; width: 100%; padding: 8px 0; color: var(--ink); background: transparent; border: 0; outline: 0; font-size: .75rem; }
.demo-search:focus-within { border-color: var(--blue); box-shadow: 0 0 0 3px rgb(23 104 229 / 12%); }
.demo-result-table-wrap { overflow-x: auto; }
.demo-result-table { min-width: 720px; }
.demo-result-table td:first-child { color: #263c5b; font-weight: 800; }
.demo-result-table th:nth-child(n+4), .demo-result-table td:nth-child(n+4) { text-align: right; }
.demo-status { display: inline-flex; padding: 4px 7px; border-radius: 999px; font-size: .62rem; font-weight: 850; }
.demo-status.increased { color: #087d59; background: var(--green-soft); }
.demo-status.decreased { color: #c33a47; background: #fff1f2; }
.demo-status.new { color: #6140bb; background: var(--purple-soft); }
.demo-status.removed { color: #9a5c00; background: var(--amber-soft); }
.demo-change.increased { color: #087d59; font-weight: 850; }
.demo-change.decreased { color: #c33a47; font-weight: 850; }
.demo-no-results { margin: 0; padding: 28px 24px; color: var(--muted); text-align: center; }
.demo-result-footer { display: flex; align-items: center; justify-content: space-between; gap: 22px; padding: 20px 24px 24px; background: #fbfcff; border-top: 1px solid var(--line); }
.demo-result-footer p { max-width: 520px; margin: 0; color: var(--muted); font-size: .84rem; }
.demo-result-footer p strong { display: block; color: var(--ink); }
.demo-result-footer > div { display: flex; flex-wrap: wrap; gap: 9px; }
.demo-result-footer .button { min-height: 44px; padding: 9px 13px; font-size: .75rem; }
.demo-noscript { margin: 0; padding: 16px 24px; color: #755000; background: var(--amber-soft); border-top: 1px solid #f1d38f; }

.reveal { opacity: 1; transform: none; }
.reveal.reveal-pending { opacity: 0; transform: translateY(18px); transition: opacity .55s ease, transform .55s ease; }
.reveal.visible { opacity: 1; transform: none; }

@media (max-width: 1000px) {
    .header-shell { grid-template-columns: auto auto; justify-content: space-between; }
    .primary-nav { position: absolute; left: 0; right: 0; top: 74px; display: none; flex-direction: column; align-items: stretch; gap: 0; padding: 14px 20px 20px; background: var(--ink); border-top: 1px solid rgb(255 255 255 / 10%); box-shadow: 0 20px 30px rgb(0 0 0 / 20%); }
    .primary-nav.open { display: flex; }
    .primary-nav a { padding: 12px; }
    .primary-nav .mobile-nav-cta { display: block; margin-top: 8px; padding: 12px 14px; color: #fff; background: var(--blue); border-radius: 9px; text-align: center; }
    .primary-nav .mobile-nav-cta::after { display: none; }
    .header-actions { display: none; }
    .menu-toggle { width: 44px; height: 44px; display: grid; place-content: center; gap: 5px; color: #fff; background: transparent; border: 1px solid rgb(255 255 255 / 20%); border-radius: 9px; }
    .menu-toggle span:not(.sr-only) { width: 20px; height: 2px; background: currentColor; }
    .hero-grid { grid-template-columns: 1fr; padding-top: 60px; }
    .hero-copy { max-width: 720px; }
    .featured-result, .featured-proof { border-top: 1px solid var(--line); border-left: 0; }
    .review-principles { grid-column: 1 / -1; padding-left: 72px; }
    .guide-grid { grid-template-columns: repeat(2, 1fr); }
    .footer-grid { grid-template-columns: repeat(3, 1fr); }
    .footer-brand { grid-column: 1 / -1; }
    .content-grid.four-up { grid-template-columns: repeat(2, 1fr); }
    .article-layout { grid-template-columns: 1fr; }
    .content-aside { position: static; grid-template-columns: repeat(2, 1fr); }
    .demo-stats { grid-template-columns: repeat(4, 1fr); }
    .outcome-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .buyer-grid { grid-template-columns: 1fr; }
    .tool-final-cta { grid-template-columns: 1fr; }
    .tool-final-actions { min-width: 0; display: flex; flex-wrap: wrap; }
    .pricing-grid { grid-template-columns: 1fr; }
    .pricing-card p { min-height: 0; }
    .contact-grid { grid-template-columns: 1fr; }
    .contact-card p { min-height: 0; }
}

@media (max-width: 760px) {
    :root { --shell: min(100% - 28px, 1180px); }
    .offer-bar { min-height: 36px; gap: 6px; padding: 6px 14px; font-size: .72rem; }
    .offer-bar svg { display: none; }
    .offer-bar span { display: none; }
    .header-shell { min-height: 64px; }
    .primary-nav { top: 64px; }
    .hero-grid { min-height: 0; padding: 48px 0 78px; }
    .hero h1 { font-size: clamp(2.7rem, 13vw, 4.2rem); }
    .hero h1 > span { white-space: normal; }
    .hero-lead { margin-block: 22px; }
    .hero-search { grid-template-columns: auto 1fr; padding: 7px 12px; }
    .hero-search button { grid-column: 1 / -1; width: 100%; }
    .category-card { width: 205px; }
    .category-data { right: 28px; }
    .category-docs { right: 0; }
    .category-images { right: 60px; }
    .result-preview { width: 100%; padding: 12px; }
    .preview-stats span { font-size: .63rem; }
    .section { padding: 70px 0; }
    .section-heading { display: block; }
    .section-heading > p { margin-top: 14px; }
    .featured-copy { padding: 26px 20px; }
    .tool-title-row { align-items: flex-start; }
    .tool-icon { width: 54px; height: 54px; }
    .tool-title-row h2 { font-size: 1.75rem; }
    .featured-result { padding: 20px 14px 50px; overflow-x: auto; }
    .featured-proof { padding: 30px 22px; }
    .result-table { min-width: 540px; }
    .directory-toolbar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .directory-toolbar .directory-search { grid-column: 1 / -1; }
    .directory-select { min-width: 0; }
    .category-tile { min-height: 125px; }
    .directory-search { grid-template-columns: auto 1fr; }
    .directory-search .button { grid-column: 1 / -1; width: 100%; }
    .gift { width: 60px; height: 60px; }
    .gift svg { width: 38px; }
    .review-principles { grid-column: auto; padding-left: 0; flex-wrap: wrap; }
    .guide-grid { grid-template-columns: 1fr; }
    .footer-grid { grid-template-columns: repeat(2, 1fr); gap: 36px 24px; }
    .footer-brand { grid-column: 1 / -1; }
    .footer-bottom { flex-direction: column; }
    .content-hero-inner { min-height: 360px; padding-block: 56px 62px; }
    .content-grid.three-up, .content-grid.four-up, .related-workflows .content-grid { grid-template-columns: 1fr; }
    .content-aside { grid-template-columns: 1fr; }
    .resource-grid { grid-template-columns: 1fr; }
    .example-columns { grid-template-columns: minmax(0, 1fr); }
    .example-summary { grid-template-columns: repeat(2, 1fr); }
    .fact-table div { grid-template-columns: 1fr; gap: 3px; }
    .audience-list, .faq-grid, .tool-resource-grid { grid-template-columns: 1fr; }
    .access-list > div { grid-template-columns: 100px 1fr; }
    .tool-final-actions { display: grid; width: 100%; }
    .demo-heading { grid-template-columns: 1fr; gap: 18px; }
    .demo-trust { width: fit-content; }
    .demo-file-grid { grid-template-columns: 1fr; padding: 18px; }
    .demo-source-toggle { width: 100%; min-height: 44px; display: flex; align-items: center; justify-content: center; padding: 11px 14px; color: var(--blue-2); background: #f8faff; border: 0; border-top: 1px solid var(--line); font-size: .74rem; font-weight: 800; cursor: pointer; }
    .demo-file-card:not(.expanded) .demo-source-table tbody tr:nth-child(n+4) { display: none; }
    .demo-run-panel, .demo-result-footer { align-items: stretch; flex-direction: column; }
    .demo-run-panel .button { width: 100%; }
    .demo-controls { align-items: stretch; flex-direction: column; }
    .demo-search { width: 100%; }
    .demo-result-footer > div { width: 100%; }
    .demo-result-footer .button { flex: 1 1 auto; }
    .tool-demo-section { padding-block: 72px; }
    .tool-demo-section ~ .section { padding-block: 72px; }
}

@media (max-width: 420px) {
    .brand { font-size: 1.08rem; }
    .brand-mark { width: 31px; height: 31px; }
    .hero h1 { letter-spacing: -.055em; }
    .task-chips button { flex: 1 1 calc(50% - 8px); }
    .category-card { width: 180px; padding: 9px 10px; }
    .category-card .icon-box { width: 31px; height: 31px; }
    .category-card strong { font-size: .75rem; }
    .category-card small { font-size: .6rem; }
    .category-data { right: 8px; }
    .category-docs { top: 69px; }
    .category-images { top: 125px; right: 42px; }
    .featured-pill { top: 165px; right: 0; padding: 9px 11px; font-size: .75rem; }
    .result-preview { bottom: 0; }
    .preview-stats { grid-template-columns: repeat(2, 1fr); }
    .mini-table > div { grid-template-columns: 1fr .65fr .65fr; }
    .mini-table > div span:nth-child(2) { display: none; }
    .button-row .button { width: 100%; }
    .directory-toolbar { grid-template-columns: 1fr; }
    .directory-toolbar .directory-search { grid-column: auto; }
    .directory-select { min-height: 48px; }
    .category-tile { min-height: 105px; flex-direction: row; justify-content: flex-start; text-align: left; }
    .category-tile p { display: none; }
    .category-tile .available-badge { margin-left: auto; }
    .footer-grid { grid-template-columns: 1fr; }
    .footer-brand { grid-column: auto; }
    .hero-actions .button { width: 100%; }
    .hero-facts span { flex: 1 1 100%; text-align: center; }
    .content-hero-facts span { flex: 1 1 100%; text-align: center; }
    .status-banner { grid-template-columns: 1fr; }
    .resource-card { grid-template-columns: 1fr; }
    .example-summary { grid-template-columns: 1fr 1fr; }
    .article-card { padding: 24px 18px; }
    .buyer-card, .access-card { padding: 24px 18px; }
    .audience-list > div { padding: 15px 13px; }
    .access-list > div { grid-template-columns: 1fr; gap: 4px; }
    .access-list span { grid-row: auto; }
    .tool-final-cta { padding: 28px 20px; }
    .demo-heading h2 { font-size: clamp(2rem, 11vw, 2.8rem); }
    .demo-topbar { min-height: 66px; padding-inline: 15px; }
    .demo-stepper { padding-inline: 8px; }
    .demo-stepper li { min-height: 62px; gap: 5px; font-size: .65rem; }
    .demo-stepper span { width: 23px; height: 23px; }
    .demo-file-grid { padding: 12px; gap: 12px; }
    .demo-file-title { padding: 12px; }
    .demo-file-title > strong { display: none; }
    .demo-source-table { min-width: 390px; }
    .demo-run-panel { padding: 18px 15px; }
    .demo-result-heading { align-items: flex-start; padding: 22px 15px 15px; }
    .demo-stats { grid-template-columns: repeat(2, 1fr); padding: 0 15px 18px; }
    .demo-controls { padding-inline: 15px; }
    .demo-filters { display: grid; grid-template-columns: repeat(2, 1fr); }
    .demo-filters button:first-child { grid-column: 1 / -1; }
    .demo-result-footer { padding: 18px 15px 20px; }
    .demo-result-footer > div { display: grid; }
    .outcome-strip { grid-template-columns: 1fr; }
}

/* Quote follow-up: long CSV field names must wrap inside the 320 px workflow card. */
.quote-demo-section + .section code { white-space: normal; overflow-wrap: anywhere; }
.quote-demo-section .quote-demo button { min-height: 44px; }

.conversion-bridge{padding-top:clamp(54px,7vw,90px);padding-bottom:clamp(54px,7vw,90px)}.conversion-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);align-items:end;gap:40px;margin-bottom:28px}.conversion-heading h2{max-width:820px;margin:10px 0 0;font-size:clamp(2rem,4.2vw,3.45rem);line-height:1.03;letter-spacing:-.05em}.conversion-heading>p{margin:0;color:var(--muted);font-size:1.02rem;line-height:1.7}.conversion-path{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;border:1px solid #cfdbed;border-radius:20px;background:#fff;box-shadow:0 24px 70px rgb(20 32 51 / 9%)}.conversion-path article{position:relative;min-width:0;padding:26px 24px}.conversion-path article+article{border-left:1px solid var(--line)}.conversion-path article:not(:last-child)::after{content:"→";position:absolute;z-index:2;right:-13px;top:29px;width:26px;height:26px;display:grid;place-items:center;color:var(--blue-2);background:#fff;border:1px solid #c8d8ef;border-radius:50%;font-weight:900}.conversion-path article>span{display:block;color:var(--blue-2);font-size:.7rem;font-weight:900;letter-spacing:.075em;text-transform:uppercase}.conversion-path h3{margin:11px 0 9px;font-size:1.08rem;line-height:1.25}.conversion-path p{margin:0;color:var(--muted);font-size:.87rem;line-height:1.62}.conversion-path .conversion-proof{background:linear-gradient(145deg,#effaf5,#e7f7f0)}.conversion-path .conversion-proof>span{color:#08765e}.conversion-path .conversion-proof h3{color:#075d46}.conversion-path .conversion-proof p{color:#3e6d60}.conversion-action{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:16px;padding:18px 20px 18px 24px;border:1px solid #cbdaf0;border-radius:16px;background:#f4f8ff}.conversion-action strong,.conversion-action span{display:block}.conversion-action>div>strong{color:var(--ink)}.conversion-action>div>span{margin-top:4px;color:var(--muted);font-size:.82rem}.conversion-action .button{flex:0 0 auto;min-width:250px}
.image-demo-section { background: linear-gradient(180deg, #fff, #f6f8fd); }
.image-demo { overflow: hidden; border: 1px solid #dce5f1; border-radius: 25px; background: #fff; box-shadow: 0 25px 70px rgb(12 34 74 / 10%); }
.batch-source-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; padding: 22px; background: #f4f6fc; }
.batch-source-grid figure { margin: 0; padding: 10px; border: 1px solid #e1e7f1; border-radius: 15px; background: #fff; }
.batch-source-grid img { display: block; width: 100%; height: 160px; object-fit: contain; }
.batch-source-grid figcaption { margin-top: 7px; overflow: hidden; color: #637087; font-size: .7rem; text-overflow: ellipsis; white-space: nowrap; }
.demo-config { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)) auto; align-items: end; gap: 12px; padding: 22px; border-top: 1px solid #e2e8f1; }
.demo-config label { display: grid; gap: 6px; color: #4d5b71; font-size: .72rem; font-weight: 850; }
.demo-config select,.demo-config input { width: 100%; min-height: 44px; padding: 10px; border: 1px solid #c9d5e5; border-radius: 10px; color: var(--ink); background: #fff; }
.demo-config fieldset { display: flex; align-items: center; gap: 10px; min-height: 44px; margin: 0; padding: 7px 10px; border: 1px solid #c9d5e5; border-radius: 10px; }
.demo-config fieldset legend { padding: 0 5px; color: #4d5b71; font-size: .67rem; font-weight: 850; }
.demo-config fieldset label { display: flex; align-items: center; gap: 4px; }
.demo-output,.compress-result { padding: 22px; border-top: 1px solid #e2e8f1; background: #fbfdff; }
.batch-result-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-top: 18px; }
.batch-result-grid figure { margin: 0; padding: 9px; border: 1px solid #dce5f1; border-radius: 14px; background: #fff; }
.batch-result-grid .result-frame { display: grid; place-items: center; aspect-ratio: 1; overflow: hidden; border-radius: 9px; background: #fff; }
.batch-result-grid .result-frame.transparent { background-color: #fff; background-image: linear-gradient(45deg,#e8edf5 25%,transparent 25%),linear-gradient(-45deg,#e8edf5 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e8edf5 75%),linear-gradient(-45deg,transparent 75%,#e8edf5 75%); background-size: 18px 18px; background-position: 0 0,0 9px,9px -9px,-9px 0; }
.batch-result-grid img { display: block; width: 100%; height: 100%; object-fit: contain; }.batch-result-grid .crop img { object-fit: cover; }
.batch-result-grid figcaption { display: grid; gap: 3px; margin-top: 8px; font-size: .67rem; }.batch-result-grid figcaption span { color: var(--muted); }
.zip-structure { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin-top: 22px; padding: 20px; border-radius: 18px; color: #e8f1ff; background: #07152f; }
.zip-structure pre { margin: 12px 0 0; color: #c8d9ef; font: 600 .76rem/1.6 ui-monospace,SFMono-Regular,Consolas,monospace; white-space: pre-wrap; }.zip-structure p { color: #c8d9ef; line-height: 1.55; }
.fit-crop-compare,.target-explainer { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }.fit-crop-compare article,.target-explainer article { padding: 24px; border: 1px solid var(--line); border-radius: 22px; background: #fff; }
.fit-crop-compare article > span { display: inline-block; padding: 6px 9px; border-radius: 999px; color: #fff; background: var(--blue); font-size: .68rem; font-weight: 900; }
.compare-frame { display: grid; place-items: center; aspect-ratio: 1.55; margin: 17px 0; overflow: hidden; border-radius: 15px; background: #edf1f8; }.compare-frame img { width: 100%; height: 100%; object-fit: contain; }.compare-frame.crop img { object-fit: cover; }
.fit-crop-compare h2,.target-explainer h2 { font-size: 1.45rem; }.fit-crop-compare p,.target-explainer p { color: var(--muted); line-height: 1.65; }
.use-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 18px 0 28px; }.use-grid div { padding: 15px; border-radius: 13px; background: #f2f6fb; }.use-grid strong,.use-grid span { display: block; }.use-grid span { margin-top: 5px; color: var(--muted); font-size: .78rem; line-height: 1.5; }
.related-tool { display: flex; align-items: center; justify-content: space-between; gap: 25px; padding: 28px; border: 1px solid #c8d8f4; border-radius: 23px; background: linear-gradient(135deg,#eef4ff,#f0fbf7); }.related-tool h2 { margin: 8px 0; }.related-tool p:last-child { max-width: 760px; color: var(--muted); }
.compressor-workbench { display: grid; grid-template-columns: 1.1fr .9fr; }.compress-source { margin: 0; padding: 22px; background: #f1f7f5; }.compress-source img { display: block; width: 100%; height: auto; border-radius: 16px; }.compress-source figcaption { display: flex; justify-content: space-between; gap: 12px; margin-top: 10px; color: var(--muted); font-size: .75rem; }.compress-source figcaption strong { color: var(--ink); }
.compressor-workbench .demo-config { display: flex; align-items: stretch; flex-direction: column; justify-content: center; border-top: 0; border-left: 1px solid #e2e8f1; }.demo-check { display: flex!important; align-items: center; flex-direction: row!important; gap: 8px!important; }.demo-check input { width: 20px; min-height: 20px; }
.target-demo-chips { display: flex; gap: 7px; margin-bottom: 8px; }.target-demo-chips button { min-height: 44px; padding: 8px 11px; border: 1px solid #cfdae7; border-radius: 999px; background: #fff; cursor: pointer; }.target-demo-chips .active { border-color: #0b6a52; color: #fff; background: #0b6a52; }
.compress-result { grid-column: 1 / -1; display: grid; grid-template-columns: .7fr 1.3fr 1fr; align-items: center; gap: 25px; }.result-size { display: block; margin: 7px 0; color: #0b6a52; font-size: clamp(2.4rem,5vw,4.4rem); letter-spacing: -.06em; }.compress-result > div:first-child > span { color: var(--muted); font-size: .75rem; }.size-bars label { display: flex; justify-content: space-between; margin: 8px 0 4px; color: var(--muted); font-size: .7rem; }.size-bars i { display: block; height: 13px; overflow: hidden; border-radius: 999px; background: #e6ebf2; }.size-bars b { display: block; width: 100%; height: 100%; border-radius: inherit; background: var(--blue); transition: width .4s; }.size-bars i:last-child b { background: #43c899; }.compress-result dl { margin: 0; }.compress-result dl div { display: flex; justify-content: space-between; gap: 12px; padding: 8px 0; border-bottom: 1px solid var(--line); font-size: .74rem; }.compress-result dd { margin: 0; font-weight: 850; }
@media (max-width: 980px) { .conversion-path{grid-template-columns:repeat(2,minmax(0,1fr))}.conversion-path article:nth-child(3){border-left:0;border-top:1px solid var(--line)}.conversion-path article:nth-child(4){border-top:1px solid var(--line)}.conversion-path article:nth-child(2)::after{content:"↓";right:auto;left:calc(50% - 13px);top:auto;bottom:-13px}.demo-config { grid-template-columns: repeat(2,1fr); }.compressor-workbench { grid-template-columns: 1fr; }.compressor-workbench .demo-config { border-left: 0; border-top: 1px solid #e2e8f1; }.compress-result { grid-template-columns: 1fr 1fr; }.compress-result dl { grid-column: 1/-1; } }
@media (max-width: 680px) { .batch-source-grid,.batch-result-grid,.fit-crop-compare,.target-explainer,.zip-structure,.use-grid,.conversion-heading,.conversion-path { grid-template-columns: 1fr; }.conversion-heading{gap:18px}.conversion-path article+article{border-left:0;border-top:1px solid var(--line)}.conversion-path article:not(:last-child)::after,.conversion-path article:nth-child(2)::after{content:"↓";left:calc(50% - 13px);right:auto;top:auto;bottom:-13px}.conversion-action{align-items:stretch;flex-direction:column}.conversion-action .button{width:100%;min-width:0}.batch-source-grid { grid-template-columns: 1fr 1fr; }.batch-source-grid img { height: 120px; }.demo-config { grid-template-columns: 1fr; }.related-tool { align-items: flex-start; flex-direction: column; }.compress-source figcaption { flex-direction: column; }.compress-result { grid-template-columns: 1fr; }.compress-result dl { grid-column: auto; } }

/* Site-wide legibility floor for compact product metadata and interactive demos. */
.offer-bar,
.hero-facts span,
.guide-grid small,
.resource-card .eyebrow,
.plan-label,
.audience-list span,
.access-list span,
.access-list small,
.demo-topbar small,
.demo-ready,
.demo-stepper li,
.demo-file-title p,
.demo-file-title > strong,
.demo-source-toggle,
.demo-source-table th,
.demo-result-table th,
.demo-stats span,
.demo-filters button,
.demo-search input,
.demo-status,
.batch-source-grid figcaption,
.demo-config label,
.demo-config fieldset legend,
.batch-result-grid figcaption,
.fit-crop-compare article > span,
.size-bars label,
.compress-result dl div { font-size: .75rem; }

@media (max-width: 1000px) {
    .primary-nav a[aria-current] { background: rgb(255 255 255 / 8%); border-radius: 8px; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; animation: none !important; transition-duration: .01ms !important; }
    .reveal { opacity: 1; transform: none; }
}

/* Landlord Service Charge Calculator */
.rental-demo-section { background: linear-gradient(180deg,#f5f8ff 0,#fff 100%); }
.rental-country-switch { display: flex; flex-wrap: wrap; gap: 9px; margin: 18px 0 8px; }
.rental-country-switch button { min-height: 48px; padding: 10px 16px; border: 1px solid #cdd9eb; border-radius: 13px; color: var(--ink); background: #fff; font: inherit; font-weight: 850; cursor: pointer; }
.rental-country-switch button.active { border-color: var(--blue); color: #fff; background: var(--blue); box-shadow: 0 9px 24px rgb(32 98 222 / 22%); }
.country-suggestion { min-height: 22px; margin: 0 0 16px; color: var(--muted); font-size: .78rem; }
.rental-workbench { display: grid; grid-template-columns: .72fr 1.28fr; overflow: hidden; border: 1px solid #dce5f2; border-radius: 25px; background: #fff; box-shadow: 0 26px 70px rgb(18 44 90 / 10%); }
.rental-project-card { padding: 25px; color: #eaf2ff; background: linear-gradient(155deg,#07152f,#12396c); }
.rental-project-card h3 { margin: 7px 0 16px; color: #fff; font-size: 1.6rem; }
.rental-project-card dl { margin: 0; }
.rental-project-card dl div { display: flex; justify-content: space-between; gap: 14px; padding: 11px 0; border-bottom: 1px solid rgb(255 255 255 / 13%); }
.rental-project-card dt { color: #b9c9df; }.rental-project-card dd { margin: 0; font-weight: 850; text-align: right; }
.rental-result { min-width: 0; padding: 25px; }
.rental-result-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
.rental-result-head h3 { margin: 5px 0; }.rental-result-head code { color: #5c6c84; font-size: .7rem; }
.rental-kpis { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin: 18px 0; }
.rental-kpis article { padding: 14px; border-radius: 14px; background: #eff4fb; }
.rental-kpis span,.rental-kpis strong { display: block; }.rental-kpis span { color: var(--muted); font-size: .72rem; }.rental-kpis strong { margin-top: 5px; font-size: 1.15rem; }
.rental-table-wrap { overflow-x: auto; border: 1px solid var(--line); border-radius: 13px; }
.rental-table { width: 100%; border-collapse: collapse; min-width: 560px; font-size: .78rem; }
.rental-table th,.rental-table td { padding: 11px; border-bottom: 1px solid var(--line); text-align: right; white-space: nowrap; }.rental-table th:first-child,.rental-table td:first-child { text-align: left; }.rental-table th { color: #44546d; background: #f5f8fc; }
.rental-result-actions { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 17px; }.rental-result-actions small { color: var(--muted); }
.rental-country-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 15px; }.rental-country-grid article { padding: 22px; border: 1px solid var(--line); border-radius: 18px; background: #fff; }.rental-country-grid h3 { margin: 7px 0; }.review-pending { display: inline-flex; padding: 5px 9px; border-radius: 999px; color: #7a4a00; background: #fff1cd; font-size: .72rem; font-weight: 850; }
.rental-output-list { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; }.rental-output-list article { padding: 20px; border-radius: 17px; background: #0b1c3b; color: #dce9fb; }.rental-output-list strong { display: block; margin-bottom: 7px; color: #fff; }
@media (max-width: 860px) { .rental-workbench { grid-template-columns: 1fr; }.rental-country-grid,.rental-output-list { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .rental-country-switch { display: grid; grid-template-columns: 1fr; }.rental-country-switch button { width: 100%; }.rental-kpis,.rental-country-grid,.rental-output-list { grid-template-columns: 1fr; }.rental-result-head,.rental-result-actions { align-items: stretch; flex-direction: column; } }
@media (max-width: 560px) { .rental-result-actions .button { width: 100%; max-width: 100%; white-space: normal; text-align: center; } }

/* Rental accounting visual system */
.rental-tool-page { --rental-navy:#0b2b32;--rental-teal:#106b67;--rental-mint:#dff5ec;--rental-sand:#f5efe3;--rental-line:#cfe1dd; }
.rental-tool-page .content-hero { position:relative;overflow:hidden;background:radial-gradient(circle at 82% 15%,rgb(69 183 162 / 24%),transparent 27%),linear-gradient(135deg,#071e26 0%,#0b3540 54%,#11645f 100%); }
.rental-tool-page .content-hero::after { position:absolute;right:max(4vw,24px);bottom:-34px;width:260px;height:180px;border:1px solid rgb(255 255 255 / 12%);border-radius:22px 22px 0 0;background:linear-gradient(90deg,transparent 31%,rgb(255 255 255 / 7%) 32% 34%,transparent 35% 65%,rgb(255 255 255 / 7%) 66% 68%,transparent 69%),linear-gradient(rgb(255 255 255 / 7%) 0 48%,transparent 49% 100%);content:"";transform:perspective(500px) rotateY(-7deg); }
.rental-readiness { position:relative;z-index:2;margin-top:-1px;padding:18px 0;background:#fff;border-bottom:1px solid var(--rental-line);box-shadow:0 12px 30px rgb(11 43 50 / 6%); }
.rental-readiness-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:12px; }
.rental-readiness article { display:flex;align-items:center;gap:12px;min-height:72px;padding:12px 14px;border:1px solid var(--rental-line);border-radius:15px;background:#fbfdfc; }
.rental-readiness article>span { display:grid;flex:0 0 36px;width:36px;height:36px;border-radius:11px;place-items:center;font-weight:950; }
.rental-readiness strong,.rental-readiness small { display:block; }.rental-readiness strong { color:var(--rental-navy);font-size:.85rem; }.rental-readiness small { margin-top:3px;color:#5f7577;font-size:.7rem;line-height:1.35; }
.rental-readiness .is-ready>span { color:#07594f;background:#d9f4e9; }.rental-readiness .is-pending>span { color:#825000;background:#fff0c9; }.rental-readiness .is-closed>span { color:#4f6171;background:#e9eff2; }
.rental-tool-page .rental-demo-section { background:linear-gradient(180deg,#edf7f4 0,#f9fbfa 54%,#fff 100%); }
.rental-tool-page .rental-country-switch { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px; }
.rental-tool-page .rental-country-switch button { display:flex;align-items:center;gap:11px;text-align:left;border-color:#bfd8d3;background:rgb(255 255 255 / 86%);box-shadow:0 5px 14px rgb(11 43 50 / 5%); }
.rental-tool-page .rental-country-switch button>span:first-child { font-size:1.35rem; }.rental-tool-page .rental-country-switch button>span:last-child { display:grid;gap:1px; }.rental-tool-page .rental-country-switch button small { color:#6e8182;font-size:.72rem;line-height:1.35;font-weight:750; }
.rental-tool-page .rental-country-switch button:hover { border-color:#67aaa0;transform:translateY(-1px); }.rental-tool-page .rental-country-switch button:focus-visible { outline:3px solid rgb(33 150 134 / 32%);outline-offset:2px; }
.rental-tool-page .rental-country-switch button.active { border-color:var(--rental-teal);background:linear-gradient(135deg,#0d5c5a,#0f7770);box-shadow:0 11px 27px rgb(16 107 103 / 23%); }
.rental-tool-page .rental-country-switch button.active small { color:#ccebe4; }
.rental-tool-page .rental-workbench { border-color:#bfd6d2;border-radius:26px;box-shadow:0 28px 80px rgb(11 43 50 / 13%); }
.rental-tool-page .rental-project-card { position:relative;overflow:hidden;background:linear-gradient(155deg,#08262f,#0d4b50 70%,#126861); }
.rental-building { display:grid;grid-template-columns:repeat(3,14px);grid-auto-rows:14px;gap:8px;width:max-content;margin:0 0 25px;padding:24px 19px 17px;border-radius:13px 13px 4px 4px;background:rgb(255 255 255 / 10%);box-shadow:inset 0 0 0 1px rgb(255 255 255 / 10%); }
.rental-building i { border-radius:3px;background:#a8dfcd;box-shadow:0 0 12px rgb(168 223 205 / 24%); }.rental-building i:nth-child(2),.rental-building i:nth-child(6){background:#f2d79f;}
.rental-tool-page .rental-project-card dl div { border-color:rgb(255 255 255 / 15%); }.rental-tool-page .rental-project-card dt { color:#b9d8d4; }
.rental-tool-page .rental-result { background:linear-gradient(145deg,#fff,#fbfdfc); }.rental-tool-page .rental-kpis article { border:1px solid #d6e8e4;background:#eef8f5; }.rental-tool-page .rental-kpis article:last-child { background:var(--rental-sand);border-color:#eadcc1; }
.rental-tool-page .rental-table-wrap { border-color:#d0dfdc; }.rental-tool-page .rental-table th { color:#365b5c;background:#edf6f3; }
.rental-tool-page .rental-country-grid article { position:relative;overflow:hidden;border-color:#cfe1dd;box-shadow:0 12px 30px rgb(11 43 50 / 6%); }.rental-tool-page .rental-country-grid article::after { position:absolute;right:-16px;bottom:-20px;width:70px;height:70px;border-radius:50%;background:var(--rental-mint);content:"";opacity:.65; }
.rental-tool-page .review-pending { color:#76500b;background:#fff0c8; }
.rental-tool-page .rental-output-list article { background:linear-gradient(145deg,#0a2a33,#0e4b4f);box-shadow:0 13px 28px rgb(11 43 50 / 10%); }
@media (max-width:860px){.rental-readiness-grid{grid-template-columns:1fr}.rental-tool-page .rental-country-switch{grid-template-columns:1fr 1fr}.rental-tool-page .content-hero::after{opacity:.38}}
@media (max-width:560px){.rental-tool-page .rental-country-switch{grid-template-columns:1fr}.rental-readiness{padding:12px 0}.rental-readiness article{min-height:64px}.rental-building{margin-bottom:18px}}

/* Bulk Image Watermark */
.watermark-demo-section { background: linear-gradient(180deg,#f7f5ff 0,#fff 100%); }
.watermark-workbench { display:grid;grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);overflow:hidden;border:1px solid #dddff0;border-radius:25px;background:#fff;box-shadow:0 26px 70px rgb(39 38 104 / 11%); }
.watermark-controls { display:grid;align-content:start;gap:16px;padding:24px;background:linear-gradient(160deg,#f2efff,#edf5ff); }
.watermark-controls fieldset { display:flex;gap:14px;margin:0;padding:12px;border:1px solid #cad4e8;border-radius:13px; }
.watermark-controls legend,.watermark-controls>label { color:#43516a;font-size:.78rem;font-weight:850; }
.watermark-controls>label { display:grid;gap:7px; }
.watermark-controls input[type="text"],.watermark-controls select { min-height:44px;padding:10px;border:1px solid #bccbe0;border-radius:10px;background:#fff;color:var(--ink);font:inherit; }
.watermark-controls input[type="range"] { min-height:30px;accent-color:#6544cf; }
.watermark-controls output { float:right;color:#6544cf; }
.watermark-controls .check-row { display:flex;align-items:center;gap:9px;min-height:44px; }
.watermark-demo-results { padding:22px;outline:none; }
.watermark-sample-grid { display:grid;grid-template-columns:1fr 1fr;gap:12px; }
.watermark-sample-grid figure { margin:0;overflow:hidden;border:1px solid #dfe5ef;border-radius:16px;background:#fff; }
.watermark-canvas { position:relative;display:grid;place-items:center;aspect-ratio:4/3;overflow:hidden;background:#f5f7fb; }
.watermark-canvas img { width:100%;height:100%;object-fit:contain; }
.watermark-canvas span { --mark-opacity:.45;--mark-size:15px;position:absolute;right:5%;bottom:5%;max-width:82%;padding:.35em .55em;border-radius:.35em;color:#fff;background:rgb(20 32 51 / 38%);font-size:var(--mark-size);font-weight:950;letter-spacing:.05em;line-height:1;opacity:var(--mark-opacity);text-align:center;text-shadow:0 1px 4px #07152f; }
.watermark-canvas .mark-top-left { inset:5% auto auto 5%; }.watermark-canvas .mark-top-center { inset:5% auto auto 50%;transform:translateX(-50%); }.watermark-canvas .mark-top-right { inset:5% 5% auto auto; }
.watermark-canvas .mark-middle-left { inset:50% auto auto 5%;transform:translateY(-50%); }.watermark-canvas .mark-center { inset:50% auto auto 50%;transform:translate(-50%,-50%); }.watermark-canvas .mark-middle-right { inset:50% 5% auto auto;transform:translateY(-50%); }
.watermark-canvas .mark-bottom-left { inset:auto auto 5% 5%; }.watermark-canvas .mark-bottom-center { inset:auto auto 5% 50%;transform:translateX(-50%); }
.watermark-canvas .mark-logo { padding:.5em .8em;background:#6544cf;border-radius:999px; }
.watermark-canvas .mark-tiled { inset:0!important;display:grid;width:100%;max-width:none;height:100%;padding:0;border-radius:0;background:repeating-linear-gradient(-28deg,transparent 0 16%,rgb(20 32 51 / 28%) 16% 25%,transparent 25% 42%);transform:none!important;place-items:center; }
.watermark-sample-grid figcaption { padding:10px;color:var(--muted);font-size:.75rem; }
.watermark-demo-summary { display:flex;justify-content:space-between;gap:16px;margin-top:16px;padding:14px;border-radius:13px;background:#f2f5fb;font-size:.78rem; }.watermark-demo-summary span { color:var(--muted); }
.watermark-demo-results.demo-applied .watermark-canvas { animation:watermark-confirm .38s ease-out; }
@keyframes watermark-confirm { 50% { box-shadow:inset 0 0 0 3px #6544cf; } }
@media (max-width:820px) { .watermark-workbench { grid-template-columns:1fr; }.watermark-controls { grid-template-columns:1fr 1fr; }.watermark-controls fieldset,.watermark-controls .button { grid-column:1/-1; } }
@media (max-width:580px) { .watermark-controls,.watermark-sample-grid { grid-template-columns:1fr; }.watermark-demo-summary { flex-direction:column; } }

/* Deterministic PDF tools */
.pdf-demo-section { background:linear-gradient(180deg,#f3f7ff,#fff); }
.pdf-workbench { display:grid;grid-template-columns:minmax(230px,.55fr) minmax(0,1.45fr);overflow:hidden;border:1px solid #d8e2f1;border-radius:25px;background:#fff;box-shadow:0 25px 65px rgb(18 46 92 / 11%); }
.pdf-demo-controls { display:grid;align-content:start;gap:17px;padding:24px;background:linear-gradient(155deg,#07152f,#12396c);color:#eaf2ff; }
.pdf-demo-controls>label { display:grid;gap:7px;color:#d5e2f5;font-size:.78rem;font-weight:850; }
.pdf-demo-controls input,.pdf-demo-controls select { width:100%;min-height:44px;padding:10px;border:1px solid #8ba2c4;border-radius:10px;background:#fff;color:#07152f;font:inherit; }
.pdf-demo-controls .demo-check { display:flex;align-items:flex-start;gap:9px;line-height:1.45; }.pdf-demo-controls .demo-check input { width:20px;min-height:20px; }
.pdf-order-actions { display:grid;gap:10px; }.pdf-order-actions button { min-height:44px;border:1px solid rgb(255 255 255 / 35%);border-radius:10px;color:#fff;background:rgb(255 255 255 / 8%);font:inherit;font-weight:800;cursor:pointer; }
.pdf-page-stage { padding:25px;outline:none;background:#edf2f8; }
.pdf-page-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:12px; }
.pdf-page-grid article { position:relative;display:flex;flex-direction:column;aspect-ratio:.707;padding:13px;border:1px solid #cfd9e7;border-radius:5px;background:#fff;box-shadow:0 8px 18px rgb(26 49 85 / 9%);transition:transform .2s; }
.pdf-sheet-title { margin-bottom:14px;color:#132b52;font-size:.72rem;font-weight:900; }.pdf-page-grid i { display:block;height:6px;margin:5px 0;border-radius:9px;background:#e1e7ef; }.pdf-page-grid i:nth-of-type(2){width:83%}.pdf-page-grid i:nth-of-type(3){width:66%}
.pdf-page-grid strong { margin-top:auto;color:#34527e;font-size:.65rem;text-align:center; }
.pdf-demo-summary { display:flex;justify-content:space-between;gap:15px;margin-top:18px;padding:14px;border-radius:13px;background:#fff;font-size:.78rem; }.pdf-demo-summary span { color:var(--muted); }
.pdf-workbench[data-position^="top"] .pdf-page-grid strong { order:-1;margin:0 0 auto; }.pdf-workbench[data-position$="left"] .pdf-page-grid strong { text-align:left; }.pdf-workbench[data-position$="right"] .pdf-page-grid strong { text-align:right; }
@media (max-width:820px) { .pdf-workbench { grid-template-columns:1fr; }.pdf-page-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:520px) { .pdf-page-stage { padding:14px; }.pdf-demo-summary { flex-direction:column; } }

.procurement-demo-section{background:linear-gradient(180deg,#eef4ff 0,#f8fbff 100%)}
.procurement-demo{display:grid;grid-template-columns:minmax(240px,.34fr) minmax(0,1fr);gap:24px;align-items:start}.procurement-source,.procurement-result{background:#fff;border:1px solid #d8e2f2;border-radius:24px;padding:24px;box-shadow:0 18px 50px rgba(18,49,93,.08)}.procurement-source{display:grid;gap:14px}.document-chip{display:grid;gap:5px;width:100%;padding:16px;text-align:left;border:1px solid #cbd8ec;border-radius:14px;background:#f8fbff;color:#15233d}.document-chip.active{border-color:#2367c9;box-shadow:0 0 0 3px rgba(35,103,201,.12)}.document-chip span{color:#64748b;font-size:.88rem}.procurement-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.procurement-summary article{display:grid;gap:4px;padding:16px;border-radius:15px;background:#f5f8fd}.procurement-summary strong{font-size:1.5rem;color:#102f5c}.procurement-summary small{color:#64748b}.procurement-table{display:grid;border:1px solid #dbe4f1;border-radius:15px;overflow:hidden}.procurement-table [role=row]{display:grid;grid-template-columns:.6fr 1.5fr 1fr 1fr;gap:12px;padding:14px;border-top:1px solid #e5ebf4}.procurement-table .table-head{border-top:0;background:#102f5c;color:#fff;font-weight:700}.finding{display:block;width:max-content;margin-bottom:4px;padding:4px 8px;border-radius:999px;font-size:.76rem}.finding.warning{background:#fff1d6;color:#754500}.finding.danger{background:#ffe3e0;color:#8b1e16}.finding.review{background:#e7eafe;color:#303b83}@media(max-width:760px){.procurement-demo{grid-template-columns:1fr}.procurement-summary{grid-template-columns:1fr}.procurement-table [role=row]{grid-template-columns:1fr}.procurement-table .table-head{display:none}}

/* Result-first platform navigation, homepage and tool directory. */
[hidden]{display:none!important}.platform-home .hero{min-height:0}.platform-hero{padding:clamp(58px,7vw,86px) 0}.platform-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);gap:clamp(34px,6vw,80px);align-items:center}.platform-hero-copy h1{max-width:760px;margin:0;font-size:clamp(2.7rem,5vw,4.9rem);line-height:.98;letter-spacing:-.058em}.platform-hero-copy .hero-lead{margin:24px 0 28px}.finder-label{display:block;margin-bottom:9px;color:#fff;font-size:.88rem;font-weight:850}.platform-hero .hero-search{grid-template-columns:auto 1fr auto;box-shadow:0 20px 50px rgb(0 0 0 / 24%)}.platform-hero .hero-search a{display:inline-flex;min-height:46px;align-items:center;padding:8px 15px;color:#fff;background:var(--blue);border-radius:10px;font-size:.82rem;font-weight:850;text-decoration:none}.task-chips button{min-height:44px;padding-inline:14px;font:inherit;font-size:.78rem;font-weight:800}.task-chips button[aria-pressed=true]{color:#07152f;background:#fff;border-color:#fff}.finder-results{display:grid;gap:10px;align-content:center}.finder-result{display:flex;min-height:78px;align-items:center;gap:14px;padding:13px 15px;color:var(--ink);background:rgb(255 255 255 / 96%);border:1px solid rgb(255 255 255 / 60%);border-radius:15px;box-shadow:0 12px 34px rgb(0 0 0 / 16%);text-decoration:none;transition:transform .18s ease,border-color .18s ease}.finder-result:not([data-featured]){display:none}.finder-ready .finder-result{display:flex}.finder-result:hover{border-color:#8eb7ff;transform:translateX(4px)}.finder-result>span:nth-child(2){min-width:0;flex:1}.finder-result strong,.finder-result small{display:block}.finder-result small{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:3px;overflow:hidden;color:var(--muted);font-size:.75rem;line-height:1.35}.finder-result>span:last-child{color:var(--blue);font-size:1.2rem;font-weight:900}.platform-tool-icon{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;color:#fff;background:linear-gradient(145deg,#1766d8,#664bd5);border-radius:12px;font-size:1rem;font-weight:950;box-shadow:0 8px 18px rgb(29 94 195 / 20%)}.compact-section{padding-block:clamp(56px,7vw,78px)}.compact-heading{margin-bottom:26px}.compact-heading h2{font-size:clamp(2rem,3.2vw,3rem)}.job-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.job-grid a{display:grid;min-height:142px;align-content:start;gap:7px;padding:18px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-soft);text-decoration:none}.job-grid a:hover{border-color:#93add0;transform:translateY(-2px)}.job-grid a>span{display:grid;width:36px;height:36px;place-items:center;color:var(--blue);background:var(--ice);border-radius:10px;font-weight:950}.job-grid small{color:var(--muted);line-height:1.4}.home-tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.home-tool-card{display:grid;grid-template-columns:auto 1fr;align-content:start;gap:8px 14px;padding:22px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-soft)}.home-tool-card .eyebrow{align-self:center;margin:0}.home-tool-card h3,.home-tool-card>p:not(.eyebrow),.home-tool-card>a{grid-column:1/-1}.home-tool-card h3{margin:8px 0 0;font-size:1.25rem;letter-spacing:-.025em}.home-tool-card>p:not(.eyebrow){min-height:58px;margin:0;color:var(--muted);line-height:1.55}.home-tool-card>a{display:inline-flex;width:fit-content;min-height:44px;align-items:center;color:var(--blue);font-weight:850;text-decoration:none}.platform-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:0;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow-soft);list-style:none}.platform-steps li{display:flex;gap:15px;min-height:150px;padding:24px}.platform-steps li+li{border-left:1px solid var(--line)}.platform-steps li>span{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;color:#fff;background:var(--blue);border-radius:50%;font-weight:950}.platform-steps strong{font-size:1.03rem}.platform-steps p{margin:7px 0 0;color:var(--muted);line-height:1.55}.platform-trust{padding-block:clamp(60px,7vw,82px);color:#fff;background:linear-gradient(135deg,#07152f,#0d3167)}.platform-trust .section-heading h2{color:#fff}.text-link-light{color:#dce9ff}.platform-trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.platform-trust-grid article{padding:20px;border:1px solid rgb(255 255 255 / 15%);border-radius:16px;background:rgb(255 255 255 / 6%)}.platform-trust-grid article>span{display:grid;width:38px;height:38px;place-items:center;color:#fff;background:rgb(90 146 244 / 22%);border-radius:10px}.platform-trust-grid h3{margin:18px 0 8px;font-size:1rem}.platform-trust-grid p{margin:0;color:#c2d0e4;font-size:.86rem;line-height:1.55}.closed-access{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px;padding:26px;border:1px solid #efc66a;border-radius:18px;background:#fff7df}.closed-access-icon{display:grid;width:48px;height:48px;place-items:center;color:#805200;background:#ffe7a8;border-radius:14px}.closed-access .eyebrow{margin:0 0 5px;color:#805200}.closed-access h2{margin:0;font-size:clamp(1.35rem,2.4vw,2rem)}.closed-access p{margin:6px 0 0;color:#6c5b37}.closed-access>div:last-child{display:grid;gap:6px;justify-items:center}.home-guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.home-guide-grid a{display:grid;min-height:150px;align-content:start;gap:8px;padding:22px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:16px;text-decoration:none}.home-guide-grid a>span{color:var(--blue);font-size:.75rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.home-guide-grid strong{font-size:1.05rem}.home-guide-grid small{color:var(--muted);line-height:1.5}.directory-section{padding-top:58px}.directory-panel{margin-bottom:24px;padding:22px;border:1px solid var(--line);border-radius:18px;background:#f7f9fd}.directory-panel>label{display:block;margin-bottom:8px;font-weight:850}.directory-search{grid-template-columns:auto 1fr auto}.directory-search .button{min-height:44px;padding-block:8px}.directory-filters{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.directory-filters fieldset{min-width:0;margin:0;padding:0;border:0}.directory-filters legend{margin-bottom:8px;color:#43526a;font-size:.78rem;font-weight:900}.directory-filters fieldset>div{display:flex;flex-wrap:wrap;gap:7px}.directory-filters button{min-height:44px;padding:8px 13px;color:#263958;background:#fff;border:1px solid #c9d5e6;border-radius:999px;font:inherit;font-size:.78rem;font-weight:820;cursor:pointer}.directory-filters button[aria-pressed=true]{color:#fff;background:#164f9f;border-color:#164f9f}.directory-count{min-height:22px;margin:15px 0 0;color:var(--muted);font-size:.84rem;font-weight:800}.directory-no-results{margin-bottom:24px;padding:28px;border:1px dashed #b3c2d7;border-radius:18px;text-align:center}.directory-no-results h2{margin-top:0}.directory-category-nav{margin-bottom:28px}.category-pills{display:flex;flex-wrap:wrap;gap:8px}.category-pill{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;color:#263958;background:#fff;border:1px solid #c9d5e6;border-radius:999px;font-size:.82rem;font-weight:820;text-decoration:none;transition:background .15s,border-color .15s}.category-pill:hover{background:#eef4fd;border-color:#93add0}.pill-count{display:inline-flex;min-width:22px;height:22px;align-items:center;justify-content:center;padding:0 6px;color:#fff;background:#164f9f;border-radius:999px;font-size:.68rem;font-weight:900}.directory-category-group{margin-bottom:36px}.directory-category-heading{margin:0 0 18px;padding-bottom:12px;border-bottom:2px solid var(--line);color:#102f5c;font-size:1.4rem;letter-spacing:-.02em;scroll-margin-top:80px}.platform-tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.platform-tool-card{display:flex;min-width:0;flex-direction:column;padding:22px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow-soft)}.platform-tool-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.prepared-status{display:inline-flex;align-items:center;gap:6px;color:#0b684d;font-size:.73rem;font-weight:850}.prepared-status>span{color:#159568}.platform-tool-card h3{margin:17px 0 8px;font-size:1.28rem;line-height:1.15;letter-spacing:-.03em}.platform-tool-card>p:not(.platform-tool-inputs){min-height:66px;margin:0;color:var(--muted);line-height:1.55}.platform-tool-fit{margin-top:16px;padding:10px 13px;border-radius:12px;background:#f1f5fb;color:var(--muted);font-size:.82rem;line-height:1.4}.platform-tool-fit span{color:var(--blue);font-size:.72rem;font-weight:900}.platform-tool-inputs{min-height:43px;margin:14px 0;color:var(--muted);font-size:.78rem;line-height:1.45}.platform-tool-card .button{width:100%;margin-top:auto}.content-browse-link{display:inline-flex;min-height:44px;align-items:center;margin-top:10px;color:#d7e6ff;font-weight:850;text-decoration:none}.landing-facts span{display:grid;flex:1 1 210px;gap:3px;text-align:left}.landing-facts b{color:#8eb7ff;font-size:.65rem;letter-spacing:.08em;text-transform:uppercase}.footer-grid{grid-template-columns:1.35fr repeat(3,.85fr)}
@media(max-width:980px){.platform-hero-grid{grid-template-columns:1fr}.finder-results{grid-template-columns:1fr 1fr}.job-grid{grid-template-columns:repeat(3,1fr)}.home-tool-grid,.platform-tool-grid{grid-template-columns:1fr 1fr}.platform-trust-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.footer-brand{grid-column:1/-1}}
@media(max-width:680px){.platform-home .offer-bar{min-height:48px;flex-wrap:wrap;gap:3px 8px;padding-block:5px}.platform-home .offer-bar>span:nth-of-type(2){display:inline}.compact-section{padding-block:42px}.platform-hero{padding-block:44px}.platform-hero-grid{min-width:0}.platform-hero-copy h1{overflow-wrap:normal;font-size:clamp(2.35rem,11vw,3rem)}.platform-hero .hero-search{grid-template-columns:auto 1fr;padding-right:10px}.platform-hero .hero-search a{grid-column:1/-1;justify-content:center}.finder-results{grid-template-columns:1fr}.platform-trust-grid{grid-template-columns:1fr 1fr}.finder-result{min-width:0;min-height:72px;padding:11px}.finder-result small{display:none}.finder-result strong{overflow-wrap:anywhere}.home-tool-grid,.platform-tool-grid,.platform-steps,.home-guide-grid,.directory-filters{grid-template-columns:1fr}.home-tool-card{padding:18px}.home-tool-card>p:not(.eyebrow){min-height:0}.job-grid{grid-template-columns:1fr 1fr}.job-grid a{min-height:128px}.platform-steps li{min-height:0;padding:20px}.platform-steps li+li{border-top:1px solid var(--line);border-left:0}.platform-trust{padding-block:48px}.platform-trust-grid article{padding:16px}.closed-access{grid-template-columns:1fr}.closed-access>div:last-child{justify-items:stretch}.directory-panel{padding:16px}.directory-search{grid-template-columns:auto 1fr}.directory-search .button{grid-column:1/-1}.category-pills{gap:6px}.category-pill{padding:6px 12px;font-size:.75rem}.directory-category-heading{font-size:1.15rem}.landing-facts span{flex-basis:100%}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-bottom{margin-top:30px}}
@media(max-width:680px){.platform-home .compact-section{padding-block:38px}}
@media(max-width:340px){.compact-section{padding-block:30px}.platform-hero{padding-block:36px}.job-grid a{min-height:110px;padding:13px}.platform-trust{padding-block:38px}.home-tool-card{padding:16px}.task-chips{display:grid;grid-template-columns:1fr 1fr}}

/* Website Accessibility Quick Scanner */
.accessibility-demo-section{background:linear-gradient(180deg,#eef9f5 0,#f8fbff 100%)}.accessibility-demo{display:grid;grid-template-columns:minmax(240px,.36fr) minmax(0,1fr);gap:24px;align-items:start}.accessibility-demo-input,.accessibility-demo-result{border:1px solid #cfe1d9;border-radius:25px;background:#fff;box-shadow:0 20px 55px rgba(18,57,44,.09)}.accessibility-demo-input{display:grid;gap:15px;padding:25px}.accessibility-demo-input label{display:grid;gap:8px;font-weight:800}.accessibility-demo-input input{width:100%;min-height:48px;padding:11px;border:1px solid #93ad9f;border-radius:11px;background:#f6faf8;font:inherit}.accessibility-demo-input>small{color:var(--muted)}.scan-safe-list{display:grid;gap:8px;padding:16px;border-radius:14px;background:#eef8f3;color:#254d3d}.accessibility-demo-result{padding:25px;outline:none}.automated-warning{display:flex;justify-content:space-between;gap:16px;padding:13px 15px;border:2px solid #20372d;border-radius:13px;background:#f5f8f6}.automated-warning span{color:#53675e}.accessibility-score-row{display:flex;align-items:center;gap:24px;margin:24px 0}.score-ring{display:grid;grid-template-columns:auto auto;place-content:center;align-items:end;width:145px;height:145px;flex:0 0 145px;border:15px solid #45bd91;border-right-color:#dce9e3;border-radius:50%;background:#fff}.score-ring strong{font-size:2.8rem;line-height:1}.score-ring span{color:#53675e}.accessibility-score-row h3{margin:4px 0 8px;font-size:1.55rem}.accessibility-view-toggle{display:flex;gap:8px;margin-bottom:13px}.accessibility-view-toggle button{min-height:44px;padding:9px 15px;border:1px solid #98aca3;border-radius:10px;background:#fff;font:inherit;font-weight:800;cursor:pointer}.accessibility-view-toggle button.active{border-color:#166849;background:#e7f7f0;color:#0b5038}.accessibility-priorities{display:grid;gap:9px}.accessibility-priorities article{display:grid;grid-template-columns:150px 1fr auto;gap:12px;align-items:center;padding:14px;border:1px solid #dce6e1;border-radius:13px}.accessibility-priorities small{color:#5e7068}.priority{width:max-content;padding:5px 9px;border-radius:999px;font-size:.75rem;font-weight:850}.priority.urgent{background:#ffe3df;color:#8e2117}.priority.important{background:#fff0d2;color:#714700}.priority.improve{background:#e8edff;color:#304189}.accessibility-change{display:flex;justify-content:space-between;gap:14px;margin-top:16px;padding:14px;border-radius:13px;background:#102e23;color:#fff}.accessibility-change span{color:#bcd5cb}@media(max-width:820px){.accessibility-demo{grid-template-columns:1fr}.accessibility-priorities article{grid-template-columns:1fr}.automated-warning,.accessibility-change{flex-direction:column}}@media(max-width:520px){.accessibility-score-row{align-items:flex-start;flex-direction:column}.score-ring{width:125px;height:125px;flex-basis:125px}.accessibility-view-toggle{display:grid;grid-template-columns:1fr 1fr}}

/* ---- 2026 redesign layer: typography, hero, cards, motion ---- */
h1, h2, h3 { letter-spacing: -.022em; }
.hero h1, .platform-hero-copy h1 { font-size: clamp(2.45rem, 4.3vw, 4.1rem); line-height: 1.05; letter-spacing: -.03em; }
.content-hero h1 { font-size: clamp(2.25rem, 4.1vw, 3.8rem); line-height: 1.07; letter-spacing: -.03em; }
.section-heading h2 { font-size: clamp(1.8rem, 3vw, 2.6rem); letter-spacing: -.022em; line-height: 1.12; }
.compact-heading h2 { font-size: clamp(1.7rem, 2.7vw, 2.35rem); }
.demo-heading h2 { font-size: clamp(1.85rem, 3.5vw, 2.9rem); letter-spacing: -.024em; line-height: 1.08; }
.tool-final-cta h2 { font-size: clamp(1.8rem, 3.5vw, 2.85rem); letter-spacing: -.024em; line-height: 1.1; }
.guide-journey h2 { font-size: clamp(1.4rem, 2.5vw, 2.05rem); letter-spacing: -.024em; }
.result-preview-copy h2 { letter-spacing: -.024em; }
.error-page h1 { letter-spacing: -.03em; }

.hero, .content-hero {
    background:
        radial-gradient(circle at 15% -12%, rgb(38 84 178 / 55%), transparent 40%),
        radial-gradient(circle at 84% 24%, rgb(23 104 229 / 30%), transparent 42%),
        linear-gradient(158deg, #050f24, #081c40 56%, #0a2450);
}
.platform-hero { position: relative; overflow: hidden; }
.platform-hero::after {
    content: "";
    position: absolute;
    right: -170px;
    bottom: -300px;
    width: 620px;
    height: 620px;
    border-radius: 50%;
    background: radial-gradient(circle, rgb(64 141 255 / 30%), transparent 62%);
    filter: blur(38px);
    animation: hero-glow 10s ease-in-out infinite alternate;
    pointer-events: none;
}
@keyframes hero-glow { from { transform: none; } to { transform: translate3d(-80px, -60px, 0) scale(1.14); } }
@media (prefers-reduced-motion: reduce) { .platform-hero::after { animation: none; } }
.platform-hero-copy h1 {
    background: linear-gradient(112deg, #fff 55%, #a7c6ff);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

.hero-proof { display: flex; flex-wrap: wrap; gap: 8px 22px; margin: 20px 0 0; padding: 0; list-style: none; }
.hero-proof li { display: inline-flex; align-items: center; gap: 8px; color: #b9cdec; font-size: .78rem; font-weight: 700; }
.hero-proof li::before { content: "✓"; display: grid; place-items: center; width: 17px; height: 17px; flex: 0 0 auto; color: #072a1d; background: #45dcaa; border-radius: 50%; font-size: .6rem; font-weight: 900; }

.button { border-radius: 12px; }
.button-primary { background: linear-gradient(135deg, #2e7bff, #0d55db 70%); }
.button-primary:hover { background: linear-gradient(135deg, #1f6ef7, #0a4ac2 70%); }
.site-header { background: rgb(6 17 38 / 90%); border-bottom: 1px solid rgb(255 255 255 / 7%); }
.brand-mark { background: linear-gradient(140deg, #2e7bff, #6a4df0); border-radius: 11px; }
.hero-search, .platform-hero .hero-search { border-radius: 16px; }
.platform-hero .hero-search:focus-within { border-color: #7eb0ff; box-shadow: 0 0 0 4px rgb(88 148 255 / 25%), 0 20px 50px rgb(0 0 0 / 24%); }

.home-tool-card, .platform-tool-card, .job-grid a, .home-guide-grid a { transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.platform-tool-card { transition: opacity .15s ease, transform .15s ease, box-shadow .2s ease, border-color .2s ease; }
.platform-tool-card.filtered-out { opacity: 0; transform: scale(0.97); pointer-events: none; }
.platform-tool-card.filtered-out.collapsed { position: absolute; visibility: hidden; }
.home-tool-card:hover, .platform-tool-card:hover { transform: translateY(-4px); border-color: #a9c4e8; box-shadow: 0 24px 48px -20px rgb(15 45 105 / 28%); }
.home-guide-grid a:hover { transform: translateY(-3px); border-color: #a9c4e8; box-shadow: var(--shadow-soft); }

.job-grid a > span { transition: transform .2s ease; }
.job-grid a:hover > span { transform: scale(1.08); }
.job-grid a:nth-child(1) > span { color: #1766d8; background: #eaf2ff; }
.job-grid a:nth-child(2) > span { color: #08765e; background: #e5f7f1; }
.job-grid a:nth-child(3) > span { color: #7549c8; background: #f0eaff; }
.job-grid a:nth-child(4) > span { color: #a33d55; background: #fdeef1; }
.job-grid a:nth-child(5) > span { color: #3656ad; background: #ebefff; }
.job-grid a:nth-child(6) > span { color: #a65e00; background: #fff2d8; }

.platform-steps li > span { background: linear-gradient(140deg, #2e7bff, #6a4df0); box-shadow: 0 8px 18px rgb(46 90 200 / 25%); }
.finder-result { border-radius: 16px; }
.finder-result:hover { box-shadow: 0 16px 40px rgb(0 0 0 / 22%); }

/* ---- redesign v4: spotlight hero, category tabs, trust strip ---- */
.platform-hero-grid { grid-template-columns: minmax(0, 1fr) minmax(400px, 560px); }
.platform-hero-copy { position: relative; }
.platform-hero-copy .hero-lead { margin: 18px 0 22px; font-size: 1.1rem; }
.hero-proof { margin-top: 18px; }
.hero-proof li::before { content: none; }
.platform-hero-copy .hero-actions { margin-top: 22px; }

.hero-search-row { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 0; max-width: 520px; padding: 8px 8px 8px 20px; background: rgb(255 255 255 / 10%); border: 1px solid rgb(255 255 255 / 20%); border-radius: 999px; backdrop-filter: blur(8px); }
.hero-search-row svg { width: 20px; height: 20px; fill: none; stroke: #8da8d8; stroke-width: 2; stroke-linecap: round; }
.hero-search-row input { min-height: 44px; padding: 8px 14px; color: #fff; background: transparent; border: 0; font: inherit; font-size: .95rem; outline: none; }
.hero-search-row input::placeholder { color: #7b94c0; }
.hero-search-row .button { min-height: 42px; border-radius: 999px; font-size: .84rem; }
.finder-dropdown { position: absolute; z-index: 20; top: 100%; left: 0; right: 0; max-width: 520px; margin-top: 8px; padding: 10px; background: rgb(10 22 50 / 96%); border: 1px solid rgb(148 184 255 / 22%); border-radius: 16px; box-shadow: 0 24px 60px rgb(0 0 0 / 50%); backdrop-filter: blur(12px); display: none; }
.finder-dropdown.finder-open { display: grid; gap: 6px; }
.finder-dropdown .finder-result { min-height: 56px; padding: 10px 12px; border-radius: 12px; box-shadow: none; }
.finder-dropdown .finder-result small { font-size: .72rem; }
.finder-dropdown .platform-tool-icon { width: 34px; height: 34px; flex-basis: 34px; font-size: .85rem; }

.spotlight-panel { overflow: hidden; border: 1px solid rgb(148 184 255 / 22%); border-radius: 20px; background: rgb(8 20 45 / 78%); box-shadow: 0 40px 90px -30px rgb(0 0 0 / 55%), inset 0 1px 0 rgb(255 255 255 / 8%); backdrop-filter: blur(12px); }
.spotlight-bar { display: flex; align-items: center; gap: 7px; padding: 12px 16px; border-bottom: 1px solid rgb(148 184 255 / 14%); background: rgb(255 255 255 / 4%); }
.spotlight-bar i { width: 10px; height: 10px; border-radius: 50%; background: #ff5f57; }
.spotlight-bar i:nth-child(2) { background: #febc2e; }
.spotlight-bar i:nth-child(3) { background: #28c840; }
.spotlight-bar b { margin-left: 8px; color: #93a7c9; font-size: .76rem; font-weight: 800; letter-spacing: .04em; }
.spotlight-app { display: grid; grid-template-columns: .42fr .58fr; min-height: 260px; }
.spotlight-sidebar { display: grid; gap: 10px; align-content: start; padding: 16px; border-right: 1px solid rgb(148 184 255 / 12%); }
.spotlight-field { display: grid; gap: 4px; }
.spotlight-label { color: #8da8d8; font-size: .68rem; font-weight: 800; letter-spacing: .03em; }
.spotlight-upload { display: flex; align-items: center; justify-content: space-between; padding: 8px 10px; background: rgb(255 255 255 / 6%); border: 1px solid rgb(255 255 255 / 12%); border-radius: 8px; color: #c8d8f0; font-size: .76rem; font-weight: 700; }
.spotlight-ok { color: #28c840; font-size: .82rem; font-style: normal; }
.spotlight-select { padding: 8px 10px; background: rgb(255 255 255 / 6%); border: 1px solid rgb(255 255 255 / 12%); border-radius: 8px; color: #c8d8f0; font-size: .76rem; font-weight: 700; }
.spotlight-run { display:flex;align-items:center;justify-content:center;min-height: 38px; margin-top: 6px; color: #fff; background: var(--blue); border: 0; border-radius: 10px; font: inherit; font-size: .8rem; font-weight: 850; cursor: pointer;text-decoration:none; }
.spotlight-preview { padding: 14px; overflow-x: auto; }
.spotlight-table { width: 100%; border-collapse: collapse; color: #d4e0f4; font-size: .72rem; }
.spotlight-table th { padding: 7px 8px; color: #8da8d8; background: rgb(255 255 255 / 4%); font-size: .66rem; font-weight: 800; text-align: left; letter-spacing: .04em; text-transform: uppercase; }
.spotlight-table td { padding: 8px; border-top: 1px solid rgb(255 255 255 / 8%); }
.spotlight-table .mock-chip { font-size: .6rem; }
.spotlight-new td { color: #6db5ff; }
.spotlight-status { display: flex; gap: 14px; margin-top: 10px; padding-top: 10px; border-top: 1px dashed rgb(255 255 255 / 12%); }
.spotlight-status span { color: #8da8d8; font-size: .7rem; font-weight: 800; }
.spotlight-actions { margin-top: 10px; }
.spotlight-export { min-height: 34px; padding: 6px 14px; color: #fff; background: rgb(22 102 216 / 60%); border: 1px solid rgb(22 102 216 / 40%); border-radius: 8px; font: inherit; font-size: .72rem; font-weight: 850; cursor: default; }
.spotlight-thumbnail-preview{display:grid;align-content:center;min-width:0}.spotlight-thumbnail-art{position:relative;overflow:hidden;aspect-ratio:16/9;background:radial-gradient(circle at 75% 35%,#fdc75c 0 8%,transparent 9%),linear-gradient(135deg,#112f5e,#102a51 46%,#4b315f);border:1px solid rgb(255 255 255/12%);border-radius:12px;box-shadow:0 20px 45px -24px #000}.spotlight-thumbnail-art::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgb(1 8 22/.86),transparent 75%)}.spotlight-thumbnail-art::after{content:"";position:absolute;right:8%;bottom:-20%;width:42%;aspect-ratio:1;background:linear-gradient(150deg,#61a6ff,#2d57a3);border-radius:50% 50% 20% 20%}.spotlight-thumbnail-copy{position:absolute;z-index:2;top:24%;left:7%;display:grid;gap:5px;color:#fff}.spotlight-thumbnail-copy i{width:38%;height:5px;background:#53a1ff;border-radius:5px}.spotlight-thumbnail-copy strong{font-size:clamp(1.4rem,3.2vw,2.25rem);font-weight:950;line-height:.86;letter-spacing:-.05em}.spotlight-thumbnail-copy span{font-size:.67rem;font-weight:800}.spotlight-thumbnail-art>em{position:absolute;z-index:3;right:3%;bottom:4%;padding:3px 5px;color:#fff;background:#111;border-radius:4px;font-size:.58rem;font-style:normal;font-weight:900}.mkthumbnail{position:relative;overflow:hidden;aspect-ratio:16/7.5;padding:18px;background:radial-gradient(circle at 78% 30%,#ffc95c 0 8%,transparent 9%),linear-gradient(130deg,#0a244a,#153d70 55%,#573859);border-radius:9px}.mkthumbnail::after{content:"";position:absolute;right:8%;bottom:-30%;width:35%;aspect-ratio:1;background:#75adfa;border-radius:50% 50% 25% 25%}.mkthumbnail>div{position:relative;z-index:2;display:grid;gap:3px;color:#fff}.mkthumbnail i{width:20%;height:4px;background:#5ba7ff;border-radius:5px}.mkthumbnail strong{font-size:1.25rem;font-weight:950;line-height:.85;letter-spacing:-.05em}.mkthumbnail span{font-size:.55rem;font-weight:800}.mkthumbnail>em{position:absolute;z-index:3;right:3%;bottom:5%;padding:2px 4px;color:#fff;background:#111;border-radius:3px;font-size:.48rem;font-style:normal;font-weight:900}

.category-tabs { padding: 0; background: #fff; border-bottom: 1px solid var(--line); position: sticky; top: 0; z-index: 15; }
.category-tabs-track { display: flex; gap: 0; overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
.category-tabs-track::-webkit-scrollbar { display: none; }
.category-tab { display: inline-flex; align-items: center; gap: 8px; min-height: 52px; padding: 10px 20px; color: var(--muted); font-size: .86rem; font-weight: 750; text-decoration: none; white-space: nowrap; border-bottom: 2px solid transparent; transition: color .15s, border-color .15s; }
.category-tab:hover { color: var(--ink); }
.category-tab.active { color: var(--blue); border-bottom-color: var(--blue); }
.category-tab span { font-size: 1.05rem; }

.home-tool-card { display: flex; flex-direction: column; padding: 0; overflow: hidden; border-radius: 20px; }
.card-window { padding: 20px 20px 0; background: linear-gradient(165deg, var(--experience-soft, #eaf2ff), #fff 135%); border-bottom: 1px solid var(--line); }
.card-window-bar { display: flex; align-items: center; gap: 6px; padding: 0 0 12px; }
.card-window-bar i { width: 8px; height: 8px; border-radius: 50%; background: rgb(11 34 76 / 14%); }
.card-window-bar b { margin-left: 6px; overflow: hidden; color: #64769a; font-size: .68rem; font-weight: 800; text-overflow: ellipsis; white-space: nowrap; }
.card-window .card-visual { margin: 0 0 -1px; }
.card-window .preview-mock { border-bottom: 0; border-radius: 12px 12px 0 0; box-shadow: 0 -14px 34px -22px var(--experience, #1766d8); }
.card-body { display: grid; grid-template-columns: auto 1fr; gap: 6px 12px; align-items: center; padding: 18px 20px 20px; }
.card-body h3, .card-body > p:not(.eyebrow), .card-body > a { grid-column: 1 / -1; }
.card-body .platform-tool-icon { width: 34px; height: 34px; flex-basis: 34px; font-size: .85rem; }
.card-body h3 { margin: 6px 0 0; font-size: 1.16rem; }
.card-body > p:not(.eyebrow) { margin: 0; color: var(--muted); font-size: .9rem; line-height: 1.55; }
.card-body > a { display: inline-flex; min-height: 40px; align-items: center; gap: 6px; color: var(--blue); font-weight: 850; text-decoration: none; }
.card-body > a:hover { color: var(--blue-2); }

.platform-steps { margin-top: 34px; gap: 26px; overflow: visible; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.platform-steps li { position: relative; display: block; min-height: 0; padding: 30px 24px 24px; background: #fff; border: 1px solid var(--line) !important; border-radius: 18px; box-shadow: var(--shadow-soft); }
.platform-steps li > span { position: absolute; top: -19px; left: 22px; }
.platform-steps li::after { content: ""; position: absolute; top: 50%; right: -26px; width: 26px; height: 2px; background: linear-gradient(90deg, #b9ccec, #dbe6f7); }
.platform-steps li:last-child::after { display: none; }

.trust-strip { padding-block: 0; background: #f8fafe; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.trust-strip-grid { display: grid; grid-template-columns: 1.5fr repeat(4, 1fr); align-items: center; gap: 0; }
.trust-strip-grid > * { padding: 26px 20px; }
.trust-strip-grid > article { border-left: 1px solid var(--line); }
.trust-headline { display: flex; align-items: center; gap: 14px; }
.trust-headline span { display: grid; width: 44px; height: 44px; flex: 0 0 44px; place-items: center; color: var(--blue); background: var(--ice); border-radius: 12px; font-size: 1.2rem; }
.trust-headline h2 { margin: 0; font-size: 1.15rem; line-height: 1.25; letter-spacing: -.02em; }
.trust-headline p { margin: 4px 0 0; color: var(--muted); font-size: .82rem; }
.trust-strip article { display: flex; align-items: center; gap: 12px; }
.trust-strip article span { display: grid; width: 36px; height: 36px; flex: 0 0 36px; place-items: center; color: var(--blue); background: var(--ice); border-radius: 10px; font-size: 1rem; }
.trust-strip article strong { display: block; font-size: .88rem; }
.trust-strip article small { display: block; margin-top: 2px; color: var(--muted); font-size: .76rem; line-height: 1.4; }

.closed-access { border: 1px solid rgb(245 165 36 / 45%); background: linear-gradient(140deg, #0a1830, #12264a); }
.closed-access h2 { color: #fff; }
.closed-access p { color: #c3d2e8; }
.closed-access .eyebrow { color: #ffc94f; }
.closed-access-icon { color: #3d2500; background: linear-gradient(140deg, #ffc94f, #f5a524); }
.closed-access .text-link { color: #a9c8ff; }

.home-guide-grid a { position: relative; padding: 24px 44px 24px 24px; border-radius: 18px; }
.home-guide-grid a::after { content: "→"; position: absolute; top: 20px; right: 18px; color: #b6c6e0; font-weight: 900; transition: transform .2s ease, color .2s ease; }
.home-guide-grid a:hover::after { color: var(--blue); transform: translateX(3px); }
.section-soft { background: linear-gradient(180deg, #f4f8fe, #edf3fc); }
.job-grid a { min-height: 150px; gap: 9px; padding: 20px; border-radius: 18px; }
.job-grid a > span { width: 42px; height: 42px; border-radius: 12px; font-size: 1.05rem; }

@media (min-width: 1001px) {
    .primary-nav { justify-self: center; gap: 4px; padding: 5px; background: rgb(255 255 255 / 6%); border: 1px solid rgb(255 255 255 / 10%); border-radius: 999px; }
    .primary-nav a { padding: 8px 16px; border-radius: 999px; }
    .primary-nav a::after { display: none; }
    .primary-nav a:hover { background: rgb(255 255 255 / 9%); }
    .primary-nav a[aria-current] { color: #fff; background: rgb(255 255 255 / 12%); }
}
@media (max-width: 1100px) {
    .platform-hero-grid { grid-template-columns: 1fr; }
    .spotlight-panel { max-width: 660px; }
    .trust-strip-grid { grid-template-columns: repeat(4, 1fr); }
    .trust-headline { grid-column: 1 / -1; border-bottom: 1px solid var(--line); }
    .trust-strip-grid > article:nth-child(2) { border-left: 0; }
}
@media (max-width: 680px) {
    .platform-steps { grid-template-columns: 1fr; gap: 32px; }
    .platform-steps li { border-top: 1px solid var(--line) !important; }
    .platform-steps li::after { display: none; }
    .card-window { padding: 15px 15px 0; }
    .card-body { padding: 15px; }
    .hero-actions .button { flex: 1 1 auto; }
    .home-tool-card { padding: 0; }
    .spotlight-app { grid-template-columns: 1fr; }
    .spotlight-sidebar { border-right: 0; border-bottom: 1px solid rgb(148 184 255 / 12%); }
    .trust-strip-grid { grid-template-columns: 1fr 1fr; }
    .trust-strip-grid > article { border-left: 0; border-top: 1px solid var(--line); }
    .hero-search-row { max-width: 100%; }
    .finder-dropdown { max-width: 100%; }
}
@media (max-width: 420px) {
    .hero-search-row { padding-left: 14px; }
    .hero-search-row input { min-width: 0; padding-inline: 10px; }
    .hero-search-row .button { width: 44px; padding: 0; font-size: 0; }
    .hero-search-row .button::after { content: "→"; font-size: 1rem; }
}
