/* Homepage search and editorial workflows. */
.nm-site .nm-hero--intent::after { height:32px; background:linear-gradient(to bottom,transparent,var(--nm-canvas) 70%); }
.nm-site .nm-hero--intent { overflow:visible; z-index:2; }
.nm-site .nm-hero--intent .nm-hero-inner { gap:32px; padding-top:32px; padding-bottom:48px; }
.nm-site .nm-hero--intent .nm-hero-copy { min-width:0; max-width:1120px; }
.nm-site .nm-hero--intent .nm-hero-copy > p { margin-bottom:20px; }
.nm-site .nm-magic-form { display:flex; align-items:center; gap:14px; min-height:64px; padding:7px 8px 7px 24px; border:1px solid rgba(255,255,255,.65); border-radius:100px; background:#fff; box-shadow:0 18px 40px rgba(11,36,103,.18); transition:box-shadow .2s ease,transform .2s ease; }
.nm-site .nm-magic-form:focus-within { box-shadow:0 18px 40px rgba(11,36,103,.18),0 0 0 4px rgba(255,255,255,.28); }
.nm-site .nm-magic-spark { flex:none; color:#2563eb; font-size:25px; line-height:1; }
.nm-site .nm-magic-form input[type="search"] { flex:1; width:100%; min-width:0; height:48px; padding:0; border:0; outline:0; background:transparent; color:#0f172a; font:500 17px/1.5 var(--nm-font); box-shadow:none; }
.nm-site .nm-magic-form input[type="search"]::placeholder { color:#94a3b8; font-weight:400; opacity:1; }
.nm-site .nm-magic-form input[type="search"]::-webkit-search-cancel-button { cursor:pointer; }
.nm-site .nm-magic-submit { display:grid; place-items:center; width:48px; height:48px; flex:none; border:0; border-radius:50%; background:#f1f5f9; color:#94a3b8; cursor:default; transition:background-color .15s ease-out,color .15s ease-out,transform .15s ease-out,box-shadow .15s ease-out; }
.nm-site .nm-magic-submit > span { display:grid; place-items:center; width:22px; height:22px; }
.nm-site .nm-magic-submit svg { display:block; }
.nm-site .nm-magic-form.is-ready .nm-magic-submit,.nm-site .nm-magic-form.is-loading .nm-magic-submit { background:#1d4ed8; color:#fff; cursor:pointer; }
.nm-site .nm-magic-form.is-ready .nm-magic-submit:not(:disabled):hover { background:#1e40af; transform:scale(1.05); box-shadow:0 4px 14px rgba(37,99,235,.3); }
.nm-site .nm-magic-submit:focus-visible,.nm-site .nm-magic-suggestions button:focus-visible,.nm-site .nm-magic-results button:focus-visible,.nm-site .nm-magic-result-card:focus-visible { outline:2px solid #8cc0ff; outline-offset:3px; }
.nm-site .nm-magic-form.is-loading .nm-magic-submit { cursor:progress; }
.nm-site .nm-magic-form.is-loading .nm-magic-submit > span { width:20px; height:20px; border:2px solid rgba(255,255,255,.42); border-top-color:#fff; border-radius:50%; animation:nm-magic-spin .7s linear infinite; }
.nm-site .nm-magic-form.is-loading .nm-magic-submit svg { display:none; }
@keyframes nm-magic-spin { to { transform:rotate(360deg); } }
.nm-site .nm-magic-suggestions { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:16px; color:rgba(255,255,255,.75); font-size:12px; }
.nm-site .nm-magic-suggestions > span { margin-right:2px; }
.nm-site .nm-magic-suggestions button { min-height:30px; padding:5px 12px; border:1px solid rgba(255,255,255,.28); border-radius:99px; background:rgba(255,255,255,.14); color:#fff; font:500 12px/1.4 var(--nm-font); cursor:pointer; transition:background-color .18s ease,transform .18s ease; }
.nm-site .nm-magic-suggestions button:hover { background:rgba(255,255,255,.25); transform:translateY(-1px); }
.nm-site .nm-magic-thinking { margin:16px 0 0; color:#fff; font-size:13px; line-height:1.6; }
.nm-site .nm-magic-results { margin-top:20px; padding:20px; border:1px solid #e7edf7; border-radius:16px; background:#fff; color:#0f172a; box-shadow:0 20px 40px rgba(11,36,103,.14); scroll-margin-top:90px; animation:nm-magic-reveal .25s ease-out; }
@keyframes nm-magic-reveal { from { opacity:0; transform:translateY(-8px); } to { opacity:1; transform:translateY(0); } }
.nm-site .nm-magic-results-head { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.nm-site .nm-magic-results-head h2 { margin:0; color:#0f172a; font-size:19px; font-weight:700; line-height:1.4; }
.nm-site .nm-magic-results-head button { width:32px; height:32px; flex:none; border:0; border-radius:8px; background:#f1f5f9; color:#64748b; font-size:22px; line-height:1; cursor:pointer; }
.nm-site .nm-magic-results-note { margin:4px 0 16px; color:#64748b; font-size:13px; line-height:1.6; }
.nm-site .nm-magic-result-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.nm-site .nm-magic-result-card { display:grid; grid-template-columns:28px minmax(0,1fr) 16px; align-items:start; gap:10px; min-width:0; padding:16px; border:1px solid #e8edf4; border-radius:12px; background:#f8fafc; color:#0f172a; text-decoration:none; transition:border-color .18s ease,box-shadow .18s ease; }
.nm-site .nm-magic-result-card:hover { border-color:#b9cdf4; box-shadow:0 6px 18px rgba(15,41,112,.07); }
.nm-site .nm-magic-result-card strong { display:block; margin-bottom:5px; font-size:15px; font-weight:600; line-height:1.4; }
.nm-site .nm-magic-result-card small { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; color:#64748b; font-size:12px; line-height:1.5; }
.nm-site .nm-magic-result-arrow { color:#2563eb; font-size:16px; }
.nm-site .nm-hero--intent [hidden] { display:none!important; }.nm-site .nm-workflows { padding-top:32px; margin-bottom:0; background:var(--nm-canvas); }
.nm-site .nm-workflows:not([hidden]) + #popular { padding-top:64px; }
.nm-site .nm-workflows:not([hidden]) + #popular .nm-section-head { margin-top:0; }
.nm-site .nm-workflows .nm-section-head { align-items:flex-end; }
.nm-site .nm-workflow-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.nm-site .nm-workflow-card { display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:auto 1fr auto; align-items:start; gap:20px; min-width:0; padding:24px; border:1px solid var(--nm-hairline); border-radius:16px; background:#fff; color:var(--nm-ink); box-shadow:0 4px 16px rgba(0,0,0,.04); transition:border-color .18s ease,box-shadow .18s ease; }
.nm-site .nm-workflow-card-header { min-width:0; }
.nm-site .nm-workflow-promise { overflow:hidden; margin:8px 0 0; color:#94a3b8; font-size:13px; line-height:1.7; white-space:nowrap; text-overflow:ellipsis; }
.nm-site .nm-workflow-meta { display:flex; align-items:center; gap:10px; min-width:0; color:#64748b; font-size:12px; line-height:1.5; }
.nm-site .nm-workflow-meta > span { display:flex; align-items:center; gap:4px; min-width:0; }
.nm-site .nm-workflow-meta svg { display:block; width:14px; height:14px; flex:none; }
.nm-site .nm-workflow-duration { flex:none; }
.nm-site .nm-workflow-cost { padding-left:10px; border-left:1px solid var(--nm-hairline); }
.nm-site .nm-workflow-cost:first-child { padding-left:0; border-left:0; }
.nm-site .nm-workflow-cost > span { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.nm-site .nm-workflow-card-head { display:flex; align-items:center; gap:10px; min-width:0; }
.nm-site .nm-workflow-icon { display:grid; place-items:center; width:28px; height:28px; flex:none; font-size:24px; line-height:1; }
.nm-site .nm-workflow-card h3 { min-width:0; margin:0; color:var(--nm-ink); font-size:18px; font-weight:700; line-height:1.45; overflow-wrap:anywhere; }
.nm-site .nm-workflow-card-head a { color:inherit; text-decoration:none; }
.nm-site .nm-workflow-chain { display:flex; align-items:center; justify-content:center; align-self:stretch; gap:8px; min-width:0; min-height:88px; padding:16px 8px; border-radius:8px; background:#f8fafc; }
.nm-site .nm-workflow-tool { display:grid; place-items:center; width:40px; height:40px; flex:0 1 40px; min-width:32px; border-radius:8px; }
.nm-site .nm-workflow-tool:hover { background:#f1f5f9; }
.nm-site .nm-workflow-logo { position:relative; display:grid; place-items:center; width:28px; height:28px; flex:0 0 28px; overflow:hidden; border:1px solid var(--nm-hairline); border-radius:8px; background:var(--nm-surface-soft); color:var(--nm-body); font-size:12px; font-weight:600; line-height:1; }
.nm-site .nm-workflow-logo img { position:absolute; inset:0; display:block; width:100%; height:100%; padding:3px; background:var(--nm-surface); object-fit:contain; }
.nm-site .nm-workflow-chain .nm-workflow-logo { width:32px; height:32px; flex-basis:32px; }
.nm-site .nm-workflow-more { display:grid; place-items:center; width:28px; height:28px; flex:0 0 28px; border:1px solid var(--nm-hairline); border-radius:50%; background:#f3f4f6; color:#64748b; font-size:11px; font-weight:500; line-height:1; }
.nm-site .nm-workflow-arrow { flex:none; color:#94a3b8; font-size:18px; line-height:1; transition:color .18s ease,transform .18s ease; }
.nm-site .nm-workflow-foot { display:grid; grid-template-columns:minmax(0,1fr) 40px; align-items:center; gap:8px; min-width:0; color:var(--nm-muted); font-size:12px; line-height:1.6; font-variant-numeric:tabular-nums; }
.nm-site .nm-workflow-action { display:grid; place-items:center; width:40px; height:40px; font-size:22px; text-decoration:none; }
.nm-site .nm-workflow-action span { transition:transform .18s ease; }
.nm-site .nm-workflow-foot .nm-workflow-action,.nm-site .nm-workflow-guide-link { color:#2563eb; }
.nm-site .nm-workflow-guide-link { display:inline-flex; margin-top:16px; font-size:13px; font-weight:600; }
.nm-site .nm-workflow-guide-link:hover { text-decoration:underline; text-underline-offset:3px; }
.nm-site .nm-workflow-card { position:relative; isolation:isolate; }
.nm-site .nm-workflow-card-link::after { content:""; position:absolute; inset:0; z-index:1; border-radius:16px; }
.nm-site .nm-workflow-tool,.nm-site .nm-workflow-foot a { position:relative; z-index:2; }
.nm-site .nm-workflow-card:hover,.nm-site .nm-workflow-card:focus-within { border-color:#bfd3f9; box-shadow:0 4px 16px rgba(30,64,175,.07); }
.nm-site .nm-workflow-card:hover .nm-workflow-arrow,.nm-site .nm-workflow-card:focus-within .nm-workflow-arrow { color:#2563eb; transform:translateX(2px); }
.nm-site .nm-workflow-card:hover .nm-workflow-action span,.nm-site .nm-workflow-card:focus-within .nm-workflow-action span { transform:translateX(4px); }
.nm-site .nm-workflow-card a:focus-visible { outline:2px solid #2563eb; outline-offset:3px; }

@media(max-width:1199px) {
    .nm-site .nm-hero--intent .nm-brand-art { display:none; }
}
@media(max-width:1100px) {
    .nm-site .nm-workflow-grid { grid-template-columns:1fr; }
}
@media(max-width:600px) {
    .nm-site .nm-hero--intent .nm-hero-inner { padding:28px 18px 48px; }
    .nm-site .nm-workflows { padding-top:28px; }
    .nm-site .nm-workflows .nm-section-head { align-items:flex-start; flex-wrap:wrap; }
    .nm-site .nm-workflow-grid { gap:12px; }
    .nm-site .nm-workflow-card { padding:20px; }
}
@media(max-width:1100px) { .nm-site .nm-magic-result-grid { grid-template-columns:1fr; } }
@media(max-width:600px) { .nm-site .nm-magic-form { min-height:56px; padding:5px 6px 5px 16px; gap:8px; } .nm-site .nm-magic-form input[type='search'] { height:44px; font-size:14px; } .nm-site .nm-magic-submit { width:44px; height:44px; } .nm-site .nm-magic-suggestions { gap:7px; } .nm-site .nm-magic-results { padding:16px; } }
@media(prefers-reduced-motion:reduce) { .nm-site .nm-magic-form.is-loading .nm-magic-submit span,.nm-site .nm-magic-results { animation:none; } .nm-site .nm-magic-submit,.nm-site .nm-magic-suggestions button,.nm-site .nm-magic-result-card { transition:none; } }
@media(prefers-reduced-motion:reduce) { .nm-site .nm-workflow-arrow,.nm-site .nm-workflow-action span { transition:none; transform:none!important; } }

