/*
Theme Name: IQonic Consulting
Theme URI: https://iqonic.co.za
Author: IQonic Consulting
Description: One-page corporate website for IQonic Consulting — IT governance, fractional IT leadership, Microsoft 365 & Azure governance, cybersecurity readiness and MSP oversight. Upload, activate, done: the homepage shows automatically.
Version: 1.0.0
Requires at least: 5.8
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: iqonic-consulting
*/

html { scroll-behavior: smooth; }
body { margin: 0; font-family: 'DM Sans', sans-serif; background: #0A1628; }
/*
 * IQonic Consulting — Custom Page Styles
 * Add to: Appearance → Customise → Additional CSS
 * OR enqueue via your child theme's functions.php
 * All classes prefixed "iq-" to avoid theme conflicts.
 */



/* ── DESIGN TOKENS ─────────────────────────── */
:root {
  --iq-navy:     #042C53;
  --iq-blue:     #185FA5;
  --iq-electric: #378ADD;
  --iq-sky:      #B5D4F4;
  --iq-white:    #FFFFFF;
  --iq-off:      #F4F7FB;
  --iq-mid:      #888780;
  --iq-dark:     #0A1628;
  --iq-gold:     #EF9F27;
  --iq-green:    #2E7D32;
  --iq-red:      #B71C1C;
  --iq-font-head:'Syne', sans-serif;
  --iq-font-body:'DM Sans', sans-serif;
}

/* ── TOP BAR + HEADER ──────────────────────── */
.iq-topbar { background: #05101F; border-bottom: 1px solid rgba(255,255,255,.06); padding: .5rem 4rem; font-family: var(--iq-font-body); }
.iq-topbar-inner { display: flex; justify-content: space-between; align-items: center; gap: 1rem; flex-wrap: wrap; max-width: 1400px; margin: 0 auto; }
.iq-topbar-msg { font-size: .76rem; font-weight: 500; letter-spacing: .06em; color: var(--iq-sky); }
.iq-topbar-contact { display: flex; gap: 1.5rem; flex-wrap: wrap; }
.iq-topbar-contact a { font-size: .76rem; color: rgba(255,255,255,.75); text-decoration: none; transition: color .2s; }
.iq-topbar-contact a:hover { color: var(--iq-electric); }
.iq-header { background: var(--iq-dark); border-bottom: 1px solid rgba(255,255,255,.08); padding: .9rem 4rem; position: sticky; top: 0; z-index: 100; font-family: var(--iq-font-body); }
.iq-header-inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem; max-width: 1400px; margin: 0 auto; }
.iq-logo { display: block; flex-shrink: 0; line-height: 0; }
.iq-logo img { height: 60px; width: auto; display: block; }
.iq-nav { display: flex; gap: 1.8rem; flex-wrap: wrap; justify-content: center; }
.iq-nav a { font-size: .85rem; font-weight: 500; color: rgba(255,255,255,.7); text-decoration: none; transition: color .2s; }
.iq-nav a:hover { color: var(--iq-electric); }
[id^="iq-"] { scroll-margin-top: 110px; }
.iq-header-cta { padding: .6rem 1.4rem; font-size: .85rem; white-space: nowrap; }

/* ── HERO ──────────────────────────────────── */
.iq-hero {
  min-height: 100vh; background: var(--iq-dark);
  display: flex; align-items: center;
  position: relative; overflow: hidden; padding: 4rem 4rem;
}
.iq-hero-grid {
  position: absolute; inset: 0;
  background-image:
    linear-gradient(rgba(55,138,221,.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(55,138,221,.07) 1px, transparent 1px);
  background-size: 48px 48px;
}
.iq-hero-glow  { position: absolute; top: -200px; right: -100px; width: 700px; height: 700px; background: radial-gradient(circle, rgba(55,138,221,.18) 0%, transparent 70%); pointer-events: none; }
.iq-hero-glow2 { position: absolute; bottom: -300px; left: -100px; width: 600px; height: 600px; background: radial-gradient(circle, rgba(24,95,165,.15) 0%, transparent 70%); pointer-events: none; }
.iq-hero-content { position: relative; z-index: 2; max-width: 620px; }
.iq-hero-eyebrow {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(55,138,221,.12); border: 1px solid rgba(55,138,221,.3);
  border-radius: 100px; padding: .35rem 1rem;
  font-size: .78rem; font-weight: 500; color: var(--iq-electric);
  letter-spacing: .08em; margin-bottom: 2rem;
}
.iq-hero-eyebrow span { width: 6px; height: 6px; border-radius: 50%; background: var(--iq-electric); animation: iq-pulse 2s infinite; display: inline-block; }
@keyframes iq-pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.4;transform:scale(.8)} }
.iq-hero h1 { font-family: var(--iq-font-head); font-size: clamp(2.6rem,4.5vw,4rem); font-weight: 800; line-height: 1.1; color: var(--iq-white); margin-bottom: 1.5rem; }
.iq-hero h1 em { font-style: normal; color: var(--iq-electric); }
.iq-hero > .iq-hero-content > p { font-size: 1rem; font-weight: 300; color: rgba(255,255,255,.65); line-height: 1.8; max-width: 520px; margin-bottom: 2.5rem; }
.iq-hero-actions { display: flex; gap: 1rem; flex-wrap: wrap; }
.iq-btn-primary { background: var(--iq-electric); color: var(--iq-white); padding: .85rem 2rem; border-radius: 4px; text-decoration: none; font-weight: 500; font-size: .95rem; transition: all .2s; border: none; cursor: pointer; display: inline-block; font-family: var(--iq-font-body); }
.iq-btn-primary:hover { background: var(--iq-blue); transform: translateY(-1px); color: #fff; }
.iq-btn-ghost { background: transparent; color: var(--iq-white); padding: .85rem 2rem; border-radius: 4px; text-decoration: none; font-weight: 500; font-size: .95rem; border: 1px solid rgba(255,255,255,.25); transition: all .2s; display: inline-block; }
.iq-btn-ghost:hover { border-color: var(--iq-electric); color: var(--iq-electric); }
.iq-hero-badges { position: absolute; right: 4rem; top: 50%; transform: translateY(-50%); display: flex; flex-direction: column; gap: 1rem; z-index: 2; }
.iq-badge { background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.1); border-radius: 12px; padding: 1rem 1.3rem; display: flex; align-items: center; gap: 12px; backdrop-filter: blur(8px); transition: border-color .3s; }
.iq-badge:hover { border-color: rgba(55,138,221,.4); }
.iq-badge-icon { width: 38px; height: 38px; border-radius: 8px; display: flex; align-items: center; justify-content: center; font-size: 1.2rem; flex-shrink: 0; }
.iq-badge-text { font-size: .8rem; font-weight: 500; color: rgba(255,255,255,.85); line-height: 1.3; }
.iq-badge-sub  { font-size: .72rem; color: rgba(255,255,255,.4); font-weight: 300; }

