:root{
  --midnight:#08111F;
  --deep:#0D1B2A;
  --slate:#16283B;
  --orange:#FF7A00;
  --blue:#2864FF;
  --cyan:#37D5F4;
  --mint:#43D9A3;
  --cloud:#F7F9FC;
  --paper:#FFFFFF;
  --ink:#101828;
  --graphite:#475467;
  --line:#DDE4EE;
  --max:1240px;
  --radius:18px;
  --shadow:0 24px 70px rgba(16,24,40,.10);
}

/* ============================================================
   THEME TOKENS
============================================================ */

html[data-theme="normal"],
html[data-theme="standard"]{
  --page:#F6F8FC;
  --surface:#FFFFFF;
  --surface2:#EDF2FA;
  --text:#101828;
  --muted:#526071;
  --line:#DCE4EF;
  --nav:rgba(255,255,255,.98);
  --navtext:#101828;
  --hero:#08172A;
  --heroText:#FFFFFF;
  --heroMuted:#C4D1E0;
  --primary:#2864FF;
  --primaryHover:#174DE3;
  --secondary:#FFFFFF;
  --secondaryText:#101828;

  --ia-page-bg:#F6F8FC;
  --ia-surface:#FFFFFF;
  --ia-surface-2:#EDF2FA;
  --ia-header-bg:#FFFFFF;
  --ia-nav-bg:#FFFFFF;
  --ia-text:#101828;
  --ia-muted:#526071;
  --ia-border:#DCE4EF;
  --ia-primary:#2864FF;
  --ia-primary-text:#FFFFFF;
  --ia-chip-bg:#FFFFFF;
  --ia-chip-text:#101828;
  --ia-chip-border:#DCE4EF;
  --ia-search-bg:#FFFFFF;
  --ia-search-text:#101828;

  color-scheme:light;
}

html[data-theme="dark"]{
  --page:#06101D;
  --surface:#0B1A2A;
  --surface2:#12283D;
  --text:#F8FBFF;
  --muted:#A9B9CB;
  --line:#254057;
  --nav:rgba(6,16,29,.98);
  --navtext:#F8FBFF;
  --hero:#030A12;
  --heroText:#FFFFFF;
  --heroMuted:#A9B9CB;
  --primary:#37D5F4;
  --primaryHover:#20BEDD;
  --secondary:#12283D;
  --secondaryText:#F8FBFF;

  --ia-page-bg:#06101D;
  --ia-surface:#0B1A2A;
  --ia-surface-2:#12283D;
  --ia-header-bg:#081321;
  --ia-nav-bg:#0A1626;
  --ia-text:#F8FBFF;
  --ia-muted:#A9B9CB;
  --ia-border:#254057;
  --ia-primary:#37D5F4;
  --ia-primary-text:#03131B;
  --ia-chip-bg:#101E31;
  --ia-chip-text:#F5F8FC;
  --ia-chip-border:#31455F;
  --ia-search-bg:#101E31;
  --ia-search-text:#FFFFFF;

  color-scheme:dark;
}

html[data-theme="corporate"]{
  --page:#FFF9F3;
  --surface:#FFFFFF;
  --surface2:#FFF0E2;
  --text:#121821;
  --muted:#65584C;
  --line:#EADACB;
  --nav:rgba(255,252,248,.98);
  --navtext:#121821;
  --hero:#FFF7EE;
  --heroText:#121821;
  --heroMuted:#6C5A49;
  --primary:#E96B00;
  --primaryHover:#C95700;
  --secondary:#FFF7EE;
  --secondaryText:#121821;

  --ia-page-bg:#FFF9F3;
  --ia-surface:#FFFFFF;
  --ia-surface-2:#FFF0E2;
  --ia-header-bg:#FFFDFB;
  --ia-nav-bg:#FFFAF6;
  --ia-text:#182230;
  --ia-muted:#687180;
  --ia-border:#EADFD4;
  --ia-primary:#FF7600;
  --ia-primary-text:#FFFFFF;
  --ia-chip-bg:#FFFFFF;
  --ia-chip-text:#142033;
  --ia-chip-border:#E8DED3;
  --ia-search-bg:#FFFFFF;
  --ia-search-text:#162033;

  color-scheme:light;
}

/* ============================================================
   BASE
============================================================ */

*{box-sizing:border-box}

html{
  scroll-behavior:smooth;
  max-width:100%;
  overflow-x:hidden;
}

body{
  margin:0;
  max-width:100%;
  overflow-x:hidden;
  background:var(--page);
  color:var(--text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.55;
  letter-spacing:-.008em;
}

a{color:inherit}
button,input,select,textarea{font:inherit}

.shell{
  width:100%;
  max-width:var(--max);
  margin:auto;
  padding:0 28px;
}

.skip{
  position:absolute;
  left:-9999px;
  top:8px;
  z-index:999;
  color:#fff;
  background:var(--primary);
  padding:10px 14px;
  border-radius:8px;
}

.skip:focus{left:8px}

:focus-visible{
  outline:3px solid color-mix(in srgb,var(--primary) 38%,transparent);
  outline-offset:3px;
}

/* ============================================================
   HEADER / TOPBAR
============================================================ */

.topbar{
  position:sticky;
  top:0;
  z-index:1000;
  border-bottom:1px solid var(--line);
  background:var(--nav);
  color:var(--navtext);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

.topbar .shell.nav{
  min-height:76px;
  display:flex;
  align-items:center;
  flex-wrap:nowrap;
  gap:14px;
  width:100%;
  max-width:1680px; /* Header needs more room than normal page content */
  min-width:0;
  padding-left:24px;
  padding-right:24px;
}

.ia-logo{
  display:inline-flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  min-width:max-content;
  flex:0 0 auto;
}

.ia-logo-image{
  display:block;
  width:146px;
  max-width:146px;
  height:auto;
}

.logo-mark{width:42px;height:42px}

.logo-copy{
  display:flex;
  flex-direction:column;
  line-height:.92;
  letter-spacing:-.055em;
  font-weight:900;
}

.logo-copy .intent{
  font-size:18px;
  color:var(--navtext)
}

.logo-copy .amplify{
  font-size:18px;
  margin-top:3px;
  color:var(--orange)
}

/* Desktop nav */
.ia-public-nav,
.navlinks{
  display:flex;
  align-items:center;
  gap:12px;
  flex:1 1 auto;
  min-width:0;
  margin-left:auto;
  white-space:nowrap;
}

.ia-public-nav > a,
.navlinks > a,
.nav-trigger,
.ia-resource-trigger{
  border:0;
  background:transparent;
  color:var(--navtext);
  text-decoration:none;
  opacity:.78;
  padding:18px 0;
  font-size:12px;
}

.ia-public-nav > a:hover,
.navlinks > a:hover,
.nav-trigger:hover,
.ia-resource-trigger:hover{
  opacity:1;
  color:var(--primary);
}

.nav-dropdown,
.ia-resource-dropdown{
  position:relative;
}

.nav-trigger,
.ia-resource-trigger{
  display:inline-flex;
  align-items:center;
  gap:5px;
  cursor:pointer;
}

/* Mega menu */
.mega,
.ia-resource-menu{
  position:absolute;
  top:calc(100% - 5px);
  right:-210px;
  width:min(1020px,92vw);
  padding:18px;
  border:1px solid var(--line);
  border-radius:18px;
  background:var(--surface);
  box-shadow:0 30px 90px rgba(8,17,31,.20);
  opacity:0;
  visibility:hidden;
  transform:translateY(-8px);
  transition:.16s;
  color:var(--text);
}

.nav-dropdown.open .mega,
.nav-dropdown:hover .mega,
.ia-resource-dropdown.open .ia-resource-menu,
.ia-resource-dropdown:hover .ia-resource-menu{
  opacity:1;
  visibility:visible;
  transform:none;
}

.mega-head{
  padding:5px 6px 14px;
  border-bottom:1px solid var(--line);
  margin-bottom:12px;
}

.mega-head strong{
  display:block;
  font-size:16px;
}

.mega-head small{color:var(--muted)}

.mega-columns,
.ia-resource-mega-grid{
  display:grid;
  grid-template-columns:1fr 1fr 1.2fr;
  gap:18px;
}

.mega-group h4{
  font-size:11px;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:.09em;
  margin:4px 8px 8px;
}

.mega a,
.ia-resource-menu a{
  display:block;
  padding:9px 10px;
  border-radius:10px;
  text-decoration:none;
}

.mega a:hover,
.ia-resource-menu a:hover{
  background:var(--surface2);
}

.mega a strong,
.ia-resource-menu a strong{
  display:block;
  font-size:12px;
}

.mega a small,
.ia-resource-menu a small{
  display:block;
  color:var(--muted);
  font-size:9px;
  margin-top:2px;
}

/* ============================================================
   GLOBAL SEARCH
============================================================ */

.ia-global-search{
  position:relative;
  flex:0 1 210px;
  width:210px;
  min-width:170px;
  max-width:230px;
  z-index:1100;
}

.ia-global-search-form{
  position:relative;
  display:flex;
  align-items:center;
}

.ia-global-search input,
.ia-search-input{
  width:100%;
  height:46px;
  padding:0 42px 0 42px;
  border:1px solid var(--ia-border);
  border-radius:999px;
  outline:none;
  background:var(--ia-search-bg);
  color:var(--ia-search-text);
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}

.ia-global-search input::placeholder,
.ia-search-input::placeholder{
  color:var(--ia-muted);
}

.ia-global-search input:focus,
.ia-search-input:focus{
  border-color:var(--ia-primary);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--ia-primary) 15%,transparent);
}

.ia-search-icon{
  position:absolute;
  left:14px;
  top:50%;
  transform:translateY(-50%);
  color:var(--ia-muted);
  pointer-events:none;
}

.ia-search-clear{
  position:absolute;
  right:12px;
  top:50%;
  transform:translateY(-50%);
  border:0;
  background:transparent;
  color:var(--ia-muted);
  cursor:pointer;
  padding:4px;
}

.ia-search-results{
  position:absolute;
  top:calc(100% + 10px);
  right:0;
  width:min(520px,calc(100vw - 32px));
  max-height:min(520px,70vh);
  overflow:auto;
  border:1px solid var(--ia-border);
  border-radius:16px;
  background:var(--ia-surface);
  color:var(--ia-text);
  box-shadow:0 18px 50px rgba(0,0,0,.18);
  padding:8px;
}

.ia-search-result{
  display:block;
  padding:12px 14px;
  border-radius:11px;
  text-decoration:none;
  color:var(--ia-text);
  border:1px solid transparent;
}

.ia-search-result:hover,
.ia-search-result.is-active{
  background:var(--ia-surface-2);
  border-color:var(--ia-border);
}

.ia-search-result-title{
  display:block;
  font-size:14px;
  font-weight:800;
  line-height:1.3;
}

.ia-search-result-meta{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:5px;
  color:var(--ia-muted);
  font-size:11px;
}

.ia-search-result-snippet{
  margin-top:5px;
  color:var(--ia-muted);
  font-size:12px;
  line-height:1.45;
}

.ia-search-empty,
.ia-search-loading{
  padding:18px 14px;
  color:var(--ia-muted);
  font-size:12px;
}

/* ============================================================
   THEME SWITCHER
============================================================ */

.theme-switch,
.ia-theme-switch,
.ia-theme-switcher{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:3px;
  flex:0 0 326px;
  width:326px;
  min-width:326px;
  white-space:nowrap;
  padding:4px;
  border:1px solid var(--ia-border);
  border-radius:14px;
  background:var(--ia-surface-2);
}

.theme-switch button,
.ia-theme-switch button,
.ia-theme-switcher button{
  height:38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  flex:1 1 0;
  min-width:0;
  padding:0 9px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:var(--ia-muted);
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
  cursor:pointer;
}

.theme-switch button:hover,
.ia-theme-switcher button:hover{
  color:var(--ia-text);
}

.theme-switch button.active,
.theme-switch button[aria-pressed="true"],
.ia-theme-switcher button.active,
.ia-theme-switcher button[aria-pressed="true"]{
  background:var(--ia-primary);
  color:var(--ia-primary-text);
  box-shadow:0 5px 15px color-mix(in srgb,var(--ia-primary) 25%,transparent);
}

/* ============================================================
   BUTTONS / BOOK DEMO
============================================================ */

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:46px;
  padding:0 19px;
  border:1px solid transparent;
  border-radius:11px;
  text-decoration:none;
  font-weight:850;
  cursor:pointer;
}

.btn-primary{
  color:#fff;
  background:var(--primary);
}

.btn-primary:hover{
  background:var(--primaryHover);
}

.btn-secondary{
  color:var(--secondaryText);
  background:var(--secondary);
  border-color:var(--line);
}

.btn-ghost{
  color:#fff;
  background:transparent;
  border-color:rgba(255,255,255,.28);
}

