
/* ===== QFAM HEADER / MENU ===== */
body .site-header,
body #masthead,
body .main-header-bar,
body .site-primary-header-wrap,
body .elementor-location-header > section:first-child{
    min-height:auto !important;
}

body .site-header,
body #masthead{
    padding-top:0 !important;
    padding-bottom:0 !important;
}

body .site-header .site-branding,
body #masthead .site-branding{
    margin:0 !important;
}

body .site-header .custom-logo,
body #masthead .custom-logo{
    max-height:92px !important;
    width:auto !important;
}

body .main-navigation a,
body #site-navigation a,
body .site-header nav a{
    font-size:16px !important;
    line-height:1.2 !important;
    padding:14px 12px !important;
}

@media (min-width: 900px){
    body .site-header,
    body #masthead{
        min-height:104px !important;
    }
}

/* ===== HOME ===== */
.qfh-wrap{
    max-width:1180px;
    margin:0 auto;
    padding:24px 20px 70px;
}
.qfh-hero{
    min-height:390px;
    border-radius:26px;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:45px 28px;
    background:
      radial-gradient(circle at 18% 20%, rgba(255,193,7,.95), rgba(255,193,7,.20) 16%, transparent 34%),
      linear-gradient(135deg,#208be3 0%,#58bced 100%);
    box-shadow:0 18px 45px rgba(24,120,190,.18);
}
.qfh-hero-inner{max-width:790px}
.qfh-pill{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:10px 18px;
    background:#ffc400;
    color:#102238;
    border-radius:999px;
    font-weight:800;
    font-size:14px;
}
.qfh-hero h1{
    margin:20px 0 12px;
    color:#fff;
    font-size:clamp(38px,6vw,66px);
    line-height:1.02;
    letter-spacing:-1.5px;
}
.qfh-hero p{
    max-width:680px;
    margin:0 auto;
    font-size:19px;
    line-height:1.55;
    color:rgba(255,255,255,.95);
}
.qfh-actions{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:12px;
    margin-top:26px;
}
.qfh-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:0 22px;
    border-radius:12px;
    text-decoration:none!important;
    font-weight:800;
    transition:.2s ease;
}
.qfh-btn:hover{transform:translateY(-2px)}
.qfh-btn-primary{background:#10243b;color:#fff!important}
.qfh-btn-light{background:#fff;color:#17334d!important}
.qfh-btn-yellow{background:#ffc400;color:#10243b!important}
.qfh-section{padding:52px 0 0}
.qfh-soft{
    margin-top:52px;
    padding:38px;
    border-radius:26px;
    background:#f7fbfe;
}
.qfh-section-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    margin-bottom:22px;
}
.qfh-section-head h2{
    margin:5px 0 0;
    font-size:34px;
    line-height:1.08;
}
.qfh-section-head > a{
    text-decoration:none;
    font-weight:800;
}
.qfh-eyebrow{
    display:inline-block;
    color:#168bd2;
    font-size:13px;
    text-transform:uppercase;
    letter-spacing:1px;
    font-weight:900;
}
.qfh-eyebrow-light{color:#d9efff}
.qfh-categories{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
}
.qfh-cat{
    min-height:142px;
    padding:21px;
    border:1px solid #e5edf3;
    border-radius:18px;
    background:#fff;
    color:#172635!important;
    text-decoration:none!important;
    display:flex;
    flex-direction:column;
    position:relative;
    box-shadow:0 7px 24px rgba(0,0,0,.04);
    transition:.2s ease;
}
.qfh-cat:hover{
    transform:translateY(-3px);
    box-shadow:0 12px 30px rgba(0,0,0,.09);
}
.qfh-cat-icon{font-size:29px;margin-bottom:14px}
.qfh-cat h3{margin:0 0 6px;font-size:19px}
.qfh-cat p{margin:0;padding-right:20px;color:#6d7780;font-size:14px;line-height:1.45}
.qfh-arrow{
    position:absolute;
    right:17px;
    bottom:17px;
    font-size:20px;
    color:#168bd2;
}
.qfh-strip{
    margin-top:52px;
    border-radius:24px;
    background:linear-gradient(135deg,#1489df,#48b7e9);
    color:#fff;
    padding:34px 38px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
}
.qfh-strip h2{margin:5px 0 7px;font-size:31px;color:#fff}
.qfh-strip p{margin:0;color:rgba(255,255,255,.92)}
.qfh-content-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:20px;
}
.qfh-content-card{
    overflow:hidden;
    border-radius:18px;
    border:1px solid #e5ebef;
    background:#fff;
    text-decoration:none!important;
    color:#172635!important;
    box-shadow:0 7px 24px rgba(0,0,0,.04);
    transition:.2s ease;
}
.qfh-content-card:hover{
    transform:translateY(-3px);
    box-shadow:0 12px 30px rgba(0,0,0,.09);
}
.qfh-content-img{
    height:190px;
    background:linear-gradient(135deg,#d9edf8,#edf7fb);
    background-position:center;
    background-size:cover;
}
.qfh-content-body{padding:20px}
.qfh-content-body span{
    color:#168bd2;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.7px;
}
.qfh-content-body h3{margin:7px 0 8px;font-size:21px}
.qfh-content-body p{margin:0;color:#68747d;line-height:1.5}

@media(max-width:900px){
    .qfh-categories{grid-template-columns:repeat(2,1fr)}
    .qfh-content-grid{grid-template-columns:1fr}
    .qfh-strip{align-items:flex-start;flex-direction:column}
}
@media(max-width:560px){
    .qfh-wrap{padding:15px 15px 50px}
    .qfh-hero{min-height:330px;padding:35px 20px;border-radius:20px}
    .qfh-hero p{font-size:16px}
    .qfh-categories{grid-template-columns:1fr}
    .qfh-section-head{align-items:flex-start;flex-direction:column}
    .qfh-soft{padding:20px;margin-left:-5px;margin-right:-5px}
}
