/*
Theme Name: FT Instrument 2.3
Theme URI: https://formulatested.com
Author: FormulaTested
Description: Editorial testing-journal theme for FormulaTested.com. Dark clinical layout, numbered review index, live trial readout, hard grid rules. Built to make the reviewer's method visible within three seconds of landing.
Version: 2.3.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: formulatested
*/

/* ==========================================================
   0. TOKENS
   ========================================================== */
:root {
  --bg: #0B0D0F;
  --panel: #111417;
  --panel-2: #14181C;
  --line: #23282D;
  --line-soft: #1A1F23;
  --text: #E9ECEE;
  --text-dim: #B9C0C7;
  --mute: #7D868E;
  --amber: #E8B04B;
  --amber-dim: rgba(232, 176, 75, 0.14);
  --pass: #6FBF8F;
  --fail: #D96459;
  --font-display: "Fraunces", Georgia, serif;
  --font-body: "Archivo", -apple-system, "Segoe UI", sans-serif;
  --font-data: "IBM Plex Mono", "SFMono-Regular", Consolas, monospace;
  --max: 1220px;
  --gutter: 28px;
}

/* ==========================================================
   1. RESET + BASE  (colors carry !important — WordPress
      injects its own global styles and we outrank them)
   ========================================================== */
*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}

body {
  margin: 0;
  background: var(--bg) !important;
  color: var(--text-dim) !important;
  font-family: var(--font-body);
  font-size: 17px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}

img { max-width: 100%; height: auto; display: block; }

a { color: var(--text) !important; text-decoration: none; }
a:hover { color: var(--amber) !important; }
a:focus-visible,
button:focus-visible,
input:focus-visible {
  outline: 2px solid var(--amber);
  outline-offset: 2px;
}

h1, h2, h3, h4, h5, h6 {
  color: var(--text) !important;
  font-family: var(--font-display);
  font-weight: 500;
  line-height: 1.15;
  margin: 0 0 0.5em;
}

::selection { background: var(--amber); color: #0B0D0F; }

.wrap {
  max-width: var(--max);
  margin: 0 auto;
  padding: 0 var(--gutter);
}

/* utility label — mono eyebrow used across the site */
.tag {
  font-family: var(--font-data);
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--mute) !important;
}
.tag--amber { color: var(--amber) !important; }

.screen-reader-text {
  position: absolute; width: 1px; height: 1px;
  clip: rect(0 0 0 0); overflow: hidden; white-space: nowrap;
}

/* ==========================================================
   2. MASTHEAD
   ========================================================== */
.masthead {
  border-bottom: 1px solid var(--line);
  background: var(--bg) !important;
  position: sticky;
  top: 0;
  z-index: 50;
}
.masthead__inner {
  display: flex;
  align-items: stretch;
  min-height: 64px;
}
.masthead__brand {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-right: 28px;
  border-right: 1px solid var(--line);
}
.masthead__mark {
  font-family: var(--font-data);
  font-size: 13px;
  color: #0B0D0F !important;
  background: var(--amber);
  padding: 4px 7px;
  font-weight: 600;
  letter-spacing: 0.02em;
}
.masthead__name {
  font-family: var(--font-display);
  font-size: 21px;
  letter-spacing: 0.01em;
  color: var(--text) !important;
}
.masthead__nav {
  display: flex;
  align-items: center;
  margin-left: auto;
}
.masthead__nav ul { list-style: none; display: flex; margin: 0; padding: 0; }
.masthead__nav li { border-left: 1px solid var(--line); }
.masthead__nav a {
  display: flex;
  align-items: center;
  height: 64px;
  padding: 0 22px;
  font-family: var(--font-data);
  font-size: 12px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--text-dim) !important;
}
.masthead__nav a:hover { color: var(--amber) !important; background: var(--panel); }

