/* ===================== ARTIST RECRUIT (light) ===================== */
.recruit{
  --ink:#15110f;
  position:relative;
  background:#f4f1ea;
  color:var(--ink);
  padding:clamp(4.5rem,11vh,8rem) 0;
  overflow:hidden;
}
.recruit::before,
.recruit::after{
  content:"";position:absolute;left:0;right:0;height:1px;
  background:rgba(20,17,15,.12);
}
.recruit::before{top:0}
.recruit::after{bottom:0}

.recruit__inner{
  position:relative;
  max-width:1320px;margin:0 auto;
  padding:0 clamp(1.4rem,5vw,5rem);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);
  gap:clamp(2rem,5vw,4rem);
  align-items:center;
}

/* ---- text ---- */
.recruit__eyebrow{
  display:flex;align-items:center;gap:.8rem;
  font-family:"Oswald",sans-serif;
  font-size:.72rem;letter-spacing:.34em;
  color:var(--red);
  margin-bottom:1.6rem;
}
.recruit__eyebrow::before{
  content:"";width:34px;height:1px;background:var(--red);
}
.recruit__title{
  font-family:"Anton","Oswald",sans-serif;
  font-weight:400;
  text-transform:uppercase;
  line-height:.98;
  letter-spacing:.005em;
  margin:0;
}
.recruit__title span{
  display:block;
  font-size:clamp(2.3rem,5.6vw,4.7rem);
  color:var(--ink);
}
.recruit__title em{font-style:normal;color:var(--red)}

.recruit__lead{
  margin:2.2rem 0 0;
  font-family:"Noto Sans JP",sans-serif;
  font-weight:600;
  font-size:clamp(1.05rem,1.9vw,1.5rem);
  letter-spacing:.08em;
  color:var(--ink);
}
.recruit__rule{
  display:block;width:54px;height:2px;
  background:var(--red);
  margin:1.4rem 0;
}
.recruit__desc{
  font-family:"Noto Sans JP",sans-serif;
  font-weight:300;
  font-size:clamp(.82rem,1.05vw,.95rem);
  line-height:2.1;letter-spacing:.05em;
  color:rgba(20,17,15,.72);
  margin:0;
}
.recruit__btn{
  display:inline-flex;align-items:center;gap:2.2rem;justify-content:space-between;
  margin-top:2.6rem;
  min-width:300px;
  padding:1.15rem 1.8rem;
  background:var(--ink);color:#fff;
  font-family:"Oswald",sans-serif;
  font-size:.86rem;letter-spacing:.22em;
  text-decoration:none;
  transition:background .35s,transform .35s;
}
.recruit__btn svg{transition:transform .35s cubic-bezier(.2,.7,.3,1)}
.recruit__btn:hover{background:var(--red)}
.recruit__btn:hover svg{transform:translateX(8px)}

/* ---- collage ---- */
.recruit__collage{
  position:relative;
  width:100%;
  aspect-ratio:1/.92;
}
.recruit__dots{
  position:absolute;left:2%;top:14%;
  width:90px;height:80px;
  background-image:radial-gradient(rgba(20,17,15,.28) 1.4px,transparent 1.4px);
  background-size:13px 13px;
  z-index:1;
}
.recruit__line{
  position:absolute;left:6%;bottom:4%;
  width:1px;height:50%;
  background:rgba(20,17,15,.18);
  transform:rotate(20deg);transform-origin:bottom;
  z-index:1;
}
.rc{
  position:absolute;
  margin:0;overflow:hidden;
  box-shadow:0 24px 60px rgba(20,17,15,.18);
}
.rc img{
  width:100%;height:100%;object-fit:cover;
  filter:sepia(.42) saturate(1.35) brightness(1.05) contrast(.98);
}
.rc::after{       /* warm unify wash */
  content:"";position:absolute;inset:0;
  background:linear-gradient(160deg,rgba(255,180,90,.18),rgba(200,60,40,.12));
  mix-blend-mode:multiply;
}
/* big arch top-right */
.rc--arch{
  right:0;top:0;
  width:46%;height:88%;
  border-radius:1000px 1000px 22px 22px;
  z-index:3;
}
/* circle center-left */
.rc--circle{
  left:6%;top:33%;
  width:44%;aspect-ratio:1;
  border-radius:50%;
  z-index:2;
}
/* studio square bottom-left */
.rc--sq1{
  left:14%;bottom:0;
  width:40%;aspect-ratio:5/4;
  border-radius:22px;
  z-index:4;
}
/* female square bottom-right */
.rc--sq2{
  right:2%;bottom:2%;
  width:34%;aspect-ratio:9/10;
  border-radius:22px;
  z-index:5;
}

/* ===================== RESPONSIVE ===================== */
@media(max-width:880px){
  .recruit__inner{grid-template-columns:1fr;gap:3rem}
  .recruit__collage{max-width:520px;margin:0 auto;width:100%}
}
@media(max-width:560px){
  .recruit__btn{min-width:0;width:100%}
  .recruit__title span{font-size:clamp(2rem,11vw,3rem)}
  .recruit__collage{aspect-ratio:1/1.05}
}

/* ---- header adapts to the light section ---- */
.hdr--light::before{
  background:linear-gradient(to bottom,rgba(244,241,234,.85),transparent);
}
.hdr--light .hdr__brand img{filter:invert(1) brightness(.15)}
.hdr--light .hdr__brand span{color:rgba(20,17,15,.55)}
.hdr--light .hdr__nav a{color:rgba(20,17,15,.82)}
.hdr--light .hdr__nav a:hover{color:#000}
.hdr--light .hdr__social a{color:rgba(20,17,15,.7)}
.hdr--light .hdr__social a:hover{color:#000}
.hdr--light .hdr__burger span{background:#15110f}

/* light section already high-contrast; nothing to disable for reduced motion */
