/* Shared product descriptions; generated HTML uses configuration/site-chrome.json. */
.nav .dropdown.product-dropdown {
  width: min(680px, calc(100vw - 48px));
  min-width: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.nav .product-dropdown .dd-col { min-width: 0; }
.nav .product-dropdown .dd-link--product,
.legal-page .legal-product-panel .dd-link--product {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 3px;
  min-height: 64px;
  padding: 10px;
  border-radius: 10px;
  text-align: start;
  white-space: normal;
}
.dd-link-title { display: block; font-size: 13.5px; font-weight: 600; line-height: 1.65; }
.dd-link-description { display: block; color: #64748b; font-size: 12px; font-weight: 400; line-height: 1.7; }
.nav .resources-trigger { border: 0; background: transparent; font-family: inherit; cursor: pointer; }
.nav .resources-trigger:hover { background: rgba(66, 144, 198, .08); }
.nav .resources-dropdown { width: 220px; min-width: 0; }
.nav .resources-dropdown .dd-link { display: block; min-height: 44px; padding: 10px 14px; }
.nav .dd-link--product:focus-visible,
.legal-page .legal-product-menu summary:focus-visible,
.legal-page .legal-product-panel a:focus-visible { outline: 2px solid #4290c6; outline-offset: 3px; }
@media (min-width: 961px) {
  .nav .nav-item:focus-within > .product-dropdown { display: grid; }
  .nav .nav-item:focus-within > .resources-dropdown { display: flex; }
}
@media (max-width: 960px) {
  .nav .dropdown.product-dropdown { width: 100%; }
  .nav .resources-dropdown { width: 100%; }
  .nav .product-dropdown .dd-link--product { padding: 10px 28px; }
}

/* Legal pages retain their existing header and share the same product copy. */
.legal-page .legal-product-menu { position: relative; }
.legal-page .legal-product-menu > summary { display: flex; align-items: center; gap: 6px; list-style: none; color: #52617b; font-size: 13px; font-weight: 600; cursor: pointer; }
.legal-page .legal-product-menu > summary::after { content: '⌄'; font-size: 12px; }
.legal-page .legal-product-menu[open] > summary::after { transform: rotate(180deg); }
.legal-page .legal-product-menu > summary::-webkit-details-marker { display: none; }
.legal-page .legal-product-panel { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; padding: 16px; background: #fff; border: 1px solid #dce5f1; border-radius: 16px; box-shadow: 0 16px 36px rgba(14, 31, 63, .12); }
.legal-page .legal-product-menu:not([open]) > .legal-product-panel { display: none; }
.legal-page .legal-nav-links .legal-product-panel { position: absolute; inset-block-start: calc(100% + 18px); inset-inline-start: 0; width: min(650px, calc(100vw - 40px)); }
.legal-page .legal-product-panel .dd-col-title { color: #65738c; font-size: 12px; font-weight: 700; padding: 4px 10px 8px; }
.legal-page .legal-product-panel a { color: #111b32; }
.legal-page .legal-product-panel a:hover { background: #f3f7fe; }
.legal-page .legal-footer-cols { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.legal-page .legal-resource-menu { position: relative; }
.legal-page .legal-resource-menu > summary { display: flex; align-items: center; gap: 6px; list-style: none; color: #52617b; font-size: 13px; font-weight: 600; cursor: pointer; }
.legal-page .legal-resource-menu > summary::after { content: '⌄'; font-size: 12px; }
.legal-page .legal-resource-menu[open] > summary::after { transform: rotate(180deg); }
.legal-page .legal-resource-menu > summary::-webkit-details-marker { display: none; }
.legal-page .legal-resource-panel { width: 200px; padding: 8px; background: #fff; border: 1px solid #dce5f1; border-radius: 14px; box-shadow: 0 16px 36px rgba(14, 31, 63, .12); }
.legal-page .legal-resource-menu:not([open]) > .legal-resource-panel { display: none; }
.legal-page .legal-resource-panel a { display: block; padding: 10px; color: #111b32; font-size: 13px; }
.legal-page .legal-resource-panel a:hover { background: #f3f7fe; }
.legal-page .legal-nav-links .legal-resource-panel { position: absolute; inset-block-start: calc(100% + 18px); inset-inline-start: 0; }

/* Site-wide FAQ surface: products, solutions, pricing, home and CMS pages. */
:is(.faq-section,.fp-faq-section,.solution-faq,.qa-faq-section,.ob-faq,.pfaq-section) {
  background:#fff !important;
  background-image:none !important;
}
.legal-page .legal-resource-menu summary:focus-visible { outline: 2px solid #4290c6; outline-offset: 3px; }
@media (max-width: 760px) {
  .legal-page .legal-menu > nav { width: min(300px, calc(100vw - 32px)); max-height: calc(100svh - 100px); overflow-y: auto; }
  .legal-page .legal-menu .legal-product-menu > summary { justify-content: space-between; width: 100%; height: auto; padding: 9px 10px; border: 0; border-radius: 0; font-size: 14px; }
  .legal-page .legal-menu .legal-product-panel { grid-template-columns: 1fr; gap: 10px; padding: 8px 0; border: 0; box-shadow: none; background: #f7f9fd; }
  .legal-page .legal-menu .legal-resource-menu > summary { justify-content: space-between; width: 100%; height: auto; padding: 9px 10px; border: 0; border-radius: 0; font-size: 14px; }
  .legal-page .legal-menu .legal-resource-panel { width: 100%; border: 0; box-shadow: none; background: #f7f9fd; }
  .legal-page .legal-footer-cols { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
