/* Aktuelle Partnerprofile – visuelle Fortsetzung der Startseite */
.partner-profile {
  --partner-accent: #f0d828;
  --partner-accent-2: #75ad2a;
  --partner-ink: #132607;
  background:
    radial-gradient(circle at 8% 28%, color-mix(in srgb, var(--partner-accent) 18%, transparent), transparent 26rem),
    linear-gradient(180deg, #f8f5e9 0%, #edf4dc 48%, #f8f5e9 100%);
}
.partner-profile--420brands { --partner-accent:#f0d828; --partner-accent-2:#8067b7; }
.partner-profile--cannafair { --partner-accent:#f05a49; --partner-accent-2:#f0d828; }
.partner-profile--hanfkranz { --partner-accent:#75ad2a; --partner-accent-2:#f0d828; }
.partner-profile--bads { --partner-accent:#ef5b5b; --partner-accent-2:#f0d828; }

.partner-profile .artist-hero {
  min-height: min(760px, 86vh);
  display: grid;
  align-items: center;
  padding-top: 118px;
  padding-bottom: 70px;
  border: 0;
  background:
    radial-gradient(circle at 82% 24%, color-mix(in srgb, var(--partner-accent) 42%, transparent), transparent 28%),
    radial-gradient(circle at 14% 90%, color-mix(in srgb, var(--partner-accent-2) 30%, transparent), transparent 30%),
    linear-gradient(135deg, #0e1d05 0%, #243b10 54%, #102005 100%);
}
.partner-profile .artist-hero::before {
  opacity: .55;
  background:
    linear-gradient(115deg, transparent 0 58%, rgba(255,255,255,.035) 58% 59%, transparent 59%),
    radial-gradient(circle, rgba(255,255,255,.1) 1.5px, transparent 1.6px);
  background-size: auto, 26px 26px;
}
.partner-profile .artist-hero::after {
  content: "PARTNER";
  position: absolute;
  right: -1vw;
  bottom: -3vw;
  font-family: var(--font-display);
  font-size: clamp(7rem, 24vw, 22rem);
  line-height: .8;
  color: rgba(255,255,255,.035);
  pointer-events: none;
}
.partner-profile .artist-hero__inner {
  display: grid;
  grid-template-columns: minmax(250px,.72fr) minmax(0,1.28fr);
  grid-template-areas:
    "back back"
    "logo role"
    "logo name"
    "logo meta";
  gap: 12px clamp(35px,6vw,85px);
  align-items: center;
  text-align: left;
}
.partner-profile .artist-back { grid-area:back; justify-self:start; margin-bottom:24px; }
.partner-profile .artist-logo {
  position:relative;
  grid-area:logo;
  width:100%;
  max-width:390px;
  height:auto;
  aspect-ratio:1;
  padding:0;
  border:0;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 10px color-mix(in srgb,var(--partner-accent) 72%,transparent),0 35px 80px rgba(0,0,0,.4);
  transform:rotate(-3deg);
  overflow:hidden;
}
/* Keep complete wordmarks inside the circle, without zooming/cropping. */
.partner-profile .artist-logo img {
  position:absolute;
  top:50%;
  left:50%;
  width:var(--partner-logo-size,78%);
  height:var(--partner-logo-size,78%);
  max-width:none;
  max-height:none;
  object-fit:contain;
  object-position:center;
  transform:translate(-50%,-50%);
}
/* The BADS source has large transparent margins around its round emblem. */
.partner-profile--bads .artist-logo { --partner-logo-size:150%; }
.partner-profile .artist-hero__role { grid-area:role; justify-self:start; background:var(--partner-accent); border:0; color:#142307; }
.partner-profile .artist-hero__name { grid-area:name; margin:0; font-size:clamp(4rem,10vw,8.5rem); color:#fffdf3; }
.partner-profile .artist-hero__meta { grid-area:meta; justify-content:flex-start; color:rgba(255,255,255,.72); }
.partner-profile .artist-hero__meta span + span::before { background:var(--partner-accent); }

.partner-profile .artist-body { padding:clamp(55px,8vw,105px) 0; }
.partner-profile .artist-layout { gap:clamp(22px,4vw,48px); }
.partner-profile .artist-card {
  position:relative;
  overflow:hidden;
  border:1px solid rgba(34,57,14,.12);
  border-radius:26px;
  background:rgba(255,255,255,.82);
  box-shadow:0 22px 55px rgba(31,51,14,.1);
  backdrop-filter:blur(12px);
}
.partner-profile .artist-card::before {
  content:"";
  position:absolute;
  left:0; top:0; bottom:0;
  width:7px;
  background:linear-gradient(var(--partner-accent),var(--partner-accent-2));
}
.partner-profile .artist-card__title { font-size:clamp(2rem,4vw,3rem); }
.partner-profile .artist-bio { padding:clamp(30px,5vw,58px); }
.partner-profile .artist-event { background:linear-gradient(145deg,var(--partner-accent),color-mix(in srgb,var(--partner-accent) 68%,#fff)); }
.partner-profile .artist-event::before { display:none; }
.partner-profile .artist-event .artist-card__title,
.partner-profile .artist-event p { color:#172608; }
.partner-profile .artist-fact,.partner-profile .artist-link { border:0; background:#f2f5e8; }
.partner-profile .artist-link:hover { background:color-mix(in srgb,var(--partner-accent) 24%,#fff); }

.partner-profile .artist-more { position:relative; overflow:hidden; background:#132607; color:#fff; }
.partner-profile .artist-more--cross { background:var(--partner-accent); color:#162407; }
.partner-profile .artist-more__title { color:inherit; font-size:clamp(2.3rem,5vw,4rem); }
.partner-profile .artist-more__item { border-radius:22px; border-color:rgba(255,255,255,.16); background:rgba(255,255,255,.08); }
.partner-profile .artist-more--cross .artist-more__item { background:rgba(255,255,255,.72); border-color:rgba(20,35,7,.12); }
.partner-profile .artist-more__name { color:inherit; }

@media (max-width: 760px) {
  .partner-profile .artist-hero { min-height:auto; }
  .partner-profile .artist-hero__inner {
    grid-template-columns:1fr;
    grid-template-areas:"back" "logo" "role" "name" "meta";
    justify-items:center;
    text-align:center;
  }
  .partner-profile .artist-back,.partner-profile .artist-hero__role { justify-self:center; }
  .partner-profile .artist-logo { max-width:260px; height:auto; margin:10px auto 24px; }
  .partner-profile .artist-hero__meta { justify-content:center; }
  .partner-profile .artist-hero__name { font-size:clamp(3.5rem,17vw,6rem); }
}