.ia-demo-btn,
.topbar > .shell > .btn-primary,
.topbar a[href*="book-demo"]{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  flex:0 0 auto;
  min-height:46px;
  padding:0 20px;
  border-radius:13px;
  white-space:nowrap;
  background:var(--ia-primary)!important;
  color:var(--ia-primary-text)!important;
  border:1px solid color-mix(in srgb,var(--ia-primary) 82%,#000);
  box-shadow:0 8px 24px color-mix(in srgb,var(--ia-primary) 22%,transparent);
  transition:transform .22s ease,box-shadow .22s ease;
}

.ia-demo-btn::before,
.topbar > .shell > .btn-primary::before,
.topbar a[href*="book-demo"]::before{
  content:"";
  position:absolute;
  z-index:-2;
  width:160%;
  aspect-ratio:1;
  left:-30%;
  top:50%;
  transform:translateY(-50%);
  background:conic-gradient(
    transparent 0deg,
    transparent 250deg,
    color-mix(in srgb,var(--ia-primary) 82%,#fff) 292deg,
    #fff 320deg,
    transparent 360deg
  );
  animation:iaDemoSpin 4.8s linear infinite;
}

.ia-demo-btn::after,
.topbar > .shell > .btn-primary::after,
.topbar a[href*="book-demo"]::after{
  content:"";
  position:absolute;
  z-index:-1;
  inset:2px;
  border-radius:11px;
  background:var(--ia-primary);
}

.ia-demo-btn:hover,
.topbar > .shell > .btn-primary:hover,
.topbar a[href*="book-demo"]:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 28px color-mix(in srgb,var(--ia-primary) 32%,transparent);
}

@keyframes iaDemoSpin{
  to{transform:translateY(-50%) rotate(360deg)}
}

/* ============================================================
   ROUTE STRIP
============================================================ */

.route-strip,
.quick-route-strip,
.header-route-strip{
  background:var(--ia-nav-bg);
  border-bottom:1px solid var(--ia-border);
}

.route-inner,
.ia-preview-route-inner{
  display:flex;
  gap:7px;
  max-width:var(--max);
  margin:auto;
  padding:10px 28px;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
}

.route-chip,
.ia-preview-route-chip,
.quick-route-strip a,
.header-route-strip a{
  flex:0 0 auto;
  white-space:nowrap;
  border:1px solid var(--ia-chip-border);
  background:var(--ia-chip-bg);
  color:var(--ia-chip-text);
  border-radius:999px;
  padding:7px 11px;
  font-size:11px;
  font-weight:740;
  cursor:pointer;
  text-decoration:none;
}

.route-chip:hover,
.ia-preview-route-chip:hover,
.quick-route-strip a:hover,
.header-route-strip a:hover,
.route-chip.active,
.ia-preview-route-chip.active,
.quick-route-strip a.active{
  background:var(--ia-primary);
  color:var(--ia-primary-text);
  border-color:var(--ia-primary);
}

/* ============================================================
   TYPOGRAPHY
============================================================ */

h1,h2,h3,h4{letter-spacing:-.045em}

h1{
  max-width:1050px;
  margin:0 0 22px;
  font-size:clamp(43px,5.7vw,77px);
  line-height:.98;
}

h2{
  margin:0 0 17px;
  font-size:clamp(31px,4vw,52px);
  line-height:1.04;
}

h3{
  margin:0 0 10px;
  font-size:21px;
  line-height:1.16;
}

.eyebrow,.kicker,.micro{
  color:var(--primary);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:10px;
  font-weight:900;
}

.lead{
  max-width:860px;
  margin:0;
  font-size:20px;
  line-height:1.55;
}

.intro{
  max-width:880px;
  margin:0;
  color:var(--muted);
  font-size:17px;
}

.actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:27px;
}

/* ============================================================
   HERO / CARDS / CONTENT
============================================================ */

.hero{
  padding:96px 0 86px;
  color:var(--heroText);
  background:
    radial-gradient(circle at 84% 7%,rgba(55,213,244,.14),transparent 29%),
    radial-gradient(circle at 14% 4%,rgba(40,100,255,.20),transparent 34%),
    var(--hero);
}

html[data-theme="corporate"] .hero{
  background:
    radial-gradient(circle at 86% 6%,rgba(255,122,0,.12),transparent 30%),
    #fff;
}

.hero-grid{
  display:grid;
  grid-template-columns:1.04fr .96fr;
  gap:55px;
  align-items:center;
}

.hero .lead{color:var(--heroMuted)}

.evidence-card{
  padding:26px;
  border:1px solid #29475F;
  border-radius:24px;
  color:#fff;
  background:linear-gradient(180deg,#142A40,#091724);
  box-shadow:0 38px 100px rgba(0,0,0,.32);
}

.evidence-row{
  display:grid;
  grid-template-columns:12px minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  min-height:86px;
  padding:18px 20px;
  margin-top:12px;
  border:1px solid #29455D;
  border-radius:14px;
  background:#122A40;
}

.evidence-row>div{min-width:0}

.evidence-row>div strong{
  display:block;
  font-size:17px;
  line-height:1.2;
  margin-bottom:6px;
  letter-spacing:-.02em;
}

.evidence-row>div small{
  display:block;
  color:#9EB0C0;
  font-size:13px;
  line-height:1.4;
}

.evidence-row>strong{
  font-size:10px;
  white-space:nowrap;
}

html[data-theme="corporate"] .evidence-card{
  color:#08111F;
  background:#fff;
  border-color:#DDE4EE;
  box-shadow:0 28px 70px rgba(16,24,40,.12);
}

html[data-theme="corporate"] .evidence-row{
  background:#fff;
  border-color:#DDE4EE;
}

html[data-theme="corporate"] .evidence-row>div small{
  color:#667085;
}

.dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--cyan);
}

.dot.mint{background:var(--mint)}
.dot.orange{background:var(--orange)}

.section{padding:82px 0}
.section.alt{background:var(--surface)}

.section.dark{
  color:#fff;
  background:var(--deep);
  border-top:1px solid #263B50;
  border-bottom:1px solid #263B50;
}

.page-hero{
  padding:72px 0 60px;
  background:var(--surface);
  border-bottom:1px solid var(--line);
}

.grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-top:34px;
}

.grid.two{grid-template-columns:repeat(2,1fr)}

.card{
  padding:25px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:var(--surface);
  box-shadow:var(--shadow);
}

.card p{color:var(--muted)}

.proofbar{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:25px;
}

.proofpill{
  font-size:11px;
  color:var(--muted);
  background:var(--surface2);
  border:1px solid var(--line);
  border-radius:999px;
  padding:6px 10px;
}

/* ============================================================
   FLOW / PRICING
============================================================ */

.flow{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:8px;
  margin-top:34px;
}

.flow-card{
  min-height:112px;
  padding:14px;
  border:1px solid #263B50;
  border-radius:12px;
  background:var(--slate);
}

.flow-card strong{
  display:block;
  margin-bottom:7px;
  color:var(--cyan);
  font-size:10px;
}

.pricing-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:15px;
  margin-top:34px;
}

.pricing-grid.signal{
  grid-template-columns:repeat(4,1fr);
}

.plan{
  display:flex;
  flex-direction:column;
  padding:24px;
  border:1px solid var(--line);
  border-radius:19px;
  background:var(--surface);
}

.plan.featured{
  border:2px solid var(--orange);
  box-shadow:0 18px 55px rgba(255,122,0,.14);
}

.plan h3{font-size:29px}
.plan p,.plan li{color:var(--muted)}
.plan .btn{margin-top:auto}

.pricing-note{
  padding:9px 10px;
  margin:16px 0 20px;
  border-radius:9px;
  color:var(--primary);
  background:color-mix(in srgb,var(--primary) 7%,transparent);
  border:1px solid color-mix(in srgb,var(--primary) 20%,transparent);
  font-size:10px;
  font-weight:850;
}

.signal-pricing{
  margin-top:48px;
  padding:34px;
  border-radius:24px;
  color:#fff;
  background:#0D1B2A;
}

.signal-pricing .plan{
  background:#173149;
  border-color:#2D526C;
  color:#fff;
  box-shadow:none;
}

.signal-pricing .plan p,
.signal-pricing .plan li{
  color:#C1D0DF;
}

.signal-pricing .micro{color:#43D9A3}

/* ============================================================
   RESOURCES
============================================================ */

.resource-hub{
  padding:82px 0 66px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 7%,var(--surface)),var(--surface) 48%);
  border-bottom:1px solid var(--line);
}

.resource-nav{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:22px;
}

.resource-nav a{
  padding:8px 11px;
  border-radius:999px;
  border:1px solid var(--line);
  background:var(--surface);
  text-decoration:none;
  font-size:11px;
  font-weight:800;
}

.resource-nav a:hover{
  color:#fff;
  background:var(--primary);
  border-color:var(--primary);
}

.resource-stack{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:20px;
  margin-top:32px;
}

.resource-feature{
  padding:28px;
  border-radius:22px;
  color:#fff;
  background:
    radial-gradient(circle at 85% 10%,rgba(55,213,244,.18),transparent 32%),
    var(--deep);
}

.resource-feature p{color:#B7C5D2}

.resource-feature.is-cms-feature{
  padding:0;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-height:100%;
}

.resource-feature-media{
  display:block;
  position:relative;
  aspect-ratio:16/8.7;
  overflow:hidden;
  background:#13283A;
  text-decoration:none;
}

.resource-feature-media img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transition:transform .25s ease;
}

.resource-feature-media:hover img{
  transform:scale(1.015);
}

.resource-feature-placeholder{
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  padding:24px;
  text-align:center;
  color:#fff;
  font-size:26px;
  font-weight:900;
  background:linear-gradient(145deg,#11283C,#0B1928);
}

.resource-feature-content{
  padding:24px 26px 25px;
  display:flex;
  flex-direction:column;
  flex:1;
}

.resource-feature-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:10px;
}

.resource-feature-meta span{
  display:inline-flex;
  padding:5px 8px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  color:#D8E5F1;
  font-size:9px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.045em;
}

.resource-feature.is-cms-feature h2{
  margin:0 0 10px;
  font-size:28px;
  line-height:1.08;
  text-decoration:none!important;
  border-bottom:0!important;
  box-shadow:none!important;
}

.resource-feature.is-cms-feature h2 a,
.resource-feature.is-cms-feature h2 a:link,
.resource-feature.is-cms-feature h2 a:visited,
.resource-feature.is-cms-feature h2 a:hover,
.resource-feature.is-cms-feature h2 a:focus,
.resource-feature.is-cms-feature h2 a:active{
  color:#fff;
  text-decoration:none!important;
  border-bottom:0!important;
  box-shadow:none!important;
}

.resource-feature.is-cms-feature p{
  margin:0 0 14px;
  line-height:1.55;
}

.resource-feature-tags{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:auto;
  padding-top:2px;
}

.resource-feature-tags a{
  padding:5px 8px;
  border-radius:999px;
  background:rgba(255,255,255,.09);
  border:1px solid rgba(255,255,255,.16);
  color:#fff;
  text-decoration:none;
  font-size:9px;
  font-weight:800;
}

.resource-feature-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid rgba(255,255,255,.15);
  font-size:10px;
  color:#B9C9D8;
}

.resource-feature-footer-date-only{
  justify-content:flex-start;
  margin-top:auto;
}

.resource-feature-read{
  color:#fff;
  text-decoration:none;
  font-weight:900;
}

.resource-feature-read:hover{
  text-decoration:underline;
}

.resource-list{
  display:grid;
  gap:10px;
}

.resource-item{
  padding:16px;
  border:1px solid var(--line);
  border-radius:14px;
  background:var(--surface);
}

.resource-item small{
  color:var(--primary);
  font-weight:900;
}

.resource-item p{
  margin:5px 0 0;
  color:var(--muted);
  font-size:12px;
}

.library-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  margin-top:28px;
}

.library-card{
  padding:22px;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--surface);
  text-decoration:none;
  box-shadow:var(--shadow);
}

.library-card small{
  color:var(--primary);
  font-weight:900;
}

.library-card p{
  color:var(--muted);
  font-size:12px;
}

/* ============================================================
   FILTERS / FORMS
============================================================ */

.filter-layout{
  display:grid;
  grid-template-columns:230px 1fr;
  gap:24px;
  margin-top:34px;
}

.filter-panel{
  padding:20px;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--surface);
  height:max-content;
}

.filter-panel h4{
  margin:12px 0 8px;
  font-size:13px;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:.08em;
}

.filter-panel a{
  display:block;
  text-decoration:none;
  font-weight:800;
  margin:7px 0;
}

.sql-box{
  margin-top:26px;
  padding:20px;
  border-left:4px solid var(--mint);
  background:var(--surface2);
  border-radius:0 14px 14px 0;
}

.sql-box strong{display:block}
.sql-box p{margin:6px 0 0;color:var(--muted)}

.form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-top:23px;
}

.field{
  display:flex;
  flex-direction:column;
  gap:7px;
}

.field.full{grid-column:1/-1}

label{
  font-size:12px;
  font-weight:800;
}

input,select,textarea{
  width:100%;
  padding:13px;
  color:var(--text);
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:9px;
}

textarea{min-height:110px}

.check{
  display:flex;
  gap:9px;
  align-items:flex-start;
  color:var(--muted);
  font-size:13px;
}

.check input{
  width:auto;
  margin-top:3px;
}

.form-message{
  display:none;
  margin-top:18px;
  border-radius:11px;
  padding:16px;
}

.form-message.show{display:block}

.success{
  border:1px solid rgba(67,217,163,.45);
  background:rgba(67,217,163,.10);
}

/* ============================================================
   CTA / FOOTER
============================================================ */

.cta{
  padding:68px 0;
  color:#fff;
  background:var(--midnight);
}

.cta p{
  max-width:830px;
  color:#B8C5D4;
  font-size:17px;
}

footer{
  padding:50px 0 25px;
  color:#95A5B6;
  background:#050B13;
}

.footer-grid{
  display:grid;
  grid-template-columns:1.6fr repeat(4,1fr);
  gap:27px;
}

