/* Ava Finance — avasfinance.com | palette: white / dark purple / light purple / light green / cream */
:root{--dk:#432471;--dk2:#331a58;--lp:#e9e0f7;--lp2:#5a3798;--gn:#dff0e2;--gnd:#2e6b40;--cr:#faf6ee;--tx:#28203a;--bd:#ddd3ee}

/* ---------- nav dropdowns ---------- */
.nav-menu .has-dropdown{position:relative}
.dropdown{display:none;position:absolute;top:100%;left:0;background:#fff;min-width:230px;list-style:none;border:1px solid var(--bd);border-radius:0 0 10px 10px;box-shadow:0 10px 24px rgba(40,20,70,.18);padding:6px 0}
.has-dropdown:hover .dropdown,.has-dropdown:focus-within .dropdown,.dropdown.open{display:block}
.dropdown a{display:block;padding:11px 18px;color:var(--tx);text-decoration:none;font-size:.93rem;min-height:44px}
.dropdown a:hover,.dropdown a:focus{background:var(--lp);color:var(--dk2)}
.dropdown a.active{color:var(--dk);font-weight:700}
.nav-menu>li>a:hover,.drop-btn:hover,.nav-menu>li>a:focus-visible,.drop-btn:focus-visible{background:var(--lp2);border-radius:6px}
.nav-menu>li>a.active{box-shadow:inset 0 -3px 0 #cdebd4}
.caret{font-size:.7em}
.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:12px;margin-left:auto}
.nav-toggle span{display:block;width:24px;height:3px;background:#fff;margin:5px 0;border-radius:2px}
a:focus-visible,button:focus-visible{outline:3px solid #cdebd4;outline-offset:2px}

/* ---------- hero ---------- */
.hero{background:linear-gradient(135deg,var(--dk2) 0%,var(--dk) 70%);color:#fff}
.hero-inner{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:38px;align-items:center;padding:52px 18px}
.hero h1{font-size:2.35rem;line-height:1.2;margin-bottom:16px}
.hero-sub{font-size:1.12rem;color:#e9e0f7;margin-bottom:24px}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap}
.hero-img img{border-radius:14px;box-shadow:0 14px 34px rgba(0,0,0,.3)}
.btn{display:inline-block;padding:14px 30px;border-radius:9px;text-decoration:none;font-weight:700;font-size:1rem;min-height:44px;border:none;cursor:pointer}
.btn-green{background:#cdebd4;color:var(--dk2)}
.btn-green:hover{background:#b9e2c4}
.btn-ghost{background:transparent;color:#fff;border:2px solid var(--lp)}
.btn-ghost:hover{background:var(--lp2)}
.btn-purple{background:var(--dk);color:#fff}
.btn-purple:hover{background:var(--dk2)}

/* ---------- layout ---------- */
main{max-width:1240px;margin:0 auto;padding:0 18px}
.layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:44px;padding:30px 0 46px}
.layout-full{grid-template-columns:minmax(0,1fr)}
.breadcrumb{padding:16px 0 2px;font-size:.88rem;font-family:'Segoe UI',system-ui,sans-serif}
.breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.breadcrumb li+li::before{content:"\203A";margin-right:6px;color:var(--lp2)}
.breadcrumb a{color:var(--lp2);text-decoration:none}
.breadcrumb a:hover{text-decoration:underline}

/* ---------- article ---------- */
.article-body{min-width:0}
.article-body h2{font-size:1.62rem;color:var(--dk2);margin:38px 0 14px;text-wrap:balance}
.article-body h3{font-size:1.22rem;color:var(--dk);margin:26px 0 10px;text-wrap:balance}
.article-body p{margin:0 0 16px}
.article-body ul,.article-body ol{margin:0 0 18px 26px}
.article-body li{margin-bottom:8px}
.article-body a{color:var(--lp2)}
.article-body a:hover{color:var(--dk2)}
.answer-block{background:var(--lp);border-left:5px solid var(--dk);padding:14px 18px;border-radius:0 10px 10px 0;margin:0 0 16px;font-family:'Segoe UI',system-ui,sans-serif;font-size:1.02rem}
.body-img{margin:26px auto;max-width:430px}
.body-img img{border-radius:12px;box-shadow:0 8px 22px rgba(40,20,70,.14)}
.body-img figcaption{font-size:.85rem;color:#6b5f85;text-align:center;padding-top:8px;font-family:'Segoe UI',system-ui,sans-serif}
.toc{background:var(--cr);border:1px solid #efe6d2;border-radius:12px;padding:20px 24px;margin:24px 0}
.toc h2{margin:0 0 10px;font-size:1.1rem;color:var(--dk2)}
.toc ol{margin:0 0 0 22px;font-family:'Segoe UI',system-ui,sans-serif;font-size:.95rem}
.toc a{text-decoration:none}
.toc a:hover{text-decoration:underline}

/* ---------- tables ---------- */
.table-scroll{overflow-x:auto;margin:20px 0}
table{border-collapse:collapse;width:100%;font-family:'Segoe UI',system-ui,sans-serif;font-size:.94rem;background:#fff}
caption{text-align:left;font-weight:700;color:var(--dk2);padding-bottom:10px;font-size:1.05rem}
th{background:var(--dk);color:#fff;text-align:left;padding:12px 14px}
td{border-bottom:1px solid var(--bd);padding:12px 14px;vertical-align:top}
tbody tr:nth-child(even){background:var(--cr)}
tbody tr:hover{background:var(--lp)}

/* ---------- loan cards ---------- */
.card-row{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:26px 0}
.loan-card{background:#fff;border:1px solid var(--bd);border-radius:14px;padding:26px 22px;text-align:center;box-shadow:0 6px 16px rgba(40,20,70,.08)}
.loan-card .amt{font-size:1.9rem;font-weight:800;color:var(--dk);font-family:'Segoe UI',system-ui,sans-serif}
.loan-card .use{color:var(--gnd);font-weight:700;font-family:'Segoe UI',system-ui,sans-serif;margin:6px 0 10px}
.loan-card p{font-size:.92rem;margin-bottom:14px}

/* ---------- content cards (blog/category) ---------- */
.content-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:26px 0}
.ccard{background:#fff;border:1px solid var(--bd);border-radius:14px;overflow:hidden;box-shadow:0 6px 16px rgba(40,20,70,.08);display:flex;flex-direction:column}
.ccard img{aspect-ratio:3/2;object-fit:cover;width:100%}
.ccard-body{padding:18px 20px 22px;display:flex;flex-direction:column;flex:1}
.ccard h3{margin:0 0 8px;font-size:1.08rem}
.ccard h3 a{color:var(--dk2);text-decoration:none}
.ccard h3 a:hover{color:var(--lp2)}
.ccard p{font-size:.92rem;margin-bottom:12px;flex:1}
.ccard .tag{align-self:flex-start;background:var(--gn);color:var(--gnd);font-size:.75rem;font-weight:700;padding:3px 10px;border-radius:20px;font-family:'Segoe UI',system-ui,sans-serif;margin-bottom:10px}
.ccard-link{font-family:'Segoe UI',system-ui,sans-serif;font-weight:700;font-size:.9rem}
.related-row{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:26px 0}

/* ---------- sidebar ---------- */
.sidebar{display:flex;flex-direction:column;gap:18px}
.side-box{background:#fff;border:1px solid var(--bd);border-radius:12px;padding:20px}
.side-box h3{font-size:1.02rem;color:var(--dk2);margin-bottom:9px}
.side-box p,.side-box li{font-size:.9rem}
.side-box ul{list-style:none}
.side-box li{padding:6px 0;border-bottom:1px dashed var(--bd)}
.side-box li:last-child{border-bottom:none}
.side-box a{color:var(--lp2)}
.side-cta{background:var(--dk);color:#fff;text-align:center}
.side-cta h3{color:#fff}
.side-cta .btn{margin-top:10px}
.side-green{background:var(--gn);border-color:#c4e2cc}
.side-cream{background:var(--cr);border-color:#efe6d2}
.side-stars{color:var(--gnd);font-size:1.15rem;font-family:'Segoe UI',system-ui,sans-serif}
.side-contact{background:var(--lp);border-color:var(--bd)}

/* ---------- mini FAQ ---------- */
.mini-faq{background:var(--cr);border:1px solid #efe6d2;border-radius:14px;padding:26px 28px;margin:34px 0}
.mini-faq h2{margin-top:0}
.mini-faq details{border-bottom:1px solid #e8ddc6;padding:12px 0}
.mini-faq summary{font-weight:700;cursor:pointer;font-family:'Segoe UI',system-ui,sans-serif;color:var(--dk2);min-height:44px;display:flex;align-items:center}
.mini-faq p{margin:10px 0 4px}

/* ---------- CTA zone ---------- */
.cta-zone{background:var(--cr);border-top:1px solid #efe6d2;margin-top:24px}
.cta-inner{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:38px;align-items:center;padding:46px 18px}
.cta-inner img{border-radius:14px}
.cta-text h2{color:var(--dk2);font-size:1.7rem;margin-bottom:12px}
.cta-text p{margin-bottom:20px}

/* ---------- footer ---------- */
.site-footer{background:var(--dk2);color:#d8cdec;font-family:'Segoe UI',system-ui,sans-serif}
.footer-grid{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:34px;padding:48px 18px 26px}
.footer-brand{font-size:1.4rem;font-weight:800;color:#fff}
.footer-brand em{font-style:normal;color:#cdebd4}
.footer-tag{font-size:.9rem;margin:10px 0 14px}
.footer-nap{font-size:.9rem;line-height:1.9}
.footer-head{font-weight:700;color:#fff;margin-bottom:12px}
.site-footer ul{list-style:none}
.site-footer li{margin-bottom:9px}
.site-footer a{color:#d8cdec;text-decoration:none}
.site-footer a:hover{color:#cdebd4;text-decoration:underline}
.footer-disclosure{max-width:1240px;margin:0 auto;padding:6px 18px 20px;font-size:.8rem;color:#b3a5d1;border-top:1px solid #4a3670}
.footer-disclosure a{text-decoration:underline}
.footer-bottom{background:#281244;text-align:center;padding:16px;font-size:.85rem}

/* ---------- scroll top ---------- */
#scroll-top{position:fixed;right:22px;bottom:22px;width:48px;height:48px;border-radius:50%;background:var(--dk);color:#fff;border:none;font-size:1.3rem;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .25s;z-index:2147482000;box-shadow:0 6px 16px rgba(0,0,0,.25)}
#scroll-top.show{opacity:1;pointer-events:auto}
#scroll-top:hover{background:var(--lp2)}

/* ---------- rating widgets (review page) ---------- */
.rating-hero{display:flex;align-items:center;gap:26px;background:var(--gn);border:1px solid #c4e2cc;border-radius:14px;padding:26px;margin:24px 0;flex-wrap:wrap}
.rating-big{font-size:3.2rem;font-weight:800;color:var(--gnd);font-family:'Segoe UI',system-ui,sans-serif}
.review-card{background:#fff;border:1px solid var(--bd);border-radius:12px;padding:20px 22px;margin-bottom:18px}
.review-card .stars{color:#c9a227;letter-spacing:2px}
.review-card .meta{font-size:.82rem;color:#6b5f85;font-family:'Segoe UI',system-ui,sans-serif}

/* ---------- calculator ---------- */
.calc-box{background:#fff;border:2px solid var(--dk);border-radius:16px;padding:30px;margin:26px 0;font-family:'Segoe UI',system-ui,sans-serif}
.calc-box label{display:block;font-weight:700;margin:18px 0 6px;color:var(--dk2)}
.calc-box input[type=range]{width:100%;accent-color:var(--dk)}
.calc-box select{width:100%;padding:12px;border:1px solid var(--bd);border-radius:8px;font-size:1rem;min-height:44px}
.calc-out{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px}
.calc-cell{background:var(--lp);border-radius:10px;padding:16px;text-align:center}
.calc-cell .v{font-size:1.5rem;font-weight:800;color:var(--dk2)}
.calc-cell .l{font-size:.82rem;color:#544a70}
.calc-note{font-size:.84rem;color:#6b5f85;margin-top:16px}

/* ---------- glossary ---------- */
.gloss-nav{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0;font-family:'Segoe UI',system-ui,sans-serif}
.gloss-nav a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:1px solid var(--bd);border-radius:8px;text-decoration:none;font-weight:700;color:var(--dk)}
.gloss-nav a:hover{background:var(--lp)}
.gloss-term{border-bottom:1px solid var(--bd);padding:18px 0}
.gloss-term h3{margin:0 0 8px}

/* ---------- share ---------- */
.share-row{display:flex;gap:12px;margin:22px 0;font-family:'Segoe UI',system-ui,sans-serif;flex-wrap:wrap}
.share-row a{display:inline-flex;align-items:center;min-height:44px;padding:9px 18px;border-radius:8px;text-decoration:none;font-weight:700;font-size:.88rem;color:#fff;background:var(--dk)}
.share-row a:hover{background:var(--lp2)}
.author-box{background:var(--lp);border-radius:12px;padding:20px 24px;margin:26px 0}
.author-box .name{font-weight:800;color:var(--dk2);font-family:'Segoe UI',system-ui,sans-serif}
.author-box p{font-size:.92rem;margin:8px 0 0}

/* ---------- misc ---------- */
.step-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin:26px 0}
.step-card{background:#fff;border:1px solid var(--bd);border-left:6px solid var(--gnd);border-radius:12px;padding:22px}
.step-card .num{font-size:.8rem;font-weight:800;color:var(--gnd);font-family:'Segoe UI',system-ui,sans-serif;letter-spacing:1px}
.notice{background:var(--gn);border:1px solid #c4e2cc;border-radius:12px;padding:16px 20px;margin:20px 0;font-size:.95rem}

/* ---------- responsive ---------- */
@media(max-width:1020px){
 .layout{grid-template-columns:1fr}
 .hero-inner,.cta-inner{grid-template-columns:1fr}
 .footer-grid{grid-template-columns:1fr 1fr}
 .content-cards,.card-row{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
 .nav-toggle{display:block}
 .nav-menu{display:none;position:absolute;top:62px;left:0;right:0;background:var(--dk);flex-direction:column;align-items:stretch;padding:10px 0 18px;margin:0}
 .nav-menu.open{display:flex}
 .nav-menu>li>a,.drop-btn{width:100%;text-align:left;padding:14px 22px}
 .dropdown{position:static;border-radius:0;box-shadow:none;border:none;background:var(--dk2)}
 .dropdown a{color:#e9e0f7;padding-left:38px}
 .nav-spacer{display:none}
 .nav-apply{padding:10px 22px}
 .hero h1{font-size:1.7rem}
 .content-cards,.card-row,.related-row,.step-grid,.calc-out{grid-template-columns:1fr}
 .footer-grid{grid-template-columns:1fr}
}
