:root {
--bg-primary:#0A0A0A;
--bg-secondary:#141414;
--bg-tertiary:#1E1E1E;
--bg-card:#111111;
--text-primary:#FAFAFA;
--text-secondary:#888888;
--text-muted:#888888;
--text-label:#999999;
--accent:#E07A5F;
--accent-hover:#C96A52;
--border:#2A2A2A;
--border-light:#1A1A1A;
--border-subtle:#333333;
--shadow-strong:rgba(0, 0, 0, 0.5);
--shadow-medium:rgba(0, 0, 0, 0.4);
--transition-base:0.3s ease;
--transition-slow:0.5s ease;
}


.skip-link {
position:absolute;
top:-100%;
left:16px;
z-index:10000;
padding:12px 24px;
background-color:var(--accent);
color:var(--bg-primary);
font-size:14px;
font-weight:500;
text-decoration:none;
border-radius:0 0 4px 4px;
transition:top 0.2s ease;
}


.skip-link:focus {
top:0;
}


* {
margin:0;
padding:0;
box-sizing:border-box;
}


html {
scroll-behavior:smooth;
scrollbar-width:thin;
scrollbar-color:var(--border) var(--bg-primary);
}


body {
font-family:'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
background-color:var(--bg-primary);
color:var(--text-primary);
line-height:1.6;
-webkit-font-smoothing:antialiased;
overflow-x:hidden;
}


.container {
max-width:1400px;
margin:0 auto;
padding:0 24px;
}


#navbar {
position:fixed;
top:0;
left:0;
width:100%;
z-index:1000;
background-color:rgba(10, 10, 10, 0.9);
backdrop-filter:blur(20px);
border-bottom:1px solid rgba(255, 255, 255, 0.05);
transition:all var(--transition-base);
}


#navbar.scrolled {
background-color:rgba(10, 10, 10, 0.98);
box-shadow:0 4px 30px var(--shadow-strong);
}


.nav-container {
max-width:1400px;
margin:0 auto;
padding:20px 24px;
display:flex;
justify-content:space-between;
align-items:center;
}


.nav-logo {
font-family:'Space Grotesk', sans-serif;
font-size:20px;
font-weight:700;
color:var(--text-primary);
text-decoration:none;
transition:color var(--transition-base);
letter-spacing:-0.5px;
}


.nav-logo:hover {
color:var(--accent);
}


.nav-menu {
display:flex;
gap:32px;
list-style:none;
margin:0;
padding:0;
}


.nav-link {
font-size:14px;
font-weight:500;
color:var(--text-secondary);
text-decoration:none;
transition:color var(--transition-base);
position:relative;
text-transform:uppercase;
letter-spacing:1px;
}


.nav-link:hover {
color:var(--text-primary);
}


.nav-link::after {
content:'';
position:absolute;
bottom:-4px;
left:0;
width:0;
height:1px;
background-color:var(--accent);
transition:width var(--transition-base);
}


.nav-link:hover::after {
width:100%;
}


.nav-toggle {
display:none;
background:none;
border:none;
cursor:pointer;
padding:8px;
z-index:1001;
}


.hamburger {
display:block;
width:28px;
height:2px;
background-color:var(--text-primary);
position:relative;
transition:all var(--transition-base);
}


.hamburger::before,
.hamburger::after {
content:'';
position:absolute;
width:28px;
height:2px;
background-color:var(--text-primary);
transition:all var(--transition-base);
}


.hamburger::before {
top:-8px;
}


.hamburger::after {
bottom:-8px;
}


.nav-toggle.active .hamburger {
background-color:transparent;
}


.nav-toggle.active .hamburger::before {
transform:rotate(45deg);
top:0;
}


.nav-toggle.active .hamburger::after {
transform:rotate(-45deg);
bottom:0;
}


#hero {
min-height:100vh;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
padding:80px 24px 40px;
background:radial-gradient(ellipse at center, var(--bg-secondary) 0%, var(--bg-primary) 70%);
position:relative;
}


.hero-content {
max-width:900px;
margin:0 auto;
position:relative;
z-index:1;
}


.hero-title {
font-family:'Space Grotesk', sans-serif;
font-weight:700;
font-size:140px;
line-height:0.95;
color:var(--text-primary);
margin-bottom:40px;
letter-spacing:-4px;
position:relative;
display:inline-block;
}