footer h4{color:#fff}

footer a{
  display:block;
  margin:6px 0;
  text-decoration:none;
  font-size:12px;
}

.footer-bottom{
  display:flex;
  justify-content:space-between;
  gap:20px;
  margin-top:32px;
  padding-top:20px;
  border-top:1px solid #1D2B3A;
  font-size:11px;
}

/* ============================================================
   DARK MODE READABILITY
============================================================ */

html[data-theme="dark"] body,
html[data-theme="dark"] main{
  color:var(--ia-text);
}

html[data-theme="dark"] main :where(
  h1,h2,h3,h4,h5,h6,
  strong,b,legend,label
){
  color:#F7F9FC!important;
}

html[data-theme="dark"] main :where(
  p,li,dd,dt,blockquote,
  .intro,.lead,.muted,
  .card p,.resource-item p,
  .library-card p,.proofpill
){
  color:#B8C5D4!important;
}

html[data-theme="dark"] main :where(
  .kicker,.micro,
  .resource-item small,
  .library-card small,
  .ia-side-label
){
  color:var(--primary)!important;
}

html[data-theme="dark"] main :where(
  .card,.answer,.resource-item,.library-card,
  .pricing-card,.flow-card
){
  background:var(--surface)!important;
  border-color:var(--line)!important;
  color:#F7F9FC!important;
}

html[data-theme="dark"] main :where(input,select,textarea){
  background:#0D1B2A!important;
  color:#F7F9FC!important;
  border-color:#29445A!important;
}

html[data-theme="dark"] main :where(input,textarea)::placeholder{
  color:#7F93A7!important;
}

html[data-theme="dark"] main select option{
  background:#0D1B2A;
  color:#F7F9FC;
}

html[data-theme="dark"] main .btn-primary{
  color:#08111F!important;
}

html[data-theme="dark"] main .btn-ghost{
  color:#F7F9FC!important;
}

html[data-theme="dark"] main [style*="color:#08111F"],
html[data-theme="dark"] main [style*="color: #08111F"],
html[data-theme="dark"] main [style*="color:#101828"],
html[data-theme="dark"] main [style*="color: #101828"]{
  color:#F7F9FC!important;
}

html[data-theme="dark"] .topbar{
  background:var(--ia-header-bg)!important;
  border-color:var(--ia-border)!important;
}

html[data-theme="dark"] .topbar .ia-public-nav > a,
html[data-theme="dark"] .topbar .navlinks > a,
html[data-theme="dark"] .topbar .ia-resource-trigger{
  color:var(--ia-text)!important;
}

html[data-theme="dark"] .route-strip,
html[data-theme="dark"] .quick-route-strip,
html[data-theme="dark"] .header-route-strip{
  background:var(--ia-nav-bg)!important;
}

/* ============================================================
   CORPORATE MODE BUTTONS
============================================================ */

html[data-theme="corporate"] .btn-ghost,
html[data-theme="corporate"] .btn-secondary,
html[data-theme="corporate"] .btn-outline,
html[data-theme="corporate"] a.btn-ghost,
html[data-theme="corporate"] a.btn-secondary,
html[data-theme="corporate"] a.btn-outline,
html[data-theme="corporate"] .cta .btn-ghost,
html[data-theme="corporate"] .actions .btn-ghost,
html[data-theme="corporate"] .actions .btn-secondary,
html[data-theme="corporate"] .resource-actions .btn-ghost,
html[data-theme="corporate"] .resource-actions .btn-secondary{
  background:#FFFFFF!important;
  color:#08111F!important;
  border:1px solid #FFFFFF!important;
  box-shadow:none!important;
}

html[data-theme="corporate"] .btn-ghost:hover,
html[data-theme="corporate"] .btn-secondary:hover,
html[data-theme="corporate"] .btn-outline:hover,
html[data-theme="corporate"] a.btn-ghost:hover,
html[data-theme="corporate"] a.btn-secondary:hover,
html[data-theme="corporate"] a.btn-outline:hover{
  background:#F4F7FB!important;
  color:#08111F!important;
  border-color:#F4F7FB!important;
}

html[data-theme="corporate"] .btn-primary{
  color:#FFFFFF!important;
}

/* ============================================================
   RESPONSIVE HEADER
============================================================ */

.ia-mobile-nav-toggle{
  display:none;
}

@media (min-width:1241px) and (max-width:1500px){

  .topbar .shell.nav{
    gap:10px;
    padding-left:18px;
    padding-right:18px;
  }

  .topbar .ia-logo-image{
    width:124px;
    max-height:46px;
  }

  .topbar .ia-public-nav,
  .topbar .navlinks{
    gap:11px;
    justify-content:center;
  }

  .topbar .ia-public-nav > a,
  .topbar .navlinks > a,
  .topbar .ia-resource-trigger{
    font-size:11px;
  }

  .ia-global-search{
    width:180px;
    min-width:155px;
    max-width:190px;
    flex-basis:180px;
  }

  .topbar .theme-switch button,
  .topbar .ia-theme-switcher button{
    padding:0 8px;
    font-size:10px;
  }

  .topbar > .shell > .btn-primary,
  .topbar .ia-demo-btn{
    min-height:40px;
    padding-left:14px;
    padding-right:14px;
    font-size:12px;
  }
}

/* Collapse before header overlap */
@media (max-width:1560px){

  .topbar .shell.nav{
    min-height:70px;
    gap:10px;
    padding-left:20px;
    padding-right:20px;
  }

  .topbar .ia-public-nav,
  .topbar .navlinks{
    display:none!important;
    position:absolute;
    left:0;
    right:0;
    top:100%;
    z-index:1500;
    max-height:calc(100vh - 70px);
    overflow-y:auto;
    padding:18px 24px 24px;
    flex-direction:column;
    align-items:stretch;
    gap:0!important;
    white-space:normal!important;
    background:var(--surface)!important;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    box-shadow:0 20px 45px rgba(8,17,31,.12);
  }

  .topbar .ia-public-nav.open,
  .topbar .navlinks.open{
    display:flex!important;
  }

  .topbar .ia-public-nav > a,
  .topbar .navlinks > a,
  .topbar .ia-resource-trigger{
    width:100%;
    min-height:44px;
    display:flex;
    align-items:center;
    padding:10px 2px!important;
    border-bottom:1px solid color-mix(in srgb,var(--line) 75%,transparent);
    color:var(--text)!important;
    opacity:1!important;
    font-size:14px;
  }

  .topbar .ia-resource-dropdown{
    display:block!important;
    width:100%;
  }

  .topbar .ia-resource-trigger{
    justify-content:space-between;
  }

  .topbar .ia-resource-menu{
    position:static!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    width:100%!important;
    max-height:none!important;
    margin:8px 0 10px;
    padding:18px!important;
    display:none;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    box-shadow:none!important;
    border-radius:12px!important;
  }

  .topbar .ia-resource-dropdown.open .ia-resource-menu{
    display:block!important;
  }

  .topbar .ia-resource-mega-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:24px!important;
  }

  .topbar .ia-mobile-nav-toggle{
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0 13px;
    border:1px solid var(--ia-border);
    border-radius:10px;
    background:var(--ia-surface);
    color:var(--ia-text);
    font-weight:800;
    cursor:pointer;
    flex:0 0 auto;
  }

  .ia-global-search{
    margin-left:auto;
  }
}

@media (max-width:1080px){

  .hero-grid,
  .resource-stack,
  .filter-layout{
    grid-template-columns:1fr;
  }

  .pricing-grid,
  .pricing-grid.signal{
    grid-template-columns:1fr 1fr;
  }

  .flow{
    grid-template-columns:repeat(2,1fr);
  }

  .footer-grid{
    grid-template-columns:repeat(3,1fr);
  }

  .library-grid{
    grid-template-columns:1fr 1fr;
  }

  .topbar .theme-switch,
  .topbar .ia-theme-switch,
  .topbar .ia-theme-switcher{
    display:none!important;
  }
}

@media (max-width:768px){

  .shell{
    padding-left:18px;
    padding-right:18px;
  }

  .topbar .shell.nav{
    min-height:64px;
    gap:8px;
    padding-left:14px;
    padding-right:14px;
  }

  .topbar .ia-logo-image{
    width:112px;
    max-height:42px;
  }

  .ia-global-search{
    flex:1 1 auto;
    width:auto;
    min-width:0;
    max-width:none;
  }

  .ia-global-search input,
  .ia-search-input{
    height:40px;
  }

  .topbar > .shell > .btn-primary,
  .topbar .ia-demo-btn{
    min-height:38px;
    padding:0 11px;
    border-radius:9px;
    font-size:12px;
  }

  .topbar .ia-mobile-nav-toggle{
    min-height:38px;
    padding:0 11px;
    font-size:12px;
  }

  .topbar .ia-public-nav,
  .topbar .navlinks{
    top:100%;
    max-height:calc(100vh - 64px);
    padding:14px 18px 22px;
  }

  .topbar .ia-resource-mega-grid{
    grid-template-columns:1fr!important;
    gap:22px!important;
  }

  .topbar .ia-resource-menu{
    padding:16px!important;
  }

  .route-inner,
  .ia-preview-route-inner{
    padding-left:14px!important;
    padding-right:14px!important;
  }

  .grid,
  .grid.two,
  .pricing-grid,
  .pricing-grid.signal,
  .form-grid,
  .library-grid{
    grid-template-columns:1fr;
  }

  .field.full{
    grid-column:auto;
  }

  .flow{
    grid-template-columns:1fr;
  }

  .footer-grid{
    grid-template-columns:1fr 1fr;
  }

  .mega{
    right:-60px;
    width:94vw;
  }

  .mega-columns{
    grid-template-columns:1fr 1fr;
  }

  .hero,
  .section,
  .cta{
    overflow:hidden;
  }

  .hero h1,
  .ia-res-hero h1,
  .ia-detail-hero h1{
    overflow-wrap:anywhere;
  }

  .actions{
    flex-wrap:wrap;
  }

  .actions .btn{
    max-width:100%;
  }
}

@media (max-width:560px){
  .resource-feature.is-cms-feature h2{
    font-size:22px;
  }

  .resource-feature-content{
    padding:20px;
  }

  .resource-feature-footer{
    align-items:flex-start;
    flex-direction:column;
  }
}

@media (max-width:430px){

  .topbar .shell.nav{
    gap:6px;
    padding-left:10px;
    padding-right:10px;
  }

  .topbar .ia-logo-image{
    width:96px;
  }

  .ia-global-search{
    max-width:150px;
  }

  .topbar > .shell > .btn-primary,
  .topbar .ia-demo-btn{
    display:none;
  }

  .topbar .ia-mobile-nav-toggle{
    min-height:36px;
    padding:0 9px;
    font-size:11px;
  }

  .footer-grid{
    grid-template-columns:1fr!important;
  }

  .footer-bottom{
    flex-direction:column;
    align-items:flex-start;
    gap:8px;
  }
}

/* ============================================================
   MEDIA SAFETY
============================================================ */

main img,
main video,
main iframe,
main svg{
  max-width:100%;
}

main iframe,
main video{
  width:100%;
}

/* ============================================================
   CONTENT TYPOGRAPHY LOCK
============================================================ */

main:not(.sa-experience) h1,
main:not(.sa-experience) h2,
main:not(.sa-experience) h3,
main:not(.sa-experience) h4{
  letter-spacing:-.045em;
}

main:not(.sa-experience) h1{
  max-width:1050px;
  margin:0 0 22px;
  font-size:clamp(43px,5.7vw,77px);
  line-height:.98;
  font-weight:700;
}

main:not(.sa-experience) h2{
  margin:0 0 17px;
  font-size:clamp(31px,4vw,52px);
  line-height:1.04;
  font-weight:700;
}

main:not(.sa-experience) h3{
  margin:0 0 10px;
  font-size:21px;
  line-height:1.16;
  font-weight:700;
}

main:not(.sa-experience) .eyebrow,
main:not(.sa-experience) .kicker,
main:not(.sa-experience) .micro{
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:10px;
  font-weight:900;
}

main:not(.sa-experience) .lead{
  max-width:860px;
  margin:0;
  font-size:20px;
  line-height:1.55;
}

main:not(.sa-experience) .intro{
  max-width:880px;
  margin:0;
  font-size:17px;
}

main:not(.sa-experience) .btn{
  font-weight:850;
}

main:not(.sa-experience) strong,
main:not(.sa-experience) b{
  font-weight:700;
}

/* ============================================================
   FORM ANCHOR
============================================================ */

#demo-form{
  scroll-margin-top:140px!important;
}

@media(max-width:768px){
  #demo-form{
    scroll-margin-top:100px!important;
  }
}

/* ============================================================
   ADMIN ISOLATION
============================================================ */

.admin-safe{
  all:initial;
}

/* ============================================================
   REDUCED MOTION
============================================================ */

@media(prefers-reduced-motion:reduce){
  *,
  *::before,
  *::after{
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    transition-duration:.001ms!important;
    scroll-behavior:auto!important;
  }

  .ia-demo-btn::before,
  .topbar > .shell > .btn-primary::before,
  .topbar a[href*="book-demo"]::before{
    animation:none!important;
  }
}


/* ============================================================
   FINAL COMPACT HEADER OVERRIDES
   Full nav retained. No desktop Menu.
============================================================ */

.topbar .shell.nav{
  width:100%;
  max-width:1680px;
  min-height:72px;
  padding-left:22px;
  padding-right:22px;
  gap:13px;
  flex-wrap:nowrap;
}

.topbar .ia-logo{
  flex:0 0 auto;
}

.topbar .ia-logo-image{
  width:136px;
  max-width:136px;
}

.topbar .ia-public-nav,
.topbar .navlinks{
  display:flex!important;
  position:static!important;
  flex:1 1 auto;
  min-width:0;
  align-items:center;
  gap:14px;
  margin-left:auto;
  padding:0!important;
  white-space:nowrap;
  overflow:visible!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

.topbar .ia-public-nav > a,
.topbar .navlinks > a,
.topbar .ia-resource-trigger{
  flex:0 0 auto;
  width:auto!important;
  min-height:auto!important;
  padding:17px 0!important;
  border:0!important;
  font-size:12px;
}

.ia-mobile-nav-toggle{
  display:none!important;
}

/* Header search: icon only */
.ia-header-search{
  flex:0 0 auto;
  margin-left:2px;
}

.ia-search-trigger,
.ia-theme-trigger{
  width:40px;
  height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 40px;
  padding:0;
  border:1px solid var(--ia-border);
  border-radius:11px;
  background:var(--ia-surface);
  color:var(--ia-text);
  cursor:pointer;
  transition:
    transform .18s ease,
    border-color .18s ease,
    background .18s ease,
    box-shadow .18s ease;
}

.ia-search-trigger:hover,
.ia-theme-trigger:hover{
  transform:translateY(-1px);
  border-color:var(--ia-primary);
  background:var(--ia-surface-2);
  box-shadow:0 7px 18px color-mix(in srgb,var(--ia-primary) 12%,transparent);
}

/* Full-page search overlay */
body.ia-search-open{
  overflow:hidden;
}

.ia-search-overlay{
  position:fixed;
  inset:0;
  z-index:5000;
  display:none;
}

.ia-search-overlay.is-open{
  display:block;
}

.ia-search-overlay-backdrop{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  padding:0;
  border:0;
  background:rgba(3,9,16,.72);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  cursor:default;
}

.ia-search-overlay-panel{
  position:relative;
  z-index:1;
  width:min(920px,calc(100vw - 40px));
  max-height:calc(100vh - 70px);
  overflow:auto;
  margin:35px auto;
  padding:28px;
  border:1px solid var(--ia-border);
  border-radius:24px;
  background:var(--ia-surface);
  color:var(--ia-text);
  box-shadow:0 34px 110px rgba(0,0,0,.32);
}

.ia-search-overlay-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
  margin-bottom:22px;
}

.ia-search-overlay-kicker{
  color:var(--ia-primary);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:10px;
  font-weight:900;
}

.ia-search-overlay-head h2{
  margin:5px 0 0;
  font-size:clamp(30px,4vw,48px);
  line-height:1.04;
}

.ia-search-overlay-close{
  width:42px;
  height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 42px;
  padding:0;
  border:1px solid var(--ia-border);
  border-radius:12px;
  background:var(--ia-surface-2);
  color:var(--ia-text);
  font-size:25px;
  cursor:pointer;
}

