/* Shared contact block, including on the public 404. */
footer.r28-site-footer{box-sizing:border-box;display:grid;grid-template-columns:1.12fr 1.25fr .8fr 1fr;gap:clamp(20px,3vw,48px);align-items:start;padding:42px 4.2%;background:#111;color:#d5d3cc;border-top:1px solid #46443f;font:14px/1.65 'Inter Tight',Arial,sans-serif;text-align:left}
.r28-site-footer address{font-style:normal}
.r28-site-footer strong{color:#f0eee8}
.r28-site-footer a{color:inherit;text-decoration:underline;text-underline-offset:.19em}
.r28-site-footer a:hover,.r28-site-footer a:focus-visible{color:#ff914f}
.r28-site-footer .footer-brand-logo{display:block;position:relative;width:168px;height:40px;overflow:hidden}
.r28-site-footer .footer-brand-logo img{position:absolute;width:168px;height:168px;max-width:none;left:0;top:-67px}
.r28-site-footer .r28-footer-identity p{margin:.5em 0}
.r28-footer-column{display:grid;gap:.3em}
.r28-footer-column strong{margin-bottom:.2em}
@media(max-width:850px){footer.r28-site-footer{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){footer.r28-site-footer{grid-template-columns:1fr;padding:30px 20px 80px}}
/* Static guide pages only. */
.seo-page{margin:0;background:#111;color:#f0eee8;font:17px/1.6 'Inter Tight',Arial,sans-serif}
.seo-page *{box-sizing:border-box}
.seo-page .wrap{max-width:1440px;margin:auto}
.seo-page nav{display:flex;align-items:center;justify-content:space-between;padding:18px 5%;gap:1rem;border-bottom:1px solid #ffffff30}
.seo-page .brand{font-size:26px;white-space:nowrap}
.seo-page .brand span{color:#f56618}
.seo-page nav .links{display:flex;gap:clamp(12px,2.3vw,32px);align-items:center}
.seo-page nav a,.seo-page .seo-cta{color:inherit;text-decoration:none}
.seo-page main section{padding:clamp(40px,7vw,90px) 5%}
.seo-page .mono{font:12px/1.5 'IBM Plex Mono',monospace;letter-spacing:.12em;text-transform:uppercase}
.seo-page .mono::before{content:'— ';color:#a78bfa}
.seo-page main h1{font-size:clamp(42px,6.4vw,92px);line-height:1.02;margin:.2em 0}
.seo-page main h2{font-size:clamp(30px,4vw,56px);line-height:1.08;margin:0 0 .65em}
.seo-page main p{max-width:66ch}
.seo-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(26px,5vw,75px);align-items:center}
.seo-grid .seo-photo,.seo-grid iframe{display:block;width:100%;height:auto;aspect-ratio:1.55;object-fit:cover;border:0;border-radius:8px}
.seo-page main .seo-cta{display:inline-flex;margin:.6em 0 0;padding:12px 18px;align-items:center;min-height:44px;background:#f56618;color:#111;border-radius:6px;font-weight:750}
.seo-paper{background:#f0eee8;color:#111}
.seo-faq{max-width:880px;margin:1.6em 0}
.seo-faq details,.seo-course-list article{border-top:1px solid #bcb9b0}
.seo-faq details:last-child{border-bottom:1px solid #bcb9b0}
.seo-faq summary{padding:17px 0;font-weight:700;cursor:pointer}
.seo-faq p{margin:0 0 22px}
.seo-course-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.seo-course-list h3{margin:.8em 0 .3em;font-size:clamp(23px,2.5vw,33px)}
.seo-course-list h3 a{color:inherit;text-decoration:underline;text-decoration-color:#d94f0c;text-underline-offset:.18em}
.seo-page :focus-visible{outline:3px solid currentColor;outline-offset:3px}
@media(max-width:720px){.seo-grid,.seo-course-list{grid-template-columns:1fr}.seo-page nav{flex-wrap:wrap}.seo-page nav .links{flex-wrap:wrap}.seo-page main section{padding-inline:20px}}
