/* Prime Cinema: purposeful, distance-readable digital signage. */
#primeDisplay { display:none; }
body.prime-cinema { overflow:hidden!important; background:#112b38!important; }
body.prime-cinema #appShell { transform:translateX(-250vw)!important; pointer-events:none!important; }
body.prime-cinema > .bg-imagery { display:none!important; }
body.prime-cinema #primeDisplay {
  --ink:#143342; --muted:#59717b; --paper:#f5f5ef; --lime:#b8d86f; --blue:#dbe9ed;
  --pad:clamp(20px,2.2vw,48px); --gap:clamp(14px,1.3vw,28px);
  position:fixed; inset:0; z-index:500; display:grid; grid-template-rows:clamp(86px,12vh,136px) minmax(0,1fr) clamp(60px,8vh,90px);
  width:100vw; height:100vh; overflow:hidden; color:var(--ink); background:var(--paper);
  font-family:Arial,Helvetica,sans-serif; font-size:clamp(16px,1.35vw,27px); line-height:1.3;
  -webkit-font-smoothing:antialiased;
}
#primeDisplay *, #primeDisplay *:before, #primeDisplay *:after { box-sizing:border-box; }
#primeDisplay h1,#primeDisplay h2,#primeDisplay h3,#primeDisplay p { margin:0; }
#primeDisplay .pd-header {
  all:unset; box-sizing:border-box; display:flex; align-items:center; justify-content:space-between;
  padding:0 var(--pad); background:var(--ink); color:white; gap:24px; border-bottom:4px solid var(--lime);
}
#primeDisplay .pd-brand { display:flex; align-items:center; gap:clamp(20px,1.8vw,36px); min-width:0; }
#primeDisplay .pd-logo { width:clamp(64px,5.6vw,112px); height:clamp(64px,8vh,100px); object-fit:contain; flex-shrink:0; }
#primeDisplay .pd-eyebrow { font-size:clamp(12px,1.05vw,21px); letter-spacing:.16em; font-weight:700; line-height:1.4; }
#primeDisplay .pd-header .pd-eyebrow { color:var(--lime); font-size:clamp(11px,.88vw,18px); }
#primeDisplay .pd-header h1 { font-size:clamp(19px,1.8vw,37px); letter-spacing:-.025em; font-weight:500; margin-top:7px; }
#primeDisplay .pd-time { flex-shrink:0; text-align:right; }
#primeDisplay .pd-clock { font-size:clamp(27px,2.45vw,52px); line-height:1.08; letter-spacing:-.045em; font-weight:600; font-variant-numeric:tabular-nums; }
#primeDisplay .pd-date { font-size:clamp(11px,1.05vw,22px); color:#c6d5db; margin-top:5px; }
#primeDisplay .pd-stage { all:unset; display:block; min-height:0; min-width:0; position:relative; padding:var(--gap) var(--pad); overflow:hidden; }
#primeDisplay .pd-content { height:100%; opacity:1; transform:translateY(0); transition:opacity .42s ease,transform .42s cubic-bezier(.2,.65,.2,1); }
#primeDisplay.is-transitioning .pd-content { opacity:0; transform:translateY(16px); }
#primeDisplay .pd-overview { height:100%; display:grid; grid-template-columns:1.05fr 1.45fr 1.05fr; grid-template-rows:1.32fr 1fr; gap:var(--gap); }
#primeDisplay .pd-panel { position:relative; min-width:0; min-height:0; overflow:hidden; border:1px solid #d6dfdb; border-radius:8px; padding:clamp(16px,1.5vw,30px); background:#fff; }
#primeDisplay .pd-panel-label { font-size:clamp(11px,.86vw,18px); font-weight:700; text-transform:uppercase; letter-spacing:.1em; padding-bottom:clamp(12px,1.6vh,20px); border-bottom:1px solid #d8e2df; margin-bottom:clamp(12px,1.7vh,22px); }
#primeDisplay .pd-weather { grid-area:1/1; }
#primeDisplay .pd-tides { grid-area:1/3; background:#e4eff0; }
#primeDisplay .pd-local { grid-area:2/1; }
#primeDisplay .pd-trivia { grid-area:2/3; background:var(--ink); color:#fff; border-color:var(--ink); }
#primeDisplay .pd-trivia .pd-panel-label { color:var(--lime); border-color:#395562; }
#primeDisplay .pd-showcase { grid-area:1/2/3/3; min-width:0; min-height:0; border-radius:8px; overflow:hidden; background:var(--ink); }
#primeDisplay .pd-weather-now { display:flex; align-items:center; flex-wrap:wrap; gap:.5vw; }
#primeDisplay .pd-weather-icon { width:3.4vw; height:3.4vw; color:var(--ink); flex-shrink:0; }
#primeDisplay .pd-weather-icon svg { width:100%;height:100%; }
#primeDisplay .pd-temperature { font-size:clamp(46px,5vw,100px); letter-spacing:-.07em; font-weight:600; line-height:1; }
#primeDisplay .pd-weather-summary { flex:1 0 100%; margin-top:8px; }
#primeDisplay .pd-weather-summary h3 { font-size:clamp(17px,1.5vw,30px); font-weight:600; }
#primeDisplay .pd-weather-summary p { color:var(--muted); font-size:clamp(11px,.95vw,20px); line-height:1.4; margin-top:6px; }
#primeDisplay .pd-forecast { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:6px; margin-top:clamp(12px,2vh,25px); }
#primeDisplay .pd-forecast>div { display:flex;flex-direction:column;align-items:center;min-width:0;text-align:center;gap:5px; }
#primeDisplay .pd-forecast span { font-size:clamp(10px,.8vw,17px); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:100%; }
#primeDisplay .pd-day-icon { width:clamp(18px,1.8vw,36px); height:clamp(18px,1.8vw,36px); }
#primeDisplay .pd-day-icon svg { width:100%;height:100%; }
#primeDisplay .pd-forecast strong { font-size:clamp(15px,1.3vw,27px); font-weight:600; }
#primeDisplay .pd-source { font-size:clamp(10px,.74vw,16px); color:var(--muted); margin-top:clamp(10px,1.3vh,18px); line-height:1.4; }
#primeDisplay .pd-tide-lead { display:flex; justify-content:space-between; gap:8px; align-items:center; margin-bottom:clamp(12px,1.6vh,22px); }
#primeDisplay .pd-tide-state { font-size:clamp(20px,2vw,40px); font-weight:500; text-transform:capitalize; letter-spacing:-.035em; }
#primeDisplay .pd-tide-lead p { font-size:clamp(11px,1vw,21px); color:var(--muted); margin-top:5px; }
#primeDisplay .pd-tide-icon { width:clamp(28px,3.6vw,70px); color:#40899c; }
#primeDisplay .pd-tide-icon svg { width:100%; display:block; }
#primeDisplay .pd-tide-row { display:grid; grid-template-columns:.6fr 1.2fr 1fr .8fr;gap:4px; align-items:center; border-top:1px solid #c7dadd; padding:clamp(6px,.9vh,12px) 0; font-size:clamp(10px,.9vw,19px); }
#primeDisplay .pd-tide-row>span:first-child { text-transform:uppercase;font-size:.78em;color:var(--muted);font-weight:700; }
#primeDisplay .pd-tide-row>span:last-child { text-align:right;font-size:.9em; }
#primeDisplay .pd-tide-row strong { white-space:nowrap;font-weight:600; }
#primeDisplay .pd-tide-row .is-high { color:#226d80; }
#primeDisplay .pd-tide-bottom { display:flex;justify-content:space-between;gap:8px;font-size:clamp(10px,.8vw,17px);border-top:1px solid #c7dadd;padding-top:10px;margin-top:4px; }
#primeDisplay .pd-tide-bottom strong { display:block; font-size:1.3em; margin-top:4px; }
#primeDisplay .pd-events { display:grid;gap:clamp(14px,2vh,28px); }
#primeDisplay .pd-event-date { font-size:clamp(10px,.78vw,16px); letter-spacing:.05em; font-weight:700; color:#51727b; margin-bottom:7px; }
#primeDisplay .pd-events h3 { font-size:clamp(16px,1.5vw,31px); letter-spacing:-.025em;line-height:1.2;font-weight:500; }
#primeDisplay .pd-events article+article { padding-top:clamp(12px,1.5vh,20px);border-top:1px solid #d9e3df; }
#primeDisplay .pd-trivia-intro { font-size:clamp(13px,1.1vw,23px); color:var(--lime); margin-bottom:14px; }
#primeDisplay .pd-trivia-text { font-family:Georgia,'Times New Roman',serif; font-size:clamp(20px,2.05vw,41px);letter-spacing:-.03em;line-height:1.23;position:relative;z-index:2; }
#primeDisplay .pd-trivia-wave { position:absolute;right:-5px;bottom:-20px;width:11vw;opacity:.12;color:var(--lime); }
#primeDisplay .pd-photo { width:100%;height:100%;position:relative;overflow:hidden;background:#0e2632; }
#primeDisplay .pd-photo:after { content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(6,28,40,.9));pointer-events:none; }
#primeDisplay .pd-photo-img { position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity 1.2s ease; }
#primeDisplay .pd-photo-img.is-active { opacity:1; }
#primeDisplay .pd-photo-caption { position:absolute;bottom:clamp(26px,3vw,60px);left:clamp(20px,2.2vw,44px);right:20px;color:#fff;z-index:2; }
#primeDisplay .pd-photo-caption span { font-size:clamp(10px,.8vw,17px);letter-spacing:.16em;font-weight:700;color:#d3e9b0; }
#primeDisplay .pd-photo-caption strong { display:block;font-family:Georgia,'Times New Roman',serif;font-size:clamp(31px,3.7vw,75px);font-weight:400;letter-spacing:-.045em;line-height:1.1;margin-top:14px; }
#primeDisplay .pd-photo-count { position:absolute;right:16px;top:16px;z-index:2;color:#fff;background:#163340bb;border:1px solid #ffffff44;border-radius:30px;padding:5px 12px;font-size:12px; }
#primeDisplay .pd-footer { display:flex;align-items:center;gap:24px;background:#e5eadd;padding:0 var(--pad);position:relative;min-width:0;overflow:hidden;border-top:1px solid #d1dccb; }
#primeDisplay .pd-now { display:flex;align-items:center;gap:9px;flex-shrink:0;max-width:28%;font-size:clamp(11px,.95vw,20px);font-weight:600; }
#primeDisplay .pd-status-dot { width:7px;height:7px;border-radius:50%;background:#557d36;flex-shrink:0; }
#primeDisplay .pd-ticker { min-width:0;flex:1;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent); }
#primeDisplay .pd-ticker-track { white-space:nowrap;width:max-content;animation:pd-ticker 180s linear infinite;font-size:clamp(13px,1.2vw,24px); }
@keyframes pd-ticker { to { transform:translateX(-50%); } }
#primeDisplay .pd-controls { display:flex;gap:6px;opacity:.4;transition:opacity .2s;flex-shrink:0; }
#primeDisplay .pd-controls:hover,#primeDisplay .pd-controls:focus-within { opacity:1; }
#primeDisplay .pd-controls button { font:inherit;font-size:clamp(10px,.78vw,16px);background:none;border:1px solid #a9bba0;color:var(--ink);padding:7px 9px;border-radius:4px;cursor:pointer; }
#primeDisplay button:focus-visible { outline:3px solid #167092;outline-offset:3px; }
#primeDisplay .pd-progress { position:absolute;bottom:0;left:0;right:0;height:4px;background:#cdd9bd; }
#primeDisplay .pd-progress span { display:block;width:100%;height:100%;background:#769f46;transform:scaleX(0);transform-origin:left;transition:transform 1s linear; }
/* Fullscreen scenes share one editorial grid and one consistent baseline. */
#primeDisplay .pd-feature { height:100%;padding:clamp(20px,2.5vw,52px);position:relative;overflow:hidden;border-radius:8px;background:#fff; }
#primeDisplay .pd-feature-heading { display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:clamp(20px,4vh,50px); }
#primeDisplay .pd-feature-heading .pd-eyebrow { color:#51737c; }
#primeDisplay .pd-feature-heading h2 { font-family:Georgia,'Times New Roman',serif;font-size:clamp(34px,4.1vw,84px);font-weight:400;letter-spacing:-.045em;line-height:1.1;margin-top:10px; }
#primeDisplay .pd-chapter { font-size:clamp(36px,5vw,100px);font-weight:400;color:#d6e0da;letter-spacing:-.06em;line-height:1; }
#primeDisplay .pd-feature-weather .pd-weather-now { gap:2vw; }
#primeDisplay .pd-feature-weather .pd-weather-icon { width:8vw;height:8vw; }
#primeDisplay .pd-feature-weather .pd-temperature { font-size:clamp(96px,13vw,260px); }
#primeDisplay .pd-feature-weather .pd-weather-summary { flex:1;margin:0 0 0 2vw; }
#primeDisplay .pd-feature-weather .pd-weather-summary h3 { font-size:clamp(30px,3.5vw,70px); }
#primeDisplay .pd-feature-weather .pd-weather-summary p { font-size:clamp(18px,1.7vw,35px);max-width:28em; }
#primeDisplay .pd-forecast-detail { max-width:70em;font-size:clamp(17px,1.6vw,33px);line-height:1.45;color:var(--muted);margin-top:2vh; }
#primeDisplay .pd-feature-weather .pd-forecast { grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid #d8e2df;padding-top:2.3vh;margin-top:3vh;gap:1vw; }
#primeDisplay .pd-feature-weather .pd-forecast>div { border-right:1px solid #d8e2df;gap:8px; }
#primeDisplay .pd-feature-weather .pd-forecast>div:last-child { border:0; }
#primeDisplay .pd-feature-weather .pd-forecast span { font-size:clamp(15px,1.3vw,27px); }
#primeDisplay .pd-feature-weather .pd-day-icon { width:3.4vw;height:3.4vw; }
#primeDisplay .pd-feature-weather .pd-forecast strong { font-size:clamp(26px,2.7vw,55px); }
#primeDisplay .pd-feature-weather .pd-forecast small { font-size:clamp(12px,1vw,21px);color:var(--muted);max-width:12em; }
#primeDisplay .pd-feature-tides { background:#e1edf0; }
#primeDisplay .pd-feature-tides .pd-tide-lead { margin-bottom:3vh; }
#primeDisplay .pd-feature-tides .pd-tide-state { font-size:clamp(33px,4vw,82px); }
#primeDisplay .pd-feature-tides .pd-tide-lead p { font-size:clamp(18px,2vw,40px); }
#primeDisplay .pd-feature-tides .pd-tide-icon { width:9vw; }
#primeDisplay .pd-feature-tides .pd-tides-table { display:grid;grid-template-columns:1fr 1fr;gap:0 5vw;grid-auto-flow:column;grid-template-rows:repeat(6,auto); }
#primeDisplay .pd-feature-tides .pd-tide-row { font-size:clamp(18px,1.7vw,35px);padding:1.1vh 0;grid-template-columns:.65fr 1.2fr 1fr .8fr; }
#primeDisplay .pd-feature-tides .pd-tide-bottom { font-size:clamp(16px,1.5vw,30px);justify-content:flex-start;gap:6vw;padding-top:2vh;margin-top:2vh; }
#primeDisplay .pd-feature-tides .pd-tide-bottom strong { display:inline;margin-left:10px; }
#primeDisplay .pd-feature-trivia { background:var(--ink);color:#fff;display:flex;flex-direction:column;justify-content:center;padding:4vw 6vw; }
#primeDisplay .pd-feature-trivia .pd-feature-heading { position:absolute;left:6vw;right:6vw;top:3vw; }
#primeDisplay .pd-feature-trivia .pd-feature-heading h2 { display:none; }
#primeDisplay .pd-feature-trivia .pd-feature-heading .pd-eyebrow { color:var(--lime); }
#primeDisplay .pd-feature-trivia .pd-trivia-intro { font-size:clamp(20px,2vw,40px); }
#primeDisplay .pd-feature-trivia .pd-trivia-text { font-size:clamp(40px,5.5vw,110px);max-width:18em;line-height:1.18; }
#primeDisplay .pd-feature-trivia .pd-trivia-wave { width:30vw;right:0;bottom:-8vw; }
#primeDisplay .pd-feature-events .pd-events { grid-template-columns:1fr 1fr;gap:3vh 4vw; }
#primeDisplay .pd-feature-events .pd-events article { border-top:2px solid #8cad80;padding-top:2.2vh; }
#primeDisplay .pd-feature-events .pd-event-date { font-size:clamp(14px,1.3vw,27px);margin-bottom:1.2vh; }
#primeDisplay .pd-feature-events h3 { font-size:clamp(30px,3.3vw,67px);max-width:16em; }
#primeDisplay .pd-feature-events p { font-size:clamp(18px,1.7vw,35px);color:var(--muted);margin-top:1.5vh; }
#primeDisplay .pd-feature-photos { height:100%;overflow:hidden;border-radius:8px; }
#primeDisplay .pd-feature-photos .pd-photo-caption { bottom:4vw;left:4vw; }
#primeDisplay .pd-feature-photos .pd-photo-caption strong { font-size:clamp(45px,5vw,100px); }
#primeDisplay .pd-feature-photos .pd-photo-caption span { font-size:clamp(14px,1.2vw,25px); }
#primeDisplay .pd-feature-reminders { background:#e5edda; }
#primeDisplay .pd-reminder-body { display:flex;align-items:center;gap:5vw;min-height:45vh; }
#primeDisplay .pd-reminder-body .pd-symbol { width:20vw;flex-shrink:0; }
#primeDisplay .pd-reminder-text { font-size:clamp(36px,4.1vw,84px);font-family:Georgia,'Times New Roman',serif;letter-spacing:-.03em;line-height:1.22;max-width:20em; }
/* Six customer-message slides, typeset from supplied signs and verified links. */
#primeDisplay .pd-promo { height:100%;display:grid;grid-template-columns:1.55fr 1fr;grid-template-rows:1fr auto;gap:2vh 5vw;padding:clamp(24px,3.6vw,72px);background:#e4ecdf;border-radius:8px;overflow:hidden;position:relative; }
#primeDisplay .pd-promo-copy { align-self:center;min-width:0;z-index:1; }
#primeDisplay .pd-promo h2 { font-family:Georgia,'Times New Roman',serif;font-size:clamp(40px,5.5vw,112px);font-weight:400;letter-spacing:-.05em;line-height:1.05;margin-top:2.2vh;margin-bottom:2.5vh; }
#primeDisplay .pd-promo-lead { font-size:clamp(21px,2.1vw,43px);max-width:30em;line-height:1.35; }
#primeDisplay .pd-promo ul { list-style:none;padding:0;margin:2.8vh 0 0;font-size:clamp(16px,1.6vw,33px); }
#primeDisplay .pd-promo li { position:relative;padding-left:1.5em;margin-top:1.15vh; }
#primeDisplay .pd-promo li:before { content:'✓';position:absolute;left:0;color:#577d30;font-weight:bold; }
#primeDisplay .pd-promo-art { display:flex;align-items:center;justify-content:center;min-width:0; }
#primeDisplay .pd-promo-fine { grid-column:1/-1;font-size:clamp(12px,1.05vw,22px);line-height:1.42;color:#526b70;border-top:1px solid #b6c8b4;padding-top:1.6vh; }
#primeDisplay .pd-qr { background:#fff;padding:2.3vw;border-radius:10px;width:100%;max-width:25vw;box-shadow:0 16px 50px #1734410c; }
#primeDisplay .pd-qr img { display:block;width:100%;height:auto;aspect-ratio:1; }
#primeDisplay .pd-qr p { margin-top:1.6vh;text-align:center;font-size:clamp(15px,1.35vw,28px);font-weight:600;line-height:1.3; }
#primeDisplay .pd-promo-app { background:#deeaee; }
#primeDisplay .pd-promo-reviews { background:#f1eee5; }
#primeDisplay .pd-promo-moveout { background:#e6edde; }
#primeDisplay .pd-promo-moveout h2 { font-size:clamp(40px,4.7vw,96px); }
#primeDisplay .pd-promo-referral { background:var(--ink);color:#fff; }
#primeDisplay .pd-promo-referral .pd-eyebrow { color:var(--lime); }
#primeDisplay .pd-promo-referral li:before { color:var(--lime); }
#primeDisplay .pd-promo-referral .pd-promo-fine { color:#ccdade;border-color:#4b646c; }
#primeDisplay .pd-reward { text-align:center;color:var(--lime);width:100%;padding:3vw 0;border-top:1px solid #668579;border-bottom:1px solid #668579; }
#primeDisplay .pd-reward>span { font-size:clamp(12px,1vw,21px);letter-spacing:.2em;font-weight:700; }
#primeDisplay .pd-reward strong { display:block;font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(90px,13vw,270px);letter-spacing:-.08em;line-height:1.25; }
#primeDisplay .pd-reward>div { font-size:clamp(15px,1.5vw,31px);letter-spacing:.1em;line-height:1.5; }
#primeDisplay .pd-symbol { width:24vw;max-width:90%;color:#507f59; }
#primeDisplay .pd-symbol svg { width:100%;height:auto;stroke-width:1; }
#primeDisplay .pd-promo-toys { background:#f1e8df; }
#primeDisplay .pd-promo-toys .pd-symbol { color:#a44839;transform:rotate(-9deg); }
#primeDisplay .pd-promo-toys .pd-eyebrow { color:#a44839; }
@media (max-height:760px) {
  #primeDisplay .pd-panel { padding:1.1vw; }
  #primeDisplay .pd-panel-label { margin-bottom:10px;padding-bottom:10px; }
  #primeDisplay .pd-temperature { font-size:4.7vw; }
  #primeDisplay .pd-weather-summary { margin-top:2px; }
  #primeDisplay .pd-forecast { margin-top:10px;gap:3px; }
  #primeDisplay .pd-source { margin-top:7px; }
  #primeDisplay .pd-tide-row { padding:5px 0; }
  #primeDisplay .pd-feature-heading { margin-bottom:2vh; }
  #primeDisplay .pd-feature-weather .pd-temperature { font-size:10vw; }
  #primeDisplay .pd-feature-weather .pd-forecast { margin-top:2vh;padding-top:1.5vh; }
  #primeDisplay .pd-feature-weather .pd-day-icon { width:2.7vw;height:2.7vw; }
  #primeDisplay .pd-feature-weather .pd-forecast-detail { margin-top:1vh; }
  #primeDisplay .pd-promo { padding:2.8vw; }
  #primeDisplay .pd-promo h2 { font-size:4.8vw;margin-top:1.5vh;margin-bottom:2vh; }
  #primeDisplay .pd-promo ul { margin-top:2vh; }
  #primeDisplay .pd-promo li { margin-top:1vh; }
}
@media (prefers-reduced-motion:reduce) {
  #primeDisplay .pd-content,#primeDisplay .pd-photo-img,#primeDisplay .pd-progress span { transition:none; }
  #primeDisplay .pd-ticker-track { animation:none; }
}
/* Older theme TV geometry targets all header tags; isolate the new header. */
body.prime-cinema #primeDisplay .pd-header { position:static!important;top:auto!important;left:auto!important;right:auto!important;width:auto!important;height:auto!important;min-height:0!important;margin:0!important;padding:0 var(--pad)!important;z-index:auto!important; }
/* A softened full-bleed backdrop keeps portrait and landscape photos intact. */
#primeDisplay .pd-photo:before { content:'';position:absolute;inset:-25px;background-image:var(--pd-photo-bg);background-size:cover;background-position:center;filter:blur(20px);opacity:.3; }
/* Keep the complete tide summary and attribution inside a 720p TV viewport. */
#primeDisplay .pd-feature-tides .pd-feature-heading { margin-bottom:1.5vh; }
#primeDisplay .pd-feature-tides .pd-feature-heading h2 { font-size:clamp(32px,3.6vw,74px); }
#primeDisplay .pd-feature-tides .pd-tide-lead { margin-bottom:1.5vh; }
#primeDisplay .pd-feature-tides .pd-tide-state { font-size:clamp(30px,3.4vw,70px); }
#primeDisplay .pd-feature-tides .pd-tide-icon { width:6.5vw; }
#primeDisplay .pd-feature-tides .pd-tide-row { font-size:clamp(16px,1.5vw,31px);padding:.7vh 0; }
#primeDisplay .pd-feature-tides .pd-tide-bottom { padding-top:1.2vh;margin-top:1.2vh; }

