/*
Theme Name: OperationHQ Advanced
Theme URI: https://operationhq.tech/
Author: JSR Vertex
Author URI: https://jsrvertex.com/
Description: Advanced app-style WordPress theme for OperationHQ, converted from the original website with shared navigation, clean URLs, responsive layouts and dark/light mode.
Version: 2.9.0
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: operationhq
*/

:root { color-scheme: light dark; }
html[data-theme="light"] { color-scheme:light; --ohq-header-bg:rgba(248,247,255,.92); --ohq-header-solid:rgba(248,247,255,.985); --ohq-header-text:#16133a; --ohq-header-muted:rgba(22,19,58,.62); --ohq-header-border:rgba(83,74,183,.14); }
html[data-theme="dark"] { color-scheme:dark; --ohq-header-bg:rgba(10,8,18,.88); --ohq-header-solid:rgba(10,8,18,.975); --ohq-header-text:#f4f2ff; --ohq-header-muted:rgba(240,238,255,.68); --ohq-header-border:rgba(127,119,221,.24); }
html { scroll-padding-top: 88px; }
body.admin-bar #main-nav { top: 32px; }
body { margin: 0; }
html body,html body *,html body *::before,html body *::after { font-family:"Inter",sans-serif!important; }
a, button { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid #7f77dd; outline-offset: 3px; }
img { max-width: 100%; height: auto; }
.screen-reader-text { position:absolute!important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.ohq-skip-link:focus { position:fixed!important; z-index:9999; top:12px; left:12px; width:auto; height:auto; padding:10px 14px; margin:0; clip:auto; border-radius:8px; color:#fff; background:#534ab7; }
.ohq-page-shell { min-height:70vh; color:var(--text); background-color:var(--bg); background-image:linear-gradient(var(--ohq-grid-line,rgba(83,74,183,.07)) 1px,transparent 1px),linear-gradient(90deg,var(--ohq-grid-line,rgba(83,74,183,.07)) 1px,transparent 1px); background-size:48px 48px; background-position:-1px -1px; }
[data-theme="light"] .ohq-page-shell { --ohq-grid-line:rgba(83,74,183,.075); --p1:#534ab7; --p2:#6b63cc; --p3:#534ab7; --p4:#eeedfe; --t1:#1d9e75; --t2:#1d9e75; --green:#15966d; --blue:#217ed5; --violet:#6747d7; --bg:#f8f7ff; --bg2:#fff; --bg3:#f0eeff; --panel:#fff; --panel2:#f2f0fb; --soft:#f2f0fb; --text:#16133a; --text2:#26215c; --muted:rgba(22,19,58,.62); --line:rgba(83,74,183,.15); --border:rgba(83,74,183,.15); --border2:rgba(83,74,183,.3); --card:rgba(83,74,183,.045); --card2:rgba(83,74,183,.07); --shadow:rgba(31,26,80,.09); --nav-bg:var(--ohq-header-bg); }
[data-theme="dark"] .ohq-page-shell { --ohq-grid-line:rgba(145,137,237,.075); --p1:#6f66d4; --p2:#9189ed; --p3:#b8b2f4; --p4:#282344; --t1:#3fbf96; --t2:#6bd3b1; --green:#5dcaa5; --blue:#62a9ee; --violet:#a89ff2; --bg:#090812; --bg2:#100e1d; --bg3:#17142a; --panel:#100e1d; --panel2:#17142a; --soft:#1b1730; --text:#f4f2ff; --text2:#d9d5f4; --muted:rgba(240,238,255,.64); --line:rgba(145,137,237,.2); --border:rgba(145,137,237,.2); --border2:rgba(145,137,237,.36); --card:rgba(255,255,255,.035); --card2:rgba(255,255,255,.065); --shadow:rgba(0,0,0,.3); --nav-bg:var(--ohq-header-bg); }

/* One authoritative header appearance across every legacy page. */
#main-nav { color:var(--ohq-header-text)!important; background:var(--ohq-header-bg)!important; border-color:var(--ohq-header-border)!important; transition:background .25s,border-color .25s,box-shadow .25s!important; }
#main-nav.is-scrolled { background:var(--ohq-header-solid)!important; box-shadow:0 10px 34px rgba(20,16,65,.08); }
#main-nav .nav-logo-text,#main-nav .nav-links>a,#main-nav .nav-menu-trigger,#main-nav .toggle-label,#main-nav .btn-ghost { color:var(--ohq-header-text)!important; }
#main-nav .nav-links>a,#main-nav .nav-menu-trigger { opacity:.68; }
#main-nav .nav-links>a:hover,#main-nav .nav-links>a.active,#main-nav .nav-menu-trigger:hover { opacity:1; }
#main-nav .theme-toggle,#main-nav .btn-ghost { border-color:var(--ohq-header-border)!important; background:rgba(127,119,221,.07)!important; }
#mobile-menu-panel { color:var(--ohq-header-text); background:var(--ohq-header-solid)!important; }
.ohq-admin-edit { position:fixed; right:18px; bottom:18px; z-index:190; padding:9px 14px; border-radius:999px; background:#16133a; color:#fff!important; text-decoration:none; font:600 12px/1.2 Inter,sans-serif; box-shadow:0 10px 30px rgba(0,0,0,.22); }

/* WordPress-wide quality fixes for the imported static layouts. */
.ohq-page-shell { position:relative; isolation:isolate; }
.ohq-page-shell section { scroll-margin-top:88px; }
.ohq-page-shell iframe { max-width:100%; }
.ohq-page-shell a[target="_blank"] { touch-action:manipulation; }
.ohq-page-shell .btn-primary,
.ohq-page-shell .btn-ghost { min-height:44px; }
.ohq-page-shell p,
.ohq-page-shell li,
.ohq-page-shell small,
.ohq-page-shell [class*="sub"],
.ohq-page-shell [class*="desc"],
.ohq-page-shell [class*="label"],
.ohq-page-shell [class*="meta"],
.ohq-page-shell [class*="eyebrow"],
.ohq-page-shell .ohq-text-12 { font-size:12px!important; line-height:1.55!important; }
.ohq-page-shell .ohq-text-12 { overflow-wrap:anywhere; }
.ohq-page-shell > main { display:block; }

/* Normalize the originally light-only Contact and Legal pages. */
[data-theme="dark"] [data-ohq-page="operationhq-contact-us"] .card,
[data-theme="dark"] [data-ohq-page="operationhq-privacy-policy"] .toc,
[data-theme="dark"] [data-ohq-page="operationhq-privacy-policy"] .contact,
[data-theme="dark"] [data-ohq-page="operationhq-terms-of-service"] .toc,
[data-theme="dark"] [data-ohq-page="operationhq-terms-of-service"] .contact { background:var(--bg2)!important; border-color:var(--border)!important; box-shadow:0 18px 48px rgba(0,0,0,.22)!important; }
[data-theme="dark"] [data-ohq-page="operationhq-contact-us"] input,
[data-theme="dark"] [data-ohq-page="operationhq-contact-us"] select,
[data-theme="dark"] [data-ohq-page="operationhq-contact-us"] textarea { color:var(--text)!important; background:var(--bg3)!important; border-color:var(--border2)!important; }
[data-theme="dark"] [data-ohq-page="operationhq-contact-us"] label { color:var(--text)!important; }
[data-theme="dark"] [data-ohq-page="operationhq-contact-us"] .note,
[data-theme="dark"] [data-ohq-page="operationhq-privacy-policy"] .notice,
[data-theme="dark"] [data-ohq-page="operationhq-terms-of-service"] .notice { color:var(--text2)!important; background:linear-gradient(135deg,rgba(83,74,183,.18),rgba(29,158,117,.09))!important; border-color:var(--border2)!important; }
[data-theme="dark"] [data-ohq-page="operationhq-contact-us"] .icon { background:rgba(127,119,221,.16)!important; }
[data-theme="dark"] [data-ohq-page="operationhq-contact-us"] input::placeholder,
[data-theme="dark"] [data-ohq-page="operationhq-contact-us"] textarea::placeholder { color:rgba(240,238,255,.38)!important; }

/* Give every page a polished transition into the shared footer. */
.ohq-page-shell::after { content:""; display:block; width:min(1180px,calc(100% - 48px)); height:1px; margin:0 auto; background:linear-gradient(90deg,transparent,var(--border2),transparent); }
.ohq-utility-frame { width:min(1280px,calc(100% - 32px)); min-height:720px; display:block; margin:112px auto 72px; border:1px solid var(--border2); border-radius:22px; background:var(--bg2); box-shadow:0 24px 80px var(--shadow); }
#scroll-top-btn { right:24px!important; bottom:94px!important; }
#ohq-chat-launcher { position:fixed; right:24px; bottom:24px; z-index:250; width:56px; height:56px; display:grid; place-items:center; padding:0; color:#fff; cursor:pointer; border:1px solid rgba(255,255,255,.24); border-radius:50%; background:linear-gradient(135deg,#534ab7,#746bdd); box-shadow:0 14px 35px rgba(83,74,183,.38); transition:transform .2s,box-shadow .2s; }
#ohq-chat-launcher:hover { transform:translateY(-3px) scale(1.03); box-shadow:0 18px 42px rgba(83,74,183,.46); }
#ohq-chat-launcher::before { content:""; position:absolute; inset:-6px; border:1px solid rgba(83,74,183,.25); border-radius:inherit; animation:ohq-chat-pulse 2.8s infinite; }
@keyframes ohq-chat-pulse { 0%,45%{transform:scale(.88);opacity:0} 65%{opacity:.7} 100%{transform:scale(1.18);opacity:0} }
#ohq-chat-panel { position:fixed; right:24px; bottom:92px; z-index:251; width:min(380px,calc(100vw - 32px)); height:min(540px,calc(100vh - 130px)); display:none; flex-direction:column; overflow:hidden; color:var(--text,#16133a); background:var(--bg2,#fff); border:1px solid var(--border2,rgba(83,74,183,.28)); border-radius:20px; box-shadow:0 28px 85px rgba(20,16,65,.24); }
#ohq-chat-panel.open { display:flex; animation:ohq-chat-in .22s ease both; }
@keyframes ohq-chat-in { from{opacity:0;transform:translateY(12px) scale(.98)} to{opacity:1;transform:none} }
#ohq-chat-panel.minimized { height:56px; }
#ohq-chat-panel.minimized #ohq-chat-body,#ohq-chat-panel.minimized #ohq-chat-inputbar { display:none; }
#ohq-chat-panel.maximized { width:min(580px,calc(100vw - 48px)); height:min(760px,calc(100vh - 48px)); right:24px; bottom:24px; }
#ohq-chat-header { min-height:58px; flex:0 0 auto; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 14px 12px 18px; color:#fff; background:linear-gradient(125deg,#373087,#665dcc); }
#ohq-chat-title { font-size:13.5px; font-weight:800; }
#ohq-chat-controls { display:flex; gap:5px; }
.ohq-ctrl-btn { width:30px; height:30px; display:grid; place-items:center; padding:0; color:#fff; cursor:pointer; border:0; border-radius:8px; background:rgba(255,255,255,.1); }
.ohq-ctrl-btn:hover { background:rgba(255,255,255,.22); }
#ohq-chat-body { flex:1; overflow:auto; padding:15px; background:var(--bg,#faf9ff); }
#ohq-chat-messages { display:flex; flex-direction:column; gap:10px; }
.ohq-msg { max-width:84%; padding:10px 13px; border-radius:13px; font-size:12px; line-height:1.5; white-space:pre-wrap; }
.ohq-msg.user { align-self:flex-end; color:#fff; background:linear-gradient(135deg,#534ab7,#6b63cc); border-bottom-right-radius:4px; }
.ohq-msg.bot { align-self:flex-start; color:var(--text,#16133a); background:var(--bg2,#fff); border:1px solid var(--border,rgba(83,74,183,.14)); border-bottom-left-radius:4px; }
.ohq-msg.typing { opacity:.65; font-style:italic; }
#ohq-chat-inputbar { display:flex; flex:0 0 auto; gap:8px; padding:12px; background:var(--bg2,#fff); border-top:1px solid var(--border,rgba(83,74,183,.14)); }
#ohq-chat-input { min-width:0; flex:1; padding:10px 12px; color:var(--text,#16133a); background:var(--bg,#faf9ff); border:1px solid var(--border2,rgba(83,74,183,.22)); border-radius:10px; font:500 12px "Inter",sans-serif; }
#ohq-chat-send { flex:0 0 40px; width:40px; height:40px; display:grid; place-items:center; padding:0; color:#fff; cursor:pointer; border:0; border-radius:10px; background:linear-gradient(135deg,#534ab7,#6b63cc); }

/* Rich shared footer. ID scoping prevents legacy page CSS from changing it. */
#ohq-site-footer { position:relative; z-index:20; width:100%; min-height:0; margin:0!important; padding:0!important; overflow:hidden; color:var(--text,#171333); background:var(--bg2,#fff); border:0!important; border-top:1px solid var(--border,rgba(83,74,183,.14))!important; font-family:"Inter",sans-serif; }
[data-theme="dark"] #ohq-site-footer { --text:#f4f2ff; --muted:rgba(240,238,255,.64); --bg2:#100e1d; --border:rgba(145,137,237,.2); --border2:rgba(145,137,237,.36); }
#ohq-site-footer::before { content:""; position:absolute; inset:0; pointer-events:none; background:radial-gradient(circle at 12% 0%,rgba(83,74,183,.15),transparent 31%),radial-gradient(circle at 88% 18%,rgba(29,158,117,.1),transparent 28%); }
#ohq-site-footer * { box-sizing:border-box; }
#ohq-site-footer a { text-decoration:none; }
.ohq-footer-wrap { position:relative; width:min(1240px,calc(100% - 48px)); margin:0 auto; }
.ohq-footer-cta { transform:translateY(1px); margin-top:0; padding:48px 52px; display:grid; grid-template-columns:minmax(0,1.35fr) auto; gap:40px; align-items:center; overflow:hidden; color:#fff; background:linear-gradient(125deg,#211b62 0%,#534ab7 50%,#1b8f78 145%); border:1px solid rgba(255,255,255,.14); border-radius:28px; box-shadow:0 28px 80px rgba(41,32,113,.24); }
.ohq-footer-cta::before,.ohq-footer-cta::after { content:""; position:absolute; border-radius:50%; pointer-events:none; }
.ohq-footer-cta::before { width:280px; height:280px; right:-70px; top:-160px; border:1px solid rgba(255,255,255,.14); box-shadow:0 0 0 34px rgba(255,255,255,.035),0 0 0 70px rgba(255,255,255,.025); }
.ohq-footer-cta::after { width:220px; height:220px; left:42%; bottom:-185px; background:rgba(93,202,165,.22); filter:blur(44px); }
.ohq-footer-eyebrow { display:inline-flex; align-items:center; gap:8px; margin-bottom:12px; font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:#b9f4df; }
.ohq-footer-eyebrow i { width:7px; height:7px; border-radius:50%; background:#5dcaa5; box-shadow:0 0 0 6px rgba(93,202,165,.13); }
.ohq-footer-cta h2 { position:relative; margin:0 0 11px; max-width:720px; color:#fff; font-size:clamp(29px,3.4vw,48px); line-height:1.08; letter-spacing:-1.6px; }
.ohq-footer-cta p { position:relative; max-width:660px; margin:0; color:rgba(255,255,255,.7); font-size:12px; line-height:1.7; }
.ohq-footer-actions { position:relative; display:flex; gap:11px; flex-wrap:wrap; justify-content:flex-end; }
.ohq-footer-btn { min-height:48px; display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:0 22px; border-radius:11px; font-size:13px; font-weight:800; transition:transform .2s,box-shadow .2s,background .2s; }
.ohq-footer-btn:hover { transform:translateY(-2px); }
.ohq-footer-btn-primary { color:#302970!important; background:#fff; box-shadow:0 12px 30px rgba(0,0,0,.18); }
.ohq-footer-btn-secondary { color:#fff!important; background:rgba(255,255,255,.09); border:1px solid rgba(255,255,255,.28); }
.ohq-footer-trust { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin:30px 0 0; overflow:hidden; background:var(--border,rgba(83,74,183,.14)); border:1px solid var(--border,rgba(83,74,183,.14)); border-radius:16px; }
#ohq-site-footer .ohq-footer-trust-item { display:flex!important; flex-direction:row!important; align-items:center!important; justify-content:center!important; gap:9px!important; min-width:0; min-height:58px; margin:0!important; padding:10px 16px!important; background:var(--bg2,#fff); color:var(--muted,rgba(23,19,51,.62)); font-size:12px!important; font-weight:650; line-height:1.35!important; text-align:center; }
#ohq-site-footer .ohq-footer-trust-item svg { display:block!important; flex:0 0 18px!important; width:18px!important; min-width:18px!important; max-width:18px!important; height:18px!important; min-height:18px!important; max-height:18px!important; color:var(--t1,#1d9e75); }
#ohq-site-footer .ohq-footer-main { display:grid; grid-template-columns:1.45fr 1fr 1fr 1fr; gap:54px; margin:0!important; padding:68px 0 48px; }
.ohq-footer-brandmark { display:inline-flex; align-items:center; gap:10px; margin-bottom:18px; color:var(--text,#171333)!important; font-size:21px; font-weight:850; letter-spacing:-.6px; }
.ohq-footer-brandmark b { color:var(--p2,#665dcc); }
.ohq-footer-logo-icon { width:36px; height:36px; display:grid; place-items:center; border-radius:10px; color:#fff; background:linear-gradient(135deg,#534ab7,#7f77dd); box-shadow:0 10px 25px rgba(83,74,183,.25); font-size:11px; letter-spacing:-.4px; }
.ohq-footer-about { max-width:330px; margin:0 0 20px; color:var(--muted,rgba(23,19,51,.62)); font-size:12px; line-height:1.75; }
#ohq-site-footer .ohq-footer-contact { display:flex!important; flex-direction:column!important; align-items:flex-start!important; gap:10px!important; margin:0!important; padding:0!important; }
#ohq-site-footer .ohq-footer-contact a { width:max-content!important; max-width:100%; min-height:22px; display:inline-flex!important; align-items:center!important; gap:9px!important; margin:0!important; padding:0!important; color:var(--text,#171333); background:none!important; border:0!important; box-shadow:none!important; font-size:12px!important; font-weight:650; line-height:1.4!important; }
#ohq-site-footer .ohq-footer-contact svg { display:block!important; flex:0 0 17px!important; width:17px!important; min-width:17px!important; max-width:17px!important; height:17px!important; min-height:17px!important; max-height:17px!important; color:var(--p2,#665dcc); }
.ohq-footer-col h3 { margin:7px 0 19px; color:var(--text,#171333); font-size:12px; font-weight:800; letter-spacing:.075em; text-transform:uppercase; }
.ohq-footer-col nav { position:static!important; display:flex!important; flex-direction:column; align-items:flex-start!important; gap:12px!important; padding:0!important; border:0!important; background:none!important; backdrop-filter:none!important; }
.ohq-footer-col a { position:relative; color:var(--muted,rgba(23,19,51,.62)); font-size:12.5px; line-height:1.35; transition:color .2s,transform .2s; }
.ohq-footer-col nav a:hover { color:var(--p2,#665dcc); transform:translateX(3px); }
.ohq-footer-badge { display:inline-flex; align-items:center; gap:6px; margin-left:5px; padding:2px 7px; border-radius:999px; color:#16785f; background:rgba(29,158,117,.11); font-size:8px; font-weight:800; text-transform:uppercase; }
#ohq-site-footer .ohq-footer-bottom { min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:24px; margin:0!important; padding:0!important; border-top:1px solid var(--border,rgba(83,74,183,.14)); color:var(--muted,rgba(23,19,51,.62)); font-size:11px; }
.ohq-footer-bottom-links { display:flex; align-items:center; gap:20px; }
.ohq-footer-bottom a { color:inherit; }
.ohq-footer-bottom a:hover { color:var(--p2,#665dcc); }
.ohq-footer-built { display:flex; align-items:center; gap:7px; }
.ohq-footer-built i { width:6px; height:6px; border-radius:50%; background:#1d9e75; }

@media (max-width: 980px) {
  .ohq-footer-cta { grid-template-columns:1fr; padding:42px; }
  .ohq-footer-actions { justify-content:flex-start; }
  #ohq-site-footer .ohq-footer-main { grid-template-columns:1.3fr 1fr 1fr; }
  .ohq-footer-brand { grid-column:1/-1; }
}
@media (max-width: 700px) {
  .ohq-footer-wrap { width:min(100% - 28px,1240px); }
  .ohq-footer-cta { padding:34px 24px; border-radius:22px; }
  .ohq-footer-actions,.ohq-footer-btn { width:100%; }
  .ohq-footer-trust { grid-template-columns:1fr 1fr; }
  #ohq-site-footer .ohq-footer-main { grid-template-columns:1fr 1fr; gap:36px 24px; padding:52px 0 38px; }
  .ohq-footer-brand { grid-column:1/-1; }
  #ohq-site-footer .ohq-footer-bottom { padding:22px 0!important; align-items:flex-start; flex-direction:column; }
  .ohq-footer-bottom-links { flex-wrap:wrap; }
  #scroll-top-btn { right:18px!important; bottom:82px!important; }
  #ohq-chat-launcher { right:18px; bottom:18px; width:52px; height:52px; }
  #ohq-chat-panel { right:14px; bottom:82px; width:calc(100vw - 28px); height:min(520px,calc(100vh - 110px)); }
}
@media (max-width: 430px) {
  .ohq-footer-trust { grid-template-columns:1fr; }
  #ohq-site-footer .ohq-footer-main { grid-template-columns:1fr; }
  .ohq-footer-brand { grid-column:auto; }
}

@media (max-width: 782px) {
  body.admin-bar #main-nav { top: 46px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto!important; }
  *, *::before, *::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
}


/* Theme-aligned 404 page */
.ohq-404 { min-height:calc(100vh - 84px); display:grid; place-items:center; padding:120px 24px 88px; }
.ohq-404-card { position:relative; width:min(900px,100%); overflow:hidden; padding:64px 56px; text-align:center; background:linear-gradient(180deg,var(--bg2),color-mix(in srgb,var(--bg2) 92%,var(--p4) 8%)); border:1px solid var(--border2); border-radius:28px; box-shadow:0 30px 90px var(--shadow); }
.ohq-404-card::before { content:""; position:absolute; width:330px; height:330px; left:-120px; top:-150px; border-radius:50%; background:rgba(83,74,183,.12); filter:blur(4px); }
.ohq-404-card::after { content:""; position:absolute; width:280px; height:280px; right:-120px; bottom:-150px; border-radius:50%; background:rgba(29,158,117,.11); }
.ohq-404-badge { position:relative; z-index:1; display:inline-flex; align-items:center; gap:8px; margin-bottom:22px; padding:8px 12px; border:1px solid var(--border); border-radius:999px; color:var(--p2); background:var(--card2); font-size:11px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.ohq-404-badge i { width:7px; height:7px; border-radius:50%; background:var(--t1); box-shadow:0 0 0 6px rgba(29,158,117,.10); }
.ohq-404-code { position:relative; z-index:1; margin:0; font-size:clamp(92px,18vw,180px); font-weight:850; line-height:.85; letter-spacing:-8px; background:linear-gradient(135deg,var(--p1),var(--p2) 58%,var(--t1)); -webkit-background-clip:text; background-clip:text; color:transparent; }
.ohq-404 h1 { position:relative; z-index:1; max-width:680px; margin:28px auto 12px; color:var(--text); font-size:clamp(28px,4vw,46px); line-height:1.1; letter-spacing:-1.4px; }
.ohq-404 p { position:relative; z-index:1; max-width:620px; margin:0 auto; color:var(--muted); font-size:14px!important; line-height:1.75!important; }
.ohq-404-actions { position:relative; z-index:1; display:flex; justify-content:center; flex-wrap:wrap; gap:12px; margin-top:30px; }
.ohq-404-actions a { min-height:48px; display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:0 20px; border-radius:12px; font-size:13px; font-weight:800; text-decoration:none; transition:transform .2s,box-shadow .2s,background .2s; }
.ohq-404-actions a:hover { transform:translateY(-2px); }
.ohq-404-home { color:#fff!important; background:linear-gradient(135deg,var(--p1),var(--p2)); box-shadow:0 14px 30px rgba(83,74,183,.24); }
.ohq-404-secondary { color:var(--text)!important; background:var(--bg2); border:1px solid var(--border2); }
.ohq-404-help { position:relative; z-index:1; display:flex; justify-content:center; flex-wrap:wrap; gap:20px; margin-top:34px; padding-top:24px; border-top:1px solid var(--border); color:var(--muted); font-size:12px; }
.ohq-404-help a { color:var(--p2); font-weight:750; text-decoration:none; }
@media (max-width:600px){ .ohq-404{padding:96px 16px 60px}.ohq-404-card{padding:46px 22px;border-radius:22px}.ohq-404-code{letter-spacing:-5px}.ohq-404-actions a{width:100%}.ohq-404-help{flex-direction:column;gap:8px} }

/* JSR Vertex footer attribution link */
.ohq-footer-jsr-link{color:inherit;text-decoration:none;}
.ohq-footer-jsr-link:hover{text-decoration:underline;text-underline-offset:3px;}


/* v2.7 pricing/header polish */
[data-ohq-page="pricing"] .pp-hero{min-height:0;}
@media (max-width:782px){body.admin-bar #main-nav{top:46px;} html{scroll-padding-top:118px;} .ohq-page-shell section{scroll-margin-top:118px;}}


/* v2.8 — shared header visual lock
   Imported legacy pages contain page-level CSS. These high-specificity rules
   keep the global header and mega menus pixel-consistent on every template. */
html body #main-nav{
  box-sizing:border-box!important;
  position:fixed!important;
  top:0!important; right:0!important; bottom:auto!important; left:0!important;
  width:100%!important;
  height:76px!important; min-height:76px!important; max-height:76px!important;
  margin:0!important;
  padding:0 clamp(24px,4vw,68px)!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  overflow:visible!important;
  border-width:0 0 1px!important;
  border-style:solid!important;
  border-color:var(--ohq-header-border)!important;
  border-radius:0!important;
  background:var(--ohq-header-bg)!important;
  backdrop-filter:blur(20px)!important;
  -webkit-backdrop-filter:blur(20px)!important;
  transform:none!important;
  z-index:10000!important;
}
body.admin-bar #main-nav{top:32px!important;}
html body #main-nav .nav-logo{
  flex:0 0 auto!important;
  width:auto!important; min-width:0!important; max-width:none!important;
  height:auto!important;
  margin:0!important; padding:0!important;
}
html body #main-nav .nav-logo a{display:block!important;margin:0!important;padding:0!important;text-decoration:none!important;}
html body #main-nav .nav-logo-text{
  display:block!important;
  margin:0!important; padding:0!important;
  font-family:"Inter",sans-serif!important;
  font-size:20px!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:-.65px!important;
  white-space:nowrap!important;
}
html body #main-nav .nav-links{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  flex:0 1 auto!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  width:auto!important; height:76px!important;
  margin:0 auto!important; padding:0!important;
  background:transparent!important;
  border:0!important; border-radius:0!important;
  box-shadow:none!important;
}
html body #main-nav .nav-menu{
  position:static!important;
  display:flex!important;
  align-items:center!important;
  width:auto!important;
  height:76px!important; min-height:76px!important;
  margin:0!important; padding:0!important;
}
html body #main-nav .nav-links>a,
html body #main-nav .nav-menu-trigger{
  box-sizing:border-box!important;
  min-height:38px!important;
  width:auto!important;
  display:flex!important;
  align-items:center!important;
  margin:0!important;
  padding:0 14px!important;
  border:0!important;
  border-radius:10px!important;
  background:transparent!important;
  box-shadow:none!important;
  color:var(--ohq-header-text)!important;
  font-family:"Inter",sans-serif!important;
  font-size:13px!important;
  font-weight:600!important;
  line-height:1!important;
  text-decoration:none!important;
  text-transform:none!important;
  letter-spacing:0!important;
  white-space:nowrap!important;
}
html body #main-nav .nav-cta{
  flex:0 0 auto!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:9px!important;
  width:auto!important; height:auto!important;
  margin:0!important; padding:0!important;
}
html body #main-nav .nav-cta>a{display:block!important;margin:0!important;padding:0!important;text-decoration:none!important;}
html body #main-nav .theme-toggle{
  box-sizing:border-box!important;
  width:auto!important; height:42px!important; min-height:42px!important; max-height:42px!important;
  margin:0!important; padding:5px 9px!important;
  display:flex!important; align-items:center!important; gap:6px!important;
  border:1px solid var(--ohq-header-border)!important;
  border-radius:12px!important;
  background:rgba(127,119,221,.07)!important;
  font-family:"Inter",sans-serif!important;
  box-shadow:none!important;
}
html body #main-nav .btn-ghost,
html body #main-nav .btn-primary{
  box-sizing:border-box!important;
  width:auto!important;
  height:44px!important; min-height:44px!important; max-height:44px!important;
  margin:0!important;
  padding:0 18px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:11px!important;
  font-family:"Inter",sans-serif!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1!important;
  white-space:nowrap!important;
  text-transform:none!important;
  letter-spacing:0!important;
}
html body #main-nav .mega-menu{
  box-sizing:border-box!important;
  position:fixed!important;
  top:84px!important;
  left:50%!important; right:auto!important; bottom:auto!important;
  width:min(1160px,calc(100vw - 56px))!important;
  height:auto!important; min-height:0!important; max-height:calc(100vh - 104px)!important;
  margin:0!important; padding:0!important;
  grid-template-columns:320px minmax(0,1fr)!important;
  overflow:auto!important;
  border:1px solid var(--ohq-header-border)!important;
  border-radius:24px!important;
  background:var(--ohq-header-solid)!important;
  box-shadow:0 30px 90px rgba(26,19,74,.2),0 0 0 1px rgba(255,255,255,.03) inset!important;
}
html body #main-nav .products-menu{width:min(1160px,calc(100vw - 56px))!important;}
html body #main-nav .industries-menu{width:min(1080px,calc(100vw - 56px))!important;}
html body #main-nav .mega-intro{
  box-sizing:border-box!important;
  min-height:100%!important;
  margin:0!important;
  padding:38px 34px!important;
  display:flex!important;
  flex-direction:column!important;
  border-right:1px solid var(--ohq-header-border)!important;
}
html body #main-nav .mega-content{
  box-sizing:border-box!important;
  margin:0!important;
  padding:31px 32px 34px!important;
}
html body #main-nav .mega-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px 12px!important;
  margin:0!important;
  padding:0!important;
}
html body #main-nav .mega-card{
  box-sizing:border-box!important;
  min-width:0!important;
  width:auto!important;
  height:75px!important; min-height:75px!important; max-height:75px!important;
  margin:0!important;
  padding:13px 14px!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:12px!important;
  overflow:hidden!important;
  border:1px solid var(--ohq-header-border)!important;
  border-radius:14px!important;
  background:rgba(127,119,221,.035)!important;
  text-decoration:none!important;
}
html body #main-nav .mega-icon{
  box-sizing:border-box!important;
  flex:0 0 42px!important;
  width:42px!important; min-width:42px!important; max-width:42px!important;
  height:42px!important; min-height:42px!important; max-height:42px!important;
  margin:0!important; padding:0!important;
  display:grid!important; place-items:center!important;
  border-radius:12px!important;
  font-size:12px!important; line-height:1!important;
}
html body #main-nav .mega-card strong{
  display:block!important;
  margin:0 0 4px!important; padding:0!important;
  font-family:"Inter",sans-serif!important;
  font-size:13px!important; font-weight:700!important; line-height:1.25!important;
}
html body #main-nav .mega-card small{
  display:block!important;
  margin:0!important; padding:0!important;
  font-family:"Inter",sans-serif!important;
  font-size:12px!important; font-weight:400!important; line-height:1.35!important;
}
html body #main-nav .mega-intro h3{
  margin:17px 0 12px!important; padding:0!important;
  font-family:"Inter",sans-serif!important;
  font-size:27px!important; font-weight:700!important; line-height:1.18!important;
}
html body #main-nav .mega-intro p{
  margin:0!important; padding:0!important;
  font-family:"Inter",sans-serif!important;
  font-size:12px!important; line-height:1.65!important;
}
html body #main-nav .mega-eyebrow,
html body #main-nav .mega-heading{
  font-family:"Inter",sans-serif!important;
  font-size:12px!important; font-weight:700!important; line-height:1.2!important;
}
html body #main-nav .mega-feature-link{
  min-height:48px!important;
  margin-top:auto!important;
  padding:0 16px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  font-family:"Inter",sans-serif!important;
  font-size:12px!important; font-weight:700!important; line-height:1!important;
}
/* Keep page starts clear of the fixed global header. */
html{scroll-padding-top:100px!important;}
.ohq-page-shell section,[data-ohq-page] section{scroll-margin-top:100px!important;}
[data-ohq-page="pricing"] .pp-hero{padding-top:132px!important;}
@media(max-width:1120px){
  html body #main-nav .nav-links>a,html body #main-nav .nav-menu-trigger{padding:0 9px!important;}
  html body #main-nav .mega-menu{width:calc(100vw - 32px)!important;}
}
@media(max-width:900px){
  html body #main-nav{height:68px!important;min-height:68px!important;max-height:68px!important;padding:0 18px!important;}
  html body #main-nav .nav-links{display:none!important;}
  html body #main-nav .nav-cta .btn-ghost,html body #main-nav .nav-cta .btn-primary{display:none!important;}
  html body #hamburger-btn{display:flex!important;}
  html{scroll-padding-top:86px!important;}
  .ohq-page-shell section,[data-ohq-page] section{scroll-margin-top:86px!important;}
  [data-ohq-page="pricing"] .pp-hero{padding-top:104px!important;}
}
@media(max-width:782px){body.admin-bar #main-nav{top:46px!important;}}