/* live ticker cell in the masthead */
.masthead__live {
  display: flex;
  align-items: center;
  gap: 9px;
  border-left: 1px solid var(--line);
  padding: 0 22px;
  font-family: var(--font-data);
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--amber) !important;
  white-space: nowrap;
}
.pulse {
  width: 7px; height: 7px;
  background: var(--amber);
  border-radius: 50%;
  animation: pulse 1.8s ease-in-out infinite;
}
@keyframes pulse { 0%,100% { opacity: 1; } 50% { opacity: 0.25; } }

.nav-toggle { display: none; }

/* ==========================================================
   3. HERO — thesis left, instrument right
   ========================================================== */
.hero {
  border-bottom: 1px solid var(--line);
  background: var(--bg) !important;
}
.hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(340px, 1fr);
}
.hero__thesis {
  padding: 72px 56px 72px 0;
  border-right: 1px solid var(--line);
}
.hero__kicker { margin-bottom: 26px; }
.hero__title {
  font-size: clamp(38px, 5vw, 62px);
  font-weight: 480;
  letter-spacing: -0.015em;
  margin: 0 0 24px;
}
.hero__title em {
  font-style: italic;
  color: var(--amber) !important;
}
.hero__sub {
  font-size: 18px;
  max-width: 52ch;
  color: var(--text-dim) !important;
  margin: 0 0 34px;
}
.hero__cred {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  border: 1px solid var(--line);
  max-width: 620px;
}
.hero__cred div {
  flex: 1 1 33%;
  padding: 14px 18px;
  border-right: 1px solid var(--line);
}
.hero__cred div:last-child { border-right: 0; }
.hero__cred strong {
  display: block;
  font-family: var(--font-data);
  font-size: 20px;
  font-weight: 500;
  color: var(--text) !important;
}
.hero__cred span {
  font-family: var(--font-data);
  font-size: 10.5px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--mute) !important;
}

/* --- the instrument: live trial readout --- */
.instrument {
  padding: 40px 0 40px 40px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.instrument__panel {
  border: 1px solid var(--line);
  background: var(--panel) !important;
}
.instrument__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 18px;
  border-bottom: 1px solid var(--line);
}
.instrument__status {
  display: flex; align-items: center; gap: 8px;
  font-family: var(--font-data);
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--amber) !important;
}
.instrument__proto {
  font-family: var(--font-data);
  font-size: 11px;
  color: var(--mute) !important;
}
.instrument__body { padding: 22px 18px; }
.instrument__product {
  font-family: var(--font-display);
  font-size: 27px;
  color: var(--text) !important;
  margin: 0 0 4px;
}
.instrument__product a { color: var(--text) !important; }
.instrument__product a:hover { color: var(--amber) !important; }
.instrument__claim {
  font-size: 14px;
  color: var(--mute) !important;
  margin: 0 0 22px;
}
.instrument__day {
  display: flex;
  align-items: baseline;
  gap: 10px;
  font-family: var(--font-data);
  margin-bottom: 10px;
}
.instrument__day strong {
  font-size: 42px;
  font-weight: 500;
  color: var(--amber) !important;
  line-height: 1;
}
.instrument__day span {
  font-size: 13px;
  color: var(--mute) !important;
}
.meter {
  display: grid;
  grid-template-columns: repeat(30, 1fr);
  gap: 3px;
  margin-bottom: 18px;
}
.meter i {
  height: 14px;
  background: var(--line-soft);
}
.meter i.on { background: var(--amber); }
.instrument__rows { border-top: 1px solid var(--line); }
.instrument__row {
  display: flex;
  justify-content: space-between;
  padding: 10px 0 0;
  font-family: var(--font-data);
  font-size: 12px;
}
.instrument__row span { color: var(--mute) !important; text-transform: uppercase; letter-spacing: 0.08em; }
.instrument__row b { color: var(--text-dim) !important; font-weight: 500; }

/* ==========================================================
   4. THE INDEX — numbered review ledger
   ========================================================== */
