:root { --ink:#0b0d0e; --paper:#fbfbfa; --acid:#0f5cd6; --rust:#0f5cd6; --muted:#6b7679; --line:#e1e5e5; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; background:var(--paper); color:var(--ink); font-family:"Noto Sans KR",sans-serif; } button,input,textarea,select { font:inherit; } button { cursor:pointer; } .site-header { height:80px; display:flex; align-items:center; justify-content:space-between; padding:0 5.5vw; border-bottom:1px solid var(--line); background:var(--paper); position:relative; z-index:3; } .brand { font:800 20px Manrope,sans-serif; letter-spacing:-1px; color:var(--ink); text-decoration:none; } .brand span { color:var(--rust); } nav { display:flex; gap:30px; } nav a { font-size:13px; color:var(--ink); text-decoration:none; } .header-cta,.primary-button { border:0; background:var(--ink); color:#fff; padding:13px 17px; font-size:13px; font-weight:700; } .header-cta span,.primary-button span { margin-left:17px; font-size:17px; } .hero { min-height:640px; display:grid; grid-template-columns:1fr 1fr; } .hero-copy { padding:11vw 5.5vw 50px; } .eyebrow,.step-count { margin:0 0 20px; font:500 11px "DM Mono",monospace; letter-spacing:.8px; color:var(--rust); } h1,h2,h3,p { margin-top:0; } h1 { font:800 clamp(49px,5.4vw,86px)/1.1 "Noto Sans KR",sans-serif; letter-spacing:-4px; margin-bottom:28px; } h1 em { color:var(--rust); font-style:normal; } .hero-description { color:#4d574f; line-height:1.8; font-size:15px; } .hero-actions { display:flex; align-items:center; gap:28px; margin-top:37px; } .primary-button { padding:17px 21px; transition:transform .2s,background .2s; } .primary-button:hover { background:var(--rust); transform:translateY(-2px); } .text-button { color:var(--ink); text-decoration:none; font-size:13px; font-weight:700; border-bottom:1px solid var(--ink); padding-bottom:5px; } .text-button span { margin-left:14px; } .hero-trust { margin-top:85px; font:500 10px "DM Mono",monospace; color:var(--muted); letter-spacing:.4px; } .hero-trust strong { color:var(--ink); } .hero-trust span { border-left:1px solid var(--line); margin:0 12px; } .hero-visual { min-height:640px; position:relative; overflow:hidden; background:#b7c4ba; } .hero-visual img { width:100%; height:100%; position:absolute; object-fit:cover; filter:saturate(.72); } .visual-label { position:absolute; z-index:1; font:500 10px "DM Mono",monospace; letter-spacing:.6px; color:white; } .top-label { top:30px; left:30px; }.bottom-label { bottom:30px; left:30px; font-size:11px; line-height:1.6; }.spec-card { position:absolute; z-index:1; right:0; bottom:0; width:205px; padding:18px; background:var(--acid); display:flex; flex-direction:column; }.spec-card span,.spec-card small { font:500 9px "DM Mono",monospace; }.spec-card b { margin:18px 0 4px; font:800 24px Manrope,sans-serif; }.ticker { overflow:hidden; white-space:nowrap; background:var(--acid); padding:14px 0; font:700 15px Manrope,sans-serif; letter-spacing:1px; }.ticker div { animation:slide 25s linear infinite; }.ticker i { font-style:normal; color:var(--rust); margin:0 14px; } @keyframes slide { to { transform:translateX(-35%); } }.section-pad { padding:130px 5.5vw; }.intro { display:grid; grid-template-columns:1fr 1fr; gap:10%; }.intro h2,.section-heading h2,.insight h2 { font:700 clamp(31px,3.8vw,56px)/1.22 "Noto Sans KR",sans-serif; letter-spacing:-3px; margin:0; }.intro > p { max-width:470px; align-self:end; line-height:2; color:#535b54; font-size:15px; }.services { background:#e3e0d6; }.section-heading { display:grid; grid-template-columns:1fr 1fr auto; align-items:start; margin-bottom:68px; }.section-heading .eyebrow { grid-column:1; }.section-heading h2 { grid-column:1 / 3; grid-row:2; }.section-heading > span { font:500 11px "DM Mono",monospace; }.service-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #abb0a8; }.service-grid article { min-height:250px; padding:22px 20px 18px 0; border-right:1px solid #abb0a8; border-bottom:1px solid #abb0a8; position:relative; }.service-grid article:nth-child(3n) { border-right:0; padding-left:20px; }.service-grid article:nth-child(3n+2) { padding-left:20px; }.service-grid article span,.service-grid article b { font:500 10px "DM Mono",monospace; color:var(--rust); }.service-grid h3 { margin:37px 0 16px; font:700 27px/1.25 Manrope,sans-serif; letter-spacing:-1.5px; }.service-grid p { font-size:13px; max-width:220px; line-height:1.7; color:#596058; }.service-grid b { position:absolute; bottom:18px; color:var(--ink); }.cases { background:var(--ink); color:white; }.inverse .eyebrow { color:var(--acid); }.section-heading a { color:white; font-size:13px; text-decoration:none; border-bottom:1px solid #87918b; padding-bottom:7px; }.section-heading a span { margin-left:18px; }.case-grid { display:grid; grid-template-columns:1.7fr 1fr 1fr; gap:20px; }.case-grid article { position:relative; }.case-grid img { width:100%; height:260px; object-fit:cover; filter:saturate(.7); }.case-grid .case-featured img { height:440px; }.case-featured > div { position:absolute; bottom:0; left:0; right:0; padding:28px; background:linear-gradient(transparent,rgba(0,0,0,.75)); }.case-grid p { margin:16px 0 9px; font:500 10px "DM Mono",monospace; color:var(--acid); }.case-featured p { margin:0 0 10px; }.case-grid h3 { font:600 21px/1.3 "Noto Sans KR",sans-serif; letter-spacing:-1.2px; margin:0 0 9px; }.case-grid span { color:#afb6b1; font-size:12px; }.process { background:#f6f4ef; }.process-list { list-style:none; margin:0; padding:0; border-top:1px solid var(--ink); }.process-list li { display:grid; grid-template-columns:100px 1fr 1fr; align-items:center; padding:19px 0; border-bottom:1px solid var(--line); }.process-list b { font:500 11px "DM Mono",monospace; color:var(--rust); }.process-list strong { font-size:17px; }.process-list span { color:var(--muted); font-size:13px; }.estimate-banner { background:var(--rust); color:white; min-height:600px; padding:112px 5.5vw; position:relative; overflow:hidden; }.estimate-banner .eyebrow { color:var(--acid); }.estimate-banner h2 { font:700 clamp(39px,5vw,72px)/1.18 "Noto Sans KR",sans-serif; letter-spacing:-4px; margin-bottom:25px; }.estimate-banner > p:not(.eyebrow) { line-height:1.8; font-size:15px; }.light { background:var(--acid); color:var(--ink); margin-top:18px; }.banner-mark { position:absolute; right:-3vw; bottom:-14vw; font:800 38vw Manrope,sans-serif; color:rgba(255,255,255,.1); }.insight { background:#e3e0d6; }.insight-row { display:flex; justify-content:space-between; align-items:end; }.insight-row a { color:var(--ink); font-size:13px; font-weight:700; text-decoration:none; border-bottom:1px solid var(--ink); padding-bottom:6px; }.insight-row a span { margin-left:16px; }.article-grid { margin-top:65px; border-top:1px solid #aeb0a8; display:grid; grid-template-columns:repeat(3,1fr); }.article-grid article { padding:21px 22px 20px 0; min-height:170px; border-right:1px solid #aeb0a8; }.article-grid article+article { padding-left:22px; }.article-grid article:last-child { border:0; }.article-grid p { font:500 10px "DM Mono",monospace; color:var(--rust); }.article-grid h3 { font:600 19px/1.5 "Noto Sans KR",sans-serif; letter-spacing:-1px; } footer { padding:45px 5.5vw; background:var(--ink); color:white; display:flex; justify-content:space-between; align-items:center; } footer .brand { color:white; } footer p,footer small { margin:0; color:#b4bbb5; font-size:12px; } .modal { position:fixed; inset:0; z-index:10; display:none; place-items:center; padding:20px; background:rgba(11,20,16,.7); }.modal.open { display:grid; }.modal-shell { width:min(100%,1060px); min-height:650px; display:grid; grid-template-columns:37% 63%; position:relative; background:var(--paper); box-shadow:0 25px 70px rgba(0,0,0,.3); }.close-button { position:absolute; z-index:2; right:18px; top:12px; border:0; background:transparent; font-size:34px; color:var(--ink); }.wizard-aside { background:var(--ink); color:white; padding:38px; display:flex; flex-direction:column; }.wizard-aside .brand { color:white; }.wizard-aside .eyebrow { color:var(--acid); margin-top:100px; }.wizard-aside h2 { font:700 39px/1.25 "Noto Sans KR",sans-serif; letter-spacing:-2px; }.wizard-progress { display:flex; align-items:center; gap:8px; margin-top:auto; }.wizard-progress span { display:grid; place-items:center; width:25px; height:25px; font:500 10px "DM Mono",monospace; border:1px solid #8f9992; border-radius:50%; color:#8f9992; }.wizard-progress span.active { background:var(--acid); color:var(--ink); border-color:var(--acid); }.wizard-progress i { height:1px; width:25px; background:#536058; }.wizard-aside small { color:#99a39c; font-size:11px; line-height:1.7; margin-top:25px; }.wizard-form { padding:80px 70px 40px; position:relative; display:flex; flex-direction:column; }.wizard-step { display:none; }.wizard-step.active { display:block; }.wizard-step h2,.wizard-success h2 { font:700 34px/1.3 "Noto Sans KR",sans-serif; letter-spacing:-2px; margin-bottom:35px; }.choice-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }.choice-grid label,.check-list label { position:relative; }.choice-grid input,.check-list input { position:absolute; opacity:0; }.choice-grid span { display:block; border:1px solid var(--line); padding:20px 15px; font-size:14px; transition:.2s; }.choice-grid input:checked+span { background:var(--acid); border-color:var(--ink); }.check-list { display:grid; gap:8px; margin-bottom:24px; }.check-list span { display:block; border-bottom:1px solid var(--line); padding:11px 0 11px 29px; font-size:14px; }.check-list span:before { content:""; position:absolute; width:15px; height:15px; left:0; top:11px; border:1px solid var(--muted); }.check-list input:checked+span:before { background:var(--rust); border-color:var(--rust); box-shadow:inset 0 0 0 3px var(--paper); }.field-label { display:flex; flex-direction:column; gap:9px; font-size:12px; font-weight:700; margin-bottom:19px; }.field-label input,.field-label select,.field-label textarea { border:0; border-bottom:1px solid var(--line); background:transparent; padding:10px 0; outline:none; border-radius:0; font-size:14px; }.field-label textarea { height:85px; resize:none; }.upload-field { border:1px dashed #9da39c; padding:15px; min-height:100px; display:flex; flex-direction:column; position:relative; font-size:12px; font-weight:700; }.upload-field input { position:absolute; inset:0; opacity:0; cursor:pointer; }.upload-field span { color:var(--muted); font-size:12px; font-weight:400; margin-top:9px; }.upload-field b { position:absolute; right:14px; bottom:13px; font:500 10px "DM Mono",monospace; }.contact-fields { display:grid; grid-template-columns:1fr 1fr; gap:0 25px; }.consent { display:flex; gap:8px; font-size:11px; margin-top:10px; }.wizard-controls { display:flex; justify-content:space-between; align-items:center; margin-top:auto; padding-top:25px; }.back-button { border:0; background:none; font-size:13px; color:var(--muted); }.next-button { border:0; background:var(--ink); color:white; padding:15px 18px; font-size:13px; font-weight:700; }.next-button span { margin-left:16px; }.wizard-success { display:none; margin:auto 0; }.wizard-success p:not(.eyebrow) { color:var(--muted); line-height:1.8; font-size:14px; }.wizard-success .primary-button { margin-top:18px; }.wizard-form.success .wizard-step,.wizard-form.success .wizard-controls { display:none; }.wizard-form.success .wizard-success { display:block; }
@media (max-width:760px) { .site-header { height:67px; padding:0 20px; } nav { display:none; }.header-cta { padding:10px 12px; font-size:11px; }.hero { grid-template-columns:1fr; }.hero-copy { padding:75px 24px 42px; }.hero-visual { min-height:370px; }.hero-trust { margin-top:55px; }.section-pad { padding:76px 24px; }.intro { grid-template-columns:1fr; gap:30px; }.section-heading { grid-template-columns:1fr auto; margin-bottom:38px; }.section-heading h2 { grid-column:1 / 3; }.service-grid { grid-template-columns:1fr 1fr; }.service-grid article { min-height:205px; }.service-grid article:nth-child(3n) { border-right:1px solid #abb0a8; padding-left:0; }.service-grid article:nth-child(even) { border-right:0; padding-left:16px; }.service-grid article:nth-child(odd) { padding-right:16px; }.service-grid h3 { font-size:20px; }.case-grid { grid-template-columns:1fr; }.case-grid .case-featured img { height:350px; }.case-grid img { height:220px; }.process-list li { grid-template-columns:50px 1fr; gap:6px; }.process-list span { grid-column:2; }.estimate-banner { padding:80px 24px; min-height:500px; }.insight-row { display:block; }.insight-row a { display:inline-block; margin-top:25px; }.article-grid { grid-template-columns:1fr; margin-top:42px; }.article-grid article,.article-grid article+article { padding:18px 0; border-right:0; border-bottom:1px solid #aeb0a8; min-height:auto; } footer { padding:35px 24px; display:grid; gap:15px; }.modal { padding:0; }.modal-shell { width:100%; height:100%; min-height:100%; grid-template-columns:1fr; overflow:auto; }.wizard-aside { min-height:185px; padding:25px; }.wizard-aside .eyebrow,.wizard-aside h2,.wizard-aside small { display:none; }.wizard-progress { margin-top:auto; }.wizard-form { padding:55px 25px 25px; min-height:calc(100vh - 185px); }.wizard-step h2,.wizard-success h2 { font-size:28px; }.choice-grid { grid-template-columns:1fr; }.contact-fields { grid-template-columns:1fr; }.close-button { color:white; }.banner-mark { bottom:-3vw; font-size:50vw; } }

.company-network { display:grid; grid-template-columns:1fr 2fr; gap:8vw; padding:82px 5.5vw; background:#fffdf8; border-bottom:1px solid var(--line); }
.company-network h2 { margin:0; font:700 clamp(29px,3vw,43px)/1.25 "Noto Sans KR",sans-serif; letter-spacing:-2.5px; }
.network-groups { border-top:1px solid var(--ink); }
.network-row { display:grid; grid-template-columns:112px 1fr; align-items:center; min-height:104px; border-bottom:1px solid var(--line); }
.network-row > p { margin:0; font:500 10px "DM Mono",monospace; color:var(--rust); letter-spacing:.6px; }
.wordmarks { display:flex; align-items:center; flex-wrap:wrap; gap:clamp(28px,5vw,70px); }
.wordmarks strong { white-space:nowrap; color:#26372f; }
.samsung { font:800 24px/1 Manrope,sans-serif; letter-spacing:1.5px; }
.lg { font:800 26px/1 Manrope,sans-serif; letter-spacing:-2px; }
.lg span { font-size:17px; margin-left:4px; letter-spacing:-1.3px; }
.hl { font:800 21px/1 Manrope,sans-serif; letter-spacing:.7px; }
.doosan { font:800 23px/1 Manrope,sans-serif; letter-spacing:1.2px; }
@media (max-width:760px) { .company-network { grid-template-columns:1fr; gap:36px; padding:63px 24px; } .network-row { grid-template-columns:1fr; gap:19px; padding:22px 0; } .wordmarks { gap:27px; } .samsung { font-size:20px; } .lg { font-size:23px; } .hl { font-size:18px; } .doosan { font-size:20px; } }

/* ---------- HERO : 50만원 시작 비용 강조 ---------- */
.hero-price { margin-top:36px; padding:22px 26px; max-width:530px; background:#fffdf8; border:1px solid var(--line); border-left:6px solid var(--acid); }
.hero-price-tag { display:block; font:500 10px "DM Mono",monospace; letter-spacing:.8px; color:var(--rust); }
.hero-price strong { display:block; margin:8px 0 12px; font:800 clamp(42px,4.6vw,60px)/1 Manrope,sans-serif; letter-spacing:-3px; }
.hero-price strong em { margin-left:8px; font:700 23px/1 "Noto Sans KR",sans-serif; font-style:normal; letter-spacing:-1px; color:var(--rust); }
.hero-price p { margin:0 0 15px; font-size:13px; line-height:1.85; color:#4d574f; }
.hero-price p b { color:var(--ink); }

/* ---------- PRICING : 기획 · 컨설팅 50만원 ---------- */
.pricing { background:#fffdf8; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.pricing-lead { max-width:780px; margin:0 0 62px; font-size:16px; line-height:2; color:#535b54; }
.pricing-lead b { color:var(--ink); }
.pricing-lead strong { color:var(--rust); }
.pricing-grid { display:grid; grid-template-columns:1.08fr 1fr; gap:24px; }
.pricing-card { display:flex; flex-direction:column; padding:34px 32px 30px; background:var(--paper); border:1px solid var(--line); }
.pricing-card.featured { background:var(--ink); border-color:var(--ink); color:white; }
.pricing-card.featured .eyebrow { color:var(--acid); }
.pricing-card h3 { margin:0 0 20px; font:700 clamp(24px,2.4vw,32px)/1.25 "Noto Sans KR",sans-serif; letter-spacing:-1.8px; }
.pricing-card .price { display:flex; align-items:baseline; gap:11px; margin:0 0 26px; padding-bottom:22px; border-bottom:1px solid var(--line); }
.pricing-card.featured .price { border-bottom-color:#3d4c45; }
.pricing-card .price b { font:800 clamp(42px,4.8vw,64px)/1 Manrope,sans-serif; letter-spacing:-3px; color:var(--rust); }
.pricing-card.featured .price b { color:var(--acid); }
.pricing-card .price span { font:500 11px "DM Mono",monospace; color:var(--muted); }
.pricing-card.featured .price span { color:#9aa49d; }
.pricing-card ul { list-style:none; margin:0 0 30px; padding:0; display:grid; gap:11px; }
.pricing-card li { position:relative; padding-left:23px; font-size:14px; line-height:1.6; color:#4d574f; }
.pricing-card.featured li { color:#c8cfca; }
.pricing-card li:before { content:"✳"; position:absolute; left:0; top:2px; font-size:11px; color:var(--rust); }
.pricing-card.featured li:before { color:var(--acid); }
.pricing-card .primary-button,.pricing-card .text-button { align-self:flex-start; margin-top:auto; }
.pricing-card.featured .primary-button { background:var(--acid); color:var(--ink); }
.pricing-card small { display:block; margin-top:19px; font-size:11px; line-height:1.75; color:var(--muted); }
.pricing-card.featured small { color:#8d9790; }
.pricing-note { display:grid; grid-template-columns:repeat(3,1fr); margin-top:24px; border:1px solid var(--line); }
.pricing-note div { padding:25px 26px; border-right:1px solid var(--line); }
.pricing-note div:last-child { border-right:0; }
.pricing-note b { display:block; font:800 27px/1 Manrope,sans-serif; letter-spacing:-1.5px; }
.pricing-note span { display:block; margin-top:10px; font-size:12px; color:var(--muted); }
.estimate-banner b { color:var(--acid); }

/* ---------- PROOF : 문제에서 결과로 이어지는 설명 ---------- */
.proof { background:#fffdf8; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.proof .section-heading { margin-bottom:58px; }
.proof-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--ink); }
.proof-grid article { min-height:290px; padding:25px 30px 28px 0; border-right:1px solid var(--line); }
.proof-grid article + article { padding-left:28px; }
.proof-grid article:last-child { border-right:0; }
.proof-index { margin:0 0 38px; font:500 10px "DM Mono",monospace; letter-spacing:.7px; color:var(--rust); }
.proof-grid h3 { margin:0 0 18px; font:700 clamp(21px,2.2vw,29px)/1.35 "Noto Sans KR",sans-serif; letter-spacing:-1.5px; }
.proof-grid article > p:last-child { max-width:310px; margin:0; font-size:13px; line-height:1.9; color:#596058; }
.proof-outcome { background:var(--ink); color:white; padding-right:25px !important; }
.proof-outcome .proof-index { color:var(--acid); }
.proof-outcome ul { list-style:none; margin:0; padding:0; display:grid; gap:13px; }
.proof-outcome li { position:relative; padding-left:20px; font-size:13px; line-height:1.6; color:#d2d8d3; }
.proof-outcome li:before { content:""; position:absolute; left:0; top:.65em; width:7px; height:1px; background:var(--acid); }
@media (max-width:760px) {
	.proof .section-heading { margin-bottom:38px; }
	.proof-grid { grid-template-columns:1fr; }
	.proof-grid article,.proof-grid article + article { min-height:0; padding:22px 0 26px; border-right:0; border-bottom:1px solid var(--line); }
	.proof-grid article:last-child { border-bottom:0; padding-bottom:4px; }
	.proof-index { margin-bottom:22px; }
	.proof-grid h3 { font-size:22px; }
	.proof-outcome { padding:25px 20px !important; margin-top:0; }
}

/* ---------- BOARD : 프로젝트 진행 현황 게시판 ---------- */
.board { background:#f6f4ef; border-top:1px solid var(--line); }
.board-lead { max-width:820px; margin:0 0 58px; font-size:15px; line-height:2; color:#535b54; }
.board-lead b { color:var(--ink); }
.board-lead strong { color:var(--rust); }
.board-gate[hidden],.board-result[hidden],.board-hint[hidden],.board-error[hidden],.board-loading[hidden],.wizard-error[hidden] { display:none; }

/* 9단계 파이프라인 (공개) */
.stage-pipeline { list-style:none; margin:0 0 68px; padding:0; display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--ink); }
.stage-pipeline li { position:relative; padding:21px 30px 23px 0; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.stage-pipeline li:nth-child(3n) { border-right:0; }
.stage-pipeline li:nth-child(3n+2),.stage-pipeline li:nth-child(3n) { padding-left:22px; }
.stage-pipeline b { font:500 11px "DM Mono",monospace; color:var(--rust); }
.stage-pipeline strong { display:block; margin:12px 0 4px; font-size:17px; letter-spacing:-.8px; }
.stage-pipeline i { display:block; font:500 9px "DM Mono",monospace; font-style:normal; letter-spacing:.7px; color:var(--muted); }
.stage-pipeline span { display:block; margin-top:11px; max-width:340px; font-size:12.5px; line-height:1.7; color:#596058; }
.stage-pipeline li:after { content:"→"; position:absolute; right:11px; top:19px; font-size:14px; color:#a9afa6; }
.stage-pipeline li:nth-child(3n):after,.stage-pipeline li:last-child:after { content:""; }

/* 게시판 프레임 : 로그인 게이트 */
.board-shell { border:1px solid var(--ink); background:#fffdf8; }
.board-gate { display:grid; grid-template-columns:1fr 1fr; gap:0 62px; padding:52px 48px; }
.board-gate h3 { margin:0 0 18px; font:700 clamp(27px,3vw,40px)/1.25 "Noto Sans KR",sans-serif; letter-spacing:-2.2px; }
.board-gate-desc { margin:0; font-size:13px; line-height:1.95; color:var(--muted); }
.board-form { display:flex; flex-direction:column; }
.board-form .field-label { margin-bottom:22px; }
.board-form .field-label input { border-bottom-color:#b9bdb4; }
.board-form .primary-button { align-self:flex-start; margin-top:8px; }
.board-error { margin:15px 0 0; padding:11px 14px; background:#fbe6de; border-left:3px solid var(--rust); color:#9d3418; font-size:12.5px; line-height:1.6; }
.board-loading { margin:15px 0 0; font:500 11px "DM Mono",monospace; color:var(--muted); }
.board-hint { display:flex; align-items:flex-start; gap:12px; margin-top:26px; padding-top:22px; border-top:1px dashed var(--line); }
.board-hint span { flex:none; padding:3px 7px; background:var(--acid); font:500 9px "DM Mono",monospace; letter-spacing:.6px; }
.board-hint p { margin:0; font-size:11.5px; line-height:1.8; color:var(--muted); }
.board-hint b { color:var(--ink); font-family:"DM Mono",monospace; }
.board-mode { display:block; margin-top:22px; font-size:11px; line-height:1.7; color:var(--muted); }
.board-mode.is-local { color:#9d3418; }
/* 게시판 목록 (인증 후) */
.board-result { padding:44px 48px 40px; }
.board-result-head { display:flex; justify-content:space-between; align-items:flex-end; gap:20px; margin-bottom:28px; }
.board-result-head .eyebrow { margin-bottom:12px; }
.board-result-head h3 { margin:0; font:700 clamp(24px,2.6vw,34px)/1.25 "Noto Sans KR",sans-serif; letter-spacing:-2px; }
.board-result-head em { margin-left:9px; font:500 12px "DM Mono",monospace; font-style:normal; color:var(--rust); }
.board-table { border-top:1px solid var(--ink); }
.board-row { display:grid; grid-template-columns:118px minmax(0,1fr) 190px 145px 112px 108px; align-items:center; gap:14px; width:100%; padding:18px 8px 18px 0; border:0; border-bottom:1px solid var(--line); background:transparent; text-align:left; font:inherit; color:inherit; }
.board-row.board-head { padding:12px 8px 12px 0; border-bottom:1px solid var(--ink); }
.board-row.board-head span { font:500 10px "DM Mono",monospace; letter-spacing:.6px; color:var(--muted); }
.board-row:not(.board-head) { cursor:pointer; transition:background .18s; }
.board-row:not(.board-head):hover { background:#efece3; }
.cell-no { font:500 11px "DM Mono",monospace; color:var(--rust); }
.cell-title b { display:block; font-size:15px; font-weight:700; letter-spacing:-.6px; }
.cell-title small { display:block; margin-top:4px; font-size:11px; color:var(--muted); }
.cell-stage { display:flex; flex-direction:column; gap:6px; font-size:14px; font-weight:700; }
.cell-stage em { font:500 9px "DM Mono",monospace; font-style:normal; letter-spacing:.6px; color:var(--muted); }
.cell-stage .bar { display:block; height:3px; background:#dcd8ce; }
.cell-stage .bar u { display:block; height:3px; background:var(--rust); text-decoration:none; }
.cell-team { font-size:12.5px; color:#535b54; }
.cell-date { font:500 11px "DM Mono",monospace; color:var(--muted); }
.cell-more { font-size:12px; font-weight:700; text-align:right; }
.cell-more b { margin-left:8px; }
.board-empty { margin:0; padding:34px 0; font-size:13px; color:var(--muted); }

/* ---------- BOARD 상세 모달 ---------- */
.modal-shell.board-shell { width:min(100%,1160px); min-height:680px; max-height:min(90vh,920px); grid-template-columns:32% 68%; }
.board-aside { background:var(--ink); color:white; padding:38px; display:flex; flex-direction:column; overflow:auto; }
.board-aside .brand { color:white; }
.board-aside .eyebrow { color:var(--acid); margin-top:86px; }
.board-aside h2 { margin:0 0 26px; font:700 34px/1.25 "Noto Sans KR",sans-serif; letter-spacing:-2px; }
.board-aside-steps { list-style:none; margin:0; padding:0; display:grid; gap:8px; counter-reset:asideStep; }
.board-aside-steps li { position:relative; padding-left:30px; font-size:12px; line-height:1.6; color:#98a29b; counter-increment:asideStep; }
.board-aside-steps li:before { content:counter(asideStep,decimal-leading-zero); position:absolute; left:0; top:1px; font:500 9px "DM Mono",monospace; color:#5f6d65; }
.board-aside small { margin-top:auto; padding-top:26px; font-size:11px; line-height:1.75; color:#99a39c; }
.board-detail { padding:56px 56px 44px; overflow:auto; }
.detail-head { padding-bottom:24px; border-bottom:1px solid var(--ink); }
.detail-head h3 { margin:0 0 16px; font:700 28px/1.3 "Noto Sans KR",sans-serif; letter-spacing:-1.6px; }
.detail-badges { display:flex; flex-wrap:wrap; gap:8px; }
.detail-badges span { padding:6px 11px; font:500 10px "DM Mono",monospace; letter-spacing:.5px; border:1px solid var(--line); color:var(--muted); }
.detail-badges .badge-stage { background:var(--acid); border-color:var(--ink); color:var(--ink); }
.detail-info { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; margin:24px 0; background:var(--line); border:1px solid var(--line); }
.detail-info div { padding:15px 16px; background:#fffdf8; }
.detail-info span { display:block; font:500 9px "DM Mono",monospace; letter-spacing:.6px; color:var(--muted); }
.detail-info b { display:block; margin-top:7px; font-size:13px; font-weight:700; word-break:break-all; }
.detail-assets,.detail-desc,.detail-files { margin-bottom:20px; }
.detail-assets>span,.detail-desc>span,.detail-files>span { display:block; margin-bottom:10px; font:500 10px "DM Mono",monospace; letter-spacing:.6px; color:var(--rust); }
.detail-assets ul,.detail-files ul { list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:7px; }
.detail-assets li,.detail-files li { padding:6px 11px; border:1px solid var(--line); font-size:12px; }
.detail-desc p { margin:0; font-size:13.5px; line-height:1.9; color:#4d574f; white-space:pre-line; }
/* 상세 : 9단계 타임라인 */
.detail-timeline-head { margin-top:34px; padding-top:26px; border-top:1px solid var(--ink); }
.detail-timeline-head h4 { margin:0; font:700 20px/1.3 "Noto Sans KR",sans-serif; letter-spacing:-1.2px; }
.detail-timeline { list-style:none; margin:26px 0 0; padding:0; }
.detail-timeline>li { position:relative; margin-left:6px; padding:0 0 26px 34px; border-left:1px solid var(--line); }
.detail-timeline>li:last-child { padding-bottom:0; border-left-color:transparent; }
.detail-timeline .dot { position:absolute; left:-6px; top:3px; width:11px; height:11px; border:1px solid #a9afa6; border-radius:50%; background:#fffdf8; }
.stage-done .dot { background:var(--ink); border-color:var(--ink); }
.stage-current .dot { background:var(--rust); border-color:var(--rust); box-shadow:0 0 0 4px #fbe6de; }
.stage-head { display:flex; align-items:center; flex-wrap:wrap; gap:9px; }
.stage-head b { font:500 10px "DM Mono",monospace; color:var(--rust); }
.stage-head strong { font-size:16px; letter-spacing:-.7px; }
.stage-head i { font:500 9px "DM Mono",monospace; font-style:normal; letter-spacing:.6px; color:var(--muted); }
.stage-head .now { padding:3px 8px; background:var(--rust); color:white; font:500 9px "DM Mono",monospace; font-style:normal; letter-spacing:.5px; }
.stage-desc { margin:7px 0 0; font-size:12.5px; line-height:1.75; color:#596058; }
.stage-pending .stage-head strong,.stage-pending .stage-desc { color:#9aa098; }
.stage-pending .stage-head b { color:#b6bab2; }
.stage-logs { list-style:none; margin:13px 0 0; padding:0; display:grid; gap:9px; }
.stage-logs li { padding:11px 14px; background:#fffdf8; border:1px solid var(--line); }
.stage-logs time { font:500 9px "DM Mono",monospace; color:var(--muted); }
.stage-logs p { margin:6px 0 5px; font-size:13px; line-height:1.7; }
.stage-logs small { font-size:10px; color:var(--muted); }
.stage-logs .log-status { border-left:3px solid var(--ink); }
.stage-logs .log-note { border-left:3px solid var(--acid); }
.detail-foot { margin-top:28px; padding-top:20px; border-top:1px solid var(--line); }
.detail-foot small { font-size:11px; line-height:1.75; color:var(--muted); }
.board-denied { padding:40px 0; }
.board-denied h3 { margin:0 0 12px; font:700 24px/1.35 "Noto Sans KR",sans-serif; letter-spacing:-1.4px; }
.board-denied p { margin:0; font-size:13px; color:var(--muted); }
.board-loading-text { margin:0; font:500 12px "DM Mono",monospace; color:var(--muted); }

/* ---------- WIZARD : 게시판 비밀번호 / 접수번호 ---------- */
.password-hint { margin:6px 0 0; padding:12px 14px; background:#fffdf8; border-left:3px solid var(--acid); font-size:11.5px; line-height:1.75; color:var(--muted); }
.password-hint b { color:var(--ink); }
.wizard-error { margin:16px 0 0; padding:11px 14px; background:#fbe6de; border-left:3px solid var(--rust); color:#9d3418; font-size:12.5px; line-height:1.6; }
.wizard-form.success .wizard-error { display:none; }
.submitted-id { font-family:"DM Mono",monospace; color:var(--rust); }
.submitted-guide { margin-top:16px; padding-top:16px; border-top:1px solid var(--line); }
.wizard-success-actions { display:flex; align-items:center; flex-wrap:wrap; gap:18px; margin-top:22px; }
.wizard-success-actions .primary-button { margin-top:0; }
.next-button:disabled { opacity:.55; cursor:default; }
/* ---------- 신규 섹션 반응형 ---------- */
@media (max-width:1080px) { .stage-pipeline { grid-template-columns:1fr 1fr; } .stage-pipeline li:nth-child(3n) { border-right:1px solid var(--line); } .stage-pipeline li:nth-child(2n) { border-right:0; } .stage-pipeline li:nth-child(3n+2),.stage-pipeline li:nth-child(3n) { padding-left:0; } .stage-pipeline li:nth-child(2n) { padding-left:22px; } .stage-pipeline li:after { content:""; } .board-row { grid-template-columns:110px minmax(0,1fr) 170px 110px; } .cell-team,.cell-more { display:none; } .detail-info { grid-template-columns:repeat(2,1fr); } }
@media (max-width:760px) {
.hero-price { max-width:none; margin-top:30px; padding:18px 20px; }
.hero-price strong { font-size:40px; }
.hero-price strong em { font-size:19px; }
.pricing-lead { margin-bottom:42px; font-size:14.5px; }
.pricing-grid { grid-template-columns:1fr; gap:18px; }
.pricing-card { padding:27px 22px 24px; }
.pricing-card .price b { font-size:44px; }
.pricing-note { grid-template-columns:1fr; margin-top:18px; }
.pricing-note div { padding:19px 20px; border-right:0; border-bottom:1px solid var(--line); }
.pricing-note div:last-child { border-bottom:0; }
.pricing-note b { font-size:23px; }
.board-lead { margin-bottom:38px; font-size:13.5px; }
.stage-pipeline { grid-template-columns:1fr; }
.stage-pipeline li,.stage-pipeline li:nth-child(3n+2),.stage-pipeline li:nth-child(3n),.stage-pipeline li:nth-child(2n) { padding:18px 26px 18px 0; border-right:0; }
.stage-pipeline li:after { content:"→"; right:6px; top:18px; }
.stage-pipeline li:last-child:after { content:""; }
.stage-pipeline strong { font-size:16px; }
.board-shell { border-left:0; border-right:0; }
.board-gate { grid-template-columns:1fr; gap:32px; padding:34px 24px; }
.board-gate h3 { font-size:26px; }
.board-result { padding:32px 24px 28px; }
.board-result-head { display:block; }
.board-result-head h3 { font-size:23px; }
#board-logout { margin-top:18px; }
.board-row,.board-row.board-head { grid-template-columns:1fr; gap:9px; padding:20px 0; }
.board-row.board-head { display:none; }
.cell-stage { max-width:270px; }
.cell-more { display:block; text-align:left; }
.cell-no { font-size:10px; }
.modal-shell.board-shell { width:100%; height:100%; min-height:100%; max-height:none; grid-template-columns:1fr; overflow:auto; }
.board-aside { min-height:172px; padding:25px; }
.board-aside .eyebrow,.board-aside h2,.board-aside small { display:none; }
.board-aside-steps { display:flex; flex-wrap:wrap; gap:6px 13px; margin-top:auto; }
.board-aside-steps li { padding-left:0; font-size:10px; }
.board-aside-steps li:before { display:none; }
.board-detail { padding:32px 24px 28px; overflow:visible; }
.detail-head h3 { font-size:23px; }
.detail-info { grid-template-columns:1fr 1fr; margin:20px 0; }
.detail-timeline>li { padding-left:26px; }
.wizard-success-actions { gap:14px; }
}
/* ---------- ADMIN : 진행 현황 관리자 ---------- */
.admin-body { background:#f6f4ef; }
.admin-main { padding:70px 5.5vw 90px; }
.admin-login,.admin-panel { margin:0 auto; }
.admin-panel { max-width:1240px; }
.admin-login { max-width:640px; padding:48px 44px; background:#fffdf8; border:1px solid var(--ink); }
.admin-login h1 { margin:0 0 20px; font:800 clamp(32px,4vw,46px)/1.15 "Noto Sans KR",sans-serif; letter-spacing:-2.6px; }
.admin-desc { margin:0 0 30px; font-size:13px; line-height:2; color:var(--muted); }
.admin-login form { display:flex; flex-direction:column; }
.admin-login .field-label { margin-bottom:24px; }
.admin-login .primary-button { align-self:flex-start; }
.admin-login .board-mode { margin-top:20px; }
.admin-login .board-mode b { font-family:"DM Mono",monospace; color:var(--ink); }
.admin-login[hidden],.admin-panel[hidden] { display:none; }
.admin-head { display:flex; justify-content:space-between; align-items:flex-end; gap:20px; margin-bottom:30px; }
.admin-head .eyebrow { margin-bottom:12px; }
.admin-head h2 { margin:0; font:700 clamp(26px,3vw,38px)/1.2 "Noto Sans KR",sans-serif; letter-spacing:-2.2px; }
.admin-head em { margin-left:9px; font:500 12px "DM Mono",monospace; font-style:normal; color:var(--rust); }
.admin-layout { display:grid; grid-template-columns:minmax(300px,380px) minmax(0,1fr); gap:24px; align-items:start; }
.admin-list { max-height:74vh; overflow:auto; border:1px solid var(--ink); background:#fffdf8; }
.admin-item { display:grid; grid-template-columns:1fr auto; gap:4px 12px; width:100%; padding:17px 18px; border:0; border-bottom:1px solid var(--line); background:transparent; text-align:left; font:inherit; color:inherit; cursor:pointer; transition:background .18s; }
.admin-item:hover { background:#efece3; }
.admin-item.selected { background:var(--acid); }
.admin-item-no { grid-column:1; font:500 10px "DM Mono",monospace; color:var(--rust); }
.admin-item-date { grid-column:2; grid-row:1; font:500 10px "DM Mono",monospace; color:var(--muted); }
.admin-item-title { grid-column:1; }
.admin-item-title b { display:block; font-size:14px; font-weight:700; letter-spacing:-.5px; }
.admin-item-title small { display:block; margin-top:4px; font-size:11px; color:var(--muted); }
.admin-item-stage { grid-column:1 / 3; margin-top:8px; font-size:12px; font-weight:700; }
.admin-item-stage em { margin-right:7px; font:500 9px "DM Mono",monospace; font-style:normal; color:var(--muted); }
.admin-editor { padding:34px 34px 30px; border:1px solid var(--ink); background:#fffdf8; }
.admin-empty { margin:0; padding:26px 0; font-size:13px; line-height:1.9; color:var(--muted); }
.admin-editor-head { padding-bottom:22px; border-bottom:1px solid var(--ink); }
.admin-editor-head h3 { margin:0 0 10px; font:700 26px/1.3 "Noto Sans KR",sans-serif; letter-spacing:-1.5px; }
.admin-editor-sub { margin:0; font-size:12px; color:var(--muted); }
.admin-fields { display:grid; grid-template-columns:1fr 1fr; gap:0 26px; margin:26px 0 6px; }
.admin-fields .field-label:nth-child(n+3) { grid-column:1 / 3; }
.admin-fields textarea { height:96px; resize:vertical; }
.admin-brief { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin:20px 0; background:var(--line); border:1px solid var(--line); }
.admin-brief div { padding:14px 15px; background:#fffdf8; }
.admin-brief span { display:block; font:500 9px "DM Mono",monospace; letter-spacing:.6px; color:var(--muted); }
.admin-brief b { display:block; margin-top:6px; font-size:12.5px; font-weight:700; word-break:break-all; }
.admin-desc { margin-bottom:20px; }
.admin-desc span { display:block; margin-bottom:9px; font:500 10px "DM Mono",monospace; letter-spacing:.6px; color:var(--rust); }
.admin-desc p { margin:0; font-size:13px; line-height:1.9; color:#4d574f; white-space:pre-line; }
.admin-actions { margin-top:6px; }
#admin-message { margin:18px 0 0; }
#admin-message:not(.is-error) { background:#eef7d8; border-left-color:var(--ink); color:#2c3a25; }
.admin-password { margin-top:32px; padding-top:26px; border-top:1px solid var(--line); }
.admin-password form { display:flex; align-items:flex-end; gap:18px; }
.admin-password .field-label { flex:1; margin-bottom:0; }
.admin-password small { display:block; margin-top:14px; font-size:11px; line-height:1.7; color:var(--muted); }
.admin-timeline { margin-top:32px; padding-top:26px; border-top:1px solid var(--line); }
.admin-timeline ul { list-style:none; margin:18px 0 0; padding:0; display:grid; gap:9px; }
.admin-timeline li { padding:11px 14px; border:1px solid var(--line); border-left:3px solid var(--ink); }
.admin-timeline li.log-note { border-left-color:var(--acid); }
.admin-timeline time { font:500 9px "DM Mono",monospace; color:var(--muted); }
.admin-timeline b { margin-left:9px; font-size:11px; color:var(--rust); }
.admin-timeline p { margin:6px 0 0; font-size:12.5px; line-height:1.7; }
@media (max-width:1080px) { .admin-layout { grid-template-columns:1fr; } .admin-list { max-height:340px; } }
@media (max-width:760px) { .admin-main { padding:46px 24px 70px; } .admin-login { padding:32px 24px; } .admin-editor { padding:26px 22px 24px; } .admin-fields { grid-template-columns:1fr; } .admin-fields .field-label:nth-child(n+3) { grid-column:auto; } .admin-brief { grid-template-columns:1fr 1fr; } .admin-password form { flex-direction:column; align-items:stretch; gap:14px; } }

/* ---------- HERO / CASES : reference-inspired editorial layout ---------- */
.hero { min-height:min(760px, calc(100vh - 80px)); border-bottom:1px solid var(--line); }
.hero-copy { display:flex; flex-direction:column; justify-content:center; padding-top:clamp(70px, 8vw, 128px); padding-bottom:clamp(60px, 7vw, 100px); }
.hero-copy h1 { max-width:720px; margin-bottom:24px; font-size:clamp(56px, 6vw, 94px); line-height:1.02; letter-spacing:-5px; }
.hero-description { max-width:470px; }
.hero-price { display:grid; grid-template-columns:120px 1fr; gap:0 22px; max-width:570px; margin-top:40px; padding:20px 0 18px; background:transparent; border:0; border-top:1px solid var(--ink); border-bottom:1px solid var(--line); }
.hero-price-tag { grid-row:1 / span 2; padding-top:5px; }
.hero-price strong { margin:0 0 8px; font-size:52px; }
.hero-price p { margin-bottom:12px; }
.hero-price .text-button { grid-column:2; justify-self:start; }
.hero-visual img { filter:saturate(.55) contrast(1.05); }
.case-grid { display:flex; gap:20px; margin-right:-5.5vw; padding:0 5.5vw 20px 0; overflow-x:auto; overscroll-behavior-inline:contain; scroll-snap-type:x mandatory; scrollbar-color:var(--rust) transparent; scrollbar-width:thin; }
.case-grid:focus-visible { outline:2px solid var(--acid); outline-offset:8px; }
.case-scroll-note { align-self:end; padding-bottom:5px; font:500 10px "DM Mono",monospace; letter-spacing:.7px; color:#aeb7b0; white-space:nowrap; }
.case-grid article,.case-grid .case-featured { flex:0 0 min(39vw, 520px); min-width:0; scroll-snap-align:start; }
.case-grid article img,.case-grid .case-featured img { width:100%; height:clamp(260px, 29vw, 390px); object-fit:cover; display:block; filter:saturate(.65); transition:filter .25s, transform .25s; }
.case-grid article:hover img { filter:saturate(1); transform:scale(1.015); }
.case-grid article > p,.case-grid .case-featured p { margin:20px 0 10px; font:500 10px "DM Mono",monospace; letter-spacing:.7px; color:var(--rust); }
.case-grid article h3,.case-grid .case-featured h3 { margin:0 0 12px; font:700 clamp(22px,2.4vw,32px)/1.25 "Noto Sans KR",sans-serif; letter-spacing:-1.7px; }
.case-grid article > span,.case-grid .case-featured span { font-size:12px; color:#adb5ae; }
.case-grid .case-featured > div { padding:0; }
@media (max-width:760px) {
	.hero { min-height:0; }
	.hero-copy { padding-top:68px; padding-bottom:48px; }
	.hero-copy h1 { font-size:clamp(48px, 14vw, 66px); letter-spacing:-4px; }
	.hero-price { grid-template-columns:96px 1fr; gap:0 14px; margin-top:30px; }
	.hero-price strong { font-size:42px; }
	.hero-visual img { filter:saturate(.65); }
	.case-grid { gap:14px; margin-right:-24px; padding-right:24px; }
	.case-scroll-note { grid-column:1 / 3; justify-self:start; margin-top:-12px; }
	.case-grid article,.case-grid .case-featured { flex-basis:82vw; }
	.case-grid article img,.case-grid .case-featured img { height:58vw; min-height:220px; max-height:300px; }
	.case-grid article h3,.case-grid .case-featured h3 { font-size:24px; }
}

/* ---------- HERO : text-first service introduction ---------- */
.hero { display:block; min-height:0; background:#fffdf8; }
.hero-copy { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr); align-content:center; column-gap:8vw; max-width:none; min-height:560px; padding-top:76px; padding-bottom:76px; padding-left:9vw; padding-right:9vw; }
.hero-copy .eyebrow { grid-column:1 / -1; }
.hero-copy h1 { grid-column:1; max-width:900px; margin-bottom:0; font-size:clamp(62px,8vw,124px); line-height:1.03; letter-spacing:-7px; }
.hero-description { grid-column:2; align-self:end; max-width:560px; margin:0 0 10px; padding-left:28px; border-left:1px solid var(--line); }
.hero-price { max-width:640px; }
@media (max-width:760px) {
	.hero { min-height:0; }
	.hero-copy { display:block; min-height:0; padding-left:24px; padding-right:24px; }
	.hero-copy h1 { font-size:clamp(50px,14vw,70px); letter-spacing:-4px; }
	.hero-description { margin-top:30px; padding:0; border-left:0; }
}

/* ---------- COLOR SYSTEM : Shenzhen SL Tech palette ---------- */
body { background:#fbfbfa; color:#0b0d0e; }
.site-header,.hero,.ticker,.services,.process,.insight { background:#fbfbfa; }
.company-network,.pricing,.proof,.board { background:#fff; }
.cases,.estimate-banner,footer { background:#0b0d0e; color:#fff; }
.hero-description,.pricing-lead,.board-lead,.proof-grid article > p:last-child,.stage-pipeline span { color:#394345; }
.pricing-card,.board-shell,.detail-info div,.stage-logs li { background:#fff; }
.pricing-card.featured,.proof-outcome,.board-aside { background:#0b0d0e; }
.pricing-card.featured .primary-button { background:#0f5cd6; color:#fff; }
.primary-button:hover,.header-cta:hover { background:#0f5cd6; }
.case-grid article > span,.case-grid .case-featured span { color:#8b9497; }
.cases .section-heading h2,.cases .section-heading .eyebrow,.cases .case-scroll-note { color:#fff; }
.cases .section-heading .eyebrow { color:#0f5cd6; }
.cases .case-grid article > p,.cases .case-grid .case-featured p { color:#0f5cd6; }
.cases .case-grid article h3,.cases .case-grid .case-featured h3 { color:#fff; }
.cases .case-grid article > span,.cases .case-grid .case-featured span { color:#8b9497; }
.estimate-banner .eyebrow,.estimate-banner h2,.estimate-banner p { color:#fff; }
.estimate-banner .primary-button.light { color:#fff; background:#0f5cd6; }
.estimate-banner .banner-mark { color:#0f5cd6; }
.board-error,.wizard-error { background:#e8f0fb; border-left-color:#0f5cd6; color:#0b0d0e; }
.board-hint { border-top-color:#e1e5e5; }
.board-hint span,.detail-badges .badge-stage { background:#0f5cd6; color:#fff; }
.admin-login,.admin-editor { background:#fff; }
#admin-message:not(.is-error) { background:#e8f0fb; border-left-color:#0f5cd6; color:#0b0d0e; }
.language-toggle { display:inline-flex; align-items:center; gap:7px; border:1px solid var(--line); background:transparent; color:var(--ink); padding:9px 11px; font:500 10px "DM Mono",monospace; letter-spacing:.2px; white-space:nowrap; }
.language-flag { font-size:15px; line-height:1; }
.language-toggle:hover { border-color:var(--rust); color:var(--rust); }
@media (max-width:760px) { .language-toggle { margin-left:auto; margin-right:8px; padding:8px 9px; font-size:9px; } }






