@font-face{font-family:'Bilboinc';src:url('./assets/fonts/BilboINC.ttf') format('truetype');font-display:swap}
:root{--ink:#071019;--deep:#03070b;--paper:#f5efe2;--cream:#f0dec2;--muted:#9aa2a9;--gold:#d9b45f;--rose:#df756e;--blue:#4cb6d8;--green:#70b27d;--line:rgba(245,239,226,.12);--font-display:'Bilboinc',Impact,fantasy;--font-body:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{min-height:100vh;background:radial-gradient(circle at 15% 15%,rgba(217,180,95,.16),transparent 28rem),radial-gradient(circle at 85% 25%,rgba(76,182,216,.12),transparent 24rem),radial-gradient(circle at 50% 95%,rgba(223,117,110,.10),transparent 34rem),var(--ink);color:var(--paper);font-family:var(--font-body);line-height:1.65;overflow-x:hidden}body::before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(to bottom,#000,transparent 75%);z-index:-3}.noise{position:fixed;inset:0;pointer-events:none;opacity:.045;z-index:100;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 170 170' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.scanlines{position:fixed;inset:0;pointer-events:none;opacity:.03;z-index:99;background:repeating-linear-gradient(to bottom,#fff 0 1px,transparent 1px 4px)}.cursor{position:fixed;width:14px;height:14px;background:var(--gold);transform:translate(-50%,-50%) rotate(45deg);pointer-events:none;z-index:999;mix-blend-mode:difference;transition:width .18s,height .18s,background .18s,border .18s}.cursor.hover{width:30px;height:30px;background:transparent;border:1px solid var(--gold)}a{color:inherit}.nav{position:fixed;inset:0 0 auto 0;height:72px;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:0 2rem;background:rgba(3,7,11,.68);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.nav-logo{font-family:var(--font-display);color:var(--gold);text-decoration:none;letter-spacing:.16em;font-size:1.2rem}.nav-links{display:flex;gap:1.5rem}.nav-links a{font-family:var(--font-mono);text-transform:uppercase;text-decoration:none;font-size:.62rem;letter-spacing:.16em;color:rgba(245,239,226,.55);transition:color .25s,transform .25s}.nav-links a:hover{color:var(--gold);transform:translateY(-2px)}.nav-toggle{display:none;background:none;border:0;width:32px;height:22px}.nav-toggle span{display:block;height:1px;background:var(--gold);margin:7px 0}.hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;padding:8rem 6vw 5rem}#heroCanvas{position:absolute;inset:0;width:100%;height:100%;opacity:.85}.hero-inner{position:relative;z-index:2;max-width:1100px}.eyebrow,.section-kicker{font-family:var(--font-mono);color:var(--gold);text-transform:uppercase;letter-spacing:.32em;font-size:.65rem;margin-bottom:1.5rem}.hero-title{position:relative;display:inline-block;font-family:var(--font-display);font-size:clamp(4.4rem,16vw,15rem);line-height:.78;letter-spacing:.08em;color:var(--paper);text-transform:uppercase;text-shadow:2px 2px 0 rgba(76,182,216,.75),4px 4px 0 rgba(223,117,110,.45),0 0 55px rgba(217,180,95,.16)}.hero-title::before,.hero-title::after{content:attr(data-text);position:absolute;inset:0;pointer-events:none;opacity:.35}.hero-title::before{color:var(--blue);transform:translate(4px,-2px);clip-path:inset(0 0 60% 0);animation:glitch 5s steps(2,end) infinite}.hero-title::after{color:var(--rose);transform:translate(-3px,2px);clip-path:inset(55% 0 0 0);animation:glitch 7s steps(2,end) infinite reverse}@keyframes glitch{0%,91%,100%{transform:translate(0,0)}92%{transform:translate(7px,-2px)}94%{transform:translate(-5px,3px)}96%{transform:translate(3px,1px)}}.hero-line{width:min(520px,70vw);height:1px;margin:1.6rem 0;background:linear-gradient(90deg,var(--gold),transparent);animation:linePulse 3s ease-in-out infinite alternate}@keyframes linePulse{from{opacity:.35;transform:scaleX(.82);transform-origin:left}to{opacity:1;transform:scaleX(1)}}.hero-text{max-width:620px;color:rgba(245,239,226,.72);font-size:clamp(1rem,1.7vw,1.3rem)}.hero-actions{display:flex;gap:1rem;margin-top:2.5rem}.button{display:inline-flex;align-items:center;justify-content:center;min-width:132px;border:1px solid rgba(217,180,95,.45);padding:.85rem 1.1rem;color:var(--deep);background:var(--gold);text-decoration:none;text-transform:uppercase;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.18em;transition:transform .25s,box-shadow .25s,background .25s}.button:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(0,0,0,.25)}.button.ghost{background:transparent;color:var(--gold)}.floating-notes span{position:absolute;z-index:1;color:rgba(217,180,95,.26);font-size:clamp(1.2rem,3vw,3rem);animation:float 8s ease-in-out infinite}.floating-notes span:nth-child(1){left:12%;top:28%;animation-delay:0s}.floating-notes span:nth-child(2){left:78%;top:20%;animation-delay:1s}.floating-notes span:nth-child(3){left:66%;top:62%;animation-delay:2s}.floating-notes span:nth-child(4){left:28%;top:72%;animation-delay:3s}.floating-notes span:nth-child(5){left:88%;top:80%;animation-delay:4s}@keyframes float{0%,100%{transform:translateY(0) rotate(0deg);opacity:.18}50%{transform:translateY(-24px) rotate(8deg);opacity:.45}}.hero-meta{position:absolute;right:3rem;bottom:3rem;display:flex;flex-direction:column;gap:.35rem;text-align:right;font-family:var(--font-mono);color:rgba(245,239,226,.36);font-size:.58rem;letter-spacing:.18em;z-index:2}.ticker{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;background:rgba(3,7,11,.65)}.ticker-track{display:flex;gap:2rem;width:max-content;padding:1rem 0;animation:ticker 30s linear infinite;white-space:nowrap}.ticker span{font-family:var(--font-display);letter-spacing:.14em;color:var(--cream)}
.ticker b{color:var(--gold)}@keyframes ticker{from{transform:translateX(0%)}to{transform:translateX(-50%)}}.section{position:relative;padding:7rem 6vw}.section-title{font-family:var(--font-display);font-size:clamp(3rem,8vw,7rem);letter-spacing:.08em;line-height:.86;margin-bottom:2.5rem;color:var(--paper)}.bio{background:linear-gradient(180deg,rgba(245,239,226,.04),rgba(245,239,226,.02))}.bio-grid{display:grid;grid-template-columns:minmax(220px,330px) 1fr;gap:4rem;align-items:start}.bio-card{border:1px solid var(--line);padding:1.6rem;background:linear-gradient(135deg,rgba(217,180,95,.12),rgba(76,182,216,.05));box-shadow:0 20px 60px rgba(0,0,0,.16)}.mini-record{width:150px;height:150px;border-radius:50%;margin:0 auto 1.5rem;background:radial-gradient(circle at center,var(--gold) 0 10%,#111 10% 16%,transparent 16%),repeating-radial-gradient(circle at center,#151515 0 6px,#050505 6px 12px);animation:spin 8s linear infinite}.mini-record div{width:48px;height:48px;border-radius:50%;background:var(--cream);margin:auto}@keyframes spin{to{transform:rotate(360deg)}}.bio-card p{color:rgba(245,239,226,.74);margin-bottom:1.4rem}.tag-cloud{display:flex;flex-wrap:wrap;gap:.5rem}.tag-cloud span{border:1px solid rgba(245,239,226,.15);padding:.35rem .55rem;color:var(--gold);font-family:var(--font-mono);font-size:.58rem;text-transform:uppercase}.bio-text p{font-size:clamp(1.2rem,2.2vw,1.75rem);line-height:1.45;margin-bottom:1.6rem;max-width:950px;color:rgba(245,239,226,.82)}.bio-text strong{color:var(--gold)}.listen{background:radial-gradient(circle at 20% 0%,rgba(76,182,216,.09),transparent 30rem),var(--deep);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.mix-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.mix-card{position:relative;border:1px solid var(--line);padding:1.3rem;overflow:hidden;background:rgba(245,239,226,.035);transform-style:preserve-3d;transition:border-color .3s,background .3s,transform .3s}.mix-card.wide{grid-column:1/-1}.mix-card::before{content:"";position:absolute;inset:-1px;background:linear-gradient(135deg,rgba(217,180,95,.22),transparent 40%,rgba(76,182,216,.18));opacity:0;transition:opacity .3s}.mix-card:hover::before{opacity:1}.mix-card>*{position:relative;z-index:1}.mix-number,.mix-platform{font-family:var(--font-mono);color:var(--gold);opacity:.7;text-transform:uppercase;font-size:.62rem;letter-spacing:.18em}.mix-card h3{font-family:var(--font-display);letter-spacing:.08em;font-size:1.8rem;margin:.4rem 0}.mix-card p{color:rgba(245,239,226,.55);margin-bottom:1rem}.mix-card iframe{width:100%;border:0;display:block}.mix-link{display:inline-flex;border:1px solid rgba(217,180,95,.35);padding:.75rem 1rem;color:var(--gold);text-decoration:none;font-family:var(--font-mono);font-size:.65rem;letter-spacing:.16em;text-transform:uppercase}.mix-link:hover{background:var(--gold);color:var(--deep)}.photos{padding:5rem 0;background:var(--ink);overflow:hidden}.photos .section-kicker,.photo-note{padding-left:6vw}.photo-note{color:rgba(245,239,226,.48);margin-top:-.8rem}.photo-note code{color:var(--gold)}.photo-marquee{margin-top:2rem;overflow:hidden}.photo-track{display:flex;width:max-content;animation:ticker 70s linear infinite}.photo-marquee:hover .photo-track{animation-play-state:paused}

.photo-slot{width:280px;height:340px;flex-shrink:0;position:relative;overflow:hidden;margin-right:1rem;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;background:#111922;transition:transform .5s,filter .5s}.photo-slot:hover{transform:scale(1.04);filter:saturate(1.2)}.photo-slot::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(3,7,11,.88),transparent 60%)}.photo-placeholder{font-family:var(--font-display);font-size:1.8rem;letter-spacing:.1em;color:rgba(245,239,226,.28)}.photo-slot span{position:absolute;z-index:2;left:1rem;bottom:1rem;color:var(--cream);font-family:var(--font-mono);font-size:.58rem;letter-spacing:.16em;text-transform:uppercase}.ph1{background:linear-gradient(135deg,#122438,#050b10)}.ph2{background:linear-gradient(135deg,#17301f,#070d09)}.ph3{background:linear-gradient(135deg,#321616,#0d0606)}.ph4{background:linear-gradient(135deg,#161832,#07070d)}.ph5{background:linear-gradient(135deg,#33260b,#0c0903)}.ph6{background:linear-gradient(135deg,#261934,#08050d)}.press{background:linear-gradient(180deg,rgba(217,180,95,.06),rgba(76,182,216,.03));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}

.press-grid{display:grid;grid-template-columns:1.7fr .9fr;gap:2rem}.press-main,.press-side{border:1px solid var(--line);padding:1.5rem;background:rgba(3,7,11,.35)}.press-main h2{font-family:var(--font-display);font-size:clamp(2.4rem,5vw,5rem);line-height:.9;letter-spacing:.08em;margin-bottom:1.4rem}.press-main p,.press-side p{color:rgba(245,239,226,.72);margin-bottom:1rem}.press-side h3{color:var(--gold);margin-bottom:1rem;text-transform:uppercase;letter-spacing:.16em;font-size:.8rem}.archive{background:linear-gradient(180deg,rgba(245,239,226,.03),transparent)}.year-block{border:1px solid var(--line);margin-bottom:1rem;background:rgba(255,255,255,.025)}.year-block summary{cursor:pointer;list-style:none;padding:1rem 1.2rem;font-family:var(--font-display);font-size:2rem;letter-spacing:.08em;color:var(--gold)}.year-block summary::-webkit-details-marker{display:none}.year-block ul{padding:0 1.2rem 1.2rem;list-style:none}.year-block li{padding:.75rem 0;border-top:1px solid rgba(245,239,226,.08);color:rgba(245,239,226,.78)}.year-block strong{color:var(--cream)}.contact{min-height:70vh;display:flex;flex-direction:column;justify-content:center;text-align:center;overflow:hidden}.contact-orbit{position:absolute;left:50%;top:50%;width:min(60vw,520px);height:min(60vw,520px);border:1px solid rgba(217,180,95,.12);border-radius:50%;transform:translate(-50%,-50%);animation:spin 24s linear infinite}.contact-orbit::before,.contact-orbit::after{content:"";position:absolute;border:1px solid rgba(76,182,216,.10);border-radius:50%;inset:12%}.contact-orbit::after{inset:28%;border-color:rgba(223,117,110,.10)}.contact h2{position:relative;z-index:1;font-family:var(--font-display);font-size:clamp(4rem,10vw,9rem);line-height:.82;letter-spacing:.08em}.email{position:relative;z-index:1;display:inline-block;margin:2rem auto 0;color:var(--gold);font-size:clamp(1.1rem,2.4vw,2rem);text-decoration:none;border-bottom:1px solid rgba(217,180,95,.35)}.footer{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:2rem 6vw;border-top:1px solid var(--line);color:rgba(245,239,226,.45);font-size:.82rem;flex-wrap:wrap}.footer-logo{font-family:var(--font-display);color:var(--gold);letter-spacing:.14em}.footer-links{display:flex;gap:1rem;flex-wrap:wrap}.footer-links a{font-family:var(--font-mono);font-size:.62rem;text-transform:uppercase;text-decoration:none;letter-spacing:.14em;color:rgba(245,239,226,.5)}.footer-links a:hover{color:var(--gold)}.reveal{opacity:0;transform:translateY(26px) scale(.99);transition:opacity .8s ease,transform .8s cubic-bezier(.19,1,.22,1)}.reveal.visible{opacity:1;transform:translateY(0) scale(1)}@media(max-width:900px){.cursor{display:none}.nav-links{position:fixed;top:72px;left:0;right:0;display:none;flex-direction:column;padding:1.5rem 2rem 2rem;background:rgba(3,7,11,.95);border-bottom:1px solid var(--line)}.nav-links.open{display:flex}.nav-toggle{display:block}.hero{padding:7rem 1.5rem 4rem}.hero-meta{display:none}.section{padding:5rem 1.5rem}.bio-grid,.mix-grid,.press-grid{grid-template-columns:1fr}.mix-card.wide{grid-column:auto}.footer{flex-direction:column;align-items:flex-start;padding:2rem 1.5rem}.photos .section-kicker,.photo-note{padding-left:1.5rem}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}


/* FINAL POLISH — Paulinhx branding, mono text feel, subtle Basque symbols */
:root{
  --font-text: var(--font-mono);
}

body{
  font-family:var(--font-body);
}

p,
li,
.bio-text p,
.press-main p,
.press-side p,
.hero-text,
.photo-note,
.year-block li,
.mix-card p{
  font-family:var(--font-mono);
  letter-spacing:.035em;
  font-size:clamp(.82rem,1.05vw,.98rem);
  line-height:1.9;
}

.bio-text p{
  font-size:clamp(.9rem,1.16vw,1.06rem);
  text-transform:none;
}

.press-main p,
.press-side p{
  font-size:.9rem;
}

.hero-text{
  max-width:680px;
  text-transform:none;
  color:rgba(245,239,226,.72);
}

.hero-title{
  text-shadow:
    2px 2px 0 rgba(76,182,216,.58),
    4px 4px 0 rgba(223,117,110,.35),
    0 0 55px rgba(217,180,95,.14);
}

.nav-logo,
.footer-logo{
  font-family:var(--font-display);
}

/* Subtle Basque-inspired symbolic motion */
.basque-symbols{
  pointer-events:none;
  position:absolute;
  inset:0;
  overflow:hidden;
  z-index:1;
}

.basque-symbols span{
  position:absolute;
  display:grid;
  place-items:center;
  color:rgba(217,180,95,.16);
  font-family:var(--font-display);
  line-height:1;
  filter:drop-shadow(0 0 18px rgba(217,180,95,.08));
}

.hero-symbols .lauburu{
  left:8vw;
  top:18vh;
  font-size:clamp(2rem,5vw,5rem);
  animation:basqueDrift 22s ease-in-out infinite alternate;
}

.hero-symbols .eguzki{
  right:12vw;
  top:22vh;
  font-size:clamp(2.6rem,6vw,6rem);
  color:rgba(76,182,216,.13);
  animation:basqueSpin 38s linear infinite;
}

.hero-symbols .cross{
  right:20vw;
  bottom:18vh;
  font-size:clamp(1.8rem,4vw,4rem);
  color:rgba(245,239,226,.10);
  animation:basquePulse 8s ease-in-out infinite;
}

.hero-symbols .star{
  left:30vw;
  bottom:16vh;
  font-size:clamp(2rem,4.5vw,4.5rem);
  color:rgba(223,117,110,.13);
  animation:basqueDrift 28s ease-in-out infinite alternate-reverse;
}

.footer-symbol-section{
  position:relative;
  min-height:160px;
  border-top:1px solid var(--line);
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 50%,rgba(217,180,95,.06),transparent 28rem),
    rgba(3,7,11,.32);
}

.footer-symbols{
  opacity:.8;
}

.footer-symbols span{
  color:rgba(217,180,95,.13);
}

.footer-symbols .lauburu{
  left:10%;
  top:35%;
  font-size:3rem;
  animation:basqueSpin 42s linear infinite;
}

.footer-symbols .eguzki{
  left:42%;
  top:22%;
  font-size:4.5rem;
  color:rgba(76,182,216,.10);
  animation:basquePulse 9s ease-in-out infinite;
}

.footer-symbols .cross{
  right:14%;
  top:36%;
  font-size:3.2rem;
  color:rgba(245,239,226,.08);
  animation:basqueDrift 26s ease-in-out infinite alternate;
}

.footer-symbols .star{
  right:34%;
  bottom:20%;
  font-size:2.4rem;
  color:rgba(223,117,110,.11);
  animation:basqueSpin 58s linear infinite reverse;
}

@keyframes basqueSpin{
  from{transform:rotate(0deg) scale(1)}
  to{transform:rotate(360deg) scale(1)}
}

@keyframes basqueDrift{
  from{transform:translate3d(0,0,0) rotate(-8deg)}
  to{transform:translate3d(18px,-22px,0) rotate(9deg)}
}

@keyframes basquePulse{
  0%,100%{opacity:.22;transform:scale(.96)}
  50%{opacity:.55;transform:scale(1.08)}
}

@media(max-width:900px){
  p,
  li,
  .bio-text p,
  .press-main p,
  .press-side p,
  .hero-text,
  .photo-note,
  .year-block li,
  .mix-card p{
    font-size:.82rem;
    line-height:1.8;
  }

  .hero-symbols .eguzki,
  .hero-symbols .cross{
    display:none;
  }

  .footer-symbol-section{
    min-height:120px;
  }
}

@media(prefers-reduced-motion:reduce){
  .basque-symbols span{
    animation:none!important;
  }
}


/* FINAL VERSION CORRECTIONS */
.nav-logo{
  font-size:clamp(1.75rem,3.4vw,3.25rem);
  line-height:.8;
}

.button,
.mix-link,
.booking-button,
.footer-links a,
.contact-socials a{
  font-size:calc(.68rem + 2px);
}

p,
li,
.bio-text p,
.press-main p,
.press-side p,
.hero-text,
.photo-note,
.year-block li,
.mix-card p{
  font-size:calc(clamp(.82rem,1.05vw,.98rem) - 2px);
}

.bio-text p{
  font-size:calc(clamp(.9rem,1.16vw,1.06rem) - 2px);
}

.hero-title{
  animation:heroTitleFloat 8s ease-in-out infinite alternate, heroTitleMorph 11s ease-in-out infinite;
  transform-origin:center;
  will-change:transform, letter-spacing, filter;
}

.hero-title span{
  display:inline-block;
  animation:heroInnerWave 5.5s ease-in-out infinite alternate;
}

@keyframes heroTitleFloat{
  0%{transform:translate3d(0,0,0) rotateX(0deg) rotateY(0deg) skewX(0deg)}
  35%{transform:translate3d(10px,-8px,0) rotateX(2deg) rotateY(-4deg) skewX(-1deg)}
  70%{transform:translate3d(-8px,6px,0) rotateX(-2deg) rotateY(3deg) skewX(1deg)}
  100%{transform:translate3d(5px,-12px,0) rotateX(1deg) rotateY(-2deg) skewX(.5deg)}
}

@keyframes heroTitleMorph{
  0%,100%{letter-spacing:.08em;filter:hue-rotate(0deg)}
  50%{letter-spacing:.105em;filter:hue-rotate(8deg)}
}

@keyframes heroInnerWave{
  from{text-shadow:2px 2px 0 rgba(76,182,216,.58),4px 4px 0 rgba(223,117,110,.35),0 0 55px rgba(217,180,95,.14)}
  to{text-shadow:4px 3px 0 rgba(76,182,216,.45),7px 6px 0 rgba(223,117,110,.28),0 0 75px rgba(217,180,95,.22)}
}

.hero-geometry-field{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  overflow:hidden;
}

.hero-geometry-field span{
  position:absolute;
  border:1px solid rgba(245,239,226,.055);
  width:18rem;
  height:18rem;
  transform:rotate(45deg);
  animation:geoFieldFloat 34s linear infinite;
}

.hero-geometry-field span:nth-child(1){left:4%;top:18%;border-radius:50%;animation-duration:38s}
.hero-geometry-field span:nth-child(2){right:8%;top:14%;animation-duration:45s;animation-direction:reverse}
.hero-geometry-field span:nth-child(3){left:38%;bottom:12%;width:12rem;height:12rem;animation-duration:52s}
.hero-geometry-field span:nth-child(4){right:32%;bottom:26%;width:9rem;height:9rem;border-radius:50%;animation-duration:41s}

@keyframes geoFieldFloat{
  from{transform:rotate(0deg) translate3d(0,0,0)}
  to{transform:rotate(360deg) translate3d(22px,-18px,0)}
}

.hero-symbols .spiral{
  left:48vw;
  top:12vh;
  font-size:clamp(3rem,8vw,8rem);
  color:rgba(245,239,226,.07);
  animation:basqueSpin 54s linear infinite reverse;
}

.hero-symbols .diamond{
  right:6vw;
  bottom:34vh;
  font-size:clamp(2.2rem,5vw,5rem);
  color:rgba(217,180,95,.12);
  animation:basqueDrift 31s ease-in-out infinite alternate;
}

.hero-symbols .mandala{
  left:14vw;
  bottom:28vh;
  font-size:clamp(2.6rem,6vw,6rem);
  color:rgba(76,182,216,.09);
  animation:basquePulse 10s ease-in-out infinite;
}

.sacred-geometry{
  position:absolute;
  inset:0;
  pointer-events:none;
  overflow:hidden;
  z-index:0;
}

.section > *:not(.sacred-geometry){
  position:relative;
  z-index:1;
}

.sacred-geometry span{
  position:absolute;
  display:block;
  opacity:.18;
}

.geo-ring{
  width:22rem;
  height:22rem;
  border:1px solid rgba(217,180,95,.12);
  border-radius:50%;
  left:6%;
  top:10%;
  animation:basqueSpin 70s linear infinite;
}

.geo-ring::before,
.geo-ring::after{
  content:"";
  position:absolute;
  inset:18%;
  border:1px solid rgba(245,239,226,.07);
  border-radius:50%;
}

.geo-ring::after{
  inset:36%;
}

.geo-star{
  width:16rem;
  height:16rem;
  right:10%;
  top:18%;
  border:1px solid rgba(76,182,216,.12);
  transform:rotate(45deg);
  animation:geoFieldFloat 48s linear infinite reverse;
}

.geo-cross{
  width:12rem;
  height:12rem;
  left:24%;
  bottom:12%;
  border-top:1px solid rgba(245,239,226,.09);
  border-bottom:1px solid rgba(245,239,226,.09);
  animation:basquePulse 12s ease-in-out infinite;
}

.geo-cross::before{
  content:"";
  position:absolute;
  left:50%;
  top:-50%;
  width:1px;
  height:200%;
  background:rgba(245,239,226,.08);
}

.geo-flower{
  right:28%;
  bottom:10%;
  width:9rem;
  height:9rem;
  border:1px solid rgba(223,117,110,.12);
  border-radius:50%;
  animation:basqueSpin 58s linear infinite;
}

.geo-flower::before,
.geo-flower::after{
  content:"";
  position:absolute;
  inset:0;
  border:1px solid rgba(223,117,110,.10);
  border-radius:50%;
  transform:translateX(34%);
}

.geo-flower::after{
  transform:translateY(34%);
}

.bio-card{
  position:relative;
  overflow:hidden;
}

.bio-card::before{
  content:"";
  position:absolute;
  inset:1rem;
  border:1px solid rgba(245,239,226,.08);
  border-radius:50%;
  animation:basqueSpin 34s linear infinite;
}

.bio-card::after{
  content:"✺ ◇ ✦";
  position:absolute;
  right:1rem;
  bottom:1rem;
  color:rgba(217,180,95,.22);
  font-family:var(--font-display);
  letter-spacing:.4em;
  animation:basqueDrift 18s ease-in-out infinite alternate;
}

.mix-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.mix-card.wide{
  grid-column:auto;
}

.booking-button{
  position:relative;
  z-index:1;
  display:inline-flex;
  flex-direction:column;
  gap:.2rem;
  margin:2.25rem auto 0;
  padding:1.1rem 1.5rem;
  border:1px solid rgba(217,180,95,.45);
  color:var(--deep);
  background:
    linear-gradient(135deg,rgba(245,239,226,.92),rgba(217,180,95,.94));
  text-decoration:none;
  text-transform:uppercase;
  font-family:var(--font-mono);
  letter-spacing:.16em;
  box-shadow:0 22px 70px rgba(0,0,0,.24);
  transition:transform .25s ease, box-shadow .25s ease;
}

.booking-button:hover{
  transform:translateY(-5px);
  box-shadow:0 32px 90px rgba(0,0,0,.34);
}

.booking-button strong{
  font-weight:500;
  text-transform:none;
  letter-spacing:.06em;
}

.contact-socials{
  position:relative;
  z-index:1;
  margin-top:2rem;
  display:flex;
  justify-content:center;
  gap:1rem;
  flex-wrap:wrap;
}

.contact-socials a{
  color:rgba(245,239,226,.62);
  text-decoration:none;
  font-family:var(--font-mono);
  text-transform:uppercase;
  letter-spacing:.16em;
  border:1px solid rgba(245,239,226,.10);
  padding:.5rem .7rem;
}

.contact-socials a:hover{
  color:var(--gold);
  border-color:rgba(217,180,95,.35);
}

.bio-drawer{
  border:1px solid var(--line);
  margin-bottom:1rem;
  background:rgba(255,255,255,.025);
}

.bio-drawer summary{
  cursor:pointer;
  padding:1rem;
  color:var(--gold);
  font-family:var(--font-display);
  font-size:1.5rem;
  letter-spacing:.08em;
  list-style:none;
}

.bio-drawer summary::-webkit-details-marker{
  display:none;
}

.bio-drawer p{
  padding:0 1rem 1rem;
}

.photo-press-card{
  overflow:hidden;
}

.press-photo-placeholder{
  aspect-ratio:4/5;
  border:1px solid rgba(245,239,226,.12);
  background:
    linear-gradient(to top,rgba(3,7,11,.82),transparent),
    radial-gradient(circle at 35% 25%,rgba(217,180,95,.18),transparent 44%),
    radial-gradient(circle at 80% 30%,rgba(76,182,216,.16),transparent 40%),
    #121820;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:1rem;
  margin-bottom:1rem;
}

.press-photo-placeholder span{
  font-family:var(--font-display);
  font-size:2rem;
  letter-spacing:.08em;
  color:var(--cream);
}

.press-photo-placeholder small{
  color:rgba(245,239,226,.5);
  font-family:var(--font-mono);
  letter-spacing:.08em;
}

.footer{
  align-items:flex-end;
}

.footer-logo{
  font-size:clamp(3rem,9vw,9rem);
  line-height:.75;
  letter-spacing:.08em;
  color:var(--gold);
}

.legal-page .nav{
  position:sticky;
}

.legal-content{
  padding-top:9rem;
}

@media(max-width:1200px){
  .mix-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:900px){
  .nav-logo{
    font-size:1.7rem;
  }

  .mix-grid{
    grid-template-columns:1fr;
  }

  .footer-logo{
    font-size:clamp(3rem,18vw,6rem);
  }

  .hero-title{
    animation:heroTitleMorph 11s ease-in-out infinite;
  }

  .sacred-geometry{
    opacity:.55;
  }
}


/* FINAL CLEANUP PASS — footer, contact, hero glass blue/gold */
.hero-title{
  color:transparent;
  background:
    linear-gradient(140deg,
      #f5d983 0%,
      #d9b45f 18%,
      #4cb6d8 38%,
      #0b3754 55%,
      #75d5f4 72%,
      #f0dec2 88%,
      #d9b45f 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  text-shadow:
    1px 1px 0 rgba(4,18,31,.9),
    2px 2px 0 rgba(5,27,45,.86),
    4px 4px 0 rgba(8,45,70,.72),
    7px 7px 0 rgba(4,12,20,.58),
    0 0 30px rgba(76,182,216,.22),
    0 0 70px rgba(217,180,95,.16);
  filter:drop-shadow(0 22px 45px rgba(0,0,0,.38));
  animation:heroGlassFloat 9s ease-in-out infinite alternate, heroGlassShift 13s ease-in-out infinite;
}

.hero-title::before{
  color:rgba(76,182,216,.38);
  -webkit-text-fill-color:rgba(76,182,216,.38);
  opacity:.42;
  filter:blur(.2px);
}

.hero-title::after{
  color:rgba(217,180,95,.32);
  -webkit-text-fill-color:rgba(217,180,95,.32);
  opacity:.34;
}

@keyframes heroGlassFloat{
  0%{transform:translate3d(0,0,0) rotateX(0deg) rotateY(0deg) skewX(0deg)}
  25%{transform:translate3d(7px,-5px,0) rotateX(2deg) rotateY(-5deg) skewX(-.7deg)}
  55%{transform:translate3d(-10px,6px,0) rotateX(-2deg) rotateY(4deg) skewX(.9deg)}
  82%{transform:translate3d(5px,-10px,0) rotateX(1deg) rotateY(-2deg) skewX(-.4deg)}
  100%{transform:translate3d(2px,-3px,0) rotateX(0deg) rotateY(2deg) skewX(.3deg)}
}

@keyframes heroGlassShift{
  0%,100%{
    background-position:0% 50%;
    letter-spacing:.08em;
  }
  50%{
    background-position:100% 50%;
    letter-spacing:.102em;
  }
}

.hero-title{
  background-size:220% 220%;
}

.hero-geometry-field span{
  border-color:rgba(217,180,95,.075);
  box-shadow:0 0 45px rgba(76,182,216,.035);
}

.hero-symbols span{
  opacity:.82;
}

.hero-symbols .eguzki,
.hero-symbols .mandala,
.hero-symbols .spiral{
  mix-blend-mode:screen;
}

.compact-contact{
  min-height:auto;
  padding-top:4.5rem;
  padding-bottom:4.8rem;
}

.compact-contact h2{
  font-size:clamp(4.6rem,12vw,10.5rem);
  margin-bottom:1.2rem;
}

.glass-booking-button{
  position:relative;
  z-index:1;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  margin:1rem auto 0;
  padding:.95rem 1.35rem;
  border:1px solid rgba(217,180,95,.42);
  border-radius:999px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.10),rgba(255,255,255,.035)),
    radial-gradient(circle at 20% 10%,rgba(217,180,95,.20),transparent 50%),
    rgba(3,7,11,.38);
  color:var(--cream);
  text-decoration:none;
  font-family:var(--font-mono);
  font-size:.82rem;
  letter-spacing:.1em;
  backdrop-filter:blur(14px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.12),
    0 18px 60px rgba(0,0,0,.22);
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease,color .25s ease;
}

.glass-booking-button:hover{
  transform:translateY(-4px);
  border-color:rgba(217,180,95,.72);
  color:var(--gold);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    0 26px 80px rgba(0,0,0,.34),
    0 0 40px rgba(217,180,95,.08);
}

.gold-socials{
  max-width:980px;
  margin:2.1rem auto 0;
  padding-top:1.35rem;
  border-top:1px solid rgba(217,180,95,.48);
}

.gold-socials a{
  border-color:rgba(217,180,95,.34);
  color:rgba(217,180,95,.92);
  background:rgba(217,180,95,.035);
}

.gold-socials a:hover{
  color:var(--deep);
  background:var(--gold);
  border-color:var(--gold);
}

.final-footer{
  position:relative;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:1rem;
  padding:1.5rem 6vw;
}

.final-footer .footer-logo{
  font-size:clamp(1.55rem,3vw,2.8rem);
  line-height:1;
  letter-spacing:.12em;
}

.footer-legal{
  justify-self:center;
  color:var(--gold);
  text-decoration:none;
  font-family:var(--font-mono);
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:.72rem;
  border-bottom:1px solid rgba(217,180,95,.45);
  padding-bottom:.2rem;
}

.footer-legal:hover{
  color:var(--cream);
  border-bottom-color:var(--cream);
}

.footer-copy{
  justify-self:end;
  color:rgba(245,239,226,.38);
}

.final-footer .footer-links{
  display:none;
}

@media(max-width:900px){
  .compact-contact{
    padding-top:3.5rem;
    padding-bottom:3.8rem;
  }

  .compact-contact h2{
    font-size:clamp(3.6rem,18vw,7rem);
  }

  .final-footer{
    grid-template-columns:1fr;
    text-align:left;
    align-items:start;
  }

  .footer-legal,
  .footer-copy{
    justify-self:start;
  }

  .hero-title{
    text-shadow:
      1px 1px 0 rgba(4,18,31,.9),
      3px 3px 0 rgba(8,45,70,.72),
      0 0 34px rgba(217,180,95,.14);
  }
}


/* LAST CORRECTIONS */
.final-contact{
  min-height:auto;
  padding-top:3.2rem;
  padding-bottom:3.4rem;
}

.final-contact .contact-orbit,
.final-contact .sacred-geometry,
.final-contact::before,
.final-contact::after{
  display:none!important;
}

.final-contact h2{
  font-size:clamp(3.6rem,9vw,7.6rem);
  line-height:.84;
  margin-bottom:.75rem;
}

.final-contact .glass-booking-button{
  margin-top:.75rem;
}

.social-strip{
  position:relative;
  padding:1.1rem 6vw 1.8rem;
  background:
    radial-gradient(circle at 50% 0%,rgba(217,180,95,.06),transparent 28rem),
    rgba(3,7,11,.32);
  border-top:1px solid rgba(217,180,95,.22);
  border-bottom:1px solid var(--line);
}

.social-strip .gold-socials{
  margin:0 auto;
  padding-top:1rem;
  border-top:1px solid rgba(217,180,95,.48);
}

.mini-record div{
  width:32px;
  height:32px;
  background:#0b3754;
  box-shadow:
    inset 0 0 0 7px rgba(76,182,216,.22),
    0 0 24px rgba(76,182,216,.18);
}

@media(max-width:900px){
  .final-contact{
    padding-top:2.8rem;
    padding-bottom:3rem;
  }

  .final-contact h2{
    font-size:clamp(3rem,15vw,5.8rem);
  }

  .social-strip{
    padding:1rem 1.5rem 1.5rem;
  }
}


/* Final tiny polish */
.nav{
  justify-content:center;
}

.nav-logo{
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  text-shadow:
    0 0 8px rgba(255,255,255,.18),
    0 0 18px rgba(217,180,95,.35),
    2px 2px 0 rgba(217,180,95,.18),
    -2px -2px 0 rgba(76,182,216,.14);
}

.social-strip{
  border-top:none !important;
  padding-top:.4rem !important;
  padding-bottom:1.4rem !important;
}

.social-strip .gold-socials{
  border-top:none !important;
  padding-top:0 !important;
}

.archive{
  border-bottom:1px solid rgba(217,180,95,.25);
}

.contact{
  border-top:1px solid rgba(245,239,226,.08);
}


/* Header logo back on the left, keeping the glow */
.nav{
  justify-content:space-between !important;
}

.nav-logo{
  position:relative !important;
  left:auto !important;
  transform:none !important;
  text-shadow:
    0 0 8px rgba(255,255,255,.18),
    0 0 18px rgba(217,180,95,.35),
    2px 2px 0 rgba(217,180,95,.18),
    -2px -2px 0 rgba(76,182,216,.14);
}

/* Social links now live inside the animated symbol section before the footer */
.footer-symbol-section{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:190px;
  padding:2rem 6vw;
}

.footer-symbol-links{
  position:relative;
  z-index:2;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:.75rem;
  flex-wrap:wrap;
  max-width:980px;
  margin:0 auto;
}

.footer-symbol-links a{
  color:var(--gold);
  border:1px solid rgba(217,180,95,.28);
  background:
    linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.018)),
    rgba(217,180,95,.035);
  backdrop-filter:blur(10px);
  padding:.55rem .82rem;
  border-radius:999px;
  text-decoration:none;
  font-family:var(--font-mono);
  font-size:.66rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  transition:background .25s ease,color .25s ease,border-color .25s ease,transform .25s ease;
}