.hero-title::after {
content:'';
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background:repeating-linear-gradient(0deg,
transparent,
transparent 2px,
rgba(0, 0, 0, 0.3) 2px,
rgba(0, 0, 0, 0.3) 4px);
pointer-events:none;
}


.hero-subtitle {
font-size:20px;
font-weight:400;
color:var(--text-secondary);
margin-bottom:60px;
letter-spacing:0.5px;
}


.hero-buttons {
display:flex;
gap:16px;
justify-content:center;
flex-wrap:wrap;
}


.btn {
display:inline-block;
padding:16px 36px;
font-size:14px;
font-weight:500;
text-decoration:none;
border-radius:2px;
transition:all var(--transition-base);
cursor:pointer;
text-transform:uppercase;
letter-spacing:1.5px;
}


.btn-primary {
background-color:var(--accent);
color:var(--bg-primary);
border:1px solid var(--accent);
}


.btn-primary:hover {
background-color:var(--accent-hover);
border-color:var(--accent-hover);
transform:translateY(-2px);
box-shadow:0 8px 30px rgba(224, 122, 95, 0.25);
}


.btn-secondary {
background-color:transparent;
color:var(--text-primary);
border:1px solid var(--border-subtle);
}


.btn-secondary:hover {
border-color:var(--text-primary);
background-color:var(--text-primary);
color:var(--bg-primary);
transform:translateY(-2px);
}


#album,
#musica {
padding:140px 0;
background-color:var(--bg-primary);
}


.album-header {
text-align:center;
margin-bottom:100px;
}


.section-title {
font-family:'Space Grotesk', sans-serif;
font-size:36px;
font-weight:700;
color:var(--accent);
text-transform:none;
letter-spacing:-1px;
margin-bottom:0;
}


.album-content {
display:grid;
grid-template-columns:1fr 1fr;
gap:100px;
align-items:start;
margin-bottom:120px;
}


.album-cover {
position:relative;
}


.album-cover img {
width:100%;
height:auto;
display:block;
border-radius:4px;
box-shadow:0 20px 60px var(--shadow-strong);
}


.album-info {
display:flex;
flex-direction:column;
gap:32px;
padding-top:20px;
}


.album-title {
font-family:'Space Grotesk', sans-serif;
font-size:48px;
font-weight:700;
color:var(--text-primary);
line-height:1.1;
letter-spacing:-1px;
}


.album-description {
font-size:17px;
line-height:1.8;
color:var(--text-secondary);
}


.bandcamp-embed {
margin:24px 0;
}


.bandcamp-embed iframe {
border-radius:4px;
filter:brightness(0.95);
}


.platform-links {
margin-top:24px;
}


.platform-label {
font-size:12px;
color:var(--text-label);
margin-bottom:16px;
text-transform:uppercase;
letter-spacing:1px;
}


.platform-icons {
display:flex;
gap:12px;
flex-wrap:wrap;
}


.platform-link {
font-size:13px;
font-weight:500;
color:var(--text-secondary);
text-decoration:none;
padding:10px 18px;
border:1px solid var(--border);
border-radius:2px;
transition:all var(--transition-base);
}


.platform-link:hover {
border-color:var(--accent);
color:var(--accent);
}


#proyecto {
padding:140px 0;
background-color:var(--bg-card);
}


#proyecto .section-title {
text-align:center;
margin-bottom:80px;
}


.proyecto-layout {
display:grid;
grid-template-columns:1fr 1fr;
gap:80px;
align-items:center;
}


.proyecto-content p {
font-size:20px;
line-height:1.9;
color:var(--text-secondary);
}


.proyecto-content h3 {
font-family:'Space Grotesk', sans-serif;
font-size:22px;
font-weight:700;
color:#FAFAFA;
margin-bottom:32px;
}


.proyecto-image img {
width:100%;
height:auto;
border-radius:4px;
box-shadow:0 20px 60px var(--shadow-medium);
filter:grayscale(20%);
transition:filter var(--transition-slow);
}


.proyecto-image img:hover {
filter:grayscale(0%);
}


#directo {
padding:140px 0;
background-color:var(--bg-primary);
}


#directo .section-title {
text-align:center;
margin-bottom:40px;
}


.directo-intro {
font-size:18px;
line-height:1.9;
color:var(--text-secondary);
text-align:center;
max-width:700px;
margin:0 auto 80px;
}


.directo-grid {
display:grid;
grid-template-columns:repeat(3, 1fr);
gap:20px;
}


