/* Reference lock: the product's blue actions, navy workspace and yellow note paper. */
.public-page {
  --public-canvas:#fff; --public-soft:#f5f7fb; --public-ink:#18283d;
  --public-muted:#617084; --public-line:#dfe5ee; --public-blue:#225de5;
  --public-action:#225de5; --public-hover:#194ab9; --public-blue-soft:#edf3ff;
  margin:0; background:var(--public-canvas); color:var(--public-ink);
  font:15px/1.6 "Segoe UI", -apple-system, BlinkMacSystemFont, Arial, sans-serif;
  -webkit-font-smoothing:antialiased;
}
.public-page[data-theme="dark"] {
  --public-canvas:#101b2d; --public-soft:#16243a; --public-ink:#edf3fc;
  --public-muted:#b0bdd0; --public-line:#30435e; --public-blue:#8ab4ff; --public-action:#2867e8;
  --public-hover:#2058cd; --public-blue-soft:#203657; color-scheme:dark;
}
.public-page *, .public-page *::before, .public-page *::after { box-sizing:border-box; }
.public-page :is(h1,h2,h3,p,figure) { margin:0; }
:where(.public-page) :where(button,input) { font:inherit; }
.public-page button, .public-page a { -webkit-tap-highlight-color:transparent; touch-action:manipulation; }
.public-page a { color:inherit; text-decoration:none; }
.public-page button { cursor:pointer; }
.public-page [hidden] { display:none !important; }
.public-page :is(button,a,input):focus-visible { outline:3px solid #71a0ff; outline-offset:4px; }
.public-page :is(button,a):disabled { opacity:.5; cursor:not-allowed; }
.public-page [id] { scroll-margin-top:24px; }
.public-icon { width:21px; height:21px; flex:0 0 auto; vertical-align:middle; }
.public-skip { position:fixed; z-index:100; left:16px; top:-90px; padding:12px 18px; border-radius:8px; background:var(--public-action); color:white !important; }
.public-skip:focus { top:12px; }
.public-header { position:relative; z-index:10; display:flex; align-items:center; justify-content:space-between; gap:32px; max-width:1440px; min-height:92px; padding:20px 48px; margin:auto; border-bottom:1px solid var(--public-line); }
.public-brand { display:inline-flex; gap:10px; align-items:center; flex-shrink:0; font-size:27px; line-height:1.2; letter-spacing:-1px; font-weight:500; }
.public-brand strong { font-weight:750; }
.public-brand-mark { display:block; width:46px; height:46px; object-fit:contain; }
.public-nav, .public-header-actions { display:flex; gap:28px; align-items:center; }
.public-nav { font-size:13px; font-weight:550; color:var(--public-muted); }
.public-nav a:hover, .public-sign-in:hover, .public-back:hover { color:var(--public-blue); }
.public-header-actions { gap:18px; }
.public-sign-in { font-size:13px; font-weight:650; }
.public-icon-button { display:grid; place-items:center; flex-shrink:0; width:40px; height:40px; border:1px solid var(--public-line); background:var(--public-canvas); color:var(--public-muted); border-radius:9px; }
.public-icon-button:hover { background:var(--public-soft); }
.public-button { display:inline-flex; justify-content:center; align-items:center; gap:20px; min-height:50px; padding:13px 23px; border:1px solid var(--public-action); border-radius:8px; background:var(--public-action); color:#fff !important; font-size:14px; font-weight:650; line-height:1.4; text-align:center; transition:background-color .16s,border-color .16s; }
.public-button:hover { background:var(--public-hover); border-color:var(--public-hover); }
.public-button--small { min-height:42px; padding:10px 17px; font-size:12px; gap:14px; }
.public-button--small .public-icon { width:17px; height:17px; }
.public-button--secondary { border-color:var(--public-line); background:var(--public-canvas); color:var(--public-ink) !important; }
.public-button--secondary:hover { border-color:#a7b8d1; background:var(--public-soft); }
.public-button--white { border-color:white; background:white; color:#17304d !important; }
.public-button--white:hover { border-color:#e2ebf8; background:#e2ebf8; }
.public-button--full { width:100%; }
.public-button--full .public-icon { margin-left:auto; }
.public-menu-toggle { display:none; }
.public-back { display:flex; gap:10px; align-items:center; font-size:13px; color:var(--public-muted) !important; }
.public-eyebrow { display:block; color:var(--public-blue); font-size:11px; line-height:1.5; font-weight:750; letter-spacing:1.5px; }
.landing-hero { max-width:1264px; padding:74px 32px 0; margin:auto; text-align:center; }
.landing-hero > .public-eyebrow { display:flex; align-items:center; justify-content:center; gap:10px; }
.eyebrow-mark { width:7px; height:7px; background:var(--public-blue); border-radius:2px; }
.landing-hero h1 { margin:22px auto 24px; font-size:clamp(36px,4.4vw,64px); line-height:1.14; font-weight:750; letter-spacing:-2.6px; }
.landing-lede { color:var(--public-muted); font-size:17px; line-height:1.7; }
.landing-hero-actions { display:flex; justify-content:center; flex-wrap:wrap; gap:12px; margin-top:30px; }
.landing-highlights { display:flex; justify-content:center; flex-wrap:wrap; gap:24px; margin:25px 0 46px; color:var(--public-muted); font-size:11px; }
.landing-highlights > span { display:flex; align-items:center; gap:6px; }
.landing-highlights .public-icon { width:15px; height:15px; color:#278066; stroke-width:2; }
.landing-product { position:relative; padding:0; border:1px solid var(--public-line); border-radius:12px; background:var(--public-soft); box-shadow:0 20px 65px #192c4d12; text-align:left; }
.landing-product-bar { min-height:52px; display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px 20px; color:var(--public-muted); font-size:11px; border-bottom:1px solid var(--public-line); }
.landing-product-bar > span:nth-child(2) { display:flex; align-items:center; gap:8px; }
.landing-product-bar .public-icon { width:16px; height:16px; color:var(--public-blue); }
.preview-dots { display:flex; align-items:center; gap:5px; }
.preview-dots i { display:block; width:7px; height:7px; background:#b4c1d2; border-radius:50%; }
.preview-example { font-size:8px; font-weight:700; letter-spacing:1px; }
.landing-product img { display:block; width:100%; height:auto; border-radius:0 0 11px 11px; }
.landing-product figcaption { position:absolute; width:100%; left:0; bottom:-35px; text-align:center; color:var(--public-muted); font-size:11px; }
.public-section { width:min(1120px,calc(100% - 80px)); margin:auto; padding:112px 0; }
.public-section h2, .collaboration-section h2 { font-size:clamp(32px,3.3vw,45px); font-weight:700; line-height:1.2; letter-spacing:-1.5px; }
.workflow-section { display:grid; grid-template-columns:.9fr 1.1fr; gap:100px; margin-top:45px; }
.section-intro h2 { margin:20px 0; }
.section-intro p, .resources-heading > p { color:var(--public-muted); font-size:15px; line-height:1.8; }
.workflow-list { list-style:none; margin:0; padding:0; }
.workflow-list li { display:flex; gap:28px; padding:25px 0; border-bottom:1px solid var(--public-line); }
.workflow-list li:first-child { padding-top:0; }
.workflow-number { color:var(--public-blue); font-size:12px; font-weight:650; padding-top:4px; }
.workflow-list h3, .resource-details h3 { font-size:18px; line-height:1.4; font-weight:650; letter-spacing:-.35px; }
.workflow-list p { color:var(--public-muted); margin-top:8px; font-size:14px; line-height:1.8; }
.resources-section { display:grid; grid-template-columns:1fr 1.1fr; gap:100px; border-top:1px solid var(--public-line); }
.resources-heading h2 { margin:20px 0; }
.resources-heading > p { max-width:370px; }
.public-inline-link { display:inline-flex; align-items:center; gap:14px; color:var(--public-blue) !important; font-size:13px; font-weight:650; margin-top:24px; }
.resource-details { display:grid; gap:30px; }
.resource-details article { display:flex; align-items:flex-start; gap:20px; }
.resource-details article > .public-icon { padding:9px; width:40px; height:40px; color:var(--public-blue); background:var(--public-blue-soft); border-radius:8px; }
.resource-details h3 { font-size:16px; }
.resource-details p { color:var(--public-muted); margin-top:7px; font-size:13px; line-height:1.8; }
.collaboration-section { background:#102b49; color:#fff; padding:86px 40px; }
.collaboration-inner { display:grid; grid-template-columns:1fr 1.05fr; align-items:center; gap:100px; max-width:1120px; margin:auto; }
.collaboration-copy .public-eyebrow { color:#a4c5fc; }
.collaboration-copy h2 { margin:22px 0; }
.collaboration-copy p { color:#c2d1e4; max-width:380px; font-size:15px; line-height:1.8; }
.collaboration-copy .public-button { margin-top:30px; }
.shared-example { padding:24px; border:1px solid #44607e; background:#153452; border-radius:12px; }
.shared-example-header { display:flex; align-items:center; gap:12px; margin-bottom:22px; }
.shared-example-header > .public-icon { width:27px; height:27px; color:#a1c7ff; }
.shared-example-header > div:nth-child(2) { min-width:0; }
.shared-example-header strong { display:block; font-size:14px; font-weight:600; }
.shared-example-header > div > span { font-size:8px; color:#b6c9e0; letter-spacing:1.2px; }
.shared-avatars { display:flex; margin-left:auto; padding-left:10px; }
.shared-avatars span { display:grid; place-items:center; width:28px; height:28px; border-radius:50%; background:#c4daf5; color:#163657; font-size:8px; font-weight:700; border:2px solid #153452; margin-left:-7px; }
.shared-avatars span:nth-child(2) { background:#f8e6ae; }
.shared-avatars span:nth-child(3) { background:#b9e0d4; }
.shared-example-row { display:flex; align-items:center; gap:12px; padding:18px 12px; margin-top:10px; border:1px solid #42607b; background:#1e3e5b; border-radius:8px; }
.shared-example-row strong { display:block; font-size:12px; font-weight:600; }
.shared-example-row small { display:block; font-size:10px; color:#c1d0e1; margin-top:3px; }
.shared-check { width:17px; height:17px; flex:0 0 auto; border:1px solid #9ab1c9; border-radius:4px; }
.shared-check.is-done { display:grid; place-items:center; color:#103d32; background:#96dac0; border-color:#96dac0; }
.shared-check .public-icon { width:13px; height:13px; }
.shared-person { display:grid; place-items:center; flex-shrink:0; width:26px; height:26px; margin-left:auto; border-radius:50%; font-size:8px; background:#f6e3a6; color:#524323; }
.shared-person--blue { background:#bfd5f5; color:#213f66; }
.shared-example-message { display:flex; align-items:center; gap:13px; margin:22px 0; padding:0 10px; }
.shared-example-message p { font-size:12px; line-height:1.7; color:#c7d7e9; }
.shared-example-message .public-icon { color:#b7d4ff; }
.shared-example-caption { display:block; color:#b4c9de; font-size:9px; text-align:right; }
.landing-bottom-cta { text-align:center; }
.landing-brand-banner { display:block; width:min(900px,100%); height:auto; margin:0 auto 42px; border-radius:14px; background:#020d22; }
.landing-bottom-cta h2 { margin:20px 0; }
.landing-bottom-cta p { color:var(--public-muted); }
.landing-bottom-cta .public-button { margin-top:28px; }
.public-footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:20px; padding:26px 48px; border-top:1px solid var(--public-line); font-size:11px; color:var(--public-muted); }
.public-footer > span { color:var(--public-ink); font-weight:600; }
.public-footer-version { color:var(--public-muted); font-weight:400; margin-left:5px; }
.public-footer > div { display:flex; align-items:center; gap:22px; }
.public-footer button { border:0; padding:0; background:transparent; color:inherit; font-size:inherit; }
.public-footer :is(button,a):hover { color:var(--public-blue); }

/* Login: supplied Priorix lockup, with distinct light and dark artwork. */
.login-layout { display:grid; grid-template-columns:1fr 1fr; min-height:calc(100dvh - 166px); }
.login-story { position:relative; display:flex; flex-direction:column; justify-content:center; padding:52px clamp(36px,6vw,104px) 34px; background:#eff6ff; color:#18283d; overflow:hidden; }
.login-story .public-eyebrow { color:#225de5; font-size:9px; }
.login-story h2 { font-size:clamp(34px,3.5vw,50px); line-height:1.15; font-weight:650; letter-spacing:-1.7px; margin:21px 0 18px; }
.login-story-copy > p { max-width:355px; color:#617084; font-size:14px; line-height:1.8; }
.login-brand-art { display:block; width:min(380px,100%); height:auto; margin:0 auto 36px; object-fit:contain; }
.login-story-footer { display:flex; align-items:center; gap:9px; font-size:10px; color:#617084; margin-top:auto !important; padding-top:28px; }
.login-story-footer .public-icon { width:16px; height:16px; }
.public-page[data-theme="dark"] .login-story { background:#04152c; color:#fff; }
.public-page[data-theme="dark"] .login-story .public-eyebrow { color:#b2cdf1; }
.public-page[data-theme="dark"] .login-story-copy > p { color:#c2d1e4; }
.public-page[data-theme="dark"] .login-story-footer { color:#afc5df; }
.login-form-area { display:flex; justify-content:center; align-items:center; min-width:0; padding:60px 44px; }
.login-form-wrap { width:100%; max-width:374px; }
.login-form-wrap > .public-eyebrow { font-size:9px; }
.login-form-wrap h1 { font-size:33px; font-weight:700; line-height:1.25; letter-spacing:-1.1px; margin:16px 0 12px; }
.login-lede { font-size:13px; color:var(--public-muted); }
.public-form { display:grid; gap:22px; margin-top:30px; }
.public-field { display:grid; gap:8px; min-width:0; }
.public-field label { font-size:12px; line-height:1.5; font-weight:650; }
.public-field input { width:100%; min-width:0; min-height:48px; padding:12px 14px; border:1px solid var(--public-line); border-radius:7px; color:var(--public-ink); background:var(--public-canvas); font-size:13px; transition:border-color .16s; }
.public-field input:hover { border-color:#9eacc0; }
.public-field input::placeholder { color:#8490a1; opacity:1; }
.public-field input:focus-visible { outline:3px solid #91b2ff; outline-offset:2px; }
.public-field-heading { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; }
.public-text-button { border:0; background:transparent; color:var(--public-blue); padding:0; font-size:12px; font-weight:600; text-align:left; }
.public-text-button:hover { text-decoration:underline; }
.public-password-field { position:relative; }
.public-password-field input { padding-right:48px; }
.public-password-field > button { position:absolute; top:4px; right:4px; display:grid; place-items:center; width:40px; height:40px; color:var(--public-muted); background:transparent; border:0; border-radius:5px; }
.public-password-field > button[aria-pressed="true"] { color:var(--public-blue); background:var(--public-blue-soft); }
.public-password-field .public-icon { width:19px; height:19px; }
.public-remember { display:flex; align-items:center; gap:9px; font-size:11px; color:var(--public-muted); }
.public-remember input { width:16px; height:16px; flex:0 0 auto; margin:0; accent-color:var(--public-blue); }
.public-cookie-hint { font-size:10px; line-height:1.7; color:var(--public-muted); margin-top:-12px !important; }
.public-cookie-hint button { padding:0; border:0; background:transparent; color:var(--public-blue); text-decoration:underline; font:inherit; }
.login-create-account { display:flex; flex-wrap:wrap; justify-content:center; gap:7px; padding:25px 0; margin-top:5px; border-bottom:1px solid var(--public-line); font-size:11px; color:var(--public-muted); }
.login-create-account .public-text-button { font-size:11px; }
.login-help { display:flex; align-items:flex-start; gap:10px; margin:25px 0 22px; color:var(--public-muted); }
.login-help .public-icon { width:16px; height:16px; margin-top:2px; }
.login-help p { font-size:10px; line-height:1.8; max-width:300px; }
.login-manual { display:flex; align-items:center; gap:8px; font-size:10px; color:var(--public-muted) !important; }
.login-manual .public-icon { width:14px; height:14px; }
.public-muted { color:var(--public-muted); font-size:12px; }
.registration-status { text-align:center; padding-top:15px; }
.public-notice { display:flex; align-items:flex-start; gap:12px; padding:14px; margin-top:20px !important; border:1px solid var(--public-line); border-radius:8px; background:var(--public-soft); color:var(--public-ink); font-size:12px; overflow-wrap:anywhere; }
.public-notice > span { flex:1; min-width:0; }
.public-notice > button { background:transparent; border:0; color:inherit; padding:0; min-width:24px; min-height:24px; font-size:22px; line-height:1; }
.public-notice--error { background:#fff4f3; border-color:#ebbbb6; color:#942b23; }
.public-notice--success { background:#edf9f2; border-color:#abd5bb; color:#1b6743; }
.public-page[data-theme="dark"] .public-notice--error { background:#3b2227; border-color:#87535c; color:#ffc9c9; }
.public-page[data-theme="dark"] .public-notice--success { background:#17392d; border-color:#3c7159; color:#b7efd0; }

/* Native dialogs preserve focus and keyboard navigation. */
.public-dialog { width:min(480px,calc(100% - 32px)); max-height:calc(100dvh - 32px); padding:0; margin:auto; border:1px solid var(--public-line); border-radius:14px; color:var(--public-ink); background:var(--public-canvas); box-shadow:0 24px 80px #06132d40; overflow:auto; overscroll-behavior:contain; }
.public-dialog::backdrop { background:#08172c99; }
.public-dialog-content { padding:28px; }
.public-dialog-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; margin-bottom:14px; }
.public-dialog h2 { margin:0; font-size:24px; letter-spacing:-.7px; line-height:1.3; font-weight:650; }
.public-dialog .public-eyebrow { margin:2px 0 12px; font-size:9px; }
.public-close { display:grid; place-items:center; width:34px; height:34px; flex:0 0 auto; margin:-4px -5px 0 0; border:1px solid var(--public-line); border-radius:7px; color:var(--public-muted); background:var(--public-soft); font-size:25px !important; line-height:1; }
.public-dialog p { margin:12px 0; font-size:13px; color:var(--public-muted); line-height:1.8; }
.public-dialog .public-form-note { font-size:11px; }
.public-dialog .public-form { margin-top:24px; gap:18px; }
.public-dialog-actions { display:flex; justify-content:flex-end; gap:10px; flex-wrap:wrap; margin-top:24px; }
.public-dialog-actions .public-button { padding:12px 16px; font-size:12px; }
.public-page.modal-open { overflow:hidden; }
.password-rules { display:grid; gap:3px; color:var(--public-muted); font-size:10px; }
.password-rules b { font-weight:400; margin-right:4px; }
.password-rules .is-valid { color:#188057; }
.public-cookie-banner { position:fixed; bottom:20px; left:20px; z-index:15; width:min(370px,calc(100vw - 40px)); padding:20px; border:1px solid var(--public-line); border-radius:12px; background:var(--public-canvas); color:var(--public-ink); box-shadow:0 8px 35px #0714271a; }
.public-cookie-banner strong { font-size:13px; font-weight:650; }
.public-cookie-banner p { margin:8px 0 15px; font-size:11px; line-height:1.8; color:var(--public-muted); }
.public-cookie-banner > div { display:flex; flex-wrap:wrap; gap:8px; }
.public-cookie-banner button { flex:1; border:1px solid var(--public-line); border-radius:6px; min-height:36px; padding:8px 11px; background:var(--public-soft); color:var(--public-ink); font-size:10px; font-weight:650; }
.public-cookie-banner button[data-cookie-choice="remember"] { border-color:var(--public-action); color:white; background:var(--public-action); }
@media(min-width:1600px) { .login-story { padding-left:max(80px,calc((100vw - 1240px)/2)); } }
@media(max-width:1100px) { .public-header { padding-inline:30px; gap:20px; } .public-nav { gap:20px; } .public-header-actions { gap:12px; } .public-header-actions .public-button { display:none; } .workflow-section, .resources-section, .collaboration-inner { gap:60px; } .login-story { padding-inline:40px; } }
@media(max-width:850px) { .login-layout { grid-template-columns:1fr; } .login-story { display:none; } .login-form-area { min-height:calc(100dvh - 180px); padding:55px 28px; } .public-section { width:calc(100% - 64px); padding-block:76px; } .workflow-section, .resources-section { gap:45px; } .collaboration-inner { gap:40px; } .collaboration-section { padding:64px 32px; } .shared-example { padding:18px; } .shared-avatars { display:none; } .public-footer { padding-inline:30px; } .public-footer > p { display:none; } }
@media(max-width:600px) {
  .public-header { min-height:76px; padding:16px 20px; gap:16px; }
  .public-brand { font-size:24px; gap:7px; }
  .public-brand-mark { width:36px; height:36px; }
  .public-header-actions { gap:12px; }
  .public-sign-in { font-size:12px; }
  .public-icon-button { width:34px; height:34px; border-radius:7px; }
  .public-icon-button .public-icon { width:18px; height:18px; }
  .public-menu-toggle { display:grid; }
  .public-nav { display:none; position:absolute; top:100%; left:0; right:0; padding:18px 24px; flex-direction:column; align-items:stretch; gap:0; border-bottom:1px solid var(--public-line); background:var(--public-canvas); box-shadow:0 12px 20px #10243b0a; }
  .public-nav.is-open { display:flex; }
  .public-nav a { padding:11px 0; }
  .public-back { gap:6px; font-size:10px; }
  .public-back .public-icon { width:15px; height:15px; }
  .landing-hero { padding:50px 20px 0; }
  .landing-hero > .public-eyebrow { font-size:8px; gap:7px; letter-spacing:1.3px; }
  .landing-hero h1 { font-size:clamp(32px,7.9vw,45px); line-height:1.17; letter-spacing:-1.25px; margin:22px -2px 20px; }
  .landing-hero h1 br { display:none; }
  .landing-lede { font-size:14px; line-height:1.8; max-width:340px; margin:auto; }
  .landing-lede br { display:none; }
  .landing-hero-actions { margin-top:25px; gap:10px; }
  .landing-hero-actions > .public-button { width:100%; min-height:48px; }
  .landing-highlights { gap:10px 17px; margin:22px 0 30px; font-size:9px; }
  .landing-highlights .public-icon { width:12px; height:12px; }
  .landing-product { border-radius:8px; }
  .landing-product-bar { padding:9px 12px; min-height:38px; font-size:8px; gap:8px; }
  .landing-product-bar .public-icon { display:none; }
  .preview-example { display:none; }
  .preview-dots { gap:3px; }
  .preview-dots i { width:4px; height:4px; }
  .landing-product img { border-radius:0 0 7px 7px; }
  .landing-product figcaption { font-size:8px; bottom:-30px; }
  .public-section { width:calc(100% - 40px); padding-block:62px; }
  .public-section h2, .collaboration-section h2 { font-size:32px; letter-spacing:-1.1px; }
  .workflow-section { grid-template-columns:1fr; margin-top:40px; gap:35px; }
  .section-intro p, .resources-heading > p { font-size:13px; }
  .workflow-list li { gap:20px; padding-block:21px; }
  .workflow-list h3 { font-size:17px; }
  .workflow-list p { font-size:13px; }
  .resources-section { grid-template-columns:1fr; gap:35px; }
  .resource-details { gap:25px; }
  .resource-details article { gap:15px; }
  .resource-details h3 { font-size:15px; }
  .resource-details p { font-size:12px; }
  .collaboration-section { padding:57px 20px; }
  .collaboration-inner { grid-template-columns:1fr; gap:38px; }
  .collaboration-copy > p { font-size:13px; }
  .collaboration-copy .public-button { font-size:12px; width:100%; }
  .shared-example-header strong { font-size:12px; }
  .shared-example-row { padding:14px 10px; gap:9px; }
  .shared-example-row strong { font-size:10px; }
  .shared-example-row small { font-size:9px; }
  .shared-person { width:22px; height:22px; }
  .landing-bottom-cta p { font-size:13px; }
  .landing-bottom-cta .public-button { width:100%; font-size:12px; }
  .public-footer { gap:16px; padding:23px 20px; font-size:10px; }
  .public-footer > div { gap:17px; }
  .public-footer-version { font-size:9px; }
  .login-form-area { padding:44px 24px; }
  .login-form-wrap h1 { font-size:31px; }
  .login-form-wrap > .public-eyebrow { font-size:8px; }
  .login-lede { font-size:12px; }
  .public-field input { font-size:16px; }
  .public-dialog { max-height:calc(100dvh - 24px); width:calc(100% - 24px); }
  .public-dialog-content { padding:24px 20px; }
  .public-dialog h2 { font-size:23px; }
  .public-dialog-actions > .public-button { width:100%; }
  .public-cookie-banner { bottom:12px; left:12px; width:calc(100vw - 24px); padding:17px; }
}
@media(prefers-reduced-motion:reduce) { .public-page *, .public-page *::before, .public-page *::after { transition:none !important; scroll-behavior:auto !important; } }