.footer-symbol-links a:hover{
  background:var(--gold);
  color:var(--deep);
  border-color:var(--gold);
  transform:translateY(-2px);
}

/* Footer: smaller Paulinhx, same visual glow, centered within its area */
.final-footer{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:1rem;
  padding:1.5rem 6vw;
}

.final-footer .footer-logo{
  justify-self:start;
  font-size:clamp(1.55rem,3vw,2.8rem);
  line-height:1;
  letter-spacing:.12em;
  color:var(--gold);
  text-shadow:
    0 0 8px rgba(255,255,255,.18),
    0 0 18px rgba(217,180,95,.35),
    2px 2px 0 rgba(217,180,95,.18),
    -2px -2px 0 rgba(76,182,216,.14);
}

.footer-legal{
  justify-self:center;
  color:var(--gold);
  text-decoration:none;
  font-family:var(--font-mono);
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:.72rem;
  border-bottom:1px solid rgba(217,180,95,.45);
  padding-bottom:.2rem;
}

.footer-legal:hover{
  color:var(--cream);
  border-bottom-color:var(--cream);
}

.footer-copy{
  justify-self:end;
  color:rgba(245,239,226,.38);
}

.final-footer .footer-links,
.social-strip{
  display:none!important;
}

/* Keep divider between archive and contact */
.archive{
  border-bottom:1px solid rgba(217,180,95,.25);
}

