/* ITZ Consultants — modern theme layer (loads after styles.css). Header pattern modeled on referyes.com. */
:root{
  --itz-ink:#14181f; --itz-ink-2:#3b4452; --itz-muted:#5b6472; --itz-line:#e5e7eb; --itz-soft:#f6f8fb;
  --itz-brand:#14538c; --itz-brand-2:#1e6fb8; --itz-brand-ink:#0e3d68; --itz-tint:#eef4fb;
  --itz-radius:16px; --itz-font:Manrope,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}
html{scroll-padding-top:80px}
body{font-family:var(--itz-font) !important;color:var(--itz-ink-2);background:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
button,input,select,textarea{font-family:inherit}
h1,h2,h3,h4{font-family:var(--itz-font) !important;letter-spacing:-0.02em}
h1{color:var(--itz-ink) !important;font-weight:800 !important;line-height:1.08 !important}
h2,h2.section-title{color:var(--itz-ink) !important;font-weight:800 !important;line-height:1.15}
h3{font-weight:700}
p{line-height:1.65}
.section-subtitle,.hero p{color:var(--itz-muted) !important}

/* ---------- Header / navigation ---------- */
header{position:sticky !important;top:0;z-index:1000;background:rgba(255,255,255,.9) !important;-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--itz-line) !important;box-shadow:none !important}
header .nav-container{max-width:1200px;margin:0 auto;min-height:64px;padding:0 24px;display:flex;align-items:center;gap:20px;box-sizing:border-box}
header .brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex:none}
header .brand img{height:34px;width:auto}
header .brand .name{font-family:var(--itz-font);font-weight:800;font-size:18px;letter-spacing:-0.02em;color:var(--itz-ink) !important}
header .brand .tagline{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--itz-muted) !important;font-weight:600}
.itz-nav{display:none}
@media (min-width:1024px){
  header .menu-toggle,header nav.accordion-menu{display:none !important}
  .itz-nav{display:flex;align-items:center;gap:4px;flex:1;margin:0;padding:0;list-style:none}
  .itz-nav > li.itz-nav-right{margin-left:auto;display:flex;align-items:center;gap:8px}
}
.itz-nav > li{position:relative;list-style:none;margin:0}
.itz-nav-link{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 12px;border:0;border-radius:12px;background:transparent;color:rgba(20,24,31,.72);font:500 15px/1 var(--itz-font);text-decoration:none !important;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s}
.itz-nav-link:hover,.itz-nav-link[aria-expanded="true"]{background:#f3f4f6;color:var(--itz-ink)}
.itz-nav-link.is-current{background:var(--itz-tint);color:var(--itz-brand)}
.itz-nav-link:focus-visible{outline:2px solid var(--itz-brand-2);outline-offset:2px}
.itz-caret{width:7px;height:7px;border-right:1.8px solid currentColor;border-bottom:1.8px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.7;transition:transform .15s}
.itz-nav-link[aria-expanded="true"] .itz-caret{transform:rotate(-135deg) translateY(-1px)}
.itz-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:300px;padding:8px;margin:0;list-style:none;background:#fff;border:1px solid var(--itz-line);border-radius:14px;box-shadow:0 18px 40px rgba(15,23,42,.12),0 2px 6px rgba(15,23,42,.05);opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .15s,transform .15s,visibility .15s}
.itz-menu.is-open{opacity:1;visibility:visible;transform:none}
.itz-menu::before{content:"";position:absolute;left:0;right:0;top:-10px;height:10px}
.itz-menu a{display:block;padding:10px 12px;border-radius:10px;color:var(--itz-ink) !important;font:600 14.5px/1.35 var(--itz-font);text-decoration:none !important}
.itz-menu a:hover,.itz-menu a:focus-visible{background:var(--itz-soft);color:var(--itz-brand) !important;outline:none}
.itz-menu a.is-current{background:var(--itz-tint);color:var(--itz-brand) !important}
.itz-menu li.itz-menu-all{border-top:1px solid var(--itz-line);margin-top:6px;padding-top:6px}
.itz-menu li.itz-menu-all a{color:var(--itz-brand) !important;font-weight:700}
.itz-nav-cta{display:inline-flex;align-items:center;height:40px;padding:0 16px;border-radius:10px;background:var(--itz-brand);color:#fff !important;font:700 14.5px/1 var(--itz-font);text-decoration:none !important;transition:background .15s}
.itz-nav-cta:hover{background:var(--itz-brand-ink)}
/* Mobile menu (existing hamburger + list), restyled */
@media (max-width:1023px){
  header .menu-toggle{border:1px solid var(--itz-line) !important;background:#fff !important;color:var(--itz-ink) !important;border-radius:10px !important;margin-left:auto}
  header .menu-toggle .icon span{background:var(--itz-ink) !important}
  header nav.accordion-menu{background:#fff !important;border-top:1px solid var(--itz-line);box-shadow:0 18px 30px rgba(15,23,42,.08) !important}
  header nav.accordion-menu a,header nav.accordion-menu button{font-family:var(--itz-font) !important;color:var(--itz-ink) !important}
  header nav.accordion-menu .accordion-link,header nav.accordion-menu .accordion-trigger{font-weight:700 !important;font-size:16px !important}
  header nav.accordion-menu .accordion-content a{font-weight:500 !important;color:var(--itz-ink-2) !important}
  header nav.accordion-menu .accordion-item{border-color:var(--itz-line) !important}
}

/* ---------- Page sections ---------- */
.hero{background:radial-gradient(1100px 420px at 50% -10%,#dbeafe 0%,rgba(219,234,254,0) 70%),linear-gradient(#f8fbff,#fff) !important;border-bottom:1px solid var(--itz-line)}
.hero h1{font-size:clamp(2.2rem,4.6vw,3.5rem) !important}
.hero p{font-size:clamp(1.02rem,1.4vw,1.18rem) !important}
/* Tight vertical rhythm */
section.content{padding-top:48px !important;padding-bottom:48px !important}
section.content + section.content,hr + section.content{padding-top:8px !important}
/* A section that just continues the previous one (no heading of its own) sits right under it */
section.content + section.content:not(:has(> h2)){padding-top:0 !important;margin-top:-32px !important}
section.content > hr,body > hr{margin:0 !important;border:0;border-top:1px solid var(--itz-line)}
.hero{padding-top:64px !important;padding-bottom:56px !important}
h2.section-title{margin-top:0 !important;margin-bottom:10px !important}
.section-subtitle{margin-bottom:28px !important}
.content .feature-block,.content .p0-pillar{margin-bottom:16px !important}
.content .feature-block:last-child{margin-bottom:0 !important}
.itz-st{margin:4px 0 !important}
.cta-banner{margin-top:24px !important;margin-bottom:40px !important}
footer{margin-top:32px !important}
@media (max-width:700px){section.content{padding-top:36px !important;padding-bottom:36px !important}.hero{padding-top:44px !important;padding-bottom:40px !important}}
h2.section-title{font-size:clamp(1.75rem,3vw,2.35rem) !important}

/* Buttons */
.btn{border-radius:10px !important;font-family:var(--itz-font) !important;font-weight:700 !important;font-size:15px !important;padding:12px 20px !important;background:var(--itz-brand) !important;color:#fff !important;border:1px solid var(--itz-brand) !important;box-shadow:0 1px 2px rgba(15,23,42,.06) !important;transition:background .15s,border-color .15s,transform .15s}
.btn:hover{background:var(--itz-brand-ink) !important;border-color:var(--itz-brand-ink) !important}
.btn.secondary{background:#fff !important;color:var(--itz-ink) !important;border:1px solid var(--itz-line) !important}
.btn.secondary:hover{background:var(--itz-soft) !important;border-color:#d1d5db !important}

/* Cards */
.content .feature-block:not(.itz-st-src),.content .p0-pillar:not(.itz-st-src),.service-card,.card{border:1px solid var(--itz-line) !important;border-radius:var(--itz-radius) !important;box-shadow:0 1px 2px rgba(15,23,42,.04) !important;background:#fff}
a.service-card:hover,a.card:hover{border-color:#cbd5e1 !important;box-shadow:0 10px 30px rgba(15,23,42,.08) !important}

/* Option B side tabs, aligned with the theme */
.itz-st-tab{font-family:var(--itz-font)}
.itz-st-panel{border-color:var(--itz-line);border-radius:var(--itz-radius);box-shadow:0 1px 2px rgba(15,23,42,.04),0 12px 32px rgba(15,23,42,.06)}
.itz-st .itz-st-title{color:var(--itz-ink);letter-spacing:-0.02em}
.itz-st-body ul li{background:var(--itz-soft)}

/* Call-to-action band and footer */
.cta-banner{background:linear-gradient(135deg,#0f2f52 0%,#14538c 100%) !important;border-radius:20px !important;box-shadow:none !important}
.cta-banner h2{color:#fff !important}
.cta-banner .btn{background:#fff !important;color:var(--itz-brand) !important;border-color:#fff !important}
.cta-banner .btn:hover{background:var(--itz-tint) !important}
footer{background:#0b1626 !important;color:#aab6c5 !important}
footer h5,footer h4{color:#fff !important;font-family:var(--itz-font) !important;letter-spacing:.02em}
footer a{color:#cbd5e1 !important}
footer a:hover{color:#fff !important}
