/* Shared page templates: the approved Infraveil typography, black canvas and blue detail. */
.enterprise-page { background:#000;color:var(--white); }
.enterprise-page .site-header { border-bottom-color:var(--line-soft); }
.page-trail { position:relative;z-index:1;padding-block:24px 16px;display:flex;align-items:center;gap:12px;color:var(--muted);font-size:14px; }
.page-trail a { color:#92b8eb; }
.page-trail a:hover { color:#fff; }
.page-trail>nav { display:flex;align-items:center;gap:12px;flex:1;min-width:0; }
.page-trail .hero-motion-toggle { margin:0;flex:none; }
.page-trail [aria-current] { min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.route-content {
  --sans:"Source Sans 3","Helvetica Neue",Arial,sans-serif;
  --mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;
  --black:#000;--white:#f4f6f8;--gray:#b4bdc8;--muted:#949eac;--line:#282f37;--line-soft:#1b2027;--blue:#2878ff;
  position:relative!important;z-index:1!important;display:block!important;width:100%!important;max-width:none!important;
  margin:0!important;padding:0 0 80px!important;min-height:50vh;background:transparent!important;color:var(--white)!important;
  font:400 19px/1.7 var(--sans)!important;overflow:visible!important;
}
.route-content *, .route-content *::before, .route-content *::after { box-sizing:border-box; }
.route-content [hidden] { display:none!important; }
.route-content [id] { scroll-margin-top:106px; }
.route-content :is(h1,h2,h3,h4,p,li,label,button,input,select,textarea) { font-family:var(--sans); }
.route-content :is(h1,h2,h3,h4) { color:var(--white);text-wrap:pretty;overflow-wrap:anywhere; }
.route-content h1 { font-size:clamp(42px,5.2vw,80px)!important;font-weight:400!important;line-height:1.08!important;letter-spacing:-.045em!important;margin:18px 0 28px!important;max-width:24ch;text-align:left!important; }
.route-content h2 { font-size:clamp(30px,3.1vw,46px)!important;font-weight:400!important;line-height:1.16!important;letter-spacing:-.03em!important;margin-block:32px 20px; }
.route-content h3 { font-size:26px;font-weight:500;line-height:1.25;letter-spacing:-.02em; }
.route-content p { color:var(--gray);font-size:19px!important;line-height:1.7!important;font-weight:400!important; }
.route-content li { font-size:18px!important;line-height:1.7!important; }
.route-content :is(p,li,td,th,dd) { overflow-wrap:anywhere; }
.route-content :is(strong,b) { color:var(--white); }
.route-content a { color:#91b9ed;text-underline-offset:4px; }
.route-content a:hover { color:#fff; }
.route-content :is(a,button,input,textarea,select,summary):focus-visible { outline:2px solid #a8ceff!important;outline-offset:4px; }
.route-content :is(.iv-eyebrow,.core-eyebrow,.eyebrow,.section-kicker,.core-kicker) { color:#87aee4!important;font-size:14px!important;font-weight:600!important;line-height:1.5!important;letter-spacing:0!important;text-transform:none!important;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;box-shadow:none!important; }
.route-content :is(.iv-lede,.core-lead,.lede) { font-size:20px!important;line-height:1.65!important;font-weight:400!important;color:var(--gray)!important;max-width:76ch; }
.route-content :is(.text-gradient,.text-transparent,[class*="bg-gradient"]) { background-image:none!important;-webkit-background-clip:initial!important;background-clip:initial!important;-webkit-text-fill-color:currentColor!important; }
.route-content :is(.text-gradient,.text-transparent) { color:var(--white)!important; }
.route-content .page-title-accent { color:#81a9e7!important; }
.route-content :is([class*="backdrop-blur"],[class*="drop-shadow"],[class*="shadow-"],.acrylic-frame,.glass-card,.glass-panel,.iv-card,.core-card) { box-shadow:none!important;text-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;filter:none!important; }
.route-content :is([class*="bg-slate-"],[class*="bg-gray-"],[class*="bg-white/"]) { background-color:#000!important; }
.route-content [class*="rounded-"] { border-radius:8px!important; }
.route-content :is(.reveal,.animate-on-load,.iv-rise,.iv-in) { opacity:1!important;transform:none!important;filter:none!important;animation:none!important; }
.route-content :is(.iv-card,.glass-card,.glass-panel,.core-card,.dashboard-preview-panel,.dashboard-panel,.terminal-window) { background:#000!important;background-image:none!important;border:1px solid var(--line)!important;border-radius:8px!important;color:var(--white); }
.route-content :is(.iv-card,.core-card,.glass-card)::before,.route-content :is(.iv-card,.core-card,.glass-card)::after { background-image:none!important;box-shadow:none!important; }
.route-content :is(.iv-btn,.core-button,.cta,.btn-primary,.btn-secondary) { display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:10px 17px;border:1px solid #3a4a60!important;border-radius:4px!important;background:#000!important;color:#eef4fc!important;font:600 16px/1.35 var(--sans)!important;box-shadow:none!important;cursor:pointer;transition:background-color 180ms,border-color 180ms,transform 180ms; }
.route-content :is(.iv-btn,.core-button--primary,.btn-primary) { background:#1769f3!important;border-color:#1769f3!important;color:#fff!important;box-shadow:inset 0 1px #ffffff20!important; }
.route-content :is(.iv-btn,.core-button,.cta,.btn-primary,.btn-secondary) { text-transform:none!important;letter-spacing:0!important; }
.route-content :is(.iv-card,.glass-card,.core-card):hover { transform:none!important; }
.route-content :is(.iv-btn,.core-button--primary,.btn-primary):hover { background:#0f5fe0!important;border-color:#0f5fe0!important;transform:translateY(-1px); }
.route-content :is(.core-button:not(.core-button--primary),.btn-secondary):hover { border-color:#8db5ea!important; }
.route-content button { border-radius:4px; }
.route-content button:not(:disabled):active { transform:translateY(1px); }
.route-content button:disabled { cursor:default;opacity:.55; }
.route-content :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),textarea,select,.iv-field) { border:1px solid #40516a!important;border-radius:4px!important;background:#030810!important;background-image:none!important;color:#edf3fb!important;font-size:16px!important;line-height:1.5!important;box-shadow:none!important;max-width:100%; }
.route-content :is(input,textarea,select)::placeholder { color:#91a0b4!important;opacity:1; }
.route-content :is(input[type="checkbox"],input[type="radio"],input[type="range"]) { accent-color:#2878ff; }
.route-content label { color:#c4cedb!important;font-size:15px!important;line-height:1.5!important;letter-spacing:0!important;text-transform:none!important; }
.route-content :is(pre,code,kbd,samp) { font-family:var(--mono)!important;font-size:14px!important;line-height:1.65;letter-spacing:0!important;text-wrap:initial; }
.route-content pre { white-space:pre;max-width:100%;overflow:auto;background:#02070d!important;border:1px solid #303e50!important;border-radius:6px!important;padding:22px!important;color:#d8e6f7; }
.route-content pre code { background:transparent!important;padding:0!important;border:0!important;color:inherit;white-space:inherit; }
.route-content :not(pre)>code { background:#09111d;color:#b7d5ff;border-radius:3px;padding:2px 5px;overflow-wrap:anywhere; }
.route-content textarea { font-family:var(--mono)!important; }
.route-content table { width:100%;border-collapse:collapse;font-size:16px;background:#000!important; }
.route-content th { font-size:14px!important;font-weight:600;color:#c6d2e3;text-align:left; }
.route-content :is(th,td) { padding:15px 17px;border-color:var(--line)!important; }
.route-content td { font-size:16px!important;color:var(--gray); }
.route-content :is(.iv-note,.iv-help,.hint,.help,.meta,.tag,.sample-note) { font-size:14px!important;line-height:1.6!important; }
.route-content details { border-color:var(--line)!important;border-radius:0;background:transparent!important; }
.route-content summary { color:var(--white);font-size:18px;font-weight:500;cursor:pointer; }
.route-content :is(.text-gray-500,.text-gray-600,.text-slate-500,.text-slate-600) { color:#949eac!important; }
.route-content :is(.text-xs,.text-\[10px\],.text-\[11px\]) { font-size:14px!important;line-height:1.55!important; }
.route-content :is(.bg-orb,.ambient-orb,.noise-overlay,.orb,.grid-bg,.particle-bg) { display:none!important; }
.route-content .core-wrap { width:100%!important;max-width:var(--max)!important;margin-inline:auto!important;padding-inline:var(--gutter)!important; }
.route-content .page-intro { display:block!important;align-items:stretch!important;justify-content:flex-start!important;width:100%!important;max-width:var(--max)!important;min-height:0!important;margin:0 auto!important;padding:42px var(--gutter) 60px!important;text-align:left!important; }
.route-content .page-intro :is(h1,p) { text-align:left!important;margin-inline:0!important; }
.route-content .page-intro { position:relative!important;inset:auto!important;transform:none!important; }
.route-content .page-intro>p { max-width:78ch; }
.route-content .page-intro>.glass-card { border:0!important;background:transparent!important;padding:0!important;max-width:82ch!important; }
.route-content .page-intro :is(.core-actions,.flex) { justify-content:flex-start; }
.route-content .core-section { padding-block:30px 42px!important; }
.route-content .core-actions { display:flex;gap:14px;flex-wrap:wrap;margin-top:26px; }
.route-content .core-cta { border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;background:transparent!important;margin-top:36px!important;padding-block:40px!important; }
.route-content .core-grid { display:block!important; }
.route-content .enterprise-editorial-row { display:grid!important;grid-template-columns:minmax(230px,.8fr) minmax(0,1.2fr);gap:44px;border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;padding:28px 0!important;margin:0!important;background:transparent!important; }
.route-content .editorial-label h2 { font-size:32px!important;margin:12px 0 0!important; }
.route-content .editorial-copy p:first-child { margin-top:0; }
.route-content .editorial-copy p:last-child { margin-bottom:0; }
.kind-product .route-content>section:not(.page-intro) { width:100%!important;max-width:var(--max)!important;margin-inline:auto!important;padding-inline:var(--gutter)!important; }
.kind-product .page-intro>[class*="backdrop-blur"] { padding:0!important;border:0!important;background:transparent!important;border-radius:0!important; }
.route-content .enterprise-resource-list { display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 48px!important; }
.route-content .enterprise-resource-entry { border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;padding:26px 0!important;background:transparent!important; }
.route-content .enterprise-resource-entry>div:first-child:has(svg) { display:none; }
.route-content .enterprise-resource-entry :is(h2,h3) { margin-block:10px 12px!important;font-size:28px!important; }
.route-content .enterprise-resource-entry:hover :is(h2,h3) { color:#a8cdff; }
.route-content .iv-wrap { width:100%!important;max-width:var(--max)!important;padding:35px var(--gutter) 60px!important;margin:0 auto!important; }
.route-content .iv-wrap .page-intro { padding:0 0 35px!important;max-width:none!important; }
.kind-tool .route-content h1 { font-size:clamp(38px,4.3vw,64px)!important;max-width:28ch; }
.kind-tool .route-content .iv-lede { margin-bottom:30px!important; }
.kind-tool .route-content .iv-wrap>p { max-width:84ch; }
.route-content .iv-toc { border-left:2px solid #377aca!important;border-radius:0!important;background:transparent!important; }
.route-content .iv-cta { background:#020810!important;border:1px solid #2f4f75!important;border-radius:8px!important;padding:28px!important; }
.route-content .iv-product-bridge { margin-block:42px;border-block:1px solid var(--line);padding:24px 0;background:transparent!important;border-radius:0!important; }
.route-content .iv-product-bridge__link { font-size:16px;font-weight:600; }
.kind-hub .route-content .tools-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 52px!important; }
.kind-hub .route-content .tools-grid>a { border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;padding:26px 0!important;background:transparent!important;transform:none!important; }
.kind-hub .route-content .tools-grid>a:hover h2 { color:#a8cdff; }
.kind-hub .route-content .tools-grid h2 { font-size:28px!important;margin:10px 0 12px!important; }
.kind-hub .route-content .tools-grid p { font-size:17px!important; }
.kind-hub .route-content .tools-grid .tag { font-size:14px;color:#91b9ed; }
.kind-hub .route-content .directory-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 48px!important; }
.kind-hub .route-content .directory-entry { display:block;background:transparent!important;border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;padding:26px 0!important;transform:none!important; }
.kind-hub .route-content .directory-entry :is(h2,h3) { font-size:27px!important;font-weight:500!important;line-height:1.25!important;margin:12px 0!important; }
.kind-hub .route-content .directory-entry p { font-size:17px!important; }
.kind-hub .route-content .page-intro { padding-bottom:35px!important; }
.kind-hub .route-content>section:not(.page-intro),.kind-hub .route-content>.directory-search,.kind-hub .route-content>.directory-section { width:100%!important;max-width:var(--max)!important;padding-inline:var(--gutter)!important;margin-inline:auto!important; }
.kind-hub .route-content .directory-search-field { width:100%;max-width:760px!important;margin-inline:0!important; }
.kind-hub .route-content :is(#toolFilter,#guideFilter) { min-height:50px; }
.reading-layout { display:grid;grid-template-columns:230px minmax(0,1fr);gap:65px;width:100%;max-width:var(--max);margin:0 auto;padding:10px var(--gutter) 45px; }
.reading-sidebar { align-self:start;position:sticky;top:108px;max-height:calc(100vh - 140px);overflow:auto;padding-right:12px; }
.reading-sidebar strong { display:block;font-size:14px;font-weight:600;padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:10px; }
.route-content :is(.reading-sidebar,.reading-mobile) nav { position:static!important;inset:auto!important;transform:none!important;width:100%!important;max-width:none!important;height:auto!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;z-index:auto!important; }
.reading-sidebar a { display:block;color:#9eabbc;font-size:15px;line-height:1.4;padding:9px 0 9px 13px;border-left:2px solid transparent; }
.reading-sidebar a:hover,.reading-sidebar a[aria-current="location"] { color:#e8f1ff;border-left-color:#2878ff; }
.reading-content { min-width:0;max-width:950px; }
.reading-content>:is(section,div,article) { width:100%!important;max-width:none!important;margin-inline:0!important;padding-inline:0!important; }
.reading-content>:is(section,div,article):is(.glass-card,.iv-card) { padding:28px!important; }
.reading-content :is(p,li) { font-size:19px!important;line-height:1.75!important; }
.reading-content :is(.max-w-3xl,.max-w-4xl,.max-w-5xl,.max-w-6xl,.max-w-7xl) { max-width:100%!important; }
.reading-content .glass-card { border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;padding:30px 0!important;background:transparent!important; }
.reading-content .glass-card .glass-card { padding:22px!important;border:1px solid var(--line)!important;border-radius:6px!important; }
.reading-content .reading-section { scroll-margin-top:106px; }
.reading-content .table-scroll { width:100%;max-width:100%;overflow-x:auto; }
.reading-content .table-scroll table { display:table!important;width:100%;min-width:var(--table-min-width,640px)!important; }
.reading-content .table-scroll :is(th,td) { min-width:150px!important;overflow-wrap:normal;word-break:normal; }
.reading-mobile { display:none; }
.route-content .badge-preview { padding:28px 0; }
.route-content .badge-preview img { width:auto;max-width:100%; }
.error-page { max-width:1040px;margin:0 auto;padding:80px var(--gutter) 110px; }
.error-code { color:#6e9edb;font:500 16px/1.5 var(--mono); }
.error-page h1 { max-width:18ch; }
.error-page p { max-width:55ch; }
.error-page .core-actions { margin-top:32px; }
.site-index { max-width:var(--max);margin:auto;padding:20px var(--gutter) 70px; }
.site-index-group { border-top:1px solid var(--line);padding-block:25px 45px; }
.site-index-links { display:grid;grid-template-columns:1fr 1fr;gap:0 40px; }
.site-index-links a { padding:13px 0;border-bottom:1px solid var(--line-soft);font-size:17px; }
.site-footer .footer-local-index { color:#a7bad4; }
.route-motion-control { margin:25px 0 0; }
@keyframes iv-route-section-in { from { opacity:.75;translate:0 8px; } to { opacity:1;translate:0 0; } }
.route-content .route-section-enter { animation:iv-route-section-in 420ms var(--ease) both!important; }
@media(max-width:1100px) { .reading-layout { grid-template-columns:195px minmax(0,1fr);gap:32px; } }
@media(max-width:760px) {
  .page-trail { padding-block:18px 8px;gap:8px;font-size:13px; }
  .page-trail>nav { gap:8px; }
  .page-trail :is([aria-current],.trail-current-divider) { display:none; }
  .route-content { font-size:18px!important; }
  .route-content h1 { font-size:clamp(38px,10vw,58px)!important;line-height:1.1!important;letter-spacing:-.035em!important; }
  .kind-tool .route-content h1 { font-size:38px!important; }
  .route-content h2 { font-size:31px!important;line-height:1.2!important; }
  .route-content :is(p,.iv-lede,.core-lead,.lede) { font-size:18px!important; }
  .route-content .page-intro { padding:28px var(--gutter) 38px!important; }
  .route-content .iv-wrap { padding-top:28px!important; }
  .route-content .enterprise-editorial-row { grid-template-columns:1fr;gap:18px; }
  .route-content .enterprise-resource-list { grid-template-columns:1fr!important; }
  .route-content .editorial-label h2 { font-size:28px!important; }
  .kind-hub .route-content .tools-grid { grid-template-columns:1fr!important;gap:0!important; }
  .kind-hub .route-content .directory-grid { grid-template-columns:1fr!important;gap:0!important; }
  .reading-layout { display:block;padding-top:0; }
  .reading-sidebar { display:none; }
  .reading-mobile { display:block!important;max-width:var(--max);margin:0 var(--gutter) 30px;padding:17px 0;border-block:1px solid var(--line); }
  .reading-mobile nav { padding:12px 0; }
  .reading-mobile a { display:block;padding:8px 0;font-size:16px; }
  .reading-content :is(p,li) { font-size:18px!important; }
  .reading-content table { max-width:none; }
  .route-content pre { padding:16px!important;font-size:13px!important; }
  .site-index-links { grid-template-columns:1fr; }
  .error-page { padding-block:45px 70px; }
}
@media(prefers-reduced-motion:reduce) { .route-content .route-section-enter { animation:none!important; } }
