.guide-shell { width: calc(100% - 56px); max-width: 1200px; margin: 24px auto 60px; }
.guide-breadcrumbs { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; color: #cadbed; font-size: 14px; }
.guide-breadcrumbs a { display: inline-flex; align-items: center; min-height: 44px; text-decoration: underline; }
.guide-heading { margin: 20px 0 40px; }
.guide-heading h1 { max-width: 24ch; margin: 0 0 20px; font: 400 48px/1.12 var(--display); color: #fff1cf; }
.guide-heading > p { max-width: 68ch; color: #cadbed; font-size: 18px; line-height: 1.65; margin: 0 0 24px; }
.guide-heading .button { margin-right: 18px; }
.guide-no-account { color: #cadbed; font-size: 14px; }
.guide-layout { display: grid; grid-template-columns: 230px minmax(0, 1fr); align-items: start; gap: 32px; }
.guide-layout > * { min-width: 0; }
.guide-contents { position: sticky; top: 24px; padding: 20px 0; }
.guide-contents h2 { color: #fff1cf; font: 650 18px/1.4 var(--body); margin: 0 0 12px; }
.guide-contents ul { padding: 0; margin: 0; list-style: none; }
.guide-contents a { display: flex; align-items: center; min-height: 44px; padding: 8px 0; color: #cadbed; font-size: 14px; line-height: 1.45; text-decoration: underline; }
.guide-contents a:hover { color: #ff7847; }
.guide-paper { background: #faf7ee; color: #142b43; border-radius: 4px; padding: 40px; font-size: 18px; line-height: 1.65; }
.guide-section { max-width: 72ch; scroll-margin-top: 28px; }
.guide-section + .guide-section { border-top: 1px solid #cbd7e4; padding-top: 32px; margin-top: 36px; }
.guide-section h2 { margin: 0 0 18px; font: 700 24px/1.3 var(--body); text-wrap: balance; }
.guide-section h3 { margin: 28px 0 10px; font: 650 20px/1.35 var(--body); }
.guide-section p { margin: 0 0 18px; }
.guide-section p:last-child { margin-bottom: 0; }
.guide-section a:not(.button) { color: #176aab; text-decoration: underline; text-underline-offset: 4px; }
.guide-section a:not(.button):hover { color: #142b43; }
.guide-section ol, .guide-section ul { padding-left: 24px; margin: 0; }
.guide-section li + li { margin-top: 12px; }
.guide-section li p { margin-top: 8px; }
.guide-section strong { font-weight: 700; }
.guide-section table { width: 100%; border-collapse: collapse; margin: 22px 0; font-size: 16px; line-height: 1.55; }
.guide-section th, .guide-section td { text-align: left; vertical-align: top; border-bottom: 1px solid #cbd7e4; padding: 12px 8px; overflow-wrap: anywhere; }
.guide-section th { background: #f1e9d6; font-size: 14px; font-weight: 700; }
.guide-section td:first-child { font-weight: 650; }
.guide-section caption { text-align: left; color: #496078; font-size: 14px; margin-bottom: 12px; }
.guide-faq details { border-top: 1px solid #cbd7e4; padding: 4px 0; }
.guide-faq details:last-child { border-bottom: 1px solid #cbd7e4; }
.guide-faq summary { min-height: 48px; padding: 12px 0; cursor: pointer; font-weight: 650; line-height: 1.5; }
.guide-faq details p { margin: 0 0 18px; }
.guide-faq .site-faq-item { border-top: 1px solid #cbd7e4; padding: 14px 0; }
.guide-faq .site-faq-item:last-child { border-bottom: 1px solid #cbd7e4; }
.guide-faq .site-faq-item h3 { margin: 0 0 6px; font-size: 17px; font-weight: 650; line-height: 1.5; }
.guide-faq .site-faq-item p { max-width: 72ch; margin: 0; line-height: 1.6; }
.guide-ready .button { margin-top: 4px; }
.guide-footer-links { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 20px; }
.guide-footer-links a { display: inline-flex; align-items: center; min-height: 44px; text-decoration: underline; font-size: 14px; }
.guide-page :focus-visible { outline-color: #b6dcff; }
.guide-paper :focus-visible { outline-color: #176aab; }
@media (max-width: 1000px) {
  .guide-layout { grid-template-columns: 190px minmax(0, 1fr); gap: 24px; }
  .guide-paper { padding: 30px; }
}
@media (max-width: 760px) {
  .guide-shell { width: calc(100% - 32px); margin-top: 16px; }
  .guide-heading { margin-top: 16px; margin-bottom: 28px; }
  .guide-heading h1 { font-size: 36px; max-width: 22ch; }
  .guide-heading > p { font-size: 16px; }
  .guide-no-account { display: block; margin-top: 12px; }
  .guide-layout { grid-template-columns: 1fr; gap: 20px; }
  .guide-contents { position: static; padding: 0 0 20px; border-bottom: 1px solid #57718d; }
  .guide-contents ul { display: flex; flex-wrap: wrap; gap: 4px 20px; }
  .guide-contents li { min-width: 0; max-width: 100%; }
  .guide-contents a { font-size: 14px; padding: 8px 0; }
  .guide-paper { padding: 24px 20px; font-size: 16px; }
  .guide-section h2 { font-size: 24px; }
  .guide-section + .guide-section { padding-top: 26px; margin-top: 30px; }
  .guide-section table { font-size: 14px; }
  .guide-section td, .guide-section th { padding: 10px 6px; }
  .guide-page:not(.guide-enhanced) .site-header { flex-wrap: wrap; }
  .guide-page:not(.guide-enhanced) .main-nav { display: flex; position: static; width: 100%; flex-wrap: wrap; order: 3; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