.directo-card {
background-color:var(--bg-card);
border:1px solid var(--border-light);
border-radius:4px;
padding:40px 28px;
text-align:center;
transition:all var(--transition-base);
}


.directo-card:hover {
border-color:var(--border);
transform:translateY(-4px);
}


.card-icon {
font-size:32px;
margin-bottom:20px;
filter:grayscale(100%);
opacity:0.8;
}


.directo-card:hover .card-icon {
filter:grayscale(0%);
opacity:1;
}


.card-title {
font-family:'Space Grotesk', sans-serif;
font-size:14px;
font-weight:700;
color:var(--text-primary);
margin-bottom:12px;
text-transform:uppercase;
letter-spacing:1px;
}


.card-text {
font-size:14px;
color:var(--text-secondary);
line-height:1.6;
}


.images-grid {
display:grid;
grid-template-columns:repeat(4, 1fr);
gap:12px;
grid-auto-flow:dense;
}


.image-item {
position:relative;
overflow:hidden;
border-radius:4px;
background-color:var(--border-light);
}


.image-item img {
width:100%;
height:100%;
object-fit:cover;
display:block;
filter:grayscale(40%) contrast(1.05);
transition:all 0.6s ease;
}


.image-item:hover img {
filter:grayscale(0%) contrast(1);
transform:scale(1.03);
}


.image-item::after {
content:'';
position:absolute;
inset:0;
background:linear-gradient(to bottom, transparent 60%, rgba(0, 0, 0, 0.3));
opacity:0;
transition:opacity 0.4s ease;
}


.image-item:hover::after {
opacity:1;
}


.image-large {
grid-column:span 2;
grid-row:span 2;
height:500px;
}


.image-medium,
.image-small {
grid-column:span 1;
height:244px;
}


.videos-grid {
display:grid;
grid-template-columns:repeat(3, 1fr);
gap:20px;
max-width:1400px;
margin:0 auto;
grid-auto-flow:dense;
}


.video-horizontal {
grid-column:span 1;
height:280px;
}


.video-vertical {
grid-column:span 1;
grid-row:span 2;
height:580px;
}


#contacto {
padding:140px 0 100px;
background-color:var(--bg-card);
text-align:center;
}


#contacto .section-title {
margin-bottom:50px;
}


.contacto-content {
max-width:700px;
margin:0 auto;
}


.contacto-intro {
font-size:18px;
line-height:1.8;
color:var(--text-secondary);
margin-bottom:70px;
}


.contacto-info {
display:flex;
flex-direction:column;
gap:50px;
margin-bottom:70px;
}


.contacto-item {
display:flex;
flex-direction:column;
gap:12px;
}


.contacto-label {
font-size:11px;
text-transform:uppercase;
letter-spacing:2px;
color:var(--text-label);
font-weight:500;
}


.contacto-link {
font-family:'Space Grotesk', sans-serif;
font-size:24px;
font-weight:500;
color:var(--text-primary);
text-decoration:none;
transition:all var(--transition-base);
}


.contacto-link:hover {
color:var(--accent);
}


.email-link {
font-size:28px;
}


.telefonos {
display:flex;
gap:16px;
justify-content:center;
align-items:center;
flex-wrap:wrap;
}


.separator {
color:var(--border-subtle);
font-size:20px;
}


.redes-sociales {
padding-top:50px;
border-top:1px solid var(--border-light);
}


.redes-label {
font-size:11px;
color:var(--text-label);
margin-bottom:24px;
text-transform:uppercase;
letter-spacing:2px;
}


.redes-links {
display:flex;
gap:12px;
justify-content:center;
flex-wrap:wrap;
}


.red-link {
font-size:13px;
font-weight:500;
color:var(--text-secondary);
text-decoration:none;
padding:10px 20px;
border:1px solid var(--border);
border-radius:2px;
transition:all var(--transition-base);
}


.red-link:hover {
border-color:var(--accent);
color:var(--accent);
}


footer {
background-color:var(--bg-primary);
border-top:1px solid var(--border-light);
color:var(--text-primary);
padding:40px 0;
text-align:center;
}


footer p {
font-size:14px;
color:var(--text-label);
letter-spacing:0.5px;
}


@media (max-width: 1024px) {
.hero-title {
font-size:100px;
letter-spacing:-3px;
}


.hero-subtitle {
font-size:18px;
}


.album-content {
gap:60px;
}


.album-title {
font-size:38px;
}


.directo-grid {
grid-template-columns:repeat(2, 1fr);
}


.images-grid {
grid-template-columns:repeat(2, 1fr);
}


.image-large {
height:400px;
}


.image-medium,
.image-small {
height:200px;
}


.videos-grid {
grid-template-columns:repeat(2, 1fr);
}


.video-horizontal {
height:280px;
}


.video-vertical {
height:580px;
}

}