.ledger { border-bottom: 1px solid var(--line); }
.ledger__head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 30px 0 18px;
  border-bottom: 1px solid var(--line);
}
.ledger__title {
  font-family: var(--font-display);
  font-size: 28px;
  margin: 0;
}
.row {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr) 170px 110px 120px;
  align-items: center;
  border-bottom: 1px solid var(--line-soft);
  min-height: 88px;
  transition: background 0.15s ease;
}
.row:hover { background: var(--panel) !important; }
.row__num {
  font-family: var(--font-data);
  font-size: 15px;
  color: var(--mute) !important;
  padding-left: 4px;
}
.row__main { padding: 16px 28px 16px 0; min-width: 0; }
.row__title {
  font-family: var(--font-display);
  font-size: 22px;
  font-weight: 500;
  margin: 0 0 3px;
  line-height: 1.25;
}
.row__title a { color: var(--text) !important; }
.row__title a:hover { color: var(--amber) !important; }
.row__excerpt {
  font-size: 13.5px;
  color: var(--mute) !important;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.row__cat {
  font-family: var(--font-data);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--mute) !important;
}
.row__cat a { color: var(--mute) !important; }
.row__cat a:hover { color: var(--amber) !important; }
.row__score {
  font-family: var(--font-data);
  font-size: 15px;
  color: var(--text) !important;
}
.row__score b {
  display: inline-block;
  padding: 5px 9px;
  border: 1px solid var(--line);
  background: var(--panel-2) !important;
  color: var(--amber) !important;
  font-weight: 500;
}
.row__score b.v-pass { color: var(--pass) !important; }
.row__score b.v-fail { color: var(--fail) !important; }
.row__score .nul { color: var(--mute) !important; font-size: 12px; }
.row__date {
  font-family: var(--font-data);
  font-size: 12px;
  color: var(--mute) !important;
  text-align: right;
  padding-right: 4px;
}

/* pagination */
.pager {
  display: flex;
  justify-content: space-between;
  padding: 26px 0 60px;
  font-family: var(--font-data);
  font-size: 13px;
}
.pager a, .pager span { color: var(--text-dim) !important; }
.pager a:hover { color: var(--amber) !important; }
.pager .page-numbers { padding: 6px 12px; border: 1px solid var(--line); margin-right: 6px; }
.pager .page-numbers.current { color: var(--amber) !important; border-color: var(--amber); }

/* ==========================================================
   5. METHOD STRIP + DOSSIER
   ========================================================== */
.method {
  border-bottom: 1px solid var(--line);
  background: var(--panel) !important;
}
.method__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
.method__cell {
  padding: 34px 26px;
  border-right: 1px solid var(--line);
}
.method__cell:last-child { border-right: 0; }
.method__cell .tag { display: block; margin-bottom: 12px; }
.method__cell h3 {
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 8px;
}
.method__cell p { font-size: 14px; color: var(--mute) !important; margin: 0; }

.dossier { border-bottom: 1px solid var(--line); }
.dossier__grid {
  display: grid;
  grid-template-columns: 300px minmax(0, 1fr);
}
.dossier__id {
  border-right: 1px solid var(--line);
  padding: 44px 36px 44px 0;
}
.dossier__body { padding: 44px 0 44px 44px; }
.dossier__name {
  font-family: var(--font-display);
  font-size: 30px;
  margin: 10px 0 6px;
}
.dossier__role {
  font-family: var(--font-data);
  font-size: 12px;
  color: var(--mute) !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.dossier__body p {
  max-width: 62ch;
  color: var(--text-dim) !important;
  margin: 0 0 16px;
}
.dossier__body p:last-child { margin-bottom: 0; }

/* ==========================================================
   6. SINGLE REVIEW
   ========================================================== */
.report { background: var(--bg) !important; }
.report__head {
  border-bottom: 1px solid var(--line);
  padding: 56px 0 0;
}
.report__meta-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 22px;
  font-family: var(--font-data);
  font-size: 11.5px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--mute) !important;
  margin-bottom: 24px;
}
.report__meta-strip a { color: var(--mute) !important; }
.report__meta-strip a:hover { color: var(--amber) !important; }
.report__title {
  font-size: clamp(32px, 4.4vw, 54px);
  font-weight: 480;
  letter-spacing: -0.015em;
  max-width: 22ch;
  margin-bottom: 34px;
}

