/* Forms & surveys for members (includes/site/forms_hub.php): My Account → Forms & surveys cards and the Contact page's
   form switch. Brand Style Guide colours only (--brand-*). Mobbin: incident.io Forms grid, Delphi link rows, Base44 contact switch. */
.fh,.cf-switch{--fh-p:var(--brand-primary,#241236);--fh-p2:var(--brand-primary-2,#3a1f55);--fh-acc:var(--brand-accent,#d9b24c);--fh-acc-ink:var(--brand-accent-ink,#896416);--fh-ink:var(--brand-text,#1d1a21);--fh-mut:var(--brand-muted,#6b6570);--fh-line:var(--brand-line,#e6e2ea);--fh-soft:var(--brand-surface,#f4f1f7);--fh-bg:var(--brand-bg,#fff)}

/* ---------- My Account: Forms & surveys ---------- */
.fh{margin-top:20px}
.fh-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.fh-head h2{margin:0 0 4px}
.fh-find{position:relative;display:flex;align-items:center;flex:0 1 260px}
.fh-find svg{position:absolute;left:12px;width:18px;height:18px;fill:none;stroke:var(--fh-mut);stroke-width:2;stroke-linecap:round;pointer-events:none}
.fh-find input{width:100%;min-height:42px;padding:0 12px 0 38px;border:1px solid var(--fh-line);border-radius:12px;background:var(--fh-bg);font:inherit;font-size:15px;color:var(--fh-ink)}
.fh-find input:focus{outline:0;border-color:var(--fh-p);box-shadow:0 0 0 3px color-mix(in srgb,var(--fh-p) 13%,transparent)}
.fh-filters{display:inline-flex;gap:4px;padding:4px;margin-bottom:16px;border-radius:12px;background:var(--fh-soft)}
.fh-filters button{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 14px;border:0;border-radius:9px;background:none;color:var(--fh-mut);font:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s,color .2s}
.fh-filters button em{font-style:normal;font-size:12px;opacity:.75}
.fh-filters button[aria-pressed=true]{background:var(--fh-bg);color:var(--fh-ink);box-shadow:0 1px 3px color-mix(in srgb,var(--fh-ink) 12%,transparent)}
.fh-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin:0;padding:0;list-style:none}
.fh-grid li{display:flex;animation:fh-in .35s ease both}
.fh-grid li[hidden]{display:none}
@keyframes fh-in{from{opacity:0;transform:translateY(6px)}}
.fh-card{position:relative;display:grid;grid-template-columns:auto 1fr;grid-template-rows:1fr auto;gap:12px 14px;width:100%;padding:18px;border:1px solid var(--fh-line);border-radius:16px;background:var(--fh-bg);color:var(--fh-ink)!important;text-decoration:none;transition:border-color .2s,box-shadow .2s,transform .2s}
.fh-card:hover{border-color:color-mix(in srgb,var(--fh-p) 35%,var(--fh-line));box-shadow:0 10px 28px color-mix(in srgb,var(--fh-p) 10%,transparent);transform:translateY(-2px)}
.fh-card:focus-visible{outline:3px solid color-mix(in srgb,var(--fh-p) 40%,transparent);outline-offset:2px}
.fh-ico{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:color-mix(in srgb,var(--fh-p) 9%,var(--fh-bg));color:var(--fh-p)}
.fh-ico--survey{background:color-mix(in srgb,var(--fh-acc) 20%,var(--fh-bg));color:var(--fh-acc-ink)}
.fh-ico svg,.fh-meta svg,.fh-go svg,.fh-find svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.fh-ico svg{width:22px;height:22px}
.fh-text{display:grid;gap:6px;align-content:start;min-width:0}
.fh-text strong{font-size:16px;line-height:1.3}
.fh-about{font-size:14px;line-height:1.5;color:var(--fh-mut)}
.fh-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:13px;color:var(--fh-mut)}
.fh-meta>span{display:inline-flex;align-items:center;gap:4px}
.fh-meta svg{width:14px;height:14px}
.fh-tag{height:22px;padding:0 8px;border-radius:11px;background:var(--fh-soft);color:var(--fh-ink);font-size:12px;font-weight:700}
.fh-sent{color:var(--fh-p);font-weight:600}
.fh-ro{display:inline-flex;align-items:center;gap:6px;height:22px;padding:0 9px;border-radius:11px;background:color-mix(in srgb,var(--brand-accent,#d9b24c) 22%,var(--brand-bg,#fff));color:var(--brand-accent-ink,#896416);font-size:12px;font-weight:700}
.fh-ro i{width:7px;height:7px;border-radius:50%;background:var(--brand-accent,#d9b24c);animation:fh-ro-pulse 1.6s ease-in-out infinite}
@keyframes fh-ro-pulse{50%{opacity:.35;transform:scale(.7)}}
.fh-go{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;padding-top:12px;border-top:1px solid var(--fh-line);font-size:14px;font-weight:700;color:var(--fh-p)}
.fh-go svg{width:18px;height:18px;transition:transform .2s}
.fh-card:hover .fh-go svg{transform:translateX(4px)}
.fh-empty,.fh-none{display:grid;justify-items:center;gap:6px;padding:32px 16px;border:1px dashed var(--fh-line);border-radius:14px;text-align:center;color:var(--fh-mut)}
.fh-empty p{margin:0;font-size:17px;font-weight:700;color:var(--fh-ink)}
.fh-none{margin:12px 0 0}
.fh-none[hidden]{display:none}
@media(max-width:560px){.fh-find{flex-basis:100%}.fh-filters{display:flex}.fh-filters button{flex:1;justify-content:center;padding:0 8px}.fh-card{padding:16px}}

/* Account sidebar link to the section */
.fh{scroll-margin-top:calc(var(--mm-chrome,125px) + 20px)}
.fh.is-flash{animation:fh-flash 1.6s ease}
@keyframes fh-flash{0%,35%{box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-accent,#d9b24c) 70%,transparent),0 12px 30px color-mix(in srgb,var(--brand-primary,#241236) 12%,transparent)}100%{box-shadow:none}}
.acct-tabs a.acct-tab-forms{gap:10px}
@media(min-width:861px){.acct-tabs.fh-here a[aria-current=page]{background:none;box-shadow:none;font-weight:500}}
.acct-tabs a.acct-tab-forms.is-here{background:var(--brand-bg,#fff);font-weight:700;box-shadow:inset 3px 0 0 var(--brand-accent,#d9b24c),0 1px 3px color-mix(in srgb,var(--brand-text,#1d1a21) 7.8%,transparent)}
.fh-count{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:color-mix(in srgb,var(--brand-primary,#241236) 9%,var(--brand-bg,#fff));color:var(--brand-primary,#241236);font-size:12px;font-weight:700;transition:background .2s,color .2s}
.acct-tabs a.acct-tab-forms.is-here .fh-count,.acct-tabs a.acct-tab-forms:hover .fh-count{background:var(--brand-primary,#241236);color:#fff}
@media(max-width:860px){.acct-tabs a.acct-tab-forms.is-here{background:var(--brand-primary,#241236);color:#fff!important;border-color:var(--brand-primary,#241236);box-shadow:none}.acct-tabs a.acct-tab-forms.is-here .fh-count{background:var(--brand-bg,#fff);color:var(--brand-primary,#241236)}}
@media(prefers-reduced-motion:reduce){.fh.is-flash{animation:none}}

/* ---------- Contact page: Send a message / Building Request ---------- */
.cf-switch{display:grid;grid-template-columns:repeat(var(--cf-n,2),minmax(0,1fr));gap:10px;margin:0 0 26px}
.cf-switch a{position:relative;display:flex;align-items:center;gap:12px;min-height:72px;padding:14px 16px 14px 44px;border:1.5px solid var(--fh-line);border-radius:14px;background:var(--fh-bg);color:var(--fh-ink)!important;text-decoration:none;transition:border-color .2s,background .2s,box-shadow .2s,transform .15s}
.cf-switch a:hover{border-color:color-mix(in srgb,var(--fh-p) 40%,var(--fh-line))}
.cf-switch a:active{transform:scale(.985)}
.cf-switch a:focus-visible{outline:3px solid color-mix(in srgb,var(--fh-p) 40%,transparent);outline-offset:2px}
.cf-switch a[aria-current=page]{border-color:var(--fh-p);background:color-mix(in srgb,var(--fh-p) 5%,var(--fh-bg));box-shadow:0 6px 18px color-mix(in srgb,var(--fh-p) 10%,transparent)}
.cf-radio{position:absolute;left:16px;top:50%;width:18px;height:18px;margin-top:-9px;border:2px solid color-mix(in srgb,var(--fh-mut) 60%,transparent);border-radius:50%;transition:border-color .2s}
.cf-radio::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--fh-p);transform:scale(0);transition:transform .2s}
.cf-switch a[aria-current=page] .cf-radio{border-color:var(--fh-p)}
.cf-switch a[aria-current=page] .cf-radio::after{transform:scale(1)}
.cf-ico{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:10px;background:var(--fh-soft);color:var(--fh-p)}
.cf-switch a[aria-current=page] .cf-ico{background:var(--fh-p);color:#fff}
.cf-ico svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.cf-txt{display:grid;gap:2px;min-width:0}
.cf-txt strong{font-size:15px;line-height:1.25}
.cf-txt small{font-size:13px;color:var(--fh-mut)}
.cf-switch a[data-cf-form]{padding-right:46px}
.cf-switch a[data-cf-form]:hover{background:color-mix(in srgb,var(--fh-p) 4%,var(--fh-bg))}
.cf-go{position:absolute;right:16px;top:50%;display:grid;place-items:center;width:22px;height:22px;margin-top:-11px;color:var(--fh-p);transition:transform .2s}
.cf-go svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.cf-switch a[data-cf-form]:hover .cf-go{transform:translateX(4px)}
.cf-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@keyframes cf-in{from{opacity:0;transform:translateY(6px)}}
.cf-nudge{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:10px;padding:12px 14px;border-radius:12px;background:color-mix(in srgb,var(--brand-accent,#d9b24c) 16%,var(--brand-bg,#fff));color:var(--brand-text,#1d1a21);font-size:14px;animation:cf-in .3s ease both}
.cf-nudge[hidden]{display:none}
.cf-nudge a{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:10px;background:var(--brand-primary,#241236);color:#fff!important;font-size:14px;font-weight:700;text-decoration:none}
.cf-nudge a:hover{background:var(--brand-primary-2,#3a1f55)}
@media(max-width:620px){.cf-switch{grid-template-columns:1fr;gap:8px}.cf-switch a{min-height:64px}}
@media(prefers-reduced-motion:reduce){.fh-grid li,.cf-nudge{animation:none}.fh-card,.cf-switch a,.cf-go{transition:none}}
