:root{--brand-purple:#5200ff;--brand-purple-dark:#3700b3;--brand-aqua:#3dffd0;--bg:#f8f7f3;--card:#fff;--ink:#160033;--muted:#625b70;--border:#e2ddea;--color-brand:var(--brand-purple);--color-brand-dark:var(--brand-purple-dark);--color-accent:var(--brand-aqua);--color-ink:var(--ink);--color-text:var(--ink);--color-muted:var(--muted);--color-background:var(--bg);--color-surface:var(--card);--color-brand-soft:color-mix(in srgb, var(--brand-purple) 7%, var(--card));--color-line:var(--border);--color-success:#00a66a;--color-warning:#ffb000;--color-danger:#d0006f;--color-focus-dark:var(--ink);--color-focus-light:var(--card);--color-on-brand:var(--card);--color-on-dark-muted:#cbc3da;--color-brand-overlay:#16003347;--color-border-on-dark:#ffffff3d;--font-body:system-ui, -apple-system, "Segoe UI", Arial, sans-serif;--font-code:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--font-size-hero:clamp(2.45rem, 7vw, 5.8rem);--font-size-h2:clamp(1.8rem, 4vw, 3.25rem);--font-size-lead:clamp(1.05rem, 2vw, 1.32rem);--line-height-body:1.55;--content-max:1180px;--content-readable:720px;--page-gutter:clamp(18px, 3vw, 22px);--section-space:clamp(58px, 8vw, 82px);--radius-sm:10px;--radius-brand:14px;--radius-card:14px;--radius-panel:16px;--radius-hero:16px;--radius-pill:999px;--shadow-soft:0 18px 55px #2014361a;--shadow-card:0 10px 30px #20143614;--shadow-brand:0 12px 24px #5200ff3d;--shadow-action:0 16px 30px #5200ff3b;--shadow-on-brand:0 28px 70px #16003338;--motion-fast:.15s;--motion-medium:.26s;--motion-slow:.52s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-out:cubic-bezier(.22, 1, .36, 1);--background:var(--bg);--foreground:var(--ink);--primary:var(--brand-purple);--primary-foreground:var(--card);--secondary:var(--color-brand-soft);--secondary-foreground:var(--ink);--muted-foreground:var(--muted);--border-subtle:var(--border);--ring:var(--brand-purple)}.participant-page{max-width:72rem;margin:auto;padding:clamp(1.5rem,5vw,4rem) 1rem}.participant-page .content-shell{max-width:52rem;margin:auto}.participant-page a,.participant-page button{min-height:44px}.participant-page figure img{width:100%;height:auto;display:block}.participant-gate{gap:.75rem;max-width:28rem;margin:3rem auto;display:grid}.participant-gate input{min-height:44px;padding:.5rem}.participant-actions{flex-wrap:wrap;gap:.75rem;margin:2rem 0;display:flex}.participant-page :focus-visible{outline-offset:3px;outline:3px solid}@media (width<=640px){.participant-actions a{text-align:center;width:100%}}@media (prefers-reduced-motion:reduce){.participant-page *{transition-duration:0s!important}}*,:before,:after{box-sizing:border-box}html{min-width:320px;color:var(--color-text);background:var(--color-background);font-family:var(--font-body);line-height:var(--line-height-body);scroll-behavior:smooth;text-rendering:optimizelegibility}body{min-width:320px;min-height:100vh;margin:0}.site-frame{flex-direction:column;min-height:100svh;display:flex}.site-content{flex:1 0 auto;min-width:0}img,svg,video{max-width:100%;height:auto;display:block}button,input,textarea,select{font:inherit}a{color:var(--color-brand-dark)}.prose,.intro,.source-details,.business-review{overflow-wrap:anywhere;min-width:0}.prose img,.prose video,.intro img,.source-details img{max-width:100%;height:auto}.prose iframe,.intro iframe,.source-details iframe{aspect-ratio:16/9;border:0;width:100%;max-width:100%;display:block}.prose pre,.intro pre,.source-details pre{overscroll-behavior-inline:contain;max-width:100%;overflow-x:auto}.prose table,.intro table,.source-details table{overscroll-behavior-inline:contain;max-width:100%;display:block;overflow-x:auto}.prose td,.prose th,.intro td,.intro th,.source-details td,.source-details th{overflow-wrap:anywhere}.prose audio,.intro audio,.source-details audio{max-width:100%}.prose a,.intro a,.source-details a{overflow-wrap:anywhere}main p:not(.eyebrow,.listing-meta,.error-code){text-align:start;hyphens:none;overflow-wrap:break-word}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--color-focus-dark);outline-offset:3px;box-shadow:0 0 0 6px var(--color-focus-light)}.skip-link{z-index:100;border-radius:var(--radius-pill);color:#fff;background:var(--color-ink);transition:transform var(--motion-fast) var(--ease-out);padding:.75rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.shell{width:min(calc(100% - (2 * var(--page-gutter))), var(--content-max));margin-inline:auto}.readable{max-width:var(--content-readable)}.section{padding-block:var(--section-space)}.section-heading{max-width:15ch;color:var(--color-ink);font-size:var(--font-size-h2);letter-spacing:-.035em;margin:0;font-weight:930;line-height:1.02}.section-lead{max-width:43rem;color:var(--color-muted);font-size:var(--font-size-lead);margin:1.2rem 0 0}.button-row{flex-wrap:wrap;gap:.8rem;display:flex}.button{border-radius:var(--radius-pill);min-height:3rem;transition:transform var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard), background var(--motion-fast) var(--ease-standard);border:1px solid #0000;justify-content:center;align-items:center;padding:.72rem 1.15rem;font-weight:850;text-decoration:none;display:inline-flex}.button:hover{transform:translateY(-1px)}.button--primary{color:#fff;background:var(--color-brand);box-shadow:var(--shadow-action)}.button--primary:hover{background:var(--color-brand-dark)}.button--secondary{border-color:var(--color-line);color:var(--color-ink);background:var(--color-surface)}.ui-button{border-radius:var(--radius-brand);min-height:44px;color:var(--primary-foreground);background:var(--primary);font:inherit;cursor:pointer;transition:transform var(--motion-fast) var(--ease-standard),background var(--motion-fast) var(--ease-standard),box-shadow var(--motion-fast) var(--ease-standard);border:1px solid #0000;justify-content:center;align-items:center;gap:.45rem;padding:.65rem 1rem;font-weight:750;line-height:1.2;text-decoration:none;display:inline-flex}.ui-button:hover{background:var(--brand-purple-dark);transform:translateY(-1px)}.ui-button:disabled{opacity:.55;cursor:not-allowed}.ui-button--secondary,.ui-button--outline{border-color:var(--border);color:var(--foreground);background:var(--card)}.ui-button--ghost{color:var(--foreground);background:0 0}.ui-button--link{min-height:44px;color:var(--primary);text-underline-offset:.2em;background:0 0;padding-inline:.2rem;text-decoration:underline}.ui-button--sm{min-height:44px;padding:.45rem .75rem}.ui-button--lg{min-height:48px;padding:.8rem 1.25rem}.ui-button--icon{width:44px;min-height:44px;padding:0}.ui-card{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--card);box-shadow:var(--shadow-card)}.ui-card__header,.ui-card__content,.ui-card__footer{padding:1rem}.ui-card__header{grid-template-columns:1fr auto;gap:.35rem 1rem;display:grid}.ui-card__title{margin:0;font-size:1.12rem}.ui-card__description{color:var(--muted-foreground);grid-column:1/-1;margin:0}.ui-card__action{grid-area:1/2}.ui-card__footer{align-items:center;gap:.75rem;display:flex}.ui-badge{border-radius:var(--radius-pill);min-height:28px;color:var(--foreground);background:var(--color-brand-soft);align-items:center;padding:.2rem .65rem;font-size:.82rem;font-weight:700;display:inline-flex}.ui-badge--outline{border:1px solid var(--border);background:0 0}.ui-badge--secondary{background:var(--secondary)}.ui-accordion{border-bottom:1px solid var(--border)}.ui-accordion__header{margin:0}.ui-accordion__trigger{width:100%;min-height:44px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;padding:.75rem 0;font-weight:750;display:flex}.ui-accordion__indicator{transition:transform var(--motion-fast) var(--ease-standard);font-size:1.25rem}.ui-accordion__trigger[data-state=open] .ui-accordion__indicator{transform:rotate(45deg)}.ui-accordion__content{overflow:hidden}.ui-accordion__content-inner{padding:0 0 1rem}.ui-dialog__overlay{z-index:50;background:var(--color-brand-overlay);position:fixed;inset:0}.ui-dialog__content,.ui-drawer__content{z-index:51;color:var(--foreground);background:var(--card);box-shadow:var(--shadow-on-brand);border:0;padding:1.5rem;position:fixed}.ui-dialog__content{border-radius:var(--radius-panel);width:min(42rem,100% - 2rem);max-height:calc(100dvh - 2rem);top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%)}.ui-drawer__content{border-radius:var(--radius-panel) var(--radius-panel) 0 0;max-height:min(88dvh,52rem);bottom:0;left:0;right:0;overflow:auto}.ui-dialog__header,.ui-drawer__header{gap:.45rem;display:grid}.ui-dialog__footer,.ui-drawer__footer{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;margin-top:1.25rem;display:flex}.questionnaire fieldset{border:0;margin:0;padding:0}.questionnaire legend{margin-bottom:1rem;font-size:1.35rem;font-weight:800}.questionnaire-choice{border:2px solid var(--border);border-radius:var(--radius-card);cursor:pointer;align-items:flex-start;gap:.75rem;min-height:64px;padding:1rem;display:flex;position:relative}.questionnaire-choice:hover{border-color:var(--primary)}.questionnaire-choice:has(input:focus-visible){outline:3px solid var(--color-focus-dark);outline-offset:3px;box-shadow:0 0 0 6px var(--color-focus-light)}.questionnaire-choice:has(input:checked){border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}.questionnaire-choice input{width:1.15rem;height:1.15rem;accent-color:var(--primary);margin-top:.2rem}.questionnaire-choice__body{flex:1;gap:.2rem;display:grid}.questionnaire-choice__body>span:not(.questionnaire-choice__check){color:var(--muted-foreground)}.questionnaire-choice__check{width:1.5rem;height:1.5rem;color:var(--primary-foreground);background:var(--primary);border-radius:50%;place-items:center;font-weight:800;display:none;position:absolute;top:.65rem;right:.75rem}.questionnaire-choice:has(input:checked) .questionnaire-choice__check{display:grid}.questionnaire-actions{flex-wrap:wrap;gap:.75rem;margin-top:1rem;display:flex}.questionnaire-progress{color:var(--muted-foreground);gap:.25rem;margin-bottom:1rem;font-size:.9rem;display:grid}.questionnaire-progress progress{width:100%;accent-color:var(--primary)}.content-button-row{justify-content:flex-start;margin-block:1.75rem;display:flex}.content-button-row--center{justify-content:center}.content-button-row--right{justify-content:flex-end}.content-button{border-radius:var(--radius-brand);max-width:100%;min-height:44px;color:var(--color-ink);background:var(--color-surface);text-align:center;transition:transform var(--motion-fast) var(--ease-standard), background var(--motion-fast) var(--ease-standard), color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);border:1px solid #0000;justify-content:center;align-items:center;padding:.65rem 1rem;font-size:1rem;font-weight:750;line-height:1.2;text-decoration:none;display:inline-flex}.content-button--primary{color:var(--color-surface);background:var(--color-brand);box-shadow:var(--shadow-card)}.content-button--primary:hover{background:var(--color-brand-dark);transform:translateY(-1px)}.content-button--secondary{border-color:var(--color-line);color:var(--color-ink);background:var(--color-surface)}.content-button--secondary:hover{border-color:var(--color-brand);background:var(--color-brand-soft);transform:translateY(-1px)}.content-button--text{min-height:44px;color:var(--color-brand);text-underline-offset:.2em;background:0 0;border-color:#0000;padding:.65rem .2rem;text-decoration:underline}.content-button--text:hover{color:var(--color-brand-dark)}.content-button:active{transform:translateY(0)}.content-button:focus-visible{outline:3px solid var(--color-focus-dark);outline-offset:3px}@keyframes ui-enter{0%{opacity:0;transform:translateY(.75rem)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:no-preference){.page-hero-grid,.content-grid,.listing-layout,.source-home{animation:ui-enter var(--motion-slow) var(--ease-out) both}.content-grid,.listing-layout{animation-delay:90ms}}.card-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1rem;display:grid}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (forced-colors:active){.button{border-color:buttontext}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
