/* Shared dark palette for the landing page and client-area demonstration. */
.estimate { background:#213e2b; border:1px solid #52765c; border-radius:16px; padding:24px; margin:22px 0; }
.estimate output { display:block; font-size:42px; line-height:1.2; font-weight:700; color:#c4f7d7; margin-top:10px; letter-spacing:-.04em; }
.estimate p { font-size:14px; }
.estimate dl { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px 15px; font-size:14px; border-top:1px solid #4c6553; padding-top:16px; }
.estimate dd { margin:0; text-align:right; }
@media(max-width:560px) { .nav-inner { flex-wrap:wrap; height:auto!important; padding:14px 0; gap:14px; } }
:root {
  color-scheme: dark;
  --cream: #0d1712;
  --paper: #0d1712;
  --muted: #b2c3b8;
  --line: #34483b;
  --green: #a0e4ba;
  --surface: #17271e;
  --surface-raised: #1e3327;
  --text: #edf5ef;
}
body { background: var(--paper); color: var(--text); }
.nav, header { background: rgba(13,23,18,.92); border-bottom-color: var(--line); }
.brand, .mobile-toggle { color: var(--text); }
.mark { background: var(--mint); color: #14211a; }
.links { color: var(--muted); }
.eyebrow { background: #1c3426; border-color: #3b5c47; color: #b7efcf; }
.heading .eyebrow, .panel .eyebrow, .summary .eyebrow { background: transparent; }
.micro { color: var(--muted)!important; }
.btn-primary, .primary { background: #b7efcf; color: #14211a; box-shadow: 0 8px 24px #0003; }
.btn-primary:hover, .primary:hover { background: #cef8df; color: #14211a; }
.btn-secondary, .secondary { background: #17271e; border-color: #567360; color: var(--text); }
.btn-secondary:hover, .secondary:hover { background: #243e2e; border-color: #85b496; }
.card, .quote, .panel { background: var(--surface); border-color: var(--line); }
.card:hover { border-color: #63856f; box-shadow: 0 20px 46px #0003; }
.icon { background: #284434; color: #b7efcf; }
.quote.featured { background: #203e2c; }
.stars { color: #b7efcf; }
.process, aside { background: #122019; border: 1px solid var(--line); }
.process-intro p, .step p { color: var(--muted); }
.browser { background: #1e3327; border-color: #415d4a; box-shadow: 0 32px 80px #0005; }
.browser-bar span { background: #74917d; }
.address { background: #3c5846; }
.screen { color: #14211a; }
.float-card { background: #1d3225; color: #c1d5c7; border-color: #4d6d57; }
.float-card strong { color: #b7efcf; }
.orb { opacity: .22; }
.cta-box { color: #14211a; }
.cta-box .btn-primary { background: #14211a; color: white; }
.cta-box .btn-primary:hover { background: #294634; }
.socials a:hover { background: #243e2e; }
.copyright { color: #a6baad; }
.notice { background: #352c18; border-color: #7c6839; color: #f0d89f; }
.tabs a[aria-current=page] { background: #b7efcf; color: #14211a; }
.tabs a:hover { background: #294333; color: var(--text); }
.switcher { background: #0f1d15; }
.switcher button[aria-pressed=true] { background: #2b4734; color: var(--text); }
input:not([type=radio]):not([type=checkbox]), select, textarea {
  background: #101e16; color: var(--text); border-color: #567360;
}
input:disabled { background: #1e2c23!important; color: #acbcb1!important; border-color: #3d5144!important; }
input::placeholder, textarea::placeholder { color: #9eafa3; opacity: 1; }
input[type=radio], input[type=checkbox] { accent-color: #9ce4b7; }
.choice:has(input:checked) { background: #274332; border-color: #a0e4ba; }
.soft { background: #263e2e; color: #d1ebd9; }
*:focus-visible { outline: 3px solid #b7efcf; outline-offset: 4px; }
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition: none!important; animation: none!important; }
  .reveal { opacity: 1; transform: none; }
}
