.guide-main { width: min(1120px, calc(100% - 8vw)); padding-top: 2.5rem; }
.guide-index-main { width: min(1120px, calc(100% - 8vw)); }
.guide-index-heading { max-width: 900px; border-bottom: 2px solid var(--orange); padding-bottom: 2.5rem; }
.guide-index-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem; margin-top: 3rem; }
.guide-index-card { display: grid; grid-template-columns: 5rem minmax(0, 1fr) auto; gap: clamp(1.2rem, 4vw, 3rem); align-items: center; padding: clamp(1.4rem, 4vw, 2.5rem); border: 1px solid #41463c; border-left: 3px solid var(--orange); background: rgba(15,18,14,.86); color: inherit; text-decoration: none; }
.guide-index-card:hover, .guide-index-card:focus-visible { background: #191d16; border-color: var(--orange); }
.guide-index-card-number { color: var(--orange); font: 800 .72rem/1.4 var(--mono); letter-spacing: .08em; }
.guide-index-card h2 { margin: .65rem 0 .8rem; color: #f2f3ee; font: 900 clamp(2rem, 4.8vw, 4rem)/.95 var(--display); text-transform: uppercase; }
.guide-index-card p:not(.eyebrow) { max-width: 760px; margin: 0; color: #aeb4a8; line-height: 1.7; }
.guide-index-card-action { color: var(--orange); font: 800 .65rem/1.5 var(--mono); letter-spacing: .08em; white-space: nowrap; }
.guide-breadcrumb { display: flex; flex-wrap: wrap; gap: .45rem; margin-bottom: 2.5rem; color: #858b81; font: 700 .62rem/1.5 var(--mono); letter-spacing: .07em; text-transform: uppercase; }
.guide-breadcrumb a { color: #aeb3aa; text-decoration: none; }
.guide-breadcrumb a:hover, .guide-breadcrumb a:focus-visible { color: var(--orange); }
.guide-heading { max-width: 980px; padding-bottom: 3rem; border-bottom: 2px solid var(--orange); }
.guide-heading h1 { max-width: none; }
.guide-heading h1 span { color: var(--orange); }
.guide-heading .page-intro { max-width: 850px; }
.guide-notice { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .8rem 1.5rem; align-items: start; max-width: 900px; margin-top: 1.5rem; padding: 1rem 1.2rem; border-left: 3px solid var(--orange); background: rgba(254,149,39,.06); }
.guide-notice strong { color: var(--orange); font: 800 .68rem/1.55 var(--mono); letter-spacing: .07em; }
.guide-notice span { color: #c3c7be; font-size: .82rem; line-height: 1.6; }
.guide-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.5rem; margin-top: 1.7rem; }
.guide-button { display: inline-flex; align-items: center; justify-content: center; min-height: 3.25rem; padding: .85rem 1.15rem; background: var(--orange); color: #10130f; text-decoration: none; font: 800 .66rem/1.3 var(--mono); letter-spacing: .08em; }
.guide-button:hover, .guide-button:focus-visible { background: #ffad53; }
.guide-text-link { color: #d5d8d1; font: 700 .68rem/1.5 var(--mono); text-underline-offset: .3em; }
.guide-layout { display: grid; grid-template-columns: 13rem minmax(0, 1fr); gap: clamp(2.5rem, 7vw, 7rem); align-items: start; margin-top: 3rem; }
.guide-contents { position: sticky; top: 2rem; padding: 1.1rem 0; border-top: 1px solid #44483e; border-bottom: 1px solid #44483e; }
.guide-contents p { margin: 0 0 .8rem; color: var(--orange); font: 800 .62rem/1.5 var(--mono); letter-spacing: .08em; }
.guide-contents ol { margin: 0; padding-left: 1.2rem; color: #697066; font: 700 .68rem/1.55 var(--mono); }
.guide-contents li { margin: .62rem 0; padding-left: .2rem; }
.guide-contents a { color: #aeb3aa; text-decoration: none; }
.guide-contents a:hover, .guide-contents a:focus-visible { color: #fff; }
.guide-article { min-width: 0; }
.guide-section { scroll-margin-top: 2rem; padding: 3rem 0; border-top: 1px solid #34382e; }
.guide-section:first-child { padding-top: 0; border-top: 0; }
.guide-section h2, .guide-cta h2 { margin: .8rem 0 1.2rem; color: #f3f4ef; font: 900 clamp(2rem, 4vw, 3.5rem)/.98 var(--display); }
.guide-section > p:not(.eyebrow):not(.source-note):not(.guide-caution), .guide-section li, .guide-cta > p:not(.eyebrow) { color: #b8bbb6; font-size: .98rem; line-height: 1.75; }
.guide-section strong { color: #eceee8; }
.guide-section--lead > p:not(.eyebrow):not(.source-note) { color: #d1d4cd; font-size: 1.04rem; }
.source-note { margin-top: 1.3rem; color: #858c81; font: .68rem/1.65 var(--mono); }
.source-note a, .guide-sources a { color: #c1c6bc; text-underline-offset: .25em; }
.guide-checklist { display: grid; gap: .7rem; padding-left: 1.2rem; }
.guide-checklist li::marker { color: var(--orange); }
.guide-callout, .guide-warning { margin-top: 2rem; padding: 1.3rem 1.4rem; border: 1px solid #43483e; background: #11140f; }
.guide-callout strong, .guide-warning strong { display: block; margin-bottom: .45rem; color: var(--orange); font: 800 .7rem/1.4 var(--mono); letter-spacing: .07em; }
.guide-callout p, .guide-warning p { margin: 0; color: #c3c7be; line-height: 1.65; }
.guide-warning { border-left: 3px solid var(--orange); }
.document-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 2rem 0; background: #3a3f35; border: 1px solid #3a3f35; }
.document-grid article { padding: 1.4rem; background: #10130f; }
.document-grid article > span { color: var(--orange); font: 800 .6rem/1.4 var(--mono); }
.document-grid h3, .guide-steps h3 { margin: .65rem 0 .55rem; color: #eceee8; font: 800 1.35rem/1.1 var(--display); text-transform: uppercase; }
.document-grid p, .guide-steps p { margin: 0; color: #aeb4a8; line-height: 1.65; }
.guide-subheading { margin: 2.4rem 0 .8rem; color: #f0f1ed; font: 900 1.55rem/1.1 var(--display); }
.guide-steps { display: grid; gap: 1px; margin: 2rem 0; padding: 0; list-style: none; background: #34382e; border: 1px solid #34382e; }
.guide-steps li { display: grid; grid-template-columns: 2.6rem minmax(0, 1fr); gap: 1rem; padding: 1.35rem; background: #10130f; }
.guide-steps li > span { color: var(--orange); font: 800 .66rem/1.5 var(--mono); }
.guide-steps h3 { margin-top: 0; }
.official-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; margin: 1.5rem 0; }
.official-links a { display: flex; flex-direction: column; gap: .35rem; padding: 1.1rem; border: 1px solid #4b5045; color: #d5d8d1; text-decoration: none; }
.official-links a:hover, .official-links a:focus-visible { border-color: var(--orange); }
.official-links strong { color: var(--orange); font: 800 .66rem/1.4 var(--mono); }
.official-links span { font-size: .8rem; line-height: 1.55; }
.guide-caution { margin-top: 1.5rem; color: #969d91; font-size: .8rem; line-height: 1.65; }
.comparison-table { margin-top: 2rem; border: 1px solid #41463c; }
.comparison-row { display: grid; grid-template-columns: 1.1fr .75fr 1.15fr; border-top: 1px solid #34382e; }
.comparison-row:first-child { border-top: 0; }
.comparison-row > * { margin: 0; padding: .95rem 1rem; border-left: 1px solid #34382e; color: #acb2a7; font-size: .78rem; line-height: 1.55; }
.comparison-row > :first-child { border-left: 0; }
.comparison-row strong { color: #e3e6de; }
.comparison-head > * { color: var(--orange); background: #151914; font: 800 .62rem/1.4 var(--mono); letter-spacing: .06em; text-transform: uppercase; }
.guide-faq details { border-top: 1px solid #3b4037; }
.guide-faq details:last-child { border-bottom: 1px solid #3b4037; }
.guide-faq summary { padding: 1.1rem 2rem 1.1rem 0; color: #e1e4dc; cursor: pointer; font: 800 1rem/1.35 var(--display); text-transform: uppercase; }
.guide-faq details p { margin: 0 0 1.3rem; color: #aeb4a8; line-height: 1.7; }
.guide-cta { margin: 1rem 0 3rem; padding: clamp(1.5rem, 5vw, 3.5rem); border: 1px solid #595f50; border-top: 3px solid var(--orange); background: linear-gradient(135deg, rgba(254,149,39,.1), #10130f 55%); }
.guide-cta p { max-width: 720px; }
.guide-cta .guide-button { margin-top: .7rem; }
.guide-sources { padding: 1.3rem 0 3rem; border-top: 1px solid #34382e; color: #7f867b; font: .65rem/1.7 var(--mono); }
.guide-sources ul { display: flex; flex-wrap: wrap; gap: .3rem 1.4rem; margin: .6rem 0; padding: 0; list-style: none; }
@media (max-width: 860px) {
  .guide-layout { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
  .guide-contents { position: static; }
  .guide-contents ol { columns: 2; }
}
@media (max-width: 620px) {
  .guide-index-main { width: calc(100% - 2rem); }
  .guide-index-card { grid-template-columns: minmax(0, 1fr); }
  .guide-index-card-number { display: none; }
  .guide-index-card-action { white-space: normal; }
  .guide-main { width: calc(100% - 2rem); padding-top: 2rem; }
  .guide-heading h1 { font-size: clamp(3rem, 15vw, 4.7rem); }
  .guide-notice, .document-grid, .official-links { grid-template-columns: minmax(0, 1fr); }
  .guide-contents ol { columns: 1; }
  .comparison-head { display: none; }
  .comparison-row { grid-template-columns: minmax(0, 1fr); padding: .8rem 0; }
  .comparison-row > * { padding: .35rem .9rem; border-left: 0; }
  .comparison-row > span:first-of-type { color: var(--orange); font: 700 .65rem/1.5 var(--mono); text-transform: uppercase; }
}
