



  /* ===== HERO ===== */
  .c-hero{ padding: 40px 0 0; }
  .c-hero-card{
    display:grid; grid-template-columns: 1fr 0.92fr;
    align-items:center;
  }
  .c-hero-text{ padding: 40px 64px 40px 0; display:flex; flex-direction:column; justify-content:center; transform: translate(170px, -42px); position:relative; z-index:2; }
  .c-hero-text .eyebrow{ margin-bottom: 30px; }
  .c-hero h1{
    font-family:var(--serif); font-weight:300;
    font-size: clamp(52px, 5.6vw, 92px); line-height:0.98; letter-spacing:-.02em;
    margin:0; color:var(--ink);
  }
  .c-hero h1 em{ font-style:italic; color:var(--green); }
  .c-hero .rule{ width:64px; height:2px; background:var(--green); margin:38px 0 30px; }
  .c-hero p{ font-size:17px; line-height:1.65; color:var(--ink-2); max-width:44ch; margin:0; }
  .c-hero-photo{ position:relative; transform: translateX(-170px); }
  .c-hero-photo img{ width:100%; height:auto; display:block; border-top-right-radius:16px; border-bottom-right-radius:16px; }

  /* ===== PATHS ===== */
  .paths{ padding: 110px 0 120px; }
  .paths-head{ max-width: 800px; margin: 0 auto 76px; text-align:center; }
  .paths-head h2{
    font-family:var(--serif); font-weight:300;
    font-size: clamp(34px, 4vw, 52px); line-height:1.05; letter-spacing:-.018em;
    margin:0 0 22px; color:var(--ink);
  }
  .paths-head h2 em{ font-style:italic; color:var(--green); }
  .paths-head .rule{ width:90px; height:2px; background:var(--green); margin:0 auto 26px; }
  .paths-head p{ font-size:16.5px; line-height:1.65; color:var(--ink-2); margin:0; }

  .paths-grid{ display:grid; grid-template-columns: repeat(4, 1fr); }
  .path{
    padding: 8px 34px; text-align:center;
    border-right:1px solid var(--line);
  }
  .path:last-child{ border-right:none; }
  .path .ic{ height:54px; display:flex; align-items:center; justify-content:center; margin-bottom:22px; }
  .path .ic svg{ width:46px; height:46px; display:block; }
  .path h3{ font-family:var(--sans); font-weight:600; font-size:17px; line-height:1.25; margin:0 0 16px; color:var(--ink); }
  .path p{ font-size:13.5px; line-height:1.6; color:var(--ink-3); margin:0; }

  /* ===== FORM ===== */
  .join{ background:var(--green); color:#fff; }
  .join-inner{ display:grid; grid-template-columns: 0.78fr 1.22fr; gap:72px; padding: 85px 0 60px; align-items:start; }
  .join-left h2{
    font-family:var(--serif); font-weight:300; font-size: clamp(32px, 3.4vw, 44px);
    line-height:1.08; letter-spacing:-.01em; margin:0 0 24px; color:#fff;
  }
  .join-left .rule{ width:64px; height:2px; background:rgba(255,255,255,.7); margin:0 0 26px; }
  .join-left p{ font-size:15.5px; line-height:1.65; color:rgba(255,255,255,.9); max-width:38ch; margin:0; }
  .join-note{ display:flex; gap:16px; align-items:flex-start; margin-top:42px; max-width:40ch; }
  .join-note .sh{ flex:0 0 auto; width:42px; height:42px; border-radius:50%; border:1.5px solid rgba(255,255,255,.4); display:flex; align-items:center; justify-content:center; }
  .join-note .sh svg{ width:20px; height:20px; }
  .join-note p{ font-size:14px; line-height:1.6; color:rgba(255,255,255,.88); margin:0; }

  /* ── Formidable Form — Careers (id=2) ───────────────────────────────────── */

  /* Form wrapper */
  .join-form .frm_form_fields,
  .join-form fieldset {
    border: none;
    margin: 0!important;
    padding: 0!important;
  }
  .join-form legend { display: none; }

  /* Field container — default full width, stacked */
  .join-form .frm_form_field {
    display: flex;
    flex-direction: column;
    margin-bottom: 20px!important;
  }

  /* Half-width fields sit side by side */
  .join-form .frm_fields_container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 20px;
  }
  /* Full-width fields span both columns */
  .join-form .frm12,
  .join-form .frm_full,
  .join-form #frm_field_13_container,
  .join-form #frm_field_14_container {
    grid-column: 1 / -1;
  }
  /* frm_half = one column each (already default in 2-col grid) */
  .join-form .frm_half { grid-column: span 1; }

  /* frm6 = half width */
  .join-form .frm6 { grid-column: span 1; }

  /* Hidden honeypot + hidden inputs */
  .join-form input[type="hidden"],
  .join-form #frm_field_17_container { display: none !important; }

  /* Labels */
  .join-form .frm_primary_label {
    font-family: var(--mono);
    font-size: 11px;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #fff;
    margin-bottom: 9px;
    font-weight: 500;
    display: block;
  }
  .join-form .frm_required { display: none; }

  /* Inputs, select, textarea */
  .join-form input[type="text"],
  .join-form input[type="email"],
  .join-form input[type="tel"],
  .join-form select,
  .join-form textarea {
    font-family: var(--sans);
    font-size: 15px;
    color: var(--ink);
    background: #fff;
    border: 1px solid rgba(255,255,255,.4);
    border-radius: 6px;
    padding: 14px 16px;
    width: 100%;
    outline: none;
    box-sizing: border-box;
    transition: box-shadow .2s ease, border-color .2s ease;
  }
  .join-form textarea {
    resize: vertical;
    min-height: 120px;
    line-height: 1.5;
  }
  .join-form input::placeholder,
  .join-form textarea::placeholder { color: #9b9893; }
  .join-form input:focus,
  .join-form select:focus,
  .join-form textarea:focus { box-shadow: 0 0 0 3px rgba(255,255,255,.35); }

  /* Select arrow */
  .join-form select {
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b6663' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    padding-right: 42px;
    color: rgb(102,112,133) !important;
  }
  .join-form select:not([value=""]):valid { color: var(--ink) !important; }

  /* Submit button */
  .join-form .frm_submit { margin-top: 6px; }
  .join-form .frm_button_submit {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: var(--ink)!important;
    color: #fff;
    border: none;
    border-radius: 999px!important;
    padding: 15px 30px!important;
    font-family: var(--sans);
    font-size: 14px!important;
    font-weight: 600!important;
    letter-spacing: .02em;
    cursor: pointer;
    transition: background .25s ease, transform .25s ease;
    margin-top: 6px!important;
  }
  .join-form .frm_button_submit::after {
    content: "→";
    display: inline-block;
    transition: transform .3s ease;
  }
  .join-form .frm_button_submit:hover { background: #000; }
  .join-form .frm_button_submit:hover::after { transform: translateX(4px); }

  /* Formidable error + success messages */
  .join-form .frm_error_style {
    background: rgba(224,82,82,.1);
    border: 1px solid rgba(224,82,82,.3);
    border-radius: 6px;
    padding: 12px 16px;
    color: #fff;
    font-size: 13px;
    margin-bottom: 16px;
  }
  .join-form .frm_message {
    background: rgba(0,151,80,.1);
    border: 1px solid rgba(0,151,80,.25);
    border-radius: 6px;
    padding: 16px 20px;
    color: #fff;
    font-size: 15px;
    font-weight: 500;
    margin-top: 16px;
  }
  .join-form .frm_error {
    color: rgba(255,180,180,.9);
    font-size: 12px;
    margin-top: 5px;
  }

  /* Responsive — stack to single column */

  @media (max-width: 1000px){
    .c-hero-card{ grid-template-columns: 1fr; }
    .c-hero-photo{ min-height:auto; order:-1; transform:none; }
    .c-hero-text{ padding:56px 0 0; transform:none; }
    .paths-grid{ grid-template-columns: 1fr 1fr; gap:48px 0; }
    .path:nth-child(2){ border-right:none; }
    .path:nth-child(1), .path:nth-child(2){ border-bottom:1px solid var(--line); padding-bottom:44px; }
    .path:nth-child(3), .path:nth-child(4){ padding-top:44px; }
    .join-inner{ grid-template-columns: 1fr; gap:48px; }
  }
  @media (max-width: 620px){
    .paths-grid{ grid-template-columns: 1fr; }
    .path{ border-right:none; border-bottom:1px solid var(--line); padding:36px 0; }
    .path:last-child{ border-bottom:none; }
  }
