:root {
    --cy-primary: #0b57d0;
    --cy-primary-dark: #073b8f;
    --cy-navy: #0d1b2a;
    --cy-text: #243247;
    --cy-muted: #677386;
    --cy-light: #f5f8fc;
    --cy-border: #e5eaf1;
    --cy-success: #16856b;
}

html { scroll-behavior: smooth; }
body {
    color: var(--cy-text);
    background: #fff;
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    line-height: 1.7;
    font-size: 16px;
}
a { color: var(--cy-primary); text-decoration: none; transition: .2s ease; }
a:hover { color: var(--cy-primary-dark); }
img { max-width: 100%; height: auto; }

.staffing-topbar {
    background: var(--cy-navy);
    color: #dce6f4;
    font-size: 13px;
    padding: 8px 0;
}
.site-header { z-index: 1030; box-shadow: 0 2px 12px rgba(13,27,42,.07); }
.navbar-brand { max-width: 280px; }
.custom-logo { max-height: 54px; width: auto; }
.brand-mark { width: 42px; height: 42px; border-radius: 10px; display: grid; place-items: center; background: var(--cy-primary); color: #fff; }
.brand-text strong, .brand-text small { display: block; line-height: 1.2; }
.brand-text strong { color: var(--cy-navy); font-size: 18px; }
.brand-text small { color: var(--cy-muted); font-size: 11px; margin-top: 3px; }
.navbar-nav .nav-link { color: #27364b; font-weight: 600; font-size: 14px; padding: 10px 14px; }
.navbar-nav .nav-link:hover, .navbar-nav .current-menu-item > .nav-link { color: var(--cy-primary); }
.dropdown-menu { border: 1px solid var(--cy-border); border-radius: 10px; padding: 8px; box-shadow: 0 12px 30px rgba(13,27,42,.10); min-width: 230px; }
.dropdown-item { border-radius: 7px; padding: 9px 12px; font-size: 14px; font-weight: 500; color: #33445c; }
.dropdown-item:hover { background: #eef4ff; color: var(--cy-primary); }
.dropend { position: relative; }
.dropend > .dropdown-menu { top: 0; left: 100%; margin-left: .25rem; }

.hero-section { background: linear-gradient(135deg, #073b8f 0%, #0b57d0 55%, #1479e8 100%); color: #fff; padding: 72px 0; position: relative; overflow: hidden; }
.hero-section::after { content:""; position:absolute; right:-90px; top:-120px; width:420px; height:420px; border-radius:50%; border:65px solid rgba(255,255,255,.06); }
.hero-section .container { position: relative; z-index: 1; }
.hero-eyebrow { display:inline-block; font-size:13px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; margin-bottom:14px; }
.hero-section h1 { font-size: clamp(38px, 5vw, 62px); line-height: 1.08; font-weight: 700; letter-spacing: -.03em; max-width: 850px; }
.hero-lead { font-size: 19px; color: rgba(255,255,255,.88); max-width: 760px; }
.hero-panel { background: rgba(255,255,255,.11); border: 1px solid rgba(255,255,255,.2); padding: 14px; border-radius: 18px; backdrop-filter: blur(8px); }
.hero-stat { display:flex; gap:14px; align-items:center; padding:17px; background:rgba(255,255,255,.08); border-radius:12px; margin:8px 0; }
.hero-stat > i { width:44px; height:44px; display:grid; place-items:center; border-radius:10px; background:#fff; color:var(--cy-primary); font-size:18px; }
.hero-stat strong, .hero-stat span { display:block; }
.hero-stat strong { font-size:16px; }
.hero-stat span { font-size:13px; color:rgba(255,255,255,.78); }

.trust-strip { background:#fff; border-bottom:1px solid var(--cy-border); }
.trust-item { padding:22px 10px; font-weight:700; color:#42536a; border-right:1px solid var(--cy-border); }
.trust-item:last-child { border-right:0; }
.trust-item i { color:var(--cy-primary); margin-right:8px; }

.staffing-breadcrumb {  padding:5px; font-size:13px; }
.content-card { background:#fff; border:1px solid var(--cy-border); border-radius:14px; padding: 20px; }
.section-kicker { display:inline-block; color:var(--cy-primary); font-weight:700; font-size:12px; text-transform:uppercase; letter-spacing:.08em; margin-bottom:7px; }
.entry-title, .archive-title { color:var(--cy-navy); font-weight:700; letter-spacing:-.025em; line-height:1.2; }
.entry-title { font-size: clamp(30px, 4vw, 44px); }
.archive-title { font-size: clamp(28px, 3.4vw, 40px); }
.entry-content h2 { color:var(--cy-navy); font-size:28px; font-weight:700; margin-top:34px; margin-bottom:14px; }
.entry-content h3 { color:var(--cy-navy); font-size:22px; font-weight:700; margin-top:28px; }
.entry-content ul, .entry-content ol { padding-left: 1.25rem; }
.entry-content li { margin-bottom:8px; }
.entry-content table { width:100%; margin:20px 0; border-collapse:collapse; }
.entry-content table th, .entry-content table td { padding:12px; border:1px solid var(--cy-border); }
.entry-content table th { background:var(--cy-light); color:var(--cy-navy); }

.staffing-sidebar { position: sticky; top: 98px; }
.sidebar-cta { background:linear-gradient(145deg, var(--cy-primary-dark), var(--cy-primary)); color:#fff; border-radius:14px; padding:24px; }
.sidebar-cta h3 { font-size:22px; font-weight:700; }
.sidebar-cta p { color:rgba(255,255,255,.86); font-size:14px; }
.sidebar-icon { width:48px; height:48px; display:grid; place-items:center; border-radius:12px; background:rgba(255,255,255,.15); margin-bottom:16px; font-size:20px; }
.staffing-widget { border:1px solid var(--cy-border); border-radius:14px; padding:22px; margin-bottom:20px; background:#fff; }
.widget-title { font-size:18px; color:var(--cy-navy); font-weight:700; margin-bottom:16px; padding-bottom:10px; border-bottom:1px solid var(--cy-border); }
.staffing-widget ul { list-style:none; padding:0; margin:0; }
.staffing-widget li { margin-bottom:10px; }
.service-list i { color:var(--cy-success); margin-right:8px; }

.archive-item { border:1px solid var(--cy-border); border-radius:14px; padding:24px; background:#fff; margin-bottom:18px; transition:.2s ease; }
.archive-item:hover { transform:translateY(-2px); box-shadow:0 12px 30px rgba(13,27,42,.07); }
.archive-item-title { font-size:23px; font-weight:700; line-height:1.3; margin-bottom:10px; }
.archive-item-title a { color:var(--cy-navy); }
.archive-item-title a:hover { color:var(--cy-primary); }
.archive-thumb { border-radius:10px; aspect-ratio: 4/3; object-fit:cover; width:100%; }
.post-meta { color:var(--cy-muted); font-size:13px; }
.archive-excerpt { color:#58677a; font-size:15px; }
.read-more { font-weight:700; font-size:14px; }
.taxonomy-box a { display:inline-block; background:#eef4ff; color:var(--cy-primary); border-radius:30px; padding:5px 10px; margin:3px 4px 3px 0; font-size:12px; font-weight:700; }
.nav-links { display:flex; gap:7px; flex-wrap:wrap; }
.page-numbers { display:inline-flex; align-items:center; justify-content:center; min-width:38px; height:38px; padding:0 10px; border:1px solid var(--cy-border); border-radius:8px; color:#41536b; font-weight:700; }
.page-numbers.current, .page-numbers:hover { background:var(--cy-primary); color:#fff; border-color:var(--cy-primary); }

.site-footer { color:#cdd7e4; }
.footer-main { background:#0d1b2a; }
.footer-title { color:#fff; font-size:17px; font-weight:700; margin-bottom:16px; }
.footer-widget, .footer-widget p, .footer-links { font-size:14px; color:#b9c6d6; }
.footer-widget ul, .footer-links { list-style:none; margin:0; padding:0; }
.footer-widget li, .footer-links li { margin-bottom:9px; }
.footer-widget a { color:#b9c6d6; }
.footer-widget a:hover { color:#fff; }
.footer-bottom { background:#08121d; color:#93a4b8; font-size:13px; }
.footer-bottom-menu li { display:inline-block; margin-left:14px; }
.footer-bottom-menu a { color:#aebccd; }
.error-icon { font-size:48px; color:var(--cy-primary); margin-bottom:18px; }

.btn-primary { background:var(--cy-primary); border-color:var(--cy-primary); }
.btn-primary:hover { background:var(--cy-primary-dark); border-color:var(--cy-primary-dark); }

h2.wp-block-heading {
    font-size: 23px;
    line-height: 1.3;
    margin-top: 30px;
    margin-bottom: 15px;
}

@media (min-width: 992px) {
    .navbar-nav > .dropdown:hover > .dropdown-menu { display:block; margin-top:0; }
    .dropdown-menu .dropend:hover > .dropdown-menu { display:block; }
}

@media (max-width: 991.98px) {
    .navbar { min-height:64px; }
    .navbar-nav .nav-link { padding:10px 6px; }
    .navbar-collapse { padding:12px 0 18px; }
    .dropdown-menu { box-shadow:none; border:0; padding-left:14px; }
    .dropend > .dropdown-menu { margin-left:12px; }
    .hero-section { padding:50px 0; }
    .staffing-sidebar { position:static; }
}

@media (max-width: 575.98px) {
    body { font-size:15px; }
    .content-card, .archive-item { padding:20px; }
    .hero-section h1 { font-size:38px; }
    .hero-lead { font-size:17px; }
    .trust-item { font-size:13px; }
}
