@import url("styles.css");

.guide-main { background: var(--white); }
.guide-hero { padding: clamp(64px, 9vw, 132px) clamp(24px, 5vw, 80px) 56px; background: var(--paper); border-bottom: 1px solid var(--line); }
.guide-hero > div { max-width: 980px; }
.guide-hero h1 { max-width: 900px; margin-bottom: 22px; font-size: clamp(46px, 6vw, 82px); }
.guide-summary { max-width: 690px; font-size: 20px; }
.guide-layout { display: grid; grid-template-columns: minmax(0, 680px) minmax(240px, 320px); justify-content: space-between; gap: 72px; max-width: 1280px; margin: 0 auto; padding: 76px 28px 120px; }
.guide-body { min-width: 0; }
.content h2 { color: #fffdf8; background: #102a38; }
.guide-body h2 { margin: 62px 0 26px; padding: 14px 18px; color: var(--white); background: var(--ink); font-family: var(--display); font-size: clamp(27px, 3vw, 38px); font-weight: 500; }
.guide-body h2:first-child { margin-top: 0; }
.guide-body h3 { margin: 35px 0 12px; font-family: var(--display); font-size: 27px; font-weight: 600; }
.guide-body p { margin: 0 0 20px; font-size: 18px; line-height: 2; }
.guide-body a { text-decoration-color: var(--amber); text-underline-offset: 4px; }
.marker { background: linear-gradient(transparent 62%, #fbf6af 62%); font-weight: 700; }
.article-note { margin: 28px 0; padding: 18px 20px; border-left: 5px solid var(--amber); background: #fff0dc; }
.article-note p:last-child { margin-bottom: 0; }
.article-note strong { display: block; margin-bottom: 4px; }
.guide-table-wrap { margin: 28px 0; overflow-x: auto; }
.table-note { margin-bottom: -14px !important; color: var(--ink-soft); font-size: 16px !important; }
.guide-table { width: 100%; min-width: 600px; border-collapse: collapse; font-size: 16px; }
.guide-table caption { margin-bottom: 12px; text-align: left; font-size: 16px; font-weight: 700; }
.guide-table th { padding: 14px; color: var(--white); background: var(--ink); text-align: left; }
.guide-table td { padding: 14px; border-bottom: 1px solid var(--line); vertical-align: top; }
.guide-table tbody tr:nth-child(even) { background: var(--paper); }
.article-steps { margin: 28px 0; padding: 0; list-style: none; counter-reset: steps; }
.article-steps li { display: grid; grid-template-columns: 40px 1fr; gap: 15px; padding: 0 0 25px; position: relative; }
.article-steps li::before { content: counter(steps); counter-increment: steps; display: grid; width: 32px; height: 32px; place-items: center; border-radius: 50%; color: var(--white); background: var(--amber); font-family: var(--mono); font-size: 16px; font-weight: 700; z-index: 1; }
.article-steps li:not(:last-child)::after { content: ""; position: absolute; top: 32px; left: 15px; width: 2px; height: calc(100% - 9px); background: var(--amber-pale); }
.article-steps strong { display: block; margin-bottom: 3px; font-size: 19px; }
.article-steps p { margin: 0; font-size: 17px; line-height: 1.75; }
.warning { margin: 28px 0; padding: 20px; border-left: 5px solid var(--amber); background: #f8e4cf; }
.warning strong { display: block; margin-bottom: 4px; }
.warning p { margin: 0; font-size: 17px; }
.guide-aside { align-self: start; padding: 24px; border-top: 4px solid var(--amber); background: var(--paper); position: sticky; top: 98px; }
.guide-aside h2 { margin: 0 0 14px; font-family: var(--display); font-size: 27px; font-weight: 600; }
.guide-aside ol { margin: 0; padding-left: 22px; }
.guide-aside li { margin: 10px 0; font-size: 16px; }
.guide-aside a { text-underline-offset: 4px; }
.guide-aside p { margin: 24px 0 0; padding-top: 20px; border-top: 1px solid var(--line); font-size: 16px; }
.guide-return { display: inline-flex; gap: 10px; margin: 54px 0 0; padding-bottom: 8px; border-bottom: 2px solid var(--amber); font-weight: 700; text-decoration: none; }
@media (max-width: 840px) {
  .guide-layout { display: block; padding: 58px 24px 80px; }
  .guide-aside { position: static; margin: 50px 0 0; }
  .guide-body h2 { margin-top: 50px; }
}