/* ── VALUE PROPOSITION STRIP ───────────────── */
.iq-vp-strip { background: var(--iq-electric); padding: 2.2rem 4rem; }
.iq-vp-inner { max-width: 900px; margin: 0 auto; text-align: center; }
.iq-vp-quote { font-family: var(--iq-font-head); font-size: clamp(1rem,2vw,1.25rem); font-weight: 600; color: var(--iq-white); line-height: 1.6; font-style: italic; }

/* ── STATS ─────────────────────────────────── */
.iq-stats { background: var(--iq-navy); padding: 2.5rem 4rem; display: grid; grid-template-columns: repeat(4,1fr); gap: 2rem; }
.iq-stat { text-align: center; border-right: 1px solid rgba(255,255,255,.08); }
.iq-stat:last-child { border: none; }
.iq-stat-num { font-family: var(--iq-font-head); font-size: 2.4rem; font-weight: 800; color: var(--iq-electric); }
.iq-stat-label { font-size: .8rem; color: rgba(255,255,255,.5); margin-top: .3rem; letter-spacing: .04em; }

/* ── DIFFERENTIATOR ────────────────────────── */
.iq-diff-section { background: var(--iq-off); padding: 5rem 4rem; }
.iq-diff-inner { display: grid; grid-template-columns: 1fr 1.3fr; gap: 5rem; align-items: start; }
.iq-diff-table { border-radius: 12px; overflow: hidden; border: 1px solid rgba(4,44,83,.1); }
.iq-diff-head { display: grid; grid-template-columns: 1fr 1fr; background: var(--iq-navy); padding: .8rem 1.2rem; font-size: .75rem; font-weight: 700; color: rgba(255,255,255,.6); letter-spacing: .08em; text-transform: uppercase; }
.iq-diff-row { display: grid; grid-template-columns: 1fr 1fr; border-bottom: 1px solid rgba(4,44,83,.07); }
.iq-diff-row:last-child { border: none; }
.iq-diff-bad, .iq-diff-good { padding: .85rem 1.2rem; font-size: .85rem; line-height: 1.5; }
.iq-diff-bad { color: var(--iq-mid); background: var(--iq-white); border-right: 1px solid rgba(4,44,83,.07); }
.iq-diff-good { color: var(--iq-navy); background: #F0F7FF; font-weight: 500; }

/* ── SHARED SECTION HELPERS ────────────────── */
.iq-services, .iq-azure-wrap, .iq-industries-section,
.iq-why-section, .iq-itil-section, .iq-contact-section { padding: 5rem 4rem; }
.iq-section-label { font-size: .75rem; font-weight: 600; letter-spacing: .15em; color: var(--iq-electric); text-transform: uppercase; margin-bottom: .75rem; }
.iq-section-title { font-family: var(--iq-font-head); font-size: clamp(1.8rem,3vw,2.5rem); font-weight: 700; color: var(--iq-navy); line-height: 1.2; margin-bottom: 1rem; }
.iq-section-sub { font-size: 1rem; color: var(--iq-mid); line-height: 1.7; max-width: 560px; }
.iq-section-header { margin-bottom: 3.5rem; }

/* ── SERVICES ──────────────────────────────── */
.iq-services { background: var(--iq-white); }
.iq-services-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1.5rem; }
.iq-service-card { background: var(--iq-off); border-radius: 12px; padding: 2rem; border: 1px solid rgba(4,44,83,.08); transition: all .25s; position: relative; overflow: hidden; }
.iq-service-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: var(--iq-electric); transform: scaleX(0); transform-origin: left; transition: transform .3s; }
.iq-service-card:hover { box-shadow: 0 12px 40px rgba(4,44,83,.1); transform: translateY(-3px); }
.iq-service-card:hover::before { transform: scaleX(1); }
.iq-service-card.iq-featured { background: var(--iq-navy); border-color: var(--iq-electric); }
.iq-service-card.iq-featured h3 { color: var(--iq-white); }
.iq-service-card.iq-featured p { color: rgba(255,255,255,.6); }
.iq-featured-badge { position: absolute; top: 1.2rem; right: 1.2rem; background: var(--iq-electric); color: white; font-size: .68rem; font-weight: 700; padding: .25rem .7rem; border-radius: 100px; letter-spacing: .06em; text-transform: uppercase; }
.iq-pillar-num { font-size: .7rem; font-weight: 700; letter-spacing: .12em; color: var(--iq-electric); text-transform: uppercase; margin-bottom: .5rem; }
.iq-service-card.iq-featured .iq-pillar-num { color: var(--iq-sky); }
.iq-service-icon { width: 52px; height: 52px; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-size: 1.5rem; margin-bottom: 1.2rem; }
.iq-service-card h3 { font-family: var(--iq-font-head); font-size: 1.1rem; font-weight: 700; color: var(--iq-navy); margin-bottom: .75rem; }
.iq-service-card p  { font-size: .88rem; color: var(--iq-mid); line-height: 1.7; margin-bottom: 1rem; }
.iq-service-tags { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .5rem; }
.iq-tag { font-size: .7rem; font-weight: 500; padding: .2rem .6rem; border-radius: 100px; background: rgba(55,138,221,.1); color: var(--iq-blue); border: 1px solid rgba(24,95,165,.15); }
.iq-service-card.iq-featured .iq-tag { background: rgba(255,255,255,.08); color: var(--iq-sky); border-color: rgba(181,212,244,.2); }

