
:root{
  --teal:#157A80; --teal-bright:#01999E; --coral:#FD653C; --sage:#80A68B;
  --ink:#23303a; --muted:#5f6c75; --cream:#FBF7EF; --line:#e7e2d6; --white:#ffffff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  color:var(--ink);line-height:1.6;background:var(--white);font-size:18px}
a{color:var(--teal);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
h1,h2,h3{line-height:1.2;color:var(--teal);margin:0 0 .5em}
h1{font-size:2.4rem}h2{font-size:1.7rem}h3{font-size:1.2rem;color:var(--sage)}
p{margin:0 0 1em}
.lead{font-size:1.2rem;color:var(--muted)}
/* header */
header.site{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);
  backdrop-filter:blur(6px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0}
.nav img{height:64px;width:auto;display:block}
.nav .links{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.nav .links a{color:var(--ink);font-weight:500;font-size:.97rem}
.nav .links a.active{color:var(--teal)}
.btn{display:inline-block;background:var(--coral);color:#fff !important;font-weight:600;
  padding:11px 20px;border-radius:30px;border:none;cursor:pointer;text-decoration:none !important;
  transition:transform .08s ease,filter .15s ease;font-size:1rem}
.btn:hover{filter:brightness(1.05);transform:translateY(-1px)}
.btn.ghost{background:transparent;color:var(--teal) !important;border:2px solid var(--teal);padding:9px 18px}
.btn.small{padding:8px 16px;font-size:.92rem}
.menu-toggle{display:none;background:none;border:0;font-size:1.6rem;color:var(--teal);cursor:pointer}
/* sections */
section{padding:64px 0}
section.alt{background:var(--cream)}
.center{text-align:center}
.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;font-weight:700;color:var(--teal-bright);margin-bottom:.4em}
.hero{padding:72px 0 56px}
.hero .lead{max-width:680px}
.cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:18px}
.cards{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}
.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px}
.card h3{color:var(--teal)}
.pillars,.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:24px}
.pillar,.step{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px}
.tier{text-align:center}
.tier-ic{width:60px;height:60px;display:block;margin:0 auto 10px}
.step .n{display:inline-flex;width:34px;height:34px;border-radius:50%;background:var(--teal);
  color:#fff;align-items:center;justify-content:center;font-weight:700;margin-bottom:10px}
.list{list-style:none;padding:0;margin:18px 0 0}
.list li{padding:14px 0;border-top:1px solid var(--line)}
.list li:first-child{border-top:0}
.list .name{font-weight:700;color:var(--teal)}
.values{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}
.value{background:#fff;border-left:4px solid var(--sage);border-radius:8px;padding:16px 20px}
.value .name{font-weight:700;color:var(--sage)}
/* image placeholder */
.imgph{display:flex;align-items:center;justify-content:center;text-align:center;
  border:2px dashed var(--sage);border-radius:16px;background:linear-gradient(135deg,#eef5ef,#e6f1f1);
  color:var(--muted);font-style:italic;padding:34px 26px;min-height:200px;margin:8px 0 4px}
.imgph span{max-width:560px;font-size:.96rem}
.note{background:var(--cream);border:1px solid var(--line);border-radius:12px;padding:16px 18px;
  font-size:.95rem;color:var(--muted)}
.heroimg{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:16px;display:block;margin:10px 0 4px}
.founder-wrap{margin:12px 0 4px}
.founderimg{width:320px;max-width:64%;height:auto;border-radius:16px;display:block;box-shadow:0 6px 24px rgba(0,0,0,.08)}
.careers-ph{display:flex;align-items:center;justify-content:flex-start;text-align:left;aspect-ratio:1280/460;
  max-height:380px;border-radius:16px;background:#157A80 url('careers-illustration.svg') center/cover no-repeat;color:#fff;padding:30px 44px;margin:10px 0 4px}
.careers-ph .inner{max-width:46%;text-shadow:0 1px 8px rgba(15,60,64,.35)}
.careers-ph h3{color:#fff;margin-bottom:6px}
.careers-ph p{margin:0;opacity:.92}
/* job posting detail pages */
.role-meta{color:var(--muted);font-weight:600;font-size:1rem;margin:-.2em 0 1em}
.back-link{display:inline-block;font-weight:600;font-size:.95rem;margin-bottom:6px}
.prose ul{margin:.2em 0 1.2em;padding-left:1.2em}
.prose ul li{margin:.4em 0;padding-left:.2em}
.prose h2{margin-top:.2em}
.subhead{font-weight:700;color:var(--ink);margin:.4em 0 .2em}
.pay-card{background:#fff;border:1px solid var(--line);border-left:4px solid var(--coral);border-radius:12px;padding:18px 22px;margin-top:10px}
.fineprint{font-size:.86rem;color:var(--muted)}
/* application prompts */
.promptbox{background:#fff;border:1px solid var(--line);border-left:4px solid var(--teal-bright);border-radius:0 12px 12px 0;padding:16px 20px;margin:10px 0}
.promptbox h4{margin:0 0 6px;color:var(--teal);font-size:1rem}
.promptbox ol{margin:0;padding-left:1.2em}
.promptbox li{margin:.4em 0}
.req{color:var(--coral)}
/* forms */
.form{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;margin-top:18px}
.form label{display:block;font-weight:600;margin:14px 0 6px;font-size:.95rem}
.form input,.form select,.form textarea{width:100%;padding:11px 12px;border:1px solid #cdd5d8;
  border-radius:9px;font:inherit;font-size:1rem}
.form textarea{min-height:110px;resize:vertical}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:30px}
/* footer */
footer.site{background:var(--teal);color:#eaf4f4;padding:46px 0;margin-top:10px}
footer.site a{color:#fff}
footer.site .tag{font-weight:600;font-size:1.05rem;margin-bottom:6px;color:#fff}
footer.site .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px}
footer.site .small{font-size:.85rem;color:#cfe6e6;margin-top:22px}
@media(max-width:820px){
  h1{font-size:1.9rem}
  .nav .links{display:none;position:absolute;top:84px;left:0;right:0;background:#fff;flex-direction:column;
    align-items:flex-start;padding:16px 24px;border-bottom:1px solid var(--line);gap:14px}
  .nav .links.open{display:flex}
  .menu-toggle{display:block}
  .cards,.pillars,.steps,.values,.two-col,footer.site .cols{grid-template-columns:1fr}
  section .wrap>h2::after,.hero .wrap>h2::after{margin-left:0}
  .founder-photo img{max-width:280px}
  .careers-ph{aspect-ratio:16/10}
  .careers-ph .inner{max-width:86%}
}

/* ============ visual polish ============ */
/* warm hero with subtle brand accent */
.hero{background:
  radial-gradient(620px 300px at 88% -8%, rgba(1,153,158,.10), transparent 70%),
  radial-gradient(520px 260px at -6% 8%, rgba(253,101,60,.07), transparent 70%),
  linear-gradient(180deg,var(--cream),#fff 78%)}
/* accent bar under section headings */
section .wrap>h2,.hero .wrap>h2{position:relative;padding-bottom:.32em}
section .wrap>h2::after,.hero .wrap>h2::after{content:"";display:block;width:54px;height:4px;
  border-radius:3px;background:linear-gradient(90deg,var(--coral),var(--sage));margin-top:.42em}
.center .wrap>h2::after{margin-left:auto;margin-right:auto}
/* card depth + hover lift */
.card,.pillar,.step{box-shadow:0 2px 6px rgba(35,48,58,.05);
  transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}
.card:hover,.pillar:hover,.step:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(35,48,58,.12)}
.pillar{border-top:4px solid var(--sage)}
.card{border-top:4px solid var(--teal-bright)}
/* tier/pillar icon chips */
.step .n{box-shadow:0 4px 10px rgba(21,122,128,.25)}
/* hero images get a little depth */
.heroimg{box-shadow:0 12px 34px rgba(35,48,58,.14)}
/* openings list rows: gentle hover + arrow affordance */
.list li{transition:background .12s ease}
.list li:hover{background:rgba(1,153,158,.04)}
.value{box-shadow:0 2px 6px rgba(35,48,58,.04);transition:transform .12s ease}
.value:hover{transform:translateX(3px)}
/* founder two-column */
.founder-cols{align-items:center}
.founder-photo{text-align:center}
.founder-photo img{width:100%;max-width:360px;height:auto;border-radius:18px;display:block;
  margin:0 auto;box-shadow:0 14px 36px rgba(35,48,58,.16)}
.founder-cap{margin-top:12px;font-weight:700;color:var(--teal);line-height:1.25}
.founder-cap span{display:block;font-weight:500;color:var(--muted);font-size:.92rem}
/* eyebrow accent dot */
.eyebrow::before{content:"";display:inline-block;width:18px;height:2px;background:var(--coral);
  vertical-align:middle;margin-right:8px;border-radius:2px}
.center .eyebrow::before{display:none}
