/* Alpray Theme v2 — shared styles for all pages
   Loaded after style.css to override old template */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap');

/* ── BASE ── */
body { font-family:'Inter',sans-serif !important; color:#1a1a2e; background:#fff; overflow-x:hidden; }
h1,h2,h3,h4,h5,h6 { font-family:'Inter',sans-serif !important; color:#0a2342; }
a { color:#0a2342; }
a:hover { color:#c8922a; }

/* hide all old template chrome — nav, footer, counter, subscribe, testimonial carousel, contact form */
.header-area, .footer-area, .counterUp-area, .scrollUp-old,
.subscribe-area, .testimonial-area, .contact-area { display:none !important; }

/* hide "related posts" blog-area that appears after article content on blog pages */
.blog-post-area ~ .blog-area,
.blog-post-area ~ #blogs,
.blog-post-area ~ div > .blog-area { display:none !important; }

/* ── NAV ── */
.site-nav {
  background:#fff; border-bottom:1px solid #e8e4da;
  padding:0 60px; display:flex; align-items:center;
  justify-content:space-between; height:68px;
  position:sticky; top:0; z-index:1000;
}
.site-nav .nav-logo { font-size:17px; font-weight:900; letter-spacing:-.5px; color:#0a2342; }
.site-nav .nav-logo span { color:#c8922a; }
.site-nav .nav-logo a { color:#0a2342; text-decoration:none; }
.site-nav .nav-links { display:flex; gap:32px; list-style:none; margin:0; padding:0; }
.site-nav .nav-links a { font-size:14px; font-weight:500; color:#6a6a7a; text-decoration:none; }
.site-nav .nav-links a:hover { color:#0a2342; }
.site-nav .nav-links .has-sub { position:relative; }
.site-nav .nav-links .sub-menu {
  display:none; position:absolute; top:100%; left:0;
  background:#fff; border:1px solid #e8e4da;
  min-width:220px; padding:8px 0; z-index:100;
}
.site-nav .nav-links .has-sub:hover .sub-menu { display:block; }
.site-nav .nav-links .sub-menu a { display:block; padding:10px 20px; font-size:13px; color:#4a4a6a; }
.site-nav .nav-links .sub-menu a:hover { background:#fdf9f3; color:#0a2342; }
.site-nav .nav-cta {
  background:#0a2342; color:#fff; padding:10px 22px;
  font-size:14px; font-weight:600; border:none; cursor:pointer;
  font-family:'Inter',sans-serif;
}
.site-nav .nav-cta:hover { background:#c8922a; }

/* ── ARTICLE PAGE HEADER ── */
.article-header {
  background:#0a2342; padding:60px 60px 52px;
}
.article-header-inner { max-width:860px; margin:0 auto; }
.article-eyebrow {
  font-size:11px; font-weight:700; letter-spacing:2.5px;
  text-transform:uppercase; color:#c8922a; margin-bottom:16px;
  display:flex; align-items:center; gap:10px;
}
.article-eyebrow::before { content:''; display:block; width:20px; height:1px; background:#c8922a; }
.article-header h1 {
  font-size:36px; font-weight:800; color:#fff;
  line-height:1.2; letter-spacing:-.5px; margin-bottom:16px;
}
.article-meta { font-size:13px; color:rgba(255,255,255,.45); }
.article-meta a { color:rgba(255,255,255,.6); }

/* ── ARTICLE BODY ── */
.article-body { max-width:860px; margin:0 auto; padding:60px 60px 80px; }
.article-body p { font-size:16px; line-height:1.8; color:#374151; margin-bottom:20px; }
.article-body h2 { font-size:26px; font-weight:800; color:#0a2342; margin:48px 0 16px; letter-spacing:-.3px; }
.article-body h3 { font-size:20px; font-weight:700; color:#0a2342; margin:36px 0 12px; }
.article-body h4 { font-size:16px; font-weight:700; color:#0a2342; margin:24px 0 10px; }
.article-body ul, .article-body ol { margin:0 0 20px 24px; }
.article-body li { font-size:15px; line-height:1.7; color:#374151; margin-bottom:6px; }
.article-body strong { color:#0a2342; }
.article-body a { color:#c8922a; font-weight:500; }
.article-body a:hover { color:#0a2342; }
.article-body hr { border:none; border-top:1px solid #e8e4da; margin:40px 0; }
.article-body code {
  background:#f3f4f6; padding:2px 7px; font-size:13px;
  border-radius:3px; font-family:monospace; color:#0a2342;
}
.article-body pre {
  background:#0a2342; color:#e8e4da; padding:24px 28px;
  overflow-x:auto; margin:24px 0; font-size:13px; line-height:1.7;
}
.article-body pre code { background:none; padding:0; color:#e8e4da; font-size:13px; }
.article-body blockquote {
  border-left:3px solid #c8922a; padding:16px 20px;
  background:#fdf9f3; margin:24px 0; font-style:italic;
  color:#4a4a6a; font-size:16px;
}
.article-body table { width:100%; border-collapse:collapse; margin:24px 0; font-size:14px; }
.article-body th { background:#0a2342; color:#fff; padding:12px 16px; text-align:left; font-weight:600; }
.article-body td { padding:11px 16px; border-bottom:1px solid #f0ede6; color:#374151; }
.article-body tr:hover td { background:#fdf9f3; }

/* article-specific components that existed before */
.blog-post-area { padding:0; }
.blog-post-area .container { max-width:none !important; padding:0 !important; }
.blog-post-area .row { margin:0 !important; }
.blog-post-area .col-lg-10 { max-width:none !important; flex:none; width:100%; padding:0 !important; }
.blog-details { padding:0; }
.blog-post-title { font-size:36px !important; font-weight:800 !important; color:#fff !important; margin-bottom:12px !important; }
.blog-post-meta { font-size:13px !important; color:rgba(255,255,255,.45) !important; }
.blog-post-meta a { color:rgba(255,255,255,.6) !important; }

/* keep existing article styles but update colors */
.toc { background:#fdf9f3; border:1px solid #e8e4da; padding:24px 28px; margin:0 0 32px; }
.toc h4 { color:#0a2342 !important; font-size:15px !important; margin-bottom:12px !important; }
.toc ol { margin-left:20px; }
.toc li { margin-bottom:6px; }
.toc a { color:#c8922a !important; font-size:14px; }
.stats-row { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:#e8e4da; margin:28px 0; }
.stat-box { background:#fff; padding:20px; text-align:center; font-size:13px; color:#6a6a7a; }
.stat-box strong { display:block; font-size:26px; color:#0a2342; font-weight:900; letter-spacing:-1px; margin-bottom:4px; }
.section-divider { border:none; border-top:1px solid #e8e4da; margin:40px 0; }
.playbook-table { width:100%; border-collapse:collapse; font-size:14px; margin:20px 0; }
.playbook-table th { background:#0a2342; color:#fff; padding:12px 16px; text-align:left; }
.playbook-table td { padding:11px 16px; border-bottom:1px solid #f0ede6; }
.playbook-table tr:hover td { background:#fdf9f3; }
.decision-card { border:1px solid #e8e4da; padding:24px; margin:16px 0; }
.decision-card h4 { color:#0a2342 !important; }
.phase-box { border-left:3px solid #c8922a; padding:16px 20px; background:#fdf9f3; margin:16px 0; }
.checklist-item { display:flex; gap:12px; align-items:flex-start; padding:8px 0; font-size:15px; }
.check { color:#c8922a; font-weight:700; flex-shrink:0; }

/* AI callout box — new */
.ai-callout {
  background:#eef4ff; border-left:4px solid #3a6bcc;
  padding:24px 28px; margin:32px 0; border-radius:0 4px 4px 0;
}
.ai-callout .ai-label {
  font-size:11px; font-weight:700; letter-spacing:2px;
  text-transform:uppercase; color:#3a6bcc; margin-bottom:10px;
}
.ai-callout h4 { font-size:16px; color:#1e3a5f !important; margin-bottom:8px !important; }
.ai-callout p { font-size:14px; color:#374151; line-height:1.65; margin-bottom:0 !important; }

/* ── FOOTER ── */
.site-footer { background:#060f1e; padding:48px 60px; }
.footer-grid {
  max-width:1100px; margin:0 auto;
  display:grid; grid-template-columns:1fr 1fr 1fr; gap:48px;
}
.footer-logo { font-size:16px; font-weight:900; color:#fff; letter-spacing:-.3px; margin-bottom:10px; }
.footer-logo span { color:#c8922a; }
.footer-tagline { font-size:13px; color:rgba(255,255,255,.35); line-height:1.6; margin:0; }
.footer-col h5 {
  font-size:11px; font-weight:700; letter-spacing:2px;
  text-transform:uppercase; color:#c8922a; margin-bottom:16px;
  font-family:'Inter',sans-serif;
}
.footer-col a { display:block; font-size:13px; color:rgba(255,255,255,.45); margin-bottom:8px; }
.footer-col a:hover { color:#fff; }
.footer-bottom {
  max-width:1100px; margin:36px auto 0; padding-top:24px;
  border-top:1px solid rgba(255,255,255,.08);
  display:flex; justify-content:space-between; align-items:center;
}
.footer-bottom p { font-size:12px; color:rgba(255,255,255,.25); margin:0; }
.footer-bottom a { font-size:12px; color:rgba(255,255,255,.35); }

/* ── SCROLL UP ── */
#scrollUp {
  background:#c8922a; bottom:28px; color:#fff; cursor:pointer;
  font-size:18px; height:36px; width:36px; line-height:36px;
  position:fixed; right:14px; text-align:center; z-index:9999;
  display:none;
}

/* ── EU CONSENT BANNER ── */
#al-consent {
  position:fixed; bottom:0; left:0; right:0; z-index:99999;
  background:#060f1e; border-top:2px solid #c8922a;
  padding:16px 40px; display:flex; align-items:center;
  justify-content:space-between; gap:24px; font-family:'Inter',sans-serif;
}
#al-consent p { font-size:13px; color:rgba(255,255,255,.7); margin:0; max-width:700px; }
#al-consent a { color:#c8922a; }
.al-consent-btns { display:flex; gap:10px; flex-shrink:0; }
.al-accept {
  background:#c8922a; color:#fff; border:none; padding:9px 20px;
  font-size:13px; font-weight:700; cursor:pointer; font-family:'Inter',sans-serif;
}
.al-decline {
  background:transparent; color:rgba(255,255,255,.5); border:1px solid rgba(255,255,255,.2);
  padding:9px 20px; font-size:13px; cursor:pointer; font-family:'Inter',sans-serif;
}

/* ── LEAD CAPTURE ── */
.lead-capture {
  background: #0a2342; padding: 48px 60px; margin-top: 0;
}
.lead-capture-inner { max-width: 560px; margin: 0 auto; text-align: center; }
.lead-capture h3 { font-size: 20px; font-weight: 700; color: #fff; margin: 0 0 8px; }
.lead-capture p { font-size: 14px; color: rgba(255,255,255,.55); margin: 0 0 24px; line-height: 1.6; }
.lead-capture-row { display: flex; gap: 0; }
.lead-capture-row input[type="email"] {
  flex: 1; padding: 13px 16px; font-size: 14px; border: none;
  font-family: 'Inter', sans-serif; outline: none; color: #1a1a2e;
}
.lead-capture-row button {
  background: #c8922a; color: #fff; border: none; padding: 13px 24px;
  font-size: 13px; font-weight: 700; cursor: pointer;
  font-family: 'Inter', sans-serif; text-transform: uppercase; letter-spacing: .5px;
  white-space: nowrap;
}
.lead-capture-row button:hover { background: #b07820; }
.lead-capture-success { display: none; color: #52d3aa; font-size: 15px; font-weight: 600; padding: 12px 0; }
.lead-capture-badge { font-size: 11px; color: rgba(255,255,255,.3); margin-top: 12px; }
@media(max-width: 600px) {
  .lead-capture { padding: 40px 24px; }
  .lead-capture-row { flex-direction: column; }
  .lead-capture-row input[type="email"] { border-bottom: 1px solid #e8e4da; }
}

/* ── MOBILE NAV ── */
.nav-hamburger {
  display:none !important; background:none; border:none; cursor:pointer;
  padding:4px; flex-direction:column; gap:5px;
}
.nav-hamburger span {
  display:block; width:22px; height:2px; background:#0a2342; border-radius:2px;
  transition:all .2s;
}
.mobile-nav-open .nav-links { display:flex !important; flex-direction:column; gap:0; position:absolute; top:68px; left:0; right:0; background:#fff; border-bottom:1px solid #e8e4da; padding:12px 0; z-index:999; }
.mobile-nav-open .nav-links li { border-bottom:1px solid #f3f3f3; }
.mobile-nav-open .nav-links a { display:block; padding:13px 24px; font-size:15px; }

/* ── RESPONSIVE ── */
@media (max-width:991px) {
  .site-nav { padding:0 24px; }
  .site-nav .nav-links { display:none; }
  .nav-hamburger { display:flex !important; }
  .article-header { padding:40px 24px; }
  .article-body { padding:40px 24px 60px; }
  .article-header h1 { font-size:26px; }
  .stats-row { grid-template-columns:repeat(2,1fr); }
  .site-footer { padding:40px 24px; }
  .footer-grid { grid-template-columns:1fr; gap:28px; }
  .footer-bottom { flex-direction:column; gap:8px; text-align:center; }
  #al-consent { flex-direction:column; padding:16px 20px; }
}