.contact{
  border-top:1px solid rgba(245,239,226,.08);
}

@media(max-width:900px){
  .footer-symbol-section{
    min-height:170px;
    padding:1.75rem 1.5rem;
  }

  .final-footer{
    grid-template-columns:1fr;
    text-align:left;
    align-items:start;
  }

  .footer-legal,
  .footer-copy{
    justify-self:start;
  }
}


/* FINAL SOCIAL LINKS FIX */
.footer-symbol-section,
.footer-symbol-links{
  display:none!important;
}

.visible-socials{
  position:relative;
  z-index:2;
  display:flex!important;
  justify-content:center;
  align-items:center;
  gap:.7rem;
  flex-wrap:wrap;
  max-width:980px;
  margin:1.65rem auto 0;
  padding-top:1.15rem;
  border-top:1px solid rgba(217,180,95,.42);
}

.visible-socials a{
  color:var(--gold);
  border:1px solid rgba(217,180,95,.34);
  background:
    linear-gradient(135deg,rgba(255,255,255,.065),rgba(255,255,255,.018)),
    rgba(217,180,95,.045);
  backdrop-filter:blur(10px);
  padding:.55rem .82rem;
  border-radius:999px;
  text-decoration:none;
  font-family:var(--font-mono);
  font-size:.66rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  transition:background .25s ease,color .25s ease,border-color .25s ease,transform .25s ease;
}

