
/* Extracted Block */

    .media-body {
      background: var(--dark);
      min-height: 100vh;
    }

    /* Navbar logo image */
    .nav-logo img {
      height: 42px;
      width: auto;
      vertical-align: middle;
      border-radius: 6px;
      object-fit: contain;
    }

    /* ─── Featured Video ─── */
    .featured-video-wrap {
      margin-top: 60px;
      position: relative;
      border-radius: 24px;
      overflow: hidden;
      aspect-ratio: 16/9;
      max-height: 540px;
      cursor: pointer;
      box-shadow: 0 40px 100px rgba(0, 0, 0, .6);
    }

    .featured-video-wrap img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform .6s ease;
      filter: brightness(.75);
    }

    .featured-video-wrap:hover img {
      transform: scale(1.04);
      filter: brightness(.55);
    }

    .featured-overlay {
      position: absolute;
      inset: 0;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
      background: linear-gradient(180deg, transparent 20%, rgba(0, 0, 0, .72) 100%);
    }

    .featured-play {
      width: 90px;
      height: 90px;
      border-radius: 50%;
      background: rgba(0, 212, 255, .2);
      border: 3px solid var(--cyan);
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--white);
      font-size: 34px;
      margin-bottom: 20px;
      padding-left: 6px;
      backdrop-filter: blur(6px);
      transition: transform .3s, background .3s;
    }

    .featured-video-wrap:hover .featured-play {
      transform: scale(1.15);
      background: rgba(0, 212, 255, .4);
    }

    .featured-overlay h3 {
      font-family: 'Bebas Neue', sans-serif;
      font-size: 36px;
      letter-spacing: 2px;
      margin-bottom: 6px;
    }

    .featured-overlay p {
      font-size: 15px;
      color: rgba(255, 255, 255, .7);
    }

    .featured-badge {
      position: absolute;
      top: 20px;
      left: 20px;
      background: var(--cyan);
      color: var(--navy);
      font-size: 12px;
      font-weight: 700;
      letter-spacing: 2px;
      text-transform: uppercase;
      padding: 5px 14px;
      border-radius: 20px;
    }

    /* ─── Section Divider ─── */
    .section-divider {
      display: flex;
      align-items: center;
      gap: 20px;
      margin: 70px 0 40px;
    }

    .section-divider .line {
      flex: 1;
      height: 1px;
      background: var(--border);
    }

    .section-divider h3 {
      font-family: 'Bebas Neue', sans-serif;
      font-size: 28px;
      letter-spacing: 2px;
      color: var(--white);
      white-space: nowrap;
    }

    /* ─── Stats Bar ─── */
    .media-stats-bar {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 1px;
      background: var(--border);
      border: 1px solid var(--border);
      border-radius: 20px;
      overflow: hidden;
      margin-bottom: 60px;
    }

    .ms-item {
      background: var(--card-bg);
      padding: 28px 20px;
      text-align: center;
    }

    .ms-val {
      font-family: 'Bebas Neue', sans-serif;
      font-size: 44px;
      color: var(--cyan);
      line-height: 1;
    }

    .ms-key {
      font-size: 12px;
      color: var(--muted);
      letter-spacing: 1.5px;
      text-transform: uppercase;
      margin-top: 6px;
    }

    @media (max-width:600px) {
      .media-stats-bar {
        grid-template-columns: repeat(2, 1fr);
      }
    }

    /* ─── Load More ─── */
    .load-more-wrap {
      text-align: center;
      margin: 48px 0;
    }

    .load-more-btn {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      padding: 14px 44px;
      border: 2px solid var(--border);
      background: transparent;
      color: var(--muted);
      border-radius: 50px;
      font-size: 15px;
      font-weight: 600;
      font-family: 'Outfit', sans-serif;
      transition: all .3s;
      cursor: pointer;
    }

    .load-more-btn:hover {
      border-color: var(--cyan);
      color: var(--cyan);
      background: rgba(0, 212, 255, .06);
    }


    /* ══════════════════════════════════════════════════════════
       EMAIL FLOAT BUTTON
    ══════════════════════════════════════════════════════════ */
    .email-float {
      position: fixed;
      bottom: 170px;
      right: 36px;
      z-index: 9001;
      display: flex;
      flex-direction: column;
      align-items: flex-end;
      gap: 10px;
    }

    .email-bubble {
      display: none;
      flex-direction: column;
      background: var(--white);
      border-radius: 16px;
      padding: 18px 20px;
      box-shadow: 0 16px 50px rgba(0, 0, 0, .25);
      max-width: 260px;
      animation: bubbleIn .3s ease;
      position: relative;
      border: 1px solid rgba(0, 0, 0, .06);
    }

    .email-bubble.open {
      display: flex;
    }

    .email-bubble::after {
      content: '';
      position: absolute;
      bottom: -8px;
      right: 22px;
      width: 16px;
      height: 16px;
      background: var(--white);
      transform: rotate(45deg);
      border-right: 1px solid rgba(0, 0, 0, .06);
      border-bottom: 1px solid rgba(0, 0, 0, .06);
    }

    .email-bubble-header {
      display: flex;
      align-items: center;
      gap: 10px;
      margin-bottom: 10px;
      padding-bottom: 10px;
      border-bottom: 1px solid #f0f0f0;
    }

    .email-avatar {
      width: 42px;
      height: 42px;
      border-radius: 50%;
      background: linear-gradient(135deg, #00d4ff, #0066cc);
      display: flex;
      align-items: center;
      justify-content: center;
      color: white;
      font-size: 18px;
      flex-shrink: 0;
    }

    .email-bubble-header .em-name {
      font-size: 14px;
      font-weight: 700;
      color: #111;
      line-height: 1.2;
    }

    .email-bubble-header .em-status {
      font-size: 11px;
      color: #00aacc;
      display: flex;
      align-items: center;
      gap: 4px;
    }

    .email-bubble-header .em-status::before {
      content: '';
      width: 6px;
      height: 6px;
      border-radius: 50%;
      background: #00aacc;
      display: inline-block;
    }

    .em-message {
      font-size: 13px;
      color: #333;
      line-height: 1.55;
      background: #f1f0f0;
      padding: 10px 14px;
      border-radius: 12px 12px 12px 4px;
      margin-bottom: 14px;
    }

    .em-send-btn {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      width: 100%;
      padding: 11px 16px;
      background: linear-gradient(135deg, #00d4ff, #0066cc);
      color: #fff;
      border-radius: 50px;
      font-size: 14px;
      font-weight: 700;
      transition: opacity .2s, transform .2s;
      border: none;
      font-family: 'Outfit', sans-serif;
      cursor: pointer;
      text-decoration: none;
    }

    .em-send-btn:hover {
      opacity: .88;
      transform: translateY(-2px);
    }

    .email-btn {
      width: 58px;
      height: 58px;
      border-radius: 50%;
      background: linear-gradient(135deg, #00d4ff, #0066cc);
      color: white;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 26px;
      box-shadow: 0 8px 28px rgba(0, 180, 255, .5);
      cursor: pointer;
      border: none;
      transition: transform .25s ease, box-shadow .25s;
      position: relative;
    }

    .email-btn:hover {
      transform: scale(1.1);
      box-shadow: 0 14px 40px rgba(0, 180, 255, .65);
    }

    .email-btn::before {
      content: '';
      position: absolute;
      inset: -4px;
      border-radius: 50%;
      border: 2px solid rgba(0, 180, 255, .5);
      animation: emailPing 2.3s ease-in-out infinite;
    }

    @keyframes emailPing {

      0%,
      100% {
        transform: scale(1);
        opacity: .7;
      }

      50% {
        transform: scale(1.25);
        opacity: 0;
      }
    }

    .em-badge {
      position: absolute;
      top: -2px;
      right: -2px;
      width: 18px;
      height: 18px;
      color: #fff;
      border: none;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 24px;
      cursor: pointer;
      box-shadow: 0 8px 28px rgba(131, 58, 180, .55);
      transition: transform .28s cubic-bezier(.34, 1.56, .64, 1), box-shadow .28s;
      position: relative;
    }

    .soc-toggle:hover {
      transform: scale(1.1);
      box-shadow: 0 14px 40px rgba(131, 58, 180, .7);
    }

    .soc-toggle.open {
      transform: rotate(45deg) scale(1.05);
    }

    /* Ping ring — same as WA */
    .soc-toggle::before {
      content: '';
      position: absolute;
      inset: -4px;
      border-radius: 50%;
      border: 2px solid rgba(131, 58, 180, .5);
      animation: socPing 2.2s ease-in-out infinite;
    }

    @keyframes socPing {

      0%,
      100% {
        transform: scale(1);
        opacity: .65;
      }

      50% {
        transform: scale(1.28);
        opacity: 0;
      }
    }

    /* Unread badge */
    .soc-badge {
      position: absolute;
      top: -2px;
      right: -2px;
      width: 18px;
      height: 18px;
      background: #e63946;
      border-radius: 50%;
      font-size: 9px;
      font-weight: 800;
      color: #fff;
      display: flex;
      align-items: center;
      justify-content: center;
      border: 2px solid #080c20;
      font-family: 'Outfit', sans-serif;
    }

    /* ── Fan of ROUND icon buttons (not pills) ── */
    .soc-fan {
      display: flex;
      flex-direction: column;
      align-items: flex-end;
      gap: 9px;
      pointer-events: none;
    }

    /* Each social item: circle + label to the left on hover */
    .soc-item {
      display: flex;
      align-items: center;
      gap: 10px;
      opacity: 0;
      transform: translateY(12px) scale(.8);
      transition: opacity .3s ease, transform .35s cubic-bezier(.34, 1.56, .64, 1);
    }

    .soc-fan.open .soc-item {
      opacity: 1;
      transform: translateY(0) scale(1);
      pointer-events: auto;
    }

    .soc-fan.open .soc-item:nth-child(1) {
      transition-delay: .06s;
    }

    .soc-fan.open .soc-item:nth-child(2) {
      transition-delay: .12s;
    }

    .soc-fan.open .soc-item:nth-child(3) {
      transition-delay: .18s;
    }

    .soc-fan.open .soc-item:nth-child(4) {
      transition-delay: .24s;
    }

    .soc-fan.open .soc-item:nth-child(5) {
      transition-delay: .30s;
    }

    /* Floating label on hover */
    .soc-item-label {
      font-family: 'Outfit', sans-serif;
      font-size: 12px;
      font-weight: 700;
      color: #fff;
      white-space: nowrap;
      background: rgba(0, 0, 0, .75);
      padding: 5px 12px;
      border-radius: 20px;
      backdrop-filter: blur(6px);
      pointer-events: none;
    }



    /* Circle button */
    .soc-circle {
      width: 52px;
      height: 52px;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 22px;
      color: #fff;
      text-decoration: none;
      transition: transform .25s cubic-bezier(.34, 1.56, .64, 1), box-shadow .25s;
      flex-shrink: 0;
      position: relative;
    }

    .soc-circle:hover {
      transform: scale(1.15);
    }

    /* Platform colours + glows */
    .sc-fb {
      background: #1877f2;
      box-shadow: 0 6px 22px rgba(24, 119, 242, .55);
    }

    .sc-fb:hover {
      box-shadow: 0 10px 32px rgba(24, 119, 242, .75);
    }

    .sc-ig {
      background: linear-gradient(135deg, #f58529, #dd2a7b, #515bd4);
      box-shadow: 0 6px 22px rgba(221, 42, 123, .55);
    }

    .sc-ig:hover {
      box-shadow: 0 10px 32px rgba(221, 42, 123, .75);
    }

    .sc-yt {
      background: #ff0000;
      box-shadow: 0 6px 22px rgba(255, 0, 0, .55);
    }

    .sc-yt:hover {
      box-shadow: 0 10px 32px rgba(255, 0, 0, .75);
    }

    .sc-tw {
      background: #1da1f2;
      box-shadow: 0 6px 22px rgba(29, 161, 242, .55);
    }

    .sc-tw:hover {
      box-shadow: 0 10px 32px rgba(29, 161, 242, .75);
    }

    .sc-tk {
      background: #010101;
      box-shadow: 0 6px 22px rgba(0, 0, 0, .6);
      border: 1px solid rgba(255, 255, 255, .2);
    }

    .sc-tk:hover {
      box-shadow: 0 10px 32px rgba(0, 0, 0, .8);
    }

    @media(max-width:600px) {
      .social-cluster {
        display: none;
      }
    }

    /* ─── Video Modal — dual-player ─── */
    .video-modal {
      display: none;
      position: fixed;
      inset: 0;
      background: rgba(0, 0, 0, .96);
      z-index: 99999;
      align-items: center;
      justify-content: center;
    }

    .video-modal.open {
      display: flex;
      animation: vmFadeIn .3s ease;
    }

    @keyframes vmFadeIn {
      from {
        opacity: 0;
      }

      to {
        opacity: 1;
      }
    }

    .video-modal-inner {
      width: 90vw;
      max-width: 980px;
      border-radius: 16px;
      overflow: hidden;
      position: relative;
      animation: vmZoom .35s cubic-bezier(.4, 0, .2, 1);
    }

    @keyframes vmZoom {
      from {
        transform: scale(.85);
        opacity: 0;
      }

      to {
        transform: scale(1);
        opacity: 1;
      }
    }

    /* iframe for YouTube */
    .video-modal-inner iframe {
      width: 100%;
      aspect-ratio: 16/9;
      display: block;
      border: none;
      background: #000;
    }

    /* native player for local files */
    .video-modal-inner video {
      width: 100%;
      aspect-ratio: 16/9;
      display: block;
      background: #000;
    }

    .video-modal-inner .hidden {
      display: none !important;
    }

    .vm-close {
      position: fixed;
      top: 28px;
      right: 36px;
      font-size: 44px;
      color: var(--white);
      cursor: pointer;
      opacity: .6;
      line-height: 1;
      transition: opacity .2s, transform .2s;
      z-index: 100000;
    }

    .vm-close:hover {
      opacity: 1;
      transform: rotate(90deg);
    }

    /* ─── Local video card badge ─── */
    .local-badge {
      position: absolute;
      top: 10px;
      left: 10px;
      background: var(--gold);
      color: #111;
      font-size: 10px;
      font-weight: 700;
      letter-spacing: 1px;
      padding: 3px 10px;
      border-radius: 20px;
      text-transform: uppercase;
    }

    /* ─── "Our Videos" filter tab highlight ─── */
    .filter-btn[data-filter="local"].active {
      background: var(--gold);
      border-color: var(--gold);
      color: #111;
    }

    .filter-btn[data-filter="local"]:hover {
      background: var(--gold);
      border-color: var(--gold);
      color: #111;
    }

    /* Photo Grid Improvements */
    .photo-grid {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
      gap: 20px;
      margin-bottom: 80px;
    }

    .photo-cell {
      position: relative;
      border-radius: 16px;
      overflow: hidden;
      cursor: pointer;
      aspect-ratio: 4/3;
      transition: transform 0.4s var(--ease), box-shadow 0.4s;
    }

    .photo-cell.tall {
      grid-row: span 2;
      aspect-ratio: auto;
    }

    .photo-cell:hover {
      transform: translateY(-8px);
      box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4);
    }

    /* Lightbox Styles */
    .lightbox {
      display: none;
      position: fixed;
      inset: 0;
      background: rgba(0, 0, 0, 0.95);
      z-index: 10001;
      align-items: center;
      justify-content: center;
      padding: 40px;
      backdrop-filter: blur(10px);
    }

    .lightbox.open {
      display: flex;
      animation: fadeIn 0.3s ease;
    }

    .lightbox-content {
      max-width: 90%;
      max-height: 90%;
      position: relative;
    }

    .lightbox-content img {
      width: 100%;
      height: 100%;
      object-fit: contain;
      border-radius: 8px;
    }

    .lb-close {
      position: absolute;
      top: -40px;
      right: 0;
      color: #fff;
      font-size: 30px;
      cursor: pointer;
    }
  
/* Extracted Block */

        .filter-bar {
          display: flex;
          justify-content: center;
          gap: 12px;
          flex-wrap: wrap;
          margin-bottom: 40px;
        }

        .filter-btn {
          background: rgba(255, 255, 255, 0.05);
          border: 1px solid rgba(255, 255, 255, 0.1);
          color: rgba(255, 255, 255, 0.6);
          padding: 10px 24px;
          border-radius: 50px;
          font-family: 'Outfit', sans-serif;
          font-weight: 600;
          cursor: pointer;
          transition: all 0.3s ease;
        }

        .filter-btn:hover,
        .filter-btn.active {
          background: var(--cyan);
          color: var(--navy);
          border-color: var(--cyan);
          box-shadow: 0 8px 20px rgba(0, 212, 255, 0.3);
        }
      