/* vCIO Tiers */
.iq-vcio-tiers { display: flex; flex-direction: column; gap: .6rem; margin-top: 1rem; }
.iq-vcio-tier { display: grid; grid-template-columns: 1fr; gap: .2rem; align-items: center; background: rgba(255,255,255,.05); border-radius: 8px; padding: .6rem .9rem; border: 1px solid rgba(255,255,255,.08); }
.iq-vcio-tier.iq-tier-mid { border-color: rgba(55,138,221,.4); background: rgba(55,138,221,.1); }
.iq-tier-name  { font-size: .78rem; font-weight: 600; color: var(--iq-white); }
.iq-tier-desc  { font-size: .75rem; color: rgba(255,255,255,.5); }

/* Assessment card */
.iq-assessment-card { border: 2px solid rgba(55,138,221,.25); background: var(--iq-white); }
.iq-assessment-note { background: rgba(55,138,221,.06); border-radius: 8px; padding: .8rem 1rem; font-size: .82rem; color: var(--iq-navy); line-height: 1.6; margin-top: 1rem; }

/* ── AZURE / MICROSOFT ─────────────────────── */
.iq-azure-wrap { background: var(--iq-off); }
.iq-azure-section { display: grid; grid-template-columns: 1fr 1fr; gap: 5rem; align-items: center; }
.iq-azure-visual { background: var(--iq-navy); border-radius: 16px; padding: 2.5rem; position: relative; overflow: hidden; }
.iq-azure-visual::after { content: ''; position: absolute; top: -60px; right: -60px; width: 200px; height: 200px; background: radial-gradient(circle,rgba(55,138,221,.25),transparent 70%); }
.iq-az-steps { display: flex; flex-direction: column; }
.iq-az-step { display: flex; gap: 1.2rem; padding: 1rem 0; border-bottom: 1px solid rgba(255,255,255,.07); }
.iq-az-step:last-child { border: none; }
.iq-az-num { width: 28px; height: 28px; border-radius: 50%; background: rgba(55,138,221,.25); color: var(--iq-sky); font-size: .85rem; font-weight: 700; display: flex; align-items: center; justify-content: center; flex-shrink: 0; margin-top: 2px; }
.iq-az-step-content h4 { font-family: var(--iq-font-head); font-size: .9rem; font-weight: 600; color: var(--iq-white); margin-bottom: .3rem; }
.iq-az-step-content p  { font-size: .8rem; color: rgba(255,255,255,.5); line-height: 1.5; }
.iq-benefit { display: flex; align-items: flex-start; gap: .75rem; margin-bottom: 1.2rem; }
.iq-benefit-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--iq-electric); margin-top: .5rem; flex-shrink: 0; }
.iq-benefit p  { font-size: .9rem; color: var(--iq-mid); line-height: 1.6; }
.iq-benefit strong { color: var(--iq-navy); }
.iq-benefit em { color: var(--iq-electric); font-style: normal; font-weight: 500; }