.visible-socials a:hover{
  background:var(--gold);
  color:var(--deep);
  border-color:var(--gold);
  transform:translateY(-2px);
}

.final-footer{
  margin-top:0;
}

@media(max-width:900px){
  .visible-socials{
    justify-content:flex-start;
    margin-top:1.35rem;
  }
}


/* FINAL RELEASE OVERRIDES */
.nav{
  justify-content:space-between !important;
}

.nav-logo{
  position:relative !important;
  left:auto !important;
  transform:none !important;
  text-shadow:
    0 0 8px rgba(255,255,255,.18),
    0 0 18px rgba(217,180,95,.35),
    2px 2px 0 rgba(217,180,95,.18),
    -2px -2px 0 rgba(76,182,216,.14);
}

.footer-symbol-section,
.footer-symbol-links,
.social-strip{
  display:none!important;
}

.final-contact{
  min-height:auto;
  padding-top:3.2rem;
  padding-bottom:3.4rem;
}

.final-contact .contact-orbit,
.final-contact .sacred-geometry,
.final-contact::before,
.final-contact::after{
  display:none!important;
}

.final-contact h2{
  font-size:clamp(3.6rem,9vw,7.6rem);
  line-height:.84;
  margin-bottom:.75rem;
}

.visible-socials{
  position:relative;
  z-index:2;
  display:flex!important;
  justify-content:center;
  align-items:center;
  gap:.7rem;
  flex-wrap:wrap;
  max-width:980px;
  margin:1.65rem auto 0;
  padding-top:1.15rem;
  border-top:1px solid rgba(217,180,95,.42);
}

