*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

    :root {
      --ink: #1a1208;
      --ink-mid: #3d3325;
      --ink-light: #6b5f50;
      --cream: #fdf8f0;
      --cream-2: #f5ede0;
      --gold: #b8860b;
      --gold-light: #e8c96a;
      --gold-pale: #fef9e7;
      --teal: #0f5f5a;
      --teal-pale: #e6f5f4;
      --red: #8b1a1a;
      --red-pale: #fdf0f0;
      --border: rgba(184,134,11,0.18);
    }

    body {
      font-family: 'Source Serif 4', Georgia, serif;
      background: var(--cream);
      color: var(--ink);
      font-size: 17px;
      line-height: 1.8;
    }

    /* ── HEADER ── */
    .site-header {
      background: var(--ink);
      padding: 10px 24px;
      display: flex;
      align-items: center;
      justify-content: space-between;
    }
    .site-header .logo {
      font-family: 'Playfair Display', serif;
      color: var(--gold-light);
      font-size: 18px;
      letter-spacing: .04em;
      text-decoration: none;
    }
    .site-header .tag-line {
      font-family: 'DM Sans', sans-serif;
      font-size: 11px;
      color: #a09070;
      letter-spacing: .08em;
      text-transform: uppercase;
    }

    /* ── HERO ── */
    .hero {
      background: var(--ink);
      color: #fff;
      padding: 72px 24px 64px;
      text-align: center;
      position: relative;
      overflow: hidden;
    }
    .hero::before {
      content: '';
      position: absolute;
      inset: 0;
      background: repeating-linear-gradient(
        -45deg,
        transparent,
        transparent 28px,
        rgba(184,134,11,0.04) 28px,
        rgba(184,134,11,0.04) 30px
      );
    }
    .hero-category {
      font-family: 'DM Sans', sans-serif;
      font-size: 11px;
      letter-spacing: .14em;
      text-transform: uppercase;
      color: var(--gold-light);
      margin-bottom: 20px;
    }
    .hero h1 {
      font-family: 'Playfair Display', serif;
      font-size: clamp(28px, 5vw, 52px);
      font-weight: 900;
      line-height: 1.15;
      max-width: 860px;
      margin: 0 auto 24px;
      position: relative;
    }
    .hero h1 em {
      font-style: italic;
      color: var(--gold-light);
    }
    .hero-sub {
      font-family: 'Source Serif 4', serif;
      font-style: italic;
      font-size: 17px;
      color: #c4b49a;
      max-width: 600px;
      margin: 0 auto 32px;
      position: relative;
    }
    .hero-meta {
      font-family: 'DM Sans', sans-serif;
      font-size: 12px;
      color: #7a6a52;
      letter-spacing: .06em;
      position: relative;
    }
    .hero-meta span { margin: 0 10px; }

    /* ── LAYOUT ── */
    .container {
      max-width: 780px;
      margin: 0 auto;
      padding: 0 24px;
    }
				
				.img-caption img{ width:100%;}
				
				.buttons {
    margin: 20px 0px;
    text-align: center;
}
		
		.phasebutton {
    padding: 8px 12px;
    border: solid 1px #ccc;
    text-align: center;
    background-color: #0a53a0;
    margin-right: 20px;
    color: #fff;
    cursor: pointer;
}
				
				header {
    padding: 0px 0 !important;
    height: 0px !important;
}

    /* ── QUICK ANSWER BOX ── */
    .quick-answer {
      background: var(--gold-pale);
      border: 1.5px solid var(--gold-light);
      border-radius: 10px;
      padding: 28px 32px;
      margin: 48px 0 0;
    }
    .quick-answer .qa-label {
      font-family: 'DM Sans', sans-serif;
      font-size: 11px;
      font-weight: 500;
      letter-spacing: .12em;
      text-transform: uppercase;
      color: var(--gold);
      margin-bottom: 10px;
    }
    .quick-answer p {
      font-size: 16px;
      line-height: 1.7;
      color: var(--ink-mid);
    }

    /* ── ARTICLE BODY ── */
    .article-body { padding: 56px 0 80px; }

    .article-body p {
      margin-bottom: 22px;
      color: var(--ink-mid);
    }

    h2 {
      font-family: 'Playfair Display', serif;
      font-size: clamp(22px, 3vw, 30px);
      font-weight: 700;
      color: var(--ink);
      margin: 60px 0 20px;
      padding-bottom: 12px;
      border-bottom: 2px solid var(--border);
    }

    h3 {
      font-family: 'Playfair Display', serif;
      font-size: 20px;
      font-weight: 700;
      color: var(--ink);
      margin: 36px 0 14px;
    }

    /* ── COST TABLE ── */
    .cost-table-wrap {
      overflow-x: auto;
      margin: 32px 0;
      border-radius: 10px;
      border: 1px solid var(--border);
    }
    table {
      width: 100%;
      border-collapse: collapse;
      font-family: 'DM Sans', sans-serif;
      font-size: 14px;
    }
    thead tr {
      background: var(--ink);
      color: var(--gold-light);
    }
    thead th {
      padding: 14px 18px;
      text-align: left;
      font-weight: 500;
      letter-spacing: .04em;
    }
    tbody tr:nth-child(odd) { background: #fff; }
    tbody tr:nth-child(even) { background: var(--cream-2); }
    tbody td {
      padding: 12px 18px;
      color: var(--ink-mid);
      border-top: 1px solid var(--border);
    }
    tbody td:last-child {
      font-weight: 500;
      color: var(--ink);
    }
    tfoot tr { background: var(--ink); }
    tfoot td {
      padding: 14px 18px;
      color: var(--gold-light);
      font-weight: 500;
      border-top: 2px solid var(--gold);
    }

    /* ── CALLOUT BOXES ── */
    .callout {
      border-radius: 10px;
      padding: 22px 28px;
      margin: 32px 0;
    }
    .callout .callout-title {
      font-family: 'DM Sans', sans-serif;
      font-size: 11px;
      font-weight: 500;
      letter-spacing: .12em;
      text-transform: uppercase;
      margin-bottom: 10px;
    }
    .callout p { margin-bottom: 0; font-size: 15px; }

    .callout-tip {
      background: var(--teal-pale);
      border-left: 4px solid var(--teal);
    }
    .callout-tip .callout-title { color: var(--teal); }
    .callout-tip p { color: #1a4a47; }

    .callout-warn {
      background: var(--red-pale);
      border-left: 4px solid var(--red);
    }
    .callout-warn .callout-title { color: var(--red); }
    .callout-warn p { color: #5a1010; }

    .callout-info {
      background: var(--gold-pale);
      border-left: 4px solid var(--gold);
    }
    .callout-info .callout-title { color: var(--gold); }
    .callout-info p { color: var(--ink-mid); }

    /* ── CASE STUDY CARD ── */
    .case-study {
      background: var(--ink);
      color: #fff;
      border-radius: 12px;
      padding: 36px 36px 32px;
      margin: 40px 0;
    }
    .case-study .cs-label {
      font-family: 'DM Sans', sans-serif;
      font-size: 11px;
      letter-spacing: .14em;
      text-transform: uppercase;
      color: var(--gold-light);
      margin-bottom: 10px;
    }
    .case-study h3 {
      font-family: 'Playfair Display', serif;
      font-size: 20px;
      color: #fff;
      margin: 0 0 18px;
    }
    .case-study .cs-row {
      display: flex;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
      margin-top: 20px;
    }
    .case-study .cs-item {
      flex: 1;
      min-width: 130px;
      background: rgba(255,255,255,0.06);
      border: 1px solid rgba(232,201,106,0.2);
      border-radius: 8px;
      padding: 14px 18px;
    }
    .case-study .cs-item .label {
      font-family: 'DM Sans', sans-serif;
      font-size: 11px;
      color: #a09070;
      letter-spacing: .06em;
      margin-bottom: 6px;
    }
    .case-study .cs-item .value {
      font-family: 'DM Sans', sans-serif;
      font-size: 17px;
      font-weight: 500;
      color: var(--gold-light);
    }
    .case-study p { color: #c4b49a; font-size: 15px; margin-bottom: 0; }

    /* ── IMAGE PLACEHOLDER ── */
    .img-block {
      background: var(--cream-2);
      border: 1px dashed var(--border);
      border-radius: 10px;
      padding: 32px;
      margin: 32px 0;
      text-align: center;
    }
    .img-block .img-icon { font-size: 28px; margin-bottom: 10px; color: var(--gold); }
    .img-block .img-caption {
      font-family: 'DM Sans', sans-serif;
      font-size: 13px;
      color: var(--ink-light);
      line-height: 1.5;
    }
    .img-block .alt-note {
      font-size: 11px;
      color: #9a8c7a;
      margin-top: 6px;
      font-family: 'DM Sans', sans-serif;
    }

    /* ── CHECKLIST ── */
    .checklist {
      list-style: none;
      margin: 20px 0 28px;
    }
    .checklist li {
      display: flex;
      align-items: flex-start;
      gap: 12px;
      padding: 8px 0;
      border-bottom: 1px solid var(--border);
      color: var(--ink-mid);
      font-size: 16px;
    }
    .checklist li:last-child { border-bottom: none; }
    .checklist li::before {
      content: '✓';
      flex-shrink: 0;
      width: 22px;
      height: 22px;
      background: var(--teal);
      color: #fff;
      border-radius: 50%;
      font-size: 11px;
      font-weight: 700;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-top: 2px;
      font-family: 'DM Sans', sans-serif;
    }

    /* ── FAQ ── */
    .faq-item {
      border: 1px solid var(--border);
      border-radius: 10px;
      margin-bottom: 14px;
      overflow: hidden;
    }
    .faq-q {
      background: var(--cream-2);
      padding: 18px 22px;
      font-family: 'DM Sans', sans-serif;
      font-size: 15px;
      font-weight: 500;
      color: var(--ink);
    }
    .faq-a {
      padding: 16px 22px;
      font-size: 15px;
      color: var(--ink-mid);
      line-height: 1.7;
    }

    /* ── PULL QUOTE ── */
    .pull-quote {
      border-left: 5px solid var(--gold);
      padding: 18px 28px;
      margin: 36px 0;
      font-family: 'Source Serif 4', serif;
      font-style: italic;
      font-size: 20px;
      color: var(--ink-mid);
      background: var(--gold-pale);
      border-radius: 0 10px 10px 0;
    }

    /* ── CONCLUSION ── */
    .conclusion {
      background: var(--cream-2);
      border-top: 3px solid var(--gold);
      padding: 40px 36px;
      border-radius: 0 0 12px 12px;
      margin-top: 40px;
    }
    .conclusion h2 {
      border: none;
      padding: 0;
      margin-top: 0;
    }

    /* ── CTA ── */
    .cta-box {
      background: var(--teal);
      color: #fff;
      border-radius: 12px;
      padding: 36px 40px;
      margin: 48px 0;
      text-align: center;
    }
    .cta-box h3 {
      font-family: 'Playfair Display', serif;
      color: #fff;
      font-size: 22px;
      margin: 0 0 12px;
    }
    .cta-box p {
      color: rgba(255,255,255,0.75);
      font-size: 15px;
      margin-bottom: 22px;
    }
    .cta-box .cta-btn {
      display: inline-block;
      background: var(--gold-light);
      color: var(--ink);
      font-family: 'DM Sans', sans-serif;
      font-size: 14px;
      font-weight: 500;
      padding: 12px 28px;
      border-radius: 6px;
      text-decoration: none;
      letter-spacing: .04em;
    }

    /* ── FOOTER ── */
    footer {
      background: var(--ink);
      color: #7a6a52;
      text-align: center;
      padding: 32px 24px;
      font-family: 'DM Sans', sans-serif;
      font-size: 13px;
    }
    footer a { color: var(--gold-light); text-decoration: none; }

    @media (max-width: 580px) {
      .hero { padding: 52px 20px 44px; }
      h2 { font-size: 22px; }
      .case-study { padding: 24px 20px; }
      .conclusion { padding: 28px 20px; }
      .cta-box { padding: 28px 20px; }
    }