/* PinoyWorld TV Watch 1.1.0 — master Watch page presentation */
/* Hide the theme's generic page <h1> (e.g. "Watch") that renders above
   the_content() on a plain WordPress Page — the hero below already carries
   the page's title/branding, so a second bare heading is redundant. Scoped
   to only fire when this exact shortcode's wrapper is present, so it can
   never hide a title on any other page. Requires :has() (Safari 15.4+,
   Chrome 105+); on older browsers the heading simply still shows. */
article:has(.pw-watch-page) > h1 { display: none; }
.pw-watch-page{width:100%;max-width:1280px;margin:0 auto;padding:0 24px 88px;box-sizing:border-box;color:#12213b}
.pw-watch-hero{position:relative;min-height:520px;margin:0 -24px 42px;border-radius:0 0 28px 28px;background:#071834 center/cover no-repeat;overflow:hidden;display:flex;align-items:flex-end;box-shadow:0 18px 50px rgba(7,24,52,.16)}
.pw-watch-hero-content{position:relative;z-index:2;width:min(720px,72%);padding:74px 7vw 70px;color:#fff}
.pw-watch-kicker{display:inline-flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.18em;font-weight:900;color:#ffd14a;margin-bottom:16px}
.pw-watch-hero h1{font-size:clamp(42px,5vw,72px);line-height:.98;letter-spacing:-.045em;margin:0 0 18px;color:#fff}
.pw-watch-hero p{font-size:17px;line-height:1.6;color:rgba(255,255,255,.84);max-width:620px;margin:0}
.pw-watch-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.pw-watch-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:999px;padding:13px 20px;text-decoration:none;font-size:14px;font-weight:800;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease}
.pw-watch-btn:hover{transform:translateY(-2px)}
.pw-watch-btn-primary{background:#ef2e38;color:#fff;box-shadow:0 10px 25px rgba(239,46,56,.28)}
.pw-watch-btn-secondary{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.35);backdrop-filter:blur(8px)}
.pw-watch-hero-empty{min-height:470px;background:radial-gradient(circle at 76% 40%,rgba(33,130,235,.38),transparent 25%),radial-gradient(circle at 88% 72%,rgba(246,190,36,.28),transparent 24%),#071834}
.pw-watch-hero-empty:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,24,52,.98),rgba(7,24,52,.72) 54%,rgba(7,24,52,.15));pointer-events:none}
.pw-watch-hero-empty em{font-style:normal;color:#ffd14a}
.pw-watch-hero-orbit{position:absolute;right:7%;top:50%;transform:translateY(-50%);width:310px;height:310px;border:1px solid rgba(255,255,255,.18);border-radius:50%;z-index:1;display:grid;place-items:center}
.pw-watch-hero-orbit:before,.pw-watch-hero-orbit:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.13)}
.pw-watch-hero-orbit:before{inset:34px}.pw-watch-hero-orbit:after{inset:82px}
.pw-watch-hero-orbit span{position:absolute;width:12px;height:12px;border-radius:50%;background:#ef2e38;top:12px;left:50%;box-shadow:0 0 22px rgba(239,46,56,.7)}
.pw-watch-hero-orbit span:nth-child(2){top:auto;left:auto;right:18px;bottom:56px;background:#ffd14a}.pw-watch-hero-orbit span:nth-child(3){top:48%;left:24px;background:#18aeea}.pw-watch-hero-orbit b{font-size:64px;color:#fff;letter-spacing:-.08em}
.pw-watch-section{margin:0 0 36px}
.pw-watch-page .pw-media-row{margin:0}
.pw-watch-page .pw-media-row h2{font-size:26px;line-height:1.1;color:#12213b;margin:0 0 16px;font-weight:850;letter-spacing:-.02em}
.pw-watch-page .pw-row-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,24%);gap:16px;overflow-x:auto;padding:2px 3px 12px;scroll-snap-type:x proximity;scrollbar-width:thin}
.pw-watch-page .pw-row-card{position:relative;min-width:0;scroll-snap-align:start}
.pw-watch-page .pw-row-thumb{display:block;aspect-ratio:16/9;border-radius:14px;background:#e9edf4 center/cover no-repeat;box-shadow:0 8px 22px rgba(15,31,57,.08);transition:transform .18s ease,box-shadow .18s ease}
.pw-watch-page .pw-row-card:hover .pw-row-thumb{transform:translateY(-3px);box-shadow:0 14px 30px rgba(15,31,57,.16)}
.pw-watch-page .pw-row-title{font-size:15px;font-weight:800;line-height:1.3;color:#12213b;margin:10px 2px 0}
.pw-watch-page .pw-watchlist-btn{position:absolute;right:8px;top:8px;padding:7px 10px;font-size:11px;border-radius:999px;background:rgba(7,24,52,.82);border:1px solid rgba(255,255,255,.2);color:#fff;opacity:0;transform:translateY(4px);transition:.16s ease;z-index:3}
.pw-watch-page .pw-row-card:hover .pw-watchlist-btn,.pw-watch-page .pw-watchlist-btn.is-active{opacity:1;transform:none}
.pw-watch-empty{margin:52px auto 0;max-width:720px;text-align:center;padding:54px 28px;border:1px solid #e3e8f0;border-radius:24px;background:linear-gradient(180deg,#fff,#f7f9fc);box-shadow:0 16px 45px rgba(7,24,52,.07)}
.pw-watch-empty-icon{width:58px;height:58px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:#071834;color:#fff;font-size:20px;padding-left:3px}
.pw-watch-empty>span{font-size:11px;letter-spacing:.18em;font-weight:900;color:#ef2e38}
.pw-watch-empty h2{font-size:32px;line-height:1.1;margin:9px 0 10px;color:#12213b}
.pw-watch-empty p{font-size:15px;line-height:1.6;color:#657086;margin:0 auto;max-width:520px}
.pw-watch-empty-links{display:flex;justify-content:center;gap:22px;flex-wrap:wrap;margin-top:24px}.pw-watch-empty-links a{font-size:14px;font-weight:800;color:#12213b;text-decoration:none}.pw-watch-empty-links a:hover{color:#ef2e38}
@media(max-width:900px){.pw-watch-page .pw-row-track{grid-auto-columns:minmax(220px,34%)}.pw-watch-hero-content{width:82%}.pw-watch-hero-orbit{right:-50px;opacity:.65}}
@media(max-width:640px){.pw-watch-page{padding:0 14px 60px}.pw-watch-hero{margin:0 -14px 32px;min-height:500px;border-radius:0 0 22px 22px}.pw-watch-hero-content{width:100%;padding:54px 24px 48px}.pw-watch-hero h1{font-size:43px}.pw-watch-hero p{font-size:15px}.pw-watch-page .pw-row-track{grid-auto-columns:minmax(230px,78%)}.pw-watch-page .pw-row-title{font-size:14px}.pw-watch-page .pw-watchlist-btn{opacity:1;transform:none}.pw-watch-hero-orbit{width:240px;height:240px;right:-70px;top:35%;opacity:.42}.pw-watch-empty{padding:42px 20px}.pw-watch-empty h2{font-size:27px}}

/* PinoyWorld TV 1.1.3 — intentional placeholder content */
.pw-placeholder-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px}
.pw-placeholder-section-heading h2{font-size:26px;line-height:1.1;color:#12213b;margin:0;font-weight:850;letter-spacing:-.02em}
.pw-placeholder-section-heading>span{font-size:10px;letter-spacing:.12em;font-weight:900;color:#ef2e38;background:#fff1f2;border:1px solid #ffd6d9;border-radius:999px;padding:6px 9px}
.pw-placeholder-card{opacity:1}
.pw-placeholder-thumb{position:relative;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:radial-gradient(circle at 78% 28%,rgba(24,174,234,.28),transparent 22%),radial-gradient(circle at 18% 82%,rgba(239,46,56,.2),transparent 25%),linear-gradient(135deg,#071834,#163a67);display:grid;place-items:center;box-shadow:0 8px 22px rgba(15,31,57,.08)}
.pw-placeholder-thumb:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.13);border-radius:12px}
.pw-placeholder-thumb span{position:absolute;left:12px;top:12px;color:#071834;background:#ffd14a;border-radius:999px;padding:5px 8px;font-size:9px;letter-spacing:.1em;font-weight:900}
.pw-placeholder-play{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;padding-left:2px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);color:#fff;font-size:16px;backdrop-filter:blur(8px)}
.pw-placeholder-title{font-size:15px;font-weight:850;line-height:1.3;color:#12213b;margin:10px 2px 0}
.pw-placeholder-desc{font-size:12px;line-height:1.45;color:#6c778b;margin:5px 2px 0}
.pw-networks-placeholder-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.pw-network-placeholder-card{display:block;background:#fff;border:1px solid #e4e9f1;border-radius:18px;overflow:hidden;box-shadow:0 10px 28px rgba(7,24,52,.06)}
.pw-network-placeholder-art{height:150px;background:radial-gradient(circle at 75% 28%,rgba(24,174,234,.3),transparent 24%),radial-gradient(circle at 20% 80%,rgba(239,46,56,.24),transparent 24%),#071834;display:grid;place-items:center;position:relative}
.pw-network-placeholder-art b{font-size:54px;color:#fff;letter-spacing:-.08em}.pw-network-placeholder-art span{position:absolute;top:12px;left:12px;color:#071834;background:#ffd14a;border-radius:999px;padding:5px 8px;font-size:9px;letter-spacing:.1em;font-weight:900}
.pw-network-placeholder-copy{padding:15px 16px 18px}.pw-network-placeholder-copy h3{margin:0 0 6px;font-size:20px;color:#12213b}.pw-network-placeholder-copy p{margin:0;color:#657086;font-size:13px;line-height:1.45}
.pw-story-placeholder-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:18px}.pw-story-placeholder-card{min-height:210px;border-radius:20px;padding:24px;background:linear-gradient(135deg,#f7f9fc,#eef3f9);border:1px solid #e1e7ef}.pw-story-placeholder-card span{display:inline-block;font-size:9px;letter-spacing:.12em;font-weight:900;color:#ef2e38;background:#fff;border-radius:999px;padding:6px 8px}.pw-story-placeholder-card h2{font-size:23px;line-height:1.12;color:#12213b;margin:24px 0 10px}.pw-story-placeholder-card p{font-size:14px;line-height:1.55;color:#657086;margin:0}
@media(max-width:900px){.pw-networks-placeholder-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pw-story-placeholder-grid{grid-template-columns:1fr}.pw-placeholder-section-heading h2{font-size:23px}}
@media(max-width:640px){.pw-networks-placeholder-grid{grid-template-columns:1fr}.pw-network-placeholder-art{height:130px}.pw-placeholder-desc{font-size:11px}}


/* PinoyWorld TV 1.1.6 — Watch page desktop/tablet presentation refinements */
.pw-watch-page{max-width:1360px;padding-left:24px;padding-right:24px}
.pw-watch-page .pw-watch-hero{min-height:500px;margin-left:-24px;margin-right:-24px;margin-bottom:48px;border-radius:0 0 30px 30px;background-color:#071834;background-position:center center;background-size:cover}
.pw-watch-page .pw-watch-hero-has-image{background-size:cover}
.pw-watch-page .pw-watch-hero-content{width:min(700px,62%);padding:72px 7vw 68px}
.pw-watch-page .pw-watch-hero-has-image .pw-watch-hero-content{max-width:680px}
.pw-watch-page .pw-watch-hero:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(7,24,52,.92) 0%,rgba(7,24,52,.72) 42%,rgba(7,24,52,.22) 72%,rgba(7,24,52,.05) 100%)}
.pw-watch-page .pw-watch-hero-content{z-index:2}
.pw-watch-page .pw-media-row{display:block;width:100%;max-width:none;min-width:0;margin:0 0 42px}
.pw-watch-page .pw-media-row > h2,
.pw-watch-page .pw-placeholder-section-heading{width:100%;box-sizing:border-box}
.pw-watch-page .pw-row-track{width:100%;max-width:none;min-width:0;box-sizing:border-box;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,calc((100% - 48px) / 4));grid-template-rows:auto;gap:16px;overflow-x:auto;overflow-y:hidden;padding:2px 2px 14px;margin:0;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.pw-watch-page .pw-row-card{width:auto;min-width:0}
.pw-watch-page .pw-row-thumb{width:100%;aspect-ratio:16/9}
.pw-watch-page .pw-placeholder-card{min-width:0}
.pw-watch-page .pw-placeholder-thumb{width:100%}
.pw-watch-page .pw-placeholder-desc{max-width:100%}
.pw-watch-page .pw-placeholder-section-heading{display:flex}

@media (max-width:1100px){
  .pw-watch-page .pw-row-track{grid-auto-columns:minmax(0,calc((100% - 32px) / 3))}
  .pw-watch-page .pw-watch-hero-content{width:68%;padding-left:6vw}
}
@media (max-width:900px){
  .pw-watch-page .pw-row-track{grid-auto-columns:minmax(220px,42%)}
  .pw-watch-page .pw-watch-hero{min-height:500px}
  .pw-watch-page .pw-watch-hero-content{width:78%;padding:62px 6vw 58px}
}
@media (max-width:640px){
  .pw-watch-page{max-width:none;padding:0 14px 60px}
  .pw-watch-page .pw-watch-hero{margin-left:-14px;margin-right:-14px;margin-bottom:34px;min-height:500px;border-radius:0 0 22px 22px;background-position:center center}
  .pw-watch-page .pw-watch-hero:after{background:linear-gradient(180deg,rgba(7,24,52,.46) 0%,rgba(7,24,52,.72) 48%,rgba(7,24,52,.96) 100%)}
  .pw-watch-page .pw-watch-hero-content{width:100%;max-width:none;padding:48px 24px 44px;align-self:flex-end}
  .pw-watch-page .pw-watch-hero h1{font-size:43px}
  .pw-watch-page .pw-row-track{grid-auto-columns:minmax(230px,78%)}
}