.visible-socials a{
  color:var(--gold);
  border:1px solid rgba(217,180,95,.34);
  background:
    linear-gradient(135deg,rgba(255,255,255,.065),rgba(255,255,255,.018)),
    rgba(217,180,95,.045);
  backdrop-filter:blur(10px);
  padding:.55rem .82rem;
  border-radius:999px;
  text-decoration:none;
  font-family:var(--font-mono);
  font-size:.66rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  transition:background .25s ease,color .25s ease,border-color .25s ease,transform .25s ease;
}

.visible-socials a:hover{
  background:var(--gold);
  color:var(--deep);
  border-color:var(--gold);
  transform:translateY(-2px);
}

.archive{
  border-bottom:1px solid rgba(217,180,95,.25);
}

.contact{
  border-top:1px solid rgba(245,239,226,.08);
}

.final-footer{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:1rem;
  padding:1.5rem 6vw;
}

.final-footer .footer-logo{
  justify-self:start;
  font-size:clamp(1.55rem,3vw,2.8rem);
  line-height:1;
  letter-spacing:.12em;
  color:var(--gold);
  text-shadow:
    0 0 8px rgba(255,255,255,.18),
    0 0 18px rgba(217,180,95,.35),
    2px 2px 0 rgba(217,180,95,.18),
    -2px -2px 0 rgba(76,182,216,.14);
}