@media (max-width: 768px) {
.hero-title {
font-size:56px;
letter-spacing:-2px;
}


.hero-subtitle {
font-size:16px;
margin-bottom:40px;
}


.hero-buttons {
flex-direction:column;
gap:12px;
}


.btn {
width:100%;
text-align:center;
}


.album-content {
grid-template-columns:1fr;
gap:40px;
margin-bottom:40px;
}


#album,
#musica,
#proyecto,
#directo,
#contacto {
padding:80px 0;
}


.section-title {
font-size:28px;
letter-spacing:-0.5px;
}


.album-title {
font-size:32px;
}


.album-description {
font-size:15px;
}


.proyecto-layout {
grid-template-columns:1fr;
gap:40px;
}


.proyecto-content p {
font-size:17px;
line-height:1.8;
}


.directo-intro {
font-size:15px;
margin-bottom:40px;
}


.directo-grid {
grid-template-columns:1fr;
gap:12px;
}


.directo-card {
padding:28px 20px;
}


.card-icon {
font-size:28px;
}


.images-grid {
grid-template-columns:1fr;
gap:12px;
}


.image-large,
.image-medium,
.image-small {
grid-column:span 1;
grid-row:span 1;
height:280px;
}


.videos-grid {
grid-template-columns:1fr;
gap:12px;
}


.video-horizontal,
.video-vertical {
grid-column:span 1;
grid-row:span 1;
height:220px;
}


.nav-container {
padding:16px 24px;
}


.nav-logo {
font-size:18px;
}


.nav-toggle {
display:block;
}


.nav-menu {
position:fixed;
top:0;
right:-100%;
width:280px;
height:100vh;
background-color:var(--bg-primary);
flex-direction:column;
padding:100px 40px 40px;
gap:24px;
box-shadow:-4px 0 40px rgba(0, 0, 0, 0.8);
transition:right var(--transition-base);
border-left:1px solid var(--border-light);
}


.nav-menu.active {
right:0;
}


.nav-link {
font-size:16px;
color:var(--text-secondary);
}


.nav-link::after {
display:none;
}


body.menu-open::before {
content:'';
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background-color:rgba(0, 0, 0, 0.7);
z-index:999;
}


#hero {
min-height:85vh;
padding:100px 24px 40px;
}


.contacto-intro {
font-size:15px;
}


.email-link {
font-size:18px;
word-break:break-all;
}


.contacto-link {
font-size:16px;
}


.telefonos {
flex-direction:column;
gap:8px;
}


.separator {
display:none;
}

}


:focus:not(:focus-visible) {
outline:none;
}


:focus-visible {
outline:2px solid var(--accent);
outline-offset:3px;
border-radius:2px;
}


.nav-link:focus-visible,
.btn:focus-visible,
.platform-link:focus-visible,
.red-link:focus-visible,
.catalog-link:focus-visible,
.page-back:focus-visible,
.media-card:focus-visible,
.contacto-link:focus-visible {
outline:2px solid var(--accent);
outline-offset:3px;
}


::selection {
background-color:var(--accent);
color:var(--bg-primary);
}


::-webkit-scrollbar {
width:8px;
}


::-webkit-scrollbar-track {
background:var(--bg-primary);
}


::-webkit-scrollbar-thumb {
background:var(--border);
border-radius:4px;
}


::-webkit-scrollbar-thumb:hover {
background:#3A3A3A;
}


.animate-on-scroll {
opacity:0;
transform:translateY(30px);
transition:opacity 0.7s ease, transform 0.7s ease;
}


.animate-on-scroll.visible {
opacity:1;
transform:translateY(0);
}


.album-cover.animate-on-scroll {
transform:translateY(40px) scale(0.98);
}


.album-cover.animate-on-scroll.visible {
transform:translateY(0) scale(1);
}


.image-item.animate-on-scroll {
transform:translateY(20px) scale(0.97);
}


.image-item.animate-on-scroll.visible {
transform:translateY(0) scale(1);
}


.directo-card.animate-on-scroll {
transform:translateY(25px);
}


@media (prefers-reduced-motion: reduce) {
.animate-on-scroll {
opacity:1;
transform:none;
transition:none;
}


html {
scroll-behavior:auto;
}

}


