/* Responsive Projects video gallery — KK Peprah palette */
.projects-hero { background: #0C0D32; color: #FFFFFF; padding: clamp(3.25rem, 7vw, 6rem) 0; }
.projects-container { width: min(100% - 2.5rem, 1280px); margin-inline: auto; }
.projects-eyebrow, .projects-kicker { margin: 0 0 .8rem; color: #F97316; font: 700 .78rem/1.4 Montserrat, sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.projects-hero h1 { max-width: 900px; margin: 0; font: 800 clamp(2.15rem, 5vw, 4.25rem)/1.1 Montserrat, sans-serif; letter-spacing: -.035em; }
.projects-intro { max-width: 720px; margin: 1.25rem 0 0; color: rgba(255,255,255,.82); font: 400 clamp(1rem, 1.7vw, 1.15rem)/1.8 'Open Sans', sans-serif; }
.projects-section { padding: clamp(2.75rem, 5vw, 5rem) 0; background: #F7F9FC; }
.projects-heading-row { display: flex; align-items: end; justify-content: space-between; gap: 1.5rem; margin-bottom: 1.75rem; }
.projects-heading-row h2 { margin: 0; color: #0C0D32; font: 800 clamp(1.65rem, 3vw, 2.4rem)/1.2 Montserrat, sans-serif; }
.projects-count { margin: 0 0 .25rem; color: #486581; font: 600 .9rem/1.5 'Open Sans', sans-serif; }
.projects-video-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1rem, 2vw, 1.5rem); align-items: start; }
.project-video-card { min-width: 0; overflow: hidden; background: #FFFFFF; border: 1px solid #E1E8EF; border-radius: 10px; box-shadow: 0 8px 24px rgba(12,13,50,.07); }
.project-video-frame { position: relative; width: 100%; aspect-ratio: 16 / 9; background: #0C0D32; overflow: hidden; }
.project-video-frame iframe { position: absolute; inset: 0; display: block; width: 100%; height: 100%; border: 0; }
.project-video-copy { padding: 1.1rem 1.15rem 1.25rem; }
.project-video-copy h3 { margin: 0 0 .45rem; color: #0C0D32; font: 700 1.05rem/1.4 Montserrat, sans-serif; }
.project-video-copy p { margin: 0; color: #486581; font: 400 .94rem/1.7 'Open Sans', sans-serif; }
.projects-note { margin: 1.5rem 0 0; padding: 1rem 1.1rem; border-left: 3px solid #F97316; background: #E8F1F8; color: #252B33; font: 400 .9rem/1.7 'Open Sans', sans-serif; }
@media (max-width: 1000px) { .projects-video-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 620px) { .projects-container { width: min(100% - 1.5rem, 1280px); } .projects-video-grid { grid-template-columns: minmax(0, 1fr); gap: 1.1rem; } .projects-heading-row { align-items: start; flex-direction: column; gap: .6rem; } .projects-video-copy { padding: 1rem; } }
@media (prefers-reduced-motion: reduce) { .project-video-card { scroll-behavior: auto; } }