.footer-legal{
  justify-self:center;
  color:var(--gold);
  text-decoration:none;
  font-family:var(--font-mono);
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:.72rem;
  border-bottom:1px solid rgba(217,180,95,.45);
  padding-bottom:.2rem;
}

.footer-legal:hover{
  color:var(--cream);
  border-bottom-color:var(--cream);
}

.footer-copy{
  justify-self:end;
  color:rgba(245,239,226,.38);
}

.mini-record div{
  width:32px;
  height:32px;
  background:#0b3754;
  box-shadow:
    inset 0 0 0 7px rgba(76,182,216,.22),
    0 0 24px rgba(76,182,216,.18);
}

.legal-page .nav{
  position:sticky;
}

.legal-content{
  padding-top:9rem;
}

@media(max-width:900px){
  .final-contact{
    padding-top:2.8rem;
    padding-bottom:3rem;
  }

  .final-contact h2{
    font-size:clamp(3rem,15vw,5.8rem);
  }

  .visible-socials{
    justify-content:flex-start;
    margin-top:1.35rem;
  }

  .final-footer{
    grid-template-columns:1fr;
    text-align:left;
    align-items:start;
  }

  .footer-legal,
  .footer-copy{
    justify-self:start;
  }
}

/* Archive year hover effect */

.year-block{
  transition:transform .3s ease;
}

