/* ============================================================
   Mareana Careers — tokens from the Mareana Design System
   ============================================================ */
:root{
  --n-50:#F8FAFC; --n-100:#F0F3F7; --n-200:#E2E6ED; --n-300:#C9CFD9;
  --n-400:#9BA3B2; --n-500:#6E7787; --n-600:#4A5161; --n-700:#333A47;
  --n-800:#232830; --n-900:#1A1B1B; --n-950:#111214;

  --primary:#4361EE; --primary-deep:#5A1BEE;
  --accent:#41EAD4; --accent-2:#4CC9F0;

  --gradient-primary:linear-gradient(135deg,#4361EE,#5A1BEE);
  --gradient-accent:linear-gradient(135deg,#41EAD4,#4CC9F0);
  --gradient-section-light:linear-gradient(180deg,#F8FAFC,#F0F3F7);

  --font:'Poppins','Roboto','Arial',sans-serif;
  --display-xl:clamp(2.5rem,5vw + 1rem,4.5rem);
  --display-lg:clamp(2.125rem,4vw + .75rem,3.5rem);
  --h1:clamp(1.75rem,3vw + .5rem,2.5rem);
  --body-lg:clamp(1.0625rem,.5vw + 1rem,1.125rem);

  --container:1200px;
  --container-pad:clamp(1.25rem,3vw + .5rem,4rem);
  --section-pad:clamp(4rem,8vw + 1rem,9rem);

  --r-md:8px; --r-lg:12px; --r-xl:16px; --r-2xl:24px; --r-full:9999px;

  --shadow-sm:0 2px 4px rgba(51,58,71,.06),0 1px 2px rgba(51,58,71,.04);
  --shadow-md:0 4px 12px rgba(51,58,71,.08),0 2px 4px rgba(51,58,71,.04);
  --shadow-lg:0 8px 24px rgba(51,58,71,.10),0 4px 8px rgba(51,58,71,.05);
  --shadow-xl:0 16px 48px rgba(51,58,71,.12),0 8px 16px rgba(51,58,71,.06);

  --ease-out:cubic-bezier(0,0,.58,1);
  --ease-default:cubic-bezier(.25,.1,.25,1);
}

.mc-page *,.mc-page *::before,.mc-page *::after{box-sizing:border-box;}
.mc-page{font-family:var(--font);font-size:1rem;line-height:1.6;color:var(--n-600);}
.mc-page h1,.mc-page h2{color:var(--n-700);margin:0 0 .5em;line-height:1.2;letter-spacing:-.015em;}
.mc-page p{margin:0 0 1.5em;}
.mc-page p:last-child{margin-bottom:0;}
.mc-page img{display:block;max-width:100%;}

.container{max-width:var(--container);margin-inline:auto;padding-inline:var(--container-pad);}
.container--narrow{max-width:960px;}
.mc-page section{padding-block:var(--section-pad);}

.overline{
  font-size:.6875rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:var(--primary);margin:0 0 20px;display:flex;align-items:center;gap:10px;
}
.overline::before{content:"";width:28px;height:2px;border-radius:2px;background:var(--gradient-accent);flex:none;}
.lead{font-size:var(--body-lg);color:var(--n-600);}

/* ---------- Button ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--font);font-weight:600;font-size:1.125rem;line-height:1;
  min-height:56px;padding:16px 32px;border-radius:var(--r-2xl);
  border:0;cursor:pointer;text-decoration:none;color:#fff;
  background:var(--gradient-primary);background-size:160% 160%;
  box-shadow:0 8px 24px rgba(67,97,238,.28);
  transition:transform .2s var(--ease-default),box-shadow .2s var(--ease-default),background-position .2s var(--ease-default);
}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(67,97,238,.38);background-position:100% 50%;}
.btn:active{transform:translateY(0);box-shadow:0 4px 12px rgba(67,97,238,.28);}
.btn svg{flex:none;}
.btn-no-hover-text:hover {color:#fff;}
.mc-page a:focus-visible,.mc-page button:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:var(--r-md);}
.mc-page .hero a:focus-visible,.cta a:focus-visible{outline-color:var(--accent);}

/* ---------- Hero ---------- */
.mc-page .hero{
  position:relative;overflow:hidden;isolation:isolate;background:var(--n-900);
  min-height:min(88vh,860px);display:grid;place-items:center;text-align:center;
  padding-block:clamp(6rem,12vw + 2rem,11rem);
}
.mc-page .hero::before{
  content:"";position:absolute;inset:-20% -10% auto -10%;height:130%;z-index:-2;
  background:
    radial-gradient(ellipse 60% 55% at 50% 0%,rgba(90,27,238,.45) 0%,rgba(67,97,238,.18) 45%,transparent 75%),
    radial-gradient(ellipse 45% 40% at 85% 30%,rgba(65,234,212,.16) 0%,transparent 70%),
    radial-gradient(ellipse 40% 40% at 12% 75%,rgba(67,97,238,.14) 0%,transparent 70%);
  animation:drift 18s ease-in-out infinite alternate;
}
.mc-page .hero::after{
  content:"";position:absolute;inset:0;z-index:-1;opacity:.55;pointer-events:none;
  /* Seamlessly tiling contour field: each wave leaves the tile at x=800 with the
     same slope it enters at x=0, and the 50px vertical period divides the 800px
     tile, so neither edge shows a break when the pattern repeats. */
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='800' height='800' viewBox='0 0 800 800'%3E%3Cg fill='none' stroke='%2341EAD4' stroke-width='1.2' opacity='0.12'%3E%3Cpath d='M0 -50C100 -80 300 -80 400 -50S700 -20 800 -50'/%3E%3Cpath d='M0 0C100 -30 300 -30 400 0S700 30 800 0'/%3E%3Cpath d='M0 50C100 20 300 20 400 50S700 80 800 50'/%3E%3Cpath d='M0 100C100 70 300 70 400 100S700 130 800 100'/%3E%3Cpath d='M0 150C100 120 300 120 400 150S700 180 800 150'/%3E%3Cpath d='M0 200C100 170 300 170 400 200S700 230 800 200'/%3E%3Cpath d='M0 250C100 220 300 220 400 250S700 280 800 250'/%3E%3Cpath d='M0 300C100 270 300 270 400 300S700 330 800 300'/%3E%3Cpath d='M0 350C100 320 300 320 400 350S700 380 800 350'/%3E%3Cpath d='M0 400C100 370 300 370 400 400S700 430 800 400'/%3E%3Cpath d='M0 450C100 420 300 420 400 450S700 480 800 450'/%3E%3Cpath d='M0 500C100 470 300 470 400 500S700 530 800 500'/%3E%3Cpath d='M0 550C100 520 300 520 400 550S700 580 800 550'/%3E%3Cpath d='M0 600C100 570 300 570 400 600S700 630 800 600'/%3E%3Cpath d='M0 650C100 620 300 620 400 650S700 680 800 650'/%3E%3Cpath d='M0 700C100 670 300 670 400 700S700 730 800 700'/%3E%3Cpath d='M0 750C100 720 300 720 400 750S700 780 800 750'/%3E%3Cpath d='M0 800C100 770 300 770 400 800S700 830 800 800'/%3E%3Cpath d='M0 850C100 820 300 820 400 850S700 880 800 850'/%3E%3C/g%3E%3C/svg%3E");
  background-size:1200px 1200px;
  mask-image:linear-gradient(180deg,transparent,#000 25%,#000 75%,transparent);
  -webkit-mask-image:linear-gradient(180deg,transparent,#000 25%,#000 75%,transparent);
}
@keyframes drift{
  0%{transform:translate3d(0,0,0) scale(1);}
  100%{transform:translate3d(0,-3%,0) scale(1.06);}
}
.mc-page .hero h1{
  font-size:clamp(2rem,4.4vw,3.75rem);font-weight:700;letter-spacing:-.02em;line-height:1.12;
  color:#fff;max-width:none;margin:0 auto;
}
.mc-page .hero h1 .line{display:block;}
.mc-page .hero h1 .grad{
  background:var(--gradient-accent);
  -webkit-background-clip:text;background-clip:text;color:transparent;
  /* background-clip:text paints only inside the box, so descenders (g, y) would be
     cut off at the baseline box. Extend the box down and pull the layout back. */
  padding-bottom:.18em;margin-bottom:-.18em;
}
/* Lock the headline to exactly two lines from tablet up */
@media(min-width:768px){
  .mc-page .hero h1 .line{white-space:nowrap;}
}
.mc-page .hero__sub{
  font-size:clamp(1.0625rem,1vw + .9rem,1.375rem);font-weight:300;line-height:1.5;
  color:var(--n-300);max-width:46ch;margin:28px auto 28px;
}
.mc-page .hero .btn{margin-top:48px;}

/* ---------- Light sections ---------- */
.section--light{background:var(--gradient-section-light);}
.section--dots{position:relative;isolation:isolate;}
.section--dots::before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background-image:radial-gradient(circle,rgba(67,97,238,.14) 1px,transparent 1px);
  background-size:26px 26px;
  mask-image:radial-gradient(ellipse 70% 60% at 50% 50%,#000,transparent 75%);
  -webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 50%,#000,transparent 75%);
}

.split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2.5rem,5vw,5rem);align-items:start;}
@media(max-width:900px){.split{grid-template-columns:1fr;gap:2rem;}}
.split h2{font-size:var(--h1);font-weight:700;}
.split__sticky{position:sticky;top:56px;}
@media(max-width:900px){.split__sticky{position:static;}}
.split__body p{font-size:var(--body-lg);}

/* ---------- Mission (dark band) ---------- */
.mission{position:relative;overflow:hidden;isolation:isolate;background:var(--n-950);color:var(--n-300);}
.mission::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:
    radial-gradient(ellipse 55% 70% at 15% 20%,rgba(90,27,238,.42) 0%,transparent 65%),
    radial-gradient(ellipse 50% 60% at 85% 85%,rgba(65,234,212,.18) 0%,transparent 65%);
}
.mission .overline{color:var(--accent);}
.mission .overline::before{background:var(--accent);}
.mission h2{
  color:#fff;font-size:var(--display-lg);font-weight:700;letter-spacing:-.02em;
  line-height:1.15;max-width:22ch;margin-bottom:32px;
}
.mission p{color:var(--n-300);font-size:var(--body-lg);max-width:64ch;}

/* ---------- Why join ---------- */
.why__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:32px;margin-top:56px;}
@media(max-width:900px){.why__grid{grid-template-columns:1fr;gap:24px;}}
.why__block{
  position:relative;overflow:hidden;background:#fff;border:1px solid var(--n-200);
  border-radius:var(--r-2xl);padding:clamp(2rem,3vw,3rem);box-shadow:var(--shadow-sm);
  font-size:var(--body-lg);
  transition:transform .2s var(--ease-default),box-shadow .2s var(--ease-default);
}
.why__block:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);}
.why__block::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:var(--gradient-accent);}
.why__block:last-child::before{background:var(--gradient-primary);}
.why__block h3{
  color:var(--n-700);font-size:clamp(1.25rem,2vw + .25rem,1.5rem);font-weight:600;
  letter-spacing:-.005em;line-height:1.35;margin:0 0 16px;
}

