html { scroll-behavior: smooth; }
body { font-family: 'Inter', system-ui, sans-serif; color: #231f20; background: #f0f0f0; overflow-wrap: anywhere; }
.hex-bg {
  background-color: #231f20;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='49' viewBox='0 0 28 49'%3E%3Cg fill='%23f4ba43' fill-opacity='0.05'%3E%3Cpath d='M13.99 9.25l13 7.5v15l-13 7.5L1 31.75v-15zm0 2.13l11.03 6.37v12.75l-11.03 6.36L3 30.5v-12.74zM1 9.25L-6 13.12v7.75l7 4.03 7-4.03v-7.75zm26 0l7 3.87v7.75l-7 4.03-7-4.03v-7.75z'/%3E%3C/g%3E%3C/svg%3E");
}
.text-gradient {
  background: linear-gradient(135deg, #f4ba43, #e8a020);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.nav-scrolled { box-shadow: 0 2px 20px rgba(35, 31, 32, .12); }
[class~="text-white/68"] { color: rgba(255, 255, 255, .68) !important; }
[class~="text-white/65"] { color: rgba(255, 255, 255, .65) !important; }
[class~="text-white/55"] { color: rgba(255, 255, 255, .55) !important; }
[class~="text-white/45"] { color: rgba(255, 255, 255, .45) !important; }
[class~="text-white/30"] { color: rgba(255, 255, 255, .30) !important; }
[class~="text-white/20"] { color: rgba(255, 255, 255, .20) !important; }
section.hex-bg p:not([class*="text-honey"]) { color: rgba(255, 255, 255, .68); }
.article-copy { min-width: 0; }
.article-copy p { margin-top: 1rem; color: rgba(35, 31, 32, .7); line-height: 1.8; }
.article-copy h2 {
  scroll-margin-top: 7rem;
  margin-top: 4rem;
  font-family: 'Playfair Display', Georgia, serif;
  font-size: clamp(1.8rem, 4vw, 2.4rem);
  line-height: 1.2;
  font-weight: 700;
}
.article-copy h3 {
  scroll-margin-top: 7rem;
  margin-top: 2.25rem;
  font-family: 'Playfair Display', Georgia, serif;
  font-size: 1.35rem;
  line-height: 1.3;
  font-weight: 700;
}
.article-copy ul, .article-copy ol { margin-top: 1rem; padding-left: 1.25rem; color: rgba(35, 31, 32, .7); }
.article-copy ul { list-style: disc; }
.article-copy ol { list-style: decimal; }
.article-copy li { margin: .55rem 0; line-height: 1.7; }
.article-copy a:not(.button-link) { color: #8a570d; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.article-copy strong { color: #231f20; font-weight: 600; }
.article-copy table { width: 100%; border-collapse: collapse; margin-top: 1.5rem; font-size: .94rem; }
.article-copy th, .article-copy td { border: 1px solid rgba(35, 31, 32, .12); padding: .9rem; text-align: left; vertical-align: top; }
.article-copy th { background: #fdf8ee; color: #231f20; font-weight: 600; }
.article-copy tbody tr:nth-child(even) { background: rgba(253, 248, 238, .45); }
.guide-card { transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
.guide-card:hover { transform: translateY(-2px); box-shadow: 0 16px 35px rgba(35, 31, 32, .09); border-color: rgba(232, 160, 32, .5); }
.callout { margin-top: 2rem; border: 1px solid #f5dc9d; border-left: 4px solid #e8a020; border-radius: 1rem; background: #fdf8ee; padding: 1.4rem 1.5rem; }
.callout p:first-child { margin-top: 0; }
.callout-dark { background: #231f20; border-color: #231f20; color: white; }
.callout-dark p, .callout-dark li { color: rgba(255, 255, 255, .72); }
.comparison-scroll { max-width: 100%; overflow: visible; }
.comparison-scroll table { width: 100%; min-width: 0; }
.pricing-table { table-layout: fixed; }
.pricing-table th:first-child, .pricing-table td:first-child { width: 68%; }
.pricing-table th:last-child, .pricing-table td:last-child { width: 32%; }
.pricing-table td:last-child { overflow-wrap: normal; word-break: normal; }
.option-comparison-table { display: block; border: 0; }
.option-comparison-table thead {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
.option-comparison-table tbody { display: grid; gap: 1rem; }
.option-comparison-table tbody tr {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  height: 100%;
  background: #fff !important;
  border: 1px solid rgba(35, 31, 32, .12);
  border-top: 3px solid #e8a020;
  border-radius: 1rem;
  box-shadow: 0 8px 22px rgba(35, 31, 32, .05);
}
.option-comparison-table tbody td {
  display: block;
  width: 100%;
  padding: .9rem 1rem;
  border: 0;
}
.option-comparison-table tbody td + td { border-top: 1px solid rgba(35, 31, 32, .09); }
.option-comparison-table tbody td:first-child { padding: 1rem; background: #fdf8ee; color: #231f20; }
.option-comparison-table tbody td[data-label]::before {
  content: attr(data-label);
  display: block;
  margin-bottom: .35rem;
  color: #8a570d;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .07em;
  line-height: 1.35;
  text-transform: uppercase;
}
.article-copy .option-comparison-table { font-size: .94rem; }
.option-comparison-table tbody td:first-child strong {
  font-family: 'Playfair Display', serif;
  font-size: 1.18rem;
  font-weight: 700;
}
details summary::-webkit-details-marker { display: none; }
.plus-icon { transition: transform .2s ease; }
a:focus-visible, button:focus-visible, summary:focus-visible { outline: 2px solid #e8a020; outline-offset: 3px; }
@media (max-width: 640px) {
  .article-copy h2 { margin-top: 3.25rem; }
  .article-copy table { font-size: .86rem; }
  #wa-widget { right: 16px !important; bottom: 16px !important; }
  #wa-label { display: none !important; }
}
@media (max-width: 767px) {
  .article-copy .pricing-table { display: block; margin-top: 1.25rem; border: 0; font-size: .94rem; }
  .pricing-table thead {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
  }
  .pricing-table tbody { display: grid; gap: 1rem; }
  .pricing-table tbody tr {
    display: block;
    overflow: hidden;
    background: #fff !important;
    border: 1px solid rgba(35, 31, 32, .12);
    border-top: 3px solid #e8a020;
    border-radius: 1rem;
    box-shadow: 0 8px 22px rgba(35, 31, 32, .05);
  }
  .pricing-table tbody td {
    display: block;
    width: 100%;
    padding: .9rem 1rem;
    border: 0;
  }
  .pricing-table tbody td + td { border-top: 1px solid rgba(35, 31, 32, .09); }
  .pricing-table tbody td:first-child { width: 100%; padding: 1rem; background: #fdf8ee; color: #231f20; }
  .pricing-table tbody td:last-child { width: 100%; }
  .pricing-table tbody td[data-label]::before {
    content: attr(data-label);
    display: block;
    margin-bottom: .35rem;
    color: #8a570d;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .07em;
    line-height: 1.35;
    text-transform: uppercase;
  }
  .pricing-table tbody td:last-child { background: rgba(253, 248, 238, .45); }
  .pricing-table tbody td:last-child strong {
    display: block;
    color: #8a570d;
    font-family: 'Playfair Display', serif;
    font-size: 1.28rem;
    font-weight: 700;
    line-height: 1.3;
  }
}
@media (min-width: 700px) {
  .option-comparison-table tbody { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
