{"id":175,"date":"2026-05-06T19:25:11","date_gmt":"2026-05-06T19:25:11","guid":{"rendered":"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/"},"modified":"2026-05-11T15:14:08","modified_gmt":"2026-05-11T15:14:08","slug":"summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum","status":"publish","type":"post","link":"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/","title":{"rendered":"Destination Success | Summer Tonsfeldt"},"content":{"rendered":"<article class=\"hpu-video-article\">\n<div class=\"hpu-video-layout\">\n<aside class=\"hpu-video-sidebar\">\n<div class=\"hpu-video-sidebar-inner\">\n<div class=\"hpu-video-cta-container\">\n<div id=\"hpu-video-cta\"><\/div>\n<\/p><\/div>\n<section id=\"hpu-video-transcript\" class=\"hpu-video-transcript\" aria-label=\"Video Transcript\">\n<div class=\"hpu-video-transcript-header\">\n                        <span class=\"hpu-video-transcript-title\">Chapters &amp; Transcript<\/span>\n                    <\/div>\n<div id=\"hpu-video-transcript-content\" class=\"hpu-video-transcript-content\" role=\"region\" aria-label=\"Transcript chapters\">\n<div class=\"hpu-video-transcript-chapter expanded\">\n<div class=\"hpu-video-transcript-chapter-header\" role=\"button\" aria-expanded=\"true\">\n<div class=\"hpu-video-transcript-chapter-header-top\">\n<div class=\"hpu-video-transcript-chapter-number\">1<\/div>\n<h2 class=\"hpu-video-transcript-speaker\">How do High Point University alumni find career success?<\/h2>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"hpu-video-transcript-text-container\">\n<div class=\"hpu-video-transcript-text-inner\">\n                                    <span class=\"hpu-video-transcript-chapter-time\"><a href=\"https:\/\/www.youtube.com\/watch?v=gyi8i1wGniM&amp;t=11\">0:11<\/a><\/span><\/p>\n<p class=\"hpu-video-transcript-text\">Hi everyone, my name is Summer Tonsfeldt. I am from Scottdale, Arizona. I graduated High Point University class of 2014 with a major in strategic communication and I now work at NBC entertainment and TV marketing.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"hpu-video-transcript-chapter\">\n<div class=\"hpu-video-transcript-chapter-header\" role=\"button\" aria-expanded=\"true\">\n<div class=\"hpu-video-transcript-chapter-header-top\">\n<div class=\"hpu-video-transcript-chapter-number\">2<\/div>\n<h2 class=\"hpu-video-transcript-speaker\">What is the HPU Media Entertainment Fellows program?<\/h2>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"hpu-video-transcript-text-container\">\n<div class=\"hpu-video-transcript-text-inner\">\n                                    <span class=\"hpu-video-transcript-chapter-time\"><a href=\"https:\/\/www.youtube.com\/watch?v=gyi8i1wGniM&amp;t=24\">0:24<\/a><\/span><\/p>\n<p class=\"hpu-video-transcript-text\">While I was at High Point University, I was a media entertainment fellow, so I was really tight with about 15 other students. Um, we traveled around campus, ate everything together, had classes together. Um, really got some insight on the entertainment focus of what I really came to college to do.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"hpu-video-transcript-chapter\">\n<div class=\"hpu-video-transcript-chapter-header\" role=\"button\" aria-expanded=\"true\">\n<div class=\"hpu-video-transcript-chapter-header-top\">\n<div class=\"hpu-video-transcript-chapter-number\">3<\/div>\n<h2 class=\"hpu-video-transcript-speaker\">Why study communications at High Point University?<\/h2>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"hpu-video-transcript-text-container\">\n<div class=\"hpu-video-transcript-text-inner\">\n                                    <span class=\"hpu-video-transcript-chapter-time\"><a href=\"https:\/\/www.youtube.com\/watch?v=gyi8i1wGniM&amp;t=42\">0:42<\/a><\/span><\/p>\n<p class=\"hpu-video-transcript-text\">Really, when I came over to High Point University, one of the things that really grabbed me was the communications program but also becoming in this program of media entertainment fellows.<\/p>\n<p class=\"hpu-video-transcript-text\">So during my time at High Point, I actually got to go to the Republican National Convention. I was on the ground there reporting. Um, I also got to go to Los Angeles during the summer. We got to go to different press events for different studios and really get integrated into entertainment and network and build those relationships throughout my college career.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"hpu-video-transcript-chapter\">\n<div class=\"hpu-video-transcript-chapter-header\" role=\"button\" aria-expanded=\"true\">\n<div class=\"hpu-video-transcript-chapter-header-top\">\n<div class=\"hpu-video-transcript-chapter-number\">4<\/div>\n<h2 class=\"hpu-video-transcript-speaker\">Where do High Point University students intern?<\/h2>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"hpu-video-transcript-text-container\">\n<div class=\"hpu-video-transcript-text-inner\">\n                                    <span class=\"hpu-video-transcript-chapter-time\"><a href=\"https:\/\/www.youtube.com\/watch?v=gyi8i1wGniM&amp;t=70\">1:10<\/a><\/span><\/p>\n<p class=\"hpu-video-transcript-text\">So I did a couple of internships over the summer during my time at High Point University. Um, one at a PR agency in Santa Monica and another one at a mobile app company in Austin, Texas.<\/p>\n<p class=\"hpu-video-transcript-text\">After graduation, I really got into the event space. I worked in experiential marketing at an agency called PMKBNC, and then I moved over to work in TV marketing at NBC Universal.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"hpu-video-transcript-chapter\">\n<div class=\"hpu-video-transcript-chapter-header\" role=\"button\" aria-expanded=\"true\">\n<div class=\"hpu-video-transcript-chapter-header-top\">\n<div class=\"hpu-video-transcript-chapter-number\">5<\/div>\n<h2 class=\"hpu-video-transcript-speaker\">How do HPU professors mentor their students?<\/h2>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"hpu-video-transcript-text-container\">\n<div class=\"hpu-video-transcript-text-inner\">\n                                    <span class=\"hpu-video-transcript-chapter-time\"><a href=\"https:\/\/www.youtube.com\/watch?v=gyi8i1wGniM&amp;t=92\">1:32<\/a><\/span><\/p>\n<p class=\"hpu-video-transcript-text\">I&#039;d say one of the things that really helped me actually was the professors on campus. So really developing those relationships with my professors who were able to give me advice all the time and help me through things was super helpful during my time at High Point.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"hpu-video-transcript-chapter\">\n<div class=\"hpu-video-transcript-chapter-header\" role=\"button\" aria-expanded=\"true\">\n<div class=\"hpu-video-transcript-chapter-header-top\">\n<div class=\"hpu-video-transcript-chapter-number\">6<\/div>\n<h2 class=\"hpu-video-transcript-speaker\">How does HPU Career Services support students?<\/h2>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"hpu-video-transcript-text-container\">\n<div class=\"hpu-video-transcript-text-inner\">\n                                    <span class=\"hpu-video-transcript-chapter-time\"><a href=\"https:\/\/www.youtube.com\/watch?v=gyi8i1wGniM&amp;t=104\">1:44<\/a><\/span><\/p>\n<p class=\"hpu-video-transcript-text\">Um, I did go to the Career Services Center a lot. I really utilized Bridget Fulcom. I went over there and we would search on LinkedIn for connections of people who had gone to the school who might be able to give me advice, who I could talk to and pick their brain.<\/p>\n<p class=\"hpu-video-transcript-text\">Um, they helped me with my resume. They were pivotal and I think it&#039;s really important for students to use that.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"hpu-video-transcript-chapter\">\n<div class=\"hpu-video-transcript-chapter-header\" role=\"button\" aria-expanded=\"true\">\n<div class=\"hpu-video-transcript-chapter-header-top\">\n<div class=\"hpu-video-transcript-chapter-number\">7<\/div>\n<h2 class=\"hpu-video-transcript-speaker\">What are the best skills for career success?<\/h2>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"hpu-video-transcript-text-container\">\n<div class=\"hpu-video-transcript-text-inner\">\n                                    <span class=\"hpu-video-transcript-chapter-time\"><a href=\"https:\/\/www.youtube.com\/watch?v=gyi8i1wGniM&amp;t=122\">2:02<\/a><\/span><\/p>\n<p class=\"hpu-video-transcript-text\">One of the biggest skills is just being a go-getter and being confident. I think that goes a long way. Your experience brings you so far, but really having those skills to be able to speak and speak confidently and concisely and know what you&#039;re talking about.<\/p>\n<p class=\"hpu-video-transcript-text\">Um, and make those connections and be able to have something in common with someone is what sets people apart and what I think sets me apart particularly in my industry.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"hpu-video-transcript-chapter\">\n<div class=\"hpu-video-transcript-chapter-header\" role=\"button\" aria-expanded=\"true\">\n<div class=\"hpu-video-transcript-chapter-header-top\">\n<div class=\"hpu-video-transcript-chapter-number\">8<\/div>\n<h2 class=\"hpu-video-transcript-speaker\">What does choose to be extraordinary mean?<\/h2>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"hpu-video-transcript-text-container\">\n<div class=\"hpu-video-transcript-text-inner\">\n                                    <span class=\"hpu-video-transcript-chapter-time\"><a href=\"https:\/\/www.youtube.com\/watch?v=gyi8i1wGniM&amp;t=147\">2:27<\/a><\/span><\/p>\n<p class=\"hpu-video-transcript-text\">Choose to be extraordinary means going beyond the textbook and really going for what you want in your passions. Not just studying because you have to, but because you&#039;re passionate and you want to learn and go for it.<\/p>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/section><\/div>\n<\/aside>\n<div class=\"hpu-video-main\">\n<section class=\"hpu-video-section\" aria-label=\"Video Player\">\n<div class=\"hpu-video-section-iframe\">\n                    <iframe loading=\"lazy\" title=\"Destination Success | Summer Tonsfeldt\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/gyi8i1wGniM?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n                <\/div>\n<\/section>\n<div class=\"hpu-video-body\">\n<div class=\"hpu-video-tabs\">\n                    <button class=\"hpu-video-tab-btn active\" data-tab=\"description\">Description<\/button><br \/>\n                    <button class=\"hpu-video-tab-btn\" data-tab=\"related\">Related Videos<\/button>\n                <\/div>\n<div class=\"hpu-video-tab-content active\" id=\"tab-description\">\n<section class=\"hpu-video-summary\" aria-label=\"Video Description\">\n<p>Summer Tonsfeldt, a 2014 graduate of High Point University, shares her journey to success in the entertainment and media industry. She highlights her experiences in the Media Entertainment Fellows program, multiple internships, and collaborative relationships with the university&#039;s professors and Career Services Center. Tonsfeldt emphasizes the critical importance of being a go-getter, building professional connections, speaking confidently, and fully leveraging university resources to achieve career goals. She concludes by defining High Point University&#039;s motto &#039;Choose to be Extraordinary&#039; as having the passion to go beyond required coursework to actively pursue your personal and professional aspirations.<\/p>\n<div class=\"hpu-video-tags\"><\/div>\n<\/section><\/div>\n<div class=\"hpu-video-tab-content\" id=\"tab-related\">\n<section class=\"hpu-related-videos\" aria-label=\"Related Videos\">\n<div class=\"hpu-related-videos-slider\"><\/div>\n<p class=\"hpu-related-videos-none\">No related videos found.<\/p>\n<\/section><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<script>\r\n  \/\/ \u2500\u2500 Initialize Transcript Headings \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n  const firstChapterHeading = document.querySelector('.hpu-video-transcript-chapter:first-child .hpu-video-transcript-speaker');\r\n  if (firstChapterHeading) {\r\n    firstChapterHeading.innerHTML = 'Introduction';\r\n  }\r\n\r\n  \/\/ \u2500\u2500 Transcript Accordion Logic \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n  const chapters = document.querySelectorAll(\".hpu-video-transcript-chapter\");\r\n  \r\n  chapters.forEach(chapter => {\r\n    const header = chapter.querySelector(\".hpu-video-transcript-chapter-header\");\r\n    const content = chapter.querySelector(\".hpu-video-transcript-text-container\");\r\n    \r\n    \/\/ Initialize height for expanded ones\r\n    if (chapter.classList.contains(\"expanded\")) {\r\n      content.style.height = \"auto\";\r\n    }\r\n\r\n    header.addEventListener(\"click\", () => {\r\n      const isExpanded = chapter.classList.contains(\"expanded\");\r\n      \r\n      if (!isExpanded) {\r\n        \/\/ Expand\r\n        chapter.classList.add(\"expanded\");\r\n        header.setAttribute(\"aria-expanded\", \"true\");\r\n        content.style.height = content.scrollHeight + \"px\";\r\n        \r\n        content.addEventListener(\r\n          \"transitionend\",\r\n          function handler() {\r\n            content.style.height = \"auto\";\r\n            content.removeEventListener(\"transitionend\", handler);\r\n          },\r\n          { once: true }\r\n        );\r\n      } else {\r\n        \/\/ Collapse\r\n        content.style.height = content.scrollHeight + \"px\";\r\n        content.offsetHeight; \/\/ force reflow\r\n        content.style.height = \"0\";\r\n        chapter.classList.remove(\"expanded\");\r\n        header.setAttribute(\"aria-expanded\", \"false\");\r\n      }\r\n    });\r\n  });\r\n\r\n  \/\/ \u2500\u2500 Tab Logic \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n  const tabBtns = document.querySelectorAll(\".hpu-video-tab-btn\");\r\n  const tabContents = document.querySelectorAll(\".hpu-video-tab-content\");\r\n\r\n  tabBtns.forEach(btn => {\r\n    btn.addEventListener(\"click\", () => {\r\n      const targetId = \"tab-\" + btn.getAttribute(\"data-tab\");\r\n      \r\n      tabBtns.forEach(b => b.classList.remove(\"active\"));\r\n      tabContents.forEach(c => c.classList.remove(\"active\"));\r\n      \r\n      btn.classList.add(\"active\");\r\n      const targetContent = document.getElementById(targetId);\r\n      if (targetContent) targetContent.classList.add(\"active\");\r\n    });\r\n  });\r\n\r\n  \/\/ \u2500\u2500 Fancybox Modal Logic \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n  document\r\n    .querySelectorAll(\".hpu-video-transcript-text-inner\")\r\n    .forEach(function (inner) {\r\n      inner.addEventListener(\"click\", function (e) {\r\n        var link = inner.querySelector(\".hpu-video-transcript-chapter-time a\");\r\n        if (!link) return;\r\n        e.stopPropagation(); \/\/ prevent accordion toggle when clicking timestamp\r\n        e.preventDefault();\r\n        var url = new URL(link.href);\r\n        var t = parseInt(url.searchParams.get(\"t\"), 10);\r\n        if (isNaN(t)) t = 0;\r\n        var videoWrapper = document.querySelector(\r\n          \".hpu-video-section-iframe .video-wrapper\",\r\n        );\r\n        var baseUrl = videoWrapper\r\n          ? videoWrapper.getAttribute(\"href\")\r\n          : \"https:\/\/www.youtube.com\/embed\/1qN81LI7qok?feature=oembed\";\r\n        var embedBase = baseUrl.split(\"?\")[0];\r\n\r\n        \/\/ Dynamically fit the modal to the viewport at 16:9, no black bars\r\n        var pad = 40; \/\/ breathing room around the modal\r\n        var vw = window.innerWidth - pad * 2;\r\n        var vh = window.innerHeight - pad * 2;\r\n        var modalWidth, modalHeight;\r\n\r\n        if (vw \/ vh >= 16 \/ 9) {\r\n          \/\/ Viewport is wider than 16:9 \u2014 height is the constraint\r\n          modalHeight = vh;\r\n          modalWidth = Math.round((vh * 16) \/ 9);\r\n        } else {\r\n          \/\/ Viewport is taller than 16:9 \u2014 width is the constraint\r\n          modalWidth = vw;\r\n          modalHeight = Math.round((vw * 9) \/ 16);\r\n        }\r\n\r\n        $.fancybox.open([\r\n          {\r\n            src: embedBase + \"?autoplay=1&start=\" + t,\r\n            type: \"iframe\",\r\n            width: modalWidth,\r\n            height: modalHeight,\r\n          },\r\n        ]);\r\n      });\r\n    });\r\n\r\n  \/\/ \u2500\u2500 CTA Logic \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n  const ctaLibrary = {\r\n    apply: {\r\n      title: \"Apply to High Point\",\r\n      text: \"The application takes about 20 minutes. Early Decision closes November 1.\",\r\n      buttons: [\r\n        {\r\n          text: \"Start Your Application\",\r\n          link: \"https:\/\/www.highpoint.edu\/admissions\/apply\/\",\r\n        },\r\n      ],\r\n    },\r\n    visit: {\r\n      title: \"See It for Yourself\",\r\n      text: \"Daily visits and fall open houses. Sit in on a class, see a residence hall and eat in the dining halls.\",\r\n      buttons: [\r\n        {\r\n          text: \"Book a Visit\",\r\n          link: \"https:\/\/www.highpoint.edu\/admissions\/experience-high-point-university\/\",\r\n        },\r\n      ],\r\n    },\r\n    request: {\r\n      title: \"Get Program Details\",\r\n      text: \"Tell us what you want to study, and the admissions counselor for your region will follow up.\",\r\n      buttons: [\r\n        {\r\n          text: \"Request Info\",\r\n          link: \"https:\/\/discover.highpoint.edu\/register\/inquiry\",\r\n        },\r\n      ],\r\n    },\r\n    deposit: {\r\n      title: \"Make Your Deposit\",\r\n      text: \"Ready to join the #HPUFamily? Secure your place in the incoming class and unlock access to the nation's best dorms today. Your housing preference is based on your deposit date!\",\r\n      buttons: [\r\n        {\r\n          text: \"Submit Your Deposit\",\r\n          link: \"\/admissions\/landing-deposit\",\r\n        },\r\n      ],\r\n    },\r\n  };\r\n\r\n  const urlParams = new URLSearchParams(window.location.search);\r\n\r\n  const ctaElement = document.getElementById(\"hpu-video-cta\");\r\n  const ctaParam = urlParams.get(\"cta\");\r\n\r\n  \/\/ \u2500\u2500 Start time: ?t=SECONDS starts this page's video there (ads use it to open on the right moment).\r\n  \/\/ Destination Success videos open with a ~10 second logo intro, so they start past it unless ?t says otherwise.\r\n  const hpuStartAt = (function () { var v = parseInt(urlParams.get(\"t\"), 10); return v > 0 && v < 36000 ? v : 0; })();\r\n  const HPU_DS_SKIP = 10;\r\n  function hpuIsDS(title) { return \/^\\s*Destination Success\\b\/i.test(title || \"\"); }\r\n  function hpuPageTitle() { var h = document.querySelector(\"h1\"); return (h && h.textContent) || document.title || \"\"; }\r\n  const hpuMainStart = hpuStartAt || (hpuIsDS(hpuPageTitle()) ? HPU_DS_SKIP : 0);\r\n\r\n  if (ctaElement) {\r\n    const ctaData = ctaLibrary[ctaParam] || ctaLibrary[\"visit\"];\r\n\r\n    \/\/ Title\r\n    const ctaTitleEl = document.createElement(\"h2\");\r\n    ctaTitleEl.textContent = ctaData.title;\r\n    ctaElement.appendChild(ctaTitleEl);\r\n\r\n    \/\/ Text\r\n    const ctaTextEl = document.createElement(\"p\");\r\n    ctaTextEl.textContent = ctaData.text;\r\n    ctaElement.appendChild(ctaTextEl);\r\n\r\n    \/\/ Button\r\n    if (ctaData.buttons && ctaData.buttons.length > 0) {\r\n      ctaData.buttons.forEach(function (button) {\r\n        const ctaButtonEl = document.createElement(\"a\");\r\n        const ctaClass = button?.class ?? \"hpu-btn-purple-outline\";\r\n        ctaButtonEl.textContent = button.text;\r\n        ctaButtonEl.setAttribute(\"href\", button.link);\r\n        ctaButtonEl.setAttribute(\"class\", ctaClass);\r\n        ctaElement.appendChild(ctaButtonEl);\r\n      });\r\n    }\r\n  }\r\n\r\n  \/\/ \u2500\u2500 Captions on by default: add cc_load_policy to the main YouTube embed \u2500\u2500\r\n  (function () {\r\n    \/\/ The theme lazy-loads the embed: the URL can sit in data-src until the player loads, so update both.\r\n    var f = document.querySelector('.hpu-video-section-iframe iframe[src*=\"youtube\"], .hpu-video-section-iframe iframe[data-src*=\"youtube\"]');\r\n    if (!f) return;\r\n    ['src', 'data-src'].forEach(function (attr) {\r\n      var v = f.getAttribute(attr);\r\n      if (!v || v.indexOf('youtube') < 0) return;\r\n      try {\r\n        var u = new URL(v, location.href);\r\n        u.searchParams.set('cc_load_policy', '1');\r\n        u.searchParams.set('cc_lang_pref', 'en');\r\n        if (hpuMainStart) u.searchParams.set('start', String(hpuMainStart));\r\n        var nv = u.toString();\r\n        if (nv !== v) f.setAttribute(attr, nv);\r\n      } catch (e) {}\r\n    });\r\n  })();\r\n\r\n  \/\/ \u2500\u2500 Mobile CTA placement: move the CTA directly under the video at <=1365px \u2500\u2500\r\n  (function () {\r\n    var cta = document.querySelector('.hpu-video-cta-container');\r\n    var home = document.querySelector('.hpu-video-sidebar-inner');\r\n    var video = document.querySelector('.hpu-video-main > .hpu-video-section');\r\n    if (!cta || !home || !video) return;\r\n    var mq = window.matchMedia('(max-width: 1365px)');\r\n    function place() {\r\n      if (mq.matches) { if (video.nextElementSibling !== cta) video.insertAdjacentElement('afterend', cta); }\r\n      else if (cta.parentElement !== home) { home.insertBefore(cta, home.firstChild); }\r\n    }\r\n    place();\r\n    if (mq.addEventListener) mq.addEventListener('change', place); else if (mq.addListener) mq.addListener(place);\r\n  })();\r\n\r\n  \/\/ \u2500\u2500 Mobile video modal: edge-to-edge player, larger captions, CTA, swipe feed of related videos \u2500\u2500\r\n  (function () {\r\n    var PHONE = window.matchMedia('(max-width: 900px), (max-height: 500px) and (pointer: coarse)');\r\n    var LAND = window.matchMedia('(orientation: landscape)');\r\n    var CALM = window.matchMedia('(prefers-reduced-motion: reduce)');\r\n    var box = document.querySelector('.hpu-video-section-iframe');\r\n    if (!box) return;\r\n    \/\/ TikTok test mode (?vmfeed=tiktok, remembered for the browser tab) runs the \"HPU Video TikTok Feed\" snippet instead of this viewer.\r\n    var hpuFeed = (location.search.match(\/[?&]vmfeed=(tiktok|youtube)\\b\/) || [])[1]; try { if (!hpuFeed) hpuFeed = sessionStorage.getItem('hpu_vm_feed'); } catch (e) {}\r\n    if (hpuFeed === 'tiktok') return;\r\n    var F = 'Poppins,system-ui,-apple-system,sans-serif';\r\n    var css = document.createElement('style');\r\n    css.textContent = [\r\n      '.hpu-vm{position:fixed;inset:0;z-index:2147483000;background:#0d0a14;opacity:0;transition:opacity .2s ease;overscroll-behavior:contain}',\r\n      '.hpu-vm.is-open{opacity:1}',\r\n      '.hpu-vm.is-standby{visibility:hidden;pointer-events:none}',\r\n      '.hpu-vm-feed{position:relative;height:100%;overflow-x:hidden;overflow-y:auto;scroll-snap-type:y mandatory;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}',\r\n      '.hpu-vm-feed::-webkit-scrollbar{display:none}',\r\n      '.hpu-vm-slide{position:relative;height:100%;box-sizing:border-box;scroll-snap-align:start;scroll-snap-stop:always;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}',\r\n      '.hpu-vm-frame{position:relative;width:100vw;aspect-ratio:16\/9;background:#000 center\/cover no-repeat;flex:none}',\r\n      '.hpu-vm-glow{position:absolute;inset:-9% -2%;z-index:-1;pointer-events:none;filter:blur(20px) saturate(1.2);opacity:.22;transform:translateZ(0)}',\r\n      '.hpu-vm-glow i{position:absolute;inset:0;background:center\/cover no-repeat;transition:opacity 2.4s ease;will-change:opacity}',\r\n      '.hpu-vm-glow i.off{opacity:0}',\r\n      '.hpu-vm-stage{position:absolute;left:0;top:0;z-index:2;background:#000;opacity:0;pointer-events:none;transition:opacity .12s ease}',\r\n      '.hpu-vm-stage.is-live{opacity:1;pointer-events:auto}',\r\n      '.hpu-vm-stage.no-fade{transition:none}',\r\n      '.hpu-vm-stage.is-preview{opacity:1}',\r\n      '.hpu-vm-stage > div,.hpu-vm-stage iframe{position:absolute;inset:0;width:100%;height:100%;border:0}',\r\n      '.hpu-vm-close{position:absolute;top:calc(env(safe-area-inset-top,0px) + 10px);right:calc(env(safe-area-inset-right,0px) + 10px);width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.14);color:#fff;font:400 26px\/44px system-ui,sans-serif;cursor:pointer;z-index:6;touch-action:manipulation}',\r\n      '.hpu-vm-close::before{content:\"\";position:absolute;inset:-10px}',\r\n      '.hpu-vm-cta{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;gap:12px;padding:0 24px;text-align:center;transition:opacity .45s ease,transform .45s ease}',\r\n      '.hpu-vm-cta p{margin:0;color:#fff;font:500 18px\/1.35 ' + F + ';letter-spacing:0;text-shadow:0 1px 14px rgba(0,0,0,.55)}',\r\n      '.hpu-vm-cta a{display:inline-block;padding:12px 24px;border:2px solid #fff;border-radius:5px;background:#fff;color:#330072;font:500 15px\/18px ' + F + ';letter-spacing:.01em;text-decoration:none}',\r\n      '.hpu-vm.cta-hidden .hpu-vm-cta,.hpu-vm-slide:not(.is-active) .hpu-vm-cta{opacity:0;transform:translateY(10px);pointer-events:none}',\r\n      '.hpu-vm-sound{display:none;position:absolute;left:12px;top:12px;z-index:2;padding:8px 14px;border-radius:999px;border:0;background:rgba(0,0,0,.65);color:#fff;font:500 13px\/1 ' + F + '}',\r\n      '.hpu-vm.needs-sound .hpu-vm-stage.is-live .hpu-vm-sound{display:block}',\r\n      '.hpu-vm-more{position:absolute;left:50%;bottom:max(4px, calc(env(safe-area-inset-bottom,0px) - 6px));transform:translateX(-50%);z-index:4;display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 20px;border:0;background:none;color:rgba(255,255,255,.92);font:500 11px\/1 ' + F + ';letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:opacity .35s ease;-webkit-tap-highlight-color:transparent;pointer-events:none}',\r\n      '.hpu-vm-more svg{width:26px;height:26px;filter:drop-shadow(0 1px 3px rgba(0,0,0,.55));animation:hpuVmNudge 2.4s ease-in-out infinite}',\r\n      '@keyframes hpuVmNudge{0%,100%{transform:translateY(0);opacity:.7}50%{transform:translateY(-6px);opacity:1}}',\r\n      '.hpu-vm.is-swiping .hpu-vm-more,.hpu-vm.at-end .hpu-vm-more{opacity:0;pointer-events:none}',\r\n      '@media (prefers-reduced-motion: reduce){.hpu-vm-more svg{animation:none}.hpu-vm-cta{transition:opacity .2s ease}}',\r\n      '@media (orientation: landscape){',\r\n      ' .hpu-vm-slide{padding:0;gap:0}',\r\n      ' .hpu-vm-frame{width:min(100vw,calc(100dvh * 16 \/ 9));height:auto}',\r\n      ' .hpu-vm-cta{position:absolute;right:calc(env(safe-area-inset-right,0px) + 14px);bottom:14px;padding:0;flex-direction:row;gap:0}',\r\n      ' .hpu-vm-cta p{display:none}',\r\n      ' .hpu-vm-cta a{padding:9px 18px;font-size:13px;line-height:16px;box-shadow:0 4px 18px rgba(0,0,0,.4)}',\r\n      ' .hpu-vm-close{background:rgba(0,0,0,.5)}',\r\n      ' .hpu-vm-more{display:none}',\r\n      ' .hpu-vm-glow{inset:-2% -4%}',\r\n      '}'\r\n    ].join('');\r\n    document.head.appendChild(css);\r\n\r\n    function ytId(u) {\r\n      var m = (u || '').match(\/(?:embed\\\/|youtu\\.be\\\/|[?&]v=)([A-Za-z0-9_-]{11})\/);\r\n      return m ? m[1] : null;\r\n    }\r\n    function mainId() {\r\n      var el = box.querySelector('[href*=\"youtube\"], iframe[src*=\"youtube\"], iframe[data-src*=\"youtube\"]');\r\n      return el ? ytId(el.getAttribute('href') || el.getAttribute('src') || el.getAttribute('data-src')) : null;\r\n    }\r\n    var cta = (typeof ctaLibrary !== 'undefined' && (ctaLibrary[ctaParam] || ctaLibrary.visit)) || null;\r\n    var hasCta = !!(cta && cta.buttons && cta.buttons[0]);\r\n\r\n    var ytReady = null;\r\n    function loadYT() {\r\n      if (ytReady) return ytReady;\r\n      ytReady = new Promise(function (res) {\r\n        if (window.YT && window.YT.Player) return res();\r\n        if (window.YT && window.YT.ready) return window.YT.ready(res);\r\n        var prev = window.onYouTubeIframeAPIReady;\r\n        window.onYouTubeIframeAPIReady = function () { if (prev) try { prev(); } catch (e) {} res(); };\r\n        var s = document.createElement('script'); s.src = 'https:\/\/www.youtube.com\/iframe_api'; document.head.appendChild(s);\r\n      });\r\n      return ytReady;\r\n    }\r\n    if (PHONE.matches) loadYT();\r\n\r\n    var modal = null, feed = null;\r\n    var items = [], slides = [], idx = 0, swiping = false;\r\n    var SKIP = 0.8; \/\/ our videos open with a fade from black: start every feed video just past it\r\n    \/\/ Where a video starts: the page's own video honors ?t, and Destination Success videos skip their logo intro.\r\n    function startFor(it, isMain) { if (isMain && hpuMainStart) return hpuMainStart; return it && hpuIsDS(it.title) ? HPU_DS_SKIP : SKIP; }\r\n    var standby = false; \/\/ viewer built ahead of time, hidden, with the page's video already buffering\r\n    var wantAudio = true; \/\/ the viewer's sound choice, remembered across videos until the viewer is closed\r\n    var decks = [], cur = null; \/\/ two players: one on screen, one quietly preloading the next video\r\n    var hideTimer = null, settleTimer = null, ctaTimer = null, soundTimer = null, revealTimer = null, preloadTimer = null;\r\n\r\n    \/\/ iPhone drops the click when a tap lands while the feed is still gliding after a swipe (the tap just stops the\r\n    \/\/ scroll). Buttons in the viewer act on the touch itself, so they work every time.\r\n    function fastTap(el, fn) {\r\n      var start = null;\r\n      el.addEventListener('touchstart', function (e) { var t = e.touches[0]; start = [t.clientX, t.clientY]; }, { passive: true });\r\n      el.addEventListener('touchend', function (e) {\r\n        var t = e.changedTouches[0], ok = start && Math.abs(t.clientX - start[0]) < 24 && Math.abs(t.clientY - start[1]) < 24;\r\n        start = null;\r\n        if (ok) { e.preventDefault(); fn(e); }\r\n      });\r\n      el.addEventListener('click', function (e) { fn(e); });\r\n    }\r\n    function current() { return items[idx] ? items[idx].id : mainId(); }\r\n    function track(name, extra) {\r\n      try { (window.dataLayer = window.dataLayer || []).push(Object.assign({ event: name, video_id: current(), cta_type: ctaParam || 'visit' }, extra || {})); } catch (e) {}\r\n    }\r\n    function capSize() { return LAND.matches ? 1 : 2; }\r\n    function applyCaptions(d) {\r\n      d = d || cur;\r\n      if (!d || !d.player || !d.player.setOption) return;\r\n      try { d.player.loadModule('captions'); d.player.setOption('captions', 'track', { languageCode: 'en' }); d.player.setOption('captions', 'fontSize', capSize()); } catch (e) {}\r\n    }\r\n\r\n    \/\/ Playlist: this page's video first, then an endless random run through the whole \/watch library.\r\n    function feedItems() {\r\n      var first = mainId(); if (!first) return [];\r\n      return [{ id: first, title: hpuPageTitle() }];\r\n    }\r\n    \/\/ Every video post id, shuffled once per page. Each is used once; after the whole library has been shown it reshuffles.\r\n    var pool = null, poolAll = null, usedPosts = {}, seenVids = {}, fetching = false, emptyRuns = 0;\r\n    function apiBase() {\r\n      var el = document.querySelector('link[rel=\"https:\/\/api.w.org\/\"]');\r\n      return ((window.wpApiSettings && window.wpApiSettings.root) || (el && el.getAttribute('href')) || '\/wp-json\/').replace(\/\\\/$\/, '');\r\n    }\r\n    function thisPostId() { var m = document.body.className.match(\/\\bpostid-(\\d+)\\b\/); return m ? +m[1] : 0; }\r\n    function shuffled(a) { a = a.slice(); for (var i = a.length - 1; i > 0; i--) { var j = Math.floor(Math.random() * (i + 1)), t = a[i]; a[i] = a[j]; a[j] = t; } return a; }\r\n    function getJSON(u) { return fetch(u).then(function (r) { if (!r.ok) throw new Error(r.status); return r.json().then(function (j) { return { j: j, pages: +(r.headers.get('X-WP-TotalPages') || 1) }; }); }); }\r\n    function loadPool() {\r\n      if (pool) return Promise.resolve();\r\n      var base = apiBase(), cached = null;\r\n      try { cached = sessionStorage.getItem('hpu_rv_cat'); } catch (e) {}\r\n      var cat = cached ? Promise.resolve(+cached) : getJSON(base + '\/wp\/v2\/categories?slug=hpu-videos&per_page=1&_fields=id').then(function (x) {\r\n        try { sessionStorage.setItem('hpu_rv_cat', x.j[0].id); } catch (e) {}\r\n        return x.j[0].id;\r\n      });\r\n      return cat.then(function (c) {\r\n        var url = function (p) { return base + '\/wp\/v2\/posts?categories=' + c + '&per_page=100&page=' + p + '&_fields=id'; };\r\n        return getJSON(url(1)).then(function (first) {\r\n          var rest = []; for (var p = 2; p <= first.pages; p++) rest.push(getJSON(url(p)));\r\n          return Promise.all(rest).then(function (more) { return more.reduce(function (all, x) { return all.concat(x.j); }, first.j); });\r\n        });\r\n      }).then(function (list) {\r\n        var me = thisPostId();\r\n        poolAll = list.map(function (p) { return p.id; }).filter(function (id) { return id !== me; });\r\n        pool = shuffled(poolAll);\r\n      });\r\n    }\r\n    function takeIds(k) {\r\n      var out = [];\r\n      while (out.length < k && poolAll && poolAll.length) {\r\n        if (!pool.length) { usedPosts = {}; pool = shuffled(poolAll); seenVids = {}; if (items[0]) seenVids[items[0].id] = 1; } \/\/ whole library shown: start a fresh shuffle\r\n        var id = pool.shift();\r\n        if (!usedPosts[id]) { usedPosts[id] = 1; out.push(id); }\r\n      }\r\n      return out;\r\n    }\r\n    \/\/ Hidden and waiting: keep two queued (light on page load). Open: keep four queued ahead of the one on screen, so the feed never ends.\r\n    function ahead() { return standby ? 2 : 4; }\r\n    function fillFeed() {\r\n      if (!modal || fetching || items.length - idx > ahead()) return;\r\n      fetching = true;\r\n      loadPool().then(function () {\r\n        var ids = takeIds(standby ? 2 : 4); if (!ids.length) return [];\r\n        return getJSON(apiBase() + '\/wp\/v2\/posts?include=' + ids.join(',') + '&per_page=' + ids.length + '&_fields=id,link,title,content').then(function (x) {\r\n          var byId = {}; x.j.forEach(function (p) { byId[p.id] = p; });\r\n          var dec = document.createElement('textarea');\r\n          return ids.map(function (id) {\r\n            var p = byId[id]; if (!p) return null;\r\n            var m = ((p.content && p.content.rendered) || '').match(\/youtube(?:-nocookie)?\\.com\\\/embed\\\/([A-Za-z0-9_-]{11})\/) || JSON.stringify(p.meta || {}).match(\/embed\\\\*\\\/([A-Za-z0-9_-]{11})\/);\r\n            dec.innerHTML = (p.title && p.title.rendered) || '';\r\n            return m ? { id: m[1], title: dec.value, link: p.link } : null;\r\n          }).filter(Boolean);\r\n        });\r\n      }).then(function (list) {\r\n        fetching = false;\r\n        if (!modal) return;\r\n        var added = 0;\r\n        list.forEach(function (v) {\r\n          if (seenVids[v.id]) return;\r\n          seenVids[v.id] = 1; added++;\r\n          items.push(v); var sl = makeSlide(v); slides.push(sl); feed.insertBefore(sl, decks[0] ? decks[0].el : null);\r\n        });\r\n        emptyRuns = added ? 0 : emptyRuns + 1;\r\n        modal.classList.toggle('at-end', idx >= slides.length - 1);\r\n        if (!standby) preloadNext();\r\n        if (items.length - idx <= ahead() && emptyRuns < 3) fillFeed();\r\n      }).catch(function () { fetching = false; });\r\n    }\r\n    function makeCta() {\r\n      var wrap = document.createElement('div'); wrap.className = 'hpu-vm-cta';\r\n      var p = document.createElement('p'); p.textContent = cta.title;\r\n      var a = document.createElement('a'); a.textContent = cta.buttons[0].text; a.href = cta.buttons[0].link;\r\n      fastTap(a, function (e) {\r\n        track('video_modal_cta_click', { link_url: a.href, feed_position: idx });\r\n        if (e.type === 'touchend') window.location.href = a.href; \/\/ a plain click follows the link on its own\r\n      });\r\n      wrap.appendChild(p); wrap.appendChild(a);\r\n      return wrap;\r\n    }\r\n    function makeSlide(item) {\r\n      var s = document.createElement('section'); s.className = 'hpu-vm-slide';\r\n      if (item.title) s.setAttribute('aria-label', item.title);\r\n      var f = document.createElement('div'); f.className = 'hpu-vm-frame';\r\n      \/\/ No cover image: the frame stays black until the video itself is on screen.\r\n      \/\/ Ambient glow: the video's own colors, blurred out around the frame.\r\n      var g = document.createElement('div'); g.className = 'hpu-vm-glow'; g.setAttribute('aria-hidden', 'true');\r\n      g.innerHTML = '<i><\/i><i class=\"off\"><\/i>'; g.firstChild.style.backgroundImage = 'url(\"https:\/\/i.ytimg.com\/vi\/' + item.id + '\/mq1.jpg\")';\r\n      f.appendChild(g);\r\n      s.appendChild(f);\r\n      if (hasCta) s.appendChild(makeCta());\r\n      return s;\r\n    }\r\n    function addSlides() {\r\n      if (!modal) return;\r\n      feedItems().forEach(function (v) {\r\n        if (items.some(function (x) { return x.id === v.id; })) return;\r\n        items.push(v); var s = makeSlide(v); slides.push(s); feed.insertBefore(s, decks[0] ? decks[0].el : null);\r\n      });\r\n      modal.classList.toggle('at-end', idx >= slides.length - 1);\r\n      if (!standby && decks.length) preloadNext();\r\n    }\r\n    function markActive() {\r\n      slides.forEach(function (s, i) { s.classList.toggle('is-active', i === idx); });\r\n      modal.classList.toggle('at-end', idx >= slides.length - 1);\r\n    }\r\n    \/\/ Tint the phone's status bar \/ notch area to match the dark viewer while it is open.\r\n    \/\/ theme-color covers older iOS Safari; Safari 26 reads the page background near the top, so set that too.\r\n    var tint = null;\r\n    function setTint(on) {\r\n      var de = document.documentElement, b = document.body;\r\n      if (on && !tint) {\r\n        var metas = [].slice.call(document.querySelectorAll('meta[name=\"theme-color\"]'));\r\n        tint = { metas: metas.map(function (m) { return [m, m.getAttribute('content')]; }), html: de.style.backgroundColor, body: b.style.backgroundColor, created: null };\r\n        if (!metas.length) { var m = document.createElement('meta'); m.name = 'theme-color'; document.head.appendChild(m); tint.created = m; metas = [m]; }\r\n        metas.forEach(function (m) { m.setAttribute('content', '#0d0a14'); });\r\n        de.style.backgroundColor = '#0d0a14'; b.style.backgroundColor = '#0d0a14';\r\n      } else if (!on && tint) {\r\n        tint.metas.forEach(function (p) { if (p[1] === null) p[0].removeAttribute('content'); else p[0].setAttribute('content', p[1]); });\r\n        if (tint.created) tint.created.remove();\r\n        de.style.backgroundColor = tint.html; b.style.backgroundColor = tint.body; tint = null;\r\n      }\r\n    }\r\n    \/\/ Three players: the one on screen, the next video and the previous one, so swiping either way is instant.\r\n    function holding(i) {\r\n      if (i < 0 || i >= items.length) return null;\r\n      for (var k = 0; k < decks.length; k++) { var d = decks[k]; if (d !== cur && d.vid === items[i].id) return d; }\r\n      return null;\r\n    }\r\n    function makeDeck(n) {\r\n      var el = document.createElement('div'); el.className = 'hpu-vm-stage';\r\n      el.innerHTML = '<button type=\"button\" class=\"hpu-vm-sound\">Tap for sound<\/button><div><\/div>';\r\n      feed.appendChild(el);\r\n      var d = { el: el, host: el.lastChild, player: null, ready: false, vid: null, slot: -1, preloading: false, seekOnSwap: false, parkTimer: null, loopTimer: null, wantSound: false, forcedMute: false, warm: false, capsDone: false, startAt: 0 };\r\n      fastTap(el.querySelector('.hpu-vm-sound'), function () {\r\n        wantAudio = true; d.forcedMute = false;\r\n        unlockAudio(); \/\/ inside the tap: allows sound on both players, so no second tap is needed\r\n        try { d.player.unMute(); d.player.setVolume(100); d.player.playVideo(); } catch (e) {}\r\n        modal && modal.classList.remove('needs-sound');\r\n      });\r\n      return d;\r\n    }\r\n    function hideDeck(d) {\r\n      if (!d) return;\r\n      d.el.classList.add('no-fade'); d.el.classList.remove('is-live', 'is-preview');\r\n      void d.el.offsetWidth; \/\/ apply the hide instantly, before the player moves\r\n      d.el.classList.remove('no-fade');\r\n    }\r\n    function placeDeck(d, slot) {\r\n      var s = slides[slot]; if (!d || !s) return;\r\n      d.slot = slot;\r\n      var r = s.querySelector('.hpu-vm-frame').getBoundingClientRect(), fr = feed.getBoundingClientRect();\r\n      d.el.style.top = (r.top - fr.top + feed.scrollTop) + 'px';\r\n      d.el.style.left = (r.left - fr.left) + 'px';\r\n      d.el.style.width = r.width + 'px';\r\n      d.el.style.height = r.height + 'px';\r\n    }\r\n    \/\/ iPhone only lets a player make sound if it was unmuted during a tap. Call this inside a tap: it unmutes the\r\n    \/\/ player on screen and briefly unmutes then re-mutes the others, which unlocks them for later swipes.\r\n    function unlockAudio() {\r\n      decks.forEach(function (d) {\r\n        if (!d.player || !d.ready || !d.player.unMute) return;\r\n        try {\r\n          if (d === cur) { d.player.unMute(); d.player.setVolume(100); }\r\n          else { d.player.unMute(); d.player.mute(); }\r\n        } catch (e) {}\r\n      });\r\n    }\r\n    function createPlayer(d, vid, o) {\r\n      d.vid = vid; d.ready = false;\r\n      return (d.creating = loadYT().then(function () {\r\n        return new Promise(function (res) {\r\n          if (!modal) return;\r\n          d.player = new YT.Player(d.host, {\r\n            videoId: vid,\r\n            playerVars: { autoplay: o.autoplay ? 1 : 0, mute: o.mute ? 1 : 0, playsinline: 1, cc_load_policy: 1, cc_lang_pref: 'en', rel: 0, start: Math.floor(o.start || 0) },\r\n            events: {\r\n              onReady: function () { if ((o.start || 0) % 1) { try { d.player.seekTo(o.start, true); } catch (e) {} } d.ready = true; res(); },\r\n              onApiChange: function () { if (d === cur) applyCaptions(d); },\r\n              onStateChange: function (e) { onState(d, e.data); }\r\n            }\r\n          });\r\n        });\r\n      }));\r\n    }\r\n    \/\/ While a video plays, drift the glow through YouTube's frame stills (about 25\/50\/75% in) so it shifts with the video.\r\n    var glowTimer = null;\r\n    function stopGlow() { clearInterval(glowTimer); glowTimer = null; }\r\n    function startGlow() {\r\n      stopGlow();\r\n      if (CALM.matches) return;\r\n      var s = slides[idx], item = items[idx]; if (!s || !item) return;\r\n      var g = s.querySelector('.hpu-vm-glow'); if (!g) return;\r\n      var list = [];\r\n      ['mq1', 'mq2', 'mq3'].forEach(function (n) { list.push('https:\/\/i.ytimg.com\/vi\/' + item.id + '\/' + n + '.jpg'); });\r\n      var k = 0;\r\n      glowTimer = setInterval(function () {\r\n        k = (k + 1) % list.length;\r\n        var src = list[k], im = new Image();\r\n        im.onload = function () {\r\n          if (!g.isConnected) return;\r\n          var on = g.querySelector('i:not(.off)'), off = g.querySelector('i.off');\r\n          if (!on || !off) return;\r\n          off.style.backgroundImage = 'url(\"' + src + '\")';\r\n          off.classList.remove('off'); on.classList.add('off');\r\n        };\r\n        im.src = src;\r\n      }, 6500);\r\n    }\r\n    \/\/ Keep the cover image up until the new video is really rolling, so no loading chrome or old frame shows.\r\n    function revealWhenRolling(d) {\r\n      clearTimeout(revealTimer);\r\n      var want = items[idx] && items[idx].id, t0 = Date.now();\r\n      (function check() {\r\n        if (!modal || d !== cur) return;\r\n        var ok;\r\n        try {\r\n          var vd = d.player.getVideoData ? d.player.getVideoData() : null;\r\n          ok = (!vd || !vd.video_id || vd.video_id === want) && d.player.getPlayerState() === 1 && d.player.getCurrentTime() > d.startAt + 0.05;\r\n        } catch (e) { ok = true; }\r\n        if (ok || Date.now() - t0 > 3000) { d.el.classList.add('is-live'); d.el.classList.remove('is-preview'); showCta(300); startGlow(); return; }\r\n        revealTimer = setTimeout(check, 60);\r\n      })();\r\n    }\r\n    function onState(d, s) {\r\n      if (!modal) return;\r\n      if (d !== cur || standby) {\r\n        \/\/ Next-up player: plays muted for a moment so a few seconds buffer, then parks paused on its opening frame\r\n        \/\/ and shows under the next slide, so the swipe brings in the real first frame. It plays when the slide lands.\r\n        if (s === 1 && d.preloading) {\r\n          d.preloading = false; stopPreview(d);\r\n          d.parkTimer = setTimeout(function () {\r\n            d.parkTimer = null;\r\n            if (d === cur) return;\r\n            try { d.player.pauseVideo(); d.player.seekTo(d.skipAt || SKIP, true); } catch (e) {}\r\n            d.seekOnSwap = false;\r\n            if (d.slot === idx + 1 || d.slot === idx - 1) d.el.classList.add('is-preview');\r\n          }, 1500);\r\n        } else if (s === 1 && !d.parkTimer && !d.warm) {\r\n          try { d.player.pauseVideo(); } catch (e) {} \/\/ only one video ever plays\r\n        }\r\n        return;\r\n      }\r\n      clearTimeout(hideTimer);\r\n      if (s === 1) {\r\n        if (d.wantSound) {\r\n          \/\/ Start muted (always allowed), then match the viewer's sound choice. If the browser pauses the video\r\n          \/\/ for unmuting (iPhone, on a player that hasn't been tapped yet), go back to muted playback and offer the tap.\r\n          d.wantSound = false;\r\n          if (wantAudio) {\r\n            try { d.player.unMute(); d.player.setVolume(100); } catch (e) {}\r\n            setTimeout(function () {\r\n              if (d !== cur || !modal) return;\r\n              try { if (d.player.getPlayerState() === 2) { d.forcedMute = true; d.player.mute(); d.player.playVideo(); modal.classList.add('needs-sound'); } } catch (e) {}\r\n            }, 350);\r\n          } else {\r\n            try { d.player.mute(); } catch (e) {}\r\n          }\r\n        }\r\n        if (!d.el.classList.contains('is-live')) revealWhenRolling(d);\r\n        if (!d.capsDone) { d.capsDone = true; applyCaptions(d); }\r\n        hideTimer = setTimeout(function () { modal && modal.classList.add('is-playing'); }, 4000);\r\n        clearTimeout(preloadTimer); preloadTimer = setTimeout(preloadNext, 0); \/\/ queue the next video the moment this one starts\r\n      } else {\r\n        modal.classList.remove('is-playing');\r\n        if (s === 0 && idx < slides.length - 1) go(idx + 1);\r\n      }\r\n    }\r\n    function stopPreview(d) { clearTimeout(d.parkTimer); clearInterval(d.loopTimer); d.parkTimer = null; d.loopTimer = null; }\r\n    function loadInto(d, n) {\r\n      if (!d.player && d.creating) { d.creating.then(function () { preloadNext(); }); return; } \/\/ still being built\r\n      hideDeck(d); placeDeck(d, n); d.capsDone = false; d.skipAt = startFor(items[n]); d.startAt = d.skipAt; d.preloading = true; d.seekOnSwap = true; stopPreview(d);\r\n      if (!d.player) {\r\n        createPlayer(d, items[n].id, { autoplay: true, mute: true, start: d.skipAt }).then(function () { try { d.player.mute(); if (d.player.getPlayerState() !== 1 && d.player.getPlayerState() !== 3) d.player.playVideo(); } catch (e) {} });\r\n      } else {\r\n        d.vid = items[n].id;\r\n        try { d.player.mute(); d.player.loadVideoById({ videoId: items[n].id, startSeconds: d.skipAt }); } catch (e) {}\r\n      }\r\n    }\r\n    \/\/ Make sure the next and previous videos each sit ready in a spare player (next first).\r\n    function preloadNext() {\r\n      if (!modal || standby) return;\r\n      [idx + 1, idx - 1].forEach(function (n) {\r\n        if (n < 0 || n >= items.length || holding(n)) return;\r\n        var keep = [cur, holding(idx + 1), holding(idx - 1)];\r\n        var free = decks.filter(function (d) { return keep.indexOf(d) < 0; })[0];\r\n        if (free) loadInto(free, n);\r\n      });\r\n    }\r\n    function soundCheck(d) {\r\n      clearTimeout(soundTimer);\r\n      soundTimer = setTimeout(function () {\r\n        if (!modal || d !== cur || !d.player || !d.player.getPlayerState) return;\r\n        try {\r\n          if (d.player.getPlayerState() === 2 || d.player.getPlayerState() === 5) { d.forcedMute = true; d.player.mute(); d.player.playVideo(); if (wantAudio) modal.classList.add('needs-sound'); }\r\n          else if (wantAudio && d.player.isMuted && d.player.isMuted()) { d.forcedMute = true; modal.classList.add('needs-sound'); }\r\n          else modal.classList.remove('needs-sound');\r\n        } catch (e) {}\r\n      }, 1500);\r\n    }\r\n    function showCta(delay) {\r\n      clearTimeout(ctaTimer);\r\n      ctaTimer = setTimeout(function () { if (modal && !swiping) modal.classList.remove('cta-hidden'); }, delay || 0);\r\n    }\r\n    function go(n) {\r\n      if (!feed || n < 0 || n >= slides.length) return;\r\n      feed.scrollTo({ top: slides[n].offsetTop, behavior: CALM.matches ? 'auto' : 'smooth' });\r\n    }\r\n\r\n    function onScroll() {\r\n      if (resizing || !slides[idx]) return;\r\n      if (lastH && feed.clientHeight !== lastH) { onResize(); return; } \/\/ the phone turned: this scroll is the layout shifting, not a swipe\r\n      if (!swiping && Math.abs(feed.scrollTop - slides[idx].offsetTop) > 6) {\r\n        swiping = true; clearTimeout(ctaTimer);\r\n        modal.classList.add('is-swiping', 'cta-hidden');\r\n      }\r\n      \/\/ The moment a swipe starts, the video coming in starts playing (muted), so it is already moving as it slides in.\r\n      if (swiping) {\r\n        var dir = feed.scrollTop > slides[idx].offsetTop ? 1 : -1, w = holding(idx + dir);\r\n        if (w && w.ready && !w.warm) {\r\n          w.warm = true; w.preloading = false; stopPreview(w);\r\n          if (w.seekOnSwap) { try { w.player.seekTo(w.skipAt || SKIP, true); } catch (e) {} w.seekOnSwap = false; }\r\n          try { w.player.mute(); w.player.playVideo(); } catch (e) {}\r\n        }\r\n      }\r\n      \/\/ Start the next video while the snap is still finishing, so it is already rolling when the slide lands.\r\n      var h = feed.clientHeight || 1, p = feed.scrollTop \/ h, n = Math.round(p);\r\n      if (n !== idx && n >= 0 && n < slides.length && Math.abs(p - n) < 0.3) {\r\n        var nx = holding(n);\r\n        if (nx && nx.ready) commit(n);\r\n      }\r\n      clearTimeout(settleTimer); settleTimer = setTimeout(settle, 90);\r\n    }\r\n    function settle() {\r\n      if (!modal || resizing) return;\r\n      clearTimeout(settleTimer);\r\n      var h = feed.clientHeight || 1;\r\n      var n = Math.max(0, Math.min(slides.length - 1, Math.round(feed.scrollTop \/ h)));\r\n      if (Math.abs(feed.scrollTop - slides[n].offsetTop) > 2) return; \/\/ still snapping\r\n      swiping = false; modal.classList.remove('is-swiping');\r\n      \/\/ Anything still rolling off screen stops once the slide has landed.\r\n      decks.forEach(function (d) { if (d !== cur && (d.warm || d.leaving)) { d.warm = false; d.leaving = false; try { d.player.pauseVideo(); } catch (e) {} } });\r\n      if (n === idx) { showCta(cur && cur.el.classList.contains('is-live') ? 150 : 1200); return; }\r\n      commit(n);\r\n    }\r\n    function commit(n) {\r\n      idx = n; markActive();\r\n      fillFeed();\r\n      modal.classList.remove('is-playing', 'needs-sound');\r\n      clearTimeout(preloadTimer); clearTimeout(revealTimer); stopGlow();\r\n      var prev = cur, nx = holding(n);\r\n      \/\/ Remember the sound choice from the video being left: muted by the viewer (YouTube's own button) stays muted,\r\n      \/\/ unmuted stays unmuted. A mute we forced because the browser blocked sound doesn't count as their choice.\r\n      try { if (prev && prev.player && prev.player.isMuted && !prev.forcedMute) wantAudio = !prev.player.isMuted(); } catch (e) {}\r\n      if (nx && nx.ready) {\r\n        \/\/ The next video is already buffered in the other player: swap to it.\r\n        cur = nx; nx.preloading = false; nx.warm = false; stopPreview(nx);\r\n        \/\/ The video being left stays ready (paused, in view on its slide) for an instant swipe back.\r\n        \/\/ It keeps playing (muted) while it slides away, and pauses once the new slide has landed.\r\n        stopPreview(prev); prev.leaving = true; try { prev.player.mute(); } catch (e) {}\r\n        prev.el.classList.add('no-fade'); prev.el.classList.remove('is-live'); prev.el.classList.add('is-preview'); void prev.el.offsetWidth; prev.el.classList.remove('no-fade');\r\n        prev.seekOnSwap = false; \/\/ swiping back resumes where it was paused\r\n        placeDeck(cur, n);\r\n        try {\r\n          if (cur.seekOnSwap && !(cur.player.getPlayerState() === 1 && cur.player.getCurrentTime() < (cur.skipAt || SKIP) + 3)) { cur.player.seekTo(cur.skipAt || SKIP, true); cur.startAt = cur.skipAt || SKIP; }\r\n          else cur.startAt = cur.player.getCurrentTime() || 0;\r\n          cur.seekOnSwap = false;\r\n          cur.forcedMute = false;\r\n          cur.wantSound = true;\r\n          cur.player.playVideo();\r\n          if (cur.player.getPlayerState() === 1) onState(cur, 1); \/\/ it was still pre-buffering, so no state change will fire\r\n        } catch (e) {}\r\n        var sw = cur;\r\n        setTimeout(function () { try { if (sw === cur && sw.player.getPlayerState() === 1 && !sw.el.classList.contains('is-live')) onState(sw, 1); } catch (e) {} }, 400);\r\n      } else {\r\n        hideDeck(cur); placeDeck(cur, n); cur.capsDone = false; cur.skipAt = startFor(items[n]); cur.startAt = cur.skipAt; cur.vid = items[n].id; cur.forcedMute = false; cur.wantSound = true;\r\n        try { cur.player.loadVideoById({ videoId: items[n].id, startSeconds: cur.skipAt }); } catch (e) {}\r\n      }\r\n      soundCheck(cur);\r\n      showCta(1500); \/\/ fallback if the new video is slow to start\r\n      track('video_modal_swipe', { feed_position: idx });\r\n    }\r\n    \/\/ Turning the phone: every slide changes height, so the feed's scroll position briefly points at the wrong video.\r\n    \/\/ While that settles, swipe handling is paused and the feed is pinned to the current video; playback is untouched.\r\n    var resizing = false, resizeTimer = null, lastH = 0;\r\n    function onResize() {\r\n      if (!modal) return;\r\n      resizing = true; clearTimeout(resizeTimer); lastH = feed.clientHeight;\r\n      function pin() {\r\n        if (!modal || !slides[idx]) return;\r\n        feed.style.scrollSnapType = 'none';\r\n        feed.scrollTop = slides[idx].offsetTop;\r\n        decks.forEach(function (d) { if (d.slot >= 0) placeDeck(d, d.slot); });\r\n      }\r\n      pin(); requestAnimationFrame(pin);\r\n      resizeTimer = setTimeout(function () {\r\n        pin();\r\n        if (!modal) return;\r\n        feed.style.scrollSnapType = '';\r\n        resizing = false; swiping = false; modal.classList.remove('is-swiping'); lastH = feed.clientHeight;\r\n        \/\/ Only the caption size changes with orientation; don't reload the captions module mid-playback.\r\n        decks.forEach(function (d) { try { if (d.player && d.player.setOption) d.player.setOption('captions', 'fontSize', capSize()); } catch (e) {} });\r\n        showCta(0);\r\n      }, 500);\r\n    }\r\n\r\n    function close(fromPop) {\r\n      if (!modal) return;\r\n      var wasOpen = !standby;\r\n      decks.forEach(function (d) { stopPreview(d); try { if (d.player && d.player.destroy) d.player.destroy(); } catch (e) {} });\r\n      decks = []; cur = null; standby = false;\r\n      [hideTimer, settleTimer, ctaTimer, soundTimer, revealTimer, preloadTimer].forEach(clearTimeout); stopGlow();\r\n      if (modal.__ro) modal.__ro.disconnect();\r\n      modal.remove(); modal = feed = null; items = []; slides = []; idx = 0; swiping = false;\r\n      document.documentElement.style.overflow = '';\r\n      setTint(false);\r\n      LAND.removeEventListener && LAND.removeEventListener('change', onResize);\r\n      window.removeEventListener('resize', onResize);\r\n      window.removeEventListener('orientationchange', onResize);\r\n      clearTimeout(resizeTimer); resizing = false;\r\n      if (wasOpen && !fromPop && history.state && history.state.hpuVm) history.back();\r\n      if (wasOpen) setTimeout(prewarm, 1500); \/\/ get ready again in case they reopen\r\n    }\r\n    \/\/ Build the viewer hidden, with the page's own video loading muted and parked just past the fade,\r\n    \/\/ so tapping the video opens it as fast as a swipe does.\r\n    function build() {\r\n      items = feedItems(); if (!items.length) return false;\r\n      modal = document.createElement('div');\r\n      modal.className = 'hpu-vm cta-hidden is-standby'; modal.setAttribute('role', 'dialog'); modal.setAttribute('aria-modal', 'true'); modal.setAttribute('aria-label', 'Video player'); modal.setAttribute('aria-hidden', 'true');\r\n      var x = document.createElement('button'); x.type = 'button'; x.className = 'hpu-vm-close'; x.setAttribute('aria-label', 'Close video'); x.innerHTML = '&times;';\r\n      feed = document.createElement('div'); feed.className = 'hpu-vm-feed';\r\n      slides = items.map(function (v) { var s = makeSlide(v); feed.appendChild(s); return s; });\r\n      decks = [makeDeck(0), makeDeck(1), makeDeck(2)]; cur = decks[0];\r\n      var more = document.createElement('button'); more.type = 'button'; more.className = 'hpu-vm-more'; more.setAttribute('aria-label', 'Next video');\r\n      more.innerHTML = '<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\"><path d=\"M6 11l6-6 6 6\"\/><path d=\"M6 18l6-6 6 6\" opacity=\".5\"\/><\/svg>';\r\n      modal.appendChild(x); modal.appendChild(feed); modal.appendChild(more);\r\n      document.body.appendChild(modal);\r\n      standby = true;\r\n      idx = 0; markActive(); placeDeck(cur, 0); lastH = feed.clientHeight;\r\n      seenVids = {}; seenVids[items[0].id] = 1; emptyRuns = 0; fetching = false;\r\n      fillFeed(); \/\/ line up the first random videos while the page is being read\r\n\r\n      fastTap(x, function () { close(false); });\r\n      \/\/ The arrows don't catch touches, so a swipe that starts on them still moves the feed. A tap on them goes to the next video.\r\n      feed.addEventListener('click', function (e) {\r\n        if (modal.classList.contains('at-end')) return;\r\n        var r = more.getBoundingClientRect(); if (!r.width) return;\r\n        if (e.clientX >= r.left - 20 && e.clientX <= r.right + 20 && e.clientY >= r.top - 16 && e.clientY <= r.bottom + 16) go(idx + 1);\r\n      });\r\n      feed.addEventListener('scroll', onScroll, { passive: true });\r\n      feed.addEventListener('scrollend', settle);\r\n      LAND.addEventListener && LAND.addEventListener('change', onResize);\r\n      window.addEventListener('resize', onResize);\r\n      window.addEventListener('orientationchange', onResize);\r\n      if (window.ResizeObserver) { var ro = new ResizeObserver(function () { onResize(); }); ro.observe(modal); modal.__ro = ro; }\r\n\r\n      \/\/ The other two players are created now too (idle, no video loading), so a tap on open can unlock their sound.\r\n      [decks[1], decks[2]].forEach(function (d) { createPlayer(d, items[0].id, { autoplay: false, mute: true }); d.vid = null; });\r\n      var first = cur; first.preloading = true; first.skipAt = startFor(items[0], true); first.startAt = first.skipAt; first.seekOnSwap = true; first.startOnReady = null;\r\n      createPlayer(first, items[0].id, { autoplay: true, mute: true, start: first.skipAt }).then(function () {\r\n        if (!modal || first !== cur) return;\r\n        if (!standby && first.startOnReady !== null) {\r\n          \/\/ They tapped before the player finished loading: start it now.\r\n          var at = first.startOnReady; first.startOnReady = null;\r\n          try { first.player.seekTo(at, true); first.player.playVideo(); if (first.player.getPlayerState() === 1) onState(first, 1); } catch (e) {}\r\n          applyCaptions(first); soundCheck(first);\r\n        } else {\r\n          try { first.player.mute(); var st = first.player.getPlayerState(); if (st !== 1 && st !== 3) first.player.playVideo(); } catch (e) {}\r\n        }\r\n      });\r\n      return true;\r\n    }\r\n    function prewarm() {\r\n      if (modal || !PHONE.matches || document.hidden) return;\r\n      build();\r\n    }\r\n    function open(start) {\r\n      if (!modal && !build()) return false;\r\n      if (!standby) return false; \/\/ already open\r\n      standby = false;\r\n      modal.classList.remove('is-standby'); modal.removeAttribute('aria-hidden');\r\n      document.documentElement.style.overflow = 'hidden';\r\n      setTint(true);\r\n      feed.scrollTop = 0; idx = 0; markActive(); placeDeck(cur, 0);\r\n      requestAnimationFrame(function () { modal && modal.classList.add('is-open'); });\r\n      try { history.pushState({ hpuVm: 1 }, ''); } catch (e) {}\r\n      track('video_modal_open', { feed_length: items.length });\r\n      fillFeed(); \/\/ open: top the queue up to four\r\n      showCta(1800);\r\n\r\n      wantAudio = true;\r\n      var first = cur, at = start || startFor(items[0], true);\r\n      first.preloading = false; stopPreview(first); first.seekOnSwap = false; first.startAt = at;\r\n      first.forcedMute = false; first.wantSound = true;\r\n      if (first.ready && first.player) {\r\n        try { first.player.seekTo(at, true); first.player.playVideo(); } catch (e) {}\r\n        if (wantAudio) unlockAudio(); \/\/ still inside the tap, so iPhone allows sound on both players\r\n        try { if (first.player.getPlayerState() === 1) onState(first, 1); } catch (e) {}\r\n        applyCaptions(first); soundCheck(first);\r\n      } else {\r\n        first.startOnReady = at; \/\/ still loading: it starts the moment it is ready\r\n      }\r\n      preloadNext(); \/\/ queue the next video right away\r\n      return true;\r\n    }\r\n    if (PHONE.matches) {\r\n      var kick = function () { setTimeout(prewarm, 800); };\r\n      if (document.readyState === 'complete') kick(); else window.addEventListener('load', kick);\r\n    }\r\n    window.addEventListener('popstate', function () { if (modal && !standby) close(true); });\r\n    document.addEventListener('keydown', function (e) {\r\n      if (!modal || standby) return;\r\n      if (e.key === 'Escape') close(false);\r\n      else if (e.key === 'ArrowDown') { e.preventDefault(); go(idx + 1); }\r\n      else if (e.key === 'ArrowUp') { e.preventDefault(); go(idx - 1); }\r\n    });\r\n\r\n    \/\/ Tap on the main video (theme turns it into a thumbnail that opens Fancybox): phones get our modal instead.\r\n    document.addEventListener('click', function (e) {\r\n      if (!PHONE.matches) return;\r\n      if (e.target.closest && e.target.closest('.hpu-video-section-iframe')) {\r\n        if (open(0)) { e.preventDefault(); e.stopPropagation(); }\r\n      }\r\n    }, true);\r\n    \/\/ Chapter timestamps: same modal on phones, starting at that time.\r\n    document.addEventListener('click', function (e) {\r\n      if (!PHONE.matches || !e.target.closest) return;\r\n      var inner = e.target.closest('.hpu-video-transcript-text-inner'); if (!inner) return;\r\n      var link = inner.querySelector('.hpu-video-transcript-chapter-time a'); if (!link) return;\r\n      var t = parseInt(new URL(link.href).searchParams.get('t'), 10);\r\n      if (open(isNaN(t) ? 0 : t)) { e.preventDefault(); e.stopPropagation(); }\r\n    }, true);\r\n  })();\r\n\r\n  \/\/ \u2500\u2500 Tag Pills \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n  (function() {\r\n    var containers = document.querySelectorAll('.hpu-video-tags');\r\n    if (!containers.length) return;\r\n\r\n    var match = document.body.className.match(\/\\bpostid-(\\d+)\\b\/);\r\n    if (!match) return;\r\n\r\n    var apiRootEl = document.querySelector('link[rel=\"https:\/\/api.w.org\/\"]');\r\n    var apiRoot = (window.wpApiSettings && window.wpApiSettings.root)\r\n      || (apiRootEl && apiRootEl.getAttribute('href'))\r\n      || '\/wp-json\/';\r\n    var url = apiRoot.replace(\/\\\/$\/, '') + '\/wp\/v2\/tags?post=' + match[1] + '&per_page=100';\r\n\r\n    fetch(url)\r\n      .then(function(r) { return r.ok ? r.json() : Promise.reject(); })\r\n      .then(function(tags) {\r\n        if (!tags.length) return;\r\n        var decoder = document.createElement('textarea');\r\n        containers.forEach(function(container) {\r\n          tags.forEach(function(tag) {\r\n            decoder.innerHTML = tag.name;\r\n            var pill = document.createElement('span');\r\n            pill.className = 'hpu-video-tag';\r\n            pill.textContent = decoder.value;\r\n            container.appendChild(pill);\r\n          });\r\n        });\r\n      })\r\n      .catch(function() {});\r\n  })();\r\n\r\n  \/\/ \u2500\u2500 Related Videos: Loader + Scroll Indicators \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n  (function() {\r\n    var slider    = document.querySelector('.hpu-related-videos-slider');\r\n    var noResults = document.querySelector('.hpu-related-videos-none');\r\n    var section   = slider && slider.closest('.hpu-related-videos');\r\n    if (!slider || !section) return;\r\n\r\n    \/\/ Scroll indicators \u2014 wired immediately, before any fetch\r\n    function updateIndicators() {\r\n      section.classList.toggle('has-scroll-left',  slider.scrollLeft > 0);\r\n      section.classList.toggle('has-scroll-right',\r\n        slider.scrollLeft + slider.clientWidth < slider.scrollWidth - 1);\r\n    }\r\n    slider.addEventListener('scroll', updateIndicators, { passive: true });\r\n    window.addEventListener('load', updateIndicators);\r\n\r\n    \/\/ Nav chevron buttons\r\n    var prevBtn = document.createElement('button');\r\n    prevBtn.className = 'hpu-rv-nav hpu-rv-nav-prev';\r\n    prevBtn.setAttribute('aria-label', 'Scroll left');\r\n    var prevChev = document.createElement('span');\r\n    prevChev.className = 'hpu-rv-nav-chevron';\r\n    prevBtn.appendChild(prevChev);\r\n    section.appendChild(prevBtn);\r\n\r\n    var nextBtn = document.createElement('button');\r\n    nextBtn.className = 'hpu-rv-nav hpu-rv-nav-next';\r\n    nextBtn.setAttribute('aria-label', 'Scroll right');\r\n    var nextChev = document.createElement('span');\r\n    nextChev.className = 'hpu-rv-nav-chevron';\r\n    nextBtn.appendChild(nextChev);\r\n    section.appendChild(nextBtn);\r\n\r\n    prevBtn.addEventListener('click', function() {\r\n      var firstCard = slider.querySelector('.hpu-related-videos-card, .hpu-rv-skel');\r\n      var n = window.innerWidth <= 1279 ? 2 : 4;\r\n      var dist = firstCard ? (firstCard.offsetWidth + 12) * n : slider.clientWidth * 0.8;\r\n      slider.scrollBy({ left: -dist, behavior: 'smooth' });\r\n    });\r\n    nextBtn.addEventListener('click', function() {\r\n      var firstCard = slider.querySelector('.hpu-related-videos-card, .hpu-rv-skel');\r\n      var n = window.innerWidth <= 1279 ? 2 : 4;\r\n      var dist = firstCard ? (firstCard.offsetWidth + 12) * n : slider.clientWidth * 0.8;\r\n      slider.scrollBy({ left: dist, behavior: 'smooth' });\r\n    });\r\n\r\n    \/\/ Align nav buttons to the vertical center of the thumbnail image row\r\n    function positionNavButtons() {\r\n      var firstThumb = slider.querySelector('.hpu-related-videos-card-thumb, .hpu-rv-skel-thumb');\r\n      if (!firstThumb) return;\r\n      var thumbH = firstThumb.getBoundingClientRect().height;\r\n      if (!thumbH) return; \/\/ element is hidden (display:none tab)\r\n      var top = slider.getBoundingClientRect().top - section.getBoundingClientRect().top + thumbH \/ 2;\r\n      [prevBtn, nextBtn].forEach(function(btn) {\r\n        btn.style.top = top + 'px';\r\n        btn.style.transform = 'translateY(-50%)';\r\n      });\r\n    }\r\n    if (typeof ResizeObserver !== 'undefined') {\r\n      new ResizeObserver(positionNavButtons).observe(section);\r\n    }\r\n    window.addEventListener('resize', positionNavButtons);\r\n\r\n    \/\/ Related videos fetch \u2014 runs after page load, yields to idle work\r\n    function loadRelatedVideos() {\r\n      var match = document.body.className.match(\/\\bpostid-(\\d+)\\b\/);\r\n      if (!match) return;\r\n      var postId = match[1];\r\n\r\n      var apiRootEl = document.querySelector('link[rel=\"https:\/\/api.w.org\/\"]');\r\n      var base = ((window.wpApiSettings && window.wpApiSettings.root)\r\n        || (apiRootEl && apiRootEl.getAttribute('href'))\r\n        || '\/wp-json\/').replace(\/\\\/$\/, '');\r\n\r\n      var decoder = document.createElement('textarea');\r\n      var catId   = null;\r\n\r\n      function showSkeletons() {\r\n        for (var i = 0; i < 5; i++) {\r\n          var skel = document.createElement('div');\r\n          skel.className = 'hpu-rv-skel';\r\n          var t = document.createElement('div');\r\n          t.className = 'hpu-rv-skel-thumb';\r\n          var l1 = document.createElement('div');\r\n          l1.className = 'hpu-rv-skel-line';\r\n          var l2 = document.createElement('div');\r\n          l2.className = 'hpu-rv-skel-line hpu-rv-skel-line-short';\r\n          skel.appendChild(t); skel.appendChild(l1); skel.appendChild(l2);\r\n          slider.appendChild(skel);\r\n        }\r\n      }\r\n\r\n      function shuffle(arr) {\r\n        for (var i = arr.length - 1; i > 0; i--) {\r\n          var j = Math.floor(Math.random() * (i + 1));\r\n          var tmp = arr[i]; arr[i] = arr[j]; arr[j] = tmp;\r\n        }\r\n        return arr;\r\n      }\r\n\r\n      function appendCard(post) {\r\n        decoder.innerHTML = (post.title && post.title.rendered) ? post.title.rendered : 'Untitled';\r\n        var title    = decoder.value;\r\n        var link     = post.link || '#';\r\n        var embedded = post._embedded && post._embedded['wp:featuredmedia'];\r\n        var thumbUrl = Array.isArray(embedded) && embedded[0] && embedded[0].source_url\r\n          ? embedded[0].source_url : null;\r\n\r\n        var card = document.createElement('a');\r\n        card.className = 'hpu-related-videos-card';\r\n        card.href = link;\r\n\r\n        var thumb = document.createElement('div');\r\n        thumb.className = 'hpu-related-videos-card-thumb';\r\n        if (thumbUrl) {\r\n          var img = document.createElement('img');\r\n          img.src = thumbUrl; img.alt = title; img.loading = 'lazy';\r\n          thumb.appendChild(img);\r\n        } else {\r\n          var ph = document.createElement('div');\r\n          ph.className = 'hpu-related-videos-card-thumb-placeholder';\r\n          thumb.appendChild(ph);\r\n        }\r\n\r\n        var titleEl = document.createElement('div');\r\n        titleEl.className = 'hpu-related-videos-card-title';\r\n        titleEl.textContent = title;\r\n\r\n        card.appendChild(thumb);\r\n        card.appendChild(titleEl);\r\n        slider.appendChild(card);\r\n      }\r\n\r\n      \/\/ Share the related list with the mobile video modal's swipe feed.\r\n      function pushFeed(list) {\r\n        try {\r\n          var add = list.map(function(p) {\r\n            var c = (p.content && p.content.rendered) || '';\r\n            var m = c.match(\/youtube(?:-nocookie)?\\.com\\\/embed\\\/([A-Za-z0-9_-]{11})\/) || JSON.stringify(p.meta || {}).match(\/embed\\\\*\\\/([A-Za-z0-9_-]{11})\/);\r\n            var e = p._embedded && p._embedded['wp:featuredmedia'];\r\n            decoder.innerHTML = (p.title && p.title.rendered) || '';\r\n            return { id: m ? m[1] : null, title: decoder.value, link: p.link, thumb: (Array.isArray(e) && e[0] && e[0].source_url) || null };\r\n          }).filter(function(v) { return v.id; });\r\n          window.hpuRelatedFeed = (window.hpuRelatedFeed || []).concat(add);\r\n          document.dispatchEvent(new CustomEvent('hpu:related-ready'));\r\n        } catch (err) {}\r\n      }\r\n\r\n      var cachedCatId = (function() { try { return sessionStorage.getItem('hpu_rv_cat'); } catch(e) { return null; } })();\r\n\r\n      showSkeletons();\r\n\r\n      Promise.all([\r\n        fetch(base + '\/wp\/v2\/posts\/' + postId + '?_fields=tags')\r\n          .then(function(r) { return r.ok ? r.json() : Promise.reject(); }),\r\n        cachedCatId\r\n          ? Promise.resolve(+cachedCatId)\r\n          : fetch(base + '\/wp\/v2\/categories?slug=hpu-videos&per_page=1&_fields=id')\r\n              .then(function(r) { return r.ok ? r.json() : Promise.reject(); })\r\n              .then(function(cats) {\r\n                if (!cats.length) return Promise.reject();\r\n                try { sessionStorage.setItem('hpu_rv_cat', cats[0].id); } catch(e) {}\r\n                return cats[0].id;\r\n              })\r\n      ])\r\n      .then(function(results) {\r\n        var tagIds = Array.isArray(results[0].tags) ? results[0].tags : [];\r\n        catId = results[1];\r\n        var params = new URLSearchParams({\r\n          categories: catId,\r\n          per_page: 12,\r\n          status: 'publish',\r\n          orderby: 'date',\r\n          order: 'desc',\r\n          exclude: postId,\r\n          _embed: 'wp:featuredmedia'\r\n        });\r\n        if (tagIds.length) params.set('tags', tagIds.join(','));\r\n        return fetch(base + '\/wp\/v2\/posts?' + params)\r\n          .then(function(r) { return r.ok ? r.json() : Promise.reject(); });\r\n      })\r\n        .then(function(posts) {\r\n          var verticalMode = window.innerWidth <= 900;\r\n          slider.innerHTML = '';\r\n          shuffle(posts);\r\n          pushFeed(posts);\r\n          (verticalMode ? posts.slice(0, 6) : posts).forEach(appendCard);\r\n          updateIndicators();\r\n\r\n          if (posts.length < 12 && catId) {\r\n            var excludeIds = [postId].concat(posts.map(function(p) { return p.id; }));\r\n            var backfillParams = new URLSearchParams({\r\n              categories: catId,\r\n              per_page: 12 - posts.length,\r\n              status: 'publish',\r\n              orderby: 'date',\r\n              order: 'desc',\r\n              exclude: excludeIds.join(','),\r\n              _embed: 'wp:featuredmedia'\r\n            });\r\n            fetch(base + '\/wp\/v2\/posts?' + backfillParams)\r\n              .then(function(r) { return r.ok ? r.json() : []; })\r\n              .then(function(extra) {\r\n                if (!extra.length) {\r\n                  if (!slider.children.length) noResults.style.display = 'block';\r\n                  return;\r\n                }\r\n                shuffle(extra);\r\n                pushFeed(extra);\r\n                if (!verticalMode) extra.forEach(appendCard);\r\n                else if (!slider.children.length) noResults.style.display = 'block';\r\n                updateIndicators();\r\n              })\r\n              .catch(function() {\r\n                if (!slider.children.length) noResults.style.display = 'block';\r\n              });\r\n          } else if (!slider.children.length) {\r\n            noResults.style.display = 'block';\r\n          }\r\n        })\r\n        .catch(function() { slider.innerHTML = ''; noResults.style.display = 'block'; });\r\n    }\r\n\r\n    if (document.readyState === 'loading') {\r\n      document.addEventListener('DOMContentLoaded', loadRelatedVideos);\r\n    } else {\r\n      loadRelatedVideos();\r\n    }\r\n  })();\r\n\r\n  \/\/ \u2500\u2500 Dynamic Breadcrumb Logic \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n  (function() {\r\n    try {\r\n      const breadcrumbElements = document.querySelectorAll('.breadcrumbs [property=\"v:title\"]');\r\n      \r\n      breadcrumbElements.forEach(el => {\r\n        if (el.textContent.trim().toLowerCase() === 'hpu videos') {\r\n          const wrapper = el.closest('[typeof=\"v:Breadcrumb\"]');\r\n          \r\n          if (wrapper) {\r\n            \/\/ Find and remove the text node following the span to get rid of the stray \">\"\r\n            const nextNode = wrapper.nextSibling;\r\n            if (nextNode && nextNode.nodeType === Node.TEXT_NODE) {\r\n              nextNode.remove();\r\n            }\r\n            \/\/ Remove the parent span element itself\r\n            wrapper.remove();\r\n          } else {\r\n            \/\/ Fallback: just remove the element if no wrapper is found\r\n            el.remove();\r\n          }\r\n        }\r\n      });\r\n    } catch (error) {\r\n      \/\/ Fail gracefully: Do nothing and prevent JS from breaking\r\n      \/\/ console.warn('Breadcrumb swap skipped.');\r\n    }\r\n  })();\r\n\r\n\r\n\r\n\r\n\r\n\r\n  \/\/ \u2500\u2500 Mobile Transcript Tab \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n  (function () {\r\n    const BREAKPOINT       = 1365;\r\n    const LABEL_BREAKPOINT = 767;\r\n\r\n    const transcriptEl = document.getElementById('hpu-video-transcript');\r\n    const sidebarInner = document.querySelector('.hpu-video-sidebar-inner');\r\n    const tabsBar      = document.querySelector('.hpu-video-tabs');\r\n    const videoBody    = document.querySelector('.hpu-video-body');\r\n\r\n    if (!transcriptEl || !sidebarInner || !tabsBar || !videoBody) return;\r\n\r\n    const relatedBtn = tabsBar.querySelector('[data-tab=\"related\"]');\r\n\r\n    \/\/ New tab button\r\n    const tabBtn = document.createElement('button');\r\n    tabBtn.className = 'hpu-video-tab-btn';\r\n    tabBtn.setAttribute('data-tab', 'transcript');\r\n    tabBtn.textContent = 'Chapters & Transcript';\r\n    tabBtn.style.display = 'none';\r\n    tabsBar.appendChild(tabBtn);\r\n\r\n    \/\/ New tab content wrapper\r\n    const tabContent = document.createElement('div');\r\n    tabContent.className = 'hpu-video-tab-content';\r\n    tabContent.id = 'tab-transcript';\r\n    videoBody.appendChild(tabContent);\r\n\r\n    \/\/ Wire new tab button (uses fresh querySelectorAll to cover all tabs\/contents)\r\n    tabBtn.addEventListener('click', () => {\r\n      document.querySelectorAll('.hpu-video-tab-btn').forEach(b => b.classList.remove('active'));\r\n      document.querySelectorAll('.hpu-video-tab-content').forEach(c => c.classList.remove('active'));\r\n      tabBtn.classList.add('active');\r\n      tabContent.classList.add('active');\r\n    });\r\n\r\n    \/\/ Patch existing buttons \u2014 their load-time NodeLists don't include the new tab,\r\n    \/\/ so add a second listener that deactivates it when they're clicked\r\n    tabsBar.querySelectorAll('.hpu-video-tab-btn:not([data-tab=\"transcript\"])').forEach(btn => {\r\n      btn.addEventListener('click', () => {\r\n        tabBtn.classList.remove('active');\r\n        tabContent.classList.remove('active');\r\n      });\r\n    });\r\n\r\n    let currentlyMobile = null;\r\n    let currentlySmall  = null;\r\n\r\n    function applyLayout() {\r\n      const mobile = window.innerWidth <= BREAKPOINT;\r\n      const small  = window.innerWidth <= LABEL_BREAKPOINT;\r\n\r\n      \/\/ \u2500\u2500 Transcript tab: show\/hide at 1365px \u2500\u2500\r\n      if (mobile !== currentlyMobile) {\r\n        currentlyMobile = mobile;\r\n\r\n        if (mobile) {\r\n          tabContent.appendChild(transcriptEl);\r\n          tabBtn.style.display = '';\r\n        } else {\r\n          sidebarInner.appendChild(transcriptEl);\r\n          tabBtn.style.display = 'none';\r\n          \/\/ Fall back to description tab if transcript was active\r\n          if (tabContent.classList.contains('active')) {\r\n            tabContent.classList.remove('active');\r\n            tabBtn.classList.remove('active');\r\n            const descBtn = document.querySelector('[data-tab=\"description\"]');\r\n            const descContent = document.getElementById('tab-description');\r\n            if (descBtn) descBtn.classList.add('active');\r\n            if (descContent) descContent.classList.add('active');\r\n          }\r\n        }\r\n      }\r\n\r\n      \/\/ \u2500\u2500 Tab labels: shorten at 767px \u2500\u2500\r\n      if (small !== currentlySmall) {\r\n        currentlySmall = small;\r\n        tabBtn.textContent = small ? 'Transcript' : 'Chapters & Transcript';\r\n        if (relatedBtn) relatedBtn.textContent = small ? 'Related' : 'Related Videos';\r\n      }\r\n    }\r\n\r\n    applyLayout();\r\n    window.addEventListener('resize', applyLayout);\r\n  })();\r\n<\/script>\r\n\r\n<style>\r\n  \/* \u2500\u2500 HPU Video Article \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n\r\n  .hpu-video-article {\r\n    --purple:     #330072;\r\n    --purple-tint: rgba(51, 0, 114, .08);\r\n    --gray:       #f5f5f5;\r\n    --border:     #e0e0e0;\r\n    --muted:      #6b6b6b;\r\n    --r:          15px;\r\n    --r-sm:       5px;\r\n    --gap:        16px;\r\n  }\r\n  p:empty{\r\n    display: none;\r\n  }\r\n  .hpu-tm-r {\r\n    font-size: .75rem;\r\n  }\r\n\r\n  \/* Suppress page header on video posts *\/\r\n  .archives_related.article-header { display: none; }\r\n\r\n  \/* Widen the WordPress content frame to accommodate the full layout *\/\r\n  .wysiwyg-content.wysiwyg-frame:has(.hpu-video-article) { max-width: 1800px !important; }\r\n\r\n \/* \u2500\u2500 Main Layout \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n.hpu-video-layout {\r\n  display: flex;\r\n  flex-wrap: nowrap;\r\n  gap: var(--gap);\r\n  align-items: stretch;\r\n  max-width: 1800px;\r\n  margin: 0 auto;\r\n}\r\n \r\n.hpu-video-sidebar {\r\n  width: 380px; \r\n  flex-shrink: 0;\r\n  position: relative;\r\n  overflow: hidden; \/* hide native scrollbars *\/\r\n  border-radius: var(--r);\r\n}\r\n\r\n\/* \u2500\u2500 Sidebar Inner (Scroll Container) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n.hpu-video-sidebar-inner {\r\n  position: absolute;\r\n  top: 0; \r\n  left: 0; \r\n  right: 0; \r\n  bottom: 0;\r\n  background: var(--gray);\r\n  padding: 20px;\r\n  border-radius: var(--r);\r\n  overflow-y: auto; \r\n  \r\n  \/* Firefox: Default state is completely invisible *\/\r\n  scrollbar-width: thin; \r\n  scrollbar-color: transparent transparent; \r\n  transition: scrollbar-color 0.3s ease;\r\n}\r\n\r\n\/* Firefox: Hover state *\/\r\n.hpu-video-sidebar-inner:hover {\r\n  scrollbar-color: rgba(0, 0, 0, 0.2) transparent;\r\n}\r\n\r\n\/* WebKit (Chrome, Edge, Safari): Base Structure *\/\r\n.hpu-video-sidebar-inner::-webkit-scrollbar {\r\n  width: 6px; \r\n}\r\n\r\n.hpu-video-sidebar-inner::-webkit-scrollbar-track {\r\n  background: transparent; \r\n}\r\n\r\n\/* WebKit: Default state is completely invisible *\/\r\n.hpu-video-sidebar-inner::-webkit-scrollbar-thumb {\r\n  background: transparent; \r\n  border-radius: 10px;\r\n}\r\n\r\n\/* WebKit: Hover state makes the thumb visible *\/\r\n.hpu-video-sidebar-inner:hover::-webkit-scrollbar-thumb {\r\n  background: rgba(0, 0, 0, 0.2); \r\n}\r\n\r\n\/* \u2500\u2500 Main Video Area \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n.hpu-video-main {\r\n  flex-grow: 1;\r\n  min-width: 0; \r\n}\r\n\r\n  \/* \u2500\u2500 Video player \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n  .hpu-video-section { margin-bottom: 24px; }\r\n\r\n  .hpu-video-section-iframe {\r\n    position: relative;\r\n    aspect-ratio: 16 \/ 9;\r\n    background: #000;\r\n    border-radius: var(--r);\r\n    overflow: hidden;\r\n    box-shadow: 0 4px 24px rgba(0, 0, 0, .14);\r\n  }\r\n\r\n  \/* Flatten WordPress oEmbed wrappers (figure, div, etc.) *\/\r\n  .hpu-video-section-iframe > *,\r\n  .hpu-video-section-iframe .wp-block-embed,\r\n  .hpu-video-section-iframe .wp-block-embed__wrapper {\r\n    position: absolute !important;\r\n    inset: 0 !important;\r\n    width:  100% !important;\r\n    height: 100% !important;\r\n    margin:  0 !important;\r\n    padding: 0 !important;\r\n  }\r\n\r\n  .hpu-video-section-iframe iframe {\r\n    position: absolute;\r\n    inset: 0;\r\n    width:  100%;\r\n    height: 100%;\r\n    border: 0;\r\n  }\r\n\r\n  \/* \u2500\u2500 Tabbed Container \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n  .hpu-video-body {\r\n    background: var(--gray);\r\n    border-radius: var(--r);\r\n    padding: 20px 24px;\r\n  }\r\n\r\n  .hpu-video-tabs {\r\n    display: flex;\r\n    gap: 16px;\r\n    margin-bottom: 16px;\r\n    border-bottom: 2px solid var(--border);\r\n  }\r\n\r\n  .hpu-video-tab-btn {\r\n    background: none;\r\n    border: none;\r\n    padding: 10px 4px;\r\n    cursor: pointer;\r\n    font-size: 15px;\r\n    font-weight: 600;\r\n    color: var(--muted);\r\n    position: relative;\r\n    margin-bottom: -2px; \/* overlay the border *\/\r\n    transition: color 0.2s;\r\n  }\r\n\r\n  .hpu-video-tab-btn:hover {\r\n    color: #000;\r\n  }\r\n\r\n  .hpu-video-tab-btn.active:not(:only-child) {\r\n    color: var(--purple);\r\n  }\r\n\r\n  .hpu-video-tab-btn.active:not(:only-child)::after {\r\n    content: '';\r\n    position: absolute;\r\n    bottom: 0;\r\n    left: 0;\r\n    width: 100%;\r\n    height: 2px;\r\n    background: var(--purple);\r\n    border-radius: 2px 2px 0 0;\r\n  }\r\n\r\n  .hpu-video-tab-content {\r\n    display: none;\r\n  }\r\n\r\n  .hpu-video-tab-content.active {\r\n    display: block;\r\n    animation: fadeIn 0.4s ease;\r\n  }\r\n\r\n  @keyframes fadeIn {\r\n    from { opacity: 0; transform: translateY(4px); }\r\n    to { opacity: 1; transform: translateY(0); }\r\n  }\r\n\r\n  .hpu-video-summary p {\r\n    font-size: 14px;\r\n    line-height: 1.7;\r\n    color: var(--muted);\r\n    margin: 0 0 12px;\r\n  }\r\n\r\n  .hpu-video-tags {\r\n    display: flex;\r\n    flex-wrap: wrap;\r\n    gap: 6px;\r\n    margin-top: 4px;\r\n  }\r\n\r\n  .hpu-video-tag {\r\n    display: inline-block;\r\n    font-size: 12px;\r\n    font-weight: 500;\r\n    color: var(--purple);\r\n    background: var(--purple-tint);\r\n    border: 1px solid rgba(51, 0, 114, .18);\r\n    border-radius: 20px;\r\n    padding: 3px 10px;\r\n    white-space: nowrap;\r\n  }\r\n\r\n  \/* \u2500\u2500 CTA \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n  .hpu-btn-purple-outline {\r\n    display: inline-block;\r\n    border: 2px solid var(--purple);\r\n    color: var(--purple);\r\n    background: transparent;\r\n    padding: 10px 24px;\r\n    border-radius: 5px;\r\n    font-size: 15px;\r\n    font-weight: 600;\r\n    font-family: Bitter, sans-serif;\r\n    text-decoration: none !important;\r\n    transition: all 0.2s ease;\r\n  }\r\n  \r\n  .hpu-btn-purple-outline:hover {\r\n    background: var(--purple);\r\n    color: #fff !important;\r\n  }\r\n\r\n  .hpu-video-cta-container {\r\n    background: #fff;\r\n    padding: 24px;\r\n    text-align: center;\r\n    border: 1px solid var(--border);\r\n    border-radius: var(--r);\r\n    margin-bottom: 20px;\r\n  }\r\n\r\n  #hpu-video-cta { margin-top: 0; }\r\n  \r\n  #hpu-video-cta h2 {\r\n    margin-top: 0;\r\n    margin-bottom: 8px;\r\n    font-size: 20px;\r\n    font-weight: 600;\r\n    line-height: 1.3;\r\n  }\r\n\r\n  #hpu-video-cta p {\r\n    color: var(--muted);\r\n    margin-bottom: 16px;\r\n    font-size: 13px;\r\n  }\r\n\r\n  \/* \u2500\u2500 Transcript container \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n  .hpu-video-transcript {\r\n    background: #fff;\r\n    border: 1px solid var(--border);\r\n    border-radius: var(--r);\r\n    overflow: hidden;\r\n  }\r\n\r\n  \/* \u2500\u2500 Transcript header \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n  .hpu-video-transcript-header {\r\n    padding: 16px 20px;\r\n    background: transparent;\r\n    border-bottom: 1px solid var(--border);\r\n  }\r\n\r\n  .hpu-video-transcript-title {\r\n    font-size: 16px;\r\n    font-weight: 500;\r\n    color: #333;\r\n  }\r\n\r\n  .hpu-video-transcript-content {\r\n    background: transparent;\r\n  }\r\n\r\n  \/* \u2500\u2500 FAQ Accordion Chapters \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n  .hpu-video-transcript-chapter {\r\n    border-bottom: 1px solid var(--border);\r\n  }\r\n\r\n  .hpu-video-transcript-chapter:last-child { \r\n    border-bottom: none; \r\n  }\r\n\r\n  .hpu-video-transcript-chapter-header {\r\n    padding: 16px 20px;\r\n    cursor: pointer;\r\n    position: relative;\r\n    transition: background-color 0.2s;\r\n  }\r\n\r\n  .hpu-video-transcript-chapter-header:hover {\r\n    background-color: rgba(0,0,0,0.02);\r\n  }\r\n\r\n  \/* Accordion chevron *\/\r\n  .hpu-video-transcript-chapter-header::after {\r\n    content: '';\r\n    position: absolute;\r\n    right: 20px;\r\n    top: 50%;\r\n    transform: translateY(-50%) rotate(45deg); \/* Point straight down *\/\r\n    width: 10px;\r\n    height: 10px;\r\n    border-right: 2px solid var(--muted);\r\n    border-bottom: 2px solid var(--muted);\r\n    transition: transform 0.3s ease;\r\n    transform-origin: 65% 65%;\r\n  }\r\n\r\n  .hpu-video-transcript-chapter.expanded .hpu-video-transcript-chapter-header::after {\r\n    transform: translateY(-50%) rotate(-135deg); \/* Point straight up *\/\r\n  }\r\n\r\n  .hpu-video-transcript-chapter-header-top {\r\n    display: flex;\r\n    align-items: center;\r\n    gap: 12px;\r\n    padding-right: 24px; \/* avoid chevron *\/\r\n  }\r\n\r\n  .hpu-video-transcript-chapter-number {\r\n    font-size: 14px;\r\n    font-weight: 700;\r\n    color: #333;\r\n  }\r\n\r\n  \/* h2 preserved for heading hierarchy and AEO *\/\r\n  .hpu-video-transcript-speaker {\r\n    font-size: 16px !important;\r\n    font-weight: 500 !important;\r\n    font-family: Poppins, sans-serif !important;\r\n    color: #333 !important;\r\n    margin: 0 !important;\r\n    line-height: 1.4 !important;\r\n  }\r\n\r\n  .hpu-video-transcript-text-container {\r\n    height: 0;\r\n    overflow: hidden;\r\n    transition: height 0.3s ease;\r\n  }\r\n\r\n  .hpu-video-transcript-text-inner {\r\n    padding: 0 20px 20px;\r\n    display: flex;\r\n    flex-direction: column;\r\n    gap: 12px;\r\n    cursor: pointer;\r\n  }\r\n\r\n  .hpu-video-transcript-chapter-time {\r\n    margin-top: 4px;\r\n  }\r\n\r\n  .hpu-video-transcript-chapter-time a {\r\n    font-size: 11px;\r\n    font-weight: 400;\r\n    color: #000;\r\n    text-decoration: none;\r\n    background: var(--purple-tint);\r\n    padding: 3px 8px;\r\n    border-radius: var(--r-sm);\r\n    font-variant-numeric: tabular-nums;\r\n    display: inline-block;\r\n  }\r\n\r\n  .hpu-video-transcript-text-inner:hover .hpu-video-transcript-chapter-time a {\r\n    background: var(--purple);\r\n    color: #fff;\r\n  }\r\n\r\n  .hpu-video-transcript-text {\r\n    font-size: 13px;\r\n    line-height: 1.6;\r\n    color: var(--muted);\r\n    margin: 0;\r\n  }\r\n\r\n  \/* \u2500\u2500 Related Videos \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n  .hpu-related-videos {\r\n    position: relative;\r\n  }\r\n\r\n  .hpu-related-videos::before,\r\n  .hpu-related-videos::after {\r\n    content: '';\r\n    position: absolute;\r\n    top: 0;\r\n    bottom: 0;\r\n    width: 16px;\r\n    pointer-events: none;\r\n    z-index: 1;\r\n    opacity: 0;\r\n    transition: opacity 0.3s ease;\r\n  }\r\n\r\n  .hpu-related-videos::before {\r\n    left: 0;\r\n    background: linear-gradient(to right, var(--gray), transparent);\r\n  }\r\n\r\n  .hpu-related-videos::after {\r\n    right: 0;\r\n    background: linear-gradient(to left, var(--gray), transparent);\r\n  }\r\n\r\n  .hpu-related-videos.has-scroll-left::before  { opacity: 1; }\r\n  .hpu-related-videos.has-scroll-right::after  { opacity: 1; }\r\n\r\n  .hpu-rv-nav {\r\n    position: absolute;\r\n    top: 50%;\r\n    transform: translateY(-50%);\r\n    width: 48px;\r\n    height: 48px;\r\n    padding: 0;\r\n    background: rgba(255, 255, 255, 0.7);\r\n    border: 1px solid var(--border);\r\n    border-radius: 50%;\r\n    cursor: pointer;\r\n    display: flex;\r\n    align-items: center;\r\n    justify-content: center;\r\n    z-index: 2;\r\n    opacity: 0;\r\n    transition: opacity 0.3s ease;\r\n    pointer-events: none;\r\n  }\r\n\r\n  .hpu-rv-nav-prev { left: 8px; }\r\n  .hpu-rv-nav-next { right: 8px; }\r\n\r\n  .hpu-related-videos.has-scroll-left  .hpu-rv-nav-prev,\r\n  .hpu-related-videos.has-scroll-right .hpu-rv-nav-next {\r\n    opacity: 1;\r\n    pointer-events: auto;\r\n  }\r\n\r\n  .hpu-rv-nav-chevron {\r\n    display: block;\r\n    width: 12px;\r\n    height: 12px;\r\n    border-right: 2.5px solid var(--muted);\r\n    border-bottom: 2.5px solid var(--muted);\r\n  }\r\n\r\n  .hpu-rv-nav-prev .hpu-rv-nav-chevron { transform: rotate(135deg);  margin-left: 3px; }\r\n  .hpu-rv-nav-next .hpu-rv-nav-chevron { transform: rotate(-45deg);  margin-right: 3px; }\r\n\r\n  .hpu-related-videos-none {\r\n    display: none;\r\n    font-size: 13px;\r\n    color: var(--muted);\r\n    margin: 8px 0 0;\r\n  }\r\n\r\n  @keyframes hpu-rv-shimmer {\r\n    0%   { background-position: 200% 0; }\r\n    100% { background-position: -200% 0; }\r\n  }\r\n\r\n  .hpu-rv-skel {\r\n    flex: 0 0 calc((100% - 132px) \/ 4);\r\n    display: flex;\r\n    flex-direction: column;\r\n    gap: 8px;\r\n    flex-shrink: 0;\r\n  }\r\n\r\n  .hpu-rv-skel-thumb {\r\n    width: 100%;\r\n    aspect-ratio: 16 \/ 9;\r\n    border-radius: var(--r-sm);\r\n    background: linear-gradient(90deg, #e8e8e8 25%, #f4f4f4 50%, #e8e8e8 75%);\r\n    background-size: 200% 100%;\r\n    animation: hpu-rv-shimmer 1.4s ease-in-out infinite;\r\n  }\r\n\r\n  .hpu-rv-skel-line {\r\n    height: 12px;\r\n    border-radius: 4px;\r\n    background: linear-gradient(90deg, #e8e8e8 25%, #f4f4f4 50%, #e8e8e8 75%);\r\n    background-size: 200% 100%;\r\n    animation: hpu-rv-shimmer 1.4s ease-in-out infinite;\r\n  }\r\n\r\n  .hpu-rv-skel-line-short {\r\n    width: 60%;\r\n  }\r\n\r\n  .hpu-related-videos-slider {\r\n    display: flex;\r\n    gap: 12px;\r\n    overflow-x: auto;\r\n    min-height: 130px;\r\n    scroll-snap-type: x mandatory;\r\n    -webkit-overflow-scrolling: touch;\r\n    padding-bottom: 6px;\r\n    scroll-padding-left: 48px;\r\n    scrollbar-width: thin;\r\n    scrollbar-color: transparent transparent;\r\n    transition: scrollbar-color 0.3s ease;\r\n  }\r\n\r\n  .hpu-related-videos-slider:hover {\r\n    scrollbar-color: rgba(0, 0, 0, 0.2) transparent;\r\n  }\r\n\r\n  .hpu-related-videos-slider::-webkit-scrollbar { height: 4px; }\r\n  .hpu-related-videos-slider::-webkit-scrollbar-track { background: transparent; }\r\n  .hpu-related-videos-slider::-webkit-scrollbar-thumb {\r\n    background: transparent;\r\n    border-radius: 10px;\r\n  }\r\n  .hpu-related-videos-slider:hover::-webkit-scrollbar-thumb {\r\n    background: rgba(0, 0, 0, 0.2);\r\n  }\r\n\r\n  .hpu-related-videos-card {\r\n    flex: 0 0 calc((100% - 132px) \/ 4);\r\n    scroll-snap-align: start;\r\n    display: flex;\r\n    flex-direction: column;\r\n    gap: 8px;\r\n    text-decoration: none !important;\r\n    color: inherit;\r\n    transition: transform 0.2s ease;\r\n  }\r\n\r\n  .hpu-related-videos-card:last-child  { scroll-snap-align: end; }\r\n\r\n  .hpu-related-videos-card:hover {\r\n    transform: translateY(-2px);\r\n  }\r\n\r\n  .hpu-related-videos-card-thumb {\r\n    width: 100%;\r\n    aspect-ratio: 16 \/ 9;\r\n    border-radius: var(--r-sm);\r\n    overflow: hidden;\r\n    background: #ccc;\r\n    flex-shrink: 0;\r\n  }\r\n\r\n  .hpu-related-videos-card-thumb img {\r\n    width: 100%;\r\n    height: 100%;\r\n    object-fit: cover;\r\n    display: block;\r\n    transition: transform 0.3s ease;\r\n  }\r\n\r\n  .hpu-related-videos-card:hover .hpu-related-videos-card-thumb img {\r\n    transform: scale(1.05);\r\n  }\r\n\r\n  .hpu-related-videos-card-thumb-placeholder {\r\n    width: 100%;\r\n    height: 100%;\r\n    background: linear-gradient(135deg, #e0e0e0, #c8c8c8);\r\n  }\r\n\r\n  .hpu-related-videos-card-title {\r\n    font-size: 13px;\r\n    font-weight: 600;\r\n    line-height: 1.4;\r\n    color: #111;\r\n    display: -webkit-box;\r\n    -webkit-line-clamp: 2;\r\n    line-clamp: 2;\r\n    -webkit-box-orient: vertical;\r\n    overflow: hidden;\r\n    transition: color 0.2s;\r\n  }\r\n\r\n  .hpu-related-videos-card:hover .hpu-related-videos-card-title {\r\n    color: var(--purple);\r\n  }\r\n\r\n  \/* \u2500\u2500 Responsive \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 *\/\r\n  @media (max-width: 1365px) {\r\n    .hpu-video-layout {\r\n      flex-direction: column;\r\n    }\r\n\r\n    .hpu-video-sidebar {\r\n      width: 100%;\r\n      order: 2;\r\n    }\r\n    \r\n    .hpu-video-sidebar-inner {\r\n      position: static;\r\n      overflow-y: visible; \/* normal scrolling on mobile *\/\r\n    }\r\n    \r\n    .hpu-video-main {\r\n      order: 1;\r\n      width: 100%;\r\n    }\r\n\r\n   .hpu-video-cta-container { margin-bottom: 0; }\r\n   .hpu-video-main > .hpu-video-cta-container { margin: 20px 0 24px; }\r\n  }\r\n\r\n  @media (max-width: 1279px) {\r\n    .hpu-related-videos-card,\r\n    .hpu-rv-skel {\r\n      flex: 0 0 calc((100% - 108px) \/ 2);\r\n    }\r\n    .hpu-related-videos::before,\r\n    .hpu-related-videos::after { width: 8px; }\r\n  }\r\n\r\n  @media (max-width: 900px) {\r\n    \/* \u2500\u2500 Related videos: vertical list, 10 items, container fits content \u2500\u2500 *\/\r\n    .hpu-related-videos-slider {\r\n      display: flex !important;\r\n      flex-direction: column !important;\r\n      overflow-x: hidden !important;\r\n      overflow-y: visible !important;\r\n      scroll-snap-type: none !important;\r\n    }\r\n\r\n    .hpu-related-videos-slider > * {\r\n      width: 100% !important;\r\n      min-width: 0 !important;\r\n      flex-shrink: 0;\r\n      transform: none !important;\r\n    }\r\n\r\n    .hpu-related-videos-card,\r\n    .hpu-rv-skel {\r\n      flex: 0 0 auto !important;\r\n    }\r\n\r\n    .hpu-rv-nav { display: none; }\r\n\r\n    \/* \u2500\u2500 Tab button spacing \u2500\u2500 *\/\r\n    .hpu-video-tabs {\r\n      gap: 0;\r\n    }\r\n    .hpu-video-tab-btn {\r\n      flex: 1;\r\n      text-align: center;\r\n      padding: 10px 6px;\r\n    }\r\n  }\r\n\r\n  @media (max-width: 767px) {\r\n    .hpu-related-videos-card,\r\n    .hpu-rv-skel {\r\n      flex: 0 0 calc(100% - 96px);\r\n    }\r\n    .hpu-related-videos::before,\r\n    .hpu-related-videos::after { width: 4px; }\r\n    .hpu-rv-nav { display: none; }\r\n\r\n    .hpu-related-videos-slider {\r\n      gap: 16px;\r\n    }\r\n    .hpu-related-videos-card-title {\r\n      font-size: 14px;\r\n    }\r\n    .wysiwyg-frame { padding: 0 10px; }\r\n  }\r\n\r\n<\/style><\/div>\n<\/article>\n","protected":false},"excerpt":{"rendered":"<p>Chapters &amp; Transcript 1 How do High Point University alumni find career success? 0:11 Hi everyone, my name is Summer Tonsfeldt. I am from Scottdale, Arizona. I graduated High Point University class of 2014 with a major in strategic communication and I now work at NBC entertainment and TV marketing. 2 What is the HPU&#8230;<\/p>\n","protected":false},"author":13788,"featured_media":319,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_hpuaeo_plugin_post_data":"{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"VideoObject\",\"@id\":\"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/#video\",\"isPartOf\":{\"@id\":\"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/#webpage\"},\"name\":\"Destination Success | Summer Tonsfeldt\",\"description\":\"Summer Tonsfeldt, a 2014 graduate of High Point University, shares her journey to success in the entertainment and media industry. She highlights her experiences in the Media Entertainment Fellows program, multiple internships, and collaborative relationships with the university's professors and Career Services Center. Tonsfeldt emphasizes the critical importance of being a go-getter, building professional connections, speaking confidently, and fully leveraging university resources to achieve career goals. She concludes by defining High Point University's motto 'Choose to be Extraordinary' as having the passion to go beyond required coursework to actively pursue your personal and professional aspirations.\",\"thumbnailUrl\":\"https:\/\/i.ytimg.com\/vi\/gyi8i1wGniM\/maxresdefault.jpg\",\"uploadDate\":\"2023-10-16\",\"duration\":\"PT2M50S\",\"embedUrl\":\"https:\/\/www.youtube.com\/embed\/gyi8i1wGniM\",\"url\":\"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/\",\"sameAs\":[\"https:\/\/www.youtube.com\/watch?v=gyi8i1wGniM\"],\"publisher\":{\"@id\":\"https:\/\/www.highpoint.edu\/#University\"},\"transcript\":\"[Applause] [Music] hi everyone my name is Summer Tonsfeldt I am from Scottdale Arizona I graduated High Point University class of 2014 with a major in strategic communication and I now work at NBC entertainment and TV marketing while I was at High Point University I was a media entertainment fellow so I was really tight with about 15 other students um we traveled around campus ate everything together had classes together um really got some insight on the entertainment focus of what I really came to college to do really when I came over to High Point University one of the things that really grabbed me was the communications program but also becoming in this program of media entertainment fellows so during my time at High Point I actually got to go to the Republican National Convention I was on the ground there reporting um I also got to go to Los Angeles during the summer we got to go to different press events for different um Studios and really get integrated into entertainment and network and build those relationships throughout my college career so I did a couple of internships over the summer during my time at High Point University um one at a PR agency in Santa Monica and another one at a mobile app company in Austin Texas after graduation I really got into the event space I worked in experiential marketing at an agency called pmkbnc and then I moved over to work in TV marketing at NBC Universal I'd say one of the things that really helped me actually was the professors on campus so really developing those relationships with my professors who were able to give me advice all the time and help me through things was super helpful during my time at High Point um I did go to the Career Services Center a lot I really utilized Bridget fulcom I went over there and we would search on LinkedIn for connections of people who had gone to the school who might be able to give me advice who I could talk to and pick their brain um they helped me with my resume they were pivotal and I think it's really important for students to use that one of the biggest skills is just being a go-getter and being confident I think that goes a long way your experience brings you so far but really having those skills to be able to speak and speak confidently and concisely and know what you're talking about um and make those connections and be able to have something in common with someone is what sets people apart and what I think sets me apart particularly in my industry choose to be extraordinary means going beyond the textbook and really going for what you want in your passions not just studying because you have to but because you're passionate and you want to learn and go for [Music] it\",\"keywords\":[\"High Point University\",\"Summer Tonsfeldt\",\"Media Entertainment Fellows\",\"Strategic Communication\",\"NBC Universal\",\"Internships\",\"Career Services\",\"Networking\",\"Choose to be Extraordinary\",\"Entertainment Industry\"],\"hasPart\":[{\"@type\":\"Clip\",\"name\":\"How do High Point University alumni find career success?\",\"description\":\"How do High Point University alumni find career success\",\"startOffset\":11,\"url\":\"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/#t=11\",\"transcript\":\"Hi everyone, my name is Summer Tonsfeldt. I am from Scottdale, Arizona. I graduated High Point University class of 2014 with a major in strategic communication and I now work at NBC entertainment and TV marketing.\",\"endOffset\":24},{\"@type\":\"Clip\",\"name\":\"What is the HPU Media Entertainment Fellows program?\",\"description\":\"What is the HPU Media Entertainment Fellows program\",\"startOffset\":24,\"url\":\"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/#t=24\",\"transcript\":\"While I was at High Point University, I was a media entertainment fellow, so I was really tight with about 15 other students. Um, we traveled around campus, ate everything together, had classes together. Um, really got some insight on the entertainment focus of what I really came to college to do.\",\"endOffset\":42},{\"@type\":\"Clip\",\"name\":\"Why study communications at High Point University?\",\"description\":\"Why study communications at High Point University\",\"startOffset\":42,\"url\":\"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/#t=42\",\"transcript\":\"Really, when I came over to High Point University, one of the things that really grabbed me was the communications program but also becoming in this program of media entertainment fellows. So during my time at High Point, I actually got to go to the Republican National Convention. I was on the ground there reporting. Um, I also got to go to Los Angeles during the summer. We got to go to different press events for different studios and really get integrated into entertainment and network and build those relationships throughout my college career.\",\"endOffset\":70},{\"@type\":\"Clip\",\"name\":\"Where do High Point University students intern?\",\"description\":\"Where do High Point University students intern\",\"startOffset\":70,\"url\":\"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/#t=70\",\"transcript\":\"So I did a couple of internships over the summer during my time at High Point University. Um, one at a PR agency in Santa Monica and another one at a mobile app company in Austin, Texas. After graduation, I really got into the event space. I worked in experiential marketing at an agency called PMKBNC, and then I moved over to work in TV marketing at NBC Universal.\",\"endOffset\":92},{\"@type\":\"Clip\",\"name\":\"How do HPU professors mentor their students?\",\"description\":\"How do HPU professors mentor their students\",\"startOffset\":92,\"url\":\"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/#t=92\",\"transcript\":\"I'd say one of the things that really helped me actually was the professors on campus. So really developing those relationships with my professors who were able to give me advice all the time and help me through things was super helpful during my time at High Point.\",\"endOffset\":104},{\"@type\":\"Clip\",\"name\":\"How does HPU Career Services support students?\",\"description\":\"How does HPU Career Services support students\",\"startOffset\":104,\"url\":\"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/#t=104\",\"transcript\":\"Um, I did go to the Career Services Center a lot. I really utilized Bridget Fulcom. I went over there and we would search on LinkedIn for connections of people who had gone to the school who might be able to give me advice, who I could talk to and pick their brain. Um, they helped me with my resume. They were pivotal and I think it's really important for students to use that.\",\"endOffset\":122},{\"@type\":\"Clip\",\"name\":\"What are the best skills for career success?\",\"description\":\"What are the best skills for career success\",\"startOffset\":122,\"url\":\"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/#t=122\",\"transcript\":\"One of the biggest skills is just being a go-getter and being confident. I think that goes a long way. Your experience brings you so far, but really having those skills to be able to speak and speak confidently and concisely and know what you're talking about. Um, and make those connections and be able to have something in common with someone is what sets people apart and what I think sets me apart particularly in my industry.\",\"endOffset\":147},{\"@type\":\"Clip\",\"name\":\"What does choose to be extraordinary mean?\",\"description\":\"What does choose to be extraordinary mean\",\"startOffset\":147,\"url\":\"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/#t=147\",\"transcript\":\"Choose to be extraordinary means going beyond the textbook and really going for what you want in your passions. Not just studying because you have to, but because you're passionate and you want to learn and go for it.\",\"endOffset\":170}]},{\"@type\":\"FAQPage\",\"@id\":\"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/#faqpage\",\"isPartOf\":{\"@id\":\"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/#webpage\"},\"mainEntity\":[{\"@type\":\"Question\",\"name\":\"How do High Point University alumni find career success?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Hi everyone, my name is Summer Tonsfeldt. I am from Scottdale, Arizona. I graduated High Point University class of 2014 with a major in strategic communication and I now work at NBC entertainment and TV marketing.\"}},{\"@type\":\"Question\",\"name\":\"What is the HPU Media Entertainment Fellows program?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"While I was at High Point University, I was a media entertainment fellow, so I was really tight with about 15 other students. Um, we traveled around campus, ate everything together, had classes together. Um, really got some insight on the entertainment focus of what I really came to college to do.\"}},{\"@type\":\"Question\",\"name\":\"Why study communications at High Point University?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Really, when I came over to High Point University, one of the things that really grabbed me was the communications program but also becoming in this program of media entertainment fellows. So during my time at High Point, I actually got to go to the Republican National Convention. I was on the ground there reporting. Um, I also got to go to Los Angeles during the summer. We got to go to different press events for different studios and really get integrated into entertainment and network and build those relationships throughout my college career.\"}},{\"@type\":\"Question\",\"name\":\"Where do High Point University students intern?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"So I did a couple of internships over the summer during my time at High Point University. Um, one at a PR agency in Santa Monica and another one at a mobile app company in Austin, Texas. After graduation, I really got into the event space. I worked in experiential marketing at an agency called PMKBNC, and then I moved over to work in TV marketing at NBC Universal.\"}},{\"@type\":\"Question\",\"name\":\"How do HPU professors mentor their students?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"I'd say one of the things that really helped me actually was the professors on campus. So really developing those relationships with my professors who were able to give me advice all the time and help me through things was super helpful during my time at High Point.\"}},{\"@type\":\"Question\",\"name\":\"How does HPU Career Services support students?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Um, I did go to the Career Services Center a lot. I really utilized Bridget Fulcom. I went over there and we would search on LinkedIn for connections of people who had gone to the school who might be able to give me advice, who I could talk to and pick their brain. Um, they helped me with my resume. They were pivotal and I think it's really important for students to use that.\"}},{\"@type\":\"Question\",\"name\":\"What are the best skills for career success?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"One of the biggest skills is just being a go-getter and being confident. I think that goes a long way. Your experience brings you so far, but really having those skills to be able to speak and speak confidently and concisely and know what you're talking about. Um, and make those connections and be able to have something in common with someone is what sets people apart and what I think sets me apart particularly in my industry.\"}},{\"@type\":\"Question\",\"name\":\"What does choose to be extraordinary mean?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Choose to be extraordinary means going beyond the textbook and really going for what you want in your passions. Not just studying because you have to, but because you're passionate and you want to learn and go for it.\"}}]}]}","_hpuaeo_plugin_meta_tags":"","footnotes":"","_links_to":"","_links_to_target":""},"categories":[2],"tags":[4,10,5],"class_list":["post-175","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-hpu-videos","tag-alumni-spotlights","tag-marketing-sales","tag-media-entertainment"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.9 (Yoast SEO v27.9) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Destination Success | Summer Tonsfeldt | Watch HPU<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"Destination Success | Summer Tonsfeldt | Watch HPU\" \/>\n<meta name=\"twitter:description\" content=\"Chapters &amp; Transcript 1 How do High Point University alumni find career success? 0:11 Hi everyone, my name is Summer Tonsfeldt. I am from Scottdale, Arizona. I graduated High Point University class of 2014 with a major in strategic communication and I now work at NBC entertainment and TV marketing. 2 What is the HPU...\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/www.highpoint.edu\/watch\/files\/2026\/05\/destination-success-summer-tonsfeldt.jpg\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"aeobot\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\\\/\"},\"author\":{\"name\":\"aeobot\",\"@id\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/#\\\/schema\\\/person\\\/0f62f0c5c689c6a208cbc696466175f8\"},\"headline\":\"Destination Success | Summer Tonsfeldt\",\"datePublished\":\"2026-05-06T19:25:11+00:00\",\"dateModified\":\"2026-05-11T15:14:08+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\\\/\"},\"wordCount\":684,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/files\\\/2026\\\/05\\\/destination-success-summer-tonsfeldt.jpg\",\"keywords\":[\"Alumni Spotlights\",\"Marketing &amp; Sales\",\"Media &amp; Entertainment\"],\"articleSection\":[\"HPU Videos\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\\\/#respond\"]}],\"publisher\":{\"@id\":\"https:\\\/\\\/www.highpoint.edu\\\/#University\"},\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\\\/\\\/www.highpoint.edu\\\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\\\/\",\"url\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\\\/\",\"name\":\"Destination Success | Summer Tonsfeldt | Watch HPU\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/files\\\/2026\\\/05\\\/destination-success-summer-tonsfeldt.jpg\",\"datePublished\":\"2026-05-06T19:25:11+00:00\",\"dateModified\":\"2026-05-11T15:14:08+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/#\\\/schema\\\/person\\\/0f62f0c5c689c6a208cbc696466175f8\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\\\/\"]}],\"publisher\":{\"@id\":\"https:\\\/\\\/www.highpoint.edu\\\/#University\"}},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/files\\\/2026\\\/05\\\/destination-success-summer-tonsfeldt.jpg\",\"contentUrl\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/files\\\/2026\\\/05\\\/destination-success-summer-tonsfeldt.jpg\",\"width\":1280,\"height\":720},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Destination Success | Summer Tonsfeldt\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/#website\",\"url\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/\",\"name\":\"Watch HPU\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.highpoint.edu\\\/#University\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/#\\\/schema\\\/person\\\/0f62f0c5c689c6a208cbc696466175f8\",\"name\":\"aeobot\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a47823927b1f146f27e8fb23ab760191ad6f9660023944ab144ff01c5135251d?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a47823927b1f146f27e8fb23ab760191ad6f9660023944ab144ff01c5135251d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a47823927b1f146f27e8fb23ab760191ad6f9660023944ab144ff01c5135251d?s=96&d=mm&r=g\",\"caption\":\"aeobot\"},\"url\":\"https:\\\/\\\/www.highpoint.edu\\\/watch\\\/author\\\/aeobot\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Destination Success | Summer Tonsfeldt | Watch HPU","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/","twitter_card":"summary_large_image","twitter_title":"Destination Success | Summer Tonsfeldt | Watch HPU","twitter_description":"Chapters &amp; Transcript 1 How do High Point University alumni find career success? 0:11 Hi everyone, my name is Summer Tonsfeldt. I am from Scottdale, Arizona. I graduated High Point University class of 2014 with a major in strategic communication and I now work at NBC entertainment and TV marketing. 2 What is the HPU...","twitter_image":"https:\/\/www.highpoint.edu\/watch\/files\/2026\/05\/destination-success-summer-tonsfeldt.jpg","twitter_misc":{"Written by":"aeobot","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/#article","isPartOf":{"@id":"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/"},"author":{"name":"aeobot","@id":"https:\/\/www.highpoint.edu\/watch\/#\/schema\/person\/0f62f0c5c689c6a208cbc696466175f8"},"headline":"Destination Success | Summer Tonsfeldt","datePublished":"2026-05-06T19:25:11+00:00","dateModified":"2026-05-11T15:14:08+00:00","mainEntityOfPage":{"@id":"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/"},"wordCount":684,"commentCount":0,"image":{"@id":"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/#primaryimage"},"thumbnailUrl":"https:\/\/www.highpoint.edu\/watch\/files\/2026\/05\/destination-success-summer-tonsfeldt.jpg","keywords":["Alumni Spotlights","Marketing &amp; Sales","Media &amp; Entertainment"],"articleSection":["HPU Videos"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/#respond"]}],"publisher":{"@id":"https:\/\/www.highpoint.edu\/#University"},"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/www.highpoint.edu\/#organization"}},{"@type":"WebPage","@id":"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/","url":"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/","name":"Destination Success | Summer Tonsfeldt | Watch HPU","isPartOf":{"@id":"https:\/\/www.highpoint.edu\/watch\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/#primaryimage"},"image":{"@id":"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/#primaryimage"},"thumbnailUrl":"https:\/\/www.highpoint.edu\/watch\/files\/2026\/05\/destination-success-summer-tonsfeldt.jpg","datePublished":"2026-05-06T19:25:11+00:00","dateModified":"2026-05-11T15:14:08+00:00","author":{"@id":"https:\/\/www.highpoint.edu\/watch\/#\/schema\/person\/0f62f0c5c689c6a208cbc696466175f8"},"breadcrumb":{"@id":"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/"]}],"publisher":{"@id":"https:\/\/www.highpoint.edu\/#University"}},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/#primaryimage","url":"https:\/\/www.highpoint.edu\/watch\/files\/2026\/05\/destination-success-summer-tonsfeldt.jpg","contentUrl":"https:\/\/www.highpoint.edu\/watch\/files\/2026\/05\/destination-success-summer-tonsfeldt.jpg","width":1280,"height":720},{"@type":"BreadcrumbList","@id":"https:\/\/www.highpoint.edu\/watch\/summer-tonsfeldt-nbc-entertainment-tv-marketing-hpu-strategic-communication-alum\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.highpoint.edu\/watch\/"},{"@type":"ListItem","position":2,"name":"Destination Success | Summer Tonsfeldt"}]},{"@type":"WebSite","@id":"https:\/\/www.highpoint.edu\/watch\/#website","url":"https:\/\/www.highpoint.edu\/watch\/","name":"Watch HPU","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.highpoint.edu\/watch\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US","publisher":{"@id":"https:\/\/www.highpoint.edu\/#University"}},{"@type":"Person","@id":"https:\/\/www.highpoint.edu\/watch\/#\/schema\/person\/0f62f0c5c689c6a208cbc696466175f8","name":"aeobot","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/a47823927b1f146f27e8fb23ab760191ad6f9660023944ab144ff01c5135251d?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/a47823927b1f146f27e8fb23ab760191ad6f9660023944ab144ff01c5135251d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a47823927b1f146f27e8fb23ab760191ad6f9660023944ab144ff01c5135251d?s=96&d=mm&r=g","caption":"aeobot"},"url":"https:\/\/www.highpoint.edu\/watch\/author\/aeobot\/"}]}},"_links":{"self":[{"href":"https:\/\/www.highpoint.edu\/watch\/wp-json\/wp\/v2\/posts\/175","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.highpoint.edu\/watch\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.highpoint.edu\/watch\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.highpoint.edu\/watch\/wp-json\/wp\/v2\/users\/13788"}],"replies":[{"embeddable":true,"href":"https:\/\/www.highpoint.edu\/watch\/wp-json\/wp\/v2\/comments?post=175"}],"version-history":[{"count":0,"href":"https:\/\/www.highpoint.edu\/watch\/wp-json\/wp\/v2\/posts\/175\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.highpoint.edu\/watch\/wp-json\/wp\/v2\/media\/319"}],"wp:attachment":[{"href":"https:\/\/www.highpoint.edu\/watch\/wp-json\/wp\/v2\/media?parent=175"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.highpoint.edu\/watch\/wp-json\/wp\/v2\/categories?post=175"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.highpoint.edu\/watch\/wp-json\/wp\/v2\/tags?post=175"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}