.ia-global-search-overlay{
  position:relative;
  width:100%;
  max-width:none;
  min-width:0;
  flex:none;
}

.ia-global-search-overlay .ia-global-search-form{
  position:relative;
}

.ia-global-search-overlay .ia-global-search-input{
  width:100%;
  height:62px;
  padding:0 48px 0 53px;
  border:1px solid var(--ia-border);
  border-radius:16px;
  background:var(--ia-search-bg);
  color:var(--ia-search-text);
  font-size:18px;
}

.ia-global-search-overlay .ia-global-search-icon{
  position:absolute;
  left:18px;
  top:50%;
  z-index:2;
  transform:translateY(-50%);
  color:var(--ia-muted);
  pointer-events:none;
}

.ia-global-search-overlay .ia-global-search-clear{
  position:absolute;
  right:15px;
  top:50%;
  z-index:2;
  transform:translateY(-50%);
  border:0;
  background:transparent;
  color:var(--ia-muted);
  font-size:22px;
  cursor:pointer;
}

.ia-global-search-overlay .ia-global-search-panel{
  position:static;
  width:100%;
  max-height:52vh;
  overflow:auto;
  margin-top:12px;
  padding:8px;
  border:1px solid var(--ia-border);
  border-radius:16px;
  background:var(--ia-surface);
  box-shadow:none;
}

.ia-search-overlay-help{
  margin-top:12px;
  color:var(--ia-muted);
  font-size:11px;
}

/* One compact theme button */
.ia-theme-compact{
  position:relative;
  flex:0 0 auto;
}

.ia-theme-popover{
  position:absolute;
  top:calc(100% + 10px);
  right:0;
  z-index:1800;
  display:none;
  width:184px;
  padding:7px;
  border:1px solid var(--ia-border);
  border-radius:14px;
  background:var(--ia-surface);
  color:var(--ia-text);
  box-shadow:0 20px 55px rgba(8,17,31,.18);
}

.ia-theme-compact.is-open .ia-theme-popover{
  display:block;
}

.ia-theme-popover button{
  width:100%;
  min-height:42px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:0 11px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:var(--ia-text);
  text-align:left;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}

.ia-theme-popover button:hover,
.ia-theme-popover button.active,
.ia-theme-popover button[aria-checked="true"]{
  background:var(--ia-surface-2);
  color:var(--ia-primary);
}

/* Smaller CTA */
.ia-demo-btn,
.topbar > .shell > .btn-primary,
.topbar a[href*="book-demo"]{
  min-height:40px!important;
  padding:0 14px!important;
  border-radius:10px!important;
  font-size:12px!important;
  white-space:nowrap;
}

/* Preserve complete nav at common laptop widths by tightening spacing */
@media (min-width:1101px) and (max-width:1500px){
  .topbar .shell.nav{
    gap:9px;
    padding-left:14px;
    padding-right:14px;
  }

  .topbar .ia-logo-image{
    width:118px;
  }

  .topbar .ia-public-nav,
  .topbar .navlinks{
    gap:9px;
  }

  .topbar .ia-public-nav > a,
  .topbar .navlinks > a,
  .topbar .ia-resource-trigger{
    font-size:10.5px;
  }

  .ia-search-trigger,
  .ia-theme-trigger{
    width:36px;
    height:36px;
    flex-basis:36px;
  }

  .ia-demo-btn,
  .topbar > .shell > .btn-primary,
  .topbar a[href*="book-demo"]{
    min-height:36px!important;
    padding:0 10px!important;
    font-size:11px!important;
  }
}

/* Narrow screens: retain navigation as horizontal strip, still no Menu */
@media (max-width:1100px){
  .topbar .shell.nav{
    flex-wrap:wrap!important;
    gap:8px;
    padding-top:8px;
    padding-bottom:8px;
  }

  .topbar .ia-public-nav,
  .topbar .navlinks{
    order:2;
    width:100%;
    flex:1 0 100%;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    gap:12px;
    padding:4px 0!important;
    scrollbar-width:thin;
  }

  .topbar .ia-public-nav > a,
  .topbar .navlinks > a,
  .topbar .ia-resource-trigger{
    font-size:11px;
    padding:7px 0!important;
  }
}

@media (max-width:640px){
  .topbar .ia-logo-image{
    width:98px;
  }

  .ia-search-trigger,
  .ia-theme-trigger{
    width:36px;
    height:36px;
    flex-basis:36px;
  }

  .ia-demo-btn,
  .topbar > .shell > .btn-primary,
  .topbar a[href*="book-demo"]{
    min-height:36px!important;
    padding:0 9px!important;
    font-size:10.5px!important;
  }

  .ia-search-overlay-panel{
    width:calc(100vw - 20px);
    max-height:calc(100vh - 20px);
    margin:10px auto;
    padding:18px;
    border-radius:18px;
  }

  .ia-search-overlay-head h2{
    font-size:28px;
  }

  .ia-global-search-overlay .ia-global-search-input{
    height:54px;
    font-size:15px;
  }
}


/* ============================================================
   HOTFIX 2026-08-21
   Prevent legacy responsive rules from stacking desktop nav
============================================================ */

/* Desktop / laptop: always one horizontal header row */
@media (min-width:1101px){

  .topbar .shell.nav{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-start!important;
    min-height:72px!important;
    height:auto!important;
  }

  .topbar .ia-public-nav,
  .topbar .navlinks{
    display:flex!important;
    position:static!important;

    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-start!important;

    flex:1 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-height:none!important;

    margin-left:auto!important;
    padding:0!important;

    overflow:visible!important;

    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }

  .topbar .ia-public-nav > a,
  .topbar .navlinks > a,
  .topbar .ia-resource-dropdown,
  .topbar .ia-resource-trigger{
    display:inline-flex!important;
    flex:0 0 auto!important;

    width:auto!important;
    min-width:auto!important;
    min-height:auto!important;

    align-items:center!important;

    margin:0!important;
    padding:17px 0!important;

    border:0!important;
    white-space:nowrap!important;
  }

  .topbar .ia-resource-dropdown{
    position:relative!important;
  }

  /* Legacy mobile-menu state must never affect desktop */
  .topbar .ia-public-nav.open,
  .topbar .navlinks.open{
    display:flex!important;
    flex-direction:row!important;
  }

  .ia-mobile-nav-toggle{
    display:none!important;
  }

  /* Compact right-side controls */
  .ia-header-search,
  .ia-theme-compact,
  .topbar .ia-demo-btn,
  .topbar a[href*="book-demo"]{
    flex:0 0 auto!important;
  }
}


/* Mid-size laptops: tighten only, never stack */
@media (min-width:1101px) and (max-width:1500px){

  .topbar .shell.nav{
    gap:8px!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }

  .topbar .ia-logo-image{
    width:112px!important;
    max-width:112px!important;
  }

  .topbar .ia-public-nav,
  .topbar .navlinks{
    gap:8px!important;
  }

  .topbar .ia-public-nav > a,
  .topbar .navlinks > a,
  .topbar .ia-resource-trigger{
    font-size:10px!important;
    letter-spacing:-.01em!important;
  }

  .ia-search-trigger,
  .ia-theme-trigger{
    width:34px!important;
    height:34px!important;
    flex-basis:34px!important;
  }

  .ia-demo-btn,
  .topbar > .shell > .btn-primary,
  .topbar a[href*="book-demo"]{
    min-height:34px!important;
    padding:0 10px!important;
    font-size:10.5px!important;
  }
}


/* Tablet/mobile: no Menu button; keep nav as horizontal strip */
@media (max-width:1100px){

  .topbar .shell.nav{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:wrap!important;
    align-items:center!important;

    min-height:64px!important;
    padding:8px 12px!important;
    gap:8px!important;
  }

  .topbar .ia-public-nav,
  .topbar .navlinks{
    display:flex!important;
    position:static!important;

    order:2!important;

    flex:1 0 100%!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;

    width:100%!important;
    min-width:0!important;
    max-height:none!important;

    margin:0!important;
    padding:4px 0 5px!important;

    overflow-x:auto!important;
    overflow-y:hidden!important;

    white-space:nowrap!important;

    background:transparent!important;
    border:0!important;
    box-shadow:none!important;

    scrollbar-width:thin;
    -webkit-overflow-scrolling:touch;
  }

  .topbar .ia-public-nav > a,
  .topbar .navlinks > a,
  .topbar .ia-resource-dropdown,
  .topbar .ia-resource-trigger{
    display:inline-flex!important;
    flex:0 0 auto!important;

    width:auto!important;
    min-width:auto!important;

    margin:0!important;
    padding:7px 0!important;

    border:0!important;
  }

  .topbar .ia-resource-dropdown{
    position:relative!important;
  }

  .ia-mobile-nav-toggle{
    display:none!important;
  }
}


/* Very small phones: keep primary controls usable */
@media (max-width:560px){

  .topbar .ia-logo-image{
    width:92px!important;
  }

  .ia-search-trigger,
  .ia-theme-trigger{
    width:34px!important;
    height:34px!important;
    flex-basis:34px!important;
  }

  .topbar .ia-demo-btn,
  .topbar a[href*="book-demo"]{
    min-height:34px!important;
    padding:0 8px!important;
    font-size:10px!important;
  }
}

/* ============================================================
   HEADER LAYOUT FINAL AUTHORITY V2
   Purpose:
   - isolates header from Bootstrap .nav
   - prevents resource CSS from collapsing desktop navigation
   - guarantees visible spacing between primary links
   - keeps search/theme/demo grouped on the right
============================================================ */

.topbar{
  position:sticky;
  top:0;
  z-index:1000;
  width:100%;
}

.topbar .ia-header-row{
  width:100%;
  max-width:1680px;
  min-height:76px;
  margin:0 auto;
  padding:0 30px;

  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;

  column-gap:22px!important;
}

.topbar .ia-logo{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  margin:0!important;
}

.topbar .ia-logo-image{
  display:block!important;
  width:132px!important;
  max-width:132px!important;
  height:auto!important;
}


/* ------------------------------------------------------------
   PRIMARY NAV — DESKTOP
------------------------------------------------------------ */

.topbar .ia-header-row > .ia-public-nav{
  position:static!important;

  display:flex!important;
  flex:1 1 auto!important;
  justify-content: center !important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;

  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  max-height:none!important;

  margin:0!important;
  padding:0!important;

  overflow:visible!important;
  white-space:nowrap!important;

  background:transparent!important;
  border:0!important;
  box-shadow:none!important;

  gap:0!important;
}


/*
 * Use explicit sibling margin rather than relying only on flex-gap.
 * This makes spacing immune to legacy Bootstrap/resource overrides.
 */
.topbar .ia-header-row > .ia-public-nav > *{
  flex:0 0 auto!important;
  margin:0!important;
}

.topbar .ia-header-row > .ia-public-nav > * + *{
  margin-left:18px!important;
}

.topbar .ia-header-row > .ia-public-nav > a,
.topbar .ia-header-row > .ia-public-nav > .ia-resource-dropdown > .ia-resource-trigger{
  display:inline-flex!important;
  align-items:center!important;

  width:auto!important;
  min-width:0!important;
  min-height:auto!important;

  padding:20px 0!important;

  color:var(--navtext)!important;
  background:transparent!important;
  border:0!important;

  text-decoration:none!important;
  white-space:nowrap!important;

  font-size:12.5px!important;
  font-weight:500!important;
  line-height:1!important;

  opacity:.82!important;
}

.topbar .ia-header-row > .ia-public-nav > a:hover,
.topbar .ia-header-row > .ia-public-nav > .ia-resource-dropdown > .ia-resource-trigger:hover{
  color:var(--primary)!important;
  opacity:1!important;
}

.topbar .ia-header-row .ia-resource-dropdown{
  display:flex!important;
  align-items:center!important;
  position:static!important;
}

.topbar .ia-header-row .ia-resource-trigger svg{
  width:12px!important;
  height:12px!important;
  flex:0 0 12px!important;
}


/* ------------------------------------------------------------
   RIGHT-SIDE HEADER ACTIONS
------------------------------------------------------------ */

.topbar .ia-header-actions{
  display:flex!important;
  flex:0 0 auto!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;

  gap:10px!important;
  margin-left:auto!important;

  white-space:nowrap!important;
}

.topbar .ia-header-search,
.topbar .ia-theme-compact{
  flex:0 0 auto!important;
  margin:0!important;
}

.topbar .ia-search-trigger,
.topbar .ia-theme-trigger{
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  min-height:42px!important;

  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;

  padding:0!important;
  margin:0!important;

  border:1px solid var(--ia-border)!important;
  border-radius:12px!important;
  background:var(--ia-surface)!important;
  color:var(--ia-text)!important;
}

.topbar .ia-demo-cta{
  min-height:42px!important;
  height:42px!important;

  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;

  padding:0 17px!important;
  margin:0!important;

  border-radius:11px!important;

  font-size:12px!important;
  font-weight:800!important;
  line-height:1!important;

  white-space:nowrap!important;
}


/* ------------------------------------------------------------
   SEARCH OVERLAY MUST NOT AFFECT FLEX WIDTH
------------------------------------------------------------ */

.topbar .ia-search-overlay{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100vh!important;
  z-index:5000!important;
}


/* ------------------------------------------------------------
   DESKTOP WIDTH TUNING
------------------------------------------------------------ */

@media (min-width:1241px) and (max-width:1530px){

  .topbar .ia-header-row{
    padding-left:18px!important;
    padding-right:18px!important;
    column-gap:14px!important;
  }

  .topbar .ia-logo-image{
    width:112px!important;
    max-width:112px!important;
  }

  .topbar .ia-header-row > .ia-public-nav > * + *{
    margin-left:11px!important;
  }

  .topbar .ia-header-row > .ia-public-nav > a,
  .topbar .ia-header-row > .ia-public-nav > .ia-resource-dropdown > .ia-resource-trigger{
    font-size:10.5px!important;
  }

  .topbar .ia-header-actions{
    gap:7px!important;
  }

  .topbar .ia-search-trigger,
  .topbar .ia-theme-trigger{
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    min-height:36px!important;
  }

  .topbar .ia-demo-cta{
    height:36px!important;
    min-height:36px!important;
    padding:0 11px!important;
    font-size:10.5px!important;
  }
}