/* verdict bar under title */
.verdict {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  border: 1px solid var(--line);
  border-bottom: 0;
}
.verdict__cell {
  padding: 16px 20px;
  border-right: 1px solid var(--line);
}
.verdict__cell:last-child { border-right: 0; }
.verdict__cell .tag { display: block; margin-bottom: 6px; }
.verdict__cell strong {
  font-family: var(--font-data);
  font-size: 21px;
  font-weight: 500;
  color: var(--text) !important;
}
.verdict__cell strong.v-score { color: var(--amber) !important; }
.verdict__cell strong.v-pass { color: var(--pass) !important; }
.verdict__cell strong.v-fail { color: var(--fail) !important; }
.scorebar {
  height: 5px;
  background: var(--line-soft);
  margin-top: 9px;
  position: relative;
}
.scorebar i {
  position: absolute; inset: 0 auto 0 0;
  background: var(--amber);
}

.report__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
}
.report__content {
  padding: 48px 56px 72px 0;
  border-right: 1px solid var(--line);
  min-width: 0;
}

/* ---- entry content: every color locked with !important ---- */
.entry-content,
.entry-content p,
.entry-content li,
.entry-content td,
.entry-content th,
.entry-content dd,
.entry-content dt,
.entry-content figcaption,
.entry-content blockquote,
.entry-content span,
.entry-content em,
.entry-content i,
.entry-content div {
  color: var(--text-dim) !important;
  background: transparent !important;
}
.entry-content h1, .entry-content h2, .entry-content h3,
.entry-content h4, .entry-content h5, .entry-content h6,
.entry-content strong, .entry-content b {
  color: var(--text) !important;
  background: transparent !important;
}
.entry-content a { color: var(--amber) !important; text-decoration: underline; text-underline-offset: 3px; }
.entry-content a:hover { color: var(--text) !important; }
.entry-content { font-size: 17.5px; line-height: 1.75; }
.entry-content > p:first-of-type {
  font-size: 20px;
  color: var(--text) !important;
}
.entry-content h2 {
  font-size: 29px;
  margin: 48px 0 16px;
  padding-top: 26px;
  border-top: 1px solid var(--line);
}
.entry-content h3 { font-size: 22px; margin: 36px 0 12px; }
.entry-content blockquote {
  margin: 32px 0;
  padding: 20px 26px;
  border-left: 2px solid var(--amber);
  background: var(--panel) !important;
  font-style: italic;
}
.entry-content ul, .entry-content ol { padding-left: 26px; }
.entry-content li { margin-bottom: 8px; }
.entry-content table {
  width: 100%;
  border-collapse: collapse;
  font-family: var(--font-data);
  font-size: 13.5px;
  margin: 32px 0;
}
.entry-content th, .entry-content td {
  border: 1px solid var(--line);
  padding: 10px 14px;
  text-align: left;
}
.entry-content th {
  background: var(--panel) !important;
  color: var(--text) !important;
  font-weight: 500;
  text-transform: uppercase;
  font-size: 11px;
  letter-spacing: 0.08em;
}
.entry-content img { border: 1px solid var(--line); }
.entry-content code, .entry-content pre {
  font-family: var(--font-data);
  background: var(--panel) !important;
  color: var(--amber) !important;
  padding: 2px 6px;
  font-size: 14px;
}
.entry-content hr { border: 0; border-top: 1px solid var(--line); margin: 40px 0; }

