
    *,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
    :root{
      --black:#090909;
      --dark:#0f0f0f;
      --dark2:#141414;
      --dark3:#1c1c1c;
      --red:#ff4d1c;
      --red-dim:rgba(255,77,28,0.15);
      --red-border:rgba(255,77,28,0.28);
      --text:#f5f2ec;
      --body:#d4cfc8;
      --font:'Roboto',sans-serif;
      --bebas:'Bebas Neue',sans-serif;
    }
    html{scroll-behavior:smooth;}
    body{background:var(--black);color:var(--text);font-family:var(--font);font-weight:300;overflow-x:hidden;}
    a{color:inherit;text-decoration:none;}

    /* NAV */
    nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1.2rem 2.5rem;background:rgba(9,9,9,0.97);border-bottom:2px solid var(--red);transition:backdrop-filter 0.3s;}
    nav.scrolled{background:rgba(9,9,9,0.88);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);}
    .nav-logo img{height:28px;width:auto;display:block;filter:brightness(0) invert(1);}
    .nav-links{display:flex;align-items:center;list-style:none;}
    .nav-links li a{display:inline-flex;align-items:center;gap:0.4rem;padding:0.4rem 0.85rem;color:var(--body);font-size:0.62rem;letter-spacing:0.16em;text-transform:uppercase;font-weight:400;transition:color 0.2s;white-space:nowrap;}
    .nav-links li a i{color:var(--red);font-size:0.78rem;}
    .nav-clef{color:var(--red);font-size:1rem;line-height:1;}
    .nav-links li a:hover,.nav-links li a:hover i,.nav-links li a:hover .nav-clef{color:var(--red);opacity:0.8;}
    .nav-sep{width:1px;height:14px;background:var(--red-border);margin:0 0.1rem;flex-shrink:0;}
    .lang-switcher{display:flex;align-items:center;margin-left:1.5rem;border-left:1px solid var(--red-border);padding-left:1.5rem;}
    .lang-btn{background:none;border:none;color:var(--body);font-family:var(--font);font-size:0.62rem;font-weight:500;letter-spacing:0.15em;cursor:pointer;padding:0.3rem 0.5rem;transition:color 0.2s;text-transform:uppercase;}
    .lang-btn.active{color:var(--red);}
    .lang-btn:hover{color:var(--text);}
    .lang-sep-c{color:var(--red-border);font-size:0.65rem;}
    .nav-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px;margin-left:1rem;}
    .nav-toggle span{display:block;width:22px;height:2px;background:var(--red);}

    /* HERO */
    #home{height:100vh;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;background:var(--dark);position:relative;overflow:hidden;}
    .hero-redline{position:absolute;left:0;right:0;height:1px;background:var(--red);opacity:0.25;}
    .hero-redline-top{top:22%;}
    .hero-redline-bot{bottom:22%;}
    .hero-content{position:relative;z-index:2;padding:0 2rem;}
    .hero-eyebrow{font-size:0.6rem;letter-spacing:0.4em;text-transform:uppercase;color:var(--red);margin-bottom:1.25rem;font-weight:500;opacity:0;animation:fadeUp 0.7s ease forwards 0.3s;}
    .hero-title{font-family:var(--bebas);font-size:clamp(3rem,8vw,7rem);font-weight:400;line-height:0.9;color:var(--text);margin-bottom:1.5rem;letter-spacing:0.02em;opacity:0;animation:fadeUp 0.8s ease forwards 0.6s;}
    .hero-rule{width:60px;height:3px;background:var(--red);margin:0 auto 1.5rem;opacity:0;animation:fadeIn 0.6s ease forwards 1s;}
    .hero-sub{font-size:0.82rem;color:var(--body);font-weight:300;letter-spacing:0.03em;margin-bottom:2.5rem;line-height:1.9;opacity:0;animation:fadeUp 0.7s ease forwards 1.1s;}
    .hero-cta{display:inline-flex;align-items:center;gap:0.75rem;padding:0.9rem 2.2rem;border:2px solid var(--red);color:var(--red);font-family:var(--bebas);font-size:1rem;letter-spacing:0.1em;transition:background 0.25s,color 0.25s;opacity:0;animation:fadeUp 0.7s ease forwards 1.4s;}
    .hero-cta:hover{background:var(--red);color:var(--black);}
    .hero-counter{position:absolute;bottom:5rem;right:2.5rem;display:flex;flex-direction:column;align-items:flex-end;gap:0.5rem;opacity:0;animation:fadeUp 0.8s ease forwards 2s;}
    .hero-counter-item{display:flex;align-items:baseline;gap:0.4rem;}
    .hero-counter-num{font-family:var(--bebas);font-size:1.8rem;color:var(--red);line-height:1;}
    .hero-counter-label{font-size:0.5rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--body);}
    .scroll-hint{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:0.5rem;color:var(--body);font-size:0.58rem;letter-spacing:0.22em;text-transform:uppercase;opacity:0;animation:fadeUp 0.7s ease forwards 1.9s;}
    .scroll-line{width:1px;height:36px;background:linear-gradient(to bottom,transparent,var(--red));animation:sp 2s ease-in-out infinite;}
    @keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
    @keyframes fadeIn{from{opacity:0}to{opacity:1}}
    @keyframes sp{0%,100%{opacity:0.2}50%{opacity:1}}

    /* SECTIONS */
    section{scroll-margin-top:60px;}
    .sec{padding:6rem 2.5rem;}
    .sec-header{display:flex;align-items:baseline;gap:1.5rem;margin-bottom:3rem;border-bottom:2px solid rgba(255,77,28,0.25);padding-bottom:1rem;}
    .sec-label{font-size:0.58rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--red);font-weight:500;white-space:nowrap;position:relative;}
    .sec-label::after{content:'';position:absolute;bottom:-1.15rem;left:0;width:0;height:2px;background:var(--red);transition:width 0.7s ease;}
    .sec-header.visible .sec-label::after{width:100%;}
    .sec-title{font-family:var(--bebas);font-size:2.2rem;font-weight:400;color:var(--text);letter-spacing:0.04em;}
    .sec-divider{height:1px;background:rgba(255,77,28,0.12);margin:0 2.5rem;}
    .reveal{opacity:0;transform:translateY(28px);transition:opacity 0.7s ease,transform 0.7s ease;}
    .reveal.visible{opacity:1;transform:translateY(0);}

    /* MASONRY */
    #portfolio{padding-bottom:0;}
    .masonry{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      grid-auto-rows:260px;
      gap:3px;
    }
    .masonry-item{
      display:block;
      overflow:hidden;
      line-height:0;
    }
    .masonry-item img{
      display:block;
      width:100%;
      height:100%;
      object-fit:cover;
      object-position:center;
    }

        /* ABOUT */
    .about-grid{display:grid;grid-template-columns:1fr 2fr;gap:5rem;align-items:start;}
    .about-portrait{width:100%;aspect-ratio:3/4;overflow:hidden;border:2px solid var(--red-border);}
    .about-portrait img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;}
    .about-name{font-family:var(--bebas);font-size:2.2rem;font-weight:400;color:var(--text);line-height:1.1;margin-bottom:1.5rem;letter-spacing:0.03em;}
    .about-name span{display:block;font-size:0.58rem;font-family:var(--font);font-weight:500;letter-spacing:0.28em;text-transform:uppercase;color:var(--red);margin-bottom:0.75rem;}
    #about-text-block p{font-size:0.87rem;line-height:1.9;color:var(--body);font-weight:300;margin-bottom:1.3rem;text-align:justify;hyphens:auto;}
    #about-text-block p:last-child{margin-bottom:0;}
    #about-text-block em{color:var(--red);font-style:italic;}
    .about-redline{width:0;height:2px;background:var(--red);margin:1.5rem 0;transition:width 1.2s ease;}
    .about-redline.visible{width:60%;}
    .about-tags{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:1rem;}
    .about-tag{padding:0.3rem 0.8rem;border:1px solid var(--red-border);font-size:0.58rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--red);font-weight:400;}

    /* MUSIC */
    .music-with-portrait{display:grid;grid-template-columns:1fr 2fr;gap:4rem;align-items:start;margin-bottom:3.5rem;}
    .music-portrait{width:100%;aspect-ratio:2/3;overflow:hidden;border:2px solid var(--red-border);position:sticky;top:80px;}
    .music-portrait img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;}
    #music-text-block p{font-size:0.9rem;line-height:1.95;color:var(--body);font-weight:300;margin-bottom:1.3rem;text-align:justify;hyphens:auto;}
    #music-text-block p:last-child{margin-bottom:0;}
    #music-text-block em{color:var(--red);font-style:italic;}
    .albums-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px;}
    .album-card{background:var(--dark2);padding:2.5rem;display:flex;gap:2rem;align-items:flex-start;transition:background 0.3s,transform 0.3s,box-shadow 0.3s;}
    .album-card:hover{background:var(--dark3);transform:translateY(-4px);box-shadow:0 16px 40px rgba(0,0,0,0.5);}
    .album-cover{width:110px;height:110px;flex-shrink:0;overflow:hidden;border:1px solid var(--red-border);}
    .album-cover img{width:100%;height:100%;object-fit:cover;display:block;}
    .album-artist{font-size:0.56rem;letter-spacing:0.25em;text-transform:uppercase;color:var(--red);margin-bottom:0.4rem;font-weight:500;}
    .album-title{font-family:var(--bebas);font-size:1.1rem;color:var(--text);margin-bottom:0.65rem;line-height:1.2;letter-spacing:0.04em;}
    .album-desc{font-size:0.76rem;line-height:1.75;color:var(--body);font-weight:300;margin-bottom:1.25rem;text-align:justify;hyphens:auto;}
    .album-links{display:flex;gap:0.5rem;flex-wrap:wrap;}
    .album-link{display:inline-flex;align-items:center;gap:0.35rem;padding:0.3rem 0.8rem;border:1px solid var(--red-border);font-size:0.56rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--body);font-weight:400;transition:border-color 0.2s,color 0.2s;}
    .album-link i{color:var(--red);font-size:0.8rem;}
    .album-link:hover{border-color:var(--red);color:var(--red);}

    /* CONTACT */
    .contact-grid{display:grid;grid-template-columns:1fr 1.6fr;gap:5rem;align-items:start;}
    .contact-intro-text{font-size:0.87rem;line-height:1.9;color:var(--body);font-weight:300;margin-bottom:2.5rem;text-align:justify;hyphens:auto;}
    .contact-detail{display:flex;flex-direction:column;gap:0.3rem;margin-bottom:1.25rem;}
    .contact-label{font-size:0.56rem;letter-spacing:0.25em;text-transform:uppercase;color:var(--red);font-weight:500;}
    .contact-val{font-size:0.82rem;color:var(--body);font-weight:300;}
    .form-group{margin-bottom:1.2rem;}
    .form-group label{display:block;font-size:0.56rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--red);font-weight:500;margin-bottom:0.5rem;}
    .form-group input,.form-group textarea{width:100%;background:var(--dark2);border:1px solid var(--red-border);color:var(--text);font-family:var(--font);font-size:0.82rem;font-weight:300;padding:0.75rem 1rem;outline:none;transition:border-color 0.25s;-webkit-appearance:none;appearance:none;border-radius:0;}
    .form-group input:focus,.form-group textarea:focus{border-color:var(--red);}
    .form-group textarea{resize:vertical;min-height:130px;}
    .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
    .form-submit{width:100%;padding:1rem;background:transparent;border:2px solid var(--red);color:var(--red);font-family:var(--bebas);font-size:1.1rem;letter-spacing:0.1em;cursor:pointer;transition:background 0.25s,color 0.25s;margin-top:0.5rem;border-radius:0;}
    .form-submit:hover{background:var(--red);color:var(--black);}

    /* FOOTER */
    footer{background:var(--dark);border-top:2px solid var(--red);margin-top:4rem;}
    .footer-bottom{padding:1.75rem 2.5rem;display:flex;justify-content:space-between;align-items:center;}
    .footer-copy{font-size:0.62rem;letter-spacing:0.1em;color:var(--body);font-weight:300;}
    .footer-legal{display:flex;gap:1.75rem;list-style:none;}
    .footer-legal a{font-size:0.62rem;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,77,28,0.4);transition:color 0.2s;}
    .footer-legal a:hover{color:var(--red);}

    /* RESPONSIVE */
    @media(max-width:900px){
      .nav-links{display:none;}
      .nav-toggle{display:flex;}
      .nav-links.open{display:flex;flex-direction:column;position:fixed;top:62px;left:0;right:0;background:rgba(9,9,9,0.98);padding:2rem;border-bottom:2px solid var(--red);z-index:99;}
      .nav-links.open li a{padding:0.85rem 0;font-size:0.78rem;}
      .nav-sep{display:none;}
      .masonry{grid-template-columns:repeat(2,1fr);grid-auto-rows:200px;}

      .about-grid,.music-with-portrait,.contact-grid{grid-template-columns:1fr;gap:2.5rem;}
      .albums-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px;}
      .footer-bottom{flex-direction:column;gap:1rem;text-align:center;}
      .form-row{grid-template-columns:1fr;}
      .hero-counter{display:none;}
    }
    @media(max-width:600px){
      .masonry{grid-template-columns:1fr;grid-auto-rows:220px;}

      .sec{padding:4rem 1.25rem;}
      .sec-divider{margin:0 1.25rem;}
    }
  
    /* ── IMPRESSUM ── */
    .nav-back{font-size:0.68rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--body);display:flex;align-items:center;gap:0.5rem;transition:color 0.2s;text-decoration:none;}
    .nav-back:hover{color:var(--red);}
    .nav-back svg{fill:var(--red);}
    .page-hero{padding:5rem 2.5rem 3rem;background:var(--dark);border-bottom:2px solid rgba(255,77,28,0.2);position:relative;overflow:hidden;}
    .page-hero::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,77,28,0.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,77,28,0.03) 1px,transparent 1px);background-size:72px 72px;}
    .page-hero-label{font-size:0.6rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--red);font-weight:500;margin-bottom:0.75rem;position:relative;}
    .page-hero-title{font-family:var(--bebas);font-size:clamp(2rem,5vw,3.5rem);font-weight:400;color:var(--text);position:relative;letter-spacing:0.04em;}
    .content{max-width:960px;margin:0 auto;padding:5rem 2.5rem;}
    .legal-section{margin-bottom:4rem;}
    .legal-section:last-child{margin-bottom:0;}
    .legal-section-title{font-family:var(--bebas);font-size:1.6rem;font-weight:400;color:var(--text);margin-bottom:2rem;letter-spacing:0.04em;padding-bottom:0.85rem;border-bottom:2px solid rgba(255,77,28,0.25);display:flex;align-items:baseline;gap:1rem;}
    .legal-section-title span{font-size:0.58rem;letter-spacing:0.28em;text-transform:uppercase;color:var(--red);font-family:var(--font);font-weight:500;}
    .legal-grid{display:grid;grid-template-columns:180px 1fr;gap:0;}
    .legal-row{display:contents;}
    .legal-row dt{padding:0.7rem 1.5rem 0.7rem 0;font-size:0.68rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--red);font-weight:500;border-bottom:1px solid rgba(255,77,28,0.1);align-self:start;}
    .legal-row dd{padding:0.7rem 0;font-size:0.85rem;line-height:1.85;color:var(--body);font-weight:300;border-bottom:1px solid rgba(255,77,28,0.1);}
    .legal-row dd strong{color:var(--text);font-weight:400;}
    .legal-prose{font-size:0.85rem;line-height:1.9;color:var(--body);font-weight:300;margin-top:2rem;}
    .legal-prose p{margin-bottom:1.1rem;}
    .legal-prose p:last-child{margin-bottom:0;}
    .legal-prose strong{color:var(--text);font-weight:400;}
    .footer-back{font-size:0.62rem;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,77,28,0.4);transition:color 0.2s;text-decoration:none;}
    .footer-back:hover{color:var(--red);}

    /* ── MCEDON BEATS EPK ── */
    .epk-hero{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;padding-top:62px;}
    .epk-hero-img{position:relative;overflow:hidden;}
    .epk-hero-img img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;}
    .epk-hero-overlay{position:absolute;inset:0;background:linear-gradient(to right,transparent 50%,var(--black) 100%);}
    .epk-hero-content{display:flex;flex-direction:column;justify-content:center;padding:5rem 4rem 5rem 3rem;}
    .epk-tag{font-size:0.58rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--red);margin-bottom:1rem;font-weight:500;}
    .epk-name{font-family:var(--bebas);font-size:clamp(3.5rem,6vw,6rem);line-height:0.9;color:var(--text);margin-bottom:0.5rem;letter-spacing:0.03em;}
    .epk-genre{font-size:0.75rem;color:var(--body);letter-spacing:0.08em;margin-bottom:2.5rem;line-height:1.8;}
    .epk-genre span{color:var(--red);}
    .epk-rule{width:50px;height:3px;background:var(--red);margin-bottom:2.5rem;}
    .epk-bio{font-size:0.88rem;line-height:1.9;color:var(--body);font-weight:300;text-align:justify;hyphens:auto;}
    .epk-bio p{margin-bottom:1.2rem;}
    .epk-bio p:last-child{margin-bottom:0;}
    .epk-bio em{color:var(--red);font-style:italic;}
    .epk-socials{display:flex;gap:0.75rem;margin-top:2.5rem;flex-wrap:wrap;}
    .epk-social{display:inline-flex;align-items:center;gap:0.4rem;padding:0.5rem 1.1rem;border:1px solid var(--red-border);font-size:0.6rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--body);transition:border-color 0.2s,color 0.2s;}
    .epk-social svg{fill:var(--red);width:14px;height:14px;}
    .epk-social:hover{border-color:var(--red);color:var(--red);}
    .epk-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--red-border);margin-bottom:3rem;}
    .epk-info-cell{background:var(--dark2);padding:2rem;}
    .epk-info-label{font-size:0.56rem;letter-spacing:0.28em;text-transform:uppercase;color:var(--red);font-weight:500;margin-bottom:0.75rem;}
    .epk-info-value{font-size:0.85rem;color:var(--body);line-height:1.7;}
    .epk-info-value strong{color:var(--text);font-weight:400;display:block;font-family:var(--bebas);font-size:1.1rem;letter-spacing:0.05em;margin-bottom:0.25rem;}
    .epk-badge{font-size:0.58rem;letter-spacing:0.2em;text-transform:uppercase;background:var(--red);color:var(--black);padding:0.3rem 0.8rem;font-weight:500;}
    .epk-contact{background:var(--dark2);border:1px solid var(--red-border);padding:3rem;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;}
    .epk-contact-title{font-family:var(--bebas);font-size:2rem;color:var(--text);letter-spacing:0.04em;margin-bottom:0.5rem;}
    .epk-contact-sub{font-size:0.82rem;color:var(--body);line-height:1.8;}
    .epk-contact-details{display:flex;flex-direction:column;gap:1.25rem;}
    .epk-contact-item{display:flex;flex-direction:column;gap:0.25rem;}
    .epk-contact-item-label{font-size:0.56rem;letter-spacing:0.25em;text-transform:uppercase;color:var(--red);font-weight:500;}
    .epk-contact-item-val{font-size:0.85rem;color:var(--body);}
    .press-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--red-border);}
    .press-item{position:relative;overflow:hidden;cursor:pointer;}
    .press-item img{width:100%;height:400px;object-fit:cover;object-position:center top;transition:transform 0.5s ease;display:block;}
    .press-item:hover img{transform:scale(1.04);}
    .press-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(9,9,9,0.8) 0%,transparent 50%);opacity:0;transition:opacity 0.3s;}
    .press-item:hover .press-overlay{opacity:1;}
    .press-label{position:absolute;bottom:1.5rem;left:1.5rem;opacity:0;transform:translateY(6px);transition:opacity 0.3s,transform 0.3s;}
    .press-item:hover .press-label{opacity:1;transform:translateY(0);}
    .press-label span{font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--red);}
    .press-label p{font-size:0.82rem;color:var(--text);margin-top:0.2rem;}

    @media(max-width:900px){
      .epk-hero{grid-template-columns:1fr;}
      .epk-hero-img{height:60vh;}
      .epk-hero-content{padding:3rem 1.5rem;}
      .epk-info-grid,.epk-contact,.press-grid{grid-template-columns:1fr;}
      .legal-grid{grid-template-columns:1fr;}
      .legal-row dt{border-bottom:none;padding-bottom:0.2rem;}
      .content{padding:3rem 1.25rem;}
      .page-hero{padding:3.5rem 1.25rem 2.5rem;}
    }

    .footer-links{list-style:none;}
    .footer-links li{list-style:none;}

    .footer-links a{font-family:var(--font);font-size:0.62rem;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,77,28,0.4);transition:color 0.2s;font-weight:400;}
    .footer-links a:hover{color:var(--red);}

    .nav-right{display:flex;align-items:center;gap:1.5rem;}
    .epk-badge{font-size:0.58rem;letter-spacing:0.2em;text-transform:uppercase;background:var(--red);color:var(--black);padding:0.3rem 0.8rem;font-weight:500;white-space:nowrap;}