/* ------------------------------------------------------------
   TABLET / SMALL LAPTOP
   No hamburger: nav becomes a horizontal secondary strip.
------------------------------------------------------------ */

@media (max-width:1240px){

  .topbar .ia-header-row{
    min-height:64px!important;
    padding:8px 14px!important;

    flex-wrap:wrap!important;
    row-gap:7px!important;
    column-gap:8px!important;
  }

  .topbar .ia-logo-image{
    width:104px!important;
    max-width:104px!important;
  }

  .topbar .ia-header-actions{
    margin-left:auto!important;
  }

  .topbar .ia-header-row > .ia-public-nav{
    display:flex!important;
    position:static!important;

    order:3!important;
    flex:1 0 100%!important;

    width:100%!important;
    min-width:0!important;

    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;

    overflow-x:auto!important;
    overflow-y:hidden!important;

    padding:3px 0 5px!important;
    margin:0!important;

    border:0!important;
    background:transparent!important;

    scrollbar-width:thin;
    -webkit-overflow-scrolling:touch;
  }

  .topbar .ia-header-row > .ia-public-nav > * + *{
    margin-left:16px!important;
  }

  .topbar .ia-header-row > .ia-public-nav > a,
  .topbar .ia-header-row > .ia-public-nav > .ia-resource-dropdown > .ia-resource-trigger{
    padding:8px 0!important;
    font-size:11px!important;
  }

  .topbar .ia-header-row .ia-resource-dropdown{
    display:flex!important;
    position:relative!important;
  }

  .ia-mobile-nav-toggle{
    display:none!important;
  }
}


/* ------------------------------------------------------------
   PHONE
------------------------------------------------------------ */

@media (max-width:620px){

  .topbar .ia-header-row{
    padding-left:10px!important;
    padding-right:10px!important;
  }

  .topbar .ia-logo-image{
    width:92px!important;
    max-width:92px!important;
  }

  .topbar .ia-header-actions{
    gap:5px!important;
  }

  .topbar .ia-search-trigger,
  .topbar .ia-theme-trigger{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    min-height:34px!important;
  }

  .topbar .ia-demo-cta{
    height:34px!important;
    min-height:34px!important;
    padding:0 9px!important;
    font-size:9.5px!important;
  }

  .topbar .ia-header-row > .ia-public-nav > * + *{
    margin-left:14px!important;
  }
}

/* ============================================================
   POLISHED HEADER + GLOBAL SEARCH V3
   Final visual layer only. Existing search functionality kept.
============================================================ */

/* ------------------------------------------------------------
   HEADER — clean enterprise proportions
------------------------------------------------------------ */

.topbar{
  background:var(--ia-header-bg)!important;
  border-bottom:1px solid var(--ia-border)!important;
}

.topbar .ia-header-row{
  max-width:1600px!important;
  min-height:78px!important;
  padding:0 34px!important;
  column-gap:24px!important;
}

.topbar .ia-logo-image{
  width:138px!important;
  max-width:138px!important;
}

.topbar .ia-header-row > .ia-public-nav{
  gap:0!important;
}

.topbar .ia-header-row > .ia-public-nav > * + *{
  margin-left:22px!important;
}

.topbar .ia-header-row > .ia-public-nav > a,
.topbar .ia-header-row > .ia-public-nav > .ia-resource-dropdown > .ia-resource-trigger{
  padding:23px 0!important;
  font-size:13px!important;
  font-weight:500!important;
  letter-spacing:-.01em!important;
  opacity:.78!important;
}

.topbar .ia-header-row > .ia-public-nav > a:hover,
.topbar .ia-header-row > .ia-public-nav > .ia-resource-dropdown > .ia-resource-trigger:hover{
  color:var(--ia-primary)!important;
  opacity:1!important;
}

.topbar .ia-header-actions{
  gap:12px!important;
}

.topbar .ia-search-trigger,
.topbar .ia-theme-trigger{
  width:46px!important;
  height:46px!important;
  min-width:46px!important;
  min-height:46px!important;
  border-radius:13px!important;
}

.topbar .ia-demo-cta{
  height:46px!important;
  min-height:46px!important;
  padding:0 20px!important;
  border-radius:12px!important;
  font-size:13px!important;
}


/* ------------------------------------------------------------
   SEARCH OVERLAY — professional modal
------------------------------------------------------------ */

.ia-search-overlay{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}

.ia-search-overlay-backdrop{
  background:rgba(5,13,24,.70)!important;
}

.ia-search-overlay-panel{
  width:min(920px,calc(100vw - 42px))!important;
  max-height:calc(100vh - 56px)!important;
  margin:28px auto!important;

  padding:30px!important;

  border:1px solid var(--ia-border)!important;
  border-radius:26px!important;

  background:var(--ia-surface)!important;
  color:var(--ia-text)!important;

  box-shadow:
    0 40px 120px rgba(0,0,0,.32),
    0 1px 0 rgba(255,255,255,.04)!important;
}

.ia-search-overlay-head{
  margin-bottom:24px!important;
}

.ia-search-overlay-kicker{
  margin-bottom:7px!important;
  color:var(--ia-primary)!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
}

.ia-search-overlay-head h2{
  max-width:760px!important;
  margin:0!important;

  color:var(--ia-text)!important;

  font-size:clamp(31px,4vw,48px)!important;
  font-weight:800!important;
  line-height:1.04!important;
  letter-spacing:-.045em!important;
}

.ia-search-overlay-close{
  width:48px!important;
  height:48px!important;
  flex:0 0 48px!important;

  border-radius:14px!important;
  border:1px solid var(--ia-border)!important;

  background:var(--ia-surface-2)!important;
  color:var(--ia-text)!important;

  font-size:25px!important;
}


/* ------------------------------------------------------------
   SEARCH INPUT
------------------------------------------------------------ */

.ia-global-search-overlay .ia-global-search-form{
  position:relative!important;
}

.ia-global-search-overlay .ia-global-search-input{
  width:100%!important;
  height:66px!important;

  padding:0 54px 0 58px!important;

  border:1.5px solid var(--ia-border)!important;
  border-radius:17px!important;

  background:var(--ia-search-bg)!important;
  color:var(--ia-search-text)!important;

  font-size:18px!important;
  line-height:1!important;

  outline:none!important;

  transition:
    border-color .18s ease,
    box-shadow .18s ease!important;
}

.ia-global-search-overlay .ia-global-search-input:focus{
  border-color:var(--ia-primary)!important;

  box-shadow:
    0 0 0 4px
    color-mix(in srgb,var(--ia-primary) 13%,transparent)!important;
}

.ia-global-search-overlay .ia-global-search-input::placeholder{
  color:var(--ia-muted)!important;
  opacity:.85!important;
}

/* Hide Chrome/Safari native search clear button.
   We already have our own clear button. */
.ia-global-search-input::-webkit-search-cancel-button,
.ia-global-search-input::-webkit-search-decoration{
  -webkit-appearance:none!important;
  appearance:none!important;
  display:none!important;
}

.ia-global-search-overlay .ia-global-search-icon{
  left:20px!important;
  color:var(--ia-muted)!important;
}

.ia-global-search-overlay .ia-global-search-clear{
  right:18px!important;

  width:32px!important;
  height:32px!important;

  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:0!important;
  border:0!important;
  border-radius:9px!important;

  background:transparent!important;
  color:var(--ia-muted)!important;

  font-size:22px!important;
  line-height:1!important;
}

.ia-global-search-overlay .ia-global-search-clear:hover{
  background:var(--ia-surface-2)!important;
  color:var(--ia-text)!important;
}

.ia-global-search-overlay .ia-global-search-clear[hidden]{
  display:none!important;
}


/* ------------------------------------------------------------
   RESULTS CONTAINER
------------------------------------------------------------ */

.ia-global-search-overlay .ia-global-search-panel{
  position:static!important;

  width:100%!important;
  max-height:500px!important;

  margin-top:14px!important;
  padding:8px!important;

  overflow-y:auto!important;
  overflow-x:hidden!important;

  border:1px solid var(--ia-border)!important;
  border-radius:17px!important;

  background:var(--ia-surface)!important;

  box-shadow:none!important;
}


/*
 * Support both the intended result markup and the older/raw
 * AJAX renderer currently visible in the screenshot.
 */
.ia-global-search-results{
  display:grid!important;
  gap:7px!important;
}

.ia-global-search-results > a,
.ia-global-search-results .ia-search-result,
.ia-global-search-results .ia-global-search-item,
.ia-global-search-results [role="option"]{
  display:block!important;

  width:100%!important;

  padding:14px 15px!important;

  border:1px solid transparent!important;
  border-radius:13px!important;

  background:transparent!important;
  color:var(--ia-text)!important;

  text-decoration:none!important;
  text-align:left!important;

  line-height:1.4!important;

  transition:
    background .14s ease,
    border-color .14s ease,
    transform .14s ease!important;
}

.ia-global-search-results > a:hover,
.ia-global-search-results > a:focus,
.ia-global-search-results .ia-search-result:hover,
.ia-global-search-results .ia-search-result.is-active,
.ia-global-search-results .ia-global-search-item:hover,
.ia-global-search-results [role="option"][aria-selected="true"]{
  background:var(--ia-surface-2)!important;
  border-color:var(--ia-border)!important;
  transform:translateY(-1px)!important;
  outline:none!important;
}


/* Remove raw underlines from every nested link/text element */
.ia-global-search-results a,
.ia-global-search-results a *,
.ia-global-search-results .ia-search-result *,
.ia-global-search-results .ia-global-search-item *{
  text-decoration:none!important;
}


/* Result title */
.ia-search-result-title,
.ia-global-search-item-title,
.ia-global-search-results > a > strong,
.ia-global-search-results > a > b{
  display:block!important;

  margin:0 0 5px!important;

  color:var(--ia-text)!important;

  font-size:14px!important;
  font-weight:800!important;
  line-height:1.35!important;
  letter-spacing:-.015em!important;
}


/* Content type / metadata */
.ia-search-result-meta,
.ia-global-search-item-meta,
.ia-global-search-type{
  display:inline-flex!important;
  align-items:center!important;

  width:max-content!important;

  margin:0 0 6px!important;
  padding:4px 7px!important;

  border-radius:999px!important;

  background:
    color-mix(in srgb,var(--ia-primary) 9%,transparent)!important;

  color:var(--ia-primary)!important;

  font-size:9px!important;
  font-weight:900!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
}


/* Snippet */
.ia-search-result-snippet,
.ia-global-search-item-snippet,
.ia-global-search-snippet{
  display:block!important;

  margin:2px 0 0!important;

  color:var(--ia-muted)!important;

  font-size:12px!important;
  font-weight:400!important;
  line-height:1.5!important;

  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}


/* URL if renderer exposes one */
.ia-global-search-url,
.ia-search-result-url{
  display:block!important;

  margin-top:5px!important;

  color:var(--ia-muted)!important;

  font-size:10px!important;
  opacity:.8!important;

  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}


/*
 * Fallback for current renderer when all content is emitted
 * directly into one anchor with no semantic child classes.
 */
.ia-global-search-results > a{
  font-size:12px!important;
  color:var(--ia-muted)!important;
}

.ia-global-search-results > a::after{
  content:"Open →";
  display:inline-flex;

  margin-top:8px;

  color:var(--ia-primary);

  font-size:10px;
  font-weight:900;
  letter-spacing:.02em;
}


/* Search state */
.ia-global-search-state,
.ia-search-empty,
.ia-search-loading{
  padding:18px!important;

  color:var(--ia-muted)!important;

  font-size:12px!important;
  text-align:center!important;
}


/* ------------------------------------------------------------
   SCROLLBAR
------------------------------------------------------------ */

.ia-global-search-panel{
  scrollbar-width:thin;
  scrollbar-color:var(--ia-border) transparent;
}

.ia-global-search-panel::-webkit-scrollbar{
  width:8px;
}

.ia-global-search-panel::-webkit-scrollbar-track{
  background:transparent;
}

.ia-global-search-panel::-webkit-scrollbar-thumb{
  border-radius:999px;
  background:var(--ia-border);
}


/* ------------------------------------------------------------
   SEARCH HELP
------------------------------------------------------------ */

.ia-search-overlay-help{
  margin-top:14px!important;
  color:var(--ia-muted)!important;
  font-size:11px!important;
}


/* ------------------------------------------------------------
   THEME MENU
------------------------------------------------------------ */

.ia-theme-popover{
  border:1px solid var(--ia-border)!important;
  background:var(--ia-surface)!important;
}

.ia-theme-popover button{
  color:var(--ia-text)!important;
}

.ia-theme-popover button:hover,
.ia-theme-popover button[aria-checked="true"]{
  background:var(--ia-surface-2)!important;
  color:var(--ia-primary)!important;
}


/* ------------------------------------------------------------
   LAPTOP WIDTH
------------------------------------------------------------ */

@media (min-width:1241px) and (max-width:1500px){

  .topbar .ia-header-row{
    padding-left:18px!important;
    padding-right:18px!important;
    column-gap:14px!important;
  }

  .topbar .ia-logo-image{
    width:118px!important;
    max-width:118px!important;
  }

  .topbar .ia-header-row > .ia-public-nav > * + *{
    margin-left:20px!important;
  }

  .topbar .ia-header-row > .ia-public-nav > a,
  .topbar .ia-header-row > .ia-public-nav > .ia-resource-dropdown > .ia-resource-trigger{
    font-size:11px!important;
  }

  .topbar .ia-search-trigger,
  .topbar .ia-theme-trigger{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    min-height:38px!important;
  }

  .topbar .ia-demo-cta{
    min-height:38px!important;
    height:38px!important;
    padding:0 12px!important;
    font-size:11px!important;
  }
}


/* ------------------------------------------------------------
   MOBILE SEARCH
------------------------------------------------------------ */

@media (max-width:700px){

  .ia-search-overlay-panel{
    width:calc(100vw - 18px)!important;
    max-height:calc(100vh - 18px)!important;

    margin:9px auto!important;
    padding:18px!important;

    border-radius:19px!important;
  }

  .ia-search-overlay-head{
    gap:12px!important;
    margin-bottom:18px!important;
  }

  .ia-search-overlay-head h2{
    font-size:27px!important;
  }

  .ia-search-overlay-close{
    width:40px!important;
    height:40px!important;
    flex-basis:40px!important;
  }

  .ia-global-search-overlay .ia-global-search-input{
    height:56px!important;
    padding-left:48px!important;
    font-size:15px!important;
  }

  .ia-global-search-overlay .ia-global-search-panel{
    max-height:58vh!important;
  }

  .ia-global-search-results > a,
  .ia-global-search-results .ia-search-result,
  .ia-global-search-results .ia-global-search-item{
    padding:12px!important;
  }
}

