 .page-wrap {
      flex: 1;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 3rem 1rem;
    }

    /* ── Card ── */
    .cat-card {
      border: none;
      border-radius: 4px;
      border-top: 4px solid #b5892a;
      box-shadow: 0 4px 24px rgba(0,0,0,.10);
    }
    .cat-card .card-body { padding: 2.25rem 2.25rem 2rem; }

    /* ── Logo ── */
    .cat-logo { height: 38px; margin-bottom: 1.2rem; }

    /* ── Headings ── */
    .cat-title {
      font-size: 1.35rem;
      font-weight: 700;
      color: #1a1208;
      margin-bottom: .25rem;
    }
    .cat-sub {
      font-size: .82rem;
      color: #7a6a54;
      line-height: 1.6;
      margin-bottom: 1.25rem;
    }

    /* ── Gold divider ── */
    .gold-line {
      border: none;
      border-top: 1px solid #d4b86a;
      opacity: .45;
      margin: 1.25rem 0 1.5rem;
    }

    /* ── Product tags ── */
    .tag-list { display: flex; flex-wrap: wrap; gap: .4rem; margin-bottom: 1.25rem; }
    .tag-item {
      font-size: .6rem;
      font-weight: 600;
      letter-spacing: .1em;
      text-transform: uppercase;
      padding: .25rem .65rem;
      border: 1px solid #d4b86a;
      color: #7a6a54;
      border-radius: 2px;
    }

    /* ── Form labels ── */
    .form-label {
      font-size: .72rem;
      font-weight: 600;
      letter-spacing: .07em;
      text-transform: uppercase;
      color: #5a4a35;
      margin-bottom: .3rem;
    }

    /* ── Inputs ── */
    .form-control {
      border-radius: 3px;
      border: 1px solid #d4c9b5;
      font-size: .9rem;
      padding: .6rem .85rem;
      background: #fdfaf5;
      color: #1a1208;
    }
    .form-control:focus {
      border-color: #b5892a;
      box-shadow: 0 0 0 3px rgba(181,137,42,.15);
      background: #fff;
    }
    .form-control::placeholder { color: #b0a090; font-size: .85rem; }
    .form-control.is-invalid   { border-color: #dc3545; }
    .invalid-feedback          { font-size: .72rem; }

    /* ── reCAPTCHA wrapper ── */
    .recaptcha-wrap { margin-bottom: 1rem; }
    .recaptcha-error {
      font-size: .72rem;
      color: #dc3545;
      margin-top: .3rem;
    }

    /* ── Submit button ── */
    .btn-catalogue {
      background: #b5892a;
      border: none;
      border-radius: 3px;
      color: #fff;
      font-size: .78rem;
      font-weight: 700;
      letter-spacing: .14em;
      text-transform: uppercase;
      padding: .8rem;
      width: 100%;
      transition: background .2s;
    }
    .btn-catalogue:hover  { background: #9a7220; color: #fff; }
    .btn-catalogue:active { background: #7d5d18; }

    /* ── Privacy note ── */
    .privacy-note {
      font-size: .68rem;
      color: #a09080;
      text-align: center;
      margin-top: .9rem;
    }

    /* ── Success block ── */
    .success-wrap { text-align: center; padding: .5rem 0 .25rem; }
    .success-icon {
      width: 68px; height: 68px; border-radius: 50%;
      background: #edf7ed; border: 2px solid #4caf50;
      display: flex; align-items: center; justify-content: center;
      margin: 0 auto 1.25rem;
    }
    .success-icon i  { font-size: 2rem; color: #4caf50; }
    .success-title   { font-size: 1.25rem; font-weight: 700; color: #1a1208; margin-bottom: .35rem; }
    .success-msg     { font-size: .84rem; color: #7a6a54; line-height: 1.7; margin-bottom: 1.5rem; }

    .btn-dl {
      display: inline-flex; align-items: center; gap: .5rem;
      background: #b5892a; color: #fff;
      font-size: .78rem; font-weight: 700; letter-spacing: .12em;
      text-transform: uppercase; padding: .8rem 2rem;
      border-radius: 3px; text-decoration: none;
      transition: background .2s;
    }
    .btn-dl:hover { background: #9a7220; color: #fff; }
    
   @media (max-width: 767px) {
  .cat-card .card-body {
    padding: 1.5rem 1.25rem 1.5rem !important;
  }

  .cat-title { font-size: 1.2rem !important; }
  .cat-sub   { font-size: .8rem !important; }
  .tag-list  { gap: .35rem !important; }
  .tag-item  { font-size: .58rem !important; padding: .2rem .5rem !important; }

  /* ✅ FIX: Prevent iOS Safari zoom on input focus */
  .form-control {
    font-size: 16px !important;
  }

  /* ✅ FIX: Scale reCAPTCHA via parent wrapper */
  .recaptcha-wrap {
    transform: scale(0.88) !important;
    transform-origin: 0 0 !important;
  }

  .btn-catalogue {
    padding: .9rem !important;
    font-size: .75rem !important;
  }

  .btn-dl {
    width: 100% !important;
    justify-content: center !important;
    padding: .85rem 1rem !important;
  }

  .cat-logo { height: 32px !important; }
}