
:root{--blue:#233C4B;--blue-deep:#0F2633;--orange:#FF7D2D;--white:#fff;--ink:#152534;--muted:#667584;--line:#E9EEF2;--soft:#F8FAFC;--soft-orange:#FFF0E8;--success:#22B96A;--danger:#E15353;--title-font:"Kanit",system-ui,sans-serif;--body-font:"Open Sans",system-ui,sans-serif;--shadow:0 24px 70px rgba(15,38,51,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:var(--body-font);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}body.is-locked{overflow:hidden}a{text-decoration:none;color:inherit}button,input,textarea{font:inherit}button{cursor:pointer}img,svg{display:block;max-width:100%}.container{width:min(1160px,calc(100% - 72px));margin-inline:auto}.container--form{width:min(1080px,calc(100% - 72px))}.section{padding:clamp(76px,8vw,118px) 0}.site-header{position:absolute;top:0;left:0;right:0;z-index:40;background:transparent}.site-header__inner{width:min(1510px,calc(100% - 112px));margin:0 auto;min-height:118px;display:flex;align-items:center;gap:46px}.brand{display:flex;align-items:center;flex:0 0 auto}.brand img{width:168px;height:auto}.main-nav{margin-left:auto;display:flex;align-items:center;gap:54px;color:#fff}.main-nav a{font-size:1rem;font-weight:700;color:rgba(255,255,255,.92);transition:.2s}.main-nav a:hover,.main-nav a.is-active{color:var(--orange)}.main-nav .appointment-btn{color:#263446;background:#fff;padding:17px 30px;border-radius:999px;box-shadow:0 14px 30px rgba(0,0,0,.12);white-space:nowrap}.main-nav .appointment-btn:hover{color:#263446;transform:translateY(-1px)}.nav-toggle{display:none;margin-left:auto;width:46px;height:46px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(255,255,255,.07);color:#fff;align-items:center;justify-content:center;flex-direction:column;gap:4px}.nav-toggle span{width:18px;height:2px;background:currentColor;border-radius:999px}.hero{position:relative;min-height:clamp(650px,84vh,820px);display:grid;align-items:center;overflow:hidden;background:var(--blue-deep)}.hero__media{position:absolute;inset:0;background-image:url("assets/hero-careers.png");background-size:cover;background-position:center center;z-index:0}.hero__grid{position:relative;z-index:1}.hero__content{max-width:760px;padding:150px 0 98px;color:#fff}.hero__title{font-family:var(--title-font);font-size:clamp(3rem,4.4vw,5.1rem);line-height:1.08;letter-spacing:-.035em;font-weight:600;margin:0;color:#fff}.hero__title span{display:block;color:#fff}.hero__title em{font-style:normal;color:var(--orange)}.hero__subtitle{max-width:650px;margin:28px 0 0;font-size:clamp(1rem,1.24vw,1.17rem);line-height:1.72;font-weight:400;color:rgba(255,255,255,.92)}.scroll-cue{position:absolute;left:50%;bottom:28px;transform:translateX(-50%);z-index:3;width:58px;height:58px;display:grid;place-items:center;border-radius:999px;background:rgba(255,255,255,.94);color:var(--blue-deep);border:1px solid rgba(255,255,255,.38);box-shadow:0 12px 30px rgba(0,0,0,.2);animation:floatCue 1.7s ease-in-out infinite}.scroll-cue svg{width:26px;height:26px;stroke:currentColor;stroke-width:2.4;fill:none;stroke-linecap:round;stroke-linejoin:round}@keyframes floatCue{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,-8px)}}.section-heading{max-width:720px}.section-heading--center{text-align:center;margin-inline:auto}.eyebrow{margin:0 0 9px;color:var(--orange);font-size:.77rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.section-heading h2{font-family:var(--title-font);font-size:clamp(2rem,3vw,3rem);line-height:1.14;letter-spacing:-.035em;margin:0;color:var(--ink);font-weight:600}.section-heading p:not(.eyebrow){margin:12px 0 0;color:var(--muted);font-size:1.02rem}.values{background:#fff}.values__grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:54px}.value-card{min-height:260px;padding:20px 34px;text-align:center;border-right:1px solid var(--line)}.value-card:last-child{border-right:0}.value-card h3,.job-card h3,.form-intro h3{font-family:var(--title-font);font-weight:600;line-height:1.15;margin:20px 0 12px;color:var(--ink)}.value-card h3{font-size:1rem}.value-card p{margin:0;color:#253548;font-size:.92rem;font-weight:500}.icon-box{width:54px;height:54px;display:inline-grid;place-items:center;color:var(--orange);border-radius:16px}.icon-box svg{width:40px;height:40px;stroke:currentColor;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round}.jobs{background:linear-gradient(180deg,#fff 0%,#fbfcfd 100%);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.filters{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:30px 0 40px}.filter-btn{border:1px solid var(--line);background:#fff;color:var(--blue);border-radius:999px;padding:10px 20px;font-size:.84rem;font-weight:700;box-shadow:0 10px 24px rgba(15,38,51,.04);transition:.2s}.filter-btn:hover{transform:translateY(-2px);border-color:rgba(255,125,45,.5)}.filter-btn.is-active{background:var(--blue-deep);color:#fff;border-color:var(--blue-deep)}.jobs__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.jobs__empty{text-align:center;color:var(--muted);font-weight:700}.job-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:22px 24px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px rgba(15,38,51,.04);transition:.2s}.job-card:hover{transform:translateY(-3px);border-color:rgba(255,125,45,.35);box-shadow:0 20px 44px rgba(15,38,51,.08)}.job-card__icon{width:56px;height:56px;display:grid;place-items:center;border-radius:999px;background:var(--soft-orange);color:#FF7D2D}.job-card__icon svg{width:27px;height:27px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}.job-card h3{font-size:1.15rem;margin:0 0 4px}.job-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:var(--muted);font-size:.85rem;font-weight:700}.dot-separator{width:4px;height:4px;background:#b9c2ca;border-radius:999px}.job-card__actions{display:grid;gap:11px;justify-items:end}.status-badge{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;font-size:.69rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase}.status-badge::before{content:"";width:8px;height:8px;border-radius:999px;animation:pulse 1.3s ease-in-out infinite}.status-badge.is-open{color:#128950;background:#EAF9F1}.status-badge.is-open::before{background:var(--success)}.status-badge.is-closed{color:#B53B3B;background:#FFF0F0}.status-badge.is-closed::before{background:var(--danger)}@keyframes pulse{70%{box-shadow:0 0 0 8px rgba(34,185,106,0)}100%{box-shadow:0 0 0 0 rgba(34,185,106,0)}}.text-btn{border:0;background:transparent;color:var(--blue);font-size:.8rem;font-weight:800;padding:0;display:inline-flex;gap:8px;align-items:center}.text-btn:hover{color:var(--orange)}.apply{background:#fff}.application-form{margin-top:42px;background:#fff;border-radius:22px}.form-intro{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:26px}.form-intro h3{font-size:1.45rem;margin:0 0 6px}.form-intro p{margin:0;color:var(--muted);font-size:.86rem}.selected-role{min-width:260px;border:1px solid var(--line);background:var(--soft);color:var(--blue);border-radius:999px;padding:11px 16px;text-align:center;font-size:.84rem;font-weight:800}.selected-role.is-active{background:var(--blue-deep);color:#fff;border-color:var(--blue-deep)}.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.form-grid label,.textarea-label,.contract-options{display:grid;gap:7px;color:var(--ink);font-size:.82rem;font-weight:800}.form-grid label{grid-column:span 2}.form-grid .span-2{grid-column:span 2}.form-grid label span,.textarea-label span,.contract-options legend span,.required-star{color:var(--orange)}input[type=text],input[type=email],input[type=tel],input[type=url],textarea{width:100%;border:1px solid #DDE5EA;background:#fff;color:var(--ink);border-radius:7px;padding:13px 14px;outline:none;transition:.2s}textarea{min-height:128px;resize:vertical}input:focus,textarea:focus{border-color:var(--orange);box-shadow:0 0 0 4px rgba(255,125,45,.12)}.file-label{position:relative;align-content:start}.file-label input[type=file]{position:absolute;opacity:0;pointer-events:none}.file-button{width:max-content;display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 18px;background:var(--orange);color:#fff!important;border-radius:999px;font-size:.8rem;font-weight:800}.file-name{color:var(--muted)!important;font-weight:600;font-size:.8rem}.dynamic-questions{display:grid;gap:16px;margin-top:16px}.textarea-label{margin-top:16px}.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}.btn{border:0;min-height:48px;padding:0 26px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800;font-size:.88rem;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn--primary{background:var(--orange);color:#fff;box-shadow:0 14px 28px rgba(255,125,45,.23)}.btn:disabled,.btn.is-disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.submit-btn{margin:28px auto 0;min-width:270px;display:flex}.form-message{min-height:24px;text-align:center;font-weight:700;margin:18px 0 0}.form-message.is-success{color:#14834f}.form-message.is-error{color:#b53b3b}.open-application{padding:36px 0 80px}.open-application__card{position:relative;overflow:hidden;display:grid;grid-template-columns:1fr 1.65fr;gap:56px;align-items:center;background:var(--blue-deep);color:#fff;border-radius:12px;padding:clamp(44px,5.5vw,72px) clamp(44px,6vw,82px);min-height:240px;box-shadow:var(--shadow)}.open-application__card::after{content:"";position:absolute;right:38px;bottom:20px;width:240px;height:160px;opacity:.32;background-image:radial-gradient(rgba(255,255,255,.35) 1px,transparent 1px);background-size:16px 16px}.open-application h2{font-family:var(--title-font);font-size:clamp(2rem,3.5vw,3.3rem);line-height:1.06;letter-spacing:-.035em;margin:0;color:#fff;font-weight:600}.open-application p:not(.eyebrow){margin:0 0 22px;color:rgba(255,255,255,.9);font-size:1.02rem;font-weight:600}.open-application .eyebrow{color:var(--orange)}.perks{padding-top:88px;border-top:1px solid var(--line)}.perks__layout{display:grid;grid-template-columns:.78fr 1.35fr;gap:50px;align-items:center}.perks__grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}.perk{display:grid;gap:12px;justify-items:center;text-align:center;color:var(--ink);font-weight:700;font-size:.8rem}.perk .icon-box svg{width:31px;height:31px}.modal{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:24px}.modal.is-open{display:flex}.modal__backdrop{position:absolute;inset:0;background:rgba(15,38,51,.66);backdrop-filter:blur(8px)}.modal__panel{position:relative;width:min(720px,100%);max-height:min(84vh,840px);overflow:auto;background:#fff;border-radius:22px;padding:clamp(28px,4vw,48px);box-shadow:0 30px 80px rgba(0,0,0,.25)}.modal__panel--wide{width:min(1040px,100%)}.modal__close{position:sticky;top:0;margin-left:auto;z-index:2;width:42px;height:42px;border:1px solid var(--line);background:#fff;border-radius:999px;color:var(--blue);display:grid;place-items:center}.modal__close svg{width:20px;height:20px;stroke:currentColor;stroke-width:2.3;fill:none;stroke-linecap:round}.modal__job-dept{margin:0 0 8px;color:var(--muted);font-weight:800}.modal__title-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:28px}.modal__title-row h2{font-family:var(--title-font);font-size:clamp(2rem,4vw,3rem);line-height:1.05;margin:0}.modal__section{margin-top:26px}.modal__section h3{font-family:var(--title-font);font-size:1rem;letter-spacing:.08em;text-transform:uppercase;color:var(--orange);margin:0 0 10px}.modal__section p,.modal__section li{color:var(--ink);font-weight:500}.modal__section ul{padding-left:20px;margin:0}.modal__section li+li{margin-top:8px}.application-form--modal{margin-top:24px}.contract-options{margin:20px 0 0;border:0;padding:0;display:flex;flex-wrap:wrap;gap:12px}.contract-options legend{flex-basis:100%;margin-bottom:2px}.contract-options label{position:relative}.contract-options input{position:absolute;opacity:0}.contract-options label span{display:inline-flex;min-height:42px;align-items:center;border:1px solid var(--line);border-radius:999px;padding:0 18px;color:var(--blue);background:#fff;font-weight:800}.contract-options input:checked+span{background:var(--blue-deep);color:#fff;border-color:var(--blue-deep)}@media(max-width:1100px){.site-header__inner{width:min(100% - 40px,1160px);gap:24px}.main-nav{gap:24px}.hero__title{font-size:clamp(2.7rem,5.6vw,4.4rem)}.values__grid{grid-template-columns:repeat(2,1fr);gap:22px}.value-card{border:1px solid var(--line);border-radius:16px;min-height:auto}.jobs__grid{grid-template-columns:1fr}.perks__layout{grid-template-columns:1fr}.perks__grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.container,.container--form{width:min(100% - 32px,1120px)}.site-header__inner{min-height:84px}.brand img{width:138px}.nav-toggle{display:inline-flex}.main-nav{position:absolute;top:calc(100% + 8px);left:16px;right:16px;margin:0;display:none;flex-direction:column;align-items:flex-start;gap:16px;padding:20px;border-radius:18px;background:rgba(15,38,51,.96);box-shadow:0 20px 50px rgba(0,0,0,.22)}.site-header.is-open .main-nav{display:flex}.main-nav .appointment-btn{padding:13px 20px}.section{padding:66px 0}.hero{min-height:680px}.hero__media{background-position:64% center}.hero__content{padding:128px 0 112px}.hero__title{font-size:clamp(2.25rem,9.4vw,3.15rem)}.hero__subtitle{font-size:.95rem}.hero__subtitle br{display:none}.values__grid{grid-template-columns:1fr;margin-top:34px}.value-card{padding:30px 24px}.filters{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:8px}.filter-btn{white-space:nowrap}.job-card{grid-template-columns:auto 1fr}.job-card__actions{grid-column:1/-1;width:100%;grid-template-columns:1fr auto;align-items:center;justify-items:start;border-top:1px solid var(--line);padding-top:16px}.form-intro{flex-direction:column}.selected-role{min-width:0;width:100%}.form-grid{grid-template-columns:1fr}.form-grid label,.form-grid .span-2{grid-column:span 1}.open-application{padding-bottom:58px}.open-application__card{grid-template-columns:1fr;gap:26px;padding:34px 26px;min-height:0}.open-application h2{font-size:2.1rem}.perks{padding-top:64px}.perks__grid{grid-template-columns:repeat(2,1fr)}.modal{padding:14px;align-items:flex-end}.modal__panel{max-height:88vh;border-radius:20px 20px 0 0;padding:22px}.submit-btn{width:100%;min-width:0}}@media(max-width:460px){.perks__grid{grid-template-columns:1fr}.job-card{padding:20px}.contract-options label{width:100%}.contract-options label span{width:100%;justify-content:center}}


/* Refinements requested: cleaner job action buttons, visible modal close, asset-based job icons. */
.job-card__actions .text-btn [data-read-more] {
  min-height: 34px;
  border: 0px solid rgba(35, 60, 75, 0.12);
  border-radius: 999px;
  background: #fff;
  color: var(--blue);
  box-shadow: 0 6px 16px rgba(15, 38, 51, 0.04);
  transition: transform .18s ease, background .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.job-card__actions .text-btn[data-apply] {
  min-height: 34px;
  padding: 0 13px;
  border: 0px solid rgba(35, 60, 75, 0.12);
  border-radius: 14px;
  background: #FF7D2D;
  color:  #FFFFFF;
  box-shadow: 0 6px 16px rgba(15, 38, 51, 0.04);
  transition: transform .18s ease, background .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease;
}


.job-card__actions .text-btn span {
  display: inline-block;
  transition: transform .18s ease;
}

.job-card__actions .text-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 26px rgba(15, 38, 51, 0.10);
}

.job-card__actions .text-btn:hover span {
  transform: translateX(2px);
}

.job-card__actions .text-btn[data-read-more]:hover {
   background: var(--blue-deep);
   border-color: var(--blue-deep);
   color: #FFFFFF;
   padding: 4px 10px 4px 10px;
}

.job-card__actions .text-btn[data-apply]:hover {
  background: var(--orange);
  border-color: var(--orange);
  color: #fff;
}

.job-card__icon img {
  width: 24px;
  height: 24px;
  object-fit: contain;
  display: block;
}

.modal__panel {
  padding-top: clamp(52px, 5vw, 66px);
}

.modal__close {
  position: absolute !important;
  top: 18px !important;
  right: 18px !important;
  margin-left: 0 !important;
  z-index: 20 !important;
  width: 44px;
  height: 44px;
  min-height: 44px;
  padding: 0;
  border: 1px solid rgba(35, 60, 75, 0.12);
  background: #fff;
  color: var(--blue);
  border-radius: 999px;
  box-shadow: 0 12px 26px rgba(15, 38, 51, 0.12);
  display: grid !important;
  place-items: center;
  opacity: 1 !important;
  visibility: visible !important;
  transition: transform .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.modal__close:hover {
  transform: rotate(90deg);
  color: var(--orange);
  border-color: rgba(255, 125, 45, 0.35);
  box-shadow: 0 16px 34px rgba(15, 38, 51, 0.16);
}

.modal__close svg {
  width: 20px;
  height: 20px;
  display: block;
  pointer-events: none;
}


/* Fix: open application modal must always appear above the WordPress header. */
.modal {
  z-index: 10050 !important;
}

#openModal .modal__panel {
  position: relative;
  padding-top: clamp(52px, 5vw, 66px);
}

/* Fix mobile click on Send Your Application banner */
.open-application__card::after {
  pointer-events: none !important;
  z-index: 0;
}

.open-application__left,
.open-application__right {
  position: relative;
  z-index: 2;
}

#openApplicationBtn {
  position: relative;
  z-index: 5;
  pointer-events: auto;
  touch-action: manipulation;
}

