
:root{
  --forest:#0d1d17;
  --forest-2:#132b21;
  --forest-3:#1d3b2f;
  --charcoal:#0b0f0d;
  --cream:#f2ebdd;
  --cream-2:#e8decc;
  --terracotta:#b65332;
  --red:#aa2e2b;
  --red-bright:#c73a35;
  --gold:#bca477;
  --white:#fffaf0;
  --ink:#1b201d;
  --muted:#b8b6ae;
  --max:1280px;
  --shadow:0 28px 70px rgba(0,0,0,.22);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--charcoal);
  color:var(--white);
  font-family:"Inter",system-ui,sans-serif;
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit}
.container{
  width:min(calc(100% - 44px),var(--max));
  margin-inline:auto;
}

.site-header{
  position:fixed;
  inset:0 0 auto 0;
  height:84px;
  z-index:100;
  background:rgba(8,18,14,.68);
  backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(255,255,255,.07);
  transition:.3s ease;
}
.site-header.scrolled{
  background:rgba(8,18,14,.95);
  box-shadow:0 8px 30px rgba(0,0,0,.2);
}
.header-inner{
  height:100%;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:38px;
}
.brand{
  display:inline-flex;
  align-items:center;
  gap:14px;
}
.brand-mark{
  width:31px;
  height:40px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.brand-mark i{
  width:3px;
  background:var(--terracotta);
  border-radius:2px;
}
.brand-mark i:nth-child(1){height:25px}
.brand-mark i:nth-child(2){height:35px}
.brand-mark i:nth-child(3){height:39px;background:var(--gold)}
.brand-mark i:nth-child(4){height:29px;background:var(--red-bright)}
.brand-name{
  font-family:"Playfair Display",serif;
  font-size:20px;
  line-height:.92;
  letter-spacing:.08em;
}
.main-nav{
  display:flex;
  justify-content:center;
  gap:34px;
}
.main-nav a{
  font-family:"Playfair Display",serif;
  font-size:14px;
  position:relative;
  opacity:.9;
}
.main-nav a::after{
  content:"";
  position:absolute;
  left:0;right:100%;bottom:-10px;
  height:2px;
  background:var(--red-bright);
  transition:.25s ease;
}
.main-nav a:hover::after{right:0}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:48px;
  padding:0 22px;
  border-radius:999px;
  font-weight:700;
  font-size:14px;
  transition:transform .2s ease,background .2s ease,border-color .2s ease;
}
.btn:hover{transform:translateY(-2px)}
.btn-red{
  background:linear-gradient(180deg,var(--red-bright),var(--red));
  border:1px solid rgba(255,255,255,.2);
  box-shadow:0 8px 20px rgba(166,38,34,.25);
}
.btn-outline{
  border:1px solid rgba(255,255,255,.55);
  background:rgba(0,0,0,.15);
}
.btn-dark-outline{
  border:1px solid rgba(13,29,23,.45);
  color:var(--forest);
  background:transparent;
}
.menu-toggle{display:none}