.year-block:hover{
  transform:translateX(4px);
}

.year-block summary{
  transition:all .35s cubic-bezier(.22,1,.36,1);
}

.year-block summary:hover{
  color:var(--gold);
  letter-spacing:.06em;
  text-shadow:0 0 18px rgba(217,180,95,.18);
}

.year-block[open] summary{
  color:var(--gold);
}

.year-block summary{
  cursor:pointer;
}

/* Bio drawer hover effect */

.bio-drawer{
  transition:transform .3s ease;
}

.bio-drawer:hover{
  transform:translateX(4px);
}

.bio-drawer summary{
  cursor:pointer;
  transition:all .35s cubic-bezier(.22,1,.36,1);
}

.bio-drawer summary:hover{
  color:var(--gold);
  letter-spacing:.06em;
  text-shadow:0 0 18px rgba(217,180,95,.18);
}

.bio-drawer[open] summary{
  color:var(--gold);
}


/* Photo carousel override */

.photo-slot{
  width:clamp(320px, 25vw, 400px);
  height:clamp(320px, 25vw, 400px);
  flex-shrink:0;
  position:relative;
  overflow:hidden;
  margin-right:1.4rem;
  border:1px solid var(--line);
  border-radius:0px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#111922;
  transition:transform .5s, filter .5s;
}

.photo-slot:hover{
  transform:scale(1.035);
  filter:saturate(1.12);
}

.photo-slot img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  z-index:0;
}

.photo-slot::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(
    to top,
    rgba(3,7,11,.78),
    rgba(3,7,11,.12) 45%,
    transparent 70%
  );
}

.photo-slot span{
  position:absolute;
  z-index:2;
  left:1rem;
  bottom:1rem;
  color:var(--cream);
  font-family:var(--font-mono);
  font-size:.58rem;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.photo-placeholder{
  display:none;
}