/* Laboratory report pages only. Existing site navigation and commerce are unchanged. */
.coa-page .coa-report-hero { padding: clamp(2.5rem, 5vw, 5rem) clamp(1.3rem, 6vw, 7rem); }
.coa-page .coa-report-hero h1 { max-width: 16ch; margin-bottom: 1.2rem; font-size: clamp(3rem, 6.4vw, 6rem); }
.coa-page .page-intro { max-width: 60ch; font-size: clamp(1rem, 1.5vw, 1.2rem); font-weight: 400; }
.coa-page .coa-hero-link { margin-top: 1.5rem; }
.coa-page .coa-batch-summary { display: grid; grid-template-columns: .7fr 1fr 1fr; gap: 2rem; margin: 0; padding: 1.6rem clamp(1.3rem, 6vw, 7rem); background: var(--ink); color: var(--paper); }
.coa-page .coa-batch-summary dt { margin-bottom: .35rem; color: var(--cream); font-size: .7rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.coa-page .coa-batch-summary dd { margin: 0; font-size: clamp(1rem, 1.5vw, 1.25rem); font-weight: 700; }
.coa-page .coa-report-library { max-width: 1500px; margin: auto; padding: clamp(2.5rem, 5vw, 5rem) clamp(1.3rem, 6vw, 7rem); scroll-margin-top: calc(var(--header-height, 96px) + 1rem); }
.coa-page .coa-library-heading { display: flex; align-items: end; justify-content: space-between; gap: 2rem; margin-bottom: 2rem; }
.coa-page .coa-library-heading h2 { margin-bottom: 0; font-size: clamp(2.3rem, 4vw, 3.7rem); }
.coa-page .coa-library-heading > p { max-width: 37ch; margin: 0; font-size: .95rem; }
.coa-page .coa-flavor-grid { display: flex; flex-wrap: wrap; justify-content: center; gap: 1.5rem; }
.coa-page .coa-flavor-card { flex: 0 1 calc(50% - .75rem); min-width: 0; border: 1px solid var(--line); border-top: 6px solid var(--coa-accent, var(--gold)); background: #fffdf7; box-shadow: 4px 4px 0 rgba(18,46,30,.06); }
.coa-page .coa-tone-lime { --coa-accent: var(--lime); }
.coa-page .coa-tone-mango { --coa-accent: var(--mango); }
.coa-page .coa-tone-pineapple { --coa-accent: var(--pineapple); }
.coa-page .coa-tone-pear { --coa-accent: var(--pear); }
.coa-page .coa-tone-melon { --coa-accent: #5d9d42; }
.coa-page .coa-card-heading { padding: 1.5rem 1.6rem 1.3rem; background: rgba(230,205,159,.14); }
.coa-page .coa-card-heading .eyebrow { margin-bottom: .65rem; font-size: .65rem; color: var(--ink-2); }
.coa-page .coa-card-heading h3 { margin-bottom: .7rem; font-size: clamp(2rem, 3vw, 2.8rem); }
.coa-page .coa-card-heading > p:last-child { margin-bottom: 0; font-size: .8rem; }
.coa-page .coa-report-option { padding: 1.25rem 1.6rem; border-top: 1px solid var(--line); }
.coa-page .coa-option-heading { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .5rem 1rem; margin-bottom: .9rem; }
.coa-page .coa-option-heading h4 { margin: 0; font-family: var(--display); font-size: 1.6rem; font-weight: 900; line-height: 1.1; }
.coa-page .coa-detail-link { display: inline-flex; align-items: center; min-height: 30px; font-size: .78rem; font-weight: 600; text-decoration: underline; text-underline-offset: .22em; }
.coa-page .coa-report-actions { display: flex; flex-wrap: wrap; gap: .65rem; }
.coa-page .coa-report-actions .button { flex: 1 1 120px; min-height: 44px; padding: .8rem 1rem; font-size: .7rem; }
.coa-page .coa-file-note { margin: .65rem 0 0; color: var(--ink-2); font-size: .75rem; line-height: 1.5; }
.coa-page .coa-matching { display: grid; grid-template-columns: 1fr 1.1fr; gap: 3rem; padding: clamp(2.5rem, 5vw, 5rem) clamp(1.3rem, 6vw, 7rem); border-top: 1px solid var(--line); background: var(--cream); }
.coa-page .coa-matching h2 { margin-bottom: 0; font-size: clamp(2.1rem, 3.6vw, 3.5rem); }
.coa-page .coa-matching ol { padding-left: 1.3rem; margin: 0; }
.coa-page .coa-matching li { margin-bottom: .8rem; padding-left: .3rem; }
.coa-page .coa-matching-copy p { margin: 1.3rem 0 0; }
.coa-page .coa-matching-copy a, .coa-page .coa-detail-matching a { font-weight: 700; text-decoration: underline; text-underline-offset: .2em; }
.coa-page a:focus-visible { outline: 3px solid var(--ink); outline-offset: 4px; box-shadow: 0 0 0 7px var(--paper); }
.coa-page .coa-back-link { display: inline-flex; align-items: center; min-height: 44px; margin: -.5rem 0 1.5rem; font-size: .85rem; font-weight: 700; text-decoration: underline; text-underline-offset: .22em; }
.coa-page .coa-detail-content { max-width: 1060px; margin: auto; padding: clamp(2rem, 4vw, 4rem) clamp(1.3rem, 5vw, 3rem); }
.coa-page .coa-download-panel { padding: clamp(1.3rem, 3vw, 2rem); border: 1px solid var(--line); border-top: 5px solid var(--gold); background: rgba(230,205,159,.18); }
.coa-page .coa-download-panel h2 { margin-bottom: .8rem; font-size: clamp(2rem, 3.5vw, 3rem); }
.coa-page .coa-download-panel > div:first-child > p:last-child { margin-bottom: 1.5rem; }
.coa-page .coa-download-panel .coa-report-actions { max-width: 500px; }
.coa-page .coa-detail-content .coa-facts { margin: 2rem 0 2.5rem; }
.coa-page .coa-facts dd { overflow-wrap: anywhere; }
.coa-page .coa-detail-matching h2 { margin-bottom: 1rem; font-size: clamp(1.8rem, 3vw, 2.6rem); }
.coa-page .coa-detail-matching p { max-width: 70ch; }
.coa-page .coa-detail-nav { display: flex; flex-wrap: wrap; gap: 1rem 2rem; margin-top: 2rem; padding-top: 1rem; border-top: 1px solid var(--line); }
.coa-page .coa-detail-nav a { display: inline-flex; align-items: center; min-height: 44px; }
@media (max-width: 760px) {
  .coa-page .coa-library-heading { display: block; }
  .coa-page .coa-library-heading > p { max-width: none; margin-top: 1rem; }
  .coa-page .coa-batch-summary { grid-template-columns: 1fr 1fr; gap: 1.2rem; }
  .coa-page .coa-batch-summary > div:last-child { grid-column: 1 / -1; }
  .coa-page .coa-flavor-card { flex-basis: 100%; }
  .coa-page .coa-matching { grid-template-columns: 1fr; gap: 1.5rem; }
  .coa-page .coa-report-hero h1 { font-size: clamp(2.8rem, 10vw, 4.5rem); }
}
@media (max-width: 380px) {
  .coa-page .coa-card-heading, .coa-page .coa-report-option { padding-inline: 1rem; }
  .coa-page .coa-report-actions .button { flex-basis: 95px; padding-inline: .7rem; }
  .coa-page .coa-batch-summary { gap: 1rem; }
  .coa-page .coa-batch-summary dd { font-size: .95rem; }
}
