
    :root {
      --bg: #faf6ee;
      --alt: #f2eadd;
      --ink: #1b2742;
      --mute: #5d6577;
      --card: #fff;
      --line: #e7dfd0;
      --tag: #efe6d8;
      --amber: #e9a23b;
      --green: #1f7a45;
      --hero: #1b2a4a;
      box-sizing: border-box;
      padding-top: env(safe-area-inset-top, 0px);
      padding-bottom: env(safe-area-inset-bottom, 0px)
    }

    @media (prefers-color-scheme:dark) {
      :root:not([data-theme="light"]) {
        --bg: #141a2a;
        --alt: #1a2236;
        --ink: #f2ede2;
        --mute: #a7afc0;
        --card: #1e2740;
        --line: #2e3957;
        --tag: #27314d
      }
    }

    :root[data-theme="dark"] {
      --bg: #141a2a;
      --alt: #1a2236;
      --ink: #f2ede2;
      --mute: #a7afc0;
      --card: #1e2740;
      --line: #2e3957;
      --tag: #27314d
    }

    * {
      box-sizing: border-box
    }

    body {
      margin: 0;
      background: var(--bg);
      color: var(--ink);
      font: 16px/1.55 "Source Sans 3", system-ui, sans-serif
    }

    h1,
    h2 {
      font-family: "Barlow Condensed", "Arial Narrow", sans-serif;
      line-height: 1.05;
      margin: 0
    }

    .wrap {
      max-width: 1200px;
      margin: 0 auto;
      padding: 0 20px
    }

    .hero {
      background: linear-gradient(90deg, rgba(16, 25, 45, 1.96), rgba(18, 26, 43, .55)), url(../images/dd765ec04b90a1eea11f47a8c414baaa4dfebc11.webp) center/cover, linear-gradient(120deg, #7a6548, #34425c 60%, #1b2336);
      color: #fff;
      padding: 72px 0 64px
    }

    .hero h1 {
      font-size: clamp(40px, 7vw, 60px);
      font-weight: 700;
      max-width: 458px
    }

    .hero .eyebrow {
      color: var(--amber);
      font-size: 12px;
      font-weight: 600;
      letter-spacing: .14em;
      margin-bottom: 22px;
      text-transform: uppercase
    }

    .hero p {
      max-width: 440px;
      color: #d7dce7;
      margin: 22px 0 28px;
    }

    .btn {
      display: inline-block;
      padding: 11px 18px;
      border-radius: 6px;
      font-weight: 600;
      font-size: 14px;
      text-decoration: none;
      border: 1px solid transparent
    }

    .btn.amber {
      background: var(--amber);
      color: #1b2742
    }

    .btn.ghost {
      border-color: rgba(255, 255, 255, .5);
      color: #fff;
      margin-left: 6px
    }

    .btn.dark {
      background: #1b2742;
      color: #fff
    }

    section {
      padding: 64px 0
    }

    section.alt {
      background: var(--alt)
    }

    h2 {
      font-size: 34px;
      font-weight: 700
    }

    .lead {
      color: var(--mute);
      max-width: 300px;
      font-size: 14px;
      margin: 12px 0 28px
    }

    .cards {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 20px
    }

    .card {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 10px;
      padding: 18px
    }

    .card header {
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      gap: 10px
    }

    .card h3 {
      font-family: "Barlow Condensed", sans-serif;
      font-size: 20px;
      margin: 0;
      font-weight: 700
    }

    .price {
      text-align: right;
      font-family: "Barlow Condensed", sans-serif;
      font-size: 26px;
      font-weight: 700;
      line-height: 1
    }

    .price small {
      display: block;
      font: 400 12px "Source Sans 3", sans-serif;
      color: var(--mute);
      margin-top: 4px
    }

    .note {
      background: var(--tag);
      border-radius: 6px;
      padding: 10px 12px;
      font-size: 13px;
      margin: 14px 0
    }

    .meta {
      font-size: 12px;
      color: var(--mute);
      margin-bottom: 14px
    }

    .cols {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px
    }

    .cols h4 {
      font-size: 11px;
      letter-spacing: .14em;
      text-transform: uppercase;
      color: var(--mute);
      margin: 0 0 10px;
      font-weight: 600
    }

    .cols ul {
      list-style: none;
      margin: 0;
      padding: 0;
      font-size: 13px
    }

    .cols li {
      padding-left: 18px;
      position: relative;
      margin-bottom: 10px;
      line-height: 1.35
    }

    .cols li b {
      display: block;
      font-weight: 600
    }

    .cols li span {
      color: var(--mute);
      font-size: 12px
    }

    .in li::before {
      content: "✓";
      position: absolute;
      left: 0;
      color: var(--green);
      font-weight: 700
    }

    .out li::before {
      content: "–";
      position: absolute;
      left: 0;
      color: var(--mute)
    }

    .req {
      display: flex;
      gap: 16px;
      align-items: center;
      margin-top: 24px
    }

    .req p {
      margin: 0;
      font-size: 12px;
      color: var(--mute);
      max-width: 230px
    }

    .split {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 28px;
      align-items: start
    }

    .split p {
      color: var(--mute);
      font-size: 14px;
      max-width: 340px
    }

    a {
      color: inherit
    }

    .spec {
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 8px;
      margin-top: 20px
    }

    .spec div {
      display: grid;
      grid-template-columns: 110px 1fr;
      gap: 12px;
      padding: 12px 14px;
      border-top: 1px solid var(--line);
      font-size: 14px
    }

    .spec div:first-child {
      border-top: 0
    }

    .spec span {
      color: var(--mute)
    }

    .spec b {
      font-weight: 600
    }

    .photo {
      height: 215px;
      border-radius: 8px;
      margin-bottom: 8px
    }

    .p1 {
      background: linear-gradient(#e7b98a, #a2755a 45%, #5b4a45)
    }

    .p2 {
      background: linear-gradient(#a9c8c4, #4e8a8e 50%, #8a8070)
    }

    .cap {
      font-size: 12px;
      color: var(--mute);
      margin: 0 0 16px
    }

    .tbl {
      width: 100%;
      max-width: 420px;
      border-collapse: collapse;
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 8px;
      overflow: hidden;
      font-size: 14px
    }

    .tbl th {
      background: #1b2742;
      color: #fff;
      text-align: right;
      padding: 12px 14px;
      font-weight: 600
    }

    .tbl th:first-child,
    .tbl td:first-child {
      text-align: left
    }

    .tbl td {
      padding: 14px;
      text-align: right;
      border-top: 1px solid var(--line)
    }

    .tbl td:nth-child(2) {
      font-weight: 600
    }

    .foot {
      max-width: 420px;
      background: var(--tag);
      padding: 12px 14px;
      font-size: 12px;
      color: var(--mute);
      border-radius: 0 0 8px 8px
    }

    ul.go {
      padding-left: 20px;
      max-width: 400px;
      margin: 18px 0 0
    }

    ul.go li {
      margin-bottom: 12px
    }

    .tight {
      padding-top: 0
    }

    @media(max-width:760px) {

      .cards,
      .split {
        grid-template-columns: 1fr
      }

      .cols {
        grid-template-columns: 1fr 1fr
      }

      .hero {
        padding: 48px 0
      }
    }