/* ---------- Benefits (dark band) ---------- */
.benefits{position:relative;overflow:hidden;isolation:isolate;background:var(--n-900);color:var(--n-300);}
.benefits::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:
    radial-gradient(ellipse 60% 50% at 80% 0%,rgba(67,97,238,.30) 0%,transparent 65%),
    radial-gradient(ellipse 50% 55% at 10% 90%,rgba(65,234,212,.14) 0%,transparent 65%);
}
.benefits .overline{color:var(--accent);}
.benefits .overline::before{background:var(--accent);}
.benefits h2{color:#fff;font-size:var(--h1);font-weight:700;}
.benefits__intro{color:var(--n-300);font-size:var(--body-lg);max-width:62ch;}

/* Location switch */
.benefits__tabs{
  display:inline-flex;gap:4px;margin-top:32px;padding:5px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
  border-radius:var(--r-full);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
}
.benefits__tab{
  font-family:var(--font);font-size:.9375rem;font-weight:600;line-height:1;
  padding:12px 24px;border:0;border-radius:var(--r-full);cursor:pointer;
  background:transparent;color:var(--n-400);
  transition:color .2s var(--ease-default),background-color .2s var(--ease-default);
}
.benefits__tab:hover{color:var(--n-100);}
.benefits__tab[aria-selected="true"]{
  background:var(--gradient-primary);color:#fff;box-shadow:0 4px 14px rgba(67,97,238,.35);
}
.benefits__tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}
.benefits__panel[hidden]{display:none;}
.benefits__panel{animation:panel-in .35s var(--ease-out) both;}
@keyframes panel-in{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}
@media(prefers-reduced-motion:reduce){.benefits__panel{animation:none;}}

