/*
Theme Name: FirstKeysGuide Pro (Fixed – Clean, Elementor-Friendly)
Theme URI: https://firstkeysguide.com
Author: FirstKeysGuide
Description: Minimal, stable theme built for Elementor with clean header/footer and no risky hooks. Optimized for PHP 8.1+.
Version: 1.1
Text Domain: firstkeysguide-pro
*/

:root{
  --bg:#f7fafc;
  --surface:#ffffff;
  --text:#0f172a;
  --muted:#64748b;
  --primary:#0ea5e9; /* sky */
  --accent:#1e293b;  /* slate */
  --radius:16px;
}

*{box-sizing:border-box;}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;}
a{color:var(--primary);text-decoration:none;}
a:hover{text-decoration:underline;}
.container{max-width:1100px;margin:0 auto;padding:0 20px;}

.site-header{background:var(--surface);position:sticky;top:0;z-index:50;border-bottom:1px solid #e2e8f0;}
.header-flex{display:flex;align-items:center;justify-content:space-between;padding:16px 0;}
.logo a{font-weight:800;font-size:1.25rem;letter-spacing:.2px;}
.main-nav ul{display:flex;gap:18px;list-style:none;margin:0;padding:0;}
.cta-btn{background:var(--primary);color:white;padding:10px 14px;border-radius:9999px;font-weight:700;}
.hamburger{display:none;background:none;border:0;width:36px;height:36px;position:relative;}
.hamburger span, .hamburger span:before, .hamburger span:after{content:"";position:absolute;left:8px;right:8px;height:2px;background:#0f172a;}
.hamburger span{top:50%;transform:translateY(-50%);}
.hamburger span:before{top:-8px;}
.hamburger span:after{top:8px;}

.mobile-nav{display:none;background:var(--surface);border-bottom:1px solid #e2e8f0;}
.mobile-nav.open{display:block;}
.mobile-nav ul{list-style:none;margin:0;padding:12px 20px;display:grid;gap:8px;}

.divider-gradient{height:3px;background:linear-gradient(90deg,#0ea5e9,#1e293b);opacity:.7;}

.site-main{min-height:60vh;}
.site-footer{margin-top:40px;background:var(--surface);border-top:1px solid #e2e8f0;padding:30px 0;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:24px;}
.footer-col h4{margin:0 0 10px 0;}
.footer-col ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;}

.post-row{background:var(--surface);padding:20px;border-radius:var(--radius);box-shadow:0 2px 10px rgba(0,0,0,.04);margin-bottom:18px;}
.post-title{margin:0 0 6px 0;font-size:1.25rem;}
.post-meta{color:var(--muted);font-size:.9rem;margin-bottom:10px;}

.hero{background:var(--surface);padding:30px 0;border-bottom:1px solid #e2e8f0;margin-bottom:20px;}
.category-layout{display:grid;grid-template-columns:2fr 1fr;gap:24px;}
.sidebar-card{background:var(--surface);border:1px solid #e2e8f0;border-radius:var(--radius);padding:16px;}
.btn{display:inline-block;background:var(--primary);color:#fff;padding:10px 14px;border-radius:10px;font-weight:700;}

@media (max-width:900px){
  .main-nav{display:none;}
  .hamburger{display:inline-block;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .category-layout{grid-template-columns:1fr;}
}
