.visa-guide { background: #f8fafc; }
.guide-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8%; align-items: center; }
.guide-visual { position: relative; margin: 0; border: 1px solid #bcc9d4; background: #e7edf3; padding: 10px; }
.guide-visual::after { content: ''; position: absolute; width: 60px; height: 60px; left: -9px; top: -9px; border-top: 2px solid #91a4b5; border-left: 2px solid #91a4b5; pointer-events: none; }
.guide-visual > img { width: 100%; height: 480px; object-fit: cover; object-position: 50% center; }
.guide-visual figcaption { position: relative; margin: -70px -1px -1px 32px; padding: 20px 24px; background: #0d2a45; color: #edf2f6; border-top: 2px solid #c5cdd5; }
.guide-visual figcaption > span { display: block; font-size: 8px; letter-spacing: 1.7px; color: #c2d0dc; }
.guide-visual figcaption > strong { display: block; font-family: var(--serif); font-size: 22px; font-weight: 400; line-height: 1.4; margin-top: 6px; }
.guide-copy .eyebrow { font-size: 8px; letter-spacing: 1.6px; margin-bottom: 22px; }
.guide-copy h2 { font-size: clamp(34px, 3.5vw, 49px); letter-spacing: -1.5px; }
.guide-copy .guide-lead { font-size: 15px; line-height: 1.8; color: #354d61; margin: 24px 0 14px; }
.guide-copy > p:not(.eyebrow):not(.guide-lead):not(.guide-source):not(.guide-illustration-note) { font-size: 12px; line-height: 1.9; }
.guide-checks { list-style: none; margin: 25px 0; padding: 0; display: grid; gap: 17px; }
.guide-checks > li { display: flex; gap: 14px; align-items: flex-start; }
.guide-checks > li > span { display: grid; place-items: center; width: 22px; height: 22px; flex-shrink: 0; color: #29455d; background: var(--silver-metal); border: 1px solid #bcc9d4; border-radius: 50%; font-size: 12px; }
.guide-checks strong { display: block; font-size: 11px; font-weight: 600; line-height: 1.5; }
.guide-checks p { font-size: 11px; line-height: 1.8; margin-top: 3px; }
.guide-copy .guide-source { font-size: 9px; line-height: 1.8; margin-top: 21px; color: #657b8e; }
.guide-source a { text-decoration: underline; text-underline-offset: 3px; }
.guide-source a:hover { color: #1c4565; }
.guide-dark { background: #0a243c; color: #eff4f8; border-top: 1px solid #afc1d040; border-bottom: 1px solid #afc1d040; }
.guide-dark .guide-copy h2 em { color: #cbd8e3; }
.guide-dark .guide-copy .eyebrow { color: #c5d4e1; }
.guide-dark .guide-lead { color: #d2dfe9; }
.guide-dark .guide-copy > p:not(.eyebrow):not(.guide-lead) { color: #adbfce; }
.guide-dark .guide-source a:hover { color: #f1f6fa; }
.guide-dark .guide-visual { background: #102f4b; border-color: #8fa7ba70; }
.guide-dark .guide-visual > img { height: 535px; object-position: 47% center; }
.guide-dark .guide-visual figcaption { background: #122f48; }
.interview-points { display: grid; margin: 26px 0 30px; }
.interview-points > div { display: flex; gap: 17px; padding: 14px 0; border-top: 1px solid #c5cdd52b; }
.interview-points > div:last-child { border-bottom: 1px solid #c5cdd52b; }
.interview-points > div > span { font: 19px var(--serif); color: #c6d5e1; flex-shrink: 0; }
.interview-points p { font-size: 11px; line-height: 1.9; color: #adbfce; }
.interview-points strong { font-weight: 500; color: #e4edf4; }
.guide-followup { background: #edf2f6; }
.guide-followup .guide-visual { background: #f8fafc; }
.guide-followup .guide-visual > img { object-position: 45% center; }
.followup-note { display: flex; gap: 17px; margin: 28px 0; padding: 20px; background: #f8fafc; border-left: 2px solid #8fa6b9; }
.followup-note > span { color: #637e94; font-size: 26px; line-height: 1.2; }
.followup-note strong { display: block; font-size: 12px; font-weight: 500; line-height: 1.7; }
.followup-note p { font-size: 11px; line-height: 1.8; margin-top: 5px; }
.guide-copy .guide-illustration-note { font-size: 8px; line-height: 1.8; color: #687e91; margin-top: 20px; }
@media (max-width: 1000px) {
  .guide-grid { gap: 5%; }
  .guide-copy h2 { font-size: 36px; }
  .guide-visual > img, .guide-dark .guide-visual > img { height: 490px; }
  .guide-visual figcaption { margin-left: 15px; padding: 18px; }
  .guide-visual figcaption > strong { font-size: 19px; }
}
@media (max-width: 700px) {
  .guide-grid { grid-template-columns: 1fr; gap: 36px; }
  .guide-visual > img, .guide-dark .guide-visual > img { height: auto; aspect-ratio: 4 / 3; }
  .guide-reverse .guide-visual { grid-row: 1; }
  .guide-copy h2 { font-size: 37px; letter-spacing: -1.3px; }
  .guide-copy .eyebrow { font-size: 7px; letter-spacing: 1.4px; }
  .guide-copy .guide-lead { font-size: 15px; }
  .guide-copy > p:not(.eyebrow):not(.guide-lead):not(.guide-source):not(.guide-illustration-note) { font-size: 12px; }
  .guide-checks p, .interview-points p, .followup-note p { font-size: 12px; }
  .guide-checks strong { font-size: 12px; }
  .guide-copy .guide-source { font-size: 10px; }
  .guide-copy .guide-illustration-note { font-size: 9px; }
  .guide-visual figcaption { margin-top: -43px; margin-left: 18px; padding: 17px 18px; }
  .guide-visual figcaption > strong { font-size: 20px; }
  .guide-visual figcaption > span { font-size: 7px; }
  .guide-dark .button { width: 100%; gap: 16px; padding-inline: 16px; font-size: 10px; }
}
