
    :root {
      --ink: #173b3a;
      --ink-deep: #0e2b2a;
      --paper: #f7f2e8;
      --paper-light: #fffdf8;
      --sage: #dfe9dd;
      --sage-dark: #52746e;
      --coral: #e56f55;
      --coral-light: #f9ded5;
      --gold: #c6a45a;
      --line: #d9d2c2;
      --muted: #6e746f;
      --white: #ffffff;
      --shadow: 0 22px 60px rgba(33, 58, 53, .10);
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }

    body {
      margin: 0;
      background: var(--paper);
      color: #283f3c;
      font-family: Arial, Helvetica, sans-serif;
      font-size: 17px;
      line-height: 1.75;
      -webkit-font-smoothing: antialiased;
    }

    .compare-blog {
      overflow: hidden;
      background:
        linear-gradient(90deg, rgba(23, 59, 58, .025) 1px, transparent 1px),
        linear-gradient(rgba(23, 59, 58, .025) 1px, transparent 1px),
        var(--paper);
      background-size: 36px 36px;
    }

    .compare-wrap {
      width: min(1180px, calc(100% - 40px));
      margin: 0 auto;
    }

    .compare-breadcrumb {
      padding: 24px 0;
      color: #738079;
      font-size: 14px;
    }

    .compare-breadcrumb a {
      color: var(--sage-dark);
      text-decoration: none;
    }

    .compare-hero {
      position: relative;
      margin-bottom: 48px;
      padding: 70px 60px 62px;
      border-radius: 2px 2px 34px 34px;
      background: var(--ink-deep);
      color: var(--white);
      box-shadow: var(--shadow);
    }

    .compare-hero::before {
      position: absolute;
      right: -120px;
      top: -150px;
      width: 420px;
      height: 420px;
      border: 1px solid rgba(255,255,255,.16);
      border-radius: 50%;
      content: "";
      box-shadow:
        0 0 0 54px rgba(255,255,255,.025),
        0 0 0 110px rgba(255,255,255,.018);
    }

    .compare-hero::after {
      position: absolute;
      left: 0;
      bottom: 0;
      width: 170px;
      height: 7px;
      background: var(--coral);
      content: "";
    }

    .compare-eyebrow {
      position: relative;
      z-index: 1;
      display: flex;
      align-items: center;
      gap: 12px;
      margin-bottom: 24px;
      color: #f3cbbf;
      font-size: 13px;
      font-weight: 800;
      letter-spacing: .14em;
      text-transform: uppercase;
    }

    .compare-eyebrow::before {
      width: 38px;
      height: 2px;
      background: var(--coral);
      content: "";
    }

    .compare-hero h1 {
      position: relative;
      z-index: 1;
      max-width: 960px;
      margin: 0;
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(43px, 6.3vw, 78px);
      font-weight: 500;
      line-height: 1.04;
      letter-spacing: -.035em;
    }

    .compare-hero h1 em {
      color: #9bc5bb;
      font-style: italic;
    }

    .compare-intro {
      position: relative;
      z-index: 1;
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 32px;
      align-items: end;
      margin-top: 34px;
    }

    .compare-intro p {
      max-width: 760px;
      margin: 0;
      color: #d7e3df;
      font-size: 19px;
      line-height: 1.65;
    }

    .compare-meta {
      color: #9eb5af;
      font-size: 13px;
      text-align: right;
    }

    .compare-verdict {
      display: grid;
      grid-template-columns: 170px 1fr;
      gap: 30px;
      align-items: center;
      margin: 0 0 54px;
      padding: 34px 38px;
      border: 1px solid #e3cabf;
      background: var(--paper-light);
      box-shadow: 10px 10px 0 var(--coral-light);
    }

    .compare-verdict-label {
      color: var(--coral);
      font-size: 13px;
      font-weight: 900;
      letter-spacing: .12em;
      text-transform: uppercase;
    }

    .compare-verdict p {
      margin: 0;
      color: var(--ink);
      font-family: Georgia, "Times New Roman", serif;
      font-size: 23px;
      line-height: 1.55;
    }

    .compare-toc {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-bottom: 58px;
      padding-bottom: 26px;
      border-bottom: 1px solid var(--line);
    }

    .compare-toc a {
      padding: 8px 13px;
      border: 1px solid #cfc6b6;
      border-radius: 999px;
      background: rgba(255,255,255,.45);
      color: var(--ink);
      font-size: 13px;
      font-weight: 700;
      text-decoration: none;
    }

    .compare-toc a:hover {
      border-color: var(--coral);
      color: var(--coral);
    }

    .compare-main {
      max-width: 980px;
      margin: 0 auto;
      padding-bottom: 80px;
    }

    .compare-section {
      scroll-margin-top: 28px;
      margin-bottom: 72px;
    }

    .compare-section-heading {
      display: grid;
      grid-template-columns: 74px 1fr;
      gap: 20px;
      align-items: start;
      margin-bottom: 26px;
    }

    .compare-section-number {
      padding-top: 5px;
      color: var(--coral);
      font-family: Georgia, "Times New Roman", serif;
      font-size: 20px;
      font-style: italic;
    }

    .compare-section h2 {
      margin: 0;
      color: var(--ink-deep);
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(31px, 4vw, 47px);
      font-weight: 500;
      line-height: 1.18;
      letter-spacing: -.02em;
    }

    .compare-section h3 {
      margin: 30px 0 12px;
      color: var(--ink);
      font-size: 21px;
      line-height: 1.35;
    }

    .compare-section p { margin: 0 0 18px; }

    .compare-section a {
      color: #326b65;
      text-decoration-thickness: 1px;
      text-underline-offset: 4px;
    }

    .compare-duo {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 20px;
      margin: 30px 0;
    }

    .compare-card {
      position: relative;
      min-height: 310px;
      padding: 32px;
      border: 1px solid #d5cdbd;
      background: var(--paper-light);
    }

    .compare-card--laser { border-top: 7px solid var(--coral); }
    .compare-card--needle { border-top: 7px solid #719489; }

    .compare-card-tag {
      display: inline-block;
      margin-bottom: 18px;
      padding: 6px 10px;
      background: #efe8dc;
      color: #6b695f;
      font-size: 11px;
      font-weight: 900;
      letter-spacing: .12em;
      text-transform: uppercase;
    }

    .compare-card h3 {
      margin: 0 0 13px;
      font-family: Georgia, "Times New Roman", serif;
      font-size: 29px;
      font-weight: 500;
    }

    .compare-card p {
      color: #56635e;
      font-size: 16px;
      line-height: 1.65;
    }

    .compare-card ul {
      margin: 18px 0 0;
      padding: 0;
      list-style: none;
    }

    .compare-card li {
      position: relative;
      margin: 9px 0;
      padding-left: 23px;
      color: #445753;
      font-size: 15px;
      line-height: 1.5;
    }

    .compare-card li::before {
      position: absolute;
      left: 0;
      top: .68em;
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: var(--coral);
      content: "";
      transform: translateY(-50%);
    }

    .compare-card--needle li::before { background: #719489; }

    .compare-table-wrap {
      overflow-x: auto;
      margin: 30px 0;
      border: 1px solid #cdc5b6;
      background: var(--paper-light);
      box-shadow: var(--shadow);
    }

    .compare-table {
      width: 100%;
      min-width: 760px;
      border-collapse: collapse;
    }

    .compare-table th,
    .compare-table td {
      padding: 18px 20px;
      border-bottom: 1px solid #e2dccf;
      text-align: left;
      vertical-align: top;
    }

    .compare-table th {
      color: var(--white);
      font-size: 13px;
      line-height: 1.4;
    }

    .compare-table th:first-child { background: #6a6256; }
    .compare-table th:nth-child(2) { background: #b95945; }
    .compare-table th:nth-child(3) { background: #52746e; }

    .compare-table td:first-child {
      width: 23%;
      color: var(--ink-deep);
      font-weight: 800;
    }

    .compare-table tr:last-child td { border-bottom: 0; }

    .compare-note {
      margin: 28px 0;
      padding: 25px 28px;
      border-left: 5px solid var(--gold);
      background: #fff9e9;
    }

    .compare-note strong { color: #765c25; }
    .compare-note p:last-child { margin-bottom: 0; }

    .compare-evidence {
      display: grid;
      grid-template-columns: 112px 1fr;
      gap: 24px;
      margin: 28px 0;
      padding: 30px;
      background: var(--sage);
    }

    .compare-evidence-badge {
      display: grid;
      width: 88px;
      height: 88px;
      place-items: center;
      border: 1px solid #92aa9f;
      border-radius: 50%;
      color: var(--ink);
      font-family: Georgia, "Times New Roman", serif;
      font-size: 18px;
      font-style: italic;
      text-align: center;
    }

    .compare-evidence h3 { margin-top: 0; }
    .compare-evidence p:last-child { margin-bottom: 0; }

    .compare-path {
      counter-reset: decision;
      display: grid;
      gap: 14px;
      margin: 30px 0;
    }

    .compare-path-item {
      counter-increment: decision;
      display: grid;
      grid-template-columns: 54px 1fr;
      gap: 18px;
      align-items: start;
      padding: 22px 24px;
      border: 1px solid #d6cebf;
      background: rgba(255,255,255,.52);
    }

    .compare-path-item::before {
      display: grid;
      width: 42px;
      height: 42px;
      place-items: center;
      border-radius: 50%;
      background: var(--ink);
      color: var(--white);
      content: counter(decision, decimal-leading-zero);
      font-size: 12px;
      font-weight: 900;
    }

    .compare-path-item h3 { margin: 1px 0 6px; }
    .compare-path-item p { margin: 0; color: #5b6661; }

    .compare-checklist {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
      margin: 26px 0;
      padding: 0;
      list-style: none;
    }

    .compare-checklist li {
      position: relative;
      padding: 15px 16px 15px 45px;
      border: 1px solid #d7cfbf;
      background: #fffdf7;
    }

    .compare-checklist li::before {
      position: absolute;
      left: 17px;
      top: 15px;
      color: var(--coral);
      content: "✓";
      font-weight: 900;
    }

    .compare-cta {
      position: relative;
      overflow: hidden;
      margin: 74px 0;
      padding: 48px;
      background: var(--coral);
      color: var(--white);
    }

    .compare-cta::after {
      position: absolute;
      right: -80px;
      bottom: -100px;
      width: 260px;
      height: 260px;
      border: 38px solid rgba(255,255,255,.12);
      border-radius: 50%;
      content: "";
    }

    .compare-cta > * { position: relative; z-index: 1; }

    .compare-cta-label {
      color: #5d251a;
      font-size: 12px;
      font-weight: 900;
      letter-spacing: .12em;
      text-transform: uppercase;
    }

    .compare-cta h2 {
      max-width: 720px;
      margin: 10px 0 16px;
      color: var(--white);
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(31px, 4vw, 48px);
      font-weight: 500;
      line-height: 1.15;
    }

    .compare-cta p {
      max-width: 760px;
      color: #fff1ed;
    }

    .compare-button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 52px;
      margin-top: 10px;
      padding: 13px 22px;
      border: 1px solid var(--white);
      background: var(--white);
      color: var(--ink-deep) !important;
      font-weight: 900;
      text-decoration: none !important;
      transition: transform .2s ease, box-shadow .2s ease;
    }

    .compare-button:hover {
      transform: translateY(-2px);
      box-shadow: 0 12px 25px rgba(82, 35, 24, .18);
    }

    .compare-faq {
      border-top: 1px solid var(--line);
    }

    .compare-faq-item {
      border-bottom: 1px solid var(--line);
    }

    .compare-faq-item summary {
      position: relative;
      padding: 22px 54px 22px 0;
      color: var(--ink-deep);
      cursor: pointer;
      font-family: Georgia, "Times New Roman", serif;
      font-size: 21px;
      line-height: 1.4;
      list-style: none;
    }

    .compare-faq-item summary::-webkit-details-marker { display: none; }

    .compare-faq-item summary::after {
      position: absolute;
      right: 8px;
      top: 50%;
      width: 30px;
      height: 30px;
      border: 1px solid #bfb6a5;
      border-radius: 50%;
      color: var(--coral);
      content: "+";
      font-family: Arial, Helvetica, sans-serif;
      line-height: 28px;
      text-align: center;
      transform: translateY(-50%);
    }

    .compare-faq-item[open] summary::after { content: "−"; }

    .compare-faq-answer {
      max-width: 820px;
      padding: 0 0 22px;
      color: #596460;
    }

    .compare-faq-answer p { margin: 0; }

    .compare-sources {
      padding: 28px;
      background: #ece6d9;
    }

    .compare-sources ol {
      margin: 16px 0 0;
      padding-left: 22px;
      font-size: 14px;
    }

    .compare-sources li { margin-bottom: 10px; }

    .compare-disclaimer {
      margin-top: 28px;
      color: #6d736e;
      font-size: 13px;
      line-height: 1.65;
    }

    @media (max-width: 820px) {
      .compare-hero { padding: 54px 34px 46px; }
      .compare-intro { grid-template-columns: 1fr; }
      .compare-meta { text-align: left; }
      .compare-verdict { grid-template-columns: 1fr; gap: 12px; }
      .compare-duo { grid-template-columns: 1fr; }
      .compare-evidence { grid-template-columns: 1fr; }
      .compare-checklist { grid-template-columns: 1fr; }
    }

    @media (max-width: 600px) {
      body { font-size: 16px; }
      .compare-wrap { width: min(100% - 24px, 1180px); }
      .compare-breadcrumb { padding: 17px 0; }
      .compare-hero { padding: 42px 22px 38px; border-radius: 0 0 24px 24px; }
      .compare-hero h1 { font-size: 42px; }
      .compare-intro p { font-size: 17px; }
      .compare-verdict { padding: 27px 22px; }
      .compare-verdict p { font-size: 20px; }
      .compare-section { margin-bottom: 56px; }
      .compare-section-heading { grid-template-columns: 1fr; gap: 4px; }
      .compare-card { padding: 25px 22px; }
      .compare-path-item { grid-template-columns: 44px 1fr; padding: 19px 16px; }
      .compare-cta { margin: 56px 0; padding: 34px 24px; }
      .compare-button { width: 100%; text-align: center; }
    }
  