/* Compiled styling, built directly into this page — no external file, no internet download needed */
*, ::before, ::after { box-sizing: border-box; border-width: 0; border-style: solid; }
body { margin: 0; }
a { color: inherit; text-decoration: inherit; }
svg { display: block; vertical-align: middle; }

/* Custom font-family utility (from the site's original tailwind.config) */
ul, ol { list-style: none; margin: 0; padding: 0; }
h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; margin: 0; }
button { font-family: inherit; font-size: 100%; }
p { margin: 0; }
  .cmp-table { border-collapse:collapse; width:100%; table-layout:fixed; }
  .cmp-table th { text-align:left; font-size:0.72rem; text-transform:uppercase; letter-spacing:0.06em; font-weight:700; color:var(--faint); padding:0.6rem 0.6rem; overflow-wrap:break-word; }
  .cmp-table td { font-size:0.78rem; padding:0.6rem; vertical-align:top; border-top:1px solid var(--line); color:#37443E; line-height:1.45; overflow-wrap:break-word; }
  .cmp-table td:first-child { font-weight:600; color:var(--muted); width:24%; }
.font-display { font-family: 'Fraunces', Georgia, serif; }

/* Display / layout */
.block { display: block; }
.inline { display: inline; }
.inline-flex { display: inline-flex; }
.flex { display: flex; }
.grid { display: grid; }
.hidden { display: none; }
.relative { position: relative; }
.sticky { position: sticky; }
.top-0 { top: 0px; }
.z-10 { z-index: 10; }
.z-50 { z-index: 50; }
.overflow-x-auto { overflow-x: auto; }
.w-full { width: 100%; }

/* Flexbox */
.flex-1 { flex: 1 1 0%; }
.flex-col { flex-direction: column; }
.flex-wrap { flex-wrap: wrap; }
.flex-shrink-0 { flex-shrink: 0; }
.items-center { align-items: center; }
.items-start { align-items: flex-start; }
.justify-between { justify-content: space-between; }
.justify-center { justify-content: center; }
.align-top { vertical-align: top; }

/* Grid */
.grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }

/* Gap */
.gap-1\.5 { gap: 0.375rem; }
.gap-2 { gap: 0.5rem; }
.gap-2\.5 { gap: 0.625rem; }
.gap-3 { gap: 0.75rem; }
.gap-4 { gap: 1rem; }
.gap-5 { gap: 1.25rem; }
.gap-10 { gap: 2.5rem; }
.gap-12 { gap: 3rem; }
.gap-x-6 { column-gap: 1.5rem; }
.gap-y-2 { row-gap: 0.5rem; }

/* Spacing: margin */
.mx-auto { margin-left: auto; margin-right: auto; }
.mt-0\.5 { margin-top: 0.125rem; } .mt-1 { margin-top: 0.25rem; } .mt-2 { margin-top: 0.5rem; }
.mt-3 { margin-top: 0.75rem; } .mt-4 { margin-top: 1rem; } .mt-5 { margin-top: 1.25rem; }
.mt-8 { margin-top: 2rem; } .mt-10 { margin-top: 2.5rem; }
.mb-1 { margin-bottom: 0.25rem; } .mb-2 { margin-bottom: 0.5rem; } .mb-3 { margin-bottom: 0.75rem; }
.mb-4 { margin-bottom: 1rem; } .mb-6 { margin-bottom: 1.5rem; } .mb-7 { margin-bottom: 1.75rem; }
.mb-8 { margin-bottom: 2rem; } .mb-10 { margin-bottom: 2.5rem; }
.my-4 { margin-top: 1rem; margin-bottom: 1rem; }
.my-5 { margin-top: 1.25rem; margin-bottom: 1.25rem; }
.my-8 { margin-top: 2rem; margin-bottom: 2rem; }

