.review-hero { padding: 64px 0 72px; }
.review-hero-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: clamp(28px, 5vw, 76px); align-items: start; }
.review-hero-copy { padding-top: 16px; }
.review-hero h1 { font-size: clamp(40px, 4.5vw, 65px); line-height: 1.06; margin: 22px 0; max-width: 12ch; }
.review-lede { font-size: 20px; line-height: 1.55; max-width: 48ch; }
.review-fit { color: var(--ink-soft); max-width: 46ch; }
.review-proof { display: flex; align-items: center; gap: 22px; border-top: 1px solid var(--line); margin-top: 32px; padding-top: 24px; }
.review-proof strong { font-family: var(--display); font-size: 30px; white-space: nowrap; }
.review-proof span { font-size: 14px; max-width: 30ch; }
.mobile-request { display: none; }
.inquiry-card { padding: 30px; background: var(--white); border: 1px solid var(--ink); box-shadow: 8px 8px 0 var(--paper-deep); scroll-margin-top: 24px; }
.inquiry-card h2 { font-size: 32px; line-height: 1.15; margin: 12px 0; }
.inquiry-card > p { font-size: 15px; }
.form-field { margin: 16px 0; }
.form-field label { display: block; font-size: 14px; font-weight: 700; margin-bottom: 6px; }
.form-field input, .form-field textarea { display: block; width: 100%; min-width: 0; padding: 11px 12px; border: 1px solid #77776b; border-radius: 0; color: var(--ink); background: white; font: inherit; font-size: 16px; }
.form-field textarea { resize: vertical; min-height: 100px; }
.form-field small { display: block; color: var(--ink-soft); font-size: 12px; line-height: 1.5; margin-top: 7px; }
.review-page :focus-visible, .privacy-page :focus-visible, .receipt-page :focus-visible { outline: 3px solid var(--teal); outline-offset: 4px; }
.form-field [aria-invalid="true"] { border: 2px solid #a32119; }
.field-error { display: block; color: #a32119; font-size: 13px; }
.field-error:empty { display: none; }
.form-trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.submit-button { width: 100%; border: 0; cursor: pointer; font: inherit; font-weight: 700; min-height: 48px; }
.submit-button:disabled { opacity: .65; cursor: wait; }
.form-notice { color: var(--ink-soft); font-size: 12px; line-height: 1.5; margin: 14px 0; }
.form-status { font-size: 14px; margin: 0; }
.form-status:not(:empty) { padding: 14px; background: var(--paper); border-left: 3px solid var(--teal); margin: 14px 0; }
.form-status[data-error="true"] { border-color: #a32119; }
.signal-alternative { padding-top: 16px; border-top: 1px solid var(--line); font-size: 13px; }
.signal-alternative a { font-weight: 700; }
.review-deliverables, .review-experience, .review-faq { padding: 68px 0; border-top: 1px solid var(--line); }
.deliverable-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px; }
.deliverable-grid article { padding-top: 20px; border-top: 2px solid var(--ink); }
.deliverable-grid .method-index { color: var(--teal); }
.deliverable-grid h3 { font-size: 23px; line-height: 1.2; }
.deliverable-grid p { color: var(--ink-soft); font-size: 15px; }
.review-example { padding: 68px 0; color: var(--white); background: var(--ink); }
.example-grid, .experience-grid { display: grid; grid-template-columns: 1fr 1.4fr; gap: 60px; }
.example-grid h2, .experience-grid h2 { font-size: clamp(30px, 3.4vw, 45px); line-height: 1.1; margin: 18px 0; }
.example-copy p:first-child, .experience-grid p:first-child { margin-top: 0; }
.example-copy p { max-width: 66ch; }
.evidence-limit { color: #c9c4b8; font-size: 14px; padding-top: 16px; border-top: 1px solid #66665b; }
.faq-grid { display: grid; grid-template-columns: 1fr 1.4fr; gap: 60px; }
.faq-grid h2 { font-size: 34px; margin: 0; }
.faq-grid details { border-bottom: 1px solid var(--line); padding: 18px 0; }
.faq-grid details:first-child { padding-top: 0; }
.faq-grid summary { font-weight: 700; cursor: pointer; padding: 5px 0; }
.faq-grid details p { font-size: 15px; color: var(--ink-soft); }
.review-close { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-bottom: 64px; }
.review-close p { font-size: 22px; font-weight: 700; max-width: 40ch; }
.policy-content { max-width: 760px; padding: 60px 0 90px; }
.policy-content h1 { font-size: clamp(38px, 5vw, 60px); line-height: 1.1; }
.policy-content h2 { font-size: 26px; margin-top: 32px; }
.policy-content li { margin: 8px 0; }
.receipt-panel { max-width: 720px; padding: 70px 0 110px; }
.receipt-panel h1 { font-size: clamp(40px, 5vw, 64px); line-height: 1.08; }
@media (max-width: 900px) {
  .review-hero-grid { gap: 30px; grid-template-columns: 1fr 1fr; }
  .review-hero h1 { font-size: 45px; }
  .inquiry-card { padding: 23px; }
  .review-proof { display: block; }
  .review-proof span { display: block; }
  .deliverable-grid { grid-template-columns: repeat(2, 1fr); }
  .example-grid, .experience-grid, .faq-grid { gap: 30px; }
}
@media (max-width: 680px) {
  .review-hero { padding: 28px 0 48px; }
  .review-hero-grid, .example-grid, .experience-grid, .faq-grid { grid-template-columns: 1fr; gap: 30px; }
  .review-hero-copy { padding-top: 0; }
  .review-hero h1 { font-size: clamp(38px, 10vw, 53px); max-width: 15ch; }
  .review-lede { font-size: 18px; }
  .mobile-request { display: inline-flex; }
  .review-proof { display: flex; margin-top: 25px; padding-top: 20px; }
  .inquiry-card { padding: 22px 18px; box-shadow: 5px 5px 0 var(--paper-deep); }
  .review-deliverables, .review-example, .review-experience, .review-faq { padding: 44px 0; }
  .deliverable-grid { grid-template-columns: 1fr; gap: 18px; }
  .deliverable-grid h3 { margin: 12px 0; }
  .review-close { display: block; padding-bottom: 45px; }
  .policy-content { padding: 32px 0 60px; }
}
