.masthead{position:sticky;top:0;z-index:var(--z-masthead);height:var(--header);background:var(--background);border-bottom:1px solid var(--border-subtle);overflow:visible;transform:translateY(0);opacity:1;transition:transform var(--motion-fast),opacity var(--motion-fast)}
.masthead__inner{width:100%;height:var(--header);display:flex;align-items:stretch;min-width:0}
@media (hover: hover) and (pointer: fine){
  .masthead--hidden{transform:translateY(calc(-1 * var(--header)));opacity:0}
}
.masthead__button.masthead__menu-button{display:none;flex:0 0 56px}
.masthead__brand{height:var(--header);display:inline-flex;align-items:center;flex:0 0 auto;padding:0 24px;font-family:var(--font-brand);font-size:var(--type-heading-03-size);line-height:var(--type-heading-03-line);font-weight:500;letter-spacing:var(--type-heading-03-track);white-space:nowrap}
.masthead__brand span{font-weight:400;color:var(--text-secondary);margin-left:4px}
.masthead__divider{align-self:center;flex:0 0 1px;width:1px;height:32px;background:var(--border-subtle)}
.masthead__nav{height:var(--header);min-width:0;display:flex;align-items:stretch;flex:1 1 auto;gap:1px;overflow:hidden;padding-left:24px}
.masthead__link{height:var(--header);display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;padding:0 16px;color:var(--text-secondary);font-size:var(--type-label-02-size);line-height:var(--type-label-02-line);font-weight:var(--type-label-02-weight);letter-spacing:var(--type-label-02-track);white-space:nowrap;border-bottom:2px solid transparent}
.masthead__link:hover{background:var(--layer-hover);color:var(--text-primary)}
.masthead__link[aria-current="true"],.masthead__link--active{color:var(--text-primary);border-bottom-color:var(--interactive)}
.masthead__actions{height:var(--header);display:flex;align-items:stretch;justify-content:flex-end;flex:0 0 auto;margin-left:auto}
.masthead__button{width:56px;height:var(--header);min-height:var(--header);display:inline-grid;place-items:center;flex:0 0 56px;border:0;border-left:1px solid transparent;background:transparent;color:var(--text-primary);cursor:pointer}
a.masthead__button{cursor:pointer}
.masthead__call-button{display:none}
.masthead__button:hover{background:var(--layer-hover)}
.masthead__button[aria-expanded="true"],.masthead__button[aria-pressed="true"]{background:var(--layer-selected);color:var(--text-primary)}
.masthead__button[aria-disabled="true"]{color:var(--text-helper);cursor:not-allowed}
.masthead__button[aria-disabled="true"]:hover{background:transparent}
.masthead__icon{width:22px;height:22px;display:block}
.masthead__icon--svg{background:currentColor;mask:var(--masthead-icon-url) center/contain no-repeat;-webkit-mask:var(--masthead-icon-url) center/contain no-repeat}
.masthead__menu-lines span{display:block;width:20px;height:1.5px;margin:4px 0;background:currentColor;transform-origin:center;transition:transform var(--motion-fast),opacity var(--motion-fast)}
.masthead__menu-button[aria-expanded="true"] .masthead__menu-lines span:nth-child(1){transform:translateY(5.5px) rotate(45deg)}
.masthead__menu-button[aria-expanded="true"] .masthead__menu-lines span:nth-child(2){opacity:0}
.masthead__menu-button[aria-expanded="true"] .masthead__menu-lines span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg)}
.masthead__panel{position:fixed;z-index:var(--z-panel);top:var(--header);max-height:calc(100vh - var(--header));overflow:auto}
.masthead__panel-title{margin:0;padding:16px 24px;color:var(--text-helper);font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:600;letter-spacing:var(--type-label-01-track);border-bottom:1px solid var(--border-subtle)}
.masthead__panel a{min-height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;border-bottom:1px solid var(--border-subtle);color:var(--text-primary);font-size:var(--type-body-02-size);line-height:var(--type-body-02-line);font-weight:var(--type-body-02-weight);letter-spacing:var(--type-body-02-track)}
.masthead__panel a:hover{background:var(--layer-hover)}
.masthead__search{position:fixed;z-index:var(--z-panel);top:var(--header);right:0;width:min(560px,100%);display:none;background:var(--background);border-left:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);box-shadow:0 16px 32px var(--panel-shadow);padding:16px}
.masthead__search.open{display:block}
.masthead__search label{display:block;margin:0 0 8px;color:var(--text-helper);font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:600;letter-spacing:var(--type-label-01-track)}
.masthead__search input{width:100%;height:48px;border:0;border-bottom:1px solid var(--border-strong);background:var(--layer-selected);color:var(--text-primary);padding:0 16px}
.masthead__search-links{display:grid;margin-top:12px;border-top:1px solid var(--border-subtle)}
.masthead__search-links a{min-height:40px;display:flex;align-items:center;border-bottom:1px solid var(--border-subtle);color:var(--text-secondary);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track)}
.masthead__search-links a:hover{color:var(--text-primary)}
.masthead__search-links a[hidden]{display:none}
.masthead__overlay{position:fixed;z-index:var(--z-overlay);inset:var(--header) 0 0;background:var(--overlay);display:none}
.masthead__overlay.open{display:block}
html.masthead-open,body.masthead-open{overflow:hidden}