/* Spacing: padding */
.p-5 { padding: 1.25rem; } .p-6 { padding: 1.5rem; }
.px-3 { padding-left: 0.75rem; padding-right: 0.75rem; }
.px-5 { padding-left: 1.25rem; padding-right: 1.25rem; }
.px-7 { padding-left: 1.75rem; padding-right: 1.75rem; }
.py-2\.5 { padding-top: 0.625rem; padding-bottom: 0.625rem; }
.py-3 { padding-top: 0.75rem; padding-bottom: 0.75rem; }
.py-3\.5 { padding-top: 0.875rem; padding-bottom: 0.875rem; }
.py-4 { padding-top: 1rem; padding-bottom: 1rem; }
.py-10 { padding-top: 2.5rem; padding-bottom: 2.5rem; }
.py-12 { padding-top: 3rem; padding-bottom: 3rem; }
.pb-3 { padding-bottom: 0.75rem; } .pb-4 { padding-bottom: 1rem; } .pb-5 { padding-bottom: 1.25rem; }
.pb-6 { padding-bottom: 1.5rem; } .pb-8 { padding-bottom: 2rem; }
.pb-14 { padding-bottom: 3.5rem; } .pb-16 { padding-bottom: 4rem; }
.pt-1 { padding-top: 0.25rem; } .pt-2 { padding-top: 0.5rem; } .pt-3 { padding-top: 0.75rem; }
.pt-6 { padding-top: 1.5rem; } .pt-10 { padding-top: 2.5rem; } .pt-12 { padding-top: 3rem; }
.pt-14 { padding-top: 3.5rem; }

/* Sizing */
.w-3 { width: 0.75rem; } .w-3\.5 { width: 0.875rem; } .w-4 { width: 1rem; }
.w-5 { width: 1.25rem; } .w-8 { width: 2rem; }
.h-3 { height: 0.75rem; } .h-3\.5 { height: 0.875rem; } .h-4 { height: 1rem; }
.h-5 { height: 1.25rem; } .h-8 { height: 2rem; }
.max-w-lg { max-width: 32rem; } .max-w-xl { max-width: 36rem; } .max-w-2xl { max-width: 42rem; }
.max-w-3xl { max-width: 48rem; } .max-w-4xl { max-width: 56rem; } .max-w-5xl { max-width: 64rem; }
.max-w-xs { max-width: 20rem; }

