/*
Theme Name: Sentinel Blog
Theme URI: https://sentinelimports.online
Author: Sentinel Imports
Description: Lightweight blog theme matching the Sentinel Imports marketing site (navy/teal, Archivo Expanded headlines + Inter body, floating header, elevated CTAs). Classic theme — the header nav links back to the main static site.
Version: 1.1.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: sentinel-blog
*/

:root{
  --si-navy:#062642; --si-teal:#11B7BD; --si-teal-light:#4CC9D0; --si-teal-dark:#07818A;
  --si-primary:#11B7BD; --si-primary-dark:#0C9AA0; --si-primary-rgb:17,183,189;
  --si-ink:#041b2f; --si-ink-rgb:4,27,47; --si-ink-border:rgba(255,255,255,.14);
  --si-text:#1c2b3a; --si-muted:#556172; --si-muted-light:#8b98a8;
  --si-border:#e1e8ee; --si-bg-soft:#f3f7f9;
  --si-radius:10px; --si-shadow:0 10px 30px rgba(6,38,71,.10);
}
*{box-sizing:border-box;}
body{margin:0;font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
  color:var(--si-text);background:#fff;-webkit-font-smoothing:antialiased;line-height:1.6;
  display:flex;flex-direction:column;min-height:100vh;}
.sb-main{flex:1 0 auto;min-width:0;}
a{color:var(--si-primary);text-decoration:none;}
img{max-width:100%;height:auto;}
.sb-container{max-width:1140px;margin:0 auto;padding:0 24px;}

/* Headlines in Archivo Expanded (800) to match the main site; body/UI stays Inter */
.sb-pagehead h1,.sb-single-title,.sb-card h2,.sb-content h2,.sb-content h3{
  font-family:'Archivo Expanded','Archivo','Inter',-apple-system,BlinkMacSystemFont,sans-serif;
  letter-spacing:-0.01em;}

/* ---- floating header (matches main site) ---- */
.sb-nav-wrap{position:fixed;top:0;left:0;right:0;z-index:1030;padding:14px 16px 0;pointer-events:none;}
/* More opaque than the marketing site's bar: blog content is white, so a 0.72 alpha
   would read as washed-out grey once posts scroll underneath. */
.sb-nav{pointer-events:auto;max-width:1180px;margin:0 auto;border-radius:14px;
  background:rgba(12,32,52,.94);-webkit-backdrop-filter:saturate(160%) blur(12px);
  backdrop-filter:saturate(160%) blur(12px);box-shadow:0 12px 34px rgba(0,0,0,.28);
  border:1px solid rgba(255,255,255,.10);
  display:flex;align-items:center;justify-content:space-between;padding:10px 22px;gap:16px;flex-wrap:wrap;}