/* Uneven card heights sit better in balanced columns than in a rigid grid. */
.benefits__grid{margin-top:56px;columns:3;column-gap:24px;}
@media(max-width:1024px){.benefits__grid{columns:2;}}
@media(max-width:700px){.benefits__grid{columns:1;}}

.benefit-card{
  break-inside:avoid;margin:0 0 24px;padding:28px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);
  border-radius:var(--r-xl);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
  transition:border-color .2s var(--ease-default),box-shadow .2s var(--ease-default);
}
.benefit-card:hover{border-color:rgba(65,234,212,.30);box-shadow:0 0 24px rgba(65,234,212,.10);}
.benefit-card__head{display:flex;align-items:center;gap:12px;margin-bottom:20px;}
.benefit-card__icon{
  width:40px;height:40px;border-radius:var(--r-lg);flex:none;
  display:grid;place-items:center;color:var(--accent);
  background:rgba(65,234,212,.10);border:1px solid rgba(65,234,212,.18);
}
.benefit-card h3{
  color:#fff;font-size:1.0625rem;font-weight:600;line-height:1.35;margin:0;letter-spacing:0;
}
.benefit-card ul{list-style:none;margin:0;padding:0;display:grid;gap:16px;}
.benefit-card ul ul{margin-top:8px;gap:6px;}
.benefit-card__label{
  display:block;color:#fff;font-size:.9375rem;font-weight:600;line-height:1.4;margin-bottom:4px;
}
.benefit-card__desc{display:block;color:var(--n-400);font-size:.875rem;line-height:1.5;}
.benefit-card__sub li{
  color:var(--n-400);font-size:.8125rem;line-height:1.5;
  padding-left:14px;position:relative;
}
.benefit-card__sub li::before{
  content:"";position:absolute;left:0;top:.6em;
  width:6px;height:1px;background:var(--accent);opacity:.7;
}
/* Plain list of benefits, for locations documented as single lines rather than
   label + description pairs. */