/* rail (sidebar that earns its place) */
.rail { padding: 48px 0 72px 34px; }
.rail__block {
  border: 1px solid var(--line);
  margin-bottom: 26px;
  background: var(--panel) !important;
}
.rail__head {
  padding: 12px 16px;
  border-bottom: 1px solid var(--line);
}
.rail__body { padding: 16px; font-size: 14px; }
.rail__body p { margin: 0 0 10px; color: var(--text-dim) !important; }
.rail__body p:last-child { margin: 0; }
.rail__list { list-style: none; margin: 0; padding: 0; }
.rail__list li {
  border-bottom: 1px solid var(--line-soft);
}
.rail__list li:last-child { border-bottom: 0; }
.rail__list a {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px;
  padding: 11px 0;
  font-size: 14px;
  color: var(--text-dim) !important;
}
.rail__list a:hover { color: var(--amber) !important; }
.rail__list .sc {
  font-family: var(--font-data);
  font-size: 12.5px;
  color: var(--amber) !important;
  flex-shrink: 0;
}
.rail__list .sc.v-pass { color: var(--pass) !important; }
.rail__list .sc.v-fail { color: var(--fail) !important; }

/* home rail blocks under the instrument */
.instrument__extra { margin: 22px 0 0; }
.verdict-mini { display: block; }
.verdict-mini__title {
  display: block;
  font-family: var(--font-display);
  font-size: 17px;
  color: var(--text) !important;
  margin-bottom: 8px;
  line-height: 1.3;
}
.verdict-mini:hover .verdict-mini__title { color: var(--amber) !important; }
.verdict-mini__meta {
  display: flex;
  gap: 14px;
  align-items: baseline;
  font-family: var(--font-data);
  font-size: 12.5px;
}
.verdict-mini__meta b { font-weight: 500; color: var(--amber) !important; text-transform: uppercase; letter-spacing: 0.06em; }
.verdict-mini__meta b.v-pass { color: var(--pass) !important; }
.verdict-mini__meta b.v-fail { color: var(--fail) !important; }
.verdict-mini__meta i { font-style: normal; color: var(--mute) !important; }

/* prev / next protocol footer */
.report__nav {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border-top: 1px solid var(--line);
}
.report__nav a {
  padding: 26px 28px;
  color: var(--text-dim) !important;
}
.report__nav a:hover { background: var(--panel) !important; color: var(--amber) !important; }
.report__nav a + a { border-left: 1px solid var(--line); text-align: right; }
.report__nav .tag { display: block; margin-bottom: 6px; }

/* ==========================================================
   7. PAGES / ARCHIVE / SEARCH / 404 / COMMENTS
   ========================================================== */
.archive-head {
  padding: 48px 0 26px;
  border-bottom: 1px solid var(--line);
}
.archive-head h1 { font-size: 38px; margin: 10px 0 0; }

.page-body { padding: 48px 0 80px; max-width: 760px; }

.notfound { padding: 110px 0 130px; text-align: left; }
.notfound h1 {
  font-family: var(--font-data);
  font-size: 74px;
  color: var(--amber) !important;
}
.searchform { display: flex; max-width: 460px; margin-top: 26px; }
.searchform input[type="search"] {
  flex: 1;
  background: var(--panel) !important;
  border: 1px solid var(--line);
  border-right: 0;
  color: var(--text) !important;
  font-family: var(--font-data);
  font-size: 14px;
  padding: 12px 14px;
}
.searchform button {
  background: var(--amber);
  color: #0B0D0F !important;
  border: 1px solid var(--amber);
  font-family: var(--font-data);
  font-size: 12px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0 20px;
  cursor: pointer;
}

.comments { border-top: 1px solid var(--line); padding: 40px 0 70px; max-width: 760px; }
.comments h2 { font-size: 24px; }
.comment-list { list-style: none; padding: 0; }
.comment-list li { border-bottom: 1px solid var(--line-soft); padding: 18px 0; }
.comment-form input, .comment-form textarea {
  width: 100%;
  background: var(--panel) !important;
  border: 1px solid var(--line);
  color: var(--text) !important;
  font-family: var(--font-body);
  padding: 11px 13px;
  margin-bottom: 12px;
}
.comment-form .submit {
  background: var(--amber);
  border: 0;
  color: #0B0D0F !important;
  font-family: var(--font-data);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-size: 12px;
  padding: 12px 24px;
  cursor: pointer;
  width: auto;
}

/* ==========================================================
   8. FOOTER
   ========================================================== */
