/* ============================================================================================
   refresh.css — surface modernization layer (loaded AFTER main.css). Layout & flow untouched.
   Delete the <link> to this file to fully revert.
   ============================================================================================ */
@import url('https://fonts.googleapis.com/css2?family=Sora:wght@500;600;700;800&family=Inter:wght@400;500;600;700&display=swap');

/* ---- LEVEL 1 — modern heading type ---- */
h1, h2, h3, h4, h5, h6,
#divHomeBanner .divBannerLine {
    font-family: 'Sora', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: -0.02em !important;
}

/* ---- LEVEL 2 — flat buttons, soft shadows, rounded fields, transitions ---- */
input[type="button"], input[type="submit"], .btn {
    background: #4a68d4 !important;
    border: 1px solid transparent !important;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
    font-weight: 600 !important;
    box-shadow: 0 2px 6px rgba(30,55,140,.20) !important;
    transition: background .16s ease, transform .16s ease, box-shadow .16s ease !important;
}
input[type="button"]:hover, input[type="submit"]:hover, .btn:hover {
    background: #344daa !important;
    transform: translateY(-1px);
    box-shadow: 0 7px 16px rgba(30,55,140,.26) !important;
}
.btn.green, input[type="submit"].green, input[type="button"].green { background:#4fb851 !important; box-shadow:0 2px 6px rgba(35,120,50,.22) !important; }
.btn.green:hover, input[type="submit"].green:hover, input[type="button"].green:hover { background:#3ca23e !important; box-shadow:0 7px 16px rgba(35,120,50,.28) !important; }
.btn.gray, input[type="submit"].gray, input[type="button"].gray { background:#ffffff !important; color:#344daa !important; box-shadow:inset 0 0 0 1px #d3dcef, 0 1px 2px rgba(0,0,0,.05) !important; }
.btn.gray:hover, input[type="submit"].gray:hover, input[type="button"].gray:hover { background:#eef2fb !important; color:#2a3f8a !important; }
.btn.red, input[type="submit"].red, input[type="button"].red { background:#d0463e !important; }
.btn.red:hover, input[type="submit"].red:hover, input[type="button"].red:hover { background:#b5352e !important; }

img.shadow, .shadow {
    box-shadow: 0 12px 30px rgba(15,30,60,.14) !important;
    border-radius: 12px !important;
    transition: transform .2s ease, box-shadow .2s ease;
}
a.img:hover img.shadow, .shadow:hover { box-shadow: 0 18px 40px rgba(15,30,60,.20) !important; }

input[type="text"], input[type="email"], input[type="password"], input[type="tel"], textarea, select {
    border-radius: 8px !important;
    transition: border-color .16s ease, box-shadow .16s ease !important;
}
a { transition: color .15s ease, opacity .15s ease; }

/* ---- LEVEL 3 — crisper blue, hero depth, heading rhythm ---- */
input[type="button"], input[type="submit"], .btn { background:#2f62e6 !important; box-shadow:0 3px 9px rgba(28,70,200,.24) !important; }
input[type="button"]:hover, input[type="submit"]:hover, .btn:hover { background:#2450c8 !important; box-shadow:0 8px 18px rgba(28,70,200,.30) !important; }
.btn.gray, input[type="submit"].gray, input[type="button"].gray { color:#2450c8 !important; }
input:focus, textarea:focus, select:focus { outline:none !important; border-color:#2f62e6 !important; box-shadow:0 0 0 3px rgba(47,98,230,.18) !important; }
#divHomeBanner { box-shadow: inset 0 -90px 120px -50px rgba(6,12,28,.55) !important; }
h1, h2 { line-height:1.12 !important; }
h1 { letter-spacing:-.025em !important; }

/* ---- SURGICAL — modern hero + feature cards (home #divHomeBanner) ---- */
#divHomeBanner { padding-top:112px !important; padding-bottom:58px !important; position:relative; }
#divHomeBanner .hero2 { position:relative; z-index:1; padding:30px 0 4px; }
.hero2-copy { max-width:640px; }
.hero2-eyebrow { color:#7fe39a; font-weight:700; letter-spacing:.18em; text-transform:uppercase; font-size:.8rem;
    font-family:'Sora',-apple-system,'Segoe UI',Roboto,sans-serif; }
.hero2-title { color:#fff !important; font-size:clamp(2.4rem,5vw,4rem) !important; line-height:1.04 !important;
    margin:16px 0 0 !important; letter-spacing:-.03em !important; text-shadow:0 2px 22px rgba(0,0,0,.42); }
.hero2-accent { color:#5fd57e !important; }
.hero2-sub { color:#dbe4f4; font-size:1.2rem; line-height:1.5; margin-top:18px; max-width:38ch;
    text-shadow:0 1px 10px rgba(0,0,0,.35); }
.hero2-cta { display:flex; gap:14px; margin-top:30px; flex-wrap:wrap; }
.hero2-cta .btn { font-size:1.05rem !important; padding:14px 28px !important; }

.feat-grid { position:relative; z-index:1; display:flex; flex-wrap:wrap; justify-content:center; gap:16px; margin-top:30px; }
.feat-card { flex:0 1 calc(25% - 12px); display:flex; flex-direction:column; align-items:center; text-align:center; gap:12px; min-height:152px; padding:20px;
    border-radius:14px; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.14);
    backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); text-decoration:none;
    transition:transform .18s ease, background .18s ease, border-color .18s ease; }
.feat-card:hover { transform:translateY(-4px); background:rgba(255,255,255,.13); border-color:rgba(255,255,255,.30); }
.feat-ic { width:46px; height:46px; border-radius:12px; display:grid; place-items:center; background:rgba(95,213,126,.16); color:#7fe39a; }
.feat-ic svg { width:24px; height:24px; }
.feat-name { color:#fff; font-weight:700; font-size:1.05rem; line-height:1.22; }
.feat-more { color:#b3c2e0; font-size:.84rem; font-weight:600; margin-top:auto; }
.feat-card:hover .feat-more { color:#fff; }
.feat-viewall { position:relative; z-index:1; text-align:center; margin-top:28px; }
@media(max-width:900px){ .feat-card{flex-basis:calc(50% - 8px);} .hero2-sub{max-width:none;} }
@media(max-width:540px){ .feat-card{flex-basis:100%;} }

/* ---- Floating card panels (content sections) ---- */
#divContent { background:#e9eef6 !important; padding:6px 0 26px !important; }
.divContentWhite, .divContentGray { background:transparent !important; border:0 !important; box-shadow:none !important; padding:22px 0 !important; }
.divContentWhite > .wrapper, .divContentGray > .wrapper {
    background:#ffffff; border-radius:18px; box-sizing:border-box; padding:46px 52px;
    box-shadow:0 14px 40px rgba(20,40,80,.10), 0 2px 8px rgba(20,40,80,.05);
}
.divContentDividerButtons { margin-top:0 !important; margin-bottom:0 !important; padding:8px 0 !important; }
@media(max-width:640px){ .divContentWhite > .wrapper, .divContentGray > .wrapper { padding:28px 22px; } }

/* ---- Modern footer + light Sign Up band ---- */
#divSubFooterButtonSignup { background:#e9eef6 !important; padding:40px 0 44px !important; margin:0 !important; }
#divSubFooter {
    background:#0e1a34 !important; background-image:none !important;
    color:#9aa8c6 !important; font-family:'Inter',-apple-system,'Segoe UI',Roboto,sans-serif !important;
    font-size:15px !important; padding:58px 0 34px !important;
}
#divSubFooter .divSubFooterHeadline {
    font-family:'Sora',sans-serif !important; font-size:.76rem !important; letter-spacing:.18em !important;
    text-transform:uppercase !important; color:#7183a8 !important; font-style:normal !important;
    font-weight:700 !important; margin:36px 0 16px !important;
}
#divSubFooter ul {
    display:flex !important; flex-wrap:wrap !important; justify-content:center !important; align-items:center !important;
    gap:4px 8px !important; max-width:860px; margin:0 auto 6px !important; line-height:1.9;
}
#divSubFooter ul li { display:inline-flex !important; margin:0 !important; color:#42517a !important; }
#divSubFooter a { color:#bcc8e2 !important; padding:3px 8px; border-radius:7px; transition:color .15s ease, background .15s ease; }
#divSubFooter a:hover { color:#fff !important; background:rgba(255,255,255,.07); }
#divSubFooter .wrapper, #divFooter .wrapper { background-color:transparent; }
#divFooter {
    background:#0a1326 !important; background-image:none !important; border-top:1px solid rgba(255,255,255,.07);
    font-family:'Inter',-apple-system,'Segoe UI',Roboto,sans-serif !important;
    color:#6f7d9c !important; font-size:13.5px !important; white-space:normal !important; padding:18px 0 26px !important;
}
#divFooter a { color:#9aa8c6 !important; }
#divFooter a:hover { color:#fff !important; }

/* ---- FAQ table-of-contents (inside the intro card) ---- */
ul.faq-toc {
    list-style:none; max-width:860px; margin:26px auto 4px; padding:24px 0 0;
    border-top:1px solid #e6ecf6; columns:2; column-gap:36px; text-align:left;
}
ul.faq-toc li { break-inside:avoid; margin:0 0 3px; padding:0; display:block; }
ul.faq-toc a {
    display:block; position:relative; padding:9px 12px 9px 26px;
    color:#2f62e6 !important; font-weight:600; text-decoration:none !important;
    border-radius:9px; line-height:1.35; transition:background .14s ease, color .14s ease;
}
ul.faq-toc a::before { content:"\203A"; position:absolute; left:11px; color:#9db0d8; font-weight:800; }
ul.faq-toc a:hover { background:#f1f5fe; color:#1c47b8 !important; }
ul.faq-toc a:hover::before { color:#2f62e6; }
@media (max-width:680px){ ul.faq-toc { columns:1; padding:20px 0 0; } }

/* ---- email/tel inputs (main.css doesn't style these) ---- */
input[type="email"], input[type="tel"], input[type="number"], input[type="search"], input[type="url"] {
    padding:14px 15px !important; width:100% !important; background-color:#f3f3f3 !important;
    border:1px solid #dddddd !important; border-radius:8px !important; font-size:18px !important;
    font-family:'Open Sans', sans-serif !important;
}
