/* Always Encrypted: shared SEO/AEO blocks (answer line, breadcrumbs, FAQ, related links, tables, footer, skip link)
   and the template for the Learn and About pages. Hard colour values so every page renders it the same. */
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid #D4AF6A;outline-offset:3px}
.aes-skip{position:absolute;left:12px;top:-60px;z-index:3000;background:#D4AF6A;color:#0A0A0C;font:600 14px/1 "IBM Plex Sans",system-ui,sans-serif;padding:12px 16px;border-radius:8px;text-decoration:none}
.aes-skip:focus{top:10px}
.ae-answer{font-family:"Newsreader",Georgia,serif;font-size:clamp(1.05rem,1.4vw,1.22rem);line-height:1.6;color:#F2EEE4;max-width:62ch}
.aes-crumbs{max-width:1100px;margin:0 auto;padding:14px 22px 0;font:500 .74rem/1.4 "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.06em;color:#b5aea0}
.aes-crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 8px}
.aes-crumbs li+li::before{content:"/";margin-right:8px;color:#6b665b}
.aes-crumbs a{color:#D4AF6A;text-decoration:none}
.aes-crumbs a:hover{text-decoration:underline}
.aes-crumbs [aria-current]{color:#F2EEE4}
.aes-blk{max-width:1100px;margin:0 auto;padding:56px 22px 8px;color:#F2EEE4;font-family:"IBM Plex Sans",system-ui,sans-serif}
.aes-blk h2{font:500 clamp(1.5rem,2.6vw,2rem)/1.2 "Newsreader",Georgia,serif;margin:0 0 22px;color:#F2EEE4}
.aes-faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.aes-faq div{border:1px solid rgba(212,175,106,.25);border-radius:12px;padding:18px 20px;background:rgba(255,255,255,.02)}
.aes-faq h3{font:600 1rem/1.35 "IBM Plex Sans",system-ui,sans-serif;margin:0 0 8px;color:#F2EEE4}
.aes-faq p{margin:0;font-size:.95rem;line-height:1.6;color:#cfc8b8}
.aes-next{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.aes-next li{border:1px solid rgba(212,175,106,.25);border-radius:12px;padding:16px 18px;font-size:.92rem;line-height:1.55;color:#b5aea0}
.aes-next .k{display:block;font:500 .66rem/1 "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.16em;text-transform:uppercase;color:#6FE3A8;margin-bottom:8px}
.aes-next a{color:#D4AF6A;font-weight:600}
.aes-ctarow{max-width:1100px;margin:0 auto;padding:36px 22px 64px}
.aes-cta{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 24px;border-radius:999px;background:linear-gradient(135deg,#D9B873 0%,#C9A24B 55%,#B08A38 100%);color:#14110b;font:600 .8rem/1 "IBM Plex Sans",system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase;text-decoration:none}
.aes-cta:hover{filter:brightness(1.08)}
.aes-table{width:100%;border-collapse:collapse;margin:22px 0;font-size:.92rem;line-height:1.5;color:#cfc8b8}
.aes-table caption{caption-side:top;text-align:left;font:500 .72rem/1.4 "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.12em;text-transform:uppercase;color:#6FE3A8;padding-bottom:8px}
.aes-table th,.aes-table td{border-top:1px solid rgba(212,175,106,.25);padding:11px 12px;text-align:left;vertical-align:top}
.aes-table thead th{border-top:0;border-bottom:1px solid rgba(212,175,106,.5);color:#F2EEE4;font-weight:600}
.aes-table tbody th{color:#F2EEE4;font-weight:600}
.aes-tw{overflow-x:auto}
.aes-foot{border-top:1px solid rgba(212,175,106,.25);margin-top:24px;padding:34px 22px 44px;color:#8f897c;font:400 .84rem/1.7 "IBM Plex Sans",system-ui,sans-serif}
.aes-foot .in{max-width:1100px;margin:0 auto}
.aes-foot nav{display:flex;flex-wrap:wrap;gap:6px 18px;margin-bottom:12px}
.aes-foot a{color:#D4AF6A;text-decoration:none}
.aes-foot a:hover{text-decoration:underline}
/* page template (Learn, About) */
body.aes{margin:0;background:#0A0A0C;color:#F2EEE4;font:400 16px/1.7 "IBM Plex Sans",system-ui,sans-serif;-webkit-font-smoothing:antialiased}
body.aes a{color:#D4AF6A}
.aes-page{max-width:820px;margin:0 auto;padding:30px 22px 20px}
.aes-page .eyebrow{font:500 .72rem/1 "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.2em;text-transform:uppercase;color:#6FE3A8;margin:0 0 14px}
.aes-page h1{font:500 clamp(2rem,5vw,3.1rem)/1.1 "Newsreader",Georgia,serif;margin:0 0 20px;color:#F2EEE4}
.aes-page h2{font:500 clamp(1.4rem,2.6vw,1.8rem)/1.25 "Newsreader",Georgia,serif;margin:2.2em 0 .6em;color:#F2EEE4}
.aes-page p,.aes-page li{color:#cfc8b8}
.aes-page .ae-answer{color:#F2EEE4;border-left:2px solid #D4AF6A;padding-left:18px;margin:0 0 28px}
.aes-page ul,.aes-page ol{padding-left:1.3em}
.aes-page li{margin:.45em 0}
.aes-meta{font:400 .8rem/1.5 "IBM Plex Mono",ui-monospace,monospace;color:#8f897c;margin:0 0 26px}
.aes-cite{margin:2.4em 0 0;padding:16px 18px;border:1px solid rgba(212,175,106,.25);border-radius:12px;font-size:.88rem;color:#b5aea0}
.aes-cite code{font-family:"IBM Plex Mono",ui-monospace,monospace;color:#F2EEE4;word-break:break-all}
.aes-cards{list-style:none;margin:20px 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
.aes-cards li{margin:0;border:1px solid rgba(212,175,106,.25);border-radius:12px;padding:18px 20px;background:rgba(255,255,255,.02)}
.aes-cards a{display:block;font:500 1.15rem/1.3 "Newsreader",Georgia,serif;color:#F2EEE4;text-decoration:none;margin-bottom:6px}
.aes-cards a:hover{color:#D4AF6A}
.aes-cards span{font-size:.88rem;color:#b5aea0}
/* network page: compact static block inside the left panel */
.aes-hud h1{font:700 .68rem/1.3 Georgia,serif;letter-spacing:.22em;color:#6FE3A8;text-transform:uppercase;margin:2px 0 8px}
.aes-hud .ae-answer{font-size:.84rem;line-height:1.55;color:#b5aea0;max-width:none;margin:0 0 12px}
.aes-hud .aes-crumbs{padding:0 0 8px;font-size:.66rem}
.aes-hud .aes-blk{padding:6px 0 0;max-width:none}
.aes-hud .aes-blk h2{font:700 .68rem/1 Georgia,serif;letter-spacing:.22em;color:#6FE3A8;text-transform:uppercase;margin:22px 0 8px}
.aes-hud .aes-faq,.aes-hud .aes-next{display:block}
.aes-hud .aes-faq div,.aes-hud .aes-next li{border:0;border-bottom:1px dashed rgba(242,238,228,.1);border-radius:0;padding:8px 0;background:none}
.aes-hud .aes-faq h3{font-size:.8rem}
.aes-hud .aes-faq p,.aes-hud .aes-next li{font-size:.76rem;line-height:1.5}
.aes-hud .aes-table{font-size:.74rem;margin:8px 0}
.aes-hud .aes-table th,.aes-hud .aes-table td{padding:6px 5px}
.aes-hud .aes-ctarow{padding:14px 0 6px}
.aes-hud .aes-cta{min-height:38px;padding:0 16px;font-size:.7rem}
.aes-hud .aes-links{font-size:.72rem;color:#8f897c;margin:14px 0 0}
@media (max-width:760px){
  .aes-faq,.aes-next{grid-template-columns:1fr}
  .aes-blk{padding-top:40px}
  .aes-table{font-size:.85rem}
  .aes-page{padding-top:22px}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
/* images that carry width/height attributes keep their aspect ratio unless a page rule sets a height */
:where(img[width][height]){height:auto}
/* specificity fixes for the page template */
a.aes-cta,body.aes a.aes-cta{color:#14110b;text-decoration:none}
body.aes .aes-crumbs{max-width:820px}
.aes-page .aes-cards,.aes-page .aes-next{padding-left:0}
.aes-page .aes-blk,.aes-page .aes-ctarow{padding-left:0;padding-right:0}
.aes-page .aes-blk{padding-top:44px}
.aes-page .aes-ctarow{padding-bottom:40px}
body.aes .aes-next a,body.aes .aes-table a{color:#D4AF6A}