/* Dark enterprise masthead contract: existing Carbon neutral and interactive tokens only. */
.masthead{
  background:var(--gray-100);
  color:var(--gray-10);
  border-bottom-color:var(--gray-80);
}
.masthead__brand{color:var(--gray-10)}
.masthead__brand span{color:var(--gray-30)}
.masthead__divider{background:var(--gray-80)}
.masthead__link{color:var(--gray-30)}
.masthead__link:hover{background:var(--gray-90);color:var(--gray-10)}
.masthead__link[aria-current="true"],.masthead__link--active{color:var(--gray-10);border-bottom-color:var(--interactive)}
.masthead__button{color:var(--gray-10)}
.masthead__button:hover{background:var(--gray-90)}
.masthead__button[aria-expanded="true"],.masthead__button[aria-pressed="true"]{background:var(--gray-80);color:var(--gray-10)}
.masthead__button[aria-disabled="true"]{color:var(--gray-50)}
.masthead__panel,.masthead__search{
  background:var(--gray-100);
  color:var(--gray-10);
  border-color:var(--gray-80);
}
.masthead__panel-title,.masthead__search label{color:var(--gray-40);border-color:var(--gray-80)}
.masthead__panel a{color:var(--gray-10);border-color:var(--gray-80)}
.masthead__panel a:hover{background:var(--gray-90)}
.masthead__search input{background:var(--gray-90);color:var(--gray-10);border-bottom-color:var(--gray-50)}
.masthead__search-links{border-color:var(--gray-80)}
.masthead__search-links a{color:var(--gray-30);border-color:var(--gray-80)}
.masthead__search-links a:hover{color:var(--gray-10)}
.theme-icon-light{display:none}
.theme-icon-dark{display:block}
html[data-theme="dark"] .theme-icon-light{display:block}
html[data-theme="dark"] .theme-icon-dark{display:none}
.button-row{display:flex;flex-wrap:wrap;gap:1px}
.button{min-height:48px;min-width:208px;display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:13px 16px;border:1px solid transparent;font-size:var(--type-label-02-size);line-height:var(--type-label-02-line);font-weight:600;letter-spacing:var(--type-label-02-track);cursor:pointer}
.button--primary{background:var(--button-primary);color:var(--text-inverse)}
.button--primary:hover{background:var(--button-primary-hover)}
.button--secondary{border-color:var(--button-secondary);color:var(--button-secondary);background:transparent}
.button--secondary:hover{background:var(--button-secondary);color:var(--background)}
.process-list{display:grid;margin:0;padding:0;list-style:none;border-top:1px solid var(--border-subtle)}
.process-list li{padding:16px 0;border-bottom:1px solid var(--border-subtle)}
.process-list strong{display:block;margin-bottom:4px;font-size:var(--type-heading-04-size);line-height:var(--type-heading-04-line);font-weight:var(--type-heading-04-weight);letter-spacing:var(--type-heading-04-track)}
.process-list span{display:block;color:var(--text-secondary);font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:var(--type-label-01-weight);letter-spacing:var(--type-label-01-track)}
.tile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--border-subtle)}
.tile{min-height:184px;padding:24px;background:var(--layer-02);color:var(--text-primary);display:flex;flex-direction:column;justify-content:space-between;transition:background-color var(--motion-fast),color var(--motion-fast)}
.tile__index{margin:0 0 var(--space-meta-group);color:var(--text-helper);font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:var(--type-label-01-weight);letter-spacing:var(--type-label-01-track);transition:color var(--motion-fast)}
.tile > p{margin:0;color:var(--text-secondary);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track);transition:color var(--motion-fast)}
.workflow{margin:0;padding:0;list-style:none;border:1px solid var(--border-subtle);background:var(--layer-02)}
.workflow__row{display:grid;grid-template-columns:72px minmax(0,1fr) minmax(220px,320px);border-bottom:1px solid var(--border-subtle);background:var(--layer-02);color:var(--text-primary);transition:background-color var(--motion-fast),color var(--motion-fast)}
.workflow__row:last-child{border-bottom:0}
.workflow__step{padding:20px 16px;color:var(--text-helper);font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:var(--type-label-01-weight);letter-spacing:var(--type-label-01-track);transition:color var(--motion-fast)}
.workflow__main{padding:20px 24px;border-left:1px solid var(--border-subtle)}
.workflow__main p{margin:0;color:var(--text-secondary);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track);transition:color var(--motion-fast)}
.workflow__meta{padding:20px 24px;border-left:1px solid var(--border-subtle);background:var(--layer);color:var(--text-secondary);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track);transition:background-color var(--motion-fast),color var(--motion-fast)}
.control-table-wrap{overflow-x:auto;border:1px solid var(--border-subtle);background:var(--layer-02)}
.control-table{width:100%;min-width:720px;border-collapse:collapse;font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track)}
.control-table th,.control-table td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--border-subtle);vertical-align:top;transition:background-color var(--motion-fast),color var(--motion-fast)}
.control-table th{background:var(--layer);font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:600;letter-spacing:var(--type-label-01-track);color:var(--text-primary)}
.control-table td{color:var(--text-secondary)}
.control-table tbody tr{transition:background-color var(--motion-fast),color var(--motion-fast)}
.control-table tr:last-child td{border-bottom:0}
.status{display:inline-flex;align-items:center;justify-content:center;inline-size:96px;min-height:24px;padding:2px 8px;background:var(--status-neutral);color:var(--status-text);font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:var(--type-label-01-weight);letter-spacing:var(--type-label-01-track);text-align:center;white-space:nowrap;transition:background-color var(--motion-fast),color var(--motion-fast)}
.role-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--border-subtle)}
.role{min-height:168px;padding:24px;background:var(--layer-02);color:var(--text-primary);transition:background-color var(--motion-fast),color var(--motion-fast)}
.role p{margin:0;color:var(--text-secondary);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track);transition:color var(--motion-fast)}
.tile h3,.workflow__main h3,.role h3{transition:color var(--motion-fast)}
@media (hover: hover) and (pointer: fine){
  .tile:hover{background:var(--reading-accent-surface);color:var(--reading-accent-text)}
  .tile:hover h3{color:var(--reading-accent-text)}
  .tile:hover .tile__index,.tile:hover > p{color:var(--reading-accent-muted)}
  .workflow__row:hover,.workflow__row:hover .workflow__meta,.control-table tbody tr:hover td{background:var(--reading-row-hover-surface)}
}

