/* WealthyFi custom styles: components added during the 2026 update.
   Loaded after css/style.css; uses only plain CSS so it does not depend on the Tailwind build. */
:root{--wf-green:#103128;--wf-gold:#C9A84C;--wf-gold-d:#b8963f;--wf-muted:#64748b;--wf-line:#e2e8f0;--wf-soft:#F8F9FA}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.animate-marquee,.animate-pulse-ring{animation:none!important}*{transition-duration:0s!important}}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--wf-gold);outline-offset:2px}
.wf-skip{position:absolute;left:-9999px;top:8px;z-index:1000;background:var(--wf-green);color:#fff;padding:8px 14px;border-radius:6px}
.wf-skip:focus{left:8px}
.wf-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
header.wf-scrolled{box-shadow:0 1px 12px rgba(16,49,40,.08)}
.wf-chev{transition:transform .2s}
[aria-expanded="true"]>.wf-chev,[aria-expanded="true"] .wf-chev{transform:rotate(180deg)}
.wf-new{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:999px;background:var(--wf-gold);color:var(--wf-green);font-size:10px;font-style:normal;font-weight:700;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle}

/* Services dropdown */
.wf-dd-panel{position:absolute;top:100%;left:50%;transform:translateX(-50%);margin-top:6px;width:min(680px,92vw);background:#fff;border:1px solid var(--wf-line);border-radius:12px;box-shadow:0 16px 40px rgba(16,49,40,.14);padding:10px;display:grid;grid-template-columns:1fr 1fr;gap:2px;z-index:120}
.wf-dd-panel[hidden]{display:none}
.wf-dd-panel::before{content:"";position:absolute;top:-8px;left:0;right:0;height:8px}
.wf-dd-link{display:block;padding:10px 12px;border-radius:8px;color:var(--wf-green);text-decoration:none}
.wf-dd-link:hover,.wf-dd-link:focus-visible{background:var(--wf-soft)}
.wf-dd-link strong{display:block;font-size:14px;font-weight:600}
.wf-dd-link span{display:block;font-size:12px;line-height:1.45;color:var(--wf-muted);margin-top:2px}
.wf-dd-all{grid-column:1/-1;text-align:center;padding:10px;margin-top:4px;border-top:1px solid var(--wf-line);font-size:13px;font-weight:600;color:var(--wf-gold-d)}

/* Mobile menu */
.wf-mobile{border-top:1px solid var(--wf-line);background:#fff;max-height:calc(100vh - 64px);overflow-y:auto;padding:8px 24px 24px}
.wf-mobile[hidden]{display:none}
@media (min-width:1024px){.wf-mobile{display:none!important}}
.wf-mobile nav>a,.wf-mobile summary{display:block;padding:13px 2px;border-bottom:1px solid #f1f5f9;color:var(--wf-green);font-weight:500;font-size:15px;cursor:pointer}
.wf-mobile summary{list-style:none;position:relative}
.wf-mobile summary::-webkit-details-marker{display:none}
.wf-mobile summary::after{content:"+";position:absolute;right:4px;color:var(--wf-gold-d);font-weight:700}
.wf-mobile details[open] summary::after{content:"\2013"}
.wf-mobile-sub a{display:block;padding:10px 14px;font-size:14px;color:#334155;border-bottom:1px solid #f8fafc}
.wf-mobile-cta{display:block;margin-top:16px;text-align:center;background:var(--wf-gold);color:var(--wf-green);font-weight:600;padding:13px;border-radius:8px}

/* Sticky mobile contact bar */
.wf-mbar{position:fixed;left:0;right:0;bottom:0;z-index:998;display:grid;grid-template-columns:1fr 1fr 1.4fr;background:var(--wf-green);border-top:1px solid rgba(255,255,255,.12);padding-bottom:env(safe-area-inset-bottom)}
.wf-mbar a{display:flex;align-items:center;justify-content:center;gap:6px;padding:13px 6px;color:#fff;font-size:13px;font-weight:600}
.wf-mbar a+a{border-left:1px solid rgba(255,255,255,.12)}
.wf-mbar-primary{background:var(--wf-gold);color:var(--wf-green)!important}
@media (max-width:1023px){body{padding-bottom:52px}.wf-float-wa{display:none!important}}
@media (min-width:1024px){.wf-mbar{display:none}}

/* Forms */
.wf-form .wf-field{margin-bottom:2px}
.wf-form .wf-field+.wf-field{margin-top:14px}
.wf-opt{font-weight:400;color:var(--wf-muted);font-size:12px}
.wf-field-error{min-height:0;margin-top:4px;font-size:12px;color:#b91c1c}
.wf-field-error:empty{display:none}
.wf-form [aria-invalid="true"]{border-color:#dc2626!important}
.wf-consent label{display:flex;gap:8px;align-items:flex-start;font-size:13px;color:var(--wf-muted);line-height:1.5;cursor:pointer}
.wf-consent input{margin-top:3px;width:16px;height:16px;accent-color:var(--wf-green);flex-shrink:0}
.wf-hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.wf-form button[disabled]{opacity:.7;cursor:wait}
.wf-status{margin-top:16px;padding:14px 16px;border-radius:8px;font-size:14px;line-height:1.6}
.wf-status[hidden]{display:none}
.wf-status a{text-decoration:underline;font-weight:600}
.wf-status-ok{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}
.wf-status-err{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}
.wf-form [hidden]{display:none!important}

/* FAQ */
.wf-faq-panel{padding:0 20px 20px;color:var(--wf-muted);font-size:14px;line-height:1.7}
.wf-faq-panel[hidden]{display:none}

/* Pricing table */
.wf-table-wrap{overflow-x:auto;background:#fff;border:1px solid var(--wf-line);border-radius:12px}
.wf-table{width:100%;border-collapse:collapse;font-size:14px;min-width:560px}
.wf-table th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--wf-muted);padding:14px 18px;border-bottom:1px solid var(--wf-line);background:var(--wf-soft)}
.wf-table td{padding:13px 18px;border-bottom:1px solid #f1f5f9;vertical-align:top}
.wf-table tr:last-child td{border-bottom:0}
.wf-cat{font-size:12px;font-weight:600;color:var(--wf-gold-d)}
.wf-price{font-weight:700;color:var(--wf-green);white-space:nowrap;font-variant-numeric:tabular-nums}
.wf-unit{color:var(--wf-muted)}
.wf-note{margin-top:20px;font-size:13px;color:var(--wf-muted);text-align:center}
.wf-disclaimer{background:#fffbeb;border:1px solid #fde68a;border-radius:10px;padding:14px 16px;font-size:13px;line-height:1.6;color:#78350f}
@media (min-width:1024px){.wf-sticky{position:sticky;top:96px}}
.wf-ul{text-decoration:underline}
.wf-hr{border:0;border-top:1px solid var(--wf-line);margin:20px 0}
