/* Ntelecom prepaid guide: calm navy, clear blue actions, practical content. */
:root {
  --ink:#10233d;
  --muted:#617085;
  --paper:#fff;
  --line:#e1e8f0;
  --teal:#2469e8;
  --teal-dark:#1556d1;
  --mint:#eaf3ff;
  --lime:#eaf3ff;
  --sand:#f4f8fd;
  --orange:#ed8a40;
}
body { color:var(--ink); background:#fff; }
.container { width:min(1180px,calc(100% - 48px)); }
.service-bar { background:#0a203b; color:#c9d8eb; font-size:.7rem; font-weight:600; }
.service-bar .container { min-height:34px; display:flex; align-items:center; justify-content:space-between; gap:15px; }
.service-bar a { color:#fff; font-weight:800; }
.service-bar a:hover { text-decoration:underline; text-underline-offset:3px; }
.site-header { background:#fff; border-bottom:1px solid #e5ecf4; box-shadow:0 4px 18px rgba(9,31,62,.035); }
.nav { min-height:76px; gap:22px; }
.brand { flex:none; gap:8px; font-size:1rem; color:#0d2442; letter-spacing:-.05em; }
.brand-logo { display:block; width:83px; height:44px; object-fit:cover; flex:none; }
.brand-copy { display:grid; gap:0; line-height:1.25; }
.brand-copy strong { font-size:.97rem; white-space:nowrap; }
.brand-copy small { color:#68809b; font-size:.63rem; font-weight:700; letter-spacing:0; white-space:nowrap; }
.nav-links { gap:20px; color:#263b59; font-size:.84rem; }
.nav-links a { min-height:76px; border-bottom:3px solid transparent; }
.nav-links a:hover,.nav-links a[aria-current="page"] { color:#1962df; border-bottom-color:#2469e8; }
.nav-cta { min-height:43px; padding:10px 17px; border-radius:9px; background:#2469e8; color:#fff; box-shadow:none; font-size:.79rem; }
.nav-cta:hover { background:#1556d1; }
.btn { border-radius:9px; font-weight:800; }
.btn-primary { background:#2469e8; color:#fff; }
.btn-secondary { border-color:#d4dfeb; color:#173754; }
.btn-secondary:hover { border-color:#2469e8; }
.eyebrow { color:#2469e8; }
.text-link { color:#1d5ed3; font-weight:800; }

/* Home: one direct decision and a visual of the official application path. */
.hero.n-hero { position:relative; overflow:hidden; padding:48px 0 52px; background:#0d2b4e; color:#fff; }
.hero.n-hero:before { content:""; display:block; position:absolute; inset:0; background:radial-gradient(circle at 78% 44%,rgba(46,121,218,.38),transparent 35%),linear-gradient(115deg,#0b203c 0%,#0d2b4e 58%,#144475 100%); pointer-events:none; }
.hero.n-hero:after { display:none; }
.n-hero-grid { position:relative; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(350px,.95fr); align-items:center; gap:75px; }
.n-hero-copy { position:relative; z-index:1; }
.n-kicker { display:inline-flex; align-items:center; gap:8px; padding:7px 12px; border:1px solid rgba(168,205,255,.32); border-radius:100px; background:rgba(255,255,255,.07); color:#d7e9ff; font:800 .71rem 'DM Sans','Noto Sans KR',sans-serif; letter-spacing:.01em; }
.n-kicker i { width:7px; height:7px; border-radius:100px; background:#a8cd35; }
.n-hero h1 { margin:22px 0 19px; color:#fff; font-size:clamp(2.65rem,3.8vw,3.9rem); line-height:1.25; letter-spacing:-.075em; font-weight:900; }
.n-hero h1 em { font-style:normal; color:#83c3ff; }
.n-hero .lead { max-width:580px; margin:0; color:#d8e5f4; font-size:.97rem; line-height:1.85; }
.n-hero .hero-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:30px; }
.n-hero .btn { min-height:52px; padding:13px 20px; }
.n-hero .btn-primary { background:#2c75f3; color:#fff; }
.n-hero .btn-primary:hover { background:#1d61d8; }
.n-hero .btn-secondary { background:rgba(255,255,255,.08); color:#fff; border-color:rgba(255,255,255,.25); }
.n-hero .btn-secondary:hover { background:rgba(255,255,255,.14); color:#fff; border-color:#fff; }
.n-hero-meta { display:flex; flex-wrap:wrap; gap:18px; margin-top:30px; color:#bed2eb; font-size:.76rem; font-weight:700; }
.n-hero-meta span:before { content:"✓"; margin-right:7px; color:#b3d955; }
.n-visual { position:relative; display:grid; place-items:center; min-height:400px; }
.n-visual:before { content:""; position:absolute; width:420px; height:420px; border:1px solid rgba(255,255,255,.12); border-radius:50%; box-shadow:0 0 0 52px rgba(255,255,255,.025); }
.n-phone { position:relative; z-index:1; display:flex; flex-direction:column; align-items:flex-start; width:260px; min-height:386px; padding:27px 24px 22px; border:9px solid #dbe8f6; border-radius:38px; background:#fff; color:#112843; box-shadow:0 28px 65px rgba(0,8,30,.23); transform:rotate(5deg); }
.n-phone-notch { align-self:center; width:76px; height:10px; margin:-23px 0 24px; border-radius:0 0 12px 12px; background:#0d2b4e; }
.n-phone img { display:block; width:160px; height:84px; object-fit:cover; margin:0 0 12px -7px; }
.n-phone>span { color:#2469e8; font:900 .67rem 'DM Sans',sans-serif; letter-spacing:.12em; }
.n-phone strong { margin-top:7px; font-size:1.66rem; line-height:1.32; letter-spacing:-.065em; }
.n-phone p { margin:12px 0 0; color:#5b6f86; font-size:.72rem; }
.n-phone a { display:flex; justify-content:space-between; align-items:center; width:100%; margin-top:auto; padding:13px 15px; border-radius:8px; background:#2469e8; color:#fff; font-size:.76rem; font-weight:800; }
.n-phone a:hover { background:#1556d1; }
.n-sim { position:absolute; z-index:2; right:3%; bottom:22px; display:flex; flex-direction:column; width:128px; height:157px; padding:21px 16px; border:1px solid #dbe5ef; border-radius:20px; background:#fff; color:#173758; box-shadow:0 18px 37px rgba(0,8,30,.15); transform:rotate(-8deg); }
.n-sim-chip { display:block; width:45px; height:34px; margin-bottom:auto; border:2px solid #e4ae4e; border-radius:7px; background:linear-gradient(90deg,transparent 48%,#dda649 49%,#dda649 51%,transparent 52%),linear-gradient(0deg,transparent 48%,#dda649 49%,#dda649 51%,transparent 52%),#f5d990; }
.n-sim b { font-size:.91rem; }
.n-sim small { color:#6a7f95; font-size:.67rem; }
.n-shortcuts { position:relative; z-index:2; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:-27px; border:1px solid #e4ebf3; border-radius:13px; background:#fff; box-shadow:0 16px 36px rgba(7,35,75,.08); overflow:hidden; }
.n-shortcuts a { display:grid; grid-template-columns:1fr auto; align-content:center; min-height:106px; padding:19px 23px; border-left:1px solid #e7edf4; }
.n-shortcuts a:first-child { border-left:0; }
.n-shortcuts a:hover { background:#f3f8ff; }
.n-shortcuts .shortcut-num { grid-column:1; color:#2871e9; font:800 .68rem 'DM Sans',sans-serif; }
.n-shortcuts strong { grid-column:1; margin-top:3px; font-size:.98rem; letter-spacing:-.04em; }
.n-shortcuts small { grid-column:1; color:#718198; font-size:.72rem; }
.n-shortcuts a>span:last-child { grid-column:2; grid-row:1/4; align-self:center; color:#2c6cdb; }

/* Situation selector and product information. */
.triage-section { padding:86px 0 85px; background:#f4f8fd; }
.triage-intro h2 em { color:#2469e8; }
.triage-intro p { color:#64758b; }
.triage-widget { border:1px solid #dce6f2; box-shadow:0 12px 36px rgba(22,55,100,.06); }
.triage-top>b,.triage-question legend span { background:#eaf3ff; color:#1c64df; }
.triage-progress { background:#e7eef7; }
.triage-progress i { background:#2469e8; }
.triage-alert { background:#f0f6ff; border-color:#dbe8f8; border-left-color:#2469e8; }
.triage-alert strong { color:#173d72; }
.triage-options input:checked+span { background:#eaf3ff; border-color:#2469e8; color:#1558c9; }
.triage-widget .result { border-color:#d8e5f4; background:#f7fbff; }
.result-label { color:#2469e8; }
.n-network { padding:76px 0 75px; background:#fff; }
.n-section-top { display:flex; justify-content:space-between; align-items:end; gap:30px; margin-bottom:29px; }
.n-section-top h2 { margin:8px 0 10px; font-size:clamp(2rem,2.8vw,2.7rem); line-height:1.35; letter-spacing:-.065em; }
.n-section-top p { margin:0; color:#67778b; font-size:.9rem; }
.n-section-top .text-link { flex:none; margin-bottom:7px; }
.n-network-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.n-network-grid article { display:grid; grid-template-columns:62px 1fr; align-items:start; gap:20px; min-height:208px; padding:30px; border:1px solid #dfe8f2; border-radius:14px; background:#f8fbff; }
.network-letter { display:grid; place-items:center; width:58px; height:58px; border-radius:15px; background:#e1efff; color:#1d67d8; font:900 1.7rem 'DM Sans',sans-serif; }
.network-letter-l { background:#e9f5e8; color:#61a52b; }
.network-label { color:#2d6fdb; font-size:.72rem; font-weight:900; }
.n-network-grid h3 { margin:4px 0 6px; font-size:1.35rem; letter-spacing:-.05em; }
.n-network-grid p { margin:0 0 12px; color:#62758a; font-size:.82rem; }
.n-network-grid a { color:#1f61ce; font-size:.78rem; font-weight:900; }
.n-network-note { margin:16px 0 0; color:#7c8897; font-size:.72rem; }
.plan-preview { background:#f4f8fd; }
.preview-card,.preview-card.is-featured { border-color:#dde6f1; box-shadow:none; }
.preview-card.is-featured { border-color:#77a5ed; box-shadow:0 12px 30px rgba(35,96,200,.08); }
.network-badge { background:#e7f0ff; color:#1b61d7; }
.preview-card-bottom strong,.preview-card-bottom a { color:#1e62d8; }
.section-white { background:#fff; }
.process-grid { border-color:#dfe8f2; }
.process-item { border-color:#dfe8f2; }
.process-item b,.how-checklist b { color:#2469e8; }
.step b,.how-step>strong { background:#eaf3ff; color:#2469e8; }
.note-band { background:#f4f8fd; border-color:#e0e9f3; }
.cta-panel { background:#0f3157; color:#fff; border:0; }
.cta-panel h2 { color:#fff; }
.cta-panel p { color:#d3e0ef; }
.cta-panel .eyebrow { color:#91c7ff!important; }
.cta-panel .btn { background:#2c75f3; }
.cta-panel .btn-ghost { background:transparent; color:#fff; border-color:#7ca0c6; }
.cta-panel .btn-ghost:hover { background:#21476f; border-color:#fff; }

/* Interior pages use the same left edge and restrained service styling. */
.article-hero,.plan-hero { padding:58px 0 55px; background:#f2f7fd; }
.article-head { max-width:none; }
.article-head h1 { max-width:930px; color:#102a4a; font-size:clamp(2.15rem,3.55vw,3.5rem); }
.article-head .lead { color:#65778d; }
.breadcrumbs { color:#71849b; }
.article-layout { gap:54px; }
.article-aside { border-color:#e0e9f2; }
.prose h2,.prose h3 { color:#183351; }
.prose p,.prose li { color:#4d6177; }
.prose th { background:#eaf3ff; color:#20466f; }
.prose td { color:#506579; }
.callout,.callout.warning { background:#f2f7fd; border-left-color:#2469e8; color:#435b73; }
.route-cards>div,.how-checklist div,.how-step { border-color:#e0e9f2; }
.prep-visuals figure { border-color:#e0e9f2; }
.prep-visuals img { background:#f8fbff; }
.plan-notice { background:#f3f8ff; border-color:#dbe7f7; border-left-color:#2469e8; }
.plan-block { border-color:#dfe8f2; }
.plan-block-head,.plan-block.lg .plan-block-head { background:#f3f8ff; }
.plan-block-head span,.plan-row>b,.plan-block.lg .plan-row>b { color:#2268e6; }
.plan-block-head>b { border-color:#b5d0ef; color:#2268e6; }
.plan-bottom { background:#f3f8ff; border-color:#dfe8f2; }
.plan-chips a { color:#2268e6; }
.plan-original summary { color:#2268e6; }
.usim-figure { max-width:760px; margin:24px 0 30px; padding:22px; border:1px solid #e0e9f2; border-radius:14px; background:#f8fbff; }
.usim-figure img { display:block; width:100%; height:auto; object-fit:contain; border-radius:8px; }
.usim-figure figcaption { margin-top:10px; color:#718198; font-size:.73rem; text-align:center; }

.site-footer { padding:55px 0 24px; background:#0a203b; border-top:0; color:#dce7f2; }
.footer-grid { grid-template-columns:minmax(230px,1.5fr) repeat(3,minmax(110px,1fr)); gap:42px; }
.footer-grid .brand { color:#fff; }
.footer-grid .brand-copy strong { color:#fff; }
.footer-grid .brand-copy small { color:#b6cce5; }
.footer-brand p { max-width:350px; margin:17px 0 0; font-size:.77rem; line-height:1.8; color:#bfcee0; }
.footer-brand .footer-disclosure { margin-top:10px; color:#8ca4bf; font-size:.7rem; }
.footer-title { color:#fff; font-size:.84rem; }
.footer-grid a:not(.brand) { color:#bfcee0; }
.footer-grid a:hover { color:#fff; }
.footer-bottom { margin-top:37px; border-color:rgba(255,255,255,.15); color:#9fb2c9; }

@media(max-width:1020px) {
  .nav { min-height:70px; }
  .menu-toggle { display:block; order:3; margin-left:0; }
  .nav-links { display:none; position:absolute; top:100%; left:0; right:0; padding:10px 24px 18px; background:#fff; border-bottom:1px solid #e1e8f0; box-shadow:0 16px 25px rgba(12,37,75,.09); }
  .nav-links.open { display:flex; flex-direction:column; align-items:stretch; gap:0; }
  .nav-links a { min-height:45px; padding:9px 0; border-bottom:0; }
  .nav-links a[aria-current="page"] { border-bottom:0; }
  .nav-cta { margin-left:auto; }
  .n-hero-grid { gap:36px; }
  .n-hero h1 { font-size:clamp(2.65rem,5vw,3.6rem); }
  .n-visual { min-height:400px; }
  .n-sim { right:0; }
}
@media(max-width:760px) {
  .n-hero-grid { grid-template-columns:1fr; gap:25px; }
  .hero.n-hero { padding:54px 0 65px; }
  .n-hero h1 { font-size:clamp(2.55rem,7vw,3.25rem); }
  .n-visual { min-height:350px; }
  .n-phone { min-height:335px; width:245px; padding:24px 22px 20px; }
  .n-phone-notch { margin:-20px 0 19px; }
  .n-phone img { width:145px; height:76px; margin-bottom:10px; }
  .n-phone strong { font-size:1.39rem; }
  .n-sim { right:17%; bottom:10px; width:107px; height:128px; padding:15px 13px; }
  .n-shortcuts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .n-shortcuts a:nth-child(3) { border-left:0; border-top:1px solid #e7edf4; }
  .n-shortcuts a:nth-child(4) { border-top:1px solid #e7edf4; }
  .n-section-top { align-items:start; flex-direction:column; gap:13px; }
  .n-network-grid { grid-template-columns:1fr; }
  .footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; }
  .footer-brand { grid-column:1/-1; }
}
@media(max-width:640px) {
  .container { width:calc(100% - 32px); }
  .service-bar .container { min-height:32px; }
  .service-bar span { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
  .brand-logo { width:68px; height:38px; }
  .brand-copy strong { font-size:.87rem; }
  .brand-copy small { font-size:.59rem; }
  .nav { min-height:64px; gap:9px; }
  .nav-cta { display:none; }
  .menu-toggle { margin-left:auto; }
  .hero.n-hero { padding:43px 0 37px; }
  .n-hero h1 { margin:19px 0 16px; font-size:clamp(2.2rem,9vw,2.75rem); line-height:1.27; }
  .n-hero .lead { font-size:.85rem; line-height:1.75; }
  .n-hero .hero-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:22px; }
  .n-hero .btn { min-height:49px; padding:11px 8px; font-size:.72rem; }
  .n-hero-meta { gap:9px; margin-top:21px; font-size:.65rem; }
  .n-hero-meta span:before { margin-right:3px; }
  .n-visual { display:none; }
  .n-visual:before { width:290px; height:290px; }
  .n-phone { width:207px; min-height:277px; padding:18px 17px 15px; border-width:7px; border-radius:30px; }
  .n-phone-notch { width:57px; height:7px; margin:-16px 0 11px; }
  .n-phone img { width:106px; height:56px; margin:0 0 6px -4px; }
  .n-phone>span { font-size:.55rem; }
  .n-phone strong { font-size:1.2rem; }
  .n-phone p { margin-top:6px; font-size:.58rem; }
  .n-phone a { padding:9px 10px; font-size:.65rem; }
  .n-sim { right:7%; bottom:4px; width:84px; height:104px; padding:10px; border-radius:13px; }
  .n-sim-chip { width:31px; height:24px; }
  .n-sim b { font-size:.71rem; }
  .n-sim small { font-size:.57rem; }
  .n-shortcuts { margin-top:-19px; border-radius:11px; }
  .n-shortcuts a { min-height:91px; padding:13px; }
  .n-shortcuts strong { font-size:.84rem; }
  .n-shortcuts small { font-size:.65rem; }
  .triage-section { padding:54px 0 58px; }
  .n-network { padding:56px 0 55px; }
  .n-section-top h2 { font-size:1.9rem; }
  .n-network-grid article { grid-template-columns:47px 1fr; gap:14px; min-height:0; padding:20px; }
  .network-letter { width:44px; height:44px; border-radius:11px; font-size:1.3rem; }
  .n-network-grid h3 { font-size:1.18rem; }
  .article-hero,.plan-hero { padding:40px 0; }
  .article-head h1 { font-size:clamp(1.95rem,8vw,2.5rem); }
  .footer-grid { gap:26px; }
}