.contact-panel{background:var(--layer);color:var(--text-primary);padding:64px 0}
.contact-panel h2{color:var(--text-primary)}
.contact-panel .lead{color:var(--text-secondary)}
.footer{--footer-logo-neutral:var(--inverse-text);background:var(--inverse-background);color:var(--inverse-secondary);border-top:1px solid var(--inverse-border)}
.footer__inner{max-width:var(--container);margin:0 auto;padding:40px var(--gutter) 24px;font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:var(--type-label-01-weight);letter-spacing:var(--type-label-01-track)}
.footer__main{display:grid;grid-template-columns:minmax(280px,1.25fr) minmax(160px,.6fr) minmax(220px,.8fr);gap:48px;padding-bottom:40px}
.footer__group[aria-labelledby="footer-nav"]{display:none}
.footer__group[aria-labelledby="footer-legal"]{grid-column:3}
.footer__group h2{margin:0 0 16px;color:var(--inverse-text);font-size:var(--type-label-02-size);line-height:var(--type-label-02-line);font-weight:600;letter-spacing:var(--type-label-02-track)}
.footer__logo{display:block;width:144px;max-width:100%;height:auto;margin:0 0 4px;color:var(--footer-logo-neutral);transform:translateX(-10px)}
.footer__group p{max-width:360px;margin:0 0 20px;color:var(--inverse-secondary);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track)}
.footer__links,.footer__contact{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.footer__contact{max-width:420px;gap:6px}
.footer__contact-row--phone{margin-top:12px}
.footer a{color:var(--inverse-secondary);text-decoration:none}
.footer a:hover{color:var(--inverse-text)}
.footer__contact span{color:var(--inverse-secondary)}
.footer__bar{display:grid;grid-template-columns:minmax(280px,1.25fr) minmax(160px,.6fr) minmax(220px,.8fr);align-items:center;gap:48px;padding-top:24px;border-top:1px solid var(--inverse-border);color:var(--inverse-secondary);text-align:left}
.footer__utility{display:flex;align-items:center;gap:24px;text-align:left}
.footer__meta{grid-column:3;display:block;min-width:0;white-space:nowrap;color:var(--inverse-secondary)}
.footer__utility-link{color:var(--inverse-secondary);text-decoration:none}
.footer__utility-link:hover{color:var(--inverse-text)}
.footer__utility-link--disabled{color:var(--gray-50);cursor:not-allowed}
.footer__utility-link--disabled:hover{color:var(--gray-50)}
.cookie-notice{position:fixed;z-index:var(--z-panel);left:0;right:0;bottom:0;padding:0 var(--gutter) 16px;pointer-events:none}
.cookie-notice[hidden]{display:none}
.cookie-notice__inner{max-width:var(--container);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:start;padding:16px;background:var(--layer);color:var(--text-primary);border:1px solid var(--border-subtle);pointer-events:auto}
.cookie-notice p{margin:0;color:var(--text-secondary);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track)}
.cookie-notice a{color:var(--link);text-decoration:none}
.cookie-notice a:hover{color:var(--interactive-hover)}
.cookie-notice__actions{display:flex;gap:1px;align-items:stretch}
.cookie-notice__button{min-height:40px;min-width:112px;padding:9px 16px;border:1px solid var(--border-strong);background:var(--layer);color:var(--text-primary);font-size:var(--type-label-02-size);line-height:var(--type-label-02-line);font-weight:600;letter-spacing:var(--type-label-02-track);cursor:pointer}
.cookie-notice__button:hover{background:var(--layer-hover)}
.breadcrumb{max-width:var(--container);margin:0 auto;padding:24px var(--gutter) 0;color:var(--text-helper);font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:var(--type-label-01-weight);letter-spacing:var(--type-label-01-track)}
.breadcrumb ol{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.breadcrumb li{display:flex;gap:8px;align-items:center}
.breadcrumb li:not(:last-child)::after{content:"/";color:var(--text-helper)}
.breadcrumb a{color:var(--link);text-decoration:none}
.breadcrumb a:hover{color:var(--interactive-hover)}
.document-header{padding:36px 0 32px;background:var(--background)}
.document-header__inner{display:grid;gap:12px;max-width:var(--container)}
.document-header h1{max-width:820px;margin:0;color:var(--text-primary);font-size:var(--type-heading-05-size);line-height:var(--type-heading-05-line);font-weight:var(--type-heading-05-weight);letter-spacing:var(--type-heading-05-track)}
.document-meta{margin:0;color:var(--text-helper);font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:var(--type-label-01-weight);letter-spacing:var(--type-label-01-track)}
.document-layout{max-width:var(--container);margin:0 auto;padding:0 var(--gutter);display:grid;grid-template-columns:minmax(180px,260px) minmax(0,760px);gap:56px;align-items:start}
.document-toc{position:sticky;top:calc(var(--header) + 24px);align-self:start}
.document-toc__title{margin:0 0 16px;color:var(--text-helper);font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:600;letter-spacing:var(--type-label-01-track)}
.document-toc ol{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.document-toc a{display:block;color:var(--text-secondary);text-decoration:none;font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track)}
.document-toc a:hover{color:var(--text-primary)}
.document-content{max-width:760px}
.document-content section{padding:0 0 40px;border-bottom:0}
.document-content section:last-child{padding-bottom:0}
.document-content h2{margin:0 0 20px;font-size:var(--type-heading-04-size);line-height:var(--type-heading-04-line);font-weight:var(--type-heading-04-weight);letter-spacing:var(--type-heading-04-track)}
.document-content h3{margin:24px 0 12px;color:var(--text-primary);font-size:var(--type-heading-03-size);line-height:var(--type-heading-03-line);font-weight:var(--type-heading-03-weight);letter-spacing:var(--type-heading-03-track)}
.document-content p,.document-content li{color:var(--text-secondary);font-size:var(--type-body-02-size);line-height:var(--type-body-02-line);font-weight:var(--type-body-02-weight);letter-spacing:var(--type-body-02-track)}
.document-content p{margin:0}
.document-content ul,.document-content ol{display:grid;gap:12px;margin:0;padding-left:24px}
.document-content a{color:var(--link);text-decoration:none}
.document-content a:hover{color:var(--interactive-hover)}
.document-content strong{color:var(--text-primary);font-weight:600}
.document-content em{font-style:italic}
.document-table-wrap{margin:24px 0 0;overflow-x:auto;border:1px solid var(--border-subtle);background:var(--layer-02)}
.document-content table{width:100%;min-width:560px;border-collapse:collapse;font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track)}
.document-content th,.document-content td{padding:12px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--border-subtle)}
.document-content th{background:var(--layer);color:var(--text-primary);font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:600;letter-spacing:var(--type-label-01-track)}
.document-content td{color:var(--text-secondary)}
.document-content tr:last-child td{border-bottom:0}
.document-content blockquote{margin:0 0 32px;padding:16px 16px 16px 24px;border-left:2px solid var(--border-strong);background:var(--layer-hover)}
.document-content blockquote p{color:var(--text-primary)}
.document-content hr{height:1px;margin:32px 0;border:0;background:var(--border-subtle)}
.document-content__minor-heading{margin-top:24px;color:var(--text-primary)}
.legal-hero{padding:72px 0 56px;background:var(--background);border-bottom:1px solid var(--border-subtle)}
.legal-meta{margin:0;color:var(--text-helper);font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:var(--type-label-01-weight);letter-spacing:var(--type-label-01-track)}
.legal-meta code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:var(--text-secondary)}
.legal-layout{max-width:var(--container);margin:0 auto;padding:0 var(--gutter);display:grid;grid-template-columns:minmax(180px,240px) minmax(0,760px) minmax(180px,240px);gap:48px}
.legal-toc,.legal-related{position:sticky;top:calc(var(--header) + 24px);align-self:start}
.legal-toc__title,.legal-related__title{margin:0 0 16px;color:var(--text-helper);font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:600;letter-spacing:var(--type-label-01-track)}
.legal-toc ol{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.legal-toc a,.legal-related a{display:block;color:var(--text-secondary);text-decoration:none;font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track)}
.legal-toc a:hover,.legal-related a:hover{color:var(--text-primary)}
.legal-related{display:grid;gap:8px}
.legal-content{background:var(--layer);border:1px solid var(--border-subtle)}
.legal-content section{padding:32px;border-bottom:1px solid var(--border-subtle)}
.legal-content section:last-child{border-bottom:0}
.legal-content h2{margin:0 0 24px;font-size:var(--type-heading-04-size);line-height:var(--type-heading-04-line);font-weight:var(--type-heading-04-weight);letter-spacing:var(--type-heading-04-track)}
.legal-content h3{margin:24px 0 12px;color:var(--text-primary);font-size:var(--type-heading-03-size);line-height:var(--type-heading-03-line);font-weight:var(--type-heading-03-weight);letter-spacing:var(--type-heading-03-track)}
.legal-content p,.legal-content li{color:var(--text-secondary);font-size:var(--type-body-02-size);line-height:var(--type-body-02-line);font-weight:var(--type-body-02-weight);letter-spacing:var(--type-body-02-track)}
.legal-content p{margin:0}
.legal-content ul,.legal-content ol{display:grid;gap:12px;margin:0;padding-left:24px}
.legal-content a{color:var(--link);text-decoration:none}
.legal-content a:hover{color:var(--interactive-hover)}
.legal-content strong{color:var(--text-primary);font-weight:600}
.legal-content em{font-style:italic}
.legal-content blockquote{margin:24px 0 0;padding:16px 16px 16px 24px;border-left:2px solid var(--border-strong);background:var(--layer-hover)}
.legal-content blockquote p{color:var(--text-primary)}
.legal-content hr{height:1px;margin:32px 0;border:0;background:var(--border-subtle)}
.legal-content__minor-heading{margin-top:24px;color:var(--text-primary)}
.form-field{display:grid;gap:8px;min-width:0}
.form-field span{color:var(--text-helper);font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:600;letter-spacing:var(--type-label-01-track)}
.form-field input,.form-field textarea{width:100%;border:0;border-bottom:1px solid var(--border-strong);border-radius:0;background:var(--layer-02);color:var(--text-primary);padding:0 16px;font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track)}
.form-field input{height:48px}
.form-field textarea{padding-top:12px;padding-bottom:12px}
.form-field input:focus,.form-field textarea:focus{outline:2px solid var(--focus);outline-offset:-2px;border-bottom-color:transparent}
.form-field input::placeholder,.form-field textarea::placeholder{color:var(--text-helper)}
.form-field input[aria-invalid="true"],.form-field textarea[aria-invalid="true"]{outline:2px solid #da1e28;outline-offset:-2px;border-bottom-color:transparent}
.form-field__feedback{min-height:16px;color:#da1e28;font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:var(--type-label-01-weight);letter-spacing:var(--type-label-01-track)}
.auth-page{padding:var(--section) 0}
.auth-page__head{grid-column:1/span 4}
.auth-panel{grid-column:5/span 4;background:var(--layer);border:1px solid var(--border-subtle);padding:32px}
.auth-panel h2{margin:0 0 24px;font-size:var(--type-heading-04-size);line-height:var(--type-heading-04-line);font-weight:var(--type-heading-04-weight);letter-spacing:var(--type-heading-04-track)}
.auth-form{display:grid;gap:20px}
.auth-form__submit{width:100%;min-width:0}
.auth-form__link{justify-self:start;color:var(--link);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track)}
.auth-form__link:hover{color:var(--interactive-hover)}
.admin-page-header{padding:16px 0 12px;background:var(--background);border-bottom:0}
.admin-page-header>.container,.admin-nav-wrap>.container,.admin-workspace>.container{max-width:var(--container);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}
.admin-page-header__inner{display:flex;align-items:center;justify-content:space-between;gap:24px}
.admin-page-header h1{margin:0;color:var(--text-primary);font-size:var(--type-heading-04-size);line-height:var(--type-heading-04-line);font-weight:var(--type-heading-04-weight);letter-spacing:var(--type-heading-04-track)}
.admin-page-header p{margin:4px 0 0;color:var(--text-secondary);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track)}
body.admin-materials-page,body.admin-users-page,body.admin-questions-page,body.admin-calls-page,body.admin-requests-page{min-height:100vh;display:flex;flex-direction:column}
.admin-page--materials{flex:1;display:flex;flex-direction:column}
.admin-page--top-level{flex:1;display:flex;flex-direction:column}
.admin-page--materials .admin-workspace--materials{flex:1}
.admin-page--top-level .admin-workspace{flex:1}
.admin-actions{display:flex;flex-wrap:wrap;gap:1px;margin-top:16px}
.admin-actions .button,.admin-inline-action{min-width:144px}
.admin-settings-form{display:block}
.admin-actions--page{margin-top:32px;padding-top:16px;border-top:1px solid var(--border-subtle);justify-content:flex-end}
.admin-nav-wrap{background:var(--background);border-top:0;border-bottom:0}
.admin-nav{display:flex;align-items:stretch;gap:32px;overflow-x:auto;scrollbar-width:none}
.admin-nav::-webkit-scrollbar{display:none}
.admin-nav{min-height:40px}
.admin-nav__item{display:inline-flex;align-items:center;flex:0 0 auto;white-space:nowrap;color:var(--text-secondary);border-bottom:2px solid transparent}
.admin-nav__item{padding:0;font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:var(--type-label-01-weight);letter-spacing:var(--type-label-01-track)}
.admin-nav__item[aria-disabled="true"]{color:var(--text-helper)}
.admin-nav__item--active{color:var(--text-primary);border-bottom-color:var(--interactive)}
.admin-nav a:hover{background:var(--layer-hover);color:var(--text-primary)}
.admin-nav__badge{display:inline-flex;align-items:center;justify-content:center;min-inline-size:20px;min-height:20px;margin-left:8px;padding:0 6px;background:var(--layer-selected);color:var(--text-primary);font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:600;letter-spacing:var(--type-label-01-track)}
.admin-workspace{padding:24px 0 64px;background:var(--background)}
.admin-workspace__grid{display:grid;grid-template-columns:minmax(180px,272px) minmax(0,1fr);gap:48px;align-items:start}
.admin-local{position:sticky;top:calc(var(--header) + 24px)}
.admin-local__nav{display:grid;border-left:1px solid var(--border-subtle)}
.admin-local__item{display:flex;align-items:center;min-height:40px;padding:8px 16px;color:var(--text-secondary);border-left:3px solid transparent;text-decoration:none;font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track)}
.admin-local__item--active{color:var(--text-primary);border-left-color:var(--interactive);background:transparent}
.admin-local__item[aria-disabled="true"]{color:var(--text-secondary)}
.admin-detail{min-width:0;max-width:960px}
.admin-detail--full{width:100%;max-width:none}
.admin-detail__head{padding-bottom:16px;border-bottom:1px solid var(--border-subtle)}
.admin-detail__head h2{margin:0;color:var(--text-primary);font-size:var(--type-heading-04-size);line-height:var(--type-heading-04-line);font-weight:var(--type-heading-04-weight);letter-spacing:var(--type-heading-04-track)}
.admin-detail__head p{max-width:640px;margin:4px 0 0;color:var(--text-secondary);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track)}
.admin-detail__head--with-actions{display:flex;align-items:center;justify-content:space-between;gap:24px}
.admin-detail__head--with-actions>div{min-width:0}
.admin-detail__head--with-actions .button{flex:0 0 auto}
.admin-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,240px) auto;gap:16px;align-items:end;margin:16px 0}
.admin-toolbar label{display:grid;gap:6px;color:var(--text-helper);font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:600;letter-spacing:var(--type-label-01-track)}
.admin-toolbar input,.admin-toolbar select{width:100%;height:40px;border:0;border-bottom:1px solid var(--border-strong);border-radius:0;background:var(--layer-selected);color:var(--text-primary);padding:0 12px;font:inherit}
.admin-toolbar input:focus,.admin-toolbar select:focus{outline:2px solid var(--focus);outline-offset:2px}
.admin-table-toolbar{display:grid;grid-template-columns:minmax(320px,1fr) minmax(144px,200px) auto;gap:1px;align-items:stretch;margin:12px 0 0;background:var(--border-subtle);border:1px solid var(--border-subtle)}
.admin-table-toolbar label{display:grid;gap:4px;background:var(--layer-02);padding:8px 12px;color:var(--text-helper);font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:600;letter-spacing:var(--type-label-01-track)}
.admin-table-toolbar input,.admin-table-toolbar select{width:100%;height:32px;border:0;border-bottom:1px solid var(--border-strong);border-radius:0;background:transparent;color:var(--text-primary);padding:0;font:inherit}
.admin-table-toolbar input:focus,.admin-table-toolbar select:focus{outline:2px solid var(--focus);outline-offset:2px}
.admin-table-toolbar__utility{height:100%;min-height:56px;border:0;border-left:1px solid var(--border-subtle);background:var(--layer-02);color:var(--text-secondary)}
.admin-table-toolbar__utility:hover{background:var(--layer-hover);color:var(--text-primary)}
.admin-table-toolbar--journal{grid-template-columns:minmax(320px,1fr) minmax(144px,200px) auto;align-items:stretch;margin:8px 0 8px}
.admin-table-toolbar--journal .admin-table-toolbar__search{min-width:0}
.admin-table-toolbar--journal label{gap:0;padding:0 12px;align-content:center}
.admin-table-toolbar--journal input,.admin-table-toolbar--journal select{height:32px}
.admin-table-toolbar--journal .admin-table-toolbar__utility{min-height:40px;height:auto;padding:0 16px}
.admin-detail .admin-form{margin-top:16px}
.admin-detail__section{scroll-margin-top:calc(var(--header) + 72px)}
.admin-detail__section + .admin-detail__section{margin-top:32px;padding-top:24px;border-top:1px solid var(--border-subtle)}
.admin-detail__section--placeholder h2{margin:0 0 8px;color:var(--text-secondary);font-size:var(--type-heading-03-size);line-height:var(--type-heading-03-line);font-weight:var(--type-heading-03-weight);letter-spacing:var(--type-heading-03-track)}
.admin-detail__section--placeholder p{max-width:720px;margin:0;color:var(--text-secondary);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track)}
.admin-field-list{display:grid;border-top:1px solid var(--border-subtle)}
.admin-field-row{display:grid;grid-template-columns:minmax(160px,240px) minmax(0,1fr);gap:24px;align-items:center;min-height:48px;padding:8px 0;border-bottom:1px solid var(--border-subtle)}
.admin-field-row__label{color:var(--text-secondary);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track)}
.admin-field-row__control{min-width:0;color:var(--text-primary);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track)}
.admin-field-row__control input{width:100%;height:40px;border:0;border-bottom:1px solid transparent;border-radius:0;background:transparent;color:var(--text-primary);padding:0;font:inherit;letter-spacing:inherit}
.admin-field-row__control input:focus{outline:2px solid var(--focus);outline-offset:2px;border-bottom-color:transparent;background:var(--layer)}
.admin-field-row__control input[type="checkbox"]{width:18px;height:18px;border:1px solid var(--border-strong);accent-color:var(--link);background:transparent}
.admin-field-row__control input[type="checkbox"]:focus{background:transparent}
.admin-field-row--readonly{align-items:start}
.admin-field-row--readonly .admin-field-row__control{padding:8px 0}
.admin-section{scroll-margin-top:calc(var(--header) + 96px)}
.admin-section--quiet .section__head h2{color:var(--text-secondary)}
.admin-form{display:grid;gap:20px}
.admin-form__group{display:grid;gap:8px;padding-top:16px;border-top:1px solid var(--border-subtle)}
.admin-form__group:first-child{padding-top:0;border-top:0}
.admin-form__group h3{margin:0;color:var(--text-primary);font-size:var(--type-label-02-size);line-height:var(--type-label-02-line);font-weight:600;letter-spacing:var(--type-label-02-track)}
.admin-form__grid{display:grid;gap:16px}
.admin-form__grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}
.admin-form__grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.form-field--wide{grid-column:span 2}
.admin-computed{display:grid;gap:8px;margin-top:24px;padding:16px;background:var(--layer-02);border-left:4px solid var(--interactive)}
.admin-computed span{color:var(--text-helper);font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:600;letter-spacing:var(--type-label-01-track)}
.admin-computed output{color:var(--text-primary);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track)}
.admin-table-wrap{overflow-x:auto;border:1px solid var(--border-subtle);background:var(--layer-02)}
.admin-table{--admin-table-header-row-min-height:32px;--admin-table-data-row-min-height:32px;--admin-table-cell-padding-block:6px;--admin-table-cell-padding-inline:12px;width:100%;min-width:760px;border-collapse:collapse;font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track)}
.admin-table--materials{min-width:1120px}
.admin-table--materials .admin-table__col-material{width:24%}
.admin-table--materials .admin-table__col-category{width:16%}
.admin-table--materials .admin-table__col-updated{width:10%}
.admin-table--materials .admin-table__col-version{width:8%}
.admin-table--materials .admin-table__col-status{width:10%}
.admin-table--materials .admin-table__col-publication{width:14%}
.admin-table--materials .admin-table__col-actions{width:18%}
.admin-table--users{min-width:1120px}
.admin-table--users .admin-table__col-user{width:18%}
.admin-table--users .admin-table__col-email{width:17%}
.admin-table--users .admin-table__col-role{width:13%}
.admin-table--users .admin-table__col-subscription{width:10%}
.admin-table--users .admin-table__col-status{width:10%}
.admin-table--users .admin-table__col-last-login{width:14%}
.admin-table--users .admin-table__col-actions{width:18%}
.admin-table--permissions{min-width:560px}
.admin-table--permissions .admin-table__col-permission-section{width:70%}
.admin-table--permissions .admin-table__col-permission-access{width:30%}
.admin-table--permissions input[type="checkbox"]{width:18px;height:18px;accent-color:var(--link)}
.admin-table--journal{min-width:1040px}
.admin-table--journal .admin-table__col-date{width:16%}
.admin-table--journal .admin-table__col-contact{width:22%}
.admin-table--journal .admin-table__col-name{width:18%}
.admin-table--journal .admin-table__col-email{width:24%}
.admin-table--journal .admin-table__col-question,.admin-table--journal .admin-table__col-request{width:30%}
.admin-table--journal .admin-table__col-phone{width:34%}
.admin-table--journal .admin-table__col-status{width:12%}
.admin-table--journal .admin-table__col-actions{width:20%}
.admin-table.admin-table--compact{--admin-table-header-row-min-height:32px;--admin-table-data-row-min-height:32px;--admin-table-cell-padding-block:6px;--admin-table-cell-padding-inline:12px}
.admin-table.admin-table--compact th,.admin-table.admin-table--compact td{vertical-align:middle}
.admin-table .status{min-height:20px;padding:1px 8px}
.admin-table .admin-action-group{flex-wrap:nowrap;gap:4px 12px;align-items:center;white-space:nowrap}
.admin-table--journal .status{inline-size:auto;min-width:88px;min-height:20px;padding:1px 8px}
.admin-table--journal .admin-action-group{display:flex;flex-wrap:nowrap;gap:12px;align-items:center;white-space:nowrap}
.admin-table th,.admin-table td{padding:var(--admin-table-cell-padding-block) var(--admin-table-cell-padding-inline);text-align:left;vertical-align:middle;border-bottom:1px solid var(--border-subtle)}
.admin-table th{height:var(--admin-table-header-row-min-height)}
.admin-table td{height:var(--admin-table-data-row-min-height)}
.admin-table th{background:var(--layer);color:var(--text-primary);font-size:var(--type-label-01-size);line-height:var(--type-label-01-line);font-weight:600;letter-spacing:var(--type-label-01-track)}
.admin-table td{color:var(--text-secondary)}
.admin-table tr:last-child td{border-bottom:0}
.admin-link-button{display:inline-flex;margin:0 16px 0 0;padding:0;border:0;background:transparent;color:var(--link);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track);cursor:pointer}
.admin-link-button:hover{color:var(--interactive-hover)}
.admin-link-button:disabled,.admin-link-button[aria-disabled="true"]{color:var(--text-helper);cursor:not-allowed}
.admin-path-cell{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-table__meta{display:block;margin-top:4px;color:var(--text-muted);font-size:var(--text-small)}
.admin-action-group{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:flex-start}
.admin-action-group .admin-link-button{margin:0}
.admin-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;padding:20px 0;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle)}
.admin-row h3{margin-bottom:8px}
.admin-row p{max-width:760px;margin:0;color:var(--text-secondary);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track)}
.admin-row .status{inline-size:auto;min-width:112px}
.admin-row--compact{padding:16px 0}
.admin-actions--inline{justify-content:flex-end;margin-top:0}
.admin-row--stack{align-items:start}
.admin-check-list{display:grid;gap:14px}
.admin-check-list label{display:flex;align-items:center;gap:12px;color:var(--text-secondary);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);letter-spacing:var(--type-body-01-track)}
.admin-check-list input{width:16px;height:16px;margin:0;accent-color:var(--interactive)}