/* Typography */
.text-xs { font-size: 0.75rem; line-height: 1rem; }
.text-sm { font-size: 0.875rem; line-height: 1.25rem; }
.text-base { font-size: 1rem; line-height: 1.5rem; }
.text-lg { font-size: 1.125rem; line-height: 1.75rem; }
.text-xl { font-size: 1.25rem; line-height: 1.75rem; }
.font-medium { font-weight: 500; }
.font-semibold { font-weight: 600; }
.font-bold { font-weight: 700; }
.leading-tight { line-height: 1.25; }
.leading-relaxed { line-height: 1.625; }
.tracking-tight { letter-spacing: -0.025em; }
.tracking-wider { letter-spacing: 0.05em; }
.text-left { text-align: left; }
.text-center { text-align: center; }
.uppercase { text-transform: uppercase; }
.no-underline { text-decoration: none; }
.text-white { color: #fff; }

/* Borders / radius */
.rounded-lg { border-radius: 0.5rem; }
.rounded-xl { border-radius: 0.75rem; }
.rounded-2xl { border-radius: 1rem; }

/* Space-between-children helpers */
.space-y-2 > :not([hidden]) ~ :not([hidden]) { margin-top: 0.5rem; }
.space-y-2\.5 > :not([hidden]) ~ :not([hidden]) { margin-top: 0.625rem; }
.space-y-3 > :not([hidden]) ~ :not([hidden]) { margin-top: 0.75rem; }
.space-y-4 > :not([hidden]) ~ :not([hidden]) { margin-top: 1rem; }
.space-y-6 > :not([hidden]) ~ :not([hidden]) { margin-top: 1.5rem; }

/* Transitions */
.transition-all { transition-property: all; transition-timing-function: cubic-bezier(0.4,0,0.2,1); transition-duration: 150ms; }
.duration-300 { transition-duration: 300ms; }

/* Responsive (min-width: 640px), matching Tailwind's default "sm" breakpoint */
@media (min-width: 640px) {
  .sm\:block { display: block; }
  .sm\:flex-row { flex-direction: row; }
  .sm\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sm\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sm\:justify-between { justify-content: space-between; }
  .sm\:p-6 { padding: 1.5rem; }
  .sm\:p-7 { padding: 1.75rem; }
  .sm\:p-8 { padding: 2rem; }
  .sm\:pb-9 { padding-bottom: 2.25rem; }
  .sm\:pt-20 { padding-top: 5rem; }
  .sm\:px-8 { padding-left: 2rem; padding-right: 2rem; }
  .sm\:px-9 { padding-left: 2.25rem; padding-right: 2.25rem; }
  .sm\:text-left { text-align: left; }
}

:root { --mist:#F6F7F4; --surface:#FFFFFF; --ink:#1F2A26; --pine:#2F5D50; --soft:#E9F0EC; --line:#DDE4DE; --muted:#66736D; --faint:#94A09A; }
  body { font-family:'Inter',system-ui,sans-serif; background:var(--mist); color:var(--ink); -webkit-font-smoothing:antialiased; }
  .font-display { font-family:'Fraunces',Georgia,serif; }
  .prose-calm p { font-size:1rem; line-height:1.85; color:#37443E; margin-bottom:1.1rem; }
  .prose-calm h2 { font-family:'Fraunces',Georgia,serif; font-weight:600; font-size:1.45rem; color:var(--ink); margin:2.5rem 0 0.9rem; }
  .short-box { background:var(--soft); border:1px solid var(--line); border-radius:1.1rem; padding:1.4rem 1.5rem; }
  .short-box li { display:flex; gap:0.6rem; align-items:flex-start; font-size:0.95rem; line-height:1.7; color:#37443E; padding:0.3rem 0; }
  .inc-chip { display:flex; align-items:flex-start; gap:0.7rem; background:var(--surface); border:1px solid var(--line); border-radius:0.9rem; padding:0.9rem 1rem; margin-bottom:0.6rem; }
  .cost-row { margin-bottom:0.9rem; }
  .cost-lbl { display:flex; justify-content:space-between; font-size:0.85rem; font-weight:600; color:var(--ink); margin-bottom:0.3rem; }
  .cost-bar { height:0.9rem; border-radius:9999px; background:var(--soft); overflow:hidden; }
  .cost-fill { height:100%; border-radius:9999px; background:var(--pine); }
  .save-card { background:var(--soft); border:1px solid var(--line); border-radius:1rem; padding:1.1rem 1.2rem; margin-bottom:0.75rem; }
  .save-name { font-weight:600; font-size:0.9rem; color:var(--ink); margin-bottom:0.25rem; }
  .save-desc { font-size:0.85rem; line-height:1.65; color:#4A574F; }
  .faq-item summary { list-style:none; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:0.75rem; padding:0.9rem 0; font-weight:600; font-size:0.95rem; color:var(--ink); }
  .faq-item summary::-webkit-details-marker { display:none; }
  .faq-chev { flex-shrink:0; color:var(--pine); transition:transform 0.2s ease; }
  .faq-item[open] .faq-chev { transform:rotate(180deg); }
  a:focus-visible, summary:focus-visible { outline:3px solid var(--pine); outline-offset:3px; border-radius:6px; }

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

/* Database-specific styles deliberately override inherited article/table rules. */
.db-page{max-width:72rem;margin:0 auto;padding:2.5rem 1.25rem 4rem}
@media(min-width:640px){.db-page{padding-left:2rem;padding-right:2rem}}
.db-intro{max-width:48rem;margin-bottom:1.5rem}
.db-intro h1{font-family:'Fraunces',Georgia,serif;font-weight:500;line-height:1.15;font-size:clamp(1.9rem,6vw,2.7rem);color:var(--ink)}
.db-intro p{margin-top:.8rem;color:#41504A;font-size:.95rem;line-height:1.7}
.db-dataset-label{margin:0 0 .65rem;font-family:'Inter',system-ui,sans-serif;font-size:.76rem;line-height:1.45;font-weight:600;color:var(--muted)}
.db-controls{background:var(--surface);border:1px solid var(--line);border-radius:1rem;padding:1rem;margin-bottom:1rem}
.db-control-grid{display:grid;gap:.8rem}
@media(min-width:760px){.db-control-grid{grid-template-columns:1.55fr .8fr .8fr 1fr}}
.db-label{display:block;font-family:'Inter',system-ui,sans-serif;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:.35rem}
.db-input,.db-select{width:100%;border:1px solid var(--line);border-radius:.7rem;background:#fff;color:var(--ink);padding:.72rem .8rem;font-family:'Inter',system-ui,sans-serif;font-size:16px;line-height:1.35}
.db-input:focus,.db-select:focus{outline:none;border-color:var(--pine);box-shadow:0 0 0 3px var(--soft)}
.db-control-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.7rem;margin-top:.85rem;padding-top:.85rem;border-top:1px solid var(--line)}
.db-count,.db-clear{font-family:'Inter',system-ui,sans-serif;font-size:.8rem}
.db-count{color:var(--muted)}
.db-clear{background:none;border:none;color:var(--pine);font-weight:600;cursor:pointer}
.db-table-wrap{background:var(--surface);border:1px solid var(--line);border-radius:1rem;overflow:auto;box-shadow:0 8px 24px rgba(31,42,38,.035)}
.db-table,.db-table *{font-family:'Inter',system-ui,sans-serif}
.db-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;min-width:980px;font-size:13px;line-height:1.45;color:#37443E}
.db-table col.col-name{width:24%}.db-table col.col-county{width:13%}.db-table col.col-price{width:9%}.db-table col.col-operator{width:19%}.db-table col.col-owner{width:13%}.db-table col.col-date{width:13%}
.db-table thead th{position:sticky;top:0;z-index:2;background:#F7F9F7;text-align:left;padding:12px 14px;border:0;border-bottom:1px solid var(--line);font-family:'Inter',system-ui,sans-serif;font-size:11px;line-height:1.2;font-weight:700;text-transform:uppercase;letter-spacing:.055em;color:var(--muted);white-space:nowrap}
.db-table thead th:first-child{border-top-left-radius:1rem}.db-table thead th:last-child{border-top-right-radius:1rem}
.db-table th.num,.db-table td.num{text-align:right}
.db-table tbody td{padding:12px 14px;border:0;border-bottom:1px solid #E8ECE8;vertical-align:middle;font-family:'Inter',system-ui,sans-serif;font-size:13px;line-height:1.45;font-weight:400;color:#3D4943;overflow-wrap:normal}
.db-table tbody tr:last-child td{border-bottom:0}
.db-table tbody tr:nth-child(even) td{background:#FCFDFC}
.db-table tbody tr:hover td{background:var(--soft)}
.db-name{display:block;font-family:'Inter',system-ui,sans-serif;font-size:13.5px;line-height:1.35;font-weight:650;color:var(--ink);text-decoration:none}
.db-name:hover{color:var(--pine);text-decoration:underline;text-underline-offset:3px}
.db-sub{margin-top:3px;font-family:'Inter',system-ui,sans-serif;font-size:11.5px;line-height:1.35;color:var(--muted)}
.db-price{font-family:'Inter',system-ui,sans-serif;font-size:13.5px;line-height:1.35;font-weight:700;color:var(--ink);white-space:nowrap;font-variant-numeric:tabular-nums}
.db-muted-price{font-size:12px;font-weight:500;color:var(--faint)}
.db-operator{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#46524C}
.db-owner{display:inline-flex;max-width:100%;align-items:center;border:1px solid var(--line);border-radius:999px;background:var(--mist);padding:4px 8px;font-size:10.5px;line-height:1.2;font-weight:650;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.db-date{font-size:12px;line-height:1.35;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}
.db-note{margin-top:.8rem;font-family:'Inter',system-ui,sans-serif;font-size:.74rem;line-height:1.55;color:var(--faint)}
.db-mobile-note{display:none}@media(max-width:760px){.db-mobile-note{display:block;margin:.2rem 0 .8rem;color:var(--muted);font-size:.75rem}}
.db-noscript{margin-bottom:1rem;padding:.8rem 1rem;background:#FDF6EC;border:1px solid #EAD9BE;border-radius:.8rem;color:#6B5426;font-size:.8rem}

.cg-site-header{position:sticky;top:0;z-index:100;background:rgba(246,247,244,.94);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid #DDE4DE;font-family:'Inter',system-ui,sans-serif}
.cg-site-nav{position:relative;max-width:70rem;margin:0 auto;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.cg-brand{display:flex;align-items:center;gap:10px;color:#1F2A26!important;text-decoration:none!important;white-space:nowrap;flex-shrink:0}
.cg-brand-badge{font-family:'Fraunces',Georgia,serif;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:#2F5D50;color:#fff;font-size:16px;font-weight:600;line-height:1}
.cg-brand-name{font-family:'Fraunces',Georgia,serif;font-size:18px;font-weight:500;letter-spacing:-.025em}
.cg-nav-links{display:flex;align-items:center;justify-content:flex-end;gap:24px;min-width:0}
.cg-nav-links a{font-family:'Inter',system-ui,sans-serif;font-size:14px;font-weight:500;color:#66736D!important;text-decoration:none!important;white-space:nowrap;transition:color .25s ease}
.cg-nav-links a:hover,.cg-nav-links a:focus{color:#2F5D50!important}
.cg-menu-button{display:none;align-items:center;gap:7px;border:1px solid #DDE4DE;background:#fff;color:#2F5D50;border-radius:10px;padding:8px 11px;font-family:'Inter',system-ui,sans-serif;font-size:13px;font-weight:600;cursor:pointer}
.cg-menu-button:focus-visible{outline:3px solid #2F5D50;outline-offset:3px}
@media(min-width:640px){.cg-site-nav{padding-left:32px;padding-right:32px}}
@media(max-width:900px){
 .cg-site-nav{padding:14px 16px;gap:14px}
 .cg-brand-name{font-size:16px}
 .cg-menu-button{display:inline-flex}
 .cg-nav-links{display:none;position:absolute;left:16px;right:16px;top:calc(100% + 8px);padding:10px;background:#fff;border:1px solid #DDE4DE;border-radius:14px;box-shadow:0 16px 38px rgba(31,42,38,.13);flex-direction:column;align-items:stretch;gap:2px}
 .cg-nav-links.cg-open{display:flex}
 .cg-nav-links a{display:block;padding:11px 12px;border-radius:9px;font-size:14px}
 .cg-nav-links a:hover,.cg-nav-links a:focus{background:#E9F0EC}
}
.cg-site-footer{background:#1F2A26;font-family:'Inter',system-ui,sans-serif;padding:40px 20px}
.cg-footer-inner{max-width:64rem;margin:0 auto}
.cg-footer-top{display:flex;align-items:center;justify-content:space-between;gap:24px}
.cg-footer-brand{display:flex;align-items:center;gap:10px;color:#F3F5F3!important;text-decoration:none!important;white-space:nowrap}
.cg-footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:14px 20px}
.cg-footer-links a{font-size:13px;color:#C4CEC8!important;text-decoration:none!important}
.cg-footer-links a:hover,.cg-footer-links a:focus{color:#fff!important}
.cg-footer-rule{border:0;border-top:1px solid rgba(243,245,243,.1);margin:24px 0 18px}
.cg-footer-note{margin:0;font-size:12px;line-height:1.65;color:#9BA8A1}
@media(min-width:640px){.cg-site-nav{padding-left:32px;padding-right:32px}.cg-site-footer{padding-left:32px;padding-right:32px}}
@media(max-width:620px){.cg-site-nav{padding:14px 16px}.cg-brand-name{font-size:16px}.cg-nav-links{gap:13px}.cg-nav-links a{font-size:13px}.cg-nav-about{display:none}.cg-site-footer{padding:32px 18px}.cg-footer-top{flex-direction:column;align-items:flex-start}.cg-footer-links{justify-content:flex-start}}