/* ============================================================
   FINAL HEADER / SEARCH / THEME V4
   Authoritative override layer.
============================================================ */

.topbar{
    background:var(--ia-header-bg)!important;
    border-bottom:1px solid var(--ia-border)!important;
}

.topbar .ia-header-row{
    width:100%;
    max-width:1600px!important;
    min-height:76px!important;

    margin:0 auto!important;
    padding:0 28px!important;

    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;

    column-gap:20px!important;
}

.topbar .ia-logo{
    flex:0 0 auto!important;
    display:inline-flex!important;
    align-items:center!important;
}

.topbar .ia-logo-image{
    width:132px!important;
    max-width:132px!important;
    height:auto!important;
    display:block!important;
}


/* ------------------------------------------------------------
   PRIMARY NAV
------------------------------------------------------------ */

.topbar .ia-header-row > .ia-public-nav{
    position:static!important;

    display:flex!important;
   
  justify-content: flex-end!important;
   flex:1 1 auto!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;

    width:auto!important;
    min-width:0!important;

    margin:0!important;
    padding:0!important;

    overflow:visible!important;
    white-space:nowrap!important;

    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
}

.topbar .ia-header-row > .ia-public-nav > *{
    flex:0 0 auto!important;
    margin:0!important;
}

.topbar .ia-header-row > .ia-public-nav > * + *{
    margin-left:18px!important;
}

.topbar .ia-header-row > .ia-public-nav > a,
.topbar .ia-header-row > .ia-public-nav > .ia-resource-dropdown > .ia-resource-trigger{
    display:inline-flex!important;
    align-items:center!important;

    width:auto!important;
    min-width:0!important;
    min-height:auto!important;

    padding:21px 0!important;

    border:0!important;
    background:transparent!important;

    color:var(--navtext)!important;

    font-size:12px!important;
    font-weight:500!important;
    line-height:1!important;

    text-decoration:none!important;
    white-space:nowrap!important;

    opacity:.82!important;
}

.topbar .ia-header-row > .ia-public-nav > a:hover,
.topbar .ia-header-row > .ia-public-nav > .ia-resource-dropdown > .ia-resource-trigger:hover{
    color:var(--ia-primary)!important;
    opacity:1!important;
}

.topbar .ia-header-row .ia-resource-dropdown{
    position:static!important;
    display:flex!important;
    align-items:center!important;
}


/* ------------------------------------------------------------
   RIGHT-SIDE ACTIONS
------------------------------------------------------------ */

.topbar .ia-header-actions{
    display:flex!important;
    flex:0 0 auto!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;

    gap:10px!important;
    margin-left:auto!important;

    white-space:nowrap!important;
}


/* ------------------------------------------------------------
   SEARCH FIELD-STYLE BUTTON
------------------------------------------------------------ */

.topbar .ia-header-search{
    flex:0 0 auto!important;
    margin:0!important;
}

.topbar .ia-search-pill{
    width:162px!important;
    min-width:162px!important;
    height:42px!important;

    display:inline-flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:9px!important;

    margin:0!important;
    padding:0 13px!important;

    border:1px solid var(--ia-border)!important;
    border-radius:15px!important;
    outline:0!important;

    background:var(--ia-surface)!important;
    color:var(--ia-muted)!important;

    font:inherit!important;
    font-size:11.5px!important;
    font-weight:700!important;
    line-height:1!important;

    cursor:pointer!important;

    box-shadow:
        0 2px 8px rgba(8,17,31,.035)!important;

    transition:
        border-color .18s ease,
        color .18s ease,
        background .18s ease,
        box-shadow .18s ease,
        transform .18s ease!important;
}

.topbar .ia-search-pill svg{
    flex:0 0 18px!important;
}

.topbar .ia-search-pill:hover,
.topbar .ia-search-pill:focus-visible{
    transform:translateY(-1px)!important;
    border-color:var(--ia-primary)!important;
    background:var(--ia-surface-2)!important;
    color:var(--ia-text)!important;

    box-shadow:
        0 8px 22px
        color-mix(
            in srgb,
            var(--ia-primary) 12%,
            transparent
        )!important;
}


/* ------------------------------------------------------------
   THEME — SEGMENTED CONTROL
------------------------------------------------------------ */

.topbar .ia-theme-segmented{
    height:42px!important;
    min-height:42px!important;

    display:inline-flex!important;
    align-items:center!important;
    flex:0 0 auto!important;

    margin:0!important;
    padding:4px!important;

    border:1px solid var(--ia-border)!important;
    border-radius:14px!important;

    background:var(--ia-surface-2)!important;

    box-shadow:
        0 2px 8px rgba(8,17,31,.035)!important;
}

.topbar .ia-theme-segmented button{
    height:32px!important;
    min-height:32px!important;

    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;

    margin:0!important;
    padding:0 9px!important;

    border:0!important;
    border-radius:10px!important;
    outline:0!important;

    background:transparent!important;
    color:var(--ia-muted)!important;

    font:inherit!important;
    font-size:10px!important;
    font-weight:800!important;
    line-height:1!important;

    cursor:pointer!important;
    white-space:nowrap!important;

    transition:
        background .18s ease,
        color .18s ease,
        box-shadow .18s ease,
        transform .18s ease!important;
}

.topbar .ia-theme-segmented button:hover{
    color:var(--ia-text)!important;
}

.topbar .ia-theme-segmented button[aria-pressed="true"]{
    background:var(--ia-primary)!important;
    color:#fff!important;

    box-shadow:
        0 6px 16px
        color-mix(
            in srgb,
            var(--ia-primary) 24%,
            transparent
        )!important;
}

.topbar .ia-theme-segmented button:focus-visible{
    box-shadow:
        0 0 0 3px
        color-mix(
            in srgb,
            var(--ia-primary) 20%,
            transparent
        )!important;
}


/* ------------------------------------------------------------
   BOOK DEMO
------------------------------------------------------------ */

.topbar .ia-demo-cta{
    height:42px!important;
    min-height:42px!important;

    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;

    margin:0!important;
    padding:0 15px!important;

    border-radius:12px!important;

    font-size:11px!important;
    font-weight:800!important;
    line-height:1!important;

    white-space:nowrap!important;
}


/* ------------------------------------------------------------
   SEARCH OVERLAY
------------------------------------------------------------ */

body.ia-search-open{
    overflow:hidden!important;
}

.ia-search-overlay{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100vh!important;

    z-index:5000!important;
}

.ia-search-overlay-backdrop{
    background:rgba(5,13,24,.70)!important;
    backdrop-filter:blur(8px)!important;
    -webkit-backdrop-filter:blur(8px)!important;
}

.ia-search-overlay-panel{
    width:min(920px,calc(100vw - 42px))!important;
    max-height:calc(100vh - 56px)!important;

    margin:28px auto!important;
    padding:30px!important;

    border:1px solid var(--ia-border)!important;
    border-radius:24px!important;

    background:var(--ia-surface)!important;
    color:var(--ia-text)!important;

    box-shadow:
        0 40px 120px rgba(0,0,0,.32)!important;
}

.ia-search-overlay-kicker{
    color:var(--ia-primary)!important;

    font-size:10px!important;
    font-weight:900!important;
    letter-spacing:.12em!important;
    text-transform:uppercase!important;
}

.ia-search-overlay-head h2{
    margin:5px 0 0!important;

    color:var(--ia-text)!important;

    font-size:clamp(30px,4vw,46px)!important;
    font-weight:800!important;
    line-height:1.04!important;
    letter-spacing:-.04em!important;
}

.ia-search-overlay-close{
    width:46px!important;
    height:46px!important;
    flex:0 0 46px!important;

    border:1px solid var(--ia-border)!important;
    border-radius:13px!important;

    background:var(--ia-surface-2)!important;
    color:var(--ia-text)!important;
}


/* ------------------------------------------------------------
   SEARCH INPUT
------------------------------------------------------------ */

.ia-global-search-overlay .ia-global-search-input{
    width:100%!important;
    height:62px!important;

    padding:0 52px 0 54px!important;

    border:1.5px solid var(--ia-border)!important;
    border-radius:16px!important;

    outline:0!important;

    background:var(--ia-search-bg)!important;
    color:var(--ia-search-text)!important;

    font-size:17px!important;
}

.ia-global-search-overlay .ia-global-search-input:focus{
    border-color:var(--ia-primary)!important;

    box-shadow:
        0 0 0 4px
        color-mix(
            in srgb,
            var(--ia-primary) 13%,
            transparent
        )!important;
}

.ia-global-search-input::-webkit-search-cancel-button,
.ia-global-search-input::-webkit-search-decoration{
    -webkit-appearance:none!important;
    appearance:none!important;
    display:none!important;
}

.ia-global-search-overlay .ia-global-search-clear[hidden]{
    display:none!important;
}


/* ------------------------------------------------------------
   SEARCH RESULTS
------------------------------------------------------------ */

.ia-global-search-overlay .ia-global-search-panel{
    position:static!important;

    width:100%!important;
    max-height:500px!important;

    margin-top:12px!important;
    padding:8px!important;

    overflow-y:auto!important;
    overflow-x:hidden!important;

    border:1px solid var(--ia-border)!important;
    border-radius:16px!important;

    background:var(--ia-surface)!important;

    box-shadow:none!important;
}

.ia-global-search-results{
    display:grid!important;
    gap:7px!important;
}

.ia-global-search-results > a,
.ia-global-search-results .ia-search-result,
.ia-global-search-results .ia-global-search-item,
.ia-global-search-results [role="option"]{
    display:block!important;

    width:100%!important;

    margin:0!important;
    padding:13px 14px!important;

    border:1px solid transparent!important;
    border-radius:12px!important;

    background:transparent!important;
    color:var(--ia-text)!important;

    text-decoration:none!important;
    text-align:left!important;

    line-height:1.4!important;

    transition:
        background .14s ease,
        border-color .14s ease,
        transform .14s ease!important;
}

.ia-global-search-results > a:hover,
.ia-global-search-results > a:focus,
.ia-global-search-results .ia-search-result:hover,
.ia-global-search-results .ia-search-result.is-active,
.ia-global-search-results .ia-global-search-item:hover,
.ia-global-search-results [role="option"][aria-selected="true"]{
    background:var(--ia-surface-2)!important;
    border-color:var(--ia-border)!important;
    transform:translateY(-1px)!important;
    outline:0!important;
}

.ia-global-search-results a,
.ia-global-search-results a *{
    text-decoration:none!important;
}

.ia-search-result-title,
.ia-global-search-item-title{
    display:block!important;

    margin:0 0 5px!important;

    color:var(--ia-text)!important;

    font-size:14px!important;
    font-weight:800!important;
    line-height:1.35!important;
}

.ia-search-result-meta,
.ia-global-search-item-meta,
.ia-global-search-type{
    display:inline-flex!important;
    align-items:center!important;

    width:max-content!important;

    margin:0 0 6px!important;
    padding:4px 7px!important;

    border-radius:999px!important;

    background:
        color-mix(
            in srgb,
            var(--ia-primary) 9%,
            transparent
        )!important;

    color:var(--ia-primary)!important;

    font-size:9px!important;
    font-weight:900!important;
    text-transform:uppercase!important;
    letter-spacing:.055em!important;
}

.ia-search-result-snippet,
.ia-global-search-item-snippet,
.ia-global-search-snippet{
    margin:2px 0 0!important;

    color:var(--ia-muted)!important;

    font-size:12px!important;
    line-height:1.5!important;

    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;

    overflow:hidden!important;
}

.ia-global-search-state,
.ia-search-empty,
.ia-search-loading{
    padding:17px!important;

    color:var(--ia-muted)!important;

    font-size:12px!important;
    text-align:center!important;
}


/* ------------------------------------------------------------
   THEME-SPECIFIC HEADER SURFACES
------------------------------------------------------------ */

html[data-theme="dark"] .topbar .ia-theme-segmented{
    background:#111c2b!important;
    border-color:#26364a!important;
}

html[data-theme="corporate"] .topbar .ia-theme-segmented{
    background:#fff3e8!important;
    border-color:#efd4bc!important;
}


/* ------------------------------------------------------------
   DESKTOP / LAPTOP RESPONSIVE
------------------------------------------------------------ */

@media (min-width:1241px) and (max-width:1500px){

    .topbar .ia-header-row{
        padding-left:16px!important;
        padding-right:16px!important;
        column-gap:12px!important;
    }

    .topbar .ia-logo-image{
        width:112px!important;
        max-width:112px!important;
    }

    .topbar .ia-header-row > .ia-public-nav > * + *{
        margin-left:11px!important;
    }

    .topbar .ia-header-row > .ia-public-nav > a,
    .topbar .ia-header-row > .ia-public-nav > .ia-resource-dropdown > .ia-resource-trigger{
        font-size:10.5px!important;
    }

    .topbar .ia-search-pill{
        width:145px!important;
        min-width:145px!important;

        padding:0 11px!important;

        font-size:10.5px!important;
    }

    .topbar .ia-theme-segmented button{
        padding:0 7px!important;
        font-size:9.25px!important;
    }

    .topbar .ia-demo-cta{
        padding:0 11px!important;
        font-size:10px!important;
    }
}


/* ------------------------------------------------------------
   TIGHT WIDTH: COMPACT CONTROLS AUTOMATICALLY
------------------------------------------------------------ */

@media (min-width:1101px) and (max-width:1240px){

    .topbar .ia-search-pill{
        width:42px!important;
        min-width:42px!important;

        justify-content:center!important;

        padding:0!important;
        border-radius:12px!important;
    }

    .topbar .ia-search-pill > span{
        display:none!important;
    }

    .topbar .ia-theme-segmented button{
        width:34px!important;
        min-width:34px!important;

        padding:0!important;
    }

    .topbar .ia-theme-segmented button span:last-child{
        display:none!important;
    }
}


/* ------------------------------------------------------------
   TABLET
------------------------------------------------------------ */