/* ── ITIL ──────────────────────────────────── */
.iq-itil-section { background: linear-gradient(135deg, var(--iq-navy) 0%, #0D2140 100%); color: white; padding: 5rem 4rem; }
.iq-itil-grid { display: grid; grid-template-columns: repeat(5,1fr); gap: 1px; background: rgba(255,255,255,.06); border-radius: 12px; overflow: hidden; margin-top: 2rem; }
.iq-itil-level { background: #0A1A30; padding: 1.5rem 1rem; text-align: center; transition: background .2s; cursor: default; }
.iq-itil-level:hover { background: #0E2040; }
.iq-itil-level-num  { font-family: var(--iq-font-head); font-size: 2rem; font-weight: 800; color: var(--iq-electric); margin-bottom: .4rem; }
.iq-itil-level-name { font-size: .8rem; font-weight: 600; color: rgba(255,255,255,.9); margin-bottom: .5rem; letter-spacing: .03em; }
.iq-itil-level-desc { font-size: .7rem; color: rgba(255,255,255,.4); line-height: 1.5; }
.iq-itil-level.iq-active { background: rgba(55,138,221,.12); border-top: 2px solid var(--iq-electric); }
.iq-itil-level.iq-active .iq-itil-level-name { color: var(--iq-electric); }
.iq-itil-practices { display: grid; grid-template-columns: repeat(3,1fr); gap: 1rem; margin-top: 2.5rem; }
.iq-practice { background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); border-radius: 8px; padding: 1rem 1.2rem; }
.iq-practice h4 { font-size: .85rem; font-weight: 600; color: rgba(255,255,255,.9); margin-bottom: .3rem; }
.iq-practice p  { font-size: .78rem; color: rgba(255,255,255,.4); line-height: 1.5; }

/* ── INDUSTRIES ────────────────────────────── */
.iq-industries-section { background: var(--iq-white); }
.iq-industry-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1.5rem; }
.iq-industry-card { background: var(--iq-off); border-radius: 12px; padding: 1.8rem; border: 1px solid rgba(4,44,83,.08); transition: all .25s; }
.iq-industry-card:hover { transform: translateY(-3px); box-shadow: 0 10px 32px rgba(4,44,83,.08); border-color: rgba(55,138,221,.2); }
.iq-ind-icon { font-size: 2rem; margin-bottom: 1rem; }
.iq-industry-card h4 { font-family: var(--iq-font-head); font-size: 1rem; font-weight: 700; color: var(--iq-navy); margin-bottom: .6rem; }
.iq-industry-card p  { font-size: .85rem; color: var(--iq-mid); line-height: 1.65; margin-bottom: 1rem; }
.iq-ind-entry { font-size: .75rem; font-weight: 600; color: var(--iq-electric); letter-spacing: .04em; }
.iq-ind-entry::before { content: '→ '; }

/* ── WHY US ────────────────────────────────── */
.iq-why-section { background: var(--iq-off); padding: 5rem 4rem; text-align: center; }
.iq-why-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 2rem; margin-top: 0; }
.iq-why-icon { width: 60px; height: 60px; border-radius: 50%; background: var(--iq-white); display: flex; align-items: center; justify-content: center; font-size: 1.5rem; margin: 0 auto 1rem; box-shadow: 0 4px 16px rgba(4,44,83,.08); }
.iq-why-item h4 { font-family: var(--iq-font-head); font-size: 1rem; font-weight: 700; color: var(--iq-navy); margin-bottom: .5rem; }
.iq-why-item p  { font-size: .85rem; color: var(--iq-mid); line-height: 1.65; }

/* ── CTA ───────────────────────────────────── */
.iq-cta-section { background: var(--iq-navy); padding: 5rem 4rem; text-align: center; position: relative; overflow: hidden; }
.iq-cta-section::before { content: ''; position: absolute; top: -100px; left: 50%; transform: translateX(-50%); width: 600px; height: 400px; background: radial-gradient(circle, rgba(55,138,221,.15) 0%, transparent 70%); }
.iq-cta-section h2 { font-family: var(--iq-font-head); font-size: clamp(1.8rem,3vw,2.4rem); font-weight: 800; color: var(--iq-white); margin-bottom: 1rem; position: relative; }
.iq-cta-section p  { font-size: 1rem; color: rgba(255,255,255,.65); margin-bottom: 2rem; max-width: 540px; margin-left: auto; margin-right: auto; line-height: 1.75; position: relative; }
.iq-btn-white { background: var(--iq-electric); color: var(--iq-white); padding: .9rem 2.2rem; border-radius: 4px; text-decoration: none; font-weight: 600; font-size: .95rem; transition: all .2s; display: inline-block; position: relative; }
.iq-btn-white:hover { background: var(--iq-blue); transform: translateY(-1px); color: #fff; }

/* ── CONTACT ───────────────────────────────── */
.iq-contact-section { background: var(--iq-dark); display: grid; grid-template-columns: 1fr 1.4fr; gap: 5rem; align-items: start; }
.iq-contact-info h2 { font-family: var(--iq-font-head); font-size: 2rem; font-weight: 700; color: var(--iq-white); margin-bottom: 1rem; }
.iq-contact-info > p { font-size: .95rem; color: rgba(255,255,255,.5); line-height: 1.8; margin-bottom: 2rem; }
.iq-contact-detail { display: flex; align-items: center; gap: .8rem; margin-bottom: .9rem; font-size: .9rem; color: rgba(255,255,255,.7); }
.iq-contact-detail span:first-child { color: var(--iq-electric); font-size: 1.1rem; width: 20px; }
.iq-contact-detail a, .iq-form-alt a, .iq-cta-contact a { color: var(--iq-sky); text-decoration: none; }
.iq-contact-detail a:hover, .iq-form-alt a:hover, .iq-cta-contact a:hover { color: var(--iq-electric); }
.iq-form-alt { margin-top: 1rem; font-size: .8rem; color: rgba(255,255,255,.5); text-align: center; }
.iq-cta-contact { margin-top: 1.5rem; font-size: .9rem; color: rgba(255,255,255,.6); position: relative; }
.iq-contact-note { margin-top: 2rem; padding: 1.2rem; background: rgba(55,138,221,.08); border: 1px solid rgba(55,138,221,.2); border-radius: 8px; font-size: .85rem; color: rgba(255,255,255,.6); line-height: 1.6; }
.iq-contact-note strong { color: var(--iq-sky); }
.iq-contact-form-wrap { background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); border-radius: 12px; padding: 2rem; }
.iq-form-title { font-family: var(--iq-font-head); font-size: 1rem; font-weight: 700; color: white; margin-bottom: 1.5rem; }
.iq-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; margin-bottom: 0; }
.iq-form-group { margin-bottom: 1rem; }
.iq-form-group input, .iq-form-group select, .iq-form-group textarea { box-sizing: border-box; }
.iq-form-group label { display: block; font-size: .78rem; font-weight: 500; color: rgba(255,255,255,.5); margin-bottom: .4rem; letter-spacing: .04em; font-family: var(--iq-font-body); }
.iq-form-group input,
.iq-form-group select,
.iq-form-group textarea { width: 100%; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.1); border-radius: 6px; padding: .7rem 1rem; color: var(--iq-white); font-family: var(--iq-font-body); font-size: .9rem; outline: none; transition: border-color .2s; }
.iq-form-group input:focus,
.iq-form-group select:focus,
.iq-form-group textarea:focus { border-color: var(--iq-electric); }
.iq-form-group select option { background: var(--iq-dark); color: white; }
.iq-form-group textarea { resize: vertical; min-height: 100px; }
.iq-form-submit { background: var(--iq-electric); color: var(--iq-white); border: none; padding: .9rem 2rem; border-radius: 6px; font-family: var(--iq-font-body); font-size: .95rem; font-weight: 500; cursor: pointer; width: 100%; transition: background .2s; margin-top: .5rem; }
.iq-form-submit:hover { background: var(--iq-blue); }

