/* Small native foundation shared by the site's existing components. */
:root { color-scheme: light; }
*, *::before, *::after { box-sizing: border-box; }
html { font-size: 16px; -webkit-text-size-adjust: 100%; }
body { margin: 0; background: #fff; color: #666; font: 400 14px/1.7em "Open Sans", Arial, sans-serif; -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4, h5, h6, p, blockquote, figure, dl, dd, ul, ol { margin: 0; padding: 0; }
h1, h2, h3, h4, h5, h6 { padding-bottom: 10px; color: #333; font-family: "Space Grotesk", sans-serif; font-weight: 500; line-height: 1; overflow-wrap: break-word; }
h1 { font-size: 30px; } h2 { font-size: 26px; } h3 { font-size: 22px; } h4 { font-size: 18px; } h5 { font-size: 16px; } h6 { font-size: 14px; }
p { padding-bottom: 1em; } p:not(.has-background):last-of-type { padding-bottom: 0; }
a { color: #00c2ff; text-decoration: none; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible { outline: 3px solid #008dbb; outline-offset: 3px; }
img { max-width: 100%; height: auto; border: 0; }
svg { vertical-align: middle; }
video, iframe { max-width: 100%; }
button, input, select, textarea { font-family: inherit; }
button, input[type="submit"] { cursor: pointer; }
button:disabled { cursor: default; }
strong, b { font-weight: 700; }
pre { overflow: auto; padding: 20px; background: #f5f5f4; }
code { overflow-wrap: anywhere; }
[hidden] { display: none !important; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.ap-page { background: #fff; }
.ap-page__container { width: 80%; max-width: 1080px; margin: 0 auto; padding: 58px 0 0; }
.ap-page__title { margin-bottom: 20px; }
.entry-content { overflow-wrap: break-word; }
.entry-content ul, .entry-content ol { padding: 0 0 23px 1em; line-height: 26px; }
.entry-content ul { list-style: disc; } .entry-content ol { list-style: decimal; }
.entry-content li > ul, .entry-content li > ol { padding-bottom: 0; }
.entry-content blockquote { margin: 20px 0 30px; padding: 0 0 0 20px; border-left: 5px solid #00c2ff; }
.entry-content table { width: 100%; border-collapse: collapse; margin-bottom: 20px; }
.entry-content th, .entry-content td { padding: 8px 12px; border: 1px solid #e5e7eb; text-align: left; }
.entry-content .wp-block-table { overflow-x: auto; }
.alignleft { float: left; margin: 0 24px 16px 0; }
.alignright { float: right; margin: 0 0 16px 24px; }
.aligncenter { display: block; margin-inline: auto; }
.wp-caption { max-width: 100%; } .wp-caption-text, .gallery-caption { font-size: 13px; color: #6b6b6b; }
.entry-content::after { content: ''; display: table; clear: both; }
.entry-content .alignwide { width: min(1200px, 90vw); max-width: none; margin-left: 50%; transform: translateX(-50%); }
.entry-content .alignfull { width: 100vw; max-width: 100%; }
.ap-comments { margin: 48px 0; }
.ap-comments .comment-list { padding-left: 24px; }
.ap-comments .comment-body { padding: 20px 0; border-bottom: 1px solid #eee; }
.ap-comments textarea, .ap-comments input:not([type="checkbox"]) { max-width: 100%; padding: 12px; border: 1px solid #d1d5db; border-radius: 6px; }
.ap-comments label { display: block; }
.ap-comments .submit { background: #00c2ff; color: #0a0a0b; }
.search .ap-blog__hero-title { margin-bottom: 28px; }
.search .ap-blog__pagination { padding: 0 0 64px; }
@media (max-width: 980px) { .ap-page__container { padding-top: 40px; } }
@media (max-width: 480px) { .ap-page__container { width: calc(100% - 40px); } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto !important; } }