@media (max-width:1100px){

    .topbar .ia-header-row{
        min-height:64px!important;

        padding:8px 12px!important;

        flex-wrap:wrap!important;

        row-gap:7px!important;
        column-gap:8px!important;
    }

    .topbar .ia-logo-image{
        width:100px!important;
        max-width:100px!important;
    }

    .topbar .ia-header-row > .ia-public-nav{
        order:3!important;

        flex:1 0 100%!important;

        width:100%!important;

        flex-direction:row!important;
        flex-wrap:nowrap!important;

        overflow-x:auto!important;
        overflow-y:hidden!important;

        padding:3px 0 5px!important;

        scrollbar-width:thin!important;
        -webkit-overflow-scrolling:touch!important;
    }

    .topbar .ia-header-row > .ia-public-nav > * + *{
        margin-left:15px!important;
    }

    .topbar .ia-header-row > .ia-public-nav > a,
    .topbar .ia-header-row > .ia-public-nav > .ia-resource-dropdown > .ia-resource-trigger{
        padding:8px 0!important;
        font-size:11px!important;
    }

    .topbar .ia-search-pill{
        width:40px!important;
        min-width:40px!important;

        justify-content:center!important;
        padding:0!important;
    }

    .topbar .ia-search-pill > span{
        display:none!important;
    }

    .topbar .ia-theme-segmented{
        padding:3px!important;
    }

    .topbar .ia-theme-segmented button{
        width:32px!important;
        min-width:32px!important;

        padding:0!important;
    }

    .topbar .ia-theme-segmented button span:last-child{
        display:none!important;
    }
}


/* ------------------------------------------------------------
   PHONE
------------------------------------------------------------ */

@media (max-width:640px){

    .topbar .ia-logo-image{
        width:90px!important;
        max-width:90px!important;
    }

    .topbar .ia-header-actions{
        gap:5px!important;
    }

    .topbar .ia-theme-segmented button:not([aria-pressed="true"]){
        display:none!important;
    }

    .topbar .ia-demo-cta{
        height:36px!important;
        min-height:36px!important;

        padding:0 9px!important;

        font-size:9.5px!important;
    }

    .ia-search-overlay-panel{
        width:calc(100vw - 18px)!important;
        max-height:calc(100vh - 18px)!important;

        margin:9px auto!important;
        padding:18px!important;

        border-radius:18px!important;
    }

    .ia-search-overlay-head h2{
        font-size:27px!important;
    }

    .ia-global-search-overlay .ia-global-search-input{
        height:54px!important;

        padding-left:48px!important;

        font-size:15px!important;
    }
}

/* ============================================================
   HEADER + SEARCH RESULTS POLISH V5
   Visual-only overrides. Existing search endpoint/logic unchanged.
============================================================ */

/* ------------------------------------------------------------
   HEADER SPACING
   Keep search/theme/demo on the right, but remove the large
   visual dead-zone after Trust.
------------------------------------------------------------ */

.topbar .ia-header-row{
    column-gap:14px!important;
}

.topbar .ia-header-row > .ia-public-nav{
    flex:1 1 auto!important;
}

.topbar .ia-header-row > .ia-public-nav > * + *{
    margin-left:16px!important;
}

/*
 * Actions stay right aligned, but don't create an extra giant
 * margin before the search pill.
 */
.topbar .ia-header-actions{
    margin-left:6px!important;
    gap:9px!important;
}

/* Slightly narrower search trigger */
.topbar .ia-search-pill{
    width:150px!important;
    min-width:150px!important;
}

/* Keep theme + demo where they are */
.topbar .ia-theme-segmented{
    flex:0 0 auto!important;
}

.topbar .ia-demo-cta{
    flex:0 0 auto!important;
}


/* ------------------------------------------------------------
   SEARCH MODAL — cleaner content hierarchy
------------------------------------------------------------ */

.ia-search-overlay-panel{
    padding:28px!important;
}

.ia-search-overlay-head{
    margin-bottom:20px!important;
}

.ia-search-overlay-head h2{
    font-size:clamp(32px,4vw,44px)!important;
}

.ia-global-search-overlay .ia-global-search-panel{
    padding:10px!important;
    background:
        color-mix(
            in srgb,
            var(--ia-surface-2) 42%,
            var(--ia-surface)
        )!important;
}


/* ------------------------------------------------------------
   RESULT CARD SYSTEM
------------------------------------------------------------ */

.ia-global-search-results{
    display:grid!important;
    gap:10px!important;
}


/* Generic support for current renderer */
.ia-global-search-results > a,
.ia-global-search-results .ia-search-result,
.ia-global-search-results .ia-global-search-item,
.ia-global-search-results [role="option"]{
    position:relative!important;

    display:block!important;

    width:100%!important;

    margin:0!important;
    padding:15px 16px 14px!important;

    border:1px solid var(--ia-border)!important;
    border-radius:14px!important;

    background:var(--ia-surface)!important;
    color:var(--ia-text)!important;

    text-decoration:none!important;
    text-align:left!important;

    box-shadow:
        0 2px 8px rgba(8,17,31,.035)!important;

    transition:
        transform .14s ease,
        border-color .14s ease,
        box-shadow .14s ease,
        background .14s ease!important;
}


.ia-global-search-results > a:hover,
.ia-global-search-results > a:focus,
.ia-global-search-results .ia-search-result:hover,
.ia-global-search-results .ia-search-result.is-active,
.ia-global-search-results .ia-global-search-item:hover,
.ia-global-search-results [role="option"][aria-selected="true"]{
    transform:translateY(-1px)!important;

    border-color:
        color-mix(
            in srgb,
            var(--ia-primary) 42%,
            var(--ia-border)
        )!important;

    background:
        color-mix(
            in srgb,
            var(--ia-primary) 4%,
            var(--ia-surface)
        )!important;

    box-shadow:
        0 10px 24px
        color-mix(
            in srgb,
            var(--ia-primary) 8%,
            transparent
        )!important;

    outline:0!important;
}


/* ------------------------------------------------------------
   RESULT TITLE
------------------------------------------------------------ */

.ia-search-result-title,
.ia-global-search-item-title,
.ia-global-search-results > a > strong,
.ia-global-search-results > a > b{
    display:block!important;

    margin:0 0 6px!important;

    color:var(--ia-text)!important;

    font-size:14px!important;
    font-weight:800!important;
    line-height:1.35!important;
    letter-spacing:-.015em!important;
}


/* ------------------------------------------------------------
   TYPE BADGE
------------------------------------------------------------ */

.ia-search-result-meta,
.ia-global-search-item-meta,
.ia-global-search-type{
    display:inline-flex!important;
    align-items:center!important;

    width:max-content!important;

    margin:0 0 7px!important;
    padding:4px 8px!important;

    border-radius:999px!important;

    background:
        color-mix(
            in srgb,
            var(--ia-primary) 11%,
            transparent
        )!important;

    color:var(--ia-primary)!important;

    font-size:9px!important;
    font-weight:900!important;
    letter-spacing:.065em!important;
    text-transform:uppercase!important;
}


/* ------------------------------------------------------------
   SNIPPET
------------------------------------------------------------ */

.ia-search-result-snippet,
.ia-global-search-item-snippet,
.ia-global-search-snippet{
    display:-webkit-box!important;

    margin:0!important;

    color:var(--ia-muted)!important;

    font-size:12px!important;
    font-weight:400!important;
    line-height:1.55!important;

    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;

    overflow:hidden!important;
}


/* ------------------------------------------------------------
   URL
------------------------------------------------------------ */

.ia-global-search-url,
.ia-search-result-url{
    display:block!important;

    margin-top:7px!important;

    color:
        color-mix(
            in srgb,
            var(--ia-primary) 78%,
            var(--ia-text)
        )!important;

    font-size:10px!important;
    font-weight:700!important;

    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}


/* ------------------------------------------------------------
   OPEN ACTION
------------------------------------------------------------ */

.ia-global-search-results > a::after{
    content:"Open result →";

    display:inline-flex!important;
    align-items:center!important;

    margin-top:9px!important;

    color:var(--ia-primary)!important;

    font-size:10px!important;
    font-weight:900!important;
    letter-spacing:.02em!important;
}


/* ------------------------------------------------------------
   RAW CURRENT RENDERER FALLBACK
   The endpoint currently appears to send title/type/snippet/url
   inside one anchor. This keeps that output clean even without
   semantic child classes.
------------------------------------------------------------ */

.ia-global-search-results > a{
    color:var(--ia-muted)!important;

    font-size:12px!important;
    line-height:1.55!important;

    text-decoration:none!important;
}

.ia-global-search-results > a,
.ia-global-search-results > a *{
    text-decoration:none!important;
}


/* ------------------------------------------------------------
   THEME-AWARE RESULT CARDS
------------------------------------------------------------ */

html[data-theme="dark"] .ia-global-search-results > a,
html[data-theme="dark"] .ia-global-search-results .ia-search-result,
html[data-theme="dark"] .ia-global-search-results .ia-global-search-item{
    background:#0f1b2b!important;
    border-color:#23344a!important;
}

html[data-theme="dark"] .ia-global-search-results > a:hover,
html[data-theme="dark"] .ia-global-search-results .ia-search-result:hover,
html[data-theme="dark"] .ia-global-search-results .ia-global-search-item:hover{
    background:#14243a!important;
    border-color:#315176!important;
}


html[data-theme="corporate"] .ia-global-search-results > a,
html[data-theme="corporate"] .ia-global-search-results .ia-search-result,
html[data-theme="corporate"] .ia-global-search-results .ia-global-search-item{
    background:#fffdfb!important;
    border-color:#efd8c2!important;
}

html[data-theme="corporate"] .ia-global-search-results > a:hover,
html[data-theme="corporate"] .ia-global-search-results .ia-search-result:hover,
html[data-theme="corporate"] .ia-global-search-results .ia-global-search-item:hover{
    background:#fff7ef!important;
    border-color:#e6b98d!important;
}


/* ------------------------------------------------------------
   LAPTOP TUNING
------------------------------------------------------------ */

@media (min-width:1241px) and (max-width:1500px){

    .topbar .ia-header-row{
        column-gap:10px!important;
    }

    .topbar .ia-header-row > .ia-public-nav > * + *{
        margin-left:10px!important;
    }

    .topbar .ia-header-actions{
        margin-left:4px!important;
        gap:7px!important;
    }

    .topbar .ia-search-pill{
        width:138px!important;
        min-width:138px!important;
    }
}


/* ------------------------------------------------------------
   VERY WIDE DESKTOP
------------------------------------------------------------ */

@media (min-width:1600px){

    .topbar .ia-header-row{
        max-width:1640px!important;
    }

    .topbar .ia-header-actions{
        margin-left:12px!important;
    }
}


/* ============================================================
   HERO BOOKING — FINAL ISOLATED FIX
   Added at end intentionally so it wins over legacy/global form rules.
============================================================ */

.hero .ia-hero-booking{
    width:100%;
    max-width:620px;
    margin-top:28px;
}

.hero .ia-hero-booking-form{
    width:100%;
    display:flex;
    align-items:center;
    gap:8px;
    padding:7px;

    border:1px solid rgba(255,255,255,.16);
    border-radius:16px;

    background:rgba(255,255,255,.035);

    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.02),
        0 14px 34px rgba(0,0,0,.14);
}

/* Email field */
.hero .ia-hero-booking-email{
    flex:1 1 auto;

    width:auto!important;
    min-width:0;
    height:54px;

    margin:0!important;
    padding:0 16px!important;

    border:0!important;
    border-radius:11px!important;
    outline:0!important;

    background:transparent!important;
    color:#fff!important;

    box-shadow:none!important;

    font-size:15px!important;
    line-height:1!important;
}

.hero .ia-hero-booking-email::placeholder{
    color:rgba(255,255,255,.52)!important;
}

.hero .ia-hero-booking-email:focus{
    border:0!important;
    outline:0!important;
    box-shadow:none!important;
}

/* CTA */
.hero .ia-hero-booking-btn{
    position:relative;
    isolation:isolate;
    overflow:hidden;

    flex:0 0 auto;

    width:auto!important;
    min-width:250px;
    height:54px;

    margin:0!important;
    padding:0 20px!important;

    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;

    border:1px solid rgba(255,255,255,.15)!important;
    border-radius:11px!important;

    background:#3D2018!important;
    color:#fff!important;

    font-size:14px!important;
    font-weight:800!important;
    line-height:1!important;

    cursor:pointer;

    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.025),
        0 0 0 3px rgba(255,122,0,.06),
        0 0 20px rgba(255,122,0,.13);

    transition:
        transform .18s ease,
        background .18s ease,
        box-shadow .18s ease;
}

.hero .ia-hero-booking-btn:hover{
    transform:translateY(-1px);

    background:#4B2418!important;

    box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.04),
        0 0 0 3px rgba(255,122,0,.10),
        0 0 26px rgba(255,122,0,.22);
}

/* Top moving line */
.hero .ia-hero-booking-btn::before{
    content:"";
    position:absolute;
    top:0;
    left:-44%;

    width:38%;
    height:2px;

    border-radius:999px;

    background:linear-gradient(
        90deg,
        transparent,
        rgba(255,122,0,.45),
        #fff,
        rgba(255,122,0,.85),
        transparent
    );

    filter:
        drop-shadow(0 0 4px rgba(255,122,0,.95))
        drop-shadow(0 0 8px rgba(255,122,0,.65));

    animation:iaHeroTopRun .8s linear infinite;

    pointer-events:none;
    z-index:3;
}

/* Bottom moving line */
.hero .ia-hero-booking-btn::after{
    content:"";
    position:absolute;
    bottom:0;
    right:-44%;

    width:38%;
    height:2px;

    border-radius:999px;

    background:linear-gradient(
        90deg,
        transparent,
        rgba(255,122,0,.45),
        #fff,
        rgba(255,122,0,.85),
        transparent
    );

    filter:
        drop-shadow(0 0 4px rgba(255,122,0,.95))
        drop-shadow(0 0 8px rgba(255,122,0,.65));

    animation:iaHeroBottomRun .8s linear infinite;

    pointer-events:none;
    z-index:3;
}

@keyframes iaHeroTopRun{
    from{left:-44%}
    to{left:110%}
}

@keyframes iaHeroBottomRun{
    from{right:-44%}
    to{right:110%}
}

.hero .ia-booking-arrow{
    font-size:18px;
    line-height:1;
    transition:transform .18s ease;
}

.hero .ia-hero-booking-btn:hover .ia-booking-arrow{
    transform:translateX(3px);
}

/* Theme-specific button treatment */
html[data-theme="normal"] .hero .ia-hero-booking-btn,
html[data-theme="standard"] .hero .ia-hero-booking-btn{
    background:#2864FF!important;
}