/* Make sure the open application modal is always above the WordPress header */
#openModal.modal {
  z-index: 10050 !important;
}

#openModal.modal.is-open {
  display: flex !important;
}

#openModal .modal__backdrop {
  z-index: 0;
}

#openModal .modal__panel {
  position: relative;
  z-index: 1;
}

/* HERO RESPONSIVE FIX — keep desktop clean, fix mobile title */
.hero__content {
  width: min(760px, 100%);
}

.hero__title {
  width: min(760px, 100%);
  color: #ffffff !important;
}

.hero__title span {
  display: block;
}

.hero__title em {
  color: var(--orange) !important;
  font-style: normal;
}

/* Mobile hero correction */
@media (max-width: 760px) {
  .hero {
    min-height: 575px !important;
    height: auto !important;
    align-items: center !important;
  }

  .hero .container,
  .hero__grid {
    width: min(100% - 34px, 1120px) !important;
  }

  .hero__content {
    width: 100% !important;
    max-width: 350px !important;
    padding: 92px 0 88px !important;
    
  }

  .hero__title {
    width: 100% !important;
    max-width: 350px !important;
    font-size: clamp(1.95rem, 7.25vw, 2.35rem) !important;
    line-height: 1.12 !important;
    letter-spacing: -0.035em !important;
  }

  .hero__title span {
    display: block !important;
  }

  .hero__title em {
    color: var(--orange) !important;
    font-style: normal !important;
    white-space: nowrap !important;
  }

  .hero__subtitle {
    max-width: 340px !important;
    margin-top: 22px !important;
    font-size: 0.94rem !important;
    line-height: 1.55 !important;
    
  }

  .hero__subtitle br {
    display: none !important;
  }

  .hero__media {
    background-position: 76% center !important;
    background-size: cover !important;
    opacity: 1 !important;
  }

  .scroll-cue {
    width: 58px !important;
    height: 58px !important;
    bottom: 26px !important;
  }
}

/* Smaller phones */
@media (max-width: 430px) {
  .hero {
    min-height: 455px !important;
  }

  .hero__content {
    max-width: 335px !important;
    padding-top: 86px !important;
    padding-bottom: 82px !important;
  }

  .hero__title {
    max-width: 335px !important;
    font-size: clamp(1.82rem, 7vw, 2.18rem) !important;
  }

  .hero__subtitle {
    max-width: 325px !important;
    font-size: 0.9rem !important;
  }

  .hero__media {
    background-position: 63% center !important;
  }
}
