
    /* --- Hero Adjustments --- */
    .hero-title {
      font-size: clamp(2.6rem, 7vw, 4.8rem);
    }
    .hero-tagline {
      letter-spacing: 0.18em;
    }

    /* --- Portfolio Section --- */
    .portfolio-section { padding: 80px 20px; }
    .portfolio-category { max-width: 1140px; margin: 0 auto 80px; }
    .category-header { text-align: center; max-width: 600px; margin: 0 auto 50px; }
    .category-header h2 { font-size: clamp(1.8rem, 4vw, 2rem); text-transform: uppercase; letter-spacing: 1px; margin-bottom: 15px; }
    .category-header p { color: var(--text-muted); line-height: 1.7; }
.video-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px; }
    .video-grid.vertical { grid-template-columns: repeat(4, 1fr); }
    .video-item { border-radius: var(--radius); overflow: hidden; }
    .video-item iframe { width: 100%; height: 100%; aspect-ratio: 16/9; }
    .video-grid.vertical .video-item iframe { aspect-ratio: 9/16; }

.video-grid.horizontal .video-item {
  grid-column: span 1;
}
.video-grid.horizontal .video-item--wide {
  grid-column: 1 / -1;
}
.video-grid.horizontal .video-item--wide iframe {
  width: 100%;
  height: auto;
  display: block;
}

    .post-tabs-cta { text-align: center; padding: 0 20px 80px; max-width: 1140px; margin: 0 auto; }
        .post-tabs-cta p { color: var(--text-muted); font-size: 15px; margin-bottom: 40px; }
        .post-tabs-cta h3 { font-weight: 600; font-size: 1.6rem; letter-spacing: 1px; text-transform: uppercase; margin-bottom: 25px; }
        .btn { display: inline-block; background: transparent; border: 1px solid var(--text-color); padding: 12px 28px; border-radius: 4px; font-weight: 600; transition: background-color var(--transition-fast), color var(--transition-fast), transform var(--transition-fast); color: var(--text-color); position: relative; overflow: hidden; z-index: 1; }
        .btn::before { content: ''; position: absolute; top: 0; left: -100%; width: 100%; height: 100%; background: var(--text-color); transition: left 0.35s var(--ease-out-cubic); z-index: -1; }
        .btn:hover, .btn:active, .btn:focus { color: var(--bg-color); transform: translateY(-2px); }
        .btn:hover::before { left: 0; }
    
    @media (max-width: 992px) {
        .video-grid { grid-template-columns: 1fr; }
        .video-grid.vertical { grid-template-columns: repeat(2, 1fr); }
    }
    @media (max-width: 767px) {
        .video-grid.vertical { grid-template-columns: 1fr; }
    }


