.app-shell .visitor-home{width:min(1080px,100%);margin:0 auto}.app-shell .visitor-home-main{display:grid;gap:18px;padding:22px 0 8px}.app-shell .visitor-hero{position:relative;overflow:hidden;isolation:isolate;padding:28px 24px;border-radius:24px;background:var(--sage)}.app-shell .visitor-hero>:not(.visitor-hero-photo,.visitor-hero-scrim){position:relative}.app-shell .visitor-hero{padding-bottom:160px}.app-shell .visitor-hero .visitor-hero-photo{z-index:-2;object-fit:cover;object-position:53% 55%}.app-shell .visitor-hero-scrim{position:absolute;inset:0;z-index:-1;background:linear-gradient(to bottom,color-mix(in srgb,var(--sage) 90%,transparent) 0,color-mix(in srgb,var(--sage) 86%,transparent) 50%,transparent 72%)}.app-shell .visitor-hero-eyebrow{display:flex;align-items:center;gap:7px;margin-bottom:10px;color:var(--ink-soft);font-size:14px;font-weight:750;letter-spacing:.4px}.app-shell .visitor-hero-eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent)}.app-shell .visitor-hero h1{margin:0;font-family:var(--font-display);font-size:clamp(26px,5vw,38px);font-weight:400;line-height:1.25;letter-spacing:-.5px;word-break:keep-all}.app-shell .visitor-hero p{max-width:560px;margin:12px 0 0;color:var(--ink-soft);font-size:16px;line-height:1.6;word-break:keep-all}.app-shell .visitor-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.app-shell .visitor-hero-actions .secondary-button{border:2px solid var(--line);background:var(--paper);color:var(--ink)}.app-shell .visitor-hero-actions>*{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;font-size:16px}.app-shell .visitor-waiting{display:grid;gap:8px}.app-shell .visitor-waiting a{display:flex;align-items:center;gap:12px;padding:14px 16px;border:2px dashed var(--warn);border-radius:16px;background:var(--warn-soft);color:var(--ink)}.app-shell .visitor-waiting a>span{flex:1 1;display:grid;gap:2px}.app-shell .visitor-waiting small{color:var(--ink-soft);font-size:13px}.app-shell #visitor-places{scroll-margin-top:88px}.app-shell .visitor-card{display:grid;gap:12px;align-content:start;min-width:0;padding:20px;border:2px solid var(--line);border-radius:22px;background:var(--paper)}.app-shell .visitor-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.app-shell .visitor-card-head h2{margin:0;font-size:20px;font-weight:900}.app-shell .visitor-card-head a{display:inline-flex;align-items:center;gap:2px;min-height:40px;color:var(--ink-soft);font-size:14px;font-weight:700}.app-shell .visitor-card-lead{margin:-4px 0 2px;color:var(--ink-soft);font-size:14px;line-height:1.55;word-break:keep-all}.app-shell .visitor-card-state{margin:0;padding:18px 0;color:var(--ink-soft);text-align:center}.app-shell .visitor-card .venue-card{grid-template-columns:56px minmax(0,1fr) auto;gap:12px;padding:12px}.app-shell .visitor-card .venue-card img,.app-shell .visitor-card .venue-card-mark{width:56px;height:56px;font-size:22px;font-weight:900}.app-shell .visitor-more{display:grid;padding:6px 20px;border:1px solid var(--line);border-radius:18px;background:var(--paper)}.app-shell .visitor-more h2{margin:10px 0 4px;color:var(--ink-soft);font-size:14px;font-weight:800}.app-shell .visitor-more a{display:flex;align-items:center;gap:12px;min-height:56px;padding:8px 2px;color:var(--ink)}.app-shell .visitor-more a+a{border-top:1px solid var(--line)}.app-shell .visitor-more a>span{flex:1 1;display:grid;gap:2px}.app-shell .visitor-more small{color:var(--ink-soft);font-size:13px}.app-shell .visitor-staff{padding:22px 20px;border-radius:22px;background:var(--accent-soft)}.app-shell .visitor-staff h2{margin:0;font-size:20px;font-weight:900;word-break:keep-all}.app-shell .visitor-staff p{margin:8px 0 14px;color:var(--ink-soft);line-height:1.6;word-break:keep-all}.app-shell .visitor-staff .secondary-button{display:inline-flex;align-items:center;gap:6px;min-height:46px}@media (min-width:900px){.app-shell .visitor-places{grid-template-columns:1fr 1fr}.app-shell .visitor-hero{padding:48px 44px 52px}.app-shell .visitor-hero .visitor-hero-photo{left:30%!important;width:70%!important;object-position:30% 35%;-webkit-mask-image:linear-gradient(90deg,transparent,#000 22%);mask-image:linear-gradient(90deg,transparent,#000 22%)}.app-shell .visitor-hero-scrim{background:linear-gradient(to right,color-mix(in srgb,var(--sage) 88%,transparent) 0,color-mix(in srgb,var(--sage) 85%,transparent) 48%,transparent 66%)}}.app-shell .visitor-card-head a svg,.app-shell .visitor-more a>svg:last-child,.app-shell .visitor-waiting a>svg:last-child{transform:rotate(-90deg)}