
  /* ===================== CAREERS PAGE ===================== */
  .crhero{position:relative;overflow:hidden;color:#fff;padding:124px 0 56px;
    background:linear-gradient(180deg,rgba(28,17,6,.80) 0%,rgba(28,17,6,.62) 42%,rgba(28,17,6,.74) 78%,rgba(28,17,6,.88) 100%),
      url("../../imgs/careers/careers-hero.jpg") 50% 24%/cover no-repeat,
      radial-gradient(125% 150% at 16% -10%,#6a4319 0%,#422a11 52%,#2c1c0d 100%)}
  .crhero::after{content:"";position:absolute;right:-70px;top:-60px;width:340px;height:340px;border-radius:50%;
    background:radial-gradient(circle,rgba(255,145,0,.42),transparent 66%);pointer-events:none}
  .crhero .wrap{position:relative;z-index:2;max-width:680px}
  .crhero .eyebrow{justify-content:flex-start;color:#FFD89B}
  .crhero h1{font-family:var(--display);font-weight:700;font-size:52px;line-height:1.03;margin:10px 0 0;letter-spacing:-.02em}
  .crhero .sub{color:#F1E4CE;margin:14px 0 0;font-size:16.5px;line-height:1.55;max-width:54ch}
  /* the page exists to get people to the roles, so give the hero a direct route there */
  .crhero-cta{display:inline-flex;align-items:center;gap:9px;margin-top:26px;background:var(--orange);color:#fff;
    font-family:var(--display);font-weight:700;font-size:15.5px;padding:14px 26px;border-radius:14px;
    text-decoration:none;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 16px 30px -14px rgba(255,140,0,.75)}
  .crhero-cta:hover{transform:translateY(-2px);box-shadow:0 22px 38px -14px rgba(255,140,0,.85)}
  .crhero-cta svg{width:17px;height:17px;transition:transform .25s ease}
  .crhero-cta:hover svg{transform:translateY(3px)}

  .crsec{padding:60px 0}
  .crhead{max-width:620px;margin-bottom:30px}
  .crhead .eyebrow{justify-content:flex-start;margin-bottom:8px}
  .crhead h2{font-family:var(--display);font-weight:700;font-size:32px;color:var(--espresso);letter-spacing:-.015em;line-height:1.08}
  .crhead p{color:var(--soft);font-size:15.5px;margin-top:8px;line-height:1.55}

  /* perks */
  .crperks{background:linear-gradient(180deg,#FFFBF1,var(--bg));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .crgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:34px}
  .crcard{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:24px;transition:transform .2s ease,box-shadow .2s ease}
  .crcard:hover{transform:translateY(-4px);box-shadow:0 22px 40px -28px rgba(80,50,20,.5)}
  .crcard .ic{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:14px;color:#fff}
  .crcard .ic svg{width:24px;height:24px}
  .crcard h4{font-family:var(--display);font-weight:700;font-size:17.5px;color:var(--espresso);margin-bottom:6px}
  .crcard p{color:var(--soft);font-size:13.5px;line-height:1.55}
  .crsplit{display:grid;grid-template-columns:.85fr 1.15fr;gap:28px;align-items:stretch;margin-top:0}
  .crphoto{border-radius:24px;min-height:440px;box-shadow:0 26px 56px -34px rgba(80,50,20,.55);
    background-image:url("../../imgs/careers/join-us.jpg"),radial-gradient(circle at 50% 32%,#F7E2BE,#C2914B);
    background-size:cover;background-position:center 35%}
  .crsplit .crgrid{grid-template-columns:repeat(2,1fr);margin-top:0;gap:16px}
  @media(max-width:880px){.crsplit{grid-template-columns:1fr;gap:20px}.crphoto{min-height:280px}}
  @media(max-width:520px){.crsplit .crgrid{grid-template-columns:1fr}}
  .crjoin{display:flex;flex-direction:column;justify-content:center;padding:12px 6px}
  .crjoin h3{font-family:var(--display);font-weight:700;font-size:clamp(46px,6.4vw,72px);line-height:.96;color:var(--espresso);letter-spacing:-.02em}
  .crjoin h3 span{color:var(--orange)}
  .crjoin p{color:var(--soft);font-size:17px;line-height:1.6;margin-top:16px;max-width:44ch}
  @media(max-width:880px){.crjoin{padding:6px 0 0}}
  /* why work here: small chip-cards, three across, sitting under the Join us copy */
  .whyhf{margin-top:24px}
  .whyhf h4{font-family:var(--display);font-weight:700;font-size:17px;color:var(--espresso);margin-bottom:13px}
  .whygrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
  .whyc{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--line);
    border-radius:14px;padding:11px 13px;font-family:var(--display);font-weight:600;font-size:13px;
    color:var(--espresso);line-height:1.3;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
  .whyc i{flex-shrink:0;width:32px;height:32px;border-radius:50%;display:grid;place-items:center}
  .whyc i svg{width:17px;height:17px;display:block}
  .whyc i.o{background:#FDEBD7;color:#E8721F}
  .whyc i.g{background:#E9F1E3;color:#5F8F55}
  .whyc:hover{transform:translateY(-2px);border-color:var(--almond);box-shadow:0 14px 26px -18px rgba(80,50,20,.5)}
  @media(max-width:1080px){.whygrid{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:520px){.whygrid{grid-template-columns:1fr}}

  /* roles: section head sits beside the badge illustration */
  .crhead-row{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;margin-bottom:26px}
  .crhead-row .crhead{margin-bottom:0}
  .crhead-art{width:min(310px,34vw);height:auto;display:block}
  @media(max-width:820px){.crhead-art{display:none}}

  .jd-form[hidden]{display:none}
  .jd-how{background:#FFF8EE;border:1.5px solid #F0DDB8;border-radius:18px;padding:20px 22px;margin-top:6px}
  .jd-how h4{font-family:var(--display);font-weight:700;font-size:18px;color:var(--espresso);margin:0 0 8px}
  .jd-how p{color:var(--soft);font-size:14.5px;line-height:1.6;margin:0}
  .jd-how a{color:var(--orange);font-weight:700;text-decoration:none;word-break:break-word}
  .jd-how a:hover{text-decoration:underline}
  .jd-how ul{margin:12px 0 0;padding-inline-start:20px;display:grid;gap:7px}
  .jd-how li{color:var(--espresso);font-size:14.5px;line-height:1.5}
  .jd-how li b{font-family:var(--display);font-weight:700}
  @media(max-width:560px){
    .jd-how{padding:16px 16px}
    .jd-how h4{font-size:16.5px}
    .jd-how p,.jd-how li{font-size:13.5px}
  }
  /* shown when FormSubmit returns the applicant with ?sent=1 */
  .jd-thanks{grid-column:1/-1;display:flex;align-items:center;gap:10px;margin:0 0 18px;
    background:#EDF6E9;border:1.5px solid #A9C79B;color:#3F6B33;border-radius:16px;
    padding:14px 18px;font-family:var(--display);font-weight:700;font-size:15px;line-height:1.45}
  .jd-thanks::before{content:"✓";flex-shrink:0;width:24px;height:24px;border-radius:50%;
    background:#5F8F55;color:#fff;display:grid;place-items:center;font-size:13px}
  .jd-submit.is-sending{opacity:.65;cursor:progress}
  .crroles{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;align-items:stretch}
  .crrole{display:flex;flex-direction:column;align-items:flex-start;height:100%;
    background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:26px 26px 22px;
    transition:transform .22s ease,border-color .2s ease,box-shadow .2s ease}
  .crrole:hover{transform:translateY(-3px);border-color:var(--almond);box-shadow:0 22px 42px -26px rgba(80,50,20,.55)}
  .crole-ic{flex-shrink:0;width:70px;height:70px;border-radius:50%;display:grid;place-items:center;
    transition:transform .25s cubic-bezier(.34,1.4,.5,1)}
  .crole-ic svg{width:36px;height:36px}
  .crole-ic.o{background:#FDEBD7;color:#F5871F}
  .crole-ic.g{background:#E9F1E3;color:#6E9E63}
  .crrole:hover .crole-ic{transform:scale(1.06) rotate(-3deg)}
  .crrole .info{width:100%}
  .crrole h3{font-family:var(--display);font-weight:700;font-size:21px;color:var(--espresso);letter-spacing:-.01em;margin-top:16px}
  .crrole .desc{color:var(--soft);font-size:14px;margin-top:7px;line-height:1.55}
  .crrole .meta{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 24px}
  .crrole .crapply{margin-top:auto;align-self:stretch;justify-content:center;position:relative}
  .crrole .crapply::before{content:"";position:absolute;left:-26px;right:-26px;top:-12px;
    height:1px;background:var(--line)}
  .crrole .crapply svg{transition:transform .25s ease}
  .crrole:hover .crapply svg{transform:translateX(4px)}
  @media(prefers-reduced-motion:reduce){
    .crrole,.crole-ic,.crrole .crapply svg{transition:none}
    .crrole:hover,.crrole:hover .crole-ic{transform:none}
  }
  .crtag{font-family:var(--display);font-weight:600;font-size:12px;color:#6b563f;background:var(--bg);
    border:1px solid var(--line);padding:5px 12px;border-radius:999px;display:inline-flex;align-items:center;gap:6px}
  .crtag.openings{font-weight:700}
  .crtag.openings svg{width:15px;height:15px;flex-shrink:0;display:block}
  .crtag.openings.multi{background:#FFF3E2;border-color:#F0C078;color:#B4650C}
  .crapply{flex-shrink:0;display:inline-flex;align-items:center;gap:8px;background:var(--orange);color:#fff;
    font-family:var(--display);font-weight:700;font-size:14.5px;padding:12px 22px;border-radius:13px;text-decoration:none;
    transition:.2s;box-shadow:0 12px 24px -12px rgba(255,140,0,.6)}
  .crapply:hover{transform:translateY(-2px);background:#FF7A00}
  .crapply svg{width:17px;height:17px}

  .crnote{display:flex;flex-direction:column;align-items:flex-start;height:100%;
    background:var(--surface);border:1.5px dashed var(--almond);border-radius:20px;padding:26px 26px 22px;
    transition:transform .22s ease,border-color .2s ease}
  .crnote:hover{transform:translateY(-3px);border-color:#A9C79B}
  .crnote-art{width:78px;height:auto;display:block}
  .crnote b{font-family:var(--display);font-weight:700;font-size:21px;color:var(--espresso);display:block;margin-top:14px}
  .crnote span{color:var(--soft);font-size:14px;line-height:1.55;display:block;margin-top:7px;margin-bottom:24px}
  .crnote a{margin-top:auto;align-self:stretch;position:relative;display:inline-flex;align-items:center;justify-content:center;
    gap:9px;color:#4A7C3F;background:transparent;border:2px solid #A9C79B;font-family:var(--display);font-weight:700;
    font-size:15px;padding:12px 24px;border-radius:13px;text-decoration:none;transition:.2s}
  .crnote a svg{width:17px;height:17px;transition:transform .25s ease}
  .crnote a:hover{border-color:#6E9E63;background:rgba(110,158,99,.08)}
  .crnote:hover a svg{transform:translateX(4px)}
  @media(prefers-reduced-motion:reduce){.crnote{transition:none}.crnote:hover{transform:none}}

  @media(max-width:860px){
    .crgrid{grid-template-columns:repeat(2,1fr)}
  }
  @media(max-width:760px){
    .crhero h1{font-size:42px}
    .crsec{padding:48px 0}
    .crhead h2{font-size:28px}
  }
  /* ---- role / apply dialog ---- */
  .crrole[data-role]{cursor:pointer}
  .jobdlg{margin:auto;width:min(660px,calc(100vw - 32px));max-height:min(88vh,900px);max-height:min(88dvh,900px);
    padding:0;border:0;border-radius:24px;background:var(--surface);color:var(--espresso);overflow:hidden;
    box-shadow:0 50px 90px -40px rgba(60,38,15,.7)}
  html.jd-open{overflow:hidden;padding-inline-end:var(--sbw,0px)}
  html.jd-open header.nav{inset-inline-end:var(--sbw,0px)}
  .jobdlg::backdrop{background:rgba(44,28,13,.55);backdrop-filter:blur(3px)}
  .jd-scroll{max-height:inherit;overflow-y:auto;overscroll-behavior:contain}
  .jd-x{position:absolute;top:14px;inset-inline-end:14px;z-index:3;margin:0}
  .jd-x button{width:36px;height:36px;border-radius:50%;border:0;cursor:pointer;font-size:22px;line-height:1;
    background:rgba(65,43,23,.08);color:var(--espresso);transition:.18s}
  .jd-x button:hover{background:rgba(65,43,23,.16)}
  .jd-head{padding:30px 32px 22px;background:linear-gradient(180deg,#FFF8EA,var(--surface));border-bottom:1px solid var(--line)}
  .jd-ic{width:62px;height:62px;border-radius:50%;display:grid;place-items:center}
  .jd-ic svg{width:32px;height:32px}
  .jd-ic.o{background:#FDEBD7;color:#F5871F}
  .jd-ic.g{background:#E9F1E3;color:#6E9E63}
  .jd-head h3{font-family:var(--display);font-weight:700;font-size:26px;letter-spacing:-.015em;margin-top:14px}
  .jd-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
  .jd-lede{color:var(--soft);font-size:15px;line-height:1.6;margin-top:13px}
  .jd-body{padding:22px 32px 4px}
  .jd-body h4,.jd-form h4{font-family:var(--display);font-weight:700;font-size:15px;color:var(--espresso);
    letter-spacing:.02em;margin-bottom:11px}
  .jd-body ul{list-style:none;margin:0;padding:0}
  .jd-body li{position:relative;padding-inline-start:22px;color:var(--soft);font-size:14.5px;line-height:1.6;margin-bottom:8px}
  .jd-body li::before{content:"";position:absolute;inset-inline-start:2px;top:9px;width:7px;height:7px;
    border-radius:50%;background:var(--orange);opacity:.55}
  .jd-form{padding:22px 32px 30px;border-top:1px solid var(--line);margin-top:20px}
  .jd-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
  .jd-form label{display:block;font-family:var(--display);font-weight:600;font-size:12.5px;color:var(--espresso)}
  .jd-form label span{color:var(--soft);font-weight:500}
  .jd-form input[type=text],.jd-form input[type=email],.jd-form input[type=tel],.jd-form textarea{
    width:100%;margin-top:6px;border:1.5px solid var(--line);border-radius:12px;padding:11px 13px;
    font-family:var(--body);font-size:14.5px;color:var(--espresso);background:var(--bg);transition:border-color .18s ease}
  .jd-form input:focus,.jd-form textarea:focus{outline:0;border-color:var(--orange)}
  .jd-form textarea{resize:vertical;min-height:76px}
  .jd-full{margin-bottom:14px}
  .jd-file{display:flex;align-items:center;gap:13px;border:1.5px dashed var(--almond);border-radius:14px;
    padding:14px 16px;cursor:pointer;background:var(--bg);transition:border-color .18s ease,background .18s ease}
  .jd-file:hover{border-color:var(--orange);background:#FFF8EA}
  .jd-file input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
  .jd-file-ic{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:#FDEBD7;color:#E8721F;display:grid;place-items:center}
  .jd-file-ic svg{width:20px;height:20px}
  .jd-file-t b{display:block;font-family:var(--display);font-weight:700;font-size:14px;color:var(--espresso)}
  .jd-file-t i{display:block;font-style:normal;font-size:12.5px;color:var(--soft);margin-top:2px;word-break:break-all}
  .jd-file.has{border-style:solid;border-color:#A9C79B;background:rgba(110,158,99,.07)}
  .jd-file.has .jd-file-ic{background:#E9F1E3;color:#5F8F55}
  .jd-file.bad{border-color:#D9534F}
  .jd-file.bad .jd-file-t i{color:#C9302C}
  .jd-err{margin-top:12px;color:#C9302C;font-size:13.5px;font-weight:600;font-family:var(--display)}
  .jd-submit{width:100%;margin-top:16px;display:inline-flex;align-items:center;justify-content:center;gap:9px;
    background:var(--orange);color:#fff;border:0;cursor:pointer;font-family:var(--display);font-weight:700;
    font-size:15.5px;padding:14px 26px;border-radius:14px;transition:.2s;box-shadow:0 14px 28px -14px rgba(255,140,0,.7)}
  .jd-submit:hover{transform:translateY(-2px);background:#FF7A00}
  .jd-submit svg{width:17px;height:17px}
  .jd-note{margin-top:12px;color:var(--soft);font-size:13px;line-height:1.55}
  @media(max-width:560px){
    .jobdlg{width:100vw;max-width:100vw;max-height:100vh;max-height:100dvh;border-radius:0}
    .jd-head{padding:26px 20px 20px}
    .jd-body{padding:20px 20px 4px}
    .jd-form{padding:20px 20px 26px}
    .jd-row{grid-template-columns:1fr}
  }
  @media(prefers-reduced-motion:reduce){.jd-submit:hover{transform:none}}

  @media(max-width:700px){
    /* one card per row on phones; two would squeeze the tags onto three lines */
    .crroles{grid-template-columns:1fr}
    .crole-ic{width:60px;height:60px}
    .crole-ic svg{width:31px;height:31px}
    .crrole h3{font-size:19px}
    .crrole,.crnote{padding:22px 20px 20px}
    .crrole .crapply::before{left:-20px;right:-20px}
  }
  @media(max-width:560px){
    /* half-weight hero photo for phones — same framing, ~83KB instead of ~166KB */
    .crhero{padding:104px 0 46px;
      background-image:linear-gradient(180deg,rgba(28,17,6,.80) 0%,rgba(28,17,6,.62) 42%,rgba(28,17,6,.74) 78%,rgba(28,17,6,.88) 100%),
        url("../../imgs/careers/careers-hero-m.jpg"),
        radial-gradient(125% 150% at 16% -10%,#6a4319 0%,#422a11 52%,#2c1c0d 100%)}
    .crhero h1{font-size:36px}
    .crhero .sub{font-size:15.5px}
    .crsec{padding:42px 0}
    .crhead h2{font-size:26px}
    .crgrid{grid-template-columns:1fr}
    .crnote{padding:20px 20px}
    .crnote a{width:100%;justify-content:center}
  }
  @media(max-width:400px){
    .crhero h1{font-size:31px}
    .crrole{padding:19px 18px}
    .crrole h3{font-size:18px}
    .crtag{font-size:11.5px}
  }

