.live-cameras-page{--camera-accent:#087b73;--camera-ink:#18302f;--camera-paper:#f4f1e9;color:var(--camera-ink)}
.live-cameras-group{--camera-accent:#267b9d}
.live-cameras-intro,.live-cameras-directory,.live-camera-report-link{max-width:1520px;margin-inline:auto;padding:clamp(48px,7vw,112px) clamp(24px,5vw,80px)}
.live-cameras-intro{padding-top:clamp(80px,10vw,148px);padding-bottom:clamp(42px,6vw,90px)}
.live-cameras-intro h1{font-size:clamp(48px,6.8vw,108px);line-height:1.06;letter-spacing:-.045em;margin:22px 0 30px;max-width:1050px}
.live-cameras-intro>p:not(.eyebrow){max-width:640px;font-size:clamp(18px,1.5vw,23px);line-height:1.65;margin-bottom:30px}
.live-cameras-intro>.eyebrow,.live-camera-report-link .eyebrow{color:var(--camera-accent)}
.live-cameras-directory{padding-top:0}
.live-cameras-heading{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,80px);align-items:end;border-top:1px solid #18302f30;padding-top:40px;margin-bottom:45px}
.live-cameras-heading h2,.live-camera-report-link h2{font-size:clamp(34px,3.9vw,64px);line-height:1.12;letter-spacing:-.035em;margin:0}
.live-cameras-heading p,.live-camera-report-link p{font-size:17px;line-height:1.7;max-width:660px;margin:0;color:#5e6a64}
.live-camera-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px 32px}
.live-camera-card{min-width:0;border-bottom:1px solid #18302f30;padding-bottom:32px;scroll-margin-top:150px}
.live-camera-visual{aspect-ratio:16/9;position:relative;background:#182322;overflow:hidden}
.live-camera-poster{margin:0;position:absolute;inset:0}
.live-camera-poster img{width:100%;height:100%;object-fit:cover;display:block;filter:none}
.live-camera-poster figcaption{position:absolute;inset:auto 0 0;color:#fff;background:linear-gradient(transparent,#142323d9);padding:30px 20px 16px;font-size:12px;line-height:1.5;letter-spacing:.01em}
.live-camera-player{position:absolute;inset:0}
.live-camera-player iframe{width:100%;height:100%;border:0;display:block}
.live-camera-poster[hidden],.live-camera-player[hidden]{display:none!important}
.live-camera-copy{padding-top:26px}
.live-camera-copy .eyebrow{font-size:11px;margin:0 0 10px;letter-spacing:.14em;color:#5e6a64}
.live-camera-copy h2{font-size:clamp(27px,2.4vw,39px);line-height:1.2;margin:0 0 22px;letter-spacing:-.025em}
.live-camera-button{display:inline-flex;align-items:center;gap:12px;min-height:50px;padding:13px 19px;background:var(--camera-accent);color:white;border:1px solid var(--camera-accent);font:inherit;font-size:14px;line-height:1.4;text-align:left;cursor:pointer;transition:filter .15s}
.live-camera-button:hover{filter:brightness(.9)}
.live-camera-button:focus-visible,.live-camera-actions a:focus-visible{outline:3px solid var(--camera-accent);outline-offset:4px}
.live-camera-status{font-size:13px!important;line-height:1.65!important;color:#65716a;margin:16px 0 22px;max-width:560px}
.live-camera-actions{display:flex;flex-wrap:wrap;gap:14px 24px}
.live-camera-actions a{display:inline-flex;gap:12px;align-items:center;color:var(--camera-ink);font-size:13px;line-height:1.5;text-decoration:none;border-bottom:1px solid #18302f55;padding-bottom:7px}
.live-camera-source{font-size:12px;line-height:1.8;max-width:850px;color:#65716a;margin:40px 0 0}
.live-camera-report-link{display:flex;align-items:center;justify-content:space-between;gap:40px;background:#e6e8e0;max-width:none}
.live-camera-report-link h2{margin-bottom:25px}
.live-camera-report-link .eyebrow{margin-bottom:22px}
.live-camera-report-link>a{flex-shrink:0}
@media(max-width:760px){.live-cameras-heading{grid-template-columns:1fr;gap:24px}.live-camera-grid{grid-template-columns:1fr;gap:40px}.live-camera-report-link{display:block}.live-camera-report-link>a{margin-top:28px}.live-camera-poster figcaption{font-size:11px;padding-inline:14px}.live-camera-button{width:100%;justify-content:center}.live-cameras-intro h1{font-size:clamp(44px,11vw,74px)}.live-camera-copy h2{font-size:30px}.live-cameras-heading h2,.live-camera-report-link h2{font-size:38px}.live-camera-card{scroll-margin-top:185px}}