.hero{
  position:relative;
  min-height:760px;
  padding-top:84px;
  display:flex;
  align-items:flex-end;
  overflow:hidden;
}
.hero-media{
  position:absolute;
  inset:84px 0 0;
  background-image:url("assets/fabian-hero.jpg");
  background-size:cover;
  background-position:68% 40%;
  filter:saturate(.95) contrast(1.03);
}
.hero-overlay{
  position:absolute;
  inset:84px 0 0;
  background:
    linear-gradient(90deg,rgba(6,15,11,.94) 0%,rgba(6,15,11,.86) 31%,rgba(6,15,11,.35) 56%,rgba(6,15,11,.12) 76%,rgba(6,15,11,.62) 100%),
    linear-gradient(0deg,rgba(4,12,8,.76) 0%,transparent 42%);
}
.hero::before{
  content:"";
  position:absolute;
  inset:84px 0 0;
  background:radial-gradient(circle at 76% 42%,rgba(192,87,42,.10),transparent 30%);
  z-index:1;
}
.hero-content{
  position:relative;
  z-index:3;
  min-height:596px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding-bottom:120px;
}
.hero-copy{max-width:660px}
.eyebrow{
  margin:0 0 22px;
  font-size:11px;
  letter-spacing:.36em;
  color:#d6cfbf;
}
.hero h1{
  margin:0;
  font-family:"Playfair Display",serif;
  font-size:clamp(66px,8vw,112px);
  font-weight:600;
  line-height:.78;
  letter-spacing:-.03em;
  text-shadow:0 3px 24px rgba(0,0,0,.3);
}
.hero h1 span{display:inline-block;margin-top:18px}
.hero-role{
  margin:26px 0 0;
  font-family:"Playfair Display",serif;
  font-size:20px;
}
.short-line{
  display:block;
  width:52px;height:3px;
  margin:25px 0 22px;
  background:var(--red-bright);
}
.hero-slogan{
  margin:0;
  font-family:"Playfair Display",serif;
  font-style:italic;
  font-size:34px;
  line-height:1.16;
}
.hero-actions{display:flex;gap:13px;margin-top:30px}
.play-dot{font-size:12px}
.hero-handwritten{
  align-self:flex-start;
  margin-top:78px;
  margin-right:1vw;
  transform:rotate(-7deg);
}
.hero-handwritten p,.scribble{
  font-family:"Caveat",cursive;
  font-size:32px;
  line-height:1.05;
  color:#eee2ce;
  margin:0;
}
.hero-handwritten span{
  display:block;
  width:52px;height:3px;background:var(--red-bright);
  margin:13px 0 0 28px;
}
.stats-strip{
  position:absolute;
  z-index:5;
  left:0;right:0;bottom:0;
  background:linear-gradient(90deg,#112c22,#0f281f);
  border-top:1px solid rgba(255,255,255,.08);
}
.stats-grid{
  min-height:112px;
  display:grid;
  grid-template-columns:repeat(3,1fr) 1.4fr;
}
.stat{
  display:flex;
  align-items:center;
  gap:20px;
  padding:20px 30px;
  border-right:1px solid rgba(255,255,255,.14);
}
.stat:last-child{border-right:0}
.stat-icon{font-size:37px;color:#b5c1ad}
.stat strong{
  font-family:"Playfair Display",serif;
  font-size:37px;
  font-weight:600;
}
.stat small{
  margin-left:10px;
  display:inline-block;
  font-size:9px;
  letter-spacing:.08em;
  line-height:1.4;
  color:#d7dbd4;
}

.section-cream{
  background:var(--cream);
  color:var(--ink);
}
.about{
  padding:78px 0;
  position:relative;
  overflow:hidden;
}
.about-grid{
  display:grid;
  grid-template-columns:1.05fr 1fr .55fr;
  gap:48px;
  align-items:center;
}
.about-photo-wrap{
  position:relative;
  padding:10px 0 0 40px;
}
.about-photo{
  height:390px;
  width:100%;
  object-fit:cover;
  object-position:center 28%;
  box-shadow:var(--shadow);
  border-radius:3px;
  filter:saturate(.95);
}
.paper-tape{
  position:absolute;
  width:90px;height:24px;
  background:rgba(231,220,194,.82);
  z-index:2;
  transform:rotate(-10deg);
  top:2px;left:48%;
  box-shadow:0 2px 6px rgba(0,0,0,.09);
}
.scribble-left{
  position:absolute;
  left:0;
  bottom:16px;
  color:#1e241f;
  transform:rotate(-8deg);
  font-size:29px;
}
.section-kicker{
  font-size:11px;
  letter-spacing:.27em;
  font-weight:800;
  display:flex;
  align-items:center;
  gap:13px;
}
.section-kicker span{width:44px;height:2px;background:var(--red-bright);display:inline-block}
.about-copy h2,.culture h2,.contact h2{
  margin:14px 0 22px;
  font-family:"Playfair Display",serif;
  font-size:clamp(46px,5vw,72px);
  line-height:.94;
  font-weight:600;
}
.about-copy p{
  font-family:"Playfair Display",serif;
  font-size:17px;
  line-height:1.55;
  color:#35382f;
}
.about-actions{display:flex;align-items:center;gap:22px;margin-top:26px}
.text-link{
  font-weight:700;
  font-size:13px;
  border-bottom:1px solid #706b5f;
}
.about-landscape{
  min-height:360px;
  position:relative;
  display:flex;
  align-items:flex-end;
  justify-content:center;
}
.landscape-art{
  position:absolute;inset:0;
  opacity:.23;
  overflow:hidden;
}
.horizon{
  position:absolute;left:0;right:0;bottom:45px;height:1px;
  background:#314435;
}
.horizon::before,
.horizon::after{
  content:"";
  position:absolute;bottom:-40px;width:180px;height:80px;
  border-top:2px solid #314435;
  border-radius:50%;
  transform:rotate(-7deg);
}
.horizon::before{left:-40px}
.horizon::after{right:-30px}
.tree{
  position:absolute;
  bottom:45px;
  width:4px;background:#314435;
}
.tree::before{
  content:"";
  position:absolute;
  left:50%;transform:translateX(-50%);
  width:90px;height:110px;
  bottom:85%;
  border-radius:50% 48% 52% 45%;
  background:radial-gradient(circle,#314435 0 2px,transparent 3px) 0 0/10px 10px;
}
.t1{height:100px;right:30%}
.t2{height:78px;right:55%}
.t3{height:58px;right:5%}
.about-landscape .scribble{
  color:#29342c;
  transform:rotate(-7deg);
  font-size:31px;
  position:relative;
  z-index:2;
  margin-bottom:40px;
}

.section-dark{
  background:var(--forest);
  color:var(--white);
}
.music{padding:58px 0 68px}
.section-head{
  display:flex;
  justify-content:space-between;
  gap:30px;
  align-items:flex-end;
  margin-bottom:28px;
}
.section-subtitle{
  margin:8px 0 0;
  font-family:"Playfair Display",serif;
  font-style:italic;
  font-size:20px;
  color:#d6c9b7;
}
.platforms{display:flex;gap:10px;flex-wrap:wrap}
.platform-btn{
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  padding:11px 17px;
  font-size:12px;
  font-weight:700;
  background:rgba(255,255,255,.04);
}
.music-grid{
  display:grid;
  grid-template-columns:1.25fr 1.25fr 1.25fr 1fr;
  gap:16px;
}
.media-card,.quote-card{
  min-height:230px;
  border-radius:8px;
  overflow:hidden;
  position:relative;
  margin:0;
  box-shadow:0 15px 35px rgba(0,0,0,.18);
}
.media-card{
  background-image:linear-gradient(0deg,rgba(0,0,0,.72),rgba(0,0,0,.06)),var(--bg);
  background-size:cover;
  background-position:center;
}
.media-card.scenic{
  background:
    linear-gradient(0deg,rgba(4,22,15,.72),rgba(4,22,15,.05)),
    radial-gradient(circle at 70% 20%,#c25931 0%,#813d2c 25%,#1c3427 54%,#0b2017 100%);
}
.media-card.scenic::before{
  content:"";
  position:absolute;inset:auto -5% 0 -5%;height:54%;
  background:
    radial-gradient(ellipse at 50% 100%,#08120f 0 55%,transparent 56%),
    repeating-linear-gradient(168deg,transparent 0 19px,rgba(255,255,255,.05) 20px 21px);
}
.media-overlay{
  position:absolute;inset:0;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-items:flex-start;
  padding:22px;
  background:linear-gradient(0deg,rgba(0,0,0,.55),transparent 60%);
}
.media-play{
  position:absolute;inset:0;
  margin:auto;
  width:50px;height:50px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.65);
  display:grid;place-items:center;
  backdrop-filter:blur(5px);
  background:rgba(0,0,0,.25);
}
.media-card h3{font-family:"Playfair Display",serif;font-size:22px;margin:0 0 5px}
.media-card p{margin:0;color:#d6d8d4;font-size:12px}
.quote-card{
  padding:28px;
  background:
    linear-gradient(180deg,rgba(18,55,41,.5),rgba(6,26,18,.95)),
    radial-gradient(circle at 85% 25%,#3e5a46 0%,transparent 35%);
}
.quote-card::after{
  content:"";
  position:absolute;left:0;right:0;bottom:0;height:46%;
  opacity:.22;
  background:repeating-linear-gradient(77deg,transparent 0 18px,#d8c7a3 19px 21px);
}
.quote-card span{font-family:"Playfair Display",serif;font-size:70px;line-height:.7}
.quote-card p{
  position:relative;z-index:2;
  font-family:"Playfair Display",serif;
  font-style:italic;font-size:27px;line-height:1.25;
  margin:15px 0 0;
}

.agenda-press{padding:64px 0}
.two-columns{
  display:grid;
  grid-template-columns:1fr 1.05fr;
  gap:56px;
}
.dark-subtitle{color:#655f56}
.mini-head{margin-bottom:20px}
.agenda-list{display:grid;gap:12px;margin-bottom:18px}
.date-card{
  display:grid;
  grid-template-columns:86px 1fr;
  gap:18px;
  background:#f9f4ea;
  padding:18px;
  border:1px solid rgba(23,39,29,.08);
  border-radius:8px;
}
.date-box{
  border-right:1px solid rgba(26,37,30,.13);
  padding-right:13px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
.date-box strong{
  font-family:"Playfair Display",serif;
  font-size:34px;color:var(--red);
}
.date-box span{font-size:9px;font-weight:800;letter-spacing:.12em;color:#736f68}
.date-card h3,.press-card h3{font-family:"Playfair Display",serif;margin:0 0 7px;font-size:18px}
.date-card p,.press-card p{margin:0 0 8px;font-size:12px;line-height:1.45;color:#4f514d}
.date-card small{font-size:10px;color:#806f65}
.press-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.press-card{
  min-height:220px;
  padding:17px;
  background:#f9f4ea;
  border:1px solid rgba(23,39,29,.08);
  border-radius:8px;
  position:relative;
  overflow:hidden;
}
.press-card::before{
  content:"";
  display:block;
  width:100%;height:86px;
  margin-bottom:15px;
  background:
    linear-gradient(155deg,rgba(160,68,38,.28),rgba(14,47,34,.3)),
    radial-gradient(circle at 20% 30%,#d4a46b 0 3%,transparent 4%),
    linear-gradient(25deg,#1f3d30 0 35%,#c2774b 36% 42%,#735131 43% 50%,#324a3b 51%);
  border-radius:4px;
  filter:saturate(.75);
}
.press-card small{font-size:9px;letter-spacing:.08em;font-weight:800;color:var(--terracotta)}

.culture{
  position:relative;
  min-height:410px;
  overflow:hidden;
  display:flex;
  align-items:center;
}
.culture-bg{
  position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(6,20,14,.96),rgba(6,20,14,.55),rgba(6,20,14,.92)),
    linear-gradient(180deg,rgba(49,68,51,.3),rgba(5,18,13,.95));
}
.culture-bg::before{
  content:"";
  position:absolute;left:0;right:0;bottom:0;height:55%;
  background:
    radial-gradient(ellipse at 35% 100%,#070f0c 0 40%,transparent 41%),
    radial-gradient(ellipse at 78% 100%,#0a1510 0 49%,transparent 50%);
}
.culture-content{
  position:relative;z-index:2;
  display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:center;
}
.scribble.large{font-size:51px;transform:rotate(-7deg)}
.light-kicker{color:#e6ddd0}
.culture h2{font-size:60px}
.culture p{max-width:640px;line-height:1.65;color:#d1d3ce}

.contact{padding-top:72px}
.contact-grid{
  display:grid;
  grid-template-columns:.7fr 1.1fr .6fr;
  gap:50px;
  align-items:start;
  padding-bottom:62px;
}
.brand-footer{margin-bottom:18px}
.contact-brand p,.contact-data{color:#bfc4be;font-size:13px}
.contact-cta h2{font-size:50px;margin-top:0}
.btn-big{min-height:58px;padding:0 28px}
.contact-data p{margin:0 0 7px}
.contact-data a{display:block;margin-bottom:12px}
.social-row{display:flex;gap:15px;margin-top:18px}
.social-row a{font-weight:700;color:#f0e9dd}
.footer{
  border-top:1px solid rgba(255,255,255,.08);
  padding:22px 0;
  color:#8f9992;
  font-size:11px;
}
.footer-inner{display:flex;justify-content:space-between;gap:20px}

.reveal{
  opacity:0;
  transform:translateY(18px);
  transition:opacity .75s ease,transform .75s ease;
}
.reveal.visible{opacity:1;transform:none}

@media (max-width:1050px){
  .main-nav{gap:20px}
  .header-cta{display:none}
  .about-grid{grid-template-columns:1fr 1fr}
  .about-landscape{display:none}
  .music-grid{grid-template-columns:1fr 1fr}
  .two-columns{grid-template-columns:1fr}
  .contact-grid{grid-template-columns:1fr 1fr}
  .contact-data{grid-column:1/-1}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .stat:nth-child(2){border-right:0}
  .stat:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.12)}
  .hero{min-height:860px}
  .hero-content{padding-bottom:220px}
}

@media (max-width:760px){
  .site-header{height:72px}
  .header-inner{grid-template-columns:1fr auto;gap:12px}
  .brand-name{font-size:17px}
  .brand-mark{height:35px}
  .menu-toggle{
    display:block;
    width:46px;height:46px;border:0;background:transparent;
    position:relative;z-index:103;
  }
  .menu-toggle span{
    position:absolute;left:11px;right:11px;height:2px;background:#fff;
    transition:.25s ease;
  }
  .menu-toggle span:first-child{top:18px}
  .menu-toggle span:last-child{top:27px}
  .menu-toggle.active span:first-child{top:22px;transform:rotate(45deg)}
  .menu-toggle.active span:last-child{top:22px;transform:rotate(-45deg)}
  .main-nav{
    position:fixed;
    top:0;right:-100%;
    width:min(82vw,360px);
    height:100dvh;
    background:#0a1812;
    padding:110px 35px 30px;
    flex-direction:column;
    align-items:flex-start;
    gap:24px;
    transition:.32s ease;
    box-shadow:-20px 0 50px rgba(0,0,0,.35);
  }
  .main-nav.open{right:0}
  .main-nav a{font-size:22px}
  .hero{min-height:960px;padding-top:72px}
  .hero-media{
    inset:72px 0 0;
    background-position:61% center;
  }
  .hero-overlay{
    inset:72px 0 0;
    background:
      linear-gradient(180deg,rgba(5,14,10,.20) 10%,rgba(5,14,10,.28) 37%,rgba(5,14,10,.95) 73%),
      linear-gradient(90deg,rgba(5,14,10,.3),rgba(5,14,10,.1));
  }
  .hero-content{
    align-items:flex-end;
    min-height:720px;
    padding-bottom:285px;
  }
  .hero-copy{max-width:none;width:100%}
  .eyebrow{font-size:9px;letter-spacing:.22em}
  .hero h1{font-size:59px}
  .hero-role{font-size:15px}
  .hero-slogan{font-size:27px}
  .hero-handwritten{display:none}
  .hero-actions{flex-wrap:wrap}
  .stats-strip{bottom:0}
  .stats-grid{
    grid-template-columns:1fr 1fr;
    min-height:240px;
  }
  .stat{padding:18px 15px;gap:10px}
  .stat strong{font-size:28px}
  .stat small{font-size:8px;margin-left:4px}
  .stat-wide strong{font-size:20px}
  .about{padding:58px 0}
  .about-grid{grid-template-columns:1fr;gap:35px}
  .about-photo-wrap{padding-left:22px}
  .about-photo{height:350px}
  .scribble-left{font-size:24px}
  .about-copy h2{font-size:49px}
  .about-actions{flex-direction:column;align-items:flex-start}
  .section-head{align-items:flex-start;flex-direction:column}
  .platforms{width:100%}
  .music-grid{grid-template-columns:1fr}
  .media-card,.quote-card{min-height:260px}
  .press-grid{grid-template-columns:1fr}
  .culture-content{grid-template-columns:1fr;gap:45px}
  .scribble.large{font-size:42px}
  .culture h2{font-size:52px}
  .contact-grid{grid-template-columns:1fr}
  .contact-data{grid-column:auto}
  .contact-cta h2{font-size:42px}
  .footer-inner{flex-direction:column}
}

@media (prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none;transition:none}
}


/* ==========================================================
   V2 — ajustes escritorio, música sin enlaces inactivos y prensa
   ========================================================== */

/* Hero: la fotografía original es vertical. En escritorio se coloca como
   panel fotográfico a la derecha para evitar el recorte excesivo de background-cover. */
@media (min-width: 1060px){
  .hero{
    min-height:780px;
    background:
      radial-gradient(circle at 68% 35%, rgba(174,76,44,.14), transparent 31%),
      linear-gradient(90deg,#09150f 0%,#0d1d17 55%,#09150f 100%);
  }
  .hero-media{
    inset:84px 0 112px 43%;
    background-image:url("assets/fabian-hero-desktop.jpg");
    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;
    filter:saturate(.98) contrast(1.02);
    -webkit-mask-image:linear-gradient(90deg, transparent 0%, rgba(0,0,0,.2) 7%, #000 24%, #000 100%);
    mask-image:linear-gradient(90deg, transparent 0%, rgba(0,0,0,.2) 7%, #000 24%, #000 100%);
  }
  .hero-overlay{
    inset:84px 0 112px 0;
    background:
      linear-gradient(90deg, rgba(5,14,10,.98) 0%, rgba(5,14,10,.94) 31%, rgba(5,14,10,.73) 47%, rgba(5,14,10,.12) 70%, rgba(5,14,10,.35) 100%),
      linear-gradient(0deg,rgba(4,12,8,.42) 0%,transparent 48%);
  }
  .hero::before{inset:84px 0 112px}
  .hero-content{min-height:584px;padding-bottom:112px}
  .hero-copy{max-width:600px}
  .hero h1{font-size:clamp(72px,7.25vw,106px)}
  .hero-handwritten{margin-top:72px;margin-right:0}
}

/* Frase manuscrita junto a la foto: caja clara para garantizar contraste. */
.about-photo-wrap{padding-left:74px}
.scribble-left{
  z-index:6;
  left:0;
  bottom:24px;
  color:#17251d;
  background:rgba(242,235,221,.95);
  padding:10px 13px 12px;
  border-radius:4px;
  box-shadow:0 9px 24px rgba(35,31,24,.12);
  text-shadow:0 1px 0 rgba(255,255,255,.35);
}
.scribble-left::after{
  content:"";
  display:block;
  width:35px;height:3px;
  margin:8px 0 0 12px;
  background:var(--red-bright);
}

/* Música: presentación editorial, sin inventar un canal ni destino multimedia. */
.music-feature{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);
  min-height:430px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  border-radius:10px;
  background:linear-gradient(135deg,#13291f,#0a1712);
  box-shadow:0 24px 55px rgba(0,0,0,.20);
}
.music-feature-photo{
  min-height:430px;
  background:
    linear-gradient(90deg,transparent 58%,rgba(10,23,18,.82) 100%),
    url('assets/fabian-about.jpg') center 32%/cover no-repeat;
}
.music-feature-copy{
  padding:56px 50px 48px 34px;
  align-self:center;
}
.music-label{
  margin:0 0 15px;
  color:#c7ad84;
  font-size:10px;
  font-weight:800;
  letter-spacing:.19em;
}
.music-feature-copy h2{
  margin:0 0 20px;
  font-family:'Playfair Display',serif;
  font-size:clamp(36px,4vw,58px);
  line-height:1.03;
  font-weight:600;
}
.music-feature-copy>p:not(.music-label){
  color:#c5cbc5;
  font-size:14px;
  line-height:1.72;
}
.music-tags{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 27px}
.music-tags span{
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.035);
  padding:8px 11px;
  border-radius:999px;
  font-size:10px;
  letter-spacing:.04em;
  color:#e9e4d9;
}
.light-link{color:#f4ecdf;border-color:rgba(255,255,255,.45)}

.press-home-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}
.mini-link{font-size:12px;font-weight:800;color:var(--forest);border-bottom:1px solid rgba(13,29,23,.35);padding-bottom:4px}
.press-grid-home .press-card{padding:0;min-height:310px;display:flex;flex-direction:column}
.press-card-link{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.press-card-link:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(41,34,24,.10);border-color:rgba(170,46,43,.24)}
.press-grid-home .press-card::before{display:none}
.press-thumb{height:110px;margin:0 0 15px;background-size:cover;background-position:center;border-radius:7px 7px 0 0}
.press-thumb-hero{background-image:linear-gradient(0deg,rgba(13,29,23,.25),rgba(13,29,23,.06)),url('assets/fabian-hero.jpg');background-position:center 24%}
.press-thumb-about{background-image:linear-gradient(0deg,rgba(13,29,23,.25),rgba(13,29,23,.06)),url('assets/fabian-about.jpg');background-position:center 27%}
.press-thumb-accordion{background-image:linear-gradient(0deg,rgba(13,29,23,.25),rgba(13,29,23,.06)),url('assets/fabian-hero.jpg');background-position:center 66%}
.press-grid-home .press-card small,
.press-grid-home .press-card h3,
.press-grid-home .press-card p,
.press-grid-home .press-card .card-arrow{margin-left:16px;margin-right:16px}
.press-grid-home .press-card h3{font-size:17px}
.card-arrow{font-size:11px;font-weight:800;color:var(--red);margin-top:auto;margin-bottom:16px}

/* Dedicated press page */
.nav-current::after{right:0!important}
.news-page{background:var(--cream)}
.news-hero{
  min-height:540px;
  padding-top:84px;
  position:relative;
  display:flex;
  align-items:center;
  overflow:hidden;
  color:var(--white);
  background:#0a1812;
}
.news-hero-photo{
  position:absolute;
  inset:84px 0 0 50%;
  background:url('assets/fabian-hero-desktop.jpg') center/cover no-repeat;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 25%);
  mask-image:linear-gradient(90deg,transparent,#000 25%);
}
.news-hero-overlay{
  position:absolute;inset:84px 0 0;
  background:linear-gradient(90deg,rgba(7,19,13,.99) 0%,rgba(7,19,13,.94) 43%,rgba(7,19,13,.20) 78%,rgba(7,19,13,.55) 100%);
}
.news-hero-content{position:relative;z-index:2;padding:70px 0 56px}
.news-hero h1{
  font-family:'Playfair Display',serif;
  font-size:clamp(66px,8vw,110px);
  line-height:.84;
  margin:0 0 28px;
  font-weight:600;
}
.news-hero-content>p:not(.eyebrow){max-width:610px;color:#d4d5cf;line-height:1.65;font-size:15px}
.news-back-link{display:inline-block;margin-top:20px;color:#f1eadf;border-color:rgba(255,255,255,.35)}
.news-index{padding:75px 0 92px}
.news-intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:end;margin-bottom:42px}
.news-intro h2{font-family:'Playfair Display',serif;font-size:54px;line-height:1;margin:12px 0 0;font-weight:600}
.news-intro>p{max-width:700px;margin:0;color:#5b5b53;line-height:1.65;font-size:14px}
.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.news-card{
  background:#fbf7ee;
  border:1px solid rgba(26,39,30,.10);
  border-radius:10px;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-height:470px;
  box-shadow:0 12px 30px rgba(49,41,28,.045);
  scroll-margin-top:105px;
}
.news-card-media{height:185px;position:relative;background-size:cover;background-position:center;flex:none}
.news-card-media::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,20,14,.55),transparent 65%)}
.news-card-media span{position:absolute;z-index:2;left:17px;bottom:15px;color:#fff;font-size:9px;font-weight:800;letter-spacing:.14em}
.media-hero{background-image:url('assets/fabian-hero.jpg');background-position:center 24%}
.media-about{background-image:url('assets/fabian-about.jpg');background-position:center 25%}
.media-accordion{background-image:url('assets/fabian-hero.jpg');background-position:center 66%}
.media-forest{background:linear-gradient(145deg,#173a2b,#081913 55%,#a34b2c)}
.news-card-body{padding:22px 21px 23px;display:flex;flex-direction:column;flex:1}
.news-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:9px;font-weight:800;letter-spacing:.08em;color:#8d604b;text-transform:uppercase}
.news-card h2{font-family:'Playfair Display',serif;font-size:22px;line-height:1.15;margin:14px 0 13px;font-weight:600}
.news-card p{font-size:12px;line-height:1.62;color:#55574f;margin:0 0 19px}
.news-card a{margin-top:auto;font-size:12px;font-weight:800;color:var(--red);border-top:1px solid rgba(24,39,29,.10);padding-top:15px}
.news-card:hover{transform:translateY(-3px);transition:.2s ease;box-shadow:0 17px 38px rgba(49,41,28,.08)}
.news-cta{
  margin-top:58px;
  padding:38px 42px;
  border-radius:12px;
  background:linear-gradient(100deg,#102b20,#0a1913);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:35px;
}
.news-cta .section-kicker{color:#c8b794}
.news-cta h2{font-family:'Playfair Display',serif;font-size:37px;margin:12px 0 8px}
.news-cta p:not(.section-kicker){color:#bfc7c0;margin:0}
.news-footer{padding:22px 0}

@media (max-width:1050px){
  .music-feature{grid-template-columns:1fr}
  .music-feature-photo{min-height:390px;background-image:linear-gradient(0deg,rgba(10,23,18,.55),transparent 45%),url('assets/fabian-about.jpg')}
  .music-feature-copy{padding:38px}
  .news-grid{grid-template-columns:1fr 1fr}
  .news-intro{grid-template-columns:1fr;gap:20px}
}

@media (max-width:760px){
  .about-photo-wrap{padding-left:24px}
  .scribble-left{left:-4px;bottom:18px;padding:7px 9px 9px;font-size:23px}
  .music-feature-photo{min-height:320px;background-position:center 25%}
  .music-feature-copy{padding:30px 24px 34px}
  .news-hero{padding-top:72px;min-height:500px}
  .news-hero-photo{inset:72px 0 0 22%;opacity:.53;-webkit-mask-image:linear-gradient(90deg,transparent,#000 35%);mask-image:linear-gradient(90deg,transparent,#000 35%)}
  .news-hero-overlay{inset:72px 0 0;background:linear-gradient(90deg,rgba(7,19,13,.97),rgba(7,19,13,.72))}
  .news-hero h1{font-size:64px}
  .news-index{padding:55px 0 70px}
  .news-grid{grid-template-columns:1fr}
  .news-intro h2{font-size:44px}
  .news-card{min-height:0}
  .news-cta{padding:30px 24px;flex-direction:column;align-items:flex-start}
  .news-cta h2{font-size:31px}
  .press-home-head{align-items:flex-start;flex-direction:column}
}


/* ==========================================================
   V3 — hero mejor encuadrado, notas centradas y acento naranja
   ========================================================== */
:root{
  --terracotta:#d76726;
  --red:#c94c1b;
  --red-bright:#ef7430;
  --gold:#d6a36a;
}
.btn-red{
  background:linear-gradient(180deg,var(--red-bright),var(--red));
  box-shadow:0 12px 24px rgba(201,76,27,.28);
}
.main-nav a::after,
.short-line,
.scribble-left::after,
.section-kicker span,
.hero-handwritten span{background:var(--red-bright)}

@media (min-width: 1060px){
  .hero{
    min-height:790px;
    background:
      radial-gradient(circle at 70% 34%, rgba(215,103,38,.16), transparent 28%),
      linear-gradient(90deg,#08150f 0%,#0d1d17 58%,#07120e 100%);
  }
  .hero-media{
    inset:96px 0 112px 49%;
    background-image:url("assets/fabian-hero-desktop.jpg");
    background-size:contain;
    background-position:right center;
    background-repeat:no-repeat;
    filter:saturate(1) contrast(1.02);
    -webkit-mask-image:none;
    mask-image:none;
  }
  .hero-overlay{
    inset:84px 0 112px 0;
    background:
      linear-gradient(90deg, rgba(5,14,10,.98) 0%, rgba(5,14,10,.93) 33%, rgba(5,14,10,.70) 46%, rgba(5,14,10,.20) 61%, rgba(5,14,10,.06) 73%, rgba(5,14,10,.30) 100%),
      linear-gradient(0deg,rgba(4,12,8,.34) 0%,transparent 52%);
  }
  .hero::before{inset:84px 0 112px}
  .hero-content{min-height:584px;padding-bottom:112px}
  .hero-copy{max-width:590px}
  .hero h1{font-size:clamp(70px,7vw,104px)}
  .hero-role{font-size:18px}
  .hero-slogan{font-size:33px}
}

.about-photo-wrap{padding-left:124px;padding-bottom:8px}
.scribble-left{
  left:10px;
  bottom:34px;
  width:100px;
  color:#17251d;
  background:rgba(242,235,221,.98);
  padding:12px 14px 12px;
  border-radius:8px;
  box-shadow:0 14px 34px rgba(35,31,24,.10);
  border:1px solid rgba(206,110,53,.14);
}
.about-photo{
  box-shadow:0 20px 48px rgba(30,25,19,.12);
}
.paper-tape{background:rgba(237,167,111,.34)}

.press-grid-home .press-card,
.news-card{
  border:1px solid rgba(206,110,53,.18);
}
.press-card-link:hover,.news-card:hover{
  box-shadow:0 18px 40px rgba(119,60,27,.12);
  border-color:rgba(206,110,53,.34);
}
.press-thumb{height:116px}
.card-arrow,.mini-link,.news-card-cta,.news-card a,.news-meta{color:var(--red)}

.news-intro{justify-content:center}
.news-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(310px,360px));
  gap:22px;
  justify-content:center;
}
.news-card{
  width:min(100%,360px);
  justify-self:center;
  min-height:0;
}
.news-card-link{
  display:flex;
  flex-direction:column;
  height:100%;
  color:inherit;
}
.news-card-body{height:100%}
.news-card-cta{
  margin-top:auto;
  padding-top:15px;
  border-top:1px solid rgba(24,39,29,.10);
  font-size:12px;
  font-weight:800;
}
.news-card h2{font-size:21px}
.news-cta{
  background:linear-gradient(100deg,#111d16,#0d1d17 55%,#31170b 100%);
  border:1px solid rgba(239,116,48,.15);
}

@media (max-width:1050px){
  .about-photo-wrap{padding-left:84px}
}
@media (max-width:760px){
  .about-photo-wrap{padding-left:24px;padding-bottom:0}
  .scribble-left{left:8px;bottom:14px;width:auto;padding:8px 10px 10px;font-size:22px}
  .news-grid{grid-template-columns:1fr}
  .news-card{width:100%}
}


/* ==========================================================
   V4 — miniaturas reales de prensa
   ========================================================== */
.press-thumb-source,
.news-card-media{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(135deg,rgba(237,116,48,.72),rgba(94,39,17,.20) 42%,rgba(13,29,23,.95)),
    #18251e;
}
.press-thumb-source img,
.news-card-img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .45s ease,filter .3s ease;
}
.press-thumb-source::after,
.news-card-media::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(0deg,rgba(8,19,14,.48),transparent 58%);
}
.news-card-media span{
  z-index:2;
}
.press-card-link:hover .press-thumb-source img,
.news-card:hover .news-card-img{
  transform:scale(1.035);
}
.news-card-media{background-position:center!important}

/* Different crops for the real source photos. */
#mpm-2026 .news-card-img{object-position:center 45%}
#cosquin-2026 .news-card-img{object-position:center 46%}
#urqumanta-2026 .news-card-img{object-position:center 40%}
#lvm-litoral-2024 .news-card-img{object-position:center 50%}
#litoral-2024 .news-card-img{object-position:center 46%}
#misionesonline-2024 .news-card-img{object-position:center 48%}
#noticias6-2024 .news-card-img{object-position:center 47%}
#noticiascalle-2024 .news-card-img{object-position:center 50%}
#nova-2024 .news-card-img{object-position:center 46%}
#ladatamix-2024 .news-card-img{object-position:center 35%}
#cadenadelsol-2024 .news-card-img{object-position:center 50%}
#economis-2024 .news-card-img{object-position:center 50%}
#gutenberg-2024 .news-card-img{object-position:center 43%}


/* ==========================================================
   V5 — corrección definitiva de tarjetas de prensa/noticias
   ========================================================== */

/* HOME: elimina por completo el bloque gráfico heredado que quedaba arriba de la miniatura. */
.press-grid-home .press-card.press-card-link::before,
.press-grid-home .press-card-link::before,
.press-card-link::before{
  content:none !important;
  display:none !important;
  width:0 !important;
  height:0 !important;
  margin:0 !important;
  background:none !important;
}

.press-grid-home .press-card{
  padding:0 !important;
  overflow:hidden !important;
  background:#fbf7ee !important;
}

.press-grid-home .press-thumb-source{
  position:relative !important;
  width:100% !important;
  height:150px !important;
  margin:0 0 16px 0 !important;
  padding:0 !important;
  overflow:hidden !important;
  border-radius:0 !important;
  background:#e7ddd0 !important;
}

.press-grid-home .press-thumb-source::before{
  content:none !important;
  display:none !important;
}

.press-grid-home .press-thumb-source img{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
}

/* Página TODAS LAS NOTICIAS: tarjeta completa y enlace sin heredar estilos de CTA antiguos. */
.news-index .news-grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(300px,360px)) !important;
  justify-content:center !important;
  align-items:stretch !important;
  gap:24px !important;
}

.news-index .news-card{
  display:flex !important;
  flex-direction:column !important;
  width:100% !important;
  max-width:360px !important;
  min-height:470px !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  border:1px solid rgba(215,103,38,.22) !important;
  border-radius:12px !important;
  background:#fbf7ee !important;
  box-shadow:0 12px 30px rgba(49,41,28,.06) !important;
  color:var(--ink) !important;
}

.news-index .news-card > .news-card-link{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  color:inherit !important;
  text-decoration:none !important;
}

.news-index .news-card-media{
  position:relative !important;
  flex:0 0 190px !important;
  width:100% !important;
  height:190px !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  background:#e7ddd0 !important;
  border:0 !important;
}

.news-index .news-card-media::before{
  content:none !important;
  display:none !important;
}

.news-index .news-card-media::after{
  content:"" !important;
  display:block !important;
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  pointer-events:none !important;
  background:linear-gradient(0deg,rgba(8,19,14,.52),transparent 58%) !important;
}

.news-index .news-card-img{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  padding:0 !important;
  object-fit:cover !important;
  object-position:center !important;
  border:0 !important;
}

.news-index .news-card-media > span{
  position:absolute !important;
  left:17px !important;
  bottom:15px !important;
  z-index:2 !important;
  color:#fff !important;
  font-size:9px !important;
  font-weight:800 !important;
  letter-spacing:.14em !important;
}

.news-index .news-card-body{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  height:auto !important;
  padding:22px 21px 23px !important;
  background:#fbf7ee !important;
}

.news-index .news-meta{
  display:flex !important;
  justify-content:space-between !important;
  gap:12px !important;
  color:var(--red) !important;
  font-size:9px !important;
  font-weight:800 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

.news-index .news-card h2{
  margin:14px 0 13px !important;
  font-family:'Playfair Display',serif !important;
  font-size:21px !important;
  line-height:1.16 !important;
  font-weight:600 !important;
  color:var(--ink) !important;
}

.news-index .news-card p{
  margin:0 0 18px !important;
  color:#55574f !important;
  font-size:12px !important;
  line-height:1.62 !important;
}

.news-index .news-card .news-card-cta{
  display:block !important;
  margin-top:auto !important;
  padding-top:15px !important;
  border-top:1px solid rgba(24,39,29,.10) !important;
  color:var(--red) !important;
  font-size:12px !important;
  font-weight:800 !important;
}

.news-index .news-card:hover{
  transform:translateY(-4px) !important;
  box-shadow:0 18px 40px rgba(119,60,27,.12) !important;
  border-color:rgba(215,103,38,.40) !important;
}

@media (max-width:760px){
  .news-index .news-grid{grid-template-columns:1fr !important;}
  .news-index .news-card{max-width:none !important;min-height:0 !important;}
}


/* ==========================================================
   V6 — HERO DESKTOP: composición moderna, foto fundida y CTAs visibles
   ========================================================== */
@media (min-width:1060px){
  .hero{
    min-height:850px;
    padding-top:84px;
    background:#07150f;
  }

  .hero-media{
    inset:84px 0 112px 0;
    background-image:url("assets/fabian-hero-modern.jpg");
    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;
    filter:none;
    -webkit-mask-image:none;
    mask-image:none;
  }

  .hero-media::after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
      linear-gradient(90deg,rgba(4,15,10,.38) 0%,rgba(4,15,10,.08) 45%,rgba(4,15,10,0) 72%),
      radial-gradient(circle at 74% 43%,rgba(239,116,48,.10),transparent 29%);
  }

  .hero-overlay{
    inset:84px 0 112px 0;
    background:
      linear-gradient(90deg,
        rgba(3,13,9,.96) 0%,
        rgba(3,13,9,.91) 27%,
        rgba(3,13,9,.66) 43%,
        rgba(3,13,9,.20) 57%,
        rgba(3,13,9,.04) 76%,
        rgba(3,13,9,.22) 100%),
      linear-gradient(0deg,rgba(3,12,8,.44),transparent 43%);
  }

  .hero::before{
    inset:84px 0 112px;
    z-index:2;
    background:
      radial-gradient(circle at 77% 37%,rgba(239,116,48,.10),transparent 26%),
      linear-gradient(180deg,rgba(255,255,255,.015),transparent 25%);
  }

  .hero-content{
    min-height:654px;
    padding-top:44px;
    padding-bottom:150px;
    align-items:center;
  }

  .hero-copy{
    max-width:585px;
    margin-top:-2px;
  }

  .eyebrow{margin-bottom:16px}

  .hero h1{
    font-size:clamp(68px,5.9vw,92px);
    line-height:.82;
  }
  .hero h1 span{margin-top:14px}

  .hero-role{
    margin-top:20px;
    font-size:17px;
  }

  .short-line{
    margin:19px 0 17px;
    width:58px;
    background:var(--red-bright);
  }

  .hero-slogan{
    font-size:29px;
    line-height:1.13;
  }

  .hero-actions{
    position:relative;
    z-index:8;
    display:flex;
    align-items:center;
    gap:14px;
    margin-top:24px;
  }

  .hero-actions .btn{
    min-height:48px;
    padding-inline:23px;
    box-shadow:0 12px 28px rgba(0,0,0,.16);
  }

  .hero-actions .btn-outline{
    background:rgba(9,23,17,.42);
    border-color:rgba(255,255,255,.42);
    backdrop-filter:blur(10px);
  }
  .hero-actions .btn-outline:hover{
    background:rgba(239,116,48,.12);
    border-color:rgba(239,116,48,.72);
  }

  .hero-handwritten{
    margin-top:54px;
    margin-right:1.5vw;
    padding:15px 18px;
    border-radius:12px;
    background:linear-gradient(135deg,rgba(5,18,12,.30),rgba(5,18,12,.06));
    backdrop-filter:blur(4px);
  }

  .hero-handwritten p{
    font-size:29px;
    text-shadow:0 2px 18px rgba(0,0,0,.58);
  }

  .stats-strip{
    z-index:7;
    background:linear-gradient(90deg,#0b261c 0%,#123426 52%,#24170d 100%);
    border-top:1px solid rgba(239,116,48,.16);
  }
}

/* desktop ancho: deja más aire entre copy e imagen */
@media (min-width:1450px){
  .hero-copy{max-width:620px}
  .hero h1{font-size:96px}
  .hero-slogan{font-size:31px}
}

/* Evita que el bloque de botones pueda quedar escondido bajo la franja de estadísticas */
.hero-actions{isolation:isolate}