.catalog-link {
display:inline-block;
font-size:13px;
font-weight:500;
color:var(--text-secondary);
text-decoration:none;
border-bottom:1px solid var(--border-subtle);
padding-bottom:2px;
transition:color var(--transition-base), border-color var(--transition-base);
letter-spacing:0.5px;
}


.catalog-link:hover {
color:var(--accent);
border-color:var(--accent);
}


.nav-link.active {
color:var(--accent);
}


.nav-link.active::after {
width:100%;
background-color:var(--accent);
}


#media {
background-color:var(--bg-primary);
}


.media-cards {
display:grid;
grid-template-columns:1fr 1fr 1fr;
gap:4px;
height:460px;
}


.media-card {
position:relative;
overflow:hidden;
display:block;
text-decoration:none;
cursor:pointer;
}


.media-card-bg {
position:absolute;
inset:0;
background-size:cover;
background-position:center;
filter:grayscale(60%) brightness(0.5);
transform:scale(1);
transition:filter var(--transition-slow), transform var(--transition-slow);
}


.media-card:hover .media-card-bg {
filter:grayscale(10%) brightness(0.65);
transform:scale(1.04);
}


.media-card::after {
content:'';
position:absolute;
inset:0;
background:linear-gradient(to top, rgba(0, 0, 0, 0.75) 0%, transparent 55%);
z-index:1;
}


.media-card-content {
position:absolute;
bottom:0;
left:0;
padding:40px 44px;
z-index:2;
}


.media-card-label {
display:block;
font-family:'Space Grotesk', sans-serif;
font-size:36px;
font-weight:700;
color:#fff;
letter-spacing:-1px;
line-height:1;
}


.media-card-count {
display:block;
font-size:13px;
color:rgba(255, 255, 255, 0.55);
text-transform:uppercase;
letter-spacing:1.5px;
margin-top:10px;
}


.media-card-arrow {
display:inline-block;
margin-top:20px;
font-size:12px;
font-weight:500;
color:var(--accent);
text-transform:uppercase;
letter-spacing:1.5px;
border-bottom:1px solid var(--accent);
padding-bottom:2px;
opacity:0;
transform:translateX(-10px);
transition:opacity 0.3s ease, transform 0.3s ease;
}


.media-card:hover .media-card-arrow {
opacity:1;
transform:translateX(0);
}


.subpage-header {
padding:140px 24px 60px;
background:radial-gradient(ellipse at center, var(--bg-secondary) 0%, var(--bg-primary) 70%);
border-bottom:1px solid var(--border-light);
}


.subpage-title {
font-family:'Space Grotesk', sans-serif;
font-size:80px;
font-weight:700;
color:var(--text-primary);
letter-spacing:-2px;
line-height:1;
margin-top:20px;
}


.page-back {
display:inline-block;
font-size:13px;
font-weight:500;
color:var(--text-secondary);
text-decoration:none;
text-transform:uppercase;
letter-spacing:1px;
transition:color var(--transition-base);
}


.page-back:hover {
color:var(--accent);
}


.subpage-content {
padding:80px 0 140px;
background-color:var(--bg-card);
}


.subpage-intro {
font-size:15px;
color:var(--text-muted);
text-align:center;
margin-bottom:60px;
text-transform:uppercase;
letter-spacing:1px;
}


.gallery-grid .image-item {
cursor:pointer;
}


.gallery-grid .image-item:focus {
outline:2px solid var(--accent);
outline-offset:2px;
}


.lightbox {
display:none;
position:fixed;
inset:0;
background-color:rgba(0, 0, 0, 0.95);
z-index:9999;
align-items:center;
justify-content:center;
flex-direction:column;
}


.lightbox.active {
display:flex;
}


.lightbox-content {
position:relative;
max-width:90vw;
max-height:80vh;
display:flex;
flex-direction:column;
align-items:center;
}


.lightbox-content img {
max-width:90vw;
max-height:78vh;
object-fit:contain;
display:block;
border-radius:2px;
}


.lightbox-caption {
margin-top:16px;
font-size:13px;
color:var(--text-muted);
text-align:center;
letter-spacing:0.5px;
}


.lightbox-counter {
position:absolute;
bottom:20px;
left:50%;
transform:translateX(-50%);
font-size:12px;
color:var(--text-muted);
letter-spacing:1px;
}