.benefit-card__plain li{
  color:var(--n-300);font-size:.9375rem;line-height:1.55;
  padding-left:18px;position:relative;
}
.benefit-card__plain li::before{
  content:"";position:absolute;left:0;top:.62em;
  width:8px;height:1px;background:var(--accent);opacity:.8;
}

/* ---------- Gallery ---------- */
.gallery{margin-top:56px;display:grid;grid-template-columns:repeat(6,1fr);gap:20px;}
.gallery figure{
  position:relative;margin:0;overflow:hidden;border-radius:var(--r-xl);
  grid-column:span 2;aspect-ratio:4/3;background:var(--n-200);
  box-shadow:var(--shadow-sm);cursor:zoom-in;
  transition:transform .3s var(--ease-default),box-shadow .3s var(--ease-default);
}
.gallery figure:hover{transform:translateY(-3px);box-shadow:var(--shadow-xl);}
.gallery figure.wide{grid-column:span 3;aspect-ratio:16/9;}
.gallery img{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--ease-default);}
.gallery figure:hover img{transform:scale(1.04);}
.gallery figcaption{
  position:absolute;inset:auto 0 0 0;padding:56px 20px 18px;
  background:linear-gradient(180deg,transparent,rgba(26,27,27,.85));
  color:#fff;font-size:.875rem;font-weight:500;letter-spacing:.01em;
  transform:translateY(6px);opacity:0;transition:all .3s var(--ease-default);
}
.gallery figure:hover figcaption,.gallery figure:focus-visible figcaption{transform:translateY(0);opacity:1;}
@media(max-width:900px){
  .gallery{grid-template-columns:repeat(4,1fr);gap:16px;}
  .gallery figure.wide{grid-column:span 4;}
  .gallery figcaption{opacity:1;transform:none;}
}
@media(max-width:560px){
  .gallery{grid-template-columns:1fr;}
  .gallery figure,.gallery figure.wide{grid-column:span 1;aspect-ratio:4/3;}
}

/* Lightbox */
.lightbox{
  position:fixed;inset:0;z-index:50;display:none;place-items:center;
  padding:clamp(1rem,4vw,3rem);background:rgba(17,18,20,.92);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
}
.lightbox.is-open{display:grid;}
.lightbox img{
  max-width:min(1200px,84vw);max-height:80vh;width:auto;object-fit:contain;
  border-radius:var(--r-xl);box-shadow:0 24px 64px rgba(0,0,0,.6);
}
.lightbox__cap{margin-top:20px;color:var(--n-300);font-size:.9375rem;text-align:center;}
.lightbox__btn{
  position:absolute;display:grid;place-items:center;width:48px;height:48px;
  border-radius:var(--r-full);cursor:pointer;color:#fff;
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);
  transition:background .2s var(--ease-default);
}
.lightbox__btn:hover{background:rgba(255,255,255,.18);}
.lightbox__close{top:clamp(1rem,3vw,2rem);right:clamp(1rem,3vw,2rem);}
.lightbox__prev,.lightbox__next{top:50%;transform:translateY(-50%);}
.lightbox__prev{left:clamp(.5rem,2vw,2rem);}
.lightbox__next{right:clamp(.5rem,2vw,2rem);}

