
  @import url('https://fonts.googleapis.com/css2?family=Archivo+Black&family=Playfair+Display:ital,wght@0,700;0,900;1,700&family=Space+Grotesk:wght@400;500;600;700&display=swap');

  :root{
    --ink: #673c34;
    --cream: #fbf7ee;
    --coral: #cf5527;
    --gold: #998731;
    --teal: #123a52;
    --plum: #7d2027;
    --line: rgba(103,60,52,0.16);
  }

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

  body{
    background: var(--cream);
    color: var(--ink);
    font-family: 'Space Grotesk', sans-serif;
    line-height: 1.5;
    overflow-x: hidden;
  }

  .display{
    font-family: 'Playfair Display', serif;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: -0.01em;
  }

  /* ===== TOP BAR ===== */
  .topbar{
    display:flex; justify-content:space-between; align-items:center;
    padding: 28px 6vw;
    background: var(--teal);
    border-bottom: 1px solid var(--line);
  }
  .topbar .name{ font-size: 15px; font-weight:700; letter-spacing:0.08em; color: var(--cream);}
  .topbar nav a{
    color: var(--cream); text-decoration:none; margin-left: 28px;
    font-size: 13px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase;
    border-bottom: 2px solid transparent;
  }
  .topbar nav a:hover{ border-color: var(--gold); }

  /* ===== HERO ===== */
  .hero{
    position: relative;
    padding: 8vw 6vw 6vw;
    display:grid;
    grid-template-columns: 1.3fr 1fr;
    gap: 40px;
    align-items: end;
    border-bottom: 1px solid var(--line);
  }
  .hero h1{
    font-size: clamp(48px, 9vw, 128px);
    line-height: 0.88;
  }
  .hero h1 .accent{ color: var(--coral); }
  .hero-sub{
    font-size: 17px;
    max-width: 38ch;
    padding-bottom: 6px;
  }
  .hero-sub b{ color: var(--teal); }
  .eq{
    position:absolute;
    top: 7vw; right: 6vw;
    display:flex; gap:5px; align-items:flex-end; height:90px;
  }
  .eq span{
    width:7px; background: var(--gold);
    animation: bounce 1.1s ease-in-out infinite;
  }
  .eq span:nth-child(odd){ background: var(--coral); }
  .eq span:nth-child(1){height:30%; animation-delay:0s;}
  .eq span:nth-child(2){height:65%; animation-delay:.15s;}
  .eq span:nth-child(3){height:100%; animation-delay:.3s;}
  .eq span:nth-child(4){height:45%; animation-delay:.45s;}
  .eq span:nth-child(5){height:80%; animation-delay:.6s;}
  .eq span:nth-child(6){height:25%; animation-delay:.75s;}
  @keyframes bounce{
    0%,100%{ transform: scaleY(0.4); }
    50%{ transform: scaleY(1); }
  }
  @media (prefers-reduced-motion: reduce){ .eq span{ animation: none; } }

  /* ===== CREDITS STRIP ===== */
  .strip{
    background: var(--ink);
    color: var(--cream);
    padding: 16px 6vw;
    overflow: hidden;
    white-space: nowrap;
  }
  .strip-inner{
    display:inline-block;
    animation: scroll 22s linear infinite;
    font-size: 13px; letter-spacing: 0.12em; text-transform: uppercase; font-weight:600;
  }
  .strip-inner span{ margin: 0 28px; opacity: 0.85;}
  @keyframes scroll{
    from{ transform: translateX(0); }
    to{ transform: translateX(-50%); }
  }
  @media (prefers-reduced-motion: reduce){ .strip-inner{ animation: none; } }

  /* ===== SECTION SHELL ===== */
  section{ padding: 120px 6vw; border-bottom: 1px solid var(--line); }
  .eyebrow{
    font-size: 12px; letter-spacing: 0.18em; text-transform: uppercase;
    color: var(--coral); font-weight:700; margin-bottom: 14px;
  }
  .section-title{ font-size: clamp(30px, 4vw, 52px); margin-bottom: 50px; max-width: 16ch;}

  /* ===== TRACKS ===== */
  .tracks{ display:flex; flex-direction:column; }
  .track{
    display:grid;
    grid-template-columns: 50px 1fr auto 140px;
    align-items:center;
    gap: 24px;
    padding: 22px 0;
    border-top: 1px solid var(--line);
  }
  .track:last-child{ border-bottom: 1px solid var(--line); }
  .track .num{ font-family:'Archivo Black'; color: var(--line); font-size: 22px; }
  .track .info b{ display:block; font-size: 18px; }
  .track .info span{ font-size: 13px; color: rgba(26,20,16,0.6); }
  .track .role{
    font-size: 11px; letter-spacing:0.1em; text-transform:uppercase;
    background: var(--gold); color: var(--ink); padding: 5px 10px; font-weight:700;
    white-space:nowrap;
  }
  .play-link{
    text-decoration:none; color: var(--teal); font-weight:700; font-size:13px;
    text-transform:uppercase; letter-spacing:0.06em;
    border: 2px solid var(--teal); padding: 8px 14px; text-align:center;
    transition: 0.2s;
  }
  .play-link:hover{ background: var(--teal); color: var(--cream); }
  .coming-soon{
    font-size: 11px; letter-spacing:0.1em; text-transform:uppercase;
    color: rgba(26,20,16,0.5); font-weight:700; padding: 8px 14px;
    border: 2px dashed rgba(26,20,16,0.3); text-align:center;
  }
  .cat-block{ margin-bottom: 56px; }
  .cat-block:last-child{ margin-bottom: 0; }
  .cat-label{
    font-size: 13px; font-weight:700; letter-spacing:0.1em; text-transform:uppercase;
    color: var(--teal); margin-bottom: 18px; padding-bottom: 8px;
    border-bottom: 1px solid var(--line);
  }
  .embed-wrap{
    border-top: 1px solid var(--line); padding: 22px 0;
  }
  .embed-wrap b{ display:block; font-size:29px; margin-bottom:4px;}
  .embed-wrap b::before{ content:'"'; }
  .embed-wrap b::after{ content:'"'; }
  .score-scroll{
    max-width:75%; max-height:900px; overflow-y:auto;
    margin:20px auto 0; border:1px solid var(--line); border-radius:6px;
    background: var(--cream);
  }
  .score-scroll img{ display:block; width:100%; }
  .scores-grid{
    display:grid; grid-template-columns:repeat(2, 1fr);
    gap:40px; margin-top:20px;
  }
  .score-slot{ text-align:center; }
  .score-slot b{
    display:block; font-size:20px; margin-bottom:10px;
    font-family:'Playfair Display', serif; font-weight:900;
  }
  .score-slot .score-scroll{ max-width:100%; max-height:520px; }
  .score-scroll-empty{
    aspect-ratio:792/1224; display:flex; align-items:center; justify-content:center;
    font-size:12px; letter-spacing:0.08em; text-transform:uppercase;
    color: rgba(26,20,16,0.4); border:2px dashed var(--line); background:transparent;
  }
  @media (max-width:700px){
    .scores-grid{ grid-template-columns:1fr; }
  }
  .score-link{
    display:inline-block; margin-top:14px;
    color: var(--teal); font-weight:700; font-size:13px;
    text-transform:uppercase; letter-spacing:0.06em; text-decoration:none;
  }
  .score-link:hover{ color: var(--coral); }
  .embed-wrap .meta{ font-size:13px; color: rgba(26,20,16,0.6); margin-bottom: 14px; display:block;}
  .performance-grid{ display:grid; grid-template-columns:repeat(auto-fit, minmax(320px,1fr)); gap:40px; }
  .performance-grid .embed-wrap{ border-top:none; padding:0; }
  .page-original-music section{ border-bottom:none; }
  .page-original-music .page-hero{ border-bottom:none; }
  .page-original-music section{ padding-top:20px; }
  .page-original-music .cat-label{
    border-bottom:none; font-family:'Playfair Display', serif; font-weight:900;
    font-size:37px; letter-spacing:-0.01em; color: var(--teal);
  }
  .page-original-music .embed-wrap{ border-top:none; }

  .page-production-credits section{ border-bottom:none; }
  .page-production-credits .page-hero{ border-bottom:none; }
  .page-production-credits .cat-label{ border-bottom:none; }
  .page-production-credits .embed-wrap{ border-top:none; }
  .page-production-credits .track{ border-top:none; }
  .page-production-credits .track:last-child{ border-bottom:none; }
  .video-embed{ width:100%; aspect-ratio:16/9; border:none; display:block; border-radius:6px; margin-bottom:14px; }
  .soundcloud-embed{ width:100%; height:166px; border:none; display:block; margin-top:10px; }

  /* ===== CUSTOM GOOGLE DRIVE PLAYER ===== */
  .gdrive-player{
    display:flex; align-items:center; gap:20px;
    background: var(--plum); border:1px solid var(--plum); border-radius:999px;
    padding:12px 28px 12px 12px; margin-top:14px;
  }
  .gdrive-artwork{
    flex:none; width:109px; height:109px; border-radius:50%;
    object-fit:cover;
  }
  .gdrive-play{
    flex:none; width:52px; height:52px; border-radius:50%; border:none;
    background: var(--cream); color: var(--plum);
    display:flex; align-items:center; justify-content:center; cursor:pointer;
    transition:0.2s;
  }
  .gdrive-play svg{ width:22px; height:22px; }
  .gdrive-play:hover{ background: var(--gold); }
  .gdrive-waveform{
    flex:1; height:80px; display:flex; align-items:center; gap:1px;
    cursor:pointer;
  }
  .wave-bar{
    flex:1; height:20%; min-width:1px; border-radius:1px;
    background: rgba(247,237,224,0.35);
  }
  .wave-bar.played{ background: var(--cream); }
  .gdrive-time{
    flex:none; font-size:15px; font-variant-numeric:tabular-nums;
    color: rgba(247,237,224,0.8); min-width:42px; text-align:right;
  }
  .video-thumb-link{
    position:relative; overflow:hidden; text-decoration:none;
    border-radius:6px; margin-bottom:14px;
  }
  .video-thumb-link img{ width:100%; height:100%; object-fit:cover; display:block; }
  .video-thumb-link span{
    position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
    gap:8px; background:linear-gradient(rgba(12,10,22,0.2), rgba(12,10,22,0.6));
    color:var(--cream); font-size:13px; letter-spacing:0.06em; text-transform:uppercase;
    font-weight:700; transition:0.2s;
  }
  .video-thumb-link:hover span{ background:rgba(207,85,39,0.75); }
  .ig-embed-wrap{ display:flex; flex-direction:column; align-items:center; text-align:center; }
  .ig-embed-wrap .instagram-media{ margin:0 auto 14px !important; max-width:100% !important; }
  .video-frame{
    width:100%; aspect-ratio:16/9; border:none;
    background: var(--ink); display:flex; align-items:center; justify-content:center;
    color: var(--cream); font-size:13px; letter-spacing:0.06em; text-transform:uppercase;
  }

  /* ===== ABOUT ===== */
  .about{ display:grid; grid-template-columns: 1.4fr 0.85fr; gap: 60px; align-items:start; }
  .about-media{ display:flex; flex-direction:column; gap:24px; }
  .about-video{
    width:100%; aspect-ratio: 4/3; object-fit:cover;
    border-radius:6px; box-shadow: 0 12px 40px rgba(26,20,16,0.25);
  }
  .about-photo{
    width:100%; aspect-ratio: 4/3; object-fit:cover;
    border-radius:6px; box-shadow: 0 12px 40px rgba(26,20,16,0.25);
  }
  .about-caption{
    display:block; margin-top:10px; font-size:13px;
    color: rgba(103,60,52,0.65); font-style:italic;
  }
  @media (max-width:800px){ .about{ grid-template-columns:1fr; } }
  .about p{ font-size: 17px; margin-bottom: 18px; max-width: 52ch; }
  .skills-grid{ display:grid; grid-template-columns: 1fr 1fr; gap: 28px; }
  .skill-card{ border-left: 3px solid var(--coral); padding-left: 16px; }
  .skill-card h4{ font-size: 13px; letter-spacing:0.08em; text-transform:uppercase; color: var(--plum); margin-bottom: 6px;}
  .skill-card p{ font-size: 14px; max-width: none; margin: 0; color: rgba(26,20,16,0.75);}

  /* ===== LIVE PRODUCTION (photo background) ===== */
  #productions{
    background:
      linear-gradient(rgba(12,10,22,0.78), rgba(12,10,22,0.88)),
      url('images/valentina-live-production.webp') center 30% / cover no-repeat;
    color: var(--cream);
  }
  #productions .eyebrow{ color: var(--gold); }
  .lp-intro{ max-width:70ch; font-size:17px; line-height:1.7; margin-bottom:64px; color: rgba(247,237,224,0.92); }
  .lp-outro{ margin-top:10px; font-size:15px; color: rgba(247,237,224,0.7); font-style:italic; }
  .event{
    display:grid; grid-template-columns: 1.1fr 1fr; gap:40px; align-items:center;
    margin-bottom:70px; padding-top:40px;
  }
  .event:has(> .event-info:only-child){ grid-template-columns: 1fr; }
  .event-media iframe, .event-media img{
    width:100%; aspect-ratio:16/9; object-fit:cover; border:none; display:block;
    border-radius:6px; box-shadow: 0 12px 40px rgba(0,0,0,0.5);
  }
  .event-info h3{ font-size: clamp(22px, 2.6vw, 30px); margin-bottom:8px; }
  .event-role{ font-size:13px; letter-spacing:0.08em; text-transform:uppercase; color: var(--gold); margin-bottom:6px; }
  .event-stats{ font-size:13px; color: var(--coral); margin-bottom:16px; font-weight:600; }
  .event-info p{ font-size:15px; line-height:1.65; color: rgba(247,237,224,0.82); max-width:none; margin:0; }
  @media (max-width: 820px){
    .event{ grid-template-columns: 1fr; gap:24px; }
  }
  /* ===== CAROUSEL ===== */
  .carousel{ position:relative; border-radius:6px; overflow:hidden; box-shadow: 0 12px 40px rgba(0,0,0,0.5); }
  .carousel-track{ display:flex; transition: transform 0.45s ease; }
  .carousel-slide{ min-width:100%; }
  .carousel-slide iframe, .carousel-slide img, .carousel-slide video{
    width:100%; aspect-ratio:16/9; object-fit:cover; border:none; display:block; border-radius:0; box-shadow:none;
  }
  .carousel-btn{
    position:absolute; top:50%; transform:translateY(-50%);
    background: rgba(12,10,22,0.6); color: var(--cream); border:none;
    width:40px; height:40px; border-radius:50%; font-size:20px; cursor:pointer;
    display:flex; align-items:center; justify-content:center; z-index:2;
    transition: background 0.2s;
  }
  .carousel-btn:hover{ background: var(--coral); }
  .carousel-btn.prev{ left:12px; }
  .carousel-btn.next{ right:12px; }
  .carousel-dots{
    position:absolute; bottom:12px; left:50%; transform:translateX(-50%);
    display:flex; gap:8px; z-index:2;
  }
  .carousel-dots button{
    width:9px; height:9px; border-radius:50%; border:none; cursor:pointer;
    background: rgba(247,237,224,0.4); padding:0;
  }
  .carousel-dots button.active{ background: var(--gold); }
  .carousel.single .carousel-btn, .carousel.single .carousel-dots{ display:none; }
  .carousel-slide.portrait{ position:relative; overflow:hidden; background:#0c0a16; }
  .carousel-slide.portrait::before{
    content:''; position:absolute; inset:-20px;
    background-image: var(--bg); background-size:cover; background-position:center;
    filter: blur(24px) brightness(0.45);
  }
  .carousel-slide.portrait img{ position:relative; object-fit: contain; z-index:1; }

  /* ===== CONTACT ===== */
  .contact{
    background: var(--plum); color: var(--cream); border-bottom:none;
    text-align:center;
  }
  .contact .section-title{ color: var(--cream); margin: 0 auto 30px; }
  .contact-links{ display:flex; gap: 18px; justify-content:center; flex-wrap:wrap; }
  .contact-links a{
    color: var(--cream); text-decoration:none; font-weight:700;
    border: 2px solid var(--cream); padding: 12px 26px;
    text-transform:uppercase; font-size: 13px; letter-spacing:0.08em;
    transition: 0.2s;
  }
  .contact-links a:hover{ background: var(--coral); border-color: var(--coral); }
  footer{ text-align:center; padding: 24px; font-size:12px; opacity:0.6; }

  /* ===== MASTERCLASSES ===== */
  .masterclasses-section .section-title{ margin-bottom: 10px; }
  .masterclasses-section{ padding-bottom:60px; }
  .masterclasses-section + .contact{ padding-top:60px; position:relative; }
  .masterclasses-section + .contact::before{
    content:''; position:absolute; top:0; left:50%; transform:translateX(-50%);
    width:80px; height:1px; background:rgba(247,237,224,0.3);
  }
  .masterclass-grid{
    display:grid; grid-template-columns:repeat(2, 1fr);
    max-width:800px; margin:40px auto 0;
    gap:36px; text-align:left;
  }
  @media (max-width:700px){
    .masterclass-grid{ grid-template-columns:1fr; }
  }
  .masterclass-card{ display:flex; flex-direction:column; gap:14px; }
  .masterclass-card b{
    text-align:center; font-size:24px; letter-spacing:0.04em;
    text-transform:uppercase; font-weight:700;
  }
  .masterclass-carousel{ aspect-ratio:3/4; border-radius:6px; background:var(--cream); }
  .masterclass-carousel .carousel-slide{ aspect-ratio:3/4; }
  .masterclass-carousel .carousel-slide img,
  .masterclass-carousel .carousel-slide video{ aspect-ratio:3/4; object-fit:contain; width:100%; height:100%; display:block; }
  .masterclass-more{
    text-align:center; font-size:13px; font-style:italic;
    color: rgba(247,237,224,0.6); margin-top:24px;
  }
  .masterclass-placeholder{
    width:100%; height:100%; display:flex; align-items:center; justify-content:center;
    background:rgba(247,237,224,0.08); color:rgba(247,237,224,0.5);
    font-size:12px; letter-spacing:0.06em; text-transform:uppercase; text-align:center;
  }

  @media (max-width: 800px){
    .hero{ grid-template-columns: 1fr; }
    .eq{ display:none; }
    .about{ grid-template-columns: 1fr; }
    .track{ grid-template-columns: 30px 1fr; row-gap: 10px; }
    .track .role, .track .play-link{ grid-column: 2; justify-self:start; }
  }

  /* ===== MULTI-PAGE ADDITIONS ===== */
  .topbar nav a.active{ border-color: var(--gold); }
  .topbar-overlay{
    position:absolute; top:0; left:0; right:0; z-index:10;
    background:transparent; border-bottom:none;
  }
  .topbar-overlay .name, .topbar-overlay nav a{
    text-shadow: 0 2px 14px rgba(0,0,0,0.5);
  }
  @media (max-width: 800px){
    .topbar{ flex-direction:column; gap:14px; }
    .topbar nav{ display:flex; flex-wrap:wrap; justify-content:center; gap:10px 0; }
    .topbar nav a{ margin-left:16px; font-size:12px; }
  }
  .page-hero{ padding: 60px 6vw 50px; border-bottom:1px solid var(--line); }
  .page-hero h1{ font-size: clamp(36px, 6vw, 80px); line-height:0.95; max-width:14ch; }
  .page-hero p{ font-size:16px; max-width:60ch; margin-top:18px; color: rgba(26,20,16,0.75); }

  body.photo-page{
    background-size: cover; background-position: center; background-attachment: fixed;
    background-repeat: no-repeat;
    background-image:
      linear-gradient(rgba(12,10,22,0.6), rgba(12,10,22,0.86)),
      var(--photo-page-img);
    color: var(--cream);
  }
  body.photo-page .page-hero{ border-bottom:none; }
  .page-hero-photo{
    background-size:cover; background-position:center 20%;
    position:relative; border-bottom:none;
    padding-top:14vw; padding-bottom:8vw;
  }
  .page-hero-photo::before{
    content:''; position:absolute; inset:0;
    background: linear-gradient(rgba(12,10,22,0.25), rgba(12,10,22,0.75));
  }
  .page-hero-photo > *{ position:relative; color: var(--cream); }
  .page-hero-photo .eyebrow{ color: var(--gold); }
  .page-hero-photo p{ color: rgba(251,247,238,0.85); }
  body.photo-page .eyebrow{ color: var(--gold); }
  body.photo-page .section-title{ color: var(--cream); }
  body.photo-page p{ color: rgba(251,247,238,0.85); }
  body.photo-page section{ border-bottom:none; }
  body.photo-page .skill-card{ border-left-color: var(--gold); }
  body.photo-page .skill-card h4{ color: var(--gold); }
  body.photo-page .skill-card p{ color: rgba(251,247,238,0.8); }

  /* Explore cards */
  .explore-grid{ display:flex; flex-wrap:wrap; justify-content:center; gap:24px; }
  .explore-card{
    position:relative; display:flex; flex-direction:column; justify-content:flex-end;
    flex: 0 1 calc((100% - 48px) / 3); min-width:260px;
    min-height:300px; padding:28px; text-decoration:none; color:var(--cream);
    background-size:cover; background-position:center; border-radius:6px; overflow:hidden;
    transition: transform 0.25s ease;
  }
  .explore-card::before{
    content:''; position:absolute; inset:0;
    background: linear-gradient(rgba(12,10,22,0.15), rgba(12,10,22,0.82));
    transition: background 0.25s;
  }
  .explore-card:hover{ transform: translateY(-4px); }
  .explore-card:hover::before{ background: linear-gradient(rgba(12,10,22,0.05), rgba(90,31,61,0.85)); }
  .explore-card > *{ position:relative; }
  .explore-card-video video{
    position:absolute; inset:0; width:100%; height:100%;
    object-fit:cover; object-position: 68% 62%; z-index:1;
  }
  .explore-card-img img{
    position:absolute; inset:0; width:100%; height:100%;
    object-fit:cover; z-index:1;
  }
  .explore-card-video::before, .explore-card-img::before{ z-index:2; }
  .explore-card-video h3, .explore-card-video p, .explore-card-video .go,
  .explore-card-img h3, .explore-card-img p, .explore-card-img .go{ z-index:3; }
  .explore-card h3{ font-size: clamp(22px,2.6vw,32px); margin-bottom:6px; }
  .explore-card p{ font-size:14px; color: rgba(247,237,224,0.85); max-width:40ch; margin-bottom:12px; }
  .explore-card .go{ font-size:12px; letter-spacing:0.12em; text-transform:uppercase; font-weight:700; color:var(--gold); }
  @media (max-width:800px){ .explore-card{ flex-basis:100%; } }

  /* Press & recognition */
  .press-feature{
    border:2px solid var(--gold); padding:32px; margin-bottom:40px;
    display:grid; grid-template-columns: auto 1fr; gap:28px; align-items:center;
  }
  .press-badge{
    font-family:'Archivo Black'; text-transform:uppercase; text-align:center;
    background:var(--gold); color:var(--ink); padding:18px 20px; line-height:1.15; font-size:15px;
  }
  .press-feature h3{ font-size: clamp(20px,2.4vw,28px); margin-bottom:10px; }
  .press-feature p{ font-size:15px; max-width:65ch; color: rgba(26,20,16,0.8); margin-bottom:10px; }
  .press-quote{ font-style:italic; color: var(--plum); font-weight:600; }
  .press-links .label{ display:block; font-size:12px; letter-spacing:0.14em; text-transform:uppercase; font-weight:700; color:rgba(26,20,16,0.55); margin-bottom:14px; }
  .press-grid{ display:grid; grid-template-columns:repeat(auto-fit, minmax(140px,1fr)); gap:10px; }
  .press-card{
    display:flex; flex-direction:column; gap:5px; text-decoration:none;
    border:1px solid var(--line); padding:12px; transition:0.2s;
  }
  .press-card b{ font-size:13px; font-weight:700; color:var(--teal); }
  .press-card span{ font-size:11px; line-height:1.4; color:rgba(26,20,16,0.7); }
  .press-card:hover{ border-color:var(--teal); }
  @media (max-width:700px){ .press-feature{ grid-template-columns:1fr; } }

  /* About de ancho completo (sin cuadritos) */
  .about-prose{ max-width: none; }
  .about-prose p{ font-size: 19px; line-height: 1.75; margin-bottom: 22px; max-width: none; text-align: justify; }
  .about-prose p:last-child{ margin-bottom: 0; }

  /* ===== BLOQUES DE COLOR POR SECCIÓN ===== */
  #explore{ background: var(--cream); }

  #press{ background: var(--gold); color: var(--cream); }
  #press .eyebrow, #press .section-title{ color: var(--cream); }
  #press .press-feature{ border-color: var(--cream); }
  #press .press-badge{ background: var(--cream); color: var(--ink); }
  #press .press-feature p{ color: rgba(251,247,238,0.85); }
  #press .press-quote{ color: var(--cream); }
  #press .press-links .label{ color: rgba(251,247,238,0.7); }
  #press .press-card b{ color: var(--cream); }
  #press .press-card span{ color: rgba(251,247,238,0.75); }
  #press .press-card{ border-color: rgba(251,247,238,0.35); }
  #press .press-card:hover{ border-color: var(--cream); }

  #testimonials{ background: var(--coral); color: var(--cream); }
  #testimonials .eyebrow, #testimonials .section-title{ color: var(--cream); }
  #testimonials .skill-card{ border-left-color: var(--cream); }
  #testimonials .skill-card h4{ color: var(--cream); }
  #testimonials .skill-card p{ color: rgba(250,227,177,0.9); }

  footer{ background: var(--ink); color: var(--cream); opacity:1; }

  /* ===== HERO FOTOGRÁFICO (vibe elegante) ===== */
  .hero-photo{
    display:flex; align-items:flex-end; justify-content:center;
    text-align:center;
    min-height: 84vh;
    padding: 8vw 6vw 7vw;
    background:
      linear-gradient(rgba(12,10,22,0.15) 30%, rgba(12,10,22,0.72)),
      url('images/idolos-hero.jpg') center center / cover no-repeat;
    color: var(--cream);
    grid-template-columns: none;
  }
  .hero-photo .eyebrow{ color: var(--gold); margin-bottom: 18px; }
  .hero-photo h1{
    font-size: clamp(56px, 11vw, 150px);
    line-height: 0.9;
    text-shadow: 0 4px 30px rgba(0,0,0,0.35);
  }
  .hero-photo .hero-sub{
    color: rgba(247,237,224,0.92);
    max-width: 48ch; margin: 22px auto 0;
    font-size: clamp(24px, 3.6vw, 42px);
    font-family: 'Playfair Display', serif;
    font-weight: 900;
    text-transform: none;
  }
  .hero-photo .hero-sub b{ color: var(--gold); }
  @media (max-width:800px){
    .hero-photo{ min-height: 70vh; }
  }
