  /* ---------- PAGE HERO (gradient title band) ---------- */
  .policy-hero { background: var(--gradient-brand); padding: 52px 0 60px; }
  .policy-hero-inner { max-width: 720px; margin: 0 auto; }
  .policy-hero h1 { color: #fff; font-size: 2.2rem; margin: 0 0 10px; }
  .policy-hero .updated { color: rgba(255,255,255,.85); font-size: 0.92rem; }
  .policy-hero .hero-sub { color: rgba(255,255,255,.92); font-size: 1rem; margin: 0; }

    /* ---------- BREADCRUMB BAR ---------- */
  .breadcrumb-bar { background: var(--gf-panel); padding: 14px 0; }
  .breadcrumb-bar .wrap { max-width: 720px; margin: 0 auto; padding: 0 24px; }
  .breadcrumb { display: flex; align-items: center; gap: 8px; font-size: 0.85rem; font-weight: 600; color: var(--gf-text-muted); flex-wrap: wrap; }
  .breadcrumb a { color: var(--gf-text-muted); text-decoration: none; transition: color 0.15s ease; }
  .breadcrumb a:hover { color: var(--gf-brand-dark); }
  .breadcrumb .sep { opacity: 0.6; }
  .breadcrumb .current { color: var(--gf-text); }

    /* ---------- ARTICLE (shared policy-style) ---------- */
  .policy { padding: 48px 0 88px; }
  .policy-inner { max-width: 720px; margin: 0 auto; }

  @media (max-width: 780px) {
    .policy-hero h1 { font-size: 1.9rem; }
  }

    /* ---------- CONTACT PAGE ---------- */
  .policy-inner.contact-page { max-width: 720px; }
  .contact-grid { display: flex; flex-direction: column; gap: 32px; }
  .contact-form-panel { background: var(--gf-surface); border-radius: 24px; box-shadow: var(--shadow-card); padding: 36px; }
  .contact-note { font-size: 0.9rem; margin: -4px 0 24px; }

  /* Contact Form 7 output styling — targets CF7's real markup/classes so the
     [contact-form-7] shortcode inherits this look with no extra CSS work. */
  .wpcf7-form p { margin: 0 0 22px; }
  .wpcf7-form label { display: block; font-weight: 700; font-size: 0.92rem; color: var(--gf-text); margin-bottom: 8px; }
  .wpcf7-form label .req { color: var(--gf-accent); font-weight: 600; font-size: 0.8rem; margin-left: 4px; }
  .wpcf7-form-control-wrap { display: block; }
  .wpcf7-form-control {
    width: 100%; border: none; border-radius: 12px; background: var(--gf-panel); box-shadow: var(--shadow-inset);
    padding: 14px 16px; font-family: 'Inter', sans-serif; font-size: 0.95rem; color: var(--gf-text);
  }
  textarea.wpcf7-form-control { min-height: 160px; resize: vertical; }
  .wpcf7-form-control:focus { outline: none; box-shadow: inset 6px 6px 12px rgba(163,177,198,.65), inset -6px -6px 12px rgba(255,255,255,.95); }
  select.wpcf7-form-control {
    appearance: none; -webkit-appearance: none; cursor: pointer; padding-right: 40px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23667085' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat; background-position: right 16px center;
  }
  .wpcf7-form label.contact-acceptance {
    display: flex; align-items: flex-start; gap: 10px;
    font-weight: 400; font-size: 0.88rem; color: var(--gf-text-muted); margin-bottom: 0;
  }
  .contact-acceptance input[type="checkbox"] { width: 18px; height: 18px; margin-top: 2px; accent-color: var(--gf-brand); flex-shrink: 0; }
  .contact-acceptance a { color: var(--gf-brand-dark); font-weight: 600; text-decoration: underline; }
  .wpcf7-form p.contact-turnstile-row { text-align: center; margin-bottom: 20px; }
  .wpcf7-form p.contact-turnstile-row .cf-turnstile { display: inline-block; }
  .wpcf7-form p.contact-submit-row { text-align: center; }
  .wpcf7-submit {
    appearance: none; border: none; border-radius: 14px; background: var(--gradient-brand); color: #fff;
    font-family: 'Inter', sans-serif; font-weight: 700; font-size: 1rem; padding: 15px 0; cursor: pointer;
    width: 240px; display: inline-block;
    box-shadow: var(--shadow-raised); transition: box-shadow 0.15s ease, transform 0.15s ease;
  }
  .wpcf7-submit:hover { box-shadow: var(--shadow-raised-lg); transform: translateY(-1px); }
  .wpcf7-response-output { display: none; padding: 14px 18px; border-radius: 12px; font-size: 0.92rem; font-weight: 600; margin: 0 0 22px; }
  .wpcf7-response-output.is-success { display: block; background: #E7F5F0; color: var(--gf-brand-dark); border: 1px solid #BFE6D8; }
  .wpcf7-response-output.is-error { display: block; background: #FDECE7; color: var(--gf-accent); border: 1px solid #F6C7B8; }
  .hp-field { position: absolute; left: -9999px; top: -9999px; }

  @media (max-width: 600px) {
    .contact-form-panel { padding: 24px; }
  }

  