/* ---------- Closing CTA ---------- */
.cta{
  position:relative;overflow:hidden;isolation:isolate;text-align:center;
  background:var(--n-900);padding-block:clamp(4rem,7vw,7rem);
}
.cta::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:
    radial-gradient(ellipse 60% 90% at 50% 110%,rgba(65,234,212,.22) 0%,transparent 60%),
    radial-gradient(ellipse 70% 80% at 50% -20%,rgba(90,27,238,.40) 0%,transparent 65%);
}
.cta h2{color:#fff;font-size:var(--h1);font-weight:700;max-width:20ch;margin:0 auto 28px;}
.cta .btn{margin-top:40px;}

/* ---------- Scroll reveal ---------- */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out);}
.reveal.is-visible{opacity:1;transform:none;}
.reveal-stagger>*{opacity:0;transform:translateY(16px);transition:opacity .5s var(--ease-out),transform .5s var(--ease-out);}
.reveal-stagger.is-visible>*{opacity:1;transform:none;}
.reveal-stagger.is-visible>*:nth-child(2){transition-delay:75ms;}
.reveal-stagger.is-visible>*:nth-child(3){transition-delay:150ms;}
.reveal-stagger.is-visible>*:nth-child(4){transition-delay:225ms;}
.reveal-stagger.is-visible>*:nth-child(5){transition-delay:300ms;}
.reveal-stagger.is-visible>*:nth-child(6){transition-delay:375ms;}
.reveal-stagger.is-visible>*:nth-child(7){transition-delay:420ms;}
.reveal-stagger.is-visible>*:nth-child(8){transition-delay:460ms;}
.reveal-stagger.is-visible>*:nth-child(9){transition-delay:500ms;}
.reveal-stagger.is-visible>*:nth-child(10){transition-delay:540ms;}
.reveal-stagger.is-visible>*:nth-child(11){transition-delay:580ms;}
.reveal-stagger.is-visible>*:nth-child(12){transition-delay:620ms;}
.reveal-stagger.is-visible>*:nth-child(n+13){transition-delay:660ms;}

@media(prefers-reduced-motion:reduce){
  .mc-page *,.mc-page *::before,.mc-page *::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;}
  .reveal,.reveal-stagger>*{opacity:1;transform:none;}
}
.apply__widget{
	margin-top: 56px;
}
.apply__intro{margin:16px auto 0;max-width:56ch;}
.apply__widget .embed_jobs_head{
  border-radius:var(--r-2xl);
  box-shadow:var(--shadow-sm);
}
.apply__widget .embed_jobs_with_style_3 .rec_facet_group{
	max-height: 500px;
	font-family: "Poppins", "Roboto", "Arial", sans-serif !important;
}
.apply__widget .embed_jobs_head2{
	width: 100%;
}
.apply__widget .embed_jobs_with_style_3 .rec-group .rec-job-info{
	margin-bottom: 10px;
}
.apply__widget .embed_jobs_head3, .apply__widget .embed_jobs_with_style_3 .rec-group .rec-job-info{
	font-family: "Poppins", "Roboto", "Arial", sans-serif !important;
}
.apply__widget .cw-facet-checkbox + span::before {
  box-shadow: inset 0 0 0 2px #285cc3;
}
.apply__widget .cw-facet-checkbox + span::after{
	color: #fff;
}
.apply__widget .embed_jobs_with_style_3 .rec-group .zrsite_Location{
	margin-top: 10px;
	font-weight: 600;
}
.apply__widget .rec-what-where .rec-job-info {
  border: 1px solid #d6d6d6;
}
#exitIntentPopup{
display: none !important;
}
@media(max-width:600px){
  	.apply__widget{}
  	.apply__widget .embed_jobs_with_style_3 .rec-group .rec-job-info{display: block !important;}
  	.apply__widget .embed_jobs_with_style_3 .rec-group .rec-job-info .zr_fillayout_info{width: 100%;margin-bottom: 20px;}
	.apply__widget .embed_jobs_with_style_3 .rec-group .rec-job-info .zrsite_Date_Opened{width: 100%;align-items: start;}
	.apply__widget .embed_jobs_with_style_3 .rec_filter_cls{display: none;}
.lightbox__close{top: 90px;}
}
@media(max-width:1024px){
.lightbox__close{top: 90px;}
}