/* ── CF7 / WPFORMS overrides ───────────────── */
.iq-contact-form-wrap .wpcf7-form input[type="text"],
.iq-contact-form-wrap .wpcf7-form input[type="email"],
.iq-contact-form-wrap .wpcf7-form select,
.iq-contact-form-wrap .wpcf7-form textarea {
  width: 100%; background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.1) !important; border-radius: 6px;
  padding: .7rem 1rem; color: var(--iq-white) !important; font-size: .9rem; margin-bottom: 1rem;
}
.iq-contact-form-wrap .wpcf7-form input[type="submit"],
.iq-contact-form-wrap .wpcf7-submit {
  background: var(--iq-electric) !important; color: #fff !important;
  border: none !important; padding: .85rem 2rem; border-radius: 6px;
  font-size: .95rem; font-weight: 500; cursor: pointer; width: 100%;
}

/* ── RESPONSIVE ────────────────────────────── */
@media (max-width: 1100px) {
  .iq-topbar, .iq-header { padding-left: 2.5rem; padding-right: 2.5rem; }
  .iq-nav { display: none; }
  .iq-hero { padding: 4rem 2.5rem; flex-direction: column; align-items: flex-start; justify-content: center; }
  .iq-hero-badges { position: static; transform: none; flex-direction: row; flex-wrap: wrap; margin-top: 2.5rem; z-index: 2; }
  .iq-diff-inner, .iq-azure-section { grid-template-columns: 1fr; gap: 2.5rem; }
  .iq-services-grid { grid-template-columns: repeat(2,1fr); }
  .iq-itil-grid { grid-template-columns: repeat(3,1fr); }
  .iq-itil-practices, .iq-industry-grid { grid-template-columns: repeat(2,1fr); }
  .iq-why-grid { grid-template-columns: repeat(2,1fr); }
  .iq-stats { grid-template-columns: repeat(2,1fr); padding: 2.5rem; }
  .iq-contact-section { grid-template-columns: 1fr; gap: 2.5rem; }
}
@media (max-width: 640px) {
  .iq-hero, .iq-diff-section, .iq-services, .iq-azure-wrap,
  .iq-itil-section, .iq-industries-section, .iq-why-section,
  .iq-cta-section, .iq-contact-section { padding: 3rem 1.5rem; }
  .iq-vp-strip { padding: 1.5rem; }
  .iq-stats { padding: 2rem 1.5rem; grid-template-columns: repeat(2,1fr); }
  .iq-services-grid, .iq-itil-practices, .iq-itil-grid,
  .iq-industry-grid, .iq-why-grid { grid-template-columns: 1fr; }
  .iq-form-row { grid-template-columns: 1fr; }
  .iq-hero-badges { gap: .75rem; }
  .iq-topbar { padding: .5rem 1.5rem; }
  .iq-topbar-msg { display: none; }
  .iq-topbar-contact { width: 100%; justify-content: space-between; gap: .5rem; }
  .iq-header { padding: .75rem 1.5rem; }
  .iq-logo img { height: 40px; }
  .iq-header-cta { padding: .5rem 1rem; font-size: .8rem; }
}

