/* Marietta Water Damage Help: site styles (mw- prefix). Tailwind CDN handles utilities. */
html { scroll-behavior: smooth; scroll-padding-top: 16px; }
body { font-family: "Public Sans", system-ui, sans-serif; }

.mw-skip { position: absolute; left: -9999px; top: 8px; background: #132a35; color: #fff; padding: 8px 14px; border-radius: 6px; z-index: 100; }
.mw-skip:focus { left: 8px; }

/* Press-1 ribbon */
.mw-press1 a.mw-tel-inline { font-weight: 700; text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }
.mw-pulse { display: inline-block; width: 10px; height: 10px; border-radius: 999px; background: #fff; box-shadow: 0 0 0 0 rgba(255,255,255,.7); animation: mw-pulse 2s infinite; flex-shrink: 0; }
@keyframes mw-pulse { 0% { box-shadow: 0 0 0 0 rgba(255,255,255,.6); } 70% { box-shadow: 0 0 0 10px rgba(255,255,255,0); } 100% { box-shadow: 0 0 0 0 rgba(255,255,255,0); } }
@media (prefers-reduced-motion: reduce) { .mw-pulse { animation: none; } }

/* Nav */
.mw-nav-link { color: #224554; font-weight: 500; padding: 4px 0; border-bottom: 2px solid transparent; }
.mw-nav-link:hover { color: #1b625e; border-bottom-color: #97d0cb; }
.mw-nav-on { color: #132a35; border-bottom-color: #c4552d; }

/* Buttons */
.mw-btn-call { display: inline-flex; align-items: center; gap: .55rem; background: #c4552d; color: #fff; font-weight: 700; padding: .9rem 1.6rem; border-radius: 999px; transition: background .15s; }
.mw-btn-call:hover { background: #a64322; }
.mw-btn-ghost { display: inline-flex; align-items: center; padding: .9rem 1.4rem; border-radius: 999px; border: 2px solid #a9c1cb; color: #1a3744; font-weight: 600; }
.mw-btn-ghost:hover { border-color: #1a3744; }

.mw-kicker { font-size: .78rem; letter-spacing: .2em; text-transform: uppercase; color: #1b625e; font-weight: 700; margin-bottom: .9rem; }

/* Home hero: soft water-line background */
.mw-home-hero { background:
  radial-gradient(1200px 300px at 85% 110%, rgba(151,208,203,.45), transparent 60%),
  linear-gradient(180deg, #fbfcfb 0%, #f3f6f5 100%); }

/* "Ticket" side card with dashed edge */
.mw-ticket { background: #fff; border: 2px dashed #97d0cb; border-radius: 18px; padding: 1.5rem; box-shadow: 0 12px 30px -18px rgba(19,42,53,.35); }
.mw-ticket-h { font-family: Fraunces, Georgia, serif; font-size: 1.3rem; color: #0d1e27; margin-bottom: .9rem; }
.mw-ticket-call { display: block; font-family: Fraunces, Georgia, serif; font-size: 1.8rem; color: #a64322; margin-top: .6rem; }
.mw-steps { list-style: none; padding: 0; margin: 0; display: grid; gap: .7rem; }
.mw-steps li { display: flex; gap: .7rem; align-items: flex-start; color: #224554; line-height: 1.45; }
.mw-num { flex-shrink: 0; width: 1.7rem; height: 1.7rem; border-radius: 999px; background: #e9f5f4; color: #174f4c; font-weight: 700; font-size: .9rem; display: inline-flex; align-items: center; justify-content: center; border: 1px solid #97d0cb; }

/* Cards */
.mw-card { display: flex; flex-direction: column; gap: .55rem; background: #fff; border: 1px solid #d7e3e8; border-radius: 16px; padding: 1.4rem; transition: border-color .15s, transform .15s; }
.mw-card:hover { border-color: #3a9891; transform: translateY(-2px); }
.mw-card-h { font-family: Fraunces, Georgia, serif; font-size: 1.25rem; color: #0d1e27; }
.mw-card-p { color: #2f5868; line-height: 1.5; }
.mw-card-more { margin-top: auto; color: #a64322; font-weight: 600; font-size: .92rem; }
.mw-card-hub { background: #132a35; border-color: #132a35; }
.mw-card-hub .mw-card-h { color: #fff; }
.mw-card-hub .mw-card-p { color: #c9e7e4; }
.mw-card-hub .mw-card-more { color: #f0b9a2; }
.mw-chip { display: inline-block; padding: .5rem 1rem; border-radius: 999px; background: #fff; border: 1px solid #a9c1cb; color: #1a3744; font-weight: 600; }
.mw-chip:hover { border-color: #c4552d; color: #a64322; }

.mw-howto { list-style: none; padding: 0; display: grid; gap: 1.1rem; }
.mw-howto li { display: flex; gap: .9rem; }
.mw-howto p { color: #2f5868; margin-top: .15rem; }

/* Article typography */
.mw-prose { color: #1a3744; font-size: 1.06rem; line-height: 1.72; }
.mw-prose h2 { font-family: Fraunces, Georgia, serif; font-size: 1.85rem; line-height: 1.2; color: #0d1e27; margin: 2.6rem 0 1rem; }
.mw-prose h3 { font-weight: 700; font-size: 1.15rem; color: #132a35; margin: 1.6rem 0 .5rem; }
.mw-prose p { margin: 0 0 1rem; }
.mw-prose a { color: #174f4c; text-decoration: underline; text-decoration-color: #62b4ae; text-underline-offset: 3px; }
.mw-prose a:hover { color: #a64322; }
.mw-q:first-child h2 { margin-top: .5rem; }
.mw-answer { background: #fff; border-left: 4px solid #227a75; border-radius: 0 12px 12px 0; padding: 1rem 1.2rem; font-size: 1.1rem; color: #0d1e27; }
.mw-ul, .mw-ol { margin: 0 0 1.2rem 1.2rem; display: grid; gap: .55rem; }
.mw-ul { list-style: disc; }
.mw-ol { list-style: decimal; }
.mw-checklist { list-style: none; padding: 0; margin: 0 0 1.2rem; display: grid; gap: .6rem; }
.mw-checklist li { position: relative; padding-left: 1.9rem; }
.mw-checklist li::before { content: ""; position: absolute; left: 0; top: .3rem; width: 1.15rem; height: 1.15rem; border-radius: 5px; border: 2px solid #227a75; background: #e9f5f4; }

.mw-table-wrap { overflow-x: auto; margin: 0 0 1rem; }
.mw-table { width: 100%; border-collapse: collapse; background: #fff; border-radius: 12px; overflow: hidden; font-size: .97rem; }
.mw-table th { background: #132a35; color: #fff; text-align: left; padding: .7rem .9rem; font-weight: 600; }
.mw-table td { border-top: 1px solid #d7e3e8; padding: .7rem .9rem; vertical-align: top; }

/* Water categories */
.mw-cats { display: grid; gap: .8rem; margin: 0 0 1rem; }
@media (min-width: 720px) { .mw-cats { grid-template-columns: repeat(3, 1fr); } }
.mw-cat { border-radius: 14px; padding: 1rem 1.1rem; font-size: .97rem; line-height: 1.55; }
.mw-cat p { margin: 0; }
.mw-cat-h { font-weight: 700; margin-bottom: .4rem !important; }
.mw-cat-1 { background: #e9f5f4; border: 1px solid #97d0cb; }
.mw-cat-2 { background: #eef3f5; border: 1px solid #a9c1cb; }
.mw-cat-3 { background: #fcf1ec; border: 1px solid #f0b9a2; }

/* Inline call strip inside articles */
.mw-inline-call { margin: 2rem 0; border-radius: 14px; background: #132a35; color: #fff; padding: 1.1rem 1.3rem; }
.mw-inline-call p { margin: 0; }
.mw-inline-call a { color: #f0b9a2; font-weight: 700; text-decoration: none; white-space: nowrap; }

/* FAQ */
.mw-faq { background: #fff; border: 1px solid #d7e3e8; border-radius: 12px; margin-bottom: .7rem; }
.mw-faq summary { cursor: pointer; list-style: none; padding: 1rem 2.6rem 1rem 1.1rem; font-weight: 600; color: #0d1e27; position: relative; }
.mw-faq summary::-webkit-details-marker { display: none; }
.mw-faq summary::after { content: "+"; position: absolute; right: 1.1rem; top: .8rem; font-size: 1.4rem; color: #c4552d; }
.mw-faq[open] summary::after { content: "\2212"; }
.mw-faq > div { padding: 0 1.1rem 1rem; color: #224554; }

/* TOC */
.mw-toc { position: sticky; top: 20px; border-left: 2px solid #c9e7e4; padding-left: 1rem; font-size: .92rem; }
.mw-toc-h { text-transform: uppercase; letter-spacing: .16em; font-size: .72rem; font-weight: 700; color: #1b625e; margin-bottom: .6rem; }
.mw-toc ol { list-style: none; padding: 0; display: grid; gap: .45rem; }
.mw-toc a { color: #2f5868; }
.mw-toc a:hover { color: #a64322; }

/* Related + areas */
.mw-related { margin-top: 2.5rem; background: #fff; border: 1px solid #d7e3e8; border-radius: 16px; padding: 1.3rem 1.5rem; }
.mw-related-h { font-family: Fraunces, Georgia, serif; font-size: 1.2rem; color: #0d1e27; margin-bottom: .6rem !important; }
.mw-related ul { list-style: none; padding: 0; margin: 0; display: grid; gap: .45rem; }
.mw-area-grid { display: grid; gap: .7rem; }
@media (min-width: 640px) { .mw-area-grid { grid-template-columns: repeat(2, 1fr); } }
.mw-prose .mw-area-grid a { display: block; text-decoration: none; background: #fff; border: 1px solid #d7e3e8; border-radius: 12px; padding: .9rem 1rem; }
.mw-area-grid strong { display: block; color: #0d1e27; }
.mw-area-grid span { font-size: .9rem; color: #2f5868; }

/* Illustration slot */
.mw-illo { margin: 2rem 0; max-width: 520px; }

/* Forms */
.mw-formcard { background: #fff; border: 1px solid #d7e3e8; border-radius: 18px; padding: 1.6rem; }
.mw-label { display: block; font-weight: 600; font-size: .92rem; color: #132a35; margin-bottom: .35rem; }
.mw-field { width: 100%; border: 1.5px solid #a9c1cb; border-radius: 10px; padding: .75rem .9rem; background: #fbfcfb; color: #0d1e27; }
.mw-field:focus { outline: none; border-color: #227a75; box-shadow: 0 0 0 3px rgba(34,122,117,.18); }

/* Footer */
.mw-foot ul { display: grid; gap: .45rem; }
.mw-foot a:hover { color: #a64322; }
.mw-foot-h { font-family: Fraunces, Georgia, serif; font-size: 1.05rem; color: #0d1e27; margin-bottom: .8rem; }
a[href^="tel:"] { white-space: nowrap; }
