/* Generated by scripts/site/build_assets.js from assets/src/css/util.css. Do not edit; edit the source. */
/* Utility pages: 404, search, thank you — builds on base, v3, pages, info */
.adm-root .nf { display: grid; grid-template-columns: .9fr 1.1fr; gap: 50px; align-items: center; padding-top: 70px; padding-bottom: 110px; }
.adm-root .nf h1 { font-size: 56px; margin: 12px 0 16px; } .adm-root .nf h1 .hl { white-space: normal; }
.adm-root .nf-art svg { width: 100%; max-width: 420px; display: block; margin: 0 auto; color: var(--ink); }
.adm-root .nf-art .sg1 { transform-origin: 160px 88px; animation: adm-sway1 4s ease-in-out infinite; } .adm-root .nf-art .sg2 { transform-origin: 160px 140px; animation: adm-sway1 5s ease-in-out infinite reverse; }
.adm-root .nf-art .sg3 { transform-origin: 160px 180px; animation: adm-tilt 2.6s ease-in-out infinite; }
@keyframes adm-sway1 { 50% { transform: rotate(-3deg); } } @keyframes adm-tilt { 0%, 100% { transform: rotate(8deg); } 50% { transform: rotate(14deg); } }
.adm-root .nf-s { display: flex; gap: 8px; padding: 6px; border-radius: 16px; background: var(--bg2); border: 1.5px solid var(--line2); margin-top: 24px; max-width: 520px; }
.adm-root .nf-s:focus-within { border-color: var(--hl); }
.adm-root .nf-s input { flex: 1; min-width: 0; border: 0; background: none; color: var(--ink); font: 500 16px 'Inter Tight'; padding: 0 14px; } .adm-root .nf-s input:focus { outline: none; } .adm-root .nf-s .btn { height: 48px; }
.adm-root .nf-s.big { max-width: 720px; } .adm-root .nf-s.big .btn { height: 52px; }
.adm-root .nf-l { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.adm-root .nf-l a { font-size: 14px; font-weight: 600; padding: 8px 14px; border-radius: 99px; border: 1px solid var(--line2); background: var(--card); } .adm-root .nf-l a:hover { border-color: var(--hl); }

.adm-root .srch { padding-top: 60px; padding-bottom: 100px; max-width: 900px; } .adm-root .srch h1 { font-size: 46px; margin: 12px 0 0; }
.adm-root .sr-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 0 10px; }
.adm-root .sr-tabs button { font: 600 13.5px 'Inter Tight'; padding: 8px 14px; border-radius: 99px; border: 1.5px solid var(--line2); background: var(--card); color: var(--ink); cursor: pointer; }
.adm-root .sr-tabs button[aria-pressed="true"] { background: var(--ink); color: var(--bg); border-color: var(--ink); }
.adm-root #sres section { margin-top: 26px; } .adm-root #sres h2 { font: 700 13px 'Inter Tight'; text-transform: uppercase; letter-spacing: .1em; color: var(--mut); margin-bottom: 10px; }
.adm-root .sr { display: block; padding: 16px 18px; border-radius: 16px; border: 1px solid var(--line); background: var(--card); margin-bottom: 8px; transition: border-color .3s; }
.adm-root .sr:hover { border-color: var(--hl); } .adm-root .sr b { display: block; font-size: 16.5px; margin-bottom: 4px; } .adm-root .sr span { color: var(--mut); font-size: 14px; line-height: 1.5; }
.adm-root .sr mark { background: color-mix(in srgb, var(--gold) 35%, transparent); color: inherit; border-radius: 3px; padding: 0 2px; }
.adm-root .sr-none { margin-top: 30px; color: var(--mut); } .adm-root .sr-none b { display: block; color: var(--ink); font-size: 18px; margin-bottom: 6px; } .adm-root .sr-none a { color: var(--hl); text-decoration: underline; }

.adm-root .ty { max-width: 680px; text-align: center; padding-top: 80px; padding-bottom: 120px; }
.adm-root .ty-ic svg { width: 110px; height: 110px; }
.adm-root .tyc { stroke-dasharray: 327; stroke-dashoffset: 327; animation: adm-tyd .9s var(--ease) forwards; } .adm-root .tyk { stroke-dasharray: 80; stroke-dashoffset: 80; animation: adm-tyd .5s .8s var(--ease) forwards; }
@keyframes adm-tyd { to { stroke-dashoffset: 0; } }
.adm-root .ty h1 { font-size: 46px; margin: 18px 0 12px; } .adm-root .ty .lead { margin: 0 auto; }
.adm-root .ty-st { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 30px 0; text-align: left; }
.adm-root .ty-st div { padding: 18px; border-radius: 18px; background: var(--card); border: 1px solid var(--line); } .adm-root .ty-st b { display: block; margin-bottom: 4px; } .adm-root .ty-st span { color: var(--mut); font-size: 14.5px; }
.adm-root .ty-b { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; }

@media (max-width: 900px) { .adm-root .nf { grid-template-columns: 1fr; gap: 20px; padding-top: 40px; } .adm-root .nf h1, .adm-root .srch h1, .adm-root .ty h1 { font-size: 36px; } .adm-root .nf-art svg { max-width: 300px; } }
@media (max-width: 600px) { .adm-root .ty-st { grid-template-columns: 1fr; } .adm-root .nf-s { flex-direction: column; background: none; border: 0; padding: 0; } .adm-root .nf-s input { height: 52px; border-radius: 14px; background: var(--bg2); border: 1.5px solid var(--line2); } }
@media (prefers-reduced-motion: reduce) { .adm-root .tyc, .adm-root .tyk { stroke-dashoffset: 0; } }

/* Plugin additions: phone search box keeps its height in the column layout; filters are links (work without JavaScript) */
@media (max-width: 600px) { .adm-root .nf-s input { flex: none; } }
.adm-root .sr-tabs a { font: 600 13.5px 'Inter Tight'; padding: 8px 14px; border-radius: 99px; border: 1.5px solid var(--line2); background: var(--card); color: var(--ink); }
.adm-root .sr-tabs a:hover { border-color: var(--hl); }
.adm-root .sr-tabs a[aria-current="true"] { background: var(--ink); color: var(--bg); border-color: var(--ink); }