/* ── EMAIL CONTACT CARD (replaces form) ───── */
.iq-email-card { display: flex; flex-direction: column; justify-content: center; }
.iq-email-lead { font-family: var(--iq-font-body); font-size: .95rem; line-height: 1.7; color: rgba(255,255,255,.65); margin: 0 0 1.75rem; }
.iq-email-btn { display: block; box-sizing: border-box; text-align: center; text-decoration: none; margin-top: 0; }

/* ── FOOTER ───────────────────────────────── */
.iq-footer { background: #05101F; border-top: 1px solid rgba(255,255,255,.08); padding: 1.5rem 4rem; font-family: var(--iq-font-body); }
.iq-footer-inner { display: flex; justify-content: space-between; align-items: center; gap: 1rem; flex-wrap: wrap; max-width: 1400px; margin: 0 auto; font-size: .8rem; color: rgba(255,255,255,.5); }
.iq-footer-inner span:last-child { display: flex; gap: 1.5rem; flex-wrap: wrap; }
.iq-footer a { color: var(--iq-sky); text-decoration: none; }
.iq-footer a:hover { color: var(--iq-electric); }
@media (max-width: 680px) { .iq-footer { padding: 1.25rem 1.5rem; } }

/* ── WP ADMIN BAR (logged-in editors) ─────── */
.admin-bar .iq-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .iq-header { top: 46px; } }