@media (max-width:1055px){
  .masthead__brand{padding:0 20px 0 16px}
  .masthead__nav{padding-left:16px}
  .masthead__link--tablet-hidden{display:none}
  .tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .workflow__row{grid-template-columns:64px minmax(0,1fr)}
  .workflow__meta{grid-column:2;border-left:1px solid var(--border-subtle);border-top:1px solid var(--border-subtle)}
  .role-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .document-layout{grid-template-columns:minmax(0,1fr);gap:32px}
  .document-toc{position:static}
  .legal-layout{grid-template-columns:minmax(0,1fr);gap:32px}
  .legal-toc,.legal-related{position:static}
  .legal-related{padding-top:24px;border-top:1px solid var(--border-subtle)}
  .auth-page__head,.auth-panel{grid-column:1/-1}
  .auth-page__head{margin-bottom:32px}
  .auth-panel{max-width:560px}
  .admin-form__grid--three{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:671px){
  .masthead__button.masthead__menu-button{display:inline-grid}
  .masthead__brand{flex:1 1 auto;min-width:0;padding:0 16px;font-size:var(--type-heading-03-size);line-height:var(--type-heading-03-line)}
  .masthead__brand span{display:none}
  .masthead__divider,.masthead__nav{display:none}
  .masthead__actions{margin-left:0}
  .button-row{display:grid;grid-template-columns:1fr}
  .button{width:100%;min-width:0}
  .tile-grid,.role-list{grid-template-columns:1fr}
  .tile,.role{min-height:auto}
  .workflow__row{grid-template-columns:1fr}
  .workflow__step{padding:16px 16px 0}
  .workflow__main{border-left:0;padding:8px 16px 16px}
  .workflow__meta{grid-column:auto;border-left:0;padding:16px}
  .footer__main{grid-template-columns:1fr;gap:32px;padding-bottom:32px}
  .footer__bar{display:grid;grid-template-columns:1fr;justify-items:stretch;gap:12px;text-align:left}
  .footer__utility{gap:16px}
  .cookie-notice{padding:0 16px 16px}
  .cookie-notice__inner{grid-template-columns:1fr;gap:16px}
  .cookie-notice__actions{display:grid;grid-template-columns:1fr}
  .cookie-notice__button{width:100%}
  .breadcrumb{padding-top:16px}
  .document-header{padding:32px 0 28px}
  .document-header h1{font-size:var(--type-heading-04-size);line-height:var(--type-heading-04-line)}
  .document-content section{padding:0 0 32px}
  .legal-hero{padding:48px 0 40px}
  .legal-content section{padding:24px 16px}
  .auth-panel{padding:24px 16px}
  .admin-page-header{padding:14px 0 12px}
  .admin-page-header__inner{display:grid;gap:12px}
  .admin-actions{display:grid;grid-template-columns:1fr}
  .admin-actions .button,.admin-inline-action{width:100%;min-width:0}
  .admin-nav-wrap{top:var(--header)}
  .admin-workspace{padding:20px 0 48px}
  .admin-workspace__grid{grid-template-columns:1fr;gap:24px}
  .admin-local{position:static;overflow-x:auto;scrollbar-width:none}
  .admin-local::-webkit-scrollbar{display:none}
  .admin-local__nav{display:flex;border-left:0;border-bottom:1px solid var(--border-subtle)}
  .admin-local__item{flex:0 0 auto;white-space:nowrap;border-left:0;border-bottom:2px solid transparent}
  .admin-local__item--active{border-bottom-color:var(--interactive);background:transparent}
  .admin-field-row{grid-template-columns:1fr;gap:4px;align-items:start;padding:12px 0}
  .admin-field-row__control input{height:36px}
  .admin-section{scroll-margin-top:calc(var(--header) + 96px)}
  .admin-form__grid--two,.admin-form__grid--three{grid-template-columns:1fr}
  .form-field--wide{grid-column:auto}
  .admin-table{min-width:680px}
  .admin-table--materials{min-width:1040px}
  .admin-row{grid-template-columns:1fr}
  .admin-link-button{margin:0 12px 8px 0}

  .admin-toolbar{grid-template-columns:1fr;align-items:stretch}
  .admin-toolbar .button{justify-self:start}
  .admin-table-toolbar{grid-template-columns:1fr;gap:1px}
  .admin-table-toolbar__utility{min-height:40px;border-left:0;border-top:1px solid var(--border-subtle);justify-self:stretch}
  .admin-table-toolbar--journal{grid-template-columns:1fr;margin:8px 0}

  .admin-table--journal{min-width:900px}
  .admin-table--journal .admin-action-group{display:flex;flex-wrap:nowrap;gap:12px}
  .admin-detail__head--with-actions{display:grid;gap:12px}
  .admin-detail__head--with-actions .button{justify-self:start}
  .admin-action-group{display:grid;gap:8px}
}

@media (prefers-reduced-motion:reduce){
  .masthead,.masthead__panel{transition:none}
}


.contact-request{margin-top:24px;display:grid;gap:20px;max-width:720px}
.contact-request[hidden]{display:none}
.contact-request__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.contact-request__wide{grid-column:1/-1}
.contact-request textarea{min-height:120px;resize:vertical}
.contact-request__consent{display:flex;align-items:flex-start;gap:10px;color:var(--text-secondary);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line)}
.contact-request__consent input{margin-top:3px;inline-size:18px;block-size:18px;accent-color:var(--interactive)}
.contact-request__consent a{color:var(--link)}
.contact-request__trap{position:absolute!important;inline-size:1px!important;block-size:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}
.contact-request__actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.contact-request__status{margin:0;color:var(--text-secondary);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line)}
.contact-request__status[data-state="success"]{color:var(--status-success)}
.contact-request__status[data-state="error"]{color:#da1e28}
.admin-status-message{margin:12px 0 0;color:var(--text-secondary);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line)}
.admin-status-message[data-state="success"]{color:var(--status-success)}
.admin-status-message[data-state="error"]{color:#da1e28}
@media (max-width:672px){.contact-request__grid{grid-template-columns:1fr}.contact-request__actions{align-items:stretch}.contact-request__actions .button{width:100%}}

/* Site search v1: public landing + details */
.site-search-group {
  display: grid;
  gap: 12px;
  padding-block: 8px;
}

.site-search-group + .site-search-group {
  border-top: 1px solid var(--border-subtle);
  padding-top: 16px;
}

.site-search-group h3 {
  margin: 0;
  color: var(--text-muted);
  font-size: var(--type-body-01-size);
  font-weight: 500;
}

.site-search-results {
  display: grid;
  gap: 8px;
}

.site-search-result {
  display: grid;
  gap: 4px;
  padding: 12px;
  color: var(--text-primary);
  text-decoration: none;
  background: var(--layer);
  border: 1px solid transparent;
}

.site-search-result:hover,
.site-search-result:focus-visible {
  background: var(--layer-02);
  border-color: var(--border-subtle);
  outline: none;
}

.site-search-result__title {
  font-weight: 500;
}

.site-search-result__snippet {
  color: var(--text-muted);
  font-size: var(--type-body-01-size);
  line-height: 1.5;
}

.site-search-empty {
  display: grid;
  gap: 12px;
  color: var(--text-muted);
  font-size: var(--type-body-01-size);
}

.site-search-empty strong {
  color: var(--text-primary);
  font-weight: 500;
}

.site-search-empty p {
  margin: 0;
}

.site-search-suggestions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.site-search-suggestion,
.site-search-cta {
  min-height: 2.25rem;
  padding: 0 12px;
  border: 1px solid var(--border-subtle);
  color: var(--text-primary);
  background: var(--layer);
  font: inherit;
  cursor: pointer;
}

.site-search-suggestion:hover,
.site-search-cta:hover,
.site-search-suggestion:focus-visible,
.site-search-cta:focus-visible {
  border-color: var(--blue);
  outline: 2px solid var(--blue);
  outline-offset: -2px;
}

.search-hit {
  color: inherit;
  background: color-mix(in srgb, var(--blue) 22%, transparent);
  box-decoration-break: clone;
}

.search-section-focus {
  scroll-margin-top: 6rem;
}
/* Search is hidden from the masthead while the public search UX is under development. */
#searchBtn,
#searchPanel{display:none!important}

/* Public adaptive navigation: desktop product menu, tablet/mobile drawer. */
.masthead__product-button{
  appearance:none;
  height:var(--header);
  display:inline-flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
  padding:0 16px;
  border:0;
  border-bottom:2px solid transparent;
  background:transparent;
  cursor:pointer;
}
.masthead__product-button[aria-expanded="true"],
.masthead__product-button.masthead__link--active{
  color:var(--gray-10);
  border-bottom-color:var(--interactive);
  background:var(--gray-90);
}
.masthead__chevron{
  width:16px;
  height:16px;
  transition:transform var(--motion-fast);
}
.masthead__product-button[aria-expanded="true"] .masthead__chevron{
  transform:rotate(180deg);
}
.masthead__panel{
  left:calc(24px + 176px + 1px + 24px);
  width:248px;
  max-height:calc(100vh - var(--header));
  overflow:auto;
  background:var(--gray-100);
  border:1px solid var(--gray-80);
  border-top:0;
  box-shadow:none;
  transform:translateY(-8px);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity var(--motion-fast),transform var(--motion-fast),visibility var(--motion-fast);
}
.masthead__panel.open{
  transform:translateY(0);
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.masthead__panel-title{
  display:none;
}
.masthead__panel a{
  min-height:40px;
  justify-content:flex-start;
  padding:0 16px;
  color:var(--gray-30);
  border-bottom:0;
  font-size:var(--type-label-02-size);
  line-height:var(--type-label-02-line);
}
.masthead__panel a:hover,
.masthead__panel a.masthead__link--active,
.masthead__panel a[aria-current="true"]{
  background:var(--gray-90);
  color:var(--gray-10);
}
@media (max-width:1055px){
  .masthead__button.masthead__menu-button{display:inline-grid}
  .masthead__brand{padding:0 16px}
  .masthead__divider,
  .masthead__nav{display:none}
  .masthead__actions{margin-left:auto}
  .masthead__panel{
    left:0;
    right:auto;
    width:min(360px,calc(100vw - 48px));
    height:calc(100vh - var(--header));
    max-height:calc(100vh - var(--header));
    border-left:0;
    border-top:0;
    border-bottom:0;
    transform:translateX(-100%);
    opacity:1;
    visibility:visible;
    pointer-events:none;
    transition:transform var(--motion-fast);
  }
  .masthead__panel.open{
    transform:translateX(0);
    pointer-events:auto;
  }
  .masthead__panel-title{
    display:block;
    margin:0;
    padding:16px 24px;
    color:var(--gray-40);
    font-size:var(--type-label-01-size);
    line-height:var(--type-label-01-line);
    font-weight:600;
    letter-spacing:var(--type-label-01-track);
    border-bottom:1px solid var(--gray-80);
  }
  .masthead__panel a{
    min-height:48px;
    padding:0 24px;
    border-bottom:1px solid var(--gray-80);
    font-size:var(--type-body-02-size);
    line-height:var(--type-body-02-line);
  }
}
@media (max-width:671px){
  .masthead__brand{padding:0 12px;font-size:var(--type-label-02-size)}
  .masthead__brand span{display:none}
  .masthead__button{width:48px;flex-basis:48px}
  .masthead__call-button:not([hidden]){display:inline-grid}
  .masthead__panel{width:min(320px,calc(100vw - 32px))}
}

/* Public mobile UX contract: structured side nav, compact footer, secondary call CTA. */
.masthead__panel-product{display:grid}
.masthead__panel-section--description{display:none}
.masthead__panel-description{display:none!important}
.contact-call-mobile{display:none!important}
.footer__mobile-service{display:none}

@media (max-width:1055px){
  .masthead__panel-section--description{
    display:block;
    margin-top:8px;
    border-top:1px solid var(--gray-80);
  }
  .masthead__panel-product a,
  .masthead__panel-description{
    display:flex!important;
    padding-left:40px!important;
  }
}

@media (max-width:672px){
  .footer__inner{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:start;
    column-gap:20px;
    padding:28px var(--gutter) 24px;
  }
  .footer__logo{width:112px;margin:0;transform:translateX(-7px)}
  .footer__main{display:block;grid-column:1;grid-row:1;padding-bottom:0;min-width:0}
  .footer__group[aria-labelledby="footer-nav"],
  .footer__group[aria-labelledby="footer-legal"],
  .footer__company .footer__contact{display:none}
  .footer__group h2{margin-bottom:0}
  .footer__bar{
    display:flex;
    grid-column:2;
    grid-row:1;
    align-items:center;
    justify-content:flex-end;
    margin-top:0;
    padding-top:0;
    border-top:0;
    text-align:left;
  }
  .footer__utility{gap:20px}
  .footer__meta{
    grid-column:1 / -1;
    grid-row:3;
    margin-top:16px;
    justify-content:flex-start;
    gap:12px;
    color:var(--inverse-secondary);
    white-space:normal;
  }
  .footer__mobile-service{
    display:block;
    grid-column:1 / -1;
    grid-row:2;
    margin-top:20px;
    border-top:1px solid var(--inverse-border);
  }
  .footer__mobile-service summary{
    min-height:48px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    color:var(--inverse-text);
    cursor:pointer;
    list-style:none;
  }
  .footer__mobile-service summary::-webkit-details-marker{display:none}
  .footer__mobile-service summary::after{
    content:"⌄";
    color:var(--inverse-secondary);
    font-weight:400;
  }
  .footer__mobile-service[open] summary::after{content:"⌃"}
  .footer__mobile-service-list{
    display:grid;
    gap:12px;
    margin:0;
    padding:0 0 4px;
    list-style:none;
  }
  .footer__mobile-service-list li{
    display:grid;
    gap:4px;
  }
  .footer__mobile-service-label{
    color:var(--gray-50);
  }
  .footer__mobile-legal{
    display:grid;
    gap:8px;
  }
  .contact-panel__actions{align-items:stretch}
  .contact-panel__actions .button{width:100%}
  .contact-call-mobile:not([hidden]){display:inline-flex!important}
}

.masthead__link--office{min-height:var(--header);display:flex;align-items:center;padding:0 16px;border-left:1px solid var(--inverse-border);color:var(--inverse-secondary);font-size:var(--type-body-01-size);line-height:var(--type-body-01-line);font-weight:var(--type-body-01-weight);text-decoration:none;white-space:nowrap}
.masthead__link--office:hover,.masthead__link--office:focus{background:var(--inverse-layer);color:var(--inverse-text);outline:none}
.masthead__link--office:focus-visible{box-shadow:inset 0 -2px 0 var(--focus)}
@media (max-width:672px){.masthead__link--office{display:none}}
