/* FOF staged unified nav support — W1 remediation 2026-07-05. Staging only. */
:root{--fof-nav-h:72px;--fof-navy:#0B1F3A;--fof-teal:#4db8e8;--fof-teal-dark:#2da0d0;--fof-blue:#2d7dd2;--fof-text:#1a2a3a;--fof-mid:#4a5568;}
html body:has(.fof-nav){padding-top:var(--fof-nav-h);}
html body .fof-nav{position:fixed;top:0;left:0;right:0;z-index:100000;height:var(--fof-nav-h);background:var(--fof-navy);border-bottom:1px solid rgba(255,255,255,.08);transition:background .3s,box-shadow .3s;overflow:visible;}
html body .fof-nav.scrolled{background:rgba(11,31,58,.97);box-shadow:0 2px 24px rgba(0,0,0,.30);backdrop-filter:blur(12px);}
html body .fof-nav-inner{max-width:1400px;margin:0 auto;padding:0 24px;height:100%;display:flex;align-items:center;gap:0;}
html body .fof-nav-logo,html body .fof-nav-home-link{display:flex;align-items:center;flex:0 0 auto;margin-right:20px;width:auto;max-width:none;height:var(--fof-nav-h);overflow:visible;color:rgba(255,255,255,.96);font-size:15px;font-weight:800;line-height:20px;text-decoration:none;white-space:nowrap;}
html body .fof-nav-logo:hover,html body .fof-nav-home-link:hover{color:var(--fof-teal);}
html body .fof-nav-menu{display:flex;align-items:center;gap:4px;margin:0;padding:0;list-style:none;flex:1;justify-content:flex-start;}
html body .fof-nav-item{position:relative;list-style:none;}
html body .fof-nav-link{font-size:15px;font-weight:700;color:rgba(255,255,255,.94);padding:26px 13px;line-height:20px;display:flex;align-items:center;gap:6px;white-space:nowrap;text-decoration:none;cursor:pointer;}
html body .fof-nav-link:hover{color:var(--fof-teal);}
html body .fof-nav-link svg{flex-shrink:0;transition:transform .2s;}
html body .fof-nav-item:hover .fof-nav-link svg,html body .fof-nav-item.active .fof-nav-link svg{transform:rotate(180deg);}
html body .fof-dropdown{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(-8px);background:#fff;border-radius:0 0 12px 12px;box-shadow:0 12px 48px rgba(0,0,0,.18);padding:20px;min-width:210px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s,visibility .2s,transform .2s;border-top:3px solid var(--fof-teal);}
html body .fof-nav-item:hover .fof-dropdown,html body .fof-nav-item.active .fof-dropdown{opacity:1;visibility:visible;pointer-events:all;transform:translateX(-50%) translateY(0);}
html body .fof-dropdown a{display:block;padding:8px 12px;font-size:13.5px;font-weight:600;color:var(--fof-text);border-radius:6px;transition:background .15s,color .15s;white-space:nowrap;text-decoration:none;}
html body .fof-dropdown a:hover{background:#f0f7ff;color:var(--fof-blue);}
html body .fof-dropdown-wide{min-width:600px;left:0;transform:translateX(0) translateY(-8px);}
html body .fof-nav-item:hover .fof-dropdown-wide,html body .fof-nav-item.active .fof-dropdown-wide{transform:translateX(0) translateY(0);}
html body .fof-dropdown-wide-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;}
html body .fof-dropdown-col h4{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--fof-mid);margin:0 0 8px;padding:0 12px;}
html body .fof-nav-ctas{display:flex;align-items:center;gap:10px;margin-left:18px;flex-shrink:0;}
html body .fof-btn-nav-ghost,html body .fof-btn-nav-fill{height:40px;display:flex;align-items:center;justify-content:center;border-radius:8px;padding:0 22px;font-size:14px;font-weight:800;line-height:1;text-decoration:none;white-space:nowrap;}
html body .fof-btn-nav-ghost{color:#fff;border:1px solid rgba(255,255,255,.30);background:transparent;}
html body .fof-btn-nav-ghost:hover{border-color:var(--fof-teal);color:var(--fof-teal);}
html body .fof-btn-nav-fill{color:#fff;background:linear-gradient(135deg,var(--fof-teal),var(--fof-teal-dark));box-shadow:0 4px 18px rgba(77,184,232,.25);}
html body .fof-btn-nav-fill:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(77,184,232,.35);}
html body .fof-hamburger{display:none;flex-direction:column;gap:5px;background:transparent;border:0;padding:10px;margin-left:auto;cursor:pointer;}
html body .fof-hamburger span{display:block;width:26px;height:2px;background:#fff;border-radius:2px;transition:transform .2s,opacity .2s;}
html body .fof-hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}html body .fof-hamburger.open span:nth-child(2){opacity:0;}html body .fof-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
html body .fof-mobile-nav{position:fixed;top:var(--fof-nav-h);left:0;right:0;bottom:0;background:#071525;z-index:99999;padding:18px 22px 32px;overflow-y:auto;transform:translateX(100%);transition:transform .25s ease;display:block;}
html body .fof-mobile-nav.open{transform:translateX(0);}
html body.fof-mobile-menu-open{overflow:hidden;}
html body .fof-mobile-item{border-bottom:1px solid rgba(255,255,255,.10);}
html body .fof-mobile-link{width:100%;display:flex;align-items:center;justify-content:space-between;padding:17px 0;color:#fff;font-weight:800;text-decoration:none;cursor:pointer;}
html body .fof-mobile-link svg{transition:transform .2s;}html body .fof-mobile-link.open svg{transform:rotate(180deg);}
html body .fof-mobile-sub{display:none;padding:0 0 12px 14px;}
html body .fof-mobile-sub.open{display:block;}
html body .fof-mobile-sub a{display:block;color:rgba(255,255,255,.72);padding:8px 0;text-decoration:none;font-size:14px;font-weight:600;}
html body .fof-mobile-sub a:hover{color:var(--fof-teal);}
html body .fof-mobile-ctas{display:grid;gap:12px;margin-top:22px;}
html body .fof-mobile-ctas a{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:10px;font-weight:900;text-decoration:none;}
html body .fof-mobile-ctas .ghost{color:#fff;border:1px solid rgba(255,255,255,.32);}html body .fof-mobile-ctas .fill{background:var(--fof-teal);color:#fff;}
@media(max-width:1260px){html body .fof-nav-link{font-size:14px;padding-left:9px;padding-right:9px}html body .fof-btn-nav-ghost,html body .fof-btn-nav-fill{padding:0 14px;font-size:13px}}
@media(max-width:1100px){html body .fof-nav-menu,html body .fof-nav-ctas{display:none;}html body .fof-hamburger{display:flex;}}
@media(max-width:640px){html body .fof-nav-inner{padding:0 16px;}html body .fof-nav-logo,html body .fof-nav-home-link{font-size:14px;margin-right:10px;}}

/* W7 mobile sticky CTA remediation — staging only. */
html body .fof-mobile-sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:2147483000;display:none;grid-template-columns:minmax(0,1fr) minmax(72px,.42fr);gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(7,21,37,.96);box-shadow:0 -10px 30px rgba(0,0,0,.24);backdrop-filter:blur(12px);}
html body .fof-mobile-sticky-cta a{display:flex;align-items:center;justify-content:center;min-height:48px;height:auto;border-radius:12px;padding:10px 12px;font-family:Inter,Arial,sans-serif;font-size:14px;font-weight:900;line-height:1.15;text-align:center;text-decoration:none;white-space:normal;overflow:visible;}
html body .fof-mobile-sticky-cta .fof-sticky-quote{background:#4db8e8;color:#fff;}
html body .fof-mobile-sticky-cta .fof-sticky-call{background:#fff;color:#0B1F3A;}
@media(max-width:760px){html body:has(.fof-mobile-sticky-cta){padding-bottom:calc(86px + env(safe-area-inset-bottom));}html body .fof-mobile-sticky-cta{display:grid!important;}}
@media(max-width:420px){html body .fof-mobile-sticky-cta{grid-template-columns:minmax(0,1fr) 72px;gap:8px;padding-left:10px;padding-right:10px;}html body .fof-mobile-sticky-cta a{font-size:13px;padding-left:8px;padding-right:8px;}}

/* W8 hero calculator clipping remediation — staging only.
   The borrow amount widget must fit its rendered container at 390px/768px. */
html body .fof-borrow-row,
html body .fof-borrow-panel,
html body .fof-benchmark-hero .fof-borrow-row{max-width:100%;box-sizing:border-box;}
html body .fof-borrow-row input,
html body .fof-borrow-row button,
html body .fof-benchmark-hero .fof-borrow-row input,
html body .fof-benchmark-hero .fof-borrow-row button{width:100%;max-width:100%;box-sizing:border-box;min-width:0;}
@media(min-width:761px){html body .fof-borrow-row input,html body .fof-borrow-row button{max-width:360px;}}