/* Fire TV overview: fit real content to the available card, independent of Silk zoom. */
#primeDisplay { -webkit-text-size-adjust:100%; text-size-adjust:100%; }
#primeDisplay .pd-panel-inner { width:100%; transform-origin:top left; }
#primeDisplay .pd-overview .pd-panel { padding:clamp(12px,1.1vw,24px); }
#primeDisplay .pd-overview .pd-panel-label { margin-bottom:clamp(7px,.9vh,12px);padding-bottom:clamp(7px,.9vh,12px); }
#primeDisplay .pd-overview .pd-temperature { font-size:clamp(40px,4.4vw,90px); }
#primeDisplay .pd-overview .pd-weather-summary { margin-top:2px; }
#primeDisplay .pd-overview .pd-forecast { margin-top:clamp(7px,1vh,12px); }
#primeDisplay .pd-overview .pd-source { margin-top:clamp(5px,.7vh,10px); }
#primeDisplay .pd-overview .pd-tide-lead { margin-bottom:clamp(7px,.9vh,12px); }
#primeDisplay .pd-overview .pd-tide-row { padding:clamp(4px,.55vh,7px) 0; }
#primeDisplay .pd-overview .pd-tide-bottom { padding-top:6px; }
#primeDisplay .pd-overview .pd-events { gap:clamp(8px,1vh,14px); }
#primeDisplay .pd-overview .pd-events article+article { padding-top:clamp(7px,.9vh,12px); }
#primeDisplay .pd-overview .pd-events h3 { font-size:clamp(15px,1.35vw,28px); }
#primeDisplay .pd-overview .pd-trivia-intro { margin-bottom:8px; }


