@font-face { font-family:PublicPretendard; src:url('/fonts/Pretendard-Bold.otf') format('opentype'); font-weight:700; font-display:swap; }
.public-info { display:block; margin:0; background:#FAFBFE; color:#25324A; font-family:Arial,'Malgun Gothic',sans-serif; line-height:1.7; }
.info-header { max-width:1192px; margin:auto; padding:22px 24px; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:20px; border-bottom:1px solid #E4E9F1; }
.info-brand { display:flex; align-items:center; gap:9px; color:#25324A; text-decoration:none; font-weight:700; }
.info-brand img { width:30px; height:30px; }
.info-header nav { display:flex; flex-wrap:wrap; gap:8px 24px; align-items:center; }
.info-header nav a { display:inline-flex; align-items:center; min-height:44px; color:#526078; text-decoration:none; font-size:14px; }
.info-header nav a[aria-current] { color:#285AD9; font-weight:700; }
.info-header nav .info-start,.info-cta { display:inline-flex; align-items:center; justify-content:center; min-height:44px; border-radius:10px; padding:10px 20px; background:#376CFB; color:#FFF; font-weight:700; text-decoration:none; }
.info-main { max-width:1192px; margin:auto; padding:26px 24px 80px; }
.info-breadcrumb { display:flex; gap:12px; font-size:14px; color:#63718A; }
.info-breadcrumb a,.info-text-link { color:#285AD9; text-underline-offset:4px; }
.info-heading { max-width:760px; padding:48px 0 36px; }
.info-label { color:#376CFB; font-size:13px; font-weight:700; letter-spacing:.06em; }
.info-heading h1 { margin:8px 0 16px; font-family:PublicPretendard,sans-serif; font-size:clamp(32px,5vw,48px); line-height:1.2; }
.info-heading p,.info-card p { color:#596A83; font-size:16px; }
.info-grid { display:grid; gap:24px; }
.guide-grid { grid-template-columns:1.2fr 1fr; align-items:start; }
.info-card { min-width:0; padding:28px; border:1px solid #DDE5F2; border-radius:18px; background:#FFF; }
.info-card h2 { margin:10px 0 12px; font-size:23px; line-height:1.45; word-break:keep-all; }
.info-card video { display:block; width:100%; aspect-ratio:24/13; margin:24px auto 0; border-radius:12px; background:#111827; object-fit:contain; }
.info-card video.portrait-guide { max-width:290px; aspect-ratio:3536/7680; }
.info-steps { margin:48px 0 28px; }
.info-steps ol { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 40px; padding:20px; }
.info-steps p { color:#596A83; }
.price-card { max-width:800px; }
.price-card h2 strong { color:#285AD9; font-size:40px; }
.price-card h2 span { font-size:16px; font-weight:400; }
.price-features { margin:26px 0; }
.price-features>div { display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px 20px; padding:14px 0; border-bottom:1px solid #E4E9F1; }
.price-features dd { margin:0; font-weight:700; }
.price-card .info-cta { margin:24px 0 12px; }
.info-card .info-note { font-size:14px; }
.book-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.book-cover { display:block; width:100%; height:270px; object-fit:contain; margin-bottom:24px; }
.info-notice { margin:0 0 24px; padding:18px 22px; background:#EEF3FF; border-radius:12px; }
.info-text-link { display:inline-flex; align-items:center; min-height:44px; margin-top:18px; }
.public-info a:focus-visible { outline:3px solid #376CFB; outline-offset:4px; }
@media(max-width:760px) { .guide-grid,.book-grid,.info-steps ol { grid-template-columns:1fr; }.info-header { padding:16px 20px; }.info-header nav { gap:4px 16px; }.info-main { padding:20px 20px 56px; }.info-heading { padding-top:30px; }.info-card { padding:22px; }.price-card h2 strong { font-size:32px; } }
