/* Lancelot Technologies — Stripe-inspired RTL Design System (Subpages & Legal Pages) */
:root{
  --bg:#FFFFFF; --soft:#F5F9FD; --card:#FFFFFF;
  --ink:#0A2540; --muted:#4A5F7A; --faint:#5A708B; --line:#E3EBF4;
  --blue:#1C5FC8; --blue-hover:#154CA4; --sky:#5DBDF2; --sky-soft:#E4F3FD;
  --navy:#0A2540; --navy-2:#0F3260; --navy-ink:#FFFFFF; --navy-muted:#ADC3DE; --navy-line:#21466F;
  --ok:#16804F; --warn:#9A6600;
  --shadow:0 50px 100px -20px rgba(10,37,64,.22),0 30px 60px -30px rgba(10,37,64,.28);
  --shadow-sm:0 13px 27px -5px rgba(10,37,64,.16),0 8px 16px -8px rgba(10,37,64,.2);
  --f:"David","David Libre","Frank Ruhl Libre","Times New Roman",serif;
  --gut-l:max(16px, env(safe-area-inset-left, 0px)); --gut-r:max(16px, env(safe-area-inset-right, 0px));
}
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]){
  --bg:#061A30; --soft:#0A2240; --card:#0C2747;
  --ink:#EAF2FB; --muted:#A9BCD3; --faint:#879CB7; --line:#173757;
  --blue:#6CC6F5; --blue-hover:#94D7FA; --sky:#6CC6F5; --sky-soft:#10314F;
  --shadow:0 50px 100px -20px rgba(0,0,0,.5),0 30px 60px -30px rgba(0,0,0,.6);
  --shadow-sm:0 13px 27px -5px rgba(0,0,0,.4),0 8px 16px -8px rgba(0,0,0,.5);
  --ok:#3BC98F; --warn:#E3A93A; color-scheme:dark;
}}
:root[data-theme="dark"]{
  --bg:#061A30; --soft:#0A2240; --card:#0C2747;
  --ink:#EAF2FB; --muted:#A9BCD3; --faint:#879CB7; --line:#173757;
  --blue:#6CC6F5; --blue-hover:#94D7FA; --sky:#6CC6F5; --sky-soft:#10314F;
  --shadow:0 50px 100px -20px rgba(0,0,0,.5),0 30px 60px -30px rgba(0,0,0,.6);
  --shadow-sm:0 13px 27px -5px rgba(0,0,0,.4),0 8px 16px -8px rgba(0,0,0,.5);
  --ok:#3BC98F; --warn:#E3A93A; color-scheme:dark;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
body{background:var(--bg);color:var(--ink);font-family:var(--f);font-size:19px;line-height:1.65;margin:0;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--bg)}
a{color:inherit}
h1,h2,h3,h4{margin:0;text-wrap:balance;line-height:1.15;font-weight:700}
p{margin:0}
:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:6px}
.wrap{max-width:1112px;margin-inline:auto;padding-left:var(--gut-l);padding-right:var(--gut-r)}
.skip{position:absolute;inset-inline-start:16px;top:-60px;background:var(--blue);color:#fff;padding:8px 14px;border-radius:8px;z-index:100}
.skip:focus{top:12px}
.ltr{direction:ltr;unicode-bidi:isolate}

.kicker{position:relative;font-size:17px;font-weight:700;color:var(--blue);padding-inline-start:16px;margin-bottom:12px;display:block}
.kicker::before{content:"";position:absolute;inset-inline-start:0;top:4px;bottom:4px;width:2px;border-radius:2px;background:var(--blue)}
.h-sec{font-size:clamp(30px,3.8vw,44px);letter-spacing:-.01em;max-width:24ch}
.lead{color:var(--muted);font-size:clamp(18px,1.7vw,21px);max-width:62ch;margin-top:16px}

.btn{display:inline-flex;align-items:center;gap:6px;font:700 17px/1 var(--f);padding:11px 18px 12px;border-radius:999px;text-decoration:none;border:0;cursor:pointer;transition:background .15s,opacity .15s}
.btn-primary{background:var(--blue);color:#fff}
:root[data-theme="dark"] .btn-primary{color:#061A30}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .btn-primary{color:#061A30}}
.btn-primary:hover{background:var(--blue-hover)}
.btn-outline{background:var(--card);color:var(--ink);border:1px solid var(--line)}
.btn-outline:hover{border-color:var(--blue);color:var(--blue)}
.btn-link{background:transparent;color:var(--ink);padding-inline:8px}
.btn-link:hover{opacity:.7}
.arrow{width:10px;height:10px;transform:scaleX(-1);overflow:visible}
.arrow .shaft{opacity:0;transition:opacity .15s}
.arrow .head{transition:transform .15s}
.btn:hover .arrow .shaft,a:hover > .arrow .shaft{opacity:1}
.btn:hover .arrow .head,a:hover > .arrow .head{transform:translateX(3px)}
.tlink{display:inline-flex;align-items:center;gap:6px;font-weight:700;color:var(--blue);text-decoration:none;font-size:17px}

/* header */
.site-head{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.head-row{display:flex;align-items:center;gap:24px;height:80px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}
.brand .lg{height:54px;width:auto;display:block}
footer .brand .lg{height:52px}
.brand .lg-w{display:none}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .brand .lg-b{display:none}:root:not([data-theme="light"]) .brand .lg-w{display:block}}
:root[data-theme="dark"] .brand .lg-b{display:none}
:root[data-theme="dark"] .brand .lg-w{display:block}
.nav{display:flex;gap:2px;margin-inline-start:24px}
.nav a{text-decoration:none;font-weight:700;font-size:17px;padding:8px 12px;border-radius:8px;color:var(--ink);opacity:.9}
.nav a:hover{opacity:.6}
.head-end{margin-inline-start:auto;display:flex;align-items:center;gap:6px}
.head-end .btn{background:var(--blue);color:#fff}
.head-end .btn:hover{background:var(--blue-hover)}
:root[data-theme="dark"] .head-end .btn{color:#061A30}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .head-end .btn{color:#061A30}}
.menu-btn{display:none;background:none;border:0;color:var(--ink);width:44px;height:44px;cursor:pointer;border-radius:10px}
@media (max-width:960px){
  .nav,.head-end .btn{display:none}
  .menu-btn{display:grid;place-items:center}
  .site-head.open .nav{display:flex;position:absolute;inset-inline:var(--gut-r) var(--gut-l);top:76px;flex-direction:column;background:var(--card);border-radius:12px;padding:10px;margin:0;box-shadow:var(--shadow)}
  .site-head.open .nav a{padding:12px}
}

/* subpage hero */
.sub-hero{position:relative;padding-top:64px;padding-bottom:76px;isolation:isolate;border-bottom:1px solid var(--line)}
.mesh{position:absolute;inset:0 0 auto 0;height:100%;max-height:620px;z-index:-1;overflow:hidden;transform:skewY(-8deg);transform-origin:0 0}
.mesh .base{position:absolute;inset:0;background:linear-gradient(115deg,#A9DEFF 0%,#5DBDF2 28%,#1C5FC8 58%,#0A2540 88%,#123E7A 100%);opacity:.22}
:root[data-theme="dark"] .mesh .base{opacity:.38}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .mesh .base{opacity:.38}}
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:15.5px;color:var(--muted);margin-bottom:20px}
.crumbs a{text-decoration:none;color:var(--blue);font-weight:700}
.crumbs a:hover{text-decoration:underline}
.crumbs .sep{opacity:.5}
.sub-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:44px;align-items:center}
.sub-hero-grid.single{grid-template-columns:1fr}
.badge-pill{display:inline-flex;align-items:center;gap:8px;padding:5px 14px;border-radius:999px;background:var(--sky-soft);color:var(--blue);font-weight:700;font-size:15.5px;border:1px solid var(--line);margin-bottom:16px}
.sub-hero h1{font-size:clamp(38px,5.5vw,66px);line-height:1.06;letter-spacing:-.015em}
.sub-hero .sub-tagline{font-size:clamp(21px,2.3vw,27px);font-weight:700;color:var(--blue);margin-top:12px}
.sub-hero .lead{margin-top:18px;font-size:clamp(18px,1.8vw,21px)}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.hero-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.hero-tags span{font-size:15px;padding:4px 12px;border-radius:999px;background:var(--card);border:1px solid var(--line);color:var(--muted)}
@media (max-width:920px){.sub-hero-grid{grid-template-columns:1fr}}

/* product showcase panel */
.showcase{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:var(--shadow)}
.showcase-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:16px}
.showcase-head b{font-size:17px;letter-spacing:.04em;color:var(--blue)}
.showcase-head span{font-size:14px;color:var(--muted);background:var(--soft);padding:3px 10px;border-radius:999px}
.showcase-list{display:grid;gap:12px}
.showcase-item{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:12px;background:var(--soft);border:1px solid var(--line)}
.showcase-item .dot{width:10px;height:10px;border-radius:50%;background:var(--ok);margin-top:8px;flex:none}
.showcase-item b{display:block;font-size:17px}
.showcase-item span{display:block;font-size:15.5px;color:var(--muted);margin-top:2px}

/* sections */
.sec{padding-block:80px;scroll-margin-top:24px}
.sec.alt{background:var(--soft);border-block:1px solid var(--line)}
.sec-head{margin-bottom:40px}
@media (max-width:720px){.sec{padding-block:56px}}

/* feature grid */
.feat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:20px}
.feat-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:26px;display:flex;flex-direction:column;gap:10px;transition:box-shadow .2s,transform .2s}
.feat-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}
.feat-card .num{width:36px;height:36px;border-radius:10px;background:var(--sky-soft);color:var(--blue);font-weight:700;font-size:16px;display:grid;place-items:center}
.feat-card h3{font-size:22px}
.feat-card p{color:var(--muted);font-size:17.5px}
.feat-card ul{margin:6px 0 0;padding:0;list-style:none;display:grid;gap:8px}
.feat-card li{display:flex;align-items:baseline;gap:10px;font-size:17px;color:var(--ink)}
.feat-card li::before{content:"✓";color:var(--blue);font-weight:700;flex:none}

