/* Full-section portraits: sharp near Andrea, softly blurred behind the copy. */
.hero,.about{position:relative;overflow:hidden;isolation:isolate}
.hero{display:block;min-height:650px}
.hero-photo,.about-photo{position:absolute;inset:0;width:100%;height:100%;min-height:0;border-radius:0;background:transparent}
.hero-photo::before,.about-photo::before{content:"";position:absolute;inset:-18px;background-size:cover;background-repeat:no-repeat;filter:blur(15px) saturate(.72);transform:scale(1.025)}
.hero-photo::before{background-image:url('assets/andrea-portada.jpg');background-position:center 38%;transform:translateX(48px) scale(1.025)}
.about-photo::before{background-image:url('assets/andrea-hero.jpg');background-position:center 44%}
.hero-photo img,.about-photo img{position:relative;width:100%;height:100%;object-fit:cover}
.hero-photo img{width:65%;margin-left:auto;object-position:center 38%;transform:translateX(48px);-webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.75) 18%,#000 35%);mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.75) 18%,#000 35%)}
.about-photo img{width:65%;margin-right:auto;object-position:center 44%;-webkit-mask-image:linear-gradient(to right,#000 0%,#000 43%,rgba(0,0,0,.78) 60%,rgba(0,0,0,.35) 80%,transparent 96%);mask-image:linear-gradient(to right,#000 0%,#000 43%,rgba(0,0,0,.78) 60%,rgba(0,0,0,.35) 80%,transparent 96%)}
.hero::after,.about::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none}
.hero::after{background:linear-gradient(to right,rgba(232,223,208,.97) 0%,rgba(232,223,208,.9) 28%,rgba(232,223,208,.24) 48%,transparent 61%)}
.about::after{background:linear-gradient(to right,transparent 0%,rgba(244,239,231,.23) 40%,rgba(244,239,231,.73) 55%,rgba(244,239,231,.92) 71%,rgba(244,239,231,.99) 91%)}
.hero-copy{position:relative;z-index:2;width:56%;min-height:650px;padding-top:clamp(64px,8vw,120px)}
.hero h1{font-size:clamp(56px,6vw,96px)}
.hero h1 em{color:#87533f}
.about{display:flex;align-items:center;justify-content:flex-end;min-height:640px;gap:0}
.about-copy{position:relative;z-index:2;width:44%;padding-left:0}
.video-frame{position:relative}
.video-cover{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;overflow:hidden;cursor:pointer;background:#283237;color:#fff}
.video-cover img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.22);transform-origin:center top;filter:saturate(.7) sepia(.12) contrast(1.08) brightness(.86);transition:filter .25s ease,transform .35s ease}
.video-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(25,34,36,.3),transparent 45%),linear-gradient(to bottom,rgba(43,57,61,.08),transparent 45%);pointer-events:none}
.video-cover:hover img{filter:saturate(.78) sepia(.1) contrast(1.08) brightness(.94);transform:scale(1.25)}
.cover-play{position:absolute;z-index:1;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:56px;height:56px;padding-left:3px;border:1px solid rgba(255,255,255,.9);border-radius:50%;background:rgba(30,42,45,.35);font-size:17px;box-shadow:0 2px 20px rgba(0,0,0,.18)}
.video-cover:focus-visible{outline:3px solid var(--rust);outline-offset:-5px}
.video-frame.is-playing .video-cover{display:none}
.audio-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
.track-list{margin-top:20px}
.track{padding:15px 0;border-top:1px solid var(--line)}
.track-label{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:9px}
.track-label strong{font-size:14px;font-weight:700}
.track-label span{font-size:11px;color:#687370;text-align:right}
.track audio{display:block;width:100%;height:40px}
@media(min-width:651px){
  .section-heading{display:block;margin-bottom:42px}
  .section-heading>p{max-width:920px;margin:22px 0 0;font-size:clamp(19px,1.7vw,23px);line-height:1.48}
}
@media(max-width:900px){
  .hero,.hero-copy{min-height:590px}
  .hero-copy{width:58%}
  .hero h1{font-size:clamp(50px,6vw,66px)}
  .hero::after{background:linear-gradient(to right,rgba(232,223,208,.98) 0%,rgba(232,223,208,.9) 31%,rgba(232,223,208,.2) 50%,transparent 66%)}
  .about-copy{width:45%}
}
@media(max-width:650px){
  .hero{min-height:0}
  .hero-copy{width:100%;min-height:0;padding:475px 24px 64px}
  .hero h1{font-size:clamp(50px,10.5vw,70px)}
  .hero-photo,.about-photo{bottom:auto;height:560px;min-height:0}
  .hero-photo::before,.about-photo::before{display:none}
  .hero-photo img{width:100%;height:100%;object-position:center center;transform:none;-webkit-mask-image:none;mask-image:none}
  .hero::after,.about::after{bottom:auto;height:560px}
  .hero::after{background:linear-gradient(to bottom,transparent 0%,transparent 62%,rgba(232,223,208,.42) 73%,rgba(232,223,208,.9) 87%,var(--cream) 100%)}
  .about{display:block;min-height:0;padding:475px 24px 70px}
  .about-photo img{width:100%;height:100%;object-position:center center;-webkit-mask-image:none;mask-image:none}
  .about::after{background:linear-gradient(to bottom,transparent 0%,transparent 63%,rgba(244,239,231,.4) 74%,rgba(244,239,231,.9) 88%,var(--paper) 100%)}
  .about-copy{width:100%;padding:0}
  .audio-grid{grid-template-columns:1fr}
  .track-label{display:block}
  .track-label span{display:block;text-align:left;margin-top:3px}
}
@media(prefers-reduced-motion:reduce){.video-cover img{transition:none}}
