.clients .client[hidden]{display:none}
.portal-tools{margin:28px 0 0;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 18px;box-shadow:0 4px 20px rgba(13,27,47,.035)}
.portal-tools__row{display:flex;align-items:center;gap:12px}
.portal-search-label{font-size:13px;font-weight:700;color:var(--navy);white-space:nowrap}
.portal-search{width:100%;min-width:0;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);font:inherit;font-size:15px;padding:10px 12px;outline:none}
.portal-search:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(184,134,43,.14)}
.portal-search-status{margin-top:8px;color:var(--muted);font-size:12.5px}
.portal-empty{display:none;margin-top:14px;padding:18px;text-align:center;background:#fff;border:1px dashed var(--line);border-radius:10px;color:var(--muted)}
.portal-empty.show{display:block}
.qr-overlay[aria-hidden="true"]{display:none}
.qr-box{box-shadow:0 22px 70px rgba(0,0,0,.32)}
.qrbtn:focus-visible,.qclose:focus-visible,.fbtn:focus-visible,.client a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
body.qr-open{overflow:hidden}
@media(max-width:520px){.portal-tools__row{align-items:stretch;flex-direction:column;gap:7px}.portal-search-label{align-self:flex-start}.portal-tools{padding:14px}.actions{width:100%;justify-content:flex-end}.client .leftlink{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.client{transition:none}}

/* 2026-08-31 directory redesign — keeps every existing client route intact. */
:root{--navy:#0b192d;--navy-2:#10243f;--gold:#c18a2f;--cream:#f3efe6;--paper:#fbfaf7;--ink:#152033;--muted:#667080;--line:#d9d4ca}
html{scroll-behavior:smooth}
body{min-height:100dvh;background:radial-gradient(circle at 82% -8%,rgba(193,138,47,.16),transparent 34rem),linear-gradient(180deg,#ede8df 0,#f7f4ee 26rem,#f3efe7 100%);color:var(--ink)}
header.hero{position:relative;overflow:hidden;padding:clamp(64px,9vw,118px) 24px 82px;text-align:left;background:radial-gradient(circle at 78% 30%,rgba(193,138,47,.22),transparent 24rem),linear-gradient(135deg,#081425 0%,#102643 68%,#0b192d 100%)}
header.hero::before{content:"R0";position:absolute;right:-.04em;bottom:-.33em;color:rgba(255,255,255,.035);font:700 clamp(220px,34vw,520px)/1 Georgia,serif;letter-spacing:-.11em;pointer-events:none}
header.hero>*{position:relative;z-index:1;width:min(1120px,100%);margin-left:auto;margin-right:auto}
.kicker{margin-bottom:18px;color:#e0b861;font:700 11px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.22em}
h1{max-width:760px;color:#fff;font-size:clamp(46px,7vw,80px);line-height:.95;letter-spacing:-.045em;text-wrap:balance}
.sub{max-width:54ch;margin-top:22px;color:#c9d0dc;font-size:clamp(16px,2vw,20px);line-height:1.55}
.wrap{max-width:1120px;padding:0 24px 100px}
.portal-tools{position:relative;z-index:2;margin:-36px 0 30px;padding:16px 18px;border:1px solid rgba(255,255,255,.7);border-radius:8px;background:rgba(255,255,255,.9);box-shadow:0 24px 60px rgba(11,25,45,.12);backdrop-filter:blur(18px)}
.portal-tools__row{gap:18px}.portal-search-label{font:700 11px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em;text-transform:uppercase}
.portal-search{min-height:52px;border:0;border-left:1px solid var(--line);border-radius:0;background:transparent;padding:10px 18px;font-size:17px}
.portal-search:focus{border-color:var(--gold);box-shadow:none}
.portal-search-status{padding-left:148px;color:#858c96;font:500 11px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.06em;text-transform:uppercase}
.clients{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:0}
.client{position:relative;display:grid;grid-template-columns:minmax(0,1fr);align-content:space-between;min-height:170px;overflow:hidden;border:1px solid rgba(13,27,47,.11);border-radius:7px;padding:24px 25px;background:rgba(255,255,255,.82);box-shadow:0 10px 28px rgba(13,27,47,.045);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.client::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold);transform:scaleY(.2);transform-origin:top;transition:transform .22s ease}
.client:hover{border-color:rgba(193,138,47,.7);transform:translateY(-3px);box-shadow:0 18px 42px rgba(13,27,47,.09)}
.client:hover::before{transform:scaleY(1)}
.client .leftlink{align-items:flex-start!important;gap:17px!important}.emoji{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border:1px solid var(--line);border-radius:5px;background:#f5f1e9;font-size:22px}
.client .name{color:var(--navy);font-family:Georgia,"Times New Roman",serif;font-size:21px;line-height:1.15;letter-spacing:-.02em}
.client .desc{max-width:55ch;margin-top:7px;color:var(--muted);font-size:13.5px;line-height:1.45}
.actions{width:100%;justify-content:flex-end;margin-top:20px;padding-top:14px;border-top:1px solid #e7e2d9}
.open{min-height:40px;display:inline-flex;align-items:center;color:#95661f;font:700 11px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.1em;text-transform:uppercase}
.qrbtn{min-height:40px;border-radius:4px;background:transparent;font:700 10px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em}
.feature{grid-column:1/-1;border-radius:8px}.portal-empty{border-radius:7px}
footer{margin-top:58px;color:#858c96;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;text-transform:uppercase}
@media(max-width:760px){header.hero{padding:54px 20px 70px}.wrap{padding-left:14px;padding-right:14px}.portal-tools{margin-top:-28px}.portal-search{border-left:0;border-top:1px solid var(--line);padding-left:0}.portal-search-status{padding-left:0}.clients{grid-template-columns:1fr}.client{min-height:0;padding:20px}.client .leftlink{flex-basis:auto}.actions{margin-left:0}.emoji{width:40px;height:40px;flex-basis:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.client,.client::before{transition:none}}