/* dark highlight band for subpages */
.dark-panel{background:linear-gradient(135deg,#0A2540 0%,#0F3260 65%,#1C5FC8 100%);color:#fff;border-radius:20px;padding:40px;box-shadow:var(--shadow);margin-top:16px}
.dark-panel h3{font-size:clamp(26px,3.2vw,36px);color:#fff}
.dark-panel p{color:#ADC3DE;font-size:19px;margin-top:10px;max-width:65ch}
.dark-bullets{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin-top:28px}
.dark-bullet{background:rgba(255,255,255,.06);border:1px solid rgba(93,189,242,.28);border-radius:14px;padding:18px}
.dark-bullet b{display:block;color:#5DBDF2;font-size:18.5px;margin-bottom:4px}
.dark-bullet span{color:#EAF2FB;font-size:16.5px}
@media (max-width:600px){.dark-panel{padding:26px}}

/* product switcher strip */
.prod-nav-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.prod-nav-item{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border-radius:14px;background:var(--card);border:1px solid var(--line);text-decoration:none;transition:border-color .15s,transform .15s}
.prod-nav-item:hover,.prod-nav-item[aria-current="page"]{border-color:var(--blue);background:var(--sky-soft);transform:translateY(-2px)}
.prod-nav-item b{font-size:18px;color:var(--blue)}
.prod-nav-item span{font-size:15px;color:var(--muted)}

/* legal document styling */
.legal-wrap{display:grid;grid-template-columns:260px 1fr;gap:40px;align-items:start}
.legal-toc{position:sticky;top:100px;background:var(--soft);border:1px solid var(--line);border-radius:16px;padding:20px;max-height:calc(100vh - 130px);overflow-y:auto}
.legal-toc h4{font-size:17px;margin-bottom:12px;color:var(--blue)}
.legal-toc ol{margin:0;padding-inline-start:20px;display:grid;gap:8px;font-size:15.5px}
.legal-toc a{text-decoration:none;color:var(--muted)}
.legal-toc a:hover{color:var(--blue)}
.legal-doc{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:40px;box-shadow:var(--shadow-sm);display:grid;gap:32px}
.legal-sec{scroll-margin-top:100px;padding-bottom:28px;border-bottom:1px solid var(--line)}
.legal-sec:last-child{border-bottom:0;padding-bottom:0}
.legal-sec h2{font-size:26px;color:var(--ink);margin-bottom:14px}
.legal-sec h3{font-size:20px;color:var(--blue);margin-top:18px;margin-bottom:8px}
.legal-sec p{color:var(--ink);margin-bottom:10px;font-size:18px}
.legal-sec ul,.legal-sec ol{margin:8px 0 12px;padding-inline-start:24px;display:grid;gap:6px;font-size:18px}
.table-scroll{overflow-x:auto;margin-block:14px;border:1px solid var(--line);border-radius:12px}
.legal-table{width:100%;border-collapse:collapse;font-size:16.5px;min-width:540px}
.legal-table th,.legal-table td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:right;vertical-align:top}
.legal-table th{background:var(--soft);font-weight:700;color:var(--ink)}
.legal-table tr:last-child td{border-bottom:0}
@media (max-width:920px){.legal-wrap{grid-template-columns:1fr}.legal-toc{position:static;max-height:none}}
@media (max-width:600px){.legal-doc{padding:22px}}

/* contact & footer */
.final-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:start}
.final h2{font-size:clamp(34px,4.4vw,50px);letter-spacing:-.01em}
.infos{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:36px}
.info{padding-inline-start:16px;border-inline-start:2px solid var(--sky)}
.info b{font-size:19px;display:block}
.info p{color:var(--muted);font-size:17px;margin-top:4px}
.info .val{font-weight:700;color:var(--ink);user-select:all}
.copy{font:700 13.5px var(--f);color:var(--blue);background:none;border:1px solid var(--line);border-radius:6px;padding:1px 8px;cursor:pointer;margin-inline-start:6px}
form.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:28px;box-shadow:var(--shadow);display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field{display:grid;gap:6px;min-width:0}
.field.full{grid-column:1/-1}
.field label{font-size:16.5px;font-weight:700}
.field label .req{color:var(--blue)}
.field input,.field select,.field textarea{font:400 17px var(--f);color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:10px 12px;width:100%;box-shadow:0 1px 2px rgba(10,37,64,.06);transition:border-color .15s,box-shadow .15s}
.field textarea{min-height:110px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--sky-soft)}
.field input[dir="ltr"]{text-align:right}
.form-foot{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between}
.form-foot small{color:var(--muted);font-size:15px;max-width:40ch}
.form-status{grid-column:1/-1;padding:10px 14px;border-radius:8px;background:var(--sky-soft);font-size:16px}
@media (max-width:900px){.final-grid{grid-template-columns:1fr}}
@media (max-width:520px){form.card{grid-template-columns:1fr;padding:20px}.infos{grid-template-columns:1fr}}

footer{border-top:1px solid var(--line);padding-block:56px 36px;font-size:16.5px;color:var(--muted)}
.foot-grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:32px}
footer h4,footer .foot-h{font-size:17px;color:var(--ink);margin-bottom:12px;line-height:1.3}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
footer a{text-decoration:none}
footer a:hover{color:var(--blue)}
.foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:40px;padding-top:20px;border-top:1px solid var(--line);font-size:15.5px}
.foot-bottom nav{display:flex;flex-wrap:wrap;gap:18px}
@media (max-width:820px){.foot-grid{grid-template-columns:1fr 1fr}.foot-grid > :first-child{grid-column:1/-1}}

.form-hint{color:var(--muted);font-size:15.5px}
.form-hint .req{color:var(--blue);font-weight:700}
.field [aria-invalid="true"]{border-color:#C0262D;box-shadow:0 0 0 3px rgba(192,38,45,.15)}
/* ===== Accessibility toolbar (fixed look, high contrast in every theme) ===== */
.a11y-fab{position:fixed;z-index:90;bottom:calc(20px + env(safe-area-inset-bottom,0px));inset-inline-end:calc(20px + env(safe-area-inset-left,0px));width:56px;height:56px;border-radius:50%;border:3px solid #FFFFFF;background:#1C5FC8;color:#FFFFFF;display:grid;place-items:center;cursor:pointer;box-shadow:0 10px 24px -6px rgba(10,37,64,.55)}
.a11y-fab:hover{background:#154CA4}
.a11y-fab:focus-visible{outline:3px solid #0A2540;outline-offset:3px}
.a11y-fab svg{width:30px;height:30px}
.a11y-panel{position:fixed;z-index:91;bottom:calc(88px + env(safe-area-inset-bottom,0px));inset-inline-end:calc(20px + env(safe-area-inset-left,0px));width:min(360px,calc(100vw - 32px));max-height:calc(100vh - 120px);overflow:auto;background:#FFFFFF;color:#0A2540;border:2px solid #0A2540;border-radius:16px;box-shadow:0 30px 60px -20px rgba(0,0,0,.45);font:400 16px/1.45 Arial,"Segoe UI",sans-serif}
.a11y-panel[hidden]{display:none}
.a11y-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;background:#0A2540;color:#FFFFFF;border-radius:13px 13px 0 0;position:sticky;top:0}
.a11y-top h2{font:700 18px/1.2 Arial,sans-serif;margin:0}
.a11y-x{background:transparent;border:2px solid #FFFFFF;color:#FFFFFF;border-radius:8px;width:36px;height:36px;display:grid;place-items:center;cursor:pointer;font:700 18px/1 Arial,sans-serif}
.a11y-x:focus-visible,.a11y-opt:focus-visible,.a11y-links button:focus-visible,.a11y-links a:focus-visible{outline:3px solid #C25B00;outline-offset:2px}
.a11y-body{padding:14px 16px 16px;display:grid;gap:14px}
.a11y-size{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px}
.a11y-size output{font:700 16px Arial,sans-serif;min-width:52px;text-align:center}
.a11y-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.a11y-opt{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:78px;padding:10px 6px;border:2px solid #C9D6E5;border-radius:12px;background:#F3F7FB;color:#0A2540;font:700 14.5px/1.25 Arial,sans-serif;text-align:center;cursor:pointer}
.a11y-opt svg{width:24px;height:24px;flex:none}
.a11y-opt:hover{border-color:#1C5FC8}
.a11y-opt[aria-pressed="true"]{background:#0A2540;color:#FFFFFF;border-color:#0A2540}
.a11y-size .a11y-opt{min-height:48px;flex-direction:row}
.a11y-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;border-top:1px solid #C9D6E5;padding-top:12px}
.a11y-links button,.a11y-links a{font:700 15px Arial,sans-serif;color:#1C5FC8;background:none;border:0;padding:6px 2px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.a11y-links .reset{color:#0A2540}
@media (max-width:420px){.a11y-panel{inset-inline-end:16px;bottom:calc(84px + env(safe-area-inset-bottom,0px))}.a11y-fab{inset-inline-end:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px))}}

/* accessibility statement dialog */
.a11y-doc{width:min(760px,calc(100vw - 32px));max-height:calc(100vh - 48px);padding:0;border:2px solid #0A2540;border-radius:16px;background:#FFFFFF;color:#0A2540;font:400 17px/1.65 var(--f)}
.a11y-doc::backdrop{background:rgba(6,26,48,.6)}
.a11y-doc .doc-top{position:sticky;top:0;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 22px;background:#0A2540;color:#FFFFFF}
.a11y-doc .doc-top h2{margin:0;font-size:24px}
.a11y-doc .doc-body{padding:20px 22px 26px;display:grid;gap:16px}
.a11y-doc h3{font-size:19px;margin:6px 0 0}
.a11y-doc ul{margin:0;padding-inline-start:22px;display:grid;gap:4px}
.a11y-doc a{color:#1C5FC8}
.a11y-doc .contact{background:#F3F7FB;border:1px solid #C9D6E5;border-radius:12px;padding:14px 16px}
.a11y-doc .contact dl{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;margin:6px 0 0}
.a11y-doc .contact dt{font-weight:700}
.a11y-doc .contact dd{margin:0}
.a11y-doc .updated{color:#4A5F7A;font-size:15.5px}

/* ===== toolbar effects (applied to page content only, never to the toolbar) ===== */
html.a11y-z1 :is(.site-head,main,footer){zoom:1.15}
html.a11y-z2 :is(.site-head,main,footer){zoom:1.3}
html.a11y-z3 :is(.site-head,main,footer){zoom:1.5}
html.a11y-gray :is(.site-head,main,footer){filter:grayscale(1)}
html.a11y-links :is(main,footer,.site-head) a{text-decoration:underline!important;text-underline-offset:3px;outline:2px dashed currentColor;outline-offset:2px}
html.a11y-heads :is(main,footer) :is(h1,h2,h3){outline:3px solid #C25B00;outline-offset:4px}
html.a11y-font :is(.site-head,main,footer),html.a11y-font :is(.site-head,main,footer) *{font-family:Arial,"Segoe UI",Helvetica,sans-serif!important}
html.a11y-space :is(main,footer) :is(p,li,h1,h2,h3,label,b,span,a){line-height:1.8!important;letter-spacing:.12em!important;word-spacing:.16em!important}
html.a11y-space :is(main,footer) p{margin-bottom:.6em}
html.a11y-cursor,html.a11y-cursor *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cpath d='M6 4l30 22-13 2 8 15-6 3-8-15-11 9z' fill='%23000' stroke='%23fff' stroke-width='2.5' stroke-linejoin='round'/%3E%3C/svg%3E") 6 4,auto!important}
html.a11y-focus :is(.site-head,main,footer) :focus-visible{outline:4px solid #C25B00!important;outline-offset:4px!important;box-shadow:0 0 0 8px rgba(194,91,0,.25)!important}
html.a11y-still *,html.a11y-still *::before,html.a11y-still *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html.a11y-still .track{flex-wrap:wrap;width:auto;justify-content:center;row-gap:20px}
html.a11y-still .track [aria-hidden]{display:none}
html.a11y-still .mq-btn{display:none}
/* high contrast */
html.a11y-hc:root{--bg:#000000;--soft:#000000;--card:#000000;--ink:#FFFFFF;--muted:#FFFFFF;--faint:#FFFFFF;--line:#FFFFFF;--blue:#FFE600;--blue-hover:#FFFFFF;--sky:#FFE600;--sky-soft:#1A1A1A;--ok:#7CFF9B;--warn:#FFC266;color-scheme:dark}
html.a11y-hc .mesh,html.a11y-hc .hero-copy::before{display:none}
html.a11y-hc .site-head{background:#000000}
html.a11y-hc .hero h1,html.a11y-hc .hero .lead,html.a11y-hc .hero .btn-link,html.a11y-hc .band,html.a11y-hc .band .lead,html.a11y-hc .steps p,html.a11y-hc .dash *,html.a11y-hc .band .btn-link{color:#FFFFFF!important}
html.a11y-hc .hero h1 .grad{background:none;color:#FFE600!important;-webkit-text-fill-color:#FFE600}
html.a11y-hc :is(.btn-primary,.hero .btn-primary,.band .btn-primary,.head-end .btn){background:#FFE600!important;color:#000000!important;border:2px solid #FFFFFF}
html.a11y-hc .band::before{background:#000000;border-block:2px solid #FFFFFF}
html.a11y-hc :is(.dash,.dk,.gaps,.aisum,.ui,.tile,.svc,.client,form.card,.mock,.mail){background:#000000!important;border:1px solid #FFFFFF!important;box-shadow:none!important}
html.a11y-hc .ui-phone{background:#FFFFFF!important}
html.a11y-hc .bub.bot{background:#1A1A1A}
html.a11y-hc .bub.me{background:#FFE600;color:#000000}
html.a11y-hc .code{background:#000000;border:1px solid #FFFFFF;color:#FFFFFF}
html.a11y-hc .tile.tint{background:#000000}
html.a11y-hc :is(main,footer) a:not(.btn){color:#FFE600}
html.a11y-hc .brand .lg-b{display:none}
html.a11y-hc .brand .lg-w{display:block}
html.a11y-hc .field :is(input,select,textarea){background:#000000;color:#FFFFFF;border-color:#FFFFFF}

/* ===== Cookie consent (fixed light look, readable in every theme) ===== */
:root{--cb-offset:0px}
.a11y-fab{bottom:calc(20px + var(--cb-offset) + env(safe-area-inset-bottom,0px))}
.a11y-panel{bottom:calc(88px + var(--cb-offset) + env(safe-area-inset-bottom,0px))}
.cb{position:fixed;z-index:80;inset-inline:0;bottom:0;padding:0 max(16px,env(safe-area-inset-right,0px)) calc(16px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));pointer-events:none}
.cb[hidden]{display:none}
.cb-card{pointer-events:auto;max-width:1040px;margin-inline:auto;background:#FFFFFF;color:#0A2540;border:2px solid #0A2540;border-radius:16px;box-shadow:0 30px 60px -20px rgba(6,26,48,.5);padding:20px 22px;display:grid;grid-template-columns:1fr auto;gap:16px 28px;align-items:center;font:400 16.5px/1.55 var(--f);max-height:70vh;overflow:auto}
.cb-card h2{font-size:20px;margin:0 0 4px;line-height:1.25}
.cb-card p{margin:0;color:#33475F}
.cb-card a{color:#1C5FC8;font-weight:700}
.cb-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;align-items:center}
.cb-btn{font:700 16px/1 var(--f);padding:12px 20px;border-radius:999px;cursor:pointer;border:2px solid #0A2540;background:#0A2540;color:#FFFFFF;min-width:132px}
.cb-btn:hover{background:#1C5FC8;border-color:#1C5FC8}
.cb-btn.ghost{background:transparent;color:#0A2540}
.cb-btn.ghost:hover{background:#E8F1FB;color:#0A2540;border-color:#0A2540}
.cb-btn:focus-visible,.cb-x:focus-visible,.cb-switch input:focus-visible + .cb-track{outline:3px solid #C25B00;outline-offset:3px}
@media (max-width:760px){.cb-card{grid-template-columns:1fr;padding:16px}.cb-actions{justify-content:stretch}.cb-actions .cb-btn{flex:1 1 40%}.cb-actions .cb-btn.ghost:last-child{flex-basis:100%}}

.cb-dlg{width:min(720px,calc(100vw - 32px));max-height:calc(100vh - 48px);padding:0;border:2px solid #0A2540;border-radius:16px;background:#FFFFFF;color:#0A2540;font:400 16.5px/1.6 var(--f)}
.cb-dlg::backdrop{background:rgba(6,26,48,.6)}
.cb-dlg .doc-top{position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 22px;background:#0A2540;color:#FFFFFF}
.cb-dlg .doc-top h2{margin:0;font-size:23px}
.cb-x{background:transparent;border:2px solid #FFFFFF;color:#FFFFFF;border-radius:8px;width:36px;height:36px;display:grid;place-items:center;cursor:pointer;font:700 18px/1 Arial,sans-serif}
.cb-body{padding:18px 22px 8px;display:grid;gap:14px}
.cb-body > p{margin:0;color:#33475F}
.cb-cat{border:1px solid #C9D6E5;border-radius:12px;padding:14px 16px;display:grid;gap:8px}
.cb-cat-head{display:flex;justify-content:space-between;align-items:center;gap:16px}
.cb-cat h3{font-size:18.5px;margin:0}
.cb-cat p{margin:0;color:#33475F;font-size:15.5px}
.cb-always{font-weight:700;font-size:14.5px;color:#16804F;white-space:nowrap}
.cb-switch{position:relative;display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-weight:700;font-size:15px;white-space:nowrap}
.cb-switch input{position:absolute;opacity:0;width:1px;height:1px}
.cb-track{width:48px;height:28px;border-radius:999px;background:#8DA0B8;position:relative;transition:background .2s;flex:none}
.cb-track::after{content:"";position:absolute;top:3px;inset-inline-start:3px;width:22px;height:22px;border-radius:50%;background:#FFFFFF;transition:inset-inline-start .2s;box-shadow:0 1px 3px rgba(0,0,0,.3)}
.cb-switch input:checked + .cb-track{background:#1C5FC8}
.cb-switch input:checked + .cb-track::after{inset-inline-start:23px}
.cb-tbl-wrap{overflow-x:auto}
.cb-tbl{width:100%;border-collapse:collapse;font-size:14.5px}
.cb-tbl th,.cb-tbl td{text-align:start;padding:7px 8px;border-top:1px solid #E3EBF4;vertical-align:top}
.cb-tbl th{font-weight:700;color:#4A5F7A;background:#F3F7FB}
.cb-none{font-size:15px;color:#4A5F7A;font-style:italic}
.cb-foot{position:sticky;bottom:0;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;padding:14px 22px;background:#F3F7FB;border-top:1px solid #C9D6E5}
.cb-meta{font-size:14px;color:#4A5F7A}

/* section 11 notice on the contact form */
.notice11{grid-column:1/-1;font-size:14.5px;color:var(--muted);background:var(--soft);border:1px solid var(--line);border-radius:10px;padding:10px 14px}
.notice11 summary{cursor:pointer;font-weight:700;color:var(--ink)}
.notice11 ul{margin:8px 0 0;padding-inline-start:20px;display:grid;gap:4px}
.notice11 a{color:var(--blue)}
.check{grid-column:1/-1;display:flex;gap:10px;align-items:flex-start;font-size:15.5px}
.check input{width:20px;height:20px;margin-top:3px;accent-color:#1C5FC8;flex:none}
html.a11y-hc .notice11{background:#000;border-color:#fff}

.lang-btn{display:inline-flex;align-items:center;justify-content:center;font:700 15px/1 var(--f);padding:9px 13px;border-radius:999px;border:1px solid var(--line);background:var(--soft);color:var(--ink);text-decoration:none;transition:border-color .15s,color .15s}
.lang-btn:hover{border-color:var(--blue);color:var(--blue)}
html.a11y-hc .lang-btn{background:#000000;color:#FFE600;border-color:#FFFFFF}
:root[dir="ltr"] .arrow{transform:none}
:root[dir="ltr"] .field input[dir="ltr"]{text-align:left}
:root[dir="ltr"] .legal-table th,:root[dir="ltr"] .legal-table td{text-align:left}
