/* Shared finishing rules. Match the logo background without modifying the image. */
.header,.footer{background:#000}
.brand img,.footer-logo{height:auto;object-fit:contain}
.header-tagline{text-align:center!important}
:focus-visible{outline:3px solid #779ecb;outline-offset:4px}
.visual-light :focus-visible{outline-color:#164877}
.menu-toggle,.sector-filter,#clear-search{min-height:44px;min-width:44px}
.consent-field{min-height:44px;cursor:pointer}
.consent-field input{cursor:pointer}
.assistant-family .family-body{padding:20px 24px}
.assistant-family .family-body p{max-width:75ch}
.demo-table-wrap{overflow-x:auto;border:1px solid var(--line);margin:24px 0}
.demo-table{width:100%;border-collapse:collapse;font-size:16px;line-height:1.55}
.demo-table th,.demo-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:14px;min-width:160px}
.demo-table caption{text-align:left;padding:16px;font-weight:600}
.demo-source{white-space:pre-wrap;font-family:inherit;font-size:16px;line-height:1.65}
.source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.demo-note{padding:20px;border-left:3px solid currentColor;margin:24px 0}
@media(max-width:700px){.source-grid{grid-template-columns:minmax(0,1fr)}.assistant-family .family-body{padding:16px}.header-tagline{font-size:11px!important}.page-intro h1{overflow-wrap:break-word}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;animation-iteration-count:1!important}}
@media print{.header,.footer,.menu-toggle,.conversion-actions{display:none!important}.demo-table-wrap{overflow:visible}.demo-table th,.demo-table td{min-width:0;padding:7px;font-size:10pt}.demo-source{font-size:10pt}.source-grid{display:block}details>*,details:not([open])>*{display:block!important}body{color:#000!important;background:#fff!important}.section{break-inside:auto}.demo-table tr{break-inside:avoid}}

/* Privacy and service terms: readable text and narrow-screen wrapping. */
.legal-prose{max-width:900px;overflow-wrap:anywhere}.legal-prose h2{margin-top:2.2em;scroll-margin-top:140px}.legal-prose ul{padding-left:1.4em}.legal-prose li{margin-bottom:1em}.form-notice{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}.form-notice .small{line-height:1.65}.form-notice a{text-decoration:underline;text-underline-offset:3px}@media(max-width:600px){.legal-prose h1{overflow-wrap:normal}.legal-prose h2{scroll-margin-top:170px}}