html[data-theme="dark"] .hero .ia-hero-booking-btn{
    background:#3D2018!important;
}

html[data-theme="corporate"] .hero .ia-hero-booking-form{
    border-color:#EADFD4;
    background:#fff;
}

html[data-theme="corporate"] .hero .ia-hero-booking-email{
    color:#121821!important;
}

html[data-theme="corporate"] .hero .ia-hero-booking-email::placeholder{
    color:#8B7D70!important;
}

html[data-theme="corporate"] .hero .ia-hero-booking-btn{
    background:#FF7600!important;
}

/* Mobile */
@media(max-width:700px){

    .hero .ia-hero-booking{
        max-width:100%;
    }

    .hero .ia-hero-booking-form{
        display:grid;
        grid-template-columns:1fr;
        gap:7px;
        padding:7px;
    }

    .hero .ia-hero-booking-email{
        width:100%!important;
        height:50px;
    }

    .hero .ia-hero-booking-btn{
        width:100%!important;
        min-width:0;
        height:52px;
    }
}

/* Reduced motion */
@media(prefers-reduced-motion:reduce){

    .hero .ia-hero-booking-btn::before,
    .hero .ia-hero-booking-btn::after{
        display:none!important;
        animation:none!important;
    }
}

/* ============================================================
   HOMEPAGE HERO — FIT COMPLETE HERO IN FIRST SCREEN
   Desktop only
============================================================ */

@media (min-width: 1101px){

    /* Reduce hero vertical space */
    body.home .hero,
    .hero{
        min-height:0 !important;
        height:auto !important;
        padding-top:72px !important;
        padding-bottom:64px !important;
    }

    /* Keep both columns vertically centered */
    .hero .hero-grid{
        align-items:center !important;
        gap:54px !important;
    }

    /* LEFT COLUMN */
    .hero .hero-grid > div:first-child{
        min-width:0;
    }

    .hero .eyebrow{
        margin-bottom:12px !important;
    }

    /* Main issue: current heading is too tall */
    .hero h1{
        font-size:clamp(54px, 4.35vw, 76px) !important;
        line-height:.98 !important;
        letter-spacing:-.045em !important;
        margin:0 0 22px !important;
        max-width:720px !important;
    }

    .hero .lead{
        font-size:17px !important;
        line-height:1.55 !important;
        max-width:700px !important;
        margin:0 !important;
    }

    /* Booking field stays directly below description */
    .hero .ia-hero-booking{
        display:block !important;
        width:100% !important;
        max-width:620px !important;
        margin-top:22px !important;
    }

    .hero .ia-hero-booking-form{
        display:flex !important;
        align-items:center !important;
        width:100% !important;
        gap:8px !important;
        padding:6px !important;
        margin:0 !important;
    }

    .hero .ia-hero-booking-email{
        flex:1 1 0 !important;
        min-width:0 !important;
        height:50px !important;
    }

    .hero .ia-hero-booking-btn{
        flex:0 0 auto !important;
        min-width:235px !important;
        height:50px !important;
    }

    /* RIGHT EVIDENCE CARD */
    .hero .evidence-card{
        align-self:center !important;
        margin:0 !important;
        padding:26px !important;
    }

    .hero .evidence-row{
        padding:18px 16px !important;
    }
}


/* ============================================================
   SHORT LAPTOP SCREENS
   Example: 1366x768 / 1600x900
============================================================ */

@media (min-width:1101px) and (max-height:900px){

    .hero{
        padding-top:48px !important;
        padding-bottom:48px !important;
    }

    .hero h1{
        font-size:clamp(50px, 4vw, 68px) !important;
        line-height:.96 !important;
        margin-bottom:18px !important;
    }

    .hero .lead{
        font-size:16px !important;
        line-height:1.45 !important;
    }

    .hero .ia-hero-booking{
        margin-top:18px !important;
    }

    .hero .ia-hero-booking-email,
    .hero .ia-hero-booking-btn{
        height:48px !important;
    }

    .hero .evidence-card{
        padding:22px !important;
    }

    .hero .evidence-row{
        padding:15px 14px !important;
    }
}


/* ============================================================
   VERY SHORT DESKTOP VIEWPORT
============================================================ */

@media (min-width:1101px) and (max-height:760px){

    .hero{
        padding-top:32px !important;
        padding-bottom:34px !important;
    }

    .hero h1{
        font-size:56px !important;
        line-height:.94 !important;
        margin-bottom:14px !important;
    }

    .hero .lead{
        font-size:15px !important;
        line-height:1.4 !important;
    }

    .hero .ia-hero-booking{
        margin-top:14px !important;
    }

    .hero .ia-hero-booking-email,
    .hero .ia-hero-booking-btn{
        height:46px !important;
    }

    .hero .evidence-card{
        padding:18px !important;
    }

    .hero .evidence-row{
        padding:12px !important;
    }
}

/* =========================================================
   COMPANY HEADER DROPDOWN — FINAL AUTHORITY
   Added at end intentionally so it overrides legacy header rules.
========================================================= */

.topbar .ia-company-dropdown{
    position:relative !important;
    display:flex !important;
    align-items:center !important;

    flex:0 0 auto !important;
    width:auto !important;
    min-width:0 !important;

    margin:0 !important;
}


/* ---------------------------------------------------------
   COMPANY TRIGGER
--------------------------------------------------------- */

.topbar .ia-company-trigger{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:5px !important;

    flex:0 0 auto !important;

    width:auto !important;
    min-width:0 !important;
    min-height:auto !important;

    padding:21px 0 !important;
    margin:0 !important;

    border:0 !important;
    outline:0 !important;

    background:transparent !important;
    color:var(--navtext) !important;

    font:inherit !important;
    font-size:12px !important;
    font-weight:500 !important;
    line-height:1 !important;

    text-decoration:none !important;
    white-space:nowrap !important;

    opacity:.82 !important;

    cursor:pointer !important;

    transition:
        color .16s ease,
        opacity .16s ease !important;
}

.topbar .ia-company-trigger:hover,
.topbar .ia-company-trigger:focus-visible{
    color:var(--ia-primary) !important;
    opacity:1 !important;
}

.topbar .ia-company-trigger svg{
    display:block !important;

    width:12px !important;
    height:12px !important;

    flex:0 0 12px !important;

    transition:transform .16s ease !important;
}

.topbar .ia-company-dropdown.open .ia-company-trigger svg{
    transform:rotate(180deg) !important;
}


/* ---------------------------------------------------------
   COMPANY DROPDOWN PANEL
--------------------------------------------------------- */

.topbar .ia-company-menu{
    position:absolute !important;

    z-index:2200 !important;

    top:calc(100% + 8px) !important;
    right:-70px !important;
    left:auto !important;

    display:block !important;

    width:360px !important;
    max-width:calc(100vw - 32px) !important;
    max-height:min(560px,calc(100vh - 110px)) !important;

    padding:12px !important;
    margin:0 !important;

    overflow:auto !important;

    border:1px solid var(--ia-border) !important;
    border-radius:16px !important;

    background:var(--ia-surface) !important;
    color:var(--ia-text) !important;

    box-shadow:
        0 28px 80px rgba(8,17,31,.18) !important;

    opacity:0 !important;
    visibility:hidden !important;

    pointer-events:none !important;

    transform:translateY(-7px) !important;

    transition:
        opacity .16s ease,
        visibility .16s ease,
        transform .16s ease !important;

    white-space:normal !important;
}


/* OPEN STATE */

.topbar .ia-company-dropdown.open .ia-company-menu{
    opacity:1 !important;
    visibility:visible !important;

    pointer-events:auto !important;

    transform:translateY(0) !important;
}


/* ---------------------------------------------------------
   MENU HEADER
--------------------------------------------------------- */

.topbar .ia-company-menu-head{
    display:block !important;

    width:100% !important;

    padding:8px 9px 12px !important;
    margin:0 0 5px !important;

    border-bottom:1px solid var(--ia-border) !important;
}

.topbar .ia-company-menu-head strong{
    display:block !important;

    margin:0 !important;

    color:var(--ia-text) !important;

    font-size:14px !important;
    font-weight:800 !important;
    line-height:1.3 !important;
}

.topbar .ia-company-menu-head small{
    display:block !important;

    margin-top:4px !important;

    color:var(--ia-muted) !important;

    font-size:10px !important;
    font-weight:400 !important;
    line-height:1.45 !important;

    white-space:normal !important;
}


/* ---------------------------------------------------------
   COMPANY LINKS
--------------------------------------------------------- */

.topbar .ia-company-menu > a{
    display:block !important;

    width:100% !important;

    padding:11px 10px !important;
    margin:0 !important;

    border:1px solid transparent !important;
    border-radius:10px !important;

    background:transparent !important;

    color:var(--ia-text) !important;

    text-decoration:none !important;
    white-space:normal !important;

    transition:
        background .14s ease,
        border-color .14s ease,
        transform .14s ease !important;
}

.topbar .ia-company-menu > a:hover,
.topbar .ia-company-menu > a:focus-visible{
    background:var(--ia-surface-2) !important;
    border-color:var(--ia-border) !important;

    transform:translateY(-1px) !important;

    outline:0 !important;
}

.topbar .ia-company-menu > a strong{
    display:block !important;

    margin:0 !important;

    color:var(--ia-text) !important;

    font-size:12px !important;
    font-weight:800 !important;
    line-height:1.35 !important;
}

.topbar .ia-company-menu > a small{
    display:block !important;

    margin-top:3px !important;

    color:var(--ia-muted) !important;

    font-size:9px !important;
    font-weight:400 !important;
    line-height:1.4 !important;
}


/* =========================================================
   DESKTOP NAV — COMPANY MUST NEVER BREAK HEADER FLOW
========================================================= */

@media (min-width:1241px){

    .topbar .ia-header-row > .ia-public-nav{
        display:flex !important;
        flex-direction:row !important;
        flex-wrap:nowrap !important;
        align-items:center !important;

        min-width:0 !important;

        white-space:nowrap !important;

        overflow:visible !important;
    }

    .topbar .ia-header-row > .ia-public-nav > a,
    .topbar .ia-header-row > .ia-public-nav > .ia-resource-dropdown,
    .topbar .ia-header-row > .ia-public-nav > .ia-company-dropdown{
        flex:0 0 auto !important;
    }

    .topbar .ia-company-dropdown{
        position:relative !important;
    }

    /*
     * Critical:
     * dropdown layout is isolated and does not contribute
     * to primary-header width calculations.
     */
    .topbar .ia-company-menu{
        contain:layout paint !important;
    }
}


/* =========================================================
   LAPTOP TUNING
========================================================= */

@media (min-width:1241px) and (max-width:1500px){

    .topbar .ia-company-trigger{
        padding:21px 0 !important;
        font-size:10.5px !important;
    }

    .topbar .ia-company-menu{
        right:-45px !important;
        width:330px !important;
    }
}


/* =========================================================
   TABLET / SMALL LAPTOP
   Header primary navigation is already a horizontal strip.
   Company submenu becomes an anchored popup.
========================================================= */

@media (min-width:701px) and (max-width:1240px){

    .topbar .ia-company-dropdown{
        position:relative !important;

        display:inline-flex !important;

        width:auto !important;
        flex:0 0 auto !important;
    }

    .topbar .ia-company-trigger{
        width:auto !important;

        padding:8px 0 !important;

        justify-content:flex-start !important;

        font-size:11px !important;
    }

    .topbar .ia-company-menu{
        position:absolute !important;

        top:calc(100% + 8px) !important;

        left:0 !important;
        right:auto !important;

        display:block !important;

        width:330px !important;
        max-width:min(330px,calc(100vw - 28px)) !important;

        margin:0 !important;

        opacity:0 !important;
        visibility:hidden !important;
        pointer-events:none !important;

        transform:translateY(-7px) !important;

        box-shadow:
            0 22px 60px rgba(8,17,31,.18) !important;
    }

    .topbar .ia-company-dropdown.open .ia-company-menu{
        opacity:1 !important;
        visibility:visible !important;
        pointer-events:auto !important;

        transform:translateY(0) !important;
    }
}


/* =========================================================
   MOBILE
   Company submenu expands within the horizontal nav strip.
========================================================= */

@media (max-width:700px){

    .topbar .ia-company-dropdown{
        position:relative !important;

        display:inline-flex !important;
        flex:0 0 auto !important;

        width:auto !important;
    }

    .topbar .ia-company-trigger{
        width:auto !important;

        padding:8px 0 !important;

        justify-content:flex-start !important;

        font-size:11px !important;
    }

    .topbar .ia-company-menu{
        position:fixed !important;

        top:auto !important;
        left:10px !important;
        right:10px !important;
        bottom:12px !important;

        width:auto !important;
        max-width:none !important;
        max-height:60vh !important;

        margin:0 !important;
        padding:10px !important;

        display:block !important;

        opacity:0 !important;
        visibility:hidden !important;
        pointer-events:none !important;

        transform:translateY(12px) !important;

        border-radius:16px !important;

        box-shadow:
            0 26px 90px rgba(0,0,0,.28) !important;
    }

    .topbar .ia-company-dropdown.open .ia-company-menu{
        opacity:1 !important;
        visibility:visible !important;
        pointer-events:auto !important;

        transform:translateY(0) !important;
    }
}


/* =========================================================
   THEME-AWARE COMPANY MENU
========================================================= */

html[data-theme="dark"] .topbar .ia-company-menu{
    background:#0B1A2A !important;
    border-color:#29445A !important;

    box-shadow:
        0 28px 80px rgba(0,0,0,.42) !important;
}

html[data-theme="dark"] .topbar .ia-company-menu > a:hover,
html[data-theme="dark"] .topbar .ia-company-menu > a:focus-visible{
    background:#12283D !important;
    border-color:#29445A !important;
}


html[data-theme="corporate"] .topbar .ia-company-menu{
    background:#FFFDFB !important;
    border-color:#EADACB !important;
}

html[data-theme="corporate"] .topbar .ia-company-menu > a:hover,
html[data-theme="corporate"] .topbar .ia-company-menu > a:focus-visible{
    background:#FFF0E2 !important;
    border-color:#EADACB !important;
}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion:reduce){

    .topbar .ia-company-menu,
    .topbar .ia-company-trigger svg,
    .topbar .ia-company-menu > a{
        transition:none !important;
    }
}

