:root{
    --ink:#1F1A2E;
    --purple:#6C3FC5;
    --purple-deep:#4B2A91;
    --purple-pale:#F3EEFC;
    --mint:#16A883;
    --sand:#F4E7C1;
    --muted:#7A7391;
    --line:#E7E0F5;
    --bg:#FBFAFE;
    --white:#FFFFFF;
  }
  a.btn.btn--ghost.es_btn_hov:hover {
    color: #ffffff;
}
a.btn.btn--solid.es_btn_hov:hover {
    color: #ffffff;
}
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{margin:0;background:var(--bg);color:var(--ink);font-family:'Inter',sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased;}
  h1,h2,h3{font-family:'Fraunces',serif;margin:0;}
  a{color:inherit;}
  .wrap{max-width:1040px;margin:0 auto;padding:0 24px;}

  /* HERO */
  .hero{
    position:relative;
    overflow:hidden;
    background: #412685;
    padding:64px 0 88px;
  }
  .hero::after{
    content:"";
    position:absolute;
    inset:0;
    background-image:
      linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
      linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
    background-size:42px 42px;
    opacity:.4;
    pointer-events:none;
  }
  .hero-inner{
      position:relative;
      display:flex;
      justify-content:space-between;
      align-items:flex-start;
      gap:32px;
      flex-wrap:wrap; 
      margin-top: 83px !important;
      
  }
  .hero-copy{max-width:560px;}
  .hero h1{font-size:clamp(38px,6vw,58px);font-weight:600;letter-spacing:-.5px; color: #ffff;
}
  .hero .tagline{font-size:19px;font-weight:600;margin-top:10px;color:#EDE6FA;}
  .hero .desc{font-size:15.5px;color:#CBBEE8;margin-top:8px;max-width:44ch;}
  .accent-underline{width:64px;height:4px;background:var(--mint);border-radius:2px;margin-top:20px;}
  

  .sticky-note{
    flex: none;
    background: var(--sand);
    color: #3A2E10;
    width: 186px;
    padding: 40px 29px 42px;
    border-radius: 4px;
    transform: rotate(12deg);
    box-shadow: 0 18px 30px rgba(0, 0, 0, .28);
    font-family: 'Fraunces', serif;
    font-weight: 600;
    font-size: 27px;
    line-height: 1.15;
    text-align: center;
    position: relative;
    /* margin-top: 6px; */
    margin-top: 46px;
  }
  .sticky-note::before{
    content:"";
    position:absolute;
    top:-10px;left:50%;
    transform:translateX(-50%) rotate(-4deg);
    width:52px;height:18px;
    background:rgba(255,255,255,.55);
    border:1px solid rgba(255,255,255,.4);
  }
  .sticky-note span{display:block;text-decoration:underline;text-decoration-color:#3A2E10;text-underline-offset:4px;}

  /* FEATURES STRIP */
  .features{
    position:relative;
    margin-top:-48px;
    z-index:2;
  }
  .feature-card{
    background:var(--purple-pale);
    border-radius:18px;
    padding:36px 20px;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:0;
    box-shadow:0 20px 40px rgba(76,42,145,.12);
  }
  .feature{
    text-align:center;
    padding:0 16px;
    border-right:1px solid var(--line);
  }
  .feature:last-child{border-right:none;}
  .feature .icon{
    width:44px;height:44px;
    margin:0 auto 14px;
    color:var(--purple);
  }
  .feature h3{font-size:15.5px;font-weight:600;margin-bottom:6px;}
  .feature p{margin:0;font-size:13px;color:var(--muted);}
  @media (max-width:760px){
    .feature-card{grid-template-columns:1fr 1fr;gap:28px 0;}
    .feature{border-right:none;border-bottom:1px solid var(--line);padding-bottom:20px;}
    .feature:nth-child(2n){border-right:none;}
  }

  /* WHY WORK WITH US */
  .why{
    background:var(--purple-pale);
    border-radius:18px;
    padding:32px 36px;
    margin-top:28px;
  }
  .why h2{font-size:20px;font-weight:600;margin-bottom:18px;}
  .why-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 32px;}
  .why-item{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;}
  .why-item .check{
    flex:none;width:20px;height:20px;border-radius:50%;
    background:var(--purple);color:var(--white);
    display:flex;align-items:center;justify-content:center;
    font-size:12px;margin-top:1px;
  }
  @media (max-width:600px){.why-grid{grid-template-columns:1fr;}}
  footer{text-align:center;padding:36px 24px 56px;font-size:13px;color:var(--muted);}

  @media (prefers-reduced-motion: reduce){*{transition:none !important;scroll-behavior:auto !important;}}
  
   .openings{
    background:var(--page);
    padding:72px 24px 96px;
    font-family:"Poppins","Segoe UI",system-ui,sans-serif;
    color:var(--body);
  }

  .openings__inner{max-width:1180px;margin:0 auto}

  /* ---------- Heading ---------- */
  .openings__head{text-align:center;margin-bottom:48px}
  .openings__title{
    font-family:Georgia,"Times New Roman",serif;
    font-size:clamp(28px,4vw,40px);
    letter-spacing:.02em;
    color:var(--ink);
    margin:0 0 10px;
  }
  .openings__title span{color:var(--purple-600)}
  .openings__sub{margin:0;font-size:16px}

  /* ---------- Two column grid ---------- */
  .openings__grid{
    display:grid;
    grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);
    gap:28px;
    align-items:start;
  }

  /* ---------- Shared card ---------- */
  .card{
    background:#fff;
    border:1px solid var(--line);
    border-radius:var(--radius);
    box-shadow:0 8px 28px rgba(87,60,160,.07);
  }

  .card__icon{
    width:44px;height:44px;
    display:grid;place-items:center;
    border-radius:12px;
    background:var(--purple-soft);
    color:var(--purple-600);
    flex:0 0 auto;
  }
  .card__icon svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8}

  .card__title{
    font-family:Georgia,"Times New Roman",serif;
    font-size:20px;
    color:var(--ink);
    margin:0 0 8px;
  }

  /* ---------- LEFT: How to Apply ---------- */
  .apply{padding:32px}
  .apply__top{display:flex;gap:16px;margin-bottom:20px}
  .apply__intro{margin:0;font-size:15px;line-height:1.7;max-width:62ch}

  .apply__label{
    color:var(--purple-600);
    font-weight:600;
    font-size:14px;
    margin:24px 0 12px;
  }

  .apply__list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
  .apply__list li{
    display:flex;gap:10px;align-items:flex-start;
    font-size:15px;line-height:1.5;
  }
  .apply__list svg{
    width:18px;height:18px;flex:0 0 auto;margin-top:2px;
    fill:var(--purple-600);
  }

  .apply__note{
    margin-top:24px;
    padding:14px 16px;
    background:var(--purple-soft);
    border-radius:12px;
    font-size:14px;
    line-height:1.6;
    color:#4c3a7a;
  }
  footer.footer.clearfix.es_footer_hgt {
    height: 10px;
}

  /* ---------- RIGHT: Job card (compact) ---------- */
  .job{padding:24px}
  .job__head{display:flex;gap:14px;align-items:flex-start;margin-bottom:14px}
  .job__title{
    font-family:Georgia,"Times New Roman",serif;
    font-size:17px;color:var(--ink);margin:0 0 8px;
  }
  .job__tag{
    display:inline-block;
    background:var(--purple-soft);
    color:var(--purple-600);
    font-size:12px;font-weight:600;
    padding:5px 10px;border-radius:999px;
  }
  .job__desc{font-size:14px;line-height:1.65;margin:0 0 20px}

  .job__actions{display:grid;gap:10px}
  .btn{
    display:block;text-align:center;text-decoration:none;
    padding:11px 18px;border-radius:10px;
    font-size:14px;font-weight:600;
    transition:background .18s ease,color .18s ease;
  }
  .btn--ghost{border:1px solid var(--line);color:#ffff;background:#412685 !important}
  .btn--ghost:hover{background:var(--purple-soft);border-color:#dcd3f5}
  .btn--solid{background:var(--purple-600);color:#fff;border:1px solid var(--purple-600);background-color:#412685 !important }
  .btn--solid:hover{background:var(--purple)}
  .btn:focus-visible{outline:2px solid var(--purple);outline-offset:2px}

  /* ---------- Responsive ---------- */
  @media (max-width:900px){
    .openings__grid{grid-template-columns:1fr}
    .job{order:-1}           /* job card first on mobile */
    .apply{padding:26px 22px}
  }