/* Original transparent brand artwork, enlarged without changing the feature layouts. */
body.prime-cinema #primeDisplay .pd-logo { width:clamp(160px,17vw,300px);height:auto;max-height:9vh;opacity:1;object-fit:contain; }
/* Restore a continuous, readable overview event crawl; full-screen events stay unchanged. */
#primeDisplay .pd-overview .pd-local .pd-panel-inner { height:100%;display:flex;flex-direction:column; }
#primeDisplay .pd-overview .pd-local .pd-panel-label { flex-shrink:0; }
#primeDisplay .pd-events-window { flex:1;min-height:0;overflow:hidden;position:relative; }
#primeDisplay .pd-events-track { animation:pd-events-scroll 28s linear infinite;will-change:transform; }
#primeDisplay .pd-events-track>.pd-events { padding-bottom:clamp(16px,2.3vh,28px); }
#primeDisplay.is-paused .pd-events-track { animation-play-state:paused; }
@keyframes pd-events-scroll { from {transform:translateY(0)} to {transform:translateY(-50%)} }
@media (prefers-reduced-motion:reduce) { #primeDisplay .pd-events-track { animation:none; } #primeDisplay .pd-events-track>.pd-events[aria-hidden] { display:none; } }

/* Short, readable regional facts on the NC09 television layout. */
#primeDisplay[data-location="NC09"] .pd-feature-trivia .pd-trivia-text { font-size:clamp(32px,4vw,80px); }

/* Keep NC09's explicitly temporary QR labels and footer inside short Silk viewports. */
#primeDisplay[data-location="NC09"] .pd-promo { grid-template-rows:minmax(0,1fr) auto; }
#primeDisplay[data-location="NC09"] .pd-promo-art { min-height:0;align-self:stretch; }
#primeDisplay[data-location="NC09"] .pd-qr { width:100%;height:100%;max-height:100%;display:flex;flex-direction:column;justify-content:center;padding:1.2vh 1vw; }
#primeDisplay[data-location="NC09"] .pd-qr img { width:100%;height:100%;min-height:0;flex:1;object-fit:contain;padding:0; }
#primeDisplay[data-location="NC09"] .pd-qr p { flex-shrink:0;font-size:clamp(12px,1.1vw,22px);line-height:1.2;margin:1vh 0 0; }
@media (max-height:600px) {
  #primeDisplay[data-location="NC09"] .pd-promo { padding:2vw;gap:1vh 4vw; }
  #primeDisplay[data-location="NC09"] .pd-promo h2 { font-size:4vw;margin-top:1vh;margin-bottom:1.2vh; }
  #primeDisplay[data-location="NC09"] .pd-promo-lead { font-size:clamp(16px,1.8vw,22px); }
  #primeDisplay[data-location="NC09"] .pd-promo ul { font-size:clamp(14px,1.45vw,20px);line-height:1.3;margin-top:1.2vh; }
}