.colophon {
  border-top: 1px solid var(--line);
  background: var(--bg) !important;
}
.colophon__grid {
  display: grid;
  grid-template-columns: minmax(0,1.4fr) 1fr 1fr;
}
.colophon__cell {
  padding: 44px 32px 44px 0;
  border-right: 1px solid var(--line);
}
.colophon__cell:last-child { border-right: 0; padding-right: 0; padding-left: 32px; }
.colophon__cell:nth-child(2) { padding-left: 32px; }
.colophon__cell p { font-size: 13.5px; color: var(--mute) !important; max-width: 44ch; }
.colophon__cell ul { list-style: none; margin: 14px 0 0; padding: 0; }
.colophon__cell li { border-bottom: 1px solid var(--line-soft); }
.colophon__cell li a {
  display: block;
  padding: 9px 0;
  font-family: var(--font-data);
  font-size: 12.5px;
  color: var(--text-dim) !important;
}
.colophon__base {
  border-top: 1px solid var(--line);
  padding: 16px 0;
  display: flex;
  justify-content: space-between;
  font-family: var(--font-data);
  font-size: 11px;
  letter-spacing: 0.06em;
  color: var(--mute) !important;
}

/* ==========================================================
   9. RESPONSIVE
   ========================================================== */
@media (max-width: 1000px) {
  .hero__grid { grid-template-columns: 1fr; }
  .hero__thesis { border-right: 0; padding: 52px 0 40px; }
  .instrument { padding: 0 0 44px; }
  .method__grid { grid-template-columns: 1fr 1fr; }
  .method__cell:nth-child(2n) { border-right: 0; }
  .method__cell { border-bottom: 1px solid var(--line); }
  .report__grid { grid-template-columns: 1fr; }
  .report__content { border-right: 0; padding-right: 0; }
  .rail { padding-left: 0; padding-top: 0; }
  .dossier__grid { grid-template-columns: 1fr; }
  .dossier__id { border-right: 0; border-bottom: 1px solid var(--line); padding: 36px 0 26px; }
  .dossier__body { padding: 30px 0 44px; }
  .colophon__grid { grid-template-columns: 1fr; }
  .colophon__cell { border-right: 0; border-bottom: 1px solid var(--line); padding: 30px 0; }
  .colophon__cell:nth-child(2), .colophon__cell:last-child { padding-left: 0; }
}

@media (max-width: 760px) {
  .masthead__inner { flex-wrap: wrap; min-height: 56px; }
  .masthead__brand { border-right: 0; padding: 12px 0; }
  .masthead__live { display: none; }
  .nav-toggle {
    display: block;
    margin-left: auto;
    background: none;
    border: 1px solid var(--line);
    color: var(--text) !important;
    font-family: var(--font-data);
    font-size: 11px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    padding: 9px 14px;
    cursor: pointer;
    align-self: center;
  }
  .masthead__nav { display: none; width: 100%; margin: 0; }
  .masthead__nav.open { display: block; border-top: 1px solid var(--line); }
  .masthead__nav ul { flex-direction: column; }
  .masthead__nav li { border-left: 0; border-bottom: 1px solid var(--line-soft); }
  .masthead__nav a { height: auto; padding: 14px 0; }

  .row {
    grid-template-columns: 44px minmax(0,1fr) 92px;
    min-height: 0;
    padding: 14px 0;
  }
  .row__cat, .row__date { display: none; }
  .row__main { padding-right: 14px; }
  .row__title { font-size: 18px; }
  .hero__cred div { flex: 1 1 100%; border-right: 0; border-bottom: 1px solid var(--line); }
  .hero__cred div:last-child { border-bottom: 0; }
  .verdict { grid-template-columns: 1fr 1fr; }
  .verdict__cell:nth-child(2n) { border-right: 0; }
  .verdict__cell { border-bottom: 1px solid var(--line); }
  .method__grid { grid-template-columns: 1fr; }
  .method__cell { border-right: 0; }
  .report__nav { grid-template-columns: 1fr; }
  .report__nav a + a { border-left: 0; border-top: 1px solid var(--line); text-align: left; }
}
