/* =========================================================
   University Placements — editorial layout (plc-*)
   Brand: ink #363587 · marigold #f5c307
   ========================================================= */
@import url("https://fonts.googleapis.com/css2?family=Caveat:wght@500;600&display=swap");

body.placements-page{
  background:#faf9f6;
}

.placements-page .plc-hero,
.placements-page .plc-journey,
.placements-page .plc-grads,
.placements-page .plc-offers,
.placements-page .plc-stories,
.placements-page .plc-alumni,
.placements-page .plc-cta{
  position:relative;
  overflow:visible;
  scroll-margin-top:96px;
}

.plc-kicker{
  display:inline-block;
  margin:0 0 12px;
  color:rgb(52, 50, 114);
  font-family:Helvetica, Arial, sans-serif;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.plc-copy h1,
.plc-copy h2,
.plc-journey-head h2,
.plc-center h2,
.plc-offers-head h2{
  margin:0 0 14px;
  color:rgb(52, 50, 114);
  font-family:Helvetica, Arial, sans-serif;
  font-weight:700;
  line-height:1.15;
  letter-spacing:-.015em;
}
.plc-copy h1{
  font-size:clamp(2rem, 4vw, 3.1rem);
}
.plc-copy h2,
.plc-journey-head h2,
.plc-center h2,
.plc-offers-head h2{
  font-size:clamp(1.8rem, 3.2vw, 2.55rem);
}
.plc-copy p,
.plc-journey-head p,
.plc-center p,
.plc-offers-head p,
.plc-steps p{
  margin:0 0 12px;
  color:rgb(33, 37, 41);
  line-height:1.7;
}
.plc-copy p:last-child,
.plc-steps p:last-child{ margin-bottom:0; }

.plc-split{
  display:grid;
  grid-template-columns:minmax(0, 1.05fr) minmax(0, .95fr);
  gap:clamp(28px, 4.5vw, 64px);
  align-items:center;
}
.plc-copy,
.plc-media{ min-width:0; }

.plc-frame{
  margin:0;
  background:#eceaf5;
  box-shadow:14px 14px 0 var(--marigold);
}
.plc-frame img{
  width:100%;
  height:auto;
  object-fit:contain;
  object-position:center center;
  display:block;
}
.plc-hero-video{
  width:100%;
  box-shadow:14px 14px 0 var(--marigold);
}
.plc-hero-video img,
.plc-hero-video iframe{
  width:100%;
  aspect-ratio:16 / 9;
  object-fit:cover;
  display:block;
}

.plc-hero{
  padding:48px 0 40px;
  background:#fff;
}

.plc-journey{
  padding:48px 0 52px;
  background:#faf9f6;
}
.plc-journey-head,
.plc-offers-head{
  display:grid;
  grid-template-columns:minmax(0, 1.15fr) minmax(0, .85fr);
  gap:clamp(20px, 4vw, 48px);
  align-items:end;
  margin-bottom:36px;
}
.plc-journey-head{
  align-items:center;
}
.plc-journey-head h2,
.plc-offers-head h2{ margin-bottom:0; }
.plc-journey-head p,
.plc-offers-head p{ margin:0; }
.plc-steps{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:18px;
}
.plc-steps li{
  margin:0;
  padding:28px 20px 24px;
  text-align:center;
  background:#fff;
}
.plc-step-ic{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:64px;
  height:64px;
  margin:0 auto 14px;
  border-radius:50%;
  background:#eceaf5;
  color:rgb(52, 50, 114);
  font-size:1.2rem;
}
.plc-steps h3{
  margin:0 0 8px;
  color:rgb(52, 50, 114);
  font-family:Helvetica, Arial, sans-serif;
  font-size:1.08rem;
  font-weight:700;
}

.plc-grads{
  padding:48px 0 52px;
  background:#fff;
}
.plc-center{
  max-width:46rem;
  margin:0 auto 36px;
  text-align:center;
}
.plc-network{ min-width:0; }
.plc-network .plc-kicker{
  display:block;
  margin:0 0 16px;
  text-align:center;
}
.plc-country-tabs{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:8px;
  margin:0 0 28px;
}
.plc-country-tab{
  padding:10px 18px;
  border:1.5px solid rgba(54,53,135,.16);
  border-radius:100px;
  background:#faf9f6;
  color:rgb(52, 50, 114);
  font:inherit;
  font-size:.82rem;
  font-weight:700;
  cursor:pointer;
}
.plc-country-tab:hover{ border-color:rgba(54,53,135,.32); }
.plc-country-tab.is-active{
  background:var(--ink);
  border-color:var(--ink);
  color:#fff;
}
.plc-country-tab:focus-visible{
  outline:2px solid var(--ink);
  outline-offset:3px;
}
.plc-country-panel[hidden]{ display:none !important; }
.plc-logos{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:14px;
  align-items:stretch;
}
.plc-logos li{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  min-height:110px;
  padding:16px 14px;
  background:#faf9f6;
}
.plc-logos img{
  width:auto;
  max-width:100%;
  height:58px;
  object-fit:contain;
  display:block;
}
.plc-logos--few{
  grid-template-columns:repeat(auto-fit, minmax(180px, 220px));
  justify-content:center;
}

.plc-offers{
  padding:48px 0 28px;
  background:#faf9f6;
}
.plc-stories{
  padding:28px 0 52px;
  background:#faf9f6;
}
.plc-story-slider.logo-slider{
  --per-view: 4;
  max-width:none;
  margin:0;
  padding:0 48px 8px;
}
.plc-story-slider .slide h3{
  margin:12px 0 0;
  color:rgb(52, 50, 114);
  font-family:Helvetica, Arial, sans-serif;
  font-size:.95rem;
  font-weight:700;
  line-height:1.35;
}
.plc-story-slider .slider-btn{
  top:28%;
}
.plc-story-slider .slider-dots button{
  background:rgba(54,53,135,.22);
}
.plc-story-slider .slider-dots button.active{
  background:var(--marigold);
}
@media (max-width:1100px){
  .plc-story-slider.logo-slider{ --per-view: 3; }
}
@media (max-width:700px){
  .plc-story-slider.logo-slider{ --per-view: 2; padding:0 44px 8px; }
  .plc-story-slider .slider-btn{ top:26%; }
}
@media (max-width:420px){
  .plc-story-slider.logo-slider{ --per-view: 1; }
}
.plc-video-grid{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:16px;
}
.plc-video-grid h3{
  margin:12px 0 0;
  color:rgb(52, 50, 114);
  font-family:Helvetica, Arial, sans-serif;
  font-size:.95rem;
  font-weight:700;
  line-height:1.35;
}
.plc-video{
  position:relative;
  overflow:hidden;
  background:#1c1b4a;
  aspect-ratio:16 / 9;
}
.plc-video img,
.plc-video iframe{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  border:0;
}
.plc-play{
  position:absolute;
  left:50%;
  top:50%;
  z-index:1;
  width:48px;
  height:48px;
  margin:0;
  padding:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:0;
  border-radius:50%;
  background:var(--marigold);
  color:var(--ink);
  transform:translate(-50%, -50%);
  cursor:pointer;
}
.plc-play:hover,
.plc-play:focus-visible{ background:#ffd84a; }
.plc-play:focus-visible{
  outline:2px solid var(--ink);
  outline-offset:3px;
}

.plc-alumni{
  padding:48px 0;
  background:#fff;
}
.plc-alumni-panel{
  display:grid;
  grid-template-columns:minmax(0, 1.15fr) minmax(0, 1.35fr) auto;
  gap:clamp(20px, 3vw, 36px);
  align-items:center;
  padding:clamp(28px, 3.5vw, 42px) clamp(24px, 3.2vw, 48px);
  background:#eaf3fb;
  border-radius:18px;
}
.plc-alumni-copy{
  min-width:0;
  max-width:32rem;
}
.plc-alumni-copy h2{
  margin:0 0 12px;
  color:rgb(52, 50, 114);
  font-family:Helvetica, Arial, sans-serif;
  font-size:clamp(1.7rem, 2.8vw, 2.35rem);
  font-weight:700;
  line-height:1.15;
  letter-spacing:-.015em;
}
.plc-alumni-copy p:not(.plc-kicker){
  margin:0 0 18px;
  max-width:28rem;
  color:rgb(33, 37, 41);
  line-height:1.7;
}
.plc-alumni-btn{
  display:inline-flex;
  align-items:center;
  gap:10px;
  border-radius:999px;
  padding:12px 18px 12px 22px;
}
.plc-alumni-btn i{
  display:inline-flex;
  width:28px;
  height:28px;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(54, 53, 135, .08);
  font-size:.78rem;
}
.plc-alumni-points{
  list-style:none;
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  margin:0;
  padding:0;
  min-width:0;
}
.plc-alumni-points li{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding:8px 16px;
  color:rgb(52, 50, 114);
  font-size:.92rem;
  font-weight:700;
  line-height:1.25;
  text-align:center;
  border-left:1px solid rgba(54, 53, 135, .18);
}
.plc-alumni-icon{
  display:inline-flex;
  width:42px;
  height:42px;
  align-items:center;
  justify-content:center;
  color:rgb(52, 50, 114);
  font-size:1.45rem;
}
.plc-alumni-script{
  margin:0;
  padding:4px 0 10px;
  color:rgb(52, 50, 114);
  font-family:"Caveat", "Segoe Script", cursive;
  font-size:clamp(1.35rem, 2vw, 1.7rem);
  font-weight:600;
  line-height:1.15;
  letter-spacing:.01em;
  transform:rotate(-4deg);
  background-image:linear-gradient(var(--marigold), var(--marigold));
  background-repeat:no-repeat;
  background-position:8px 100%;
  background-size:72% 7px;
}

.plc-cta{
  padding:48px 0;
  background:#363587;
  color:#fff;
}
.plc-cta .plc-copy h2{ color:#fff; }
.plc-cta .plc-copy p{ color:rgba(255,255,255,.9); }
.plc-cta-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:8px;
}
.plc-cta .btn-ghost{
  color:#fff;
  border-color:rgba(255,255,255,.7);
}

@media (max-width:980px){
  .plc-split,
  .plc-journey-head,
  .plc-offers-head,
  .plc-steps,
  .plc-logos:not(.plc-logos--few),
  .plc-video-grid{
    grid-template-columns:1fr 1fr;
    gap:22px;
  }
  .plc-hero .plc-media{ order:2; max-width:520px; }
  .plc-hero .plc-copy{ order:1; }
  .plc-frame{ box-shadow:10px 10px 0 var(--marigold); }
  .plc-alumni-panel{
    grid-template-columns:1fr;
    gap:28px;
  }
  .plc-alumni-copy{ max-width:none; }
  .plc-alumni-script{ justify-self:start; }
}

@media (max-width:640px){
  .plc-hero,
  .plc-journey,
  .plc-grads,
  .plc-alumni,
  .plc-cta{ padding:30px 0; }
  .plc-offers{ padding:30px 0 16px; }
  .plc-stories{ padding:16px 0 34px; }
  .plc-split,
  .plc-journey-head,
  .plc-offers-head,
  .plc-steps,
  .plc-logos:not(.plc-logos--few),
  .plc-video-grid{ grid-template-columns:1fr; }
  .plc-alumni-points{
    grid-template-columns:1fr;
  }
  .plc-alumni-points li{
    flex-direction:row;
    justify-content:flex-start;
    gap:14px;
    padding:14px 0;
    text-align:left;
    border-left:0;
    border-top:1px solid rgba(54, 53, 135, .18);
  }
  .plc-alumni-points li:first-child{ border-top:0; }
}