.lightbox-close,
.lightbox-prev,
.lightbox-next {
position:absolute;
background:none;
border:none;
color:rgba(255, 255, 255, 0.5);
font-size:32px;
cursor:pointer;
transition:color var(--transition-base);
z-index:10000;
padding:12px;
line-height:1;
}


.lightbox-close:hover,
.lightbox-prev:hover,
.lightbox-next:hover {
color:#fff;
}


.lightbox-close {
top:20px;
right:24px;
font-size:40px;
}


.lightbox-prev {
left:20px;
top:50%;
transform:translateY(-50%);
font-size:36px;
}


.lightbox-next {
right:20px;
top:50%;
transform:translateY(-50%);
font-size:36px;
}


.video-thumb-item {
position:relative;
overflow:hidden;
border-radius:4px;
background-color:var(--bg-primary);
border:1px solid var(--border-light);
cursor:pointer;
}


.video-thumb-item img {
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
object-fit:cover;
display:block;
filter:grayscale(40%) brightness(0.85);
transition:filter var(--transition-slow), transform var(--transition-slow);
}


.video-thumb-item:hover img {
filter:grayscale(0%) brightness(1);
transform:scale(1.03);
}


.play-btn {
position:absolute;
top:50%;
left:50%;
transform:translate(-50%, -50%);
width:60px;
height:60px;
z-index:2;
opacity:0.85;
transition:opacity var(--transition-base), transform var(--transition-base);
}

.video-thumb-item:hover .play-btn {
opacity:1;
transform:translate(-50%, -50%) scale(1.1);
}

.video-thumb-item.playing {
cursor:default;
}

.video-thumb-item.playing iframe {
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
border:0;
display:block;
}

@media (max-width: 1024px) {
.subpage-title {
font-size:60px;
}
}

@media (max-width: 768px) {
.media-cards {
grid-template-columns:1fr;
height:auto;
}
.media-card {
height:260px;
}
.media-card-label {
font-size:28px;
}
.media-card-content {
padding:28px;
}
.subpage-header {
padding:110px 24px 40px;
}
.subpage-title {
font-size:44px;
letter-spacing:-1px;
}
.lightbox-prev {
left:8px;
}
.lightbox-next {
right:8px;
}
.lightbox-close {
top:12px;
right:12px;
}
}

/* === VIDEOCLIPS === */
.videoclips-list {
background-color:var(--bg-primary);
padding:80px 0 120px;
}
.videoclip-item {
padding:60px 0;
}
.videoclip-meta {
display:flex;
align-items:baseline;
gap:28px;
margin-bottom:36px;
}
.videoclip-number {
font-family:'Space Grotesk', sans-serif;
font-size:72px;
font-weight:700;
color:var(--border-subtle);
line-height:1;
letter-spacing:-3px;
flex-shrink:0;
}
.videoclip-info {
display:flex;
flex-direction:column;
gap:10px;
}
.videoclip-title {
font-family:'Space Grotesk', sans-serif;
font-size:52px;
font-weight:700;
color:var(--text-primary);
letter-spacing:-2px;
line-height:1;
}
.videoclip-desc {
font-size:16px;
color:var(--text-secondary);
line-height:1.7;
max-width:600px;
}
.videoclip-player {
position:relative;
width:100%;
max-width:820px;
margin:0 auto;
padding-bottom:min(56.25%, 461px);
height:0;
border-radius:4px;
overflow:hidden;
background-color:#000;
border:1px solid var(--border-light);
cursor:pointer;
}
.videoclip-player img {
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
object-fit:cover;
display:block;
filter:brightness(0.85);
transition:filter var(--transition-slow);
}
.videoclip-player:hover img {
filter:brightness(1);
}
.videoclip-badge {
position:absolute;
top:20px;
left:20px;
font-size:11px;
font-weight:500;
text-transform:uppercase;
letter-spacing:1.5px;
color:#fff;
background-color:var(--accent);
padding:6px 12px;
border-radius:2px;
z-index:2;
}
.videoclip-separator {
border:none;
border-top:1px solid var(--border-light);
max-width:1400px;
margin:0 auto;
padding:0 24px;
}
@media (max-width: 768px) {
.videoclip-number {
font-size:48px;
letter-spacing:-2px;
}
.videoclip-title {
font-size:36px;
letter-spacing:-1px;
}
.videoclip-meta {
gap:16px;
margin-bottom:24px;
}
.videoclips-list {
padding:60px 0 80px;
}
.videoclip-item {
padding:40px 0;
}
}