.sb-brand img{height:52px;display:block;}
.sb-links{display:flex;gap:20px;flex-wrap:wrap;align-items:center;}
.sb-links a{color:#d8deea;font-size:14px;font-weight:500;}
.sb-links a:hover,.sb-links a.is-active{color:#fff;}
.sb-cta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}

/* CTA buttons — outline pair + elevated primary, matching the site */
.sb-btn{display:inline-block;font-size:13px;font-weight:600;line-height:1;padding:9px 18px;
  border-radius:6px;border:1px solid transparent;white-space:nowrap;
  transition:transform .12s ease,background-color .15s ease,box-shadow .15s ease;}
.sb-btn:hover{transform:translateY(-1px);}
.sb-btn-outline{border-color:rgba(255,255,255,.6);color:#fff;background:transparent;}
.sb-btn-outline:hover{background:rgba(255,255,255,.1);color:#fff;}
.sb-btn-primary{background:var(--si-primary);color:#fff;font-weight:700;
  box-shadow:0 6px 18px rgba(var(--si-primary-rgb),.38);}
.sb-btn-primary:hover{background:var(--si-primary-dark);color:#fff;
  box-shadow:0 12px 26px rgba(var(--si-primary-rgb),.55);}

/* ---- page head (clears the fixed header) ---- */
.sb-pagehead{background:var(--si-ink);color:#fff;padding:132px 0 46px;}
.sb-eyebrow{display:block;font-size:12px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--si-teal-light);margin-bottom:10px;}
.sb-pagehead h1{font-size:clamp(26px,4vw,40px);font-weight:800;margin:0 0 12px;color:#fff;}
.sb-lead{color:rgba(255,255,255,.85);font-size:16px;max-width:640px;margin:0;}

/* ---- main ---- */
/* Default top padding clears the fixed header (single posts / pages have no pagehead).
   When a dark pagehead precedes it, that already provides the clearance. */
.sb-main{padding:132px 24px 56px;min-height:50vh;}
.sb-pagehead + .sb-main{padding-top:56px;}

/* ---- post grid ---- */
.sb-post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.sb-card{background:#fff;border:1px solid var(--si-border);border-top:3px solid var(--si-primary);
  border-radius:var(--si-radius);overflow:hidden;box-shadow:var(--si-shadow);display:flex;flex-direction:column;}
.sb-card-thumb{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--si-bg-soft);}
.sb-card-thumb img{width:100%;height:100%;object-fit:cover;}
.sb-card-body{padding:22px;display:flex;flex-direction:column;flex:1;}
.sb-meta{font-size:12px;color:var(--si-muted);margin-bottom:8px;text-transform:uppercase;letter-spacing:.4px;}
.sb-card h2{font-size:18px;font-weight:800;line-height:1.3;margin:0 0 10px;}
.sb-card h2 a{color:var(--si-ink);}
.sb-card h2 a:hover{color:var(--si-primary);}
.sb-card p{font-size:14px;color:var(--si-muted);line-height:1.65;margin:0 0 16px;flex:1;}
.sb-readmore{font-weight:600;font-size:14px;color:var(--si-primary);}

/* ---- pagination ---- */
.sb-main .pagination,.sb-main .nav-links{margin-top:40px;display:flex;gap:6px;flex-wrap:wrap;}
.sb-main .page-numbers{padding:8px 13px;border:1px solid var(--si-border);border-radius:6px;color:var(--si-text);}
.sb-main .page-numbers.current{background:var(--si-primary);color:#fff;border-color:var(--si-primary);}

/* ---- single / page ---- */
.sb-single{max-width:760px;margin:0 auto;}
.sb-single-title{font-size:clamp(28px,4vw,40px);font-weight:800;color:var(--si-ink);line-height:1.2;margin:6px 0 18px;}
.sb-single-thumb{border-radius:var(--si-radius);overflow:hidden;margin-bottom:28px;}
.sb-content{font-size:17px;line-height:1.85;color:var(--si-text);}
.sb-content h2{font-size:26px;font-weight:800;color:var(--si-ink);margin:36px 0 14px;}
.sb-content h3{font-size:21px;font-weight:800;color:var(--si-ink);margin:28px 0 12px;}
.sb-content p{margin:0 0 20px;}
.sb-content a{text-decoration:underline;}
.sb-content img{border-radius:var(--si-radius);margin:16px 0;}
.sb-content blockquote{border-left:4px solid var(--si-primary);background:var(--si-bg-soft);margin:24px 0;padding:16px 22px;border-radius:0 8px 8px 0;color:var(--si-ink);font-style:italic;}
.sb-content ul,.sb-content ol{margin:0 0 20px;padding-left:24px;}
.sb-content li{margin-bottom:8px;}
.sb-content code{background:var(--si-bg-soft);padding:2px 6px;border-radius:4px;font-size:.9em;}
.sb-content table{width:100%;border-collapse:collapse;margin:20px 0;}
.sb-content th,.sb-content td{border:1px solid var(--si-border);padding:10px 12px;text-align:left;font-size:15px;}
.sb-content th{background:var(--si-bg-soft);}

/* ---- footer ---- */
.sb-footer{background:#11161f;color:#8893a3;padding:34px 0;font-size:13px;margin-top:40px;}
.sb-footer-inner{max-width:1140px;margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;}
.sb-footer a{color:#aab4c4;}
.sb-footer a:hover{color:#fff;}
.sb-footer-links a{margin-left:22px;}

/* ---- responsive ---- */
@media(max-width:991.98px){
  .sb-nav{background:rgba(12,32,52,.97);}
}
@media(max-width:900px){.sb-post-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){
  .sb-post-grid{grid-template-columns:1fr;}
  .sb-nav{justify-content:center;}
  .sb-links{gap:14px;justify-content:center;}
  .sb-cta{justify-content:center;}
  .sb-cta .sb-btn{flex:1;text-align:center;}
  .sb-brand img{height:44px;}
  /* header wraps to two rows on phones, so both layouts need extra clearance.
     `.sb-pagehead + .sb-main` (2 classes) still wins for archive pages. */
  .sb-main{padding-top:168px;}
  .sb-pagehead{padding:168px 0 40px;}
  .sb-footer-links a{margin:0 14px 0 0;}
}
