    :root {
      --bg: #F7F3ED;
      --cream: #F2EDE6;
      --sage: #3D4D44;
      --accent: #C4604E;
      --accent-2: #F08C70;
      --ink: #1F2622;
      --muted: #6B7670;
      --line: rgba(31,38,34,.09);
      --line-on-sage: rgba(242,237,230,.16);
      --radius: 22px;
      --radius-sm: 14px;
      --pad-y: 96px;
    }

/*    * { box-sizing: border-box; }
    html, body { margin: 0; padding: 0; }
    body {
      font-family: "Manrope", -apple-system, system-ui, sans-serif;
      background: var(--bg);
      color: var(--ink);
      font-size: 16px;
      line-height: 1.55;
      -webkit-font-smoothing: antialiased;
    }

    h1, h2, h3, h4 {
      font-family: "Unbounded", "Manrope", sans-serif;
      font-weight: 600;
      letter-spacing: -0.01em;
      margin: 0;
    }

    .section { padding: var(--pad-y) 0; }*/

    .eyebrow {
      /*font-family: "Unbounded", sans-serif;*/
      font-size: 13px;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      color: var(--accent);
      font-weight: 600;
    }

    .h-sec {
      /*font-family: "Unbounded", sans-serif;*/
      font-size: clamp(34px, 4vw, 52px);
      color: var(--accent);
      font-weight: 600;
      letter-spacing: 2px;
      line-height: 1.05;
    }

    .btn {
      display: inline-flex; align-items: center; gap: 10px;
      padding: 14px 26px;
      border-radius: 999px;
      /*font-family: "Manrope", sans-serif;*/
      font-weight: 600;
      font-size: 15px;
      border: none;
      cursor: pointer;
      transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
      text-decoration: none;
    }
    .btn-primary { background: var(--accent); color: #fff; }
    .btn-primary:hover:not(:disabled) { background: var(--accent-2); transform: translateY(-1px); box-shadow: 0 10px 24px -10px rgba(233,119,89,.55); }
    .btn-primary:disabled { opacity: .5; cursor: not-allowed; }

    .contact {
      background: var(--sage);
      border-radius: var(--radius);
      margin: 0 32px var(--pad-y);
      max-width: 1240px;
      margin-left: auto; margin-right: auto;
      overflow: hidden;
      display: grid;
      grid-template-columns: 1fr 1.4fr;
      color: var(--cream);
    }
    .contact-aside {
      padding: clamp(40px, 5vw, 64px);
      background: var(--accent);
      color: #fff;
      display: flex; flex-direction: column; justify-content: space-between;
      min-height: 540px;
    }
    .contact-aside .h-sec { color: #fff; font-size: clamp(30px, 3vw, 60px); }
    .contact-aside .aside-sub { margin-top: 18px; font-size: 17px; opacity: .9; max-width: 320px; line-height: 1.55; font-weight: 200}
    .aside-list { list-style: none; padding: 0; margin: 32px 0 0; display: flex; flex-direction: column; gap: 14px; }
    .aside-list li {
      display: flex; align-items: center; gap: 12px;
      font-size: 17px; opacity: .92;
      font-weight: 200;
    }
    .aside-list li::before {
      content: ""; width: 16px; height: 16px; border-radius: 50%;
      background: rgba(255,255,255,.25);
      background-image: radial-gradient(circle, #fff 25%, transparent 28%);
      flex-shrink: 0;
    }
    .aside-contact {
      margin-top: 28px;
      padding-top: 24px;
      border-top: 1px solid rgba(255,255,255,.25);
      font-size: 14px;
    }
    .aside-contact a { color: #fff; text-decoration: none; font-weight: 400; display: block; margin-top: 4px; font-size: 15px;}
    .aside-contact .label { opacity: .7; font-size: 13px; text-transform: uppercase; letter-spacing: .08em; font-weight: 200; padding: 0}

    .contact-form {
      padding: clamp(40px, 5vw, 56px);
      display: flex; flex-direction: column;
    }
    .step-indicator {
      display: flex; align-items: center; gap: 10px;
      margin-bottom: 32px;
    }
    .step-dot {
      height: 4px; flex: 1; background: rgba(242,237,230,.15); border-radius: 2px;
      transition: background .4s;
    }
    .step-dot.done { background: var(--accent); }
    .step-dot.on { background: var(--cream); }
    .step-label {
      /*font-family: "Unbounded", sans-serif; font-size: 11px; letter-spacing: .14em;*/
      color: rgba(242,237,230,.6); text-transform: uppercase;
      margin-bottom: 20px;
    }
    .step-title {
      /*font-family: "Unbounded", sans-serif; font-size: clamp(22px, 2.2vw, 30px);*/
      color: var(--cream); font-weight: 500; margin-bottom: 28px; letter-spacing: -.01em;
      line-height: 1.15;
    }

    .step-panel { display: none; }
    .step-panel.active { display: block; }

    .field-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
    .field { display: flex; flex-direction: column; margin-bottom: 16px; }
    .field > label {
      font-size: 11px; text-transform: uppercase; letter-spacing: .12em;
      color: rgba(242,237,230,.55); font-weight: 600; margin-bottom: 8px;
    }
    .field input, .field textarea, .field select {
      background: rgba(242,237,230,.06);
      border: 1px solid rgba(242,237,230,.14);
      border-radius: 12px;
      padding: 14px 16px;
      color: var(--cream);
      /*font-family: "Manrope", sans-serif;*/
      font-size: 15px;
      outline: none;
      transition: border-color .2s, background .2s;
    }
    .field input::placeholder, .field textarea::placeholder { color: rgba(242,237,230,.35); }
    .field input:focus, .field textarea:focus, .field select:focus {
      border-color: var(--accent);
      background: rgba(242,237,230,.1);
    }
    .field textarea { resize: vertical; min-height: 120px; }
    .field select option { color: var(--ink); }

    .chip-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
    .chip-grid.tri { grid-template-columns: repeat(3, 1fr); }
    .chip-grid.quad { grid-template-columns: repeat(4, 1fr); }
    .chip {
      padding: 16px 18px; border-radius: 14px;
      border: 1px solid rgba(242,237,230,.16);
      background: rgba(242,237,230,.04);
      color: var(--cream);
      cursor: pointer;
      /*font-family: "Manrope", sans-serif;*/
      font-size: 14px; font-weight: 500;
      text-align: left;
      transition: all .2s;
      display: flex; flex-direction: column; gap: 4px;
    }
    .chip.center { align-items: center; text-align: center; }
    .chip:hover { border-color: rgba(242,237,230,.4); }
    .chip.on { background: var(--accent); border-color: var(--accent); color: #fff; }
    .chip .chip-sub { font-size: 11.5px; opacity: .7; font-weight: 400; }
    .chip.on .chip-sub { opacity: .85; }

    .upload {
      border: 1.5px dashed rgba(242,237,230,.22);
      border-radius: 14px;
      padding: 22px;
      text-align: center;
      cursor: pointer;
      transition: border-color .2s, background .2s;
      color: rgba(242,237,230,.7);
      font-size: 13px;
      display: block;
    }
    .upload:hover { border-color: var(--accent); background: rgba(233,119,89,.05); }
    .upload strong { color: var(--cream); display: block; margin-bottom: 4px; font-size: 14px; }

    .form-nav {
      display: flex; justify-content: space-between; align-items: center;
      margin-top: 28px; padding-top: 24px;
      border-top: 1px solid var(--line-on-sage);
    }
    .form-nav .spacer { flex: 1; }
    .back-link {
      background: transparent; border: none; color: rgba(242,237,230,.7);
      cursor: pointer; font-family: "Manrope", sans-serif; font-size: 14px;
      padding: 10px 0; display: inline-flex; align-items: center; gap: 6px;
    }
    .back-link:hover { color: var(--cream); }
    .back-link.hidden { visibility: hidden; }

    .success-panel {
      text-align: center;
      padding: 60px 20px;
      display: none;
      flex-direction: column; align-items: center; gap: 18px;
    }
    .success-panel.active { display: flex; }
    .success-icon {
      width: 80px; height: 80px; border-radius: 50%;
      background: var(--accent); color: #fff;
      display: inline-flex; align-items: center; justify-content: center;
      font-size: 40px; 
      /*font-family: "Unbounded", sans-serif;*/
    }
    .success-panel h3 {
      /*font-family: "Unbounded", sans-serif; */
      font-size: 28px;
      color: var(--cream); font-weight: 500; margin: 0;
    }
    .success-panel p {
      color: rgba(242,237,230,.7); max-width: 380px; margin: 0;
    }
    .success-panel .accent { color: var(--accent); }

    .form-body.hidden { display: none; }

    .btn-primary {
      background: var(--accent) !important;
      color: #fff;
    }
    .btn-primary:hover {
      background: var(--accent-2);
      transform: translateY(-1px);
      box-shadow: 0 10px 24px -10px rgba(233,119,89,.55);
    }
    .btn {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      padding: 14px 26px;
      border-radius: 999px;
      /*font-family: "Manrope", sans-serif;*/
      font-weight: 600;
      font-size: 15px;
      border: none;
      cursor: pointer;
      transition: transform .2s ease, background .2s ease, color .2s ease, box-shadow .2s ease;
      text-decoration: none;
    }

    @media (max-width: 960px) {
      .contact { grid-template-columns: 1fr; }
    }
    @media (max-width: 600px) {
      .contact { margin-left: 16px; margin-right: 16px; }
      .field-row { grid-template-columns: 1fr; }
      .chip-grid.tri, .chip-grid.quad { grid-template-columns: repeat(2, 1fr); }
    }