.allergen-hero{padding:30px;margin-top:16px;background:linear-gradient(135deg,rgba(72,38,112,.74),rgba(20,28,66,.7))}
.allergen-hero h2{font-size:clamp(1.6rem,4vw,2.6rem);letter-spacing:-.04em;margin:0 0 10px}
.allergen-hero p{margin:0;max-width:640px;line-height:1.5}
.allergen-hero p+p{margin-top:8px;color:var(--muted);font-size:1rem}
.allergen-hero.air-scene{position:relative;overflow:hidden;isolation:isolate;min-height:clamp(170px,20vw,240px);text-shadow:var(--ink-shadow);-webkit-text-stroke:2px rgba(0,0,0,.55);paint-order:stroke fill}
.allergen-hero.air-scene::before{content:"";position:absolute;inset:0;z-index:-1;background-repeat:no-repeat;background-position:center;background-size:cover;background-image:var(--scene-image,none)}
.allergen-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.allergen-tile{padding:17px}
.allergen-tile.has-photo{padding:0}
.allergen-tile.has-photo .detail-body{padding:17px}
.allergen-tile span{display:block;color:var(--muted);font-size:1rem;margin-bottom:7px}
.allergen-tile b{display:block;font-size:1.05rem;margin-bottom:6px}
.allergen-tile small{display:block;color:var(--muted);font-size:1rem;line-height:1.45}
.allergen-tile small+small{margin-top:3px}
.allergen-tile small.precip-line{line-height:1.25}
.allergen-tile small.precip-line+small.precip-line{margin-top:1px}
.allergen-tile b+.scale,.allergen-tile b+.meter{margin-top:2px}
.allergen-note{color:var(--muted);font-size:1rem;line-height:1.5;margin:0 0 12px}
.allergen-credit{color:var(--muted);font-size:1rem;line-height:1.55;margin:26px 0 0;max-width:760px}
.allergen-credit a{color:inherit}
@media(max-width:900px){.allergen-section .section-title{display:block}.allergen-section .section-title p{margin-top:6px}}
@media(max-width:480px){.allergen-hero{padding:22px}.allergen-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.allergen-grid>:last-child:nth-child(odd){grid-column:1/-1}}
@media(min-width:481px) and (max-width:860px){.allergen-grid:has(>:nth-child(5):last-child){grid-template-columns:repeat(6,minmax(0,1fr))}.allergen-grid:has(>:nth-child(5):last-child)>*{grid-column:span 2}.allergen-grid:has(>:nth-child(5):last-child)>:nth-child(n+4){grid-column:span 3}}
.us-pollen{padding:18px}
.pollen-row{display:grid;grid-template-columns:64px 1fr auto;align-items:center;gap:12px;margin:12px 0}
.pollen-name{font-weight:700}
.pollen-track{display:flex;gap:4px}
.pollen-track i{flex:1;height:14px;border-radius:4px;background:var(--track-soft);border:1px solid var(--pollen-edge)}
.pollen-track i.on{border-color:transparent}
.pollen-l1 i.on{background:#7fc97f}.pollen-l2 i.on{background:#c7e05a}.pollen-l3 i.on{background:#f4d03f}.pollen-l4 i.on{background:#f39c12}.pollen-l5 i.on{background:#e74c3c}
.pollen-cat{min-width:88px;text-align:right;font-size:1rem}
.pollen-out .pollen-cat{grid-column:2/4;text-align:left;color:var(--muted)}
.us-pollen-source{margin:14px 0 0;font-size:1rem;line-height:1.5;color:var(--ink-soft)}
.us-pollen-source a{color:var(--link);text-decoration:underline}
#allergensView{min-height:100svh}
#allergenAirSection[hidden]~.allergen-credit{display:none}
#allergenIntro{min-height:3em}
