/*
 Theme Name:   GeneratePress Child
 Template:     generatepress
 Version:      4.0
*/
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');

:root {
  --blue:    #2B5FB0;
  --blue-dk: #1A3E7A;
  --blue-lt: #EBF2FF;
  --hero-bg: #1E3A6E;
  --bg:      #F5F7FA;
  --card:    #FFFFFF;
  --text:    #1A1A2E;
  --muted:   #6B7280;
  --border:  #E5E7EB;
  --r:       6px;
}

*,*::before,*::after{box-sizing:border-box}
body{font-family:'Inter',system-ui,sans-serif;background:var(--bg);color:var(--text);font-size:15px;line-height:1.65;margin:0;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6{font-family:'Inter',sans-serif;font-weight:700;line-height:1.3;color:var(--text);margin:0 0 .5em}
a{color:var(--blue);text-decoration:none;transition:color .2s}
a:hover{color:var(--blue-dk)}
img{max-width:100%;height:auto;display:block}
p{margin:0 0 1em}

/* Layout */
.site-container,.inside-site-container,.grid-container{max-width:1200px !important;margin:0 auto !important}
.site-content{display:block !important;overflow:visible !important;padding:0 !important}
.content-area{width:100% !important}

/* Header */
.site-header{background:#fff !important;border-bottom:1px solid var(--border) !important;padding:0 !important;box-shadow:0 1px 3px rgba(0,0,0,.06) !important}
.site-header::before{display:none !important}
.inside-header,.inside-header.grid-container,.has-inline-mobile-toggle .inside-header,.has-inline-mobile-toggle .inside-header.grid-container{background:#fff !important;height:60px !important;max-height:60px !important;min-height:60px !important;display:flex !important;align-items:center !important;justify-content:space-between !important;padding:0 28px !important;overflow:hidden !important;width:100% !important;box-sizing:border-box !important;border-bottom:none !important}
.site-title{margin:0 !important;line-height:1 !important}
.site-title a,.main-title a,.site-header .site-title a{font-size:1.55rem !important;font-weight:800 !important;color:var(--blue) !important;text-shadow:none !important;text-decoration:none !important;letter-spacing:-.5px !important;background:none !important;-webkit-background-clip:unset !important;-webkit-text-fill-color:var(--blue) !important;display:block !important;opacity:1 !important;visibility:visible !important}
.site-title a::before,.main-title a::before{display:none !important}
.site-description{display:none !important}

/* Nav */
.site-header>#site-navigation,.has-inline-mobile-toggle #site-navigation{background:var(--blue) !important;height:42px !important;min-height:42px !important;max-height:42px !important;display:flex !important;align-items:center !important;width:100% !important;position:static !important;border:none !important;box-shadow:none !important;overflow:visible !important;padding:0 !important;flex:none !important}
.site-header>#site-navigation .inside-navigation{max-width:1200px;margin:0 auto;padding:0 28px !important;display:flex !important;align-items:center !important;height:100% !important;width:100% !important;background:transparent !important}
.site-header>#site-navigation ul.menu,.site-header>#site-navigation .main-nav>ul{display:flex !important;flex-direction:row !important;align-items:center !important;height:42px !important;margin:0 !important;padding:0 !important;gap:0 !important;flex-wrap:nowrap !important}
.site-header>#site-navigation ul>li{height:42px !important;display:flex !important;align-items:center !important;position:relative !important}
.site-header>#site-navigation ul>li>a{display:flex !important;align-items:center !important;height:42px !important;padding:0 16px !important;font-size:.82rem !important;font-weight:600 !important;color:rgba(255,255,255,.9) !important;text-transform:none !important;letter-spacing:0 !important;white-space:nowrap !important;border:none !important;margin:0 !important;background:transparent !important;transition:background .15s !important}
.site-header>#site-navigation ul>li>a:hover,.site-header>#site-navigation ul>li.current-menu-item>a{background:rgba(0,0,0,.15) !important;color:#fff !important}
.site-header>#site-navigation ul ul{position:absolute !important;top:42px !important;left:0 !important;height:auto !important;min-width:200px !important;background:#fff !important;border:1px solid var(--border) !important;border-top:2px solid var(--blue) !important;border-radius:0 0 var(--r) var(--r) !important;box-shadow:0 4px 16px rgba(0,0,0,.12) !important;z-index:9999 !important}
.site-header>#site-navigation ul ul li{height:auto !important;width:100% !important}
.site-header>#site-navigation ul ul li a{height:auto !important;padding:10px 16px !important;color:var(--text) !important;font-size:.83rem !important;border-bottom:1px solid var(--border) !important;margin:0 !important;background:#fff !important;text-transform:none !important}
.site-header>#site-navigation ul ul li a:hover{background:var(--blue-lt) !important;color:var(--blue) !important}
.mobile-menu-control-wrapper{display:none !important}

/* Kaleeg-style content classes */
.kl-hero{background:var(--hero-bg);padding:52px 28px 56px;color:#fff}
.kl-hero-inner{max-width:1200px;margin:0 auto}
.kl-hero h1{font-size:2.2rem;color:#fff;margin-bottom:12px;font-weight:800;line-height:1.25}
.kl-hero p{font-size:1rem;color:rgba(255,255,255,.8);max-width:540px;margin:0}
.pill-strip-outer{background:#fff;border-bottom:1px solid var(--border)}
.pill-strip{max-width:1200px;margin:0 auto;padding:8px 28px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.pill-strip a{display:inline-block;padding:4px 14px;border:1px solid var(--border);border-radius:20px;font-size:.78rem;font-weight:500;color:var(--muted);background:#fff;text-decoration:none;transition:all .2s;white-space:nowrap}
.pill-strip a:hover{background:var(--blue);color:#fff;border-color:var(--blue)}
.kl-section-title{display:flex;align-items:center;gap:10px;margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid var(--border)}
.kl-section-title::before{content:'';width:4px;height:20px;background:var(--blue);border-radius:2px;flex-shrink:0}
.kl-section-title span{font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;color:var(--text)}
.kl-view-all{font-size:.75rem;font-weight:600;color:var(--blue);margin-left:auto}
.kl-view-all:hover{color:var(--blue-dk)}
.kl-start-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-bottom:36px}
.kl-start-card{background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:20px 12px 16px;text-align:center;text-decoration:none;display:block;transition:box-shadow .2s,border-color .2s}
.kl-start-card:hover{box-shadow:0 4px 16px rgba(43,95,176,.12);border-color:var(--blue)}
.kl-start-icon{font-size:2rem;margin-bottom:10px;line-height:1}
.kl-start-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--blue)}
.kl-wrap{max-width:1200px;margin:0 auto;padding:28px 28px 48px;display:grid;grid-template-columns:1fr 290px;gap:28px;align-items:start}
.kl-posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px}
.kl-card{background:#fff;border:1px solid var(--border);border-radius:var(--r);overflow:hidden;transition:box-shadow .2s;display:flex;flex-direction:column}
.kl-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.10)}
.kl-card-img{height:160px;overflow:hidden;display:block;flex-shrink:0}
.kl-card-img img{width:100%;height:160px;object-fit:cover;transition:transform .3s}
.kl-card:hover .kl-card-img img{transform:scale(1.04)}
.kl-card-no-img{height:160px;background:var(--blue-lt);display:flex;align-items:center;justify-content:center;font-size:2.5rem;flex-shrink:0}
.kl-card-body{padding:13px 15px 15px;display:flex;flex-direction:column;flex:1}
.kl-card-cat{display:inline-block;font-size:.67rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--blue);background:var(--blue-lt);padding:2px 8px;border-radius:3px;margin-bottom:7px;align-self:flex-start}
.kl-card-title{font-size:.92rem;font-weight:700;color:var(--text);line-height:1.35;margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.kl-card-title a{color:var(--text)}
.kl-card-title a:hover{color:var(--blue)}
.kl-card-exc{font-size:.78rem;color:var(--muted);line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:8px;flex:1}
.kl-card-meta{font-size:.7rem;color:var(--muted);display:flex;align-items:center;gap:8px}
.kl-read-more{font-size:.73rem;font-weight:600;color:var(--blue);display:inline-flex;align-items:center;gap:3px;margin-top:8px;align-self:flex-start}
.kl-read-more::after{content:'→'}
.kl-read-more:hover{color:var(--blue-dk)}
.kl-featured-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:28px}
.kl-featured-card{background:#fff;border:1px solid var(--border);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column}
.kl-featured-card .kl-card-img,.kl-featured-card .kl-card-no-img{height:195px}
.kl-featured-card .kl-card-img img{height:195px}
.kl-featured-title{font-size:1.05rem !important;-webkit-line-clamp:3 !important}
.kl-sidebar{}
.kl-widget{background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:16px;margin-bottom:18px}
.kl-widget-title{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;color:var(--text);margin:0 0 12px;padding-bottom:10px;border-bottom:1px solid var(--border)}
.kl-search-form{display:flex;border:1px solid var(--border);border-radius:var(--r);overflow:hidden}
.kl-search-form input{flex:1;border:none;padding:9px 12px;font-size:.85rem;outline:none;font-family:'Inter',sans-serif;color:var(--text)}
.kl-search-form button{background:var(--blue);color:#fff;border:none;padding:9px 14px;cursor:pointer;font-size:.85rem;font-weight:600}
.kl-search-form button:hover{background:var(--blue-dk)}
.kl-cat-list{display:flex;flex-direction:column}
.kl-cat-list a{display:flex;align-items:center;justify-content:space-between;padding:7px 0;border-bottom:1px solid var(--border);font-size:.82rem;color:var(--text);text-decoration:none}
.kl-cat-list a:last-child{border-bottom:none}
.kl-cat-list a:hover{color:var(--blue)}
.kl-cat-list span{background:var(--blue-lt);color:var(--blue);font-size:.67rem;font-weight:700;padding:2px 7px;border-radius:10px}
.kl-recent-item{display:flex;gap:10px;padding:8px 0;border-bottom:1px solid var(--border);text-decoration:none;align-items:flex-start}
.kl-recent-item:last-child{border-bottom:none}
.kl-recent-thumb{width:56px;height:46px;border-radius:4px;overflow:hidden;flex-shrink:0}
.kl-recent-thumb img{width:56px;height:46px;object-fit:cover}
.kl-recent-no-thumb{width:56px;height:46px;border-radius:4px;background:var(--blue-lt);display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0}
.kl-recent-info{display:flex;flex-direction:column;gap:3px}
.kl-recent-rtitle{font-size:.77rem;font-weight:600;color:var(--text);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.kl-recent-date{font-size:.67rem;color:var(--muted)}
.kl-recent-item:hover .kl-recent-rtitle{color:var(--blue)}
/* Single post */
.single .site-content{padding:0 !important}
.single-post-header{background:var(--hero-bg);padding:36px 28px;color:#fff}
.single-post-header-inner{max-width:1200px;margin:0 auto}
.single-post-cat{display:inline-block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.7px;color:#fff;background:rgba(255,255,255,.2);padding:3px 10px;border-radius:3px;margin-bottom:10px}
.single-post-title{font-size:clamp(1.4rem,3vw,2rem);color:#fff;margin:0 0 12px;line-height:1.3;font-weight:800}
.single-post-meta{font-size:.76rem;color:rgba(255,255,255,.7);display:flex;gap:14px;flex-wrap:wrap}
.single-post-body{background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:28px 32px;font-size:.96rem;line-height:1.85;color:var(--text)}
.single-post-body h2{font-size:1.25rem;color:var(--blue);margin:32px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--border)}
.single-post-body h3{font-size:1.05rem;color:var(--text);margin:22px 0 10px}
.single-post-body p{margin-bottom:1.3em}
.single-post-body ul,.single-post-body ol{padding-left:24px;margin-bottom:1.3em}
.single-post-body li{margin-bottom:6px}
.single-post-body blockquote{border-left:3px solid var(--blue);background:var(--blue-lt);padding:16px 20px;margin:22px 0;border-radius:0 var(--r) var(--r) 0;font-style:italic}
.single-post-body a{color:var(--blue);border-bottom:1px solid rgba(43,95,176,.25)}
.single-post-body a:hover{border-bottom-color:var(--blue)}
.single-post-feat-img{width:100%;max-height:380px;object-fit:cover;border-radius:var(--r);margin-bottom:22px;display:block}
/* Breadcrumb */
.kl-breadcrumb{font-size:.73rem;color:var(--muted);padding:10px 0 14px;display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.kl-breadcrumb a{color:var(--blue)}
.kl-breadcrumb .sep{opacity:.45}
/* Pagination */
.kl-pagination{display:flex;justify-content:center;gap:6px;margin:28px 0 8px;flex-wrap:wrap}
.kl-pagination a,.kl-pagination span{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--border);border-radius:var(--r);font-size:.82rem;font-weight:600;color:var(--text);background:#fff;transition:all .2s}
.kl-pagination a:hover,.kl-pagination .current{background:var(--blue);color:#fff;border-color:var(--blue)}
/* Archive header */
.kl-archive-header{background:var(--hero-bg);padding:32px 28px;color:#fff}
.kl-archive-header-inner{max-width:1200px;margin:0 auto}
.kl-archive-title{font-size:1.6rem;color:#fff;margin:0 0 6px;font-weight:800}
.kl-archive-desc{color:rgba(255,255,255,.75);font-size:.9rem;margin:0}
/* Footer */
.site-footer{background:var(--blue-dk) !important;color:rgba(255,255,255,.75) !important;margin-top:0 !important}
.footer-widgets{background:var(--blue-dk) !important;padding:44px 28px 36px !important;border-top:none !important}
.footer-widgets .widget-title{color:#fff !important;font-size:.76rem !important;font-weight:700 !important;text-transform:uppercase !important;letter-spacing:1px !important;border-bottom:1px solid rgba(255,255,255,.12) !important;margin-bottom:14px !important;padding-bottom:10px !important}
.footer-widgets p,.footer-widgets li,.footer-widgets a{color:rgba(255,255,255,.65) !important;font-size:.82rem !important}
.footer-widgets a:hover{color:#fff !important}
.footer-widgets .widget{border-bottom:1px solid rgba(255,255,255,.08) !important}
.footer-widgets ul li{border-bottom:1px solid rgba(255,255,255,.07) !important}
.site-info{background:var(--blue-dk) !important;border-top:1px solid rgba(255,255,255,.12) !important;color:rgba(255,255,255,.5) !important;font-size:.73rem !important;padding:12px 28px !important;text-align:center !important}
.site-info a{color:rgba(255,255,255,.7) !important}
/* Mobile */
@media (max-width:768px){
  .inside-header,.has-inline-mobile-toggle .inside-header{height:54px !important;max-height:54px !important;padding:0 16px !important;overflow:hidden !important}
  .site-title a,.main-title a{font-size:1.3rem !important}
  .mobile-menu-control-wrapper{display:flex !important;align-items:center !important}
  .mobile-menu-control-wrapper .menu-toggle,button.menu-toggle{background:var(--blue) !important;border:none !important;border-radius:4px !important;width:36px !important;height:32px !important;min-height:unset !important;max-height:32px !important;padding:0 !important;display:flex !important;align-items:center !important;justify-content:center !important;box-shadow:none !important;cursor:pointer !important}
  .mobile-menu-control-wrapper .menu-toggle .gp-icon svg{width:18px !important;height:18px !important;fill:#fff !important}
  .menu-toggle .screen-reader-text{display:none !important}
  .kl-start-grid{grid-template-columns:repeat(3,1fr) !important;gap:10px !important}
  .kl-posts-grid{grid-template-columns:1fr !important}
  .kl-featured-row{grid-template-columns:1fr !important}
  .kl-wrap{grid-template-columns:1fr !important;padding:14px !important;gap:16px !important}
  .kl-hero{padding:32px 16px 36px !important}
  .kl-hero h1{font-size:1.45rem !important}
  .single-post-header{padding:22px 16px !important}
  .single-post-body{padding:18px !important}
  .kl-start-label{font-size:.63rem !important}
  .pill-strip{padding:6px 14px !important}
}
@media (min-width:769px) and (max-width:1024px){
  .kl-start-grid{grid-template-columns:repeat(3,1fr)}
  .kl-posts-grid{grid-template-columns:repeat(2,1fr)}
  .kl-wrap{padding:20px !important}
}

/* ── MOBILE: hide the nav bar when not toggled (removes second menu button) ── */
@media (max-width: 768px) {

  /* Nav completely hidden when closed — only shows as dropdown when toggled */
  #site-navigation:not(.toggled),
  .site-header > #site-navigation:not(.toggled) {
    display: none !important;
  }

  /* Also hide any remaining "Menu" text button inside the nav */
  #site-navigation .menu-toggle,
  .site-header > #site-navigation .menu-toggle {
    display: none !important;
  }

  /* Hide "Home" menu item on mobile only (logo already goes home) */
  .site-header > #site-navigation ul > li:first-child,
  #site-navigation ul.menu > li:first-child,
  #site-navigation .main-nav > ul > li:first-child {
    display: none !important;
  }

}
