/* ============================================================
   랜딩(홈) 페이지 스타일 — 원본 인라인 <style> 이식(설계 명세 §3.2)
   원본 broccoli-landing.dc.html line 16–182 에서 캔버스 래퍼(.dv-*) 규칙만
   제외하고 전부 이식했다. 추가분:
   - .pg 유동폭(max-width:1240px;width:100%) + margin:0 auto 중앙정렬 (§3.2·§10.2)
   - 정적 폰 프레임(.phone*, §3.6) — 원본 IOSDevice x-import 대체
   - 정적 pill 버튼(.pill*, §3.7) — 원본 DesignSystem Button x-import 대체
   토큰 변수(var(--...))는 design/styles.css 가 먼저 로드되어 정의한다.
   ============================================================ */

html{scroll-behavior:smooth}
body{margin:0;background:#eceae4;font-family:var(--font-sans),system-ui,sans-serif}
.pg{max-width:1240px;width:100%;margin:0 auto;background:var(--cream);font-family:var(--font-sans);color:var(--ink);letter-spacing:-0.005em;overflow:hidden}
.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 56px;background:var(--paper);border-bottom:1px solid var(--line)}
.logo{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:800;color:var(--green-brand)}
.limg{width:32px;height:32px;border-radius:8px;display:block}
.nlk{font-size:14px;font-weight:600;color:var(--ink-2);cursor:pointer;transition:all .2s ease;text-decoration:none}
.nlk:hover{color:var(--green-accent)}
/* 상단 nav → 인페이지 앵커 이동 시 섹션 상단 여백(nav 비고정) */
#why,#safety,#report,#pricing{scroll-margin-top:24px}
.sec{padding:88px 56px}
.secw{background:var(--paper)}
.ov{font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--green-accent)}
.h1{font-size:44px;font-weight:800;line-height:1.22;color:var(--green-brand);letter-spacing:-0.01em;margin:14px 0 18px}
.h2{font-size:31px;font-weight:700;line-height:1.28;color:var(--green-brand);margin:10px 0 14px}
.h2w{color:#fff}
.sub{font-size:17px;line-height:1.6;color:var(--ink-2);margin:0}
.card{background:var(--paper);border-radius:12px;box-shadow:0 0 .5px rgba(0,0,0,.14),0 1px 1px rgba(0,0,0,.14)}
.mono{font-family:var(--font-mono)}
.serif{font-family:var(--font-serif)}
.msr{font-family:'Material Symbols Rounded';font-weight:400;font-size:24px;line-height:1;font-variation-settings:'FILL' 0;user-select:none;flex:none}
.msf{font-variation-settings:'FILL' 1}
.ms16{font-size:16px}.ms18{font-size:18px}.ms20{font-size:20px}.ms13{font-size:13px}
.ico-a{color:var(--green-accent)}
.mla{margin-left:auto}
.store{display:inline-flex;align-items:center;gap:11px;background:var(--green-forest);color:#fff;border-radius:50px;padding:10px 26px 10px 20px;cursor:pointer;transition:all .2s ease}
.stn2{font-family:var(--font-mono);font-size:38px;font-weight:600;color:var(--danger);line-height:1}
.store:hover{transform:translateY(-2px);box-shadow:0 8px 16px rgba(0,0,0,.2)}
.stsm{display:block;font-size:10.5px;font-weight:500;opacity:.7;line-height:1.3}
.stlg{display:block;font-size:15px;font-weight:700;line-height:1.2}
.storew{background:var(--paper);color:var(--ink)}
.chip{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 14px;border-radius:50px;background:var(--green-tint);border:1px solid var(--line-green);font-size:12.5px;font-weight:600;color:var(--green-brand)}
.chipsm{height:26px;font-size:11px;padding:0 10px;gap:5px}
.heroA{display:grid;grid-template-columns:1.08fr .92fr;gap:40px;align-items:center;padding:64px 56px 80px}
.trust{display:flex;gap:20px;flex-wrap:wrap;font-size:12.5px;font-weight:600;color:var(--ink-3);align-items:center}
.titem{display:inline-flex;align-items:center;gap:6px}
.statsd{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;background:var(--green-forest);padding:72px 56px 56px}
.sthd{grid-column:span 3;margin-bottom:16px}
.ovr{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:700;letter-spacing:.08em;color:oklch(78% .11 25)}
.stnd{font-family:var(--font-mono);font-size:56px;font-weight:600;color:#fff;line-height:1}
.stld{font-size:15px;color:rgba(255,255,255,.72);margin-top:12px;line-height:1.6;max-width:300px}
.fnd{grid-column:span 3;font-size:11.5px;color:rgba(255,255,255,.4);margin-top:6px}
.fn{font-size:11.5px;color:var(--ink-3);margin-top:18px}
.qchip{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 18px;border-radius:50px;border:1.5px solid var(--line-strong);background:var(--paper);font-family:var(--font-sans);font-size:14px;font-weight:600;color:var(--ink-2);cursor:pointer;transition:all .2s ease}
.qchip:hover{border-color:var(--green-accent);color:var(--green-brand)}
.qchip.on{border-color:var(--green-accent);background:var(--green-tint);color:var(--green-brand)}
.cmp{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:26px}
.pane{padding:20px 20px 16px;display:flex;flex-direction:column;gap:12px;min-height:330px}
.phead{display:flex;align-items:center;gap:10px;padding-bottom:12px;border-bottom:1px solid var(--line);font-size:14px;font-weight:700}
.pdot{width:30px;height:30px;border-radius:50%;background:#3f3f44;color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex:none}
.ptag{margin-left:auto;font-size:11.5px;font-weight:700;border-radius:50px;padding:4px 10px}
.ptag-r{background:var(--danger-tint);color:var(--danger)}
.ptag-g{background:var(--green-tint);color:var(--green-brand)}
.chat{display:flex;flex-direction:column;gap:10px}
.mu{align-self:flex-end;max-width:80%;background:var(--green-accent);color:#fff;padding:10px 14px;border-radius:16px 16px 4px 16px;font-size:13.5px;line-height:1.55}
.ma{align-self:flex-start;max-width:86%;background:var(--cream);color:var(--ink);padding:10px 14px;border-radius:16px 16px 16px 4px;font-size:13.5px;line-height:1.55}
.mug{align-self:flex-end;max-width:80%;background:#45454b;color:#fff;padding:10px 14px;border-radius:16px 16px 4px 16px;font-size:13.5px;line-height:1.55}
.mag{align-self:flex-start;max-width:86%;background:#eeedef;color:#3c3c40;padding:10px 14px;border-radius:16px 16px 16px 4px;font-size:13.5px;line-height:1.55}
.blur{filter:blur(5px);user-select:none}
.care{align-self:flex-start;max-width:90%;background:var(--green-tint);border:1px solid var(--line-green);border-radius:16px 16px 16px 4px;padding:12px 14px;font-size:13.5px;line-height:1.55}
.bhd{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;margin-bottom:6px}
.chd-g{color:var(--green-brand)}
.help{display:inline-flex;align-items:center;gap:6px;background:var(--paper);border:1px solid var(--line);border-radius:50px;padding:6px 12px;font-size:12px;font-weight:600;color:var(--ink-2);margin-top:8px}
.sentc{align-self:center;display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;color:var(--ink-3);background:var(--paper);border:1px solid var(--line);border-radius:50px;padding:5px 12px}
.lesson{align-self:flex-start;max-width:92%;background:var(--paper);border:1px solid var(--line-green);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:9px;font-size:13px;line-height:1.5}
.pbs{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 15px;border-radius:50px;font-family:var(--font-sans);font-size:12.5px;font-weight:600;border:none;cursor:pointer;transition:all .2s ease}
.pbs:active{transform:scale(.95)}
.pbs-p{background:var(--green-accent);color:#fff}
.pbs-o{background:var(--paper);border:1px solid var(--line-strong);color:var(--ink-2)}
.sched{display:inline-flex;align-items:center;gap:8px;background:var(--gold-lightest);border:1px solid var(--gold-light);border-radius:50px;padding:7px 14px;font-size:12.5px;font-weight:700;color:var(--gold-deep)}
.feat{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.flist{display:flex;flex-direction:column;margin-top:20px}
.fli{display:flex;gap:10px;align-items:flex-start;padding:9px 0;font-size:14.5px;line-height:1.5;color:var(--ink)}
.notif{display:flex;gap:10px;align-items:flex-start;background:var(--paper);border-radius:12px;padding:12px 14px;box-shadow:0 1px 2px rgba(0,0,0,.1),0 4px 12px rgba(0,0,0,.08)}
.nico{width:30px;height:30px;border-radius:8px;flex:none;display:flex;align-items:center;justify-content:center;background:var(--green-tint);color:var(--green-brand)}
.ntit{font-size:13px;font-weight:700;line-height:1.35}
.nbd{font-size:12.5px;color:var(--ink-2);line-height:1.45;margin-top:2px}
.ntm{margin-left:auto;font-family:var(--font-mono);font-size:11px;color:var(--ink-3);flex:none}
.srow{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}
.sico{width:38px;height:38px;border-radius:10px;background:var(--green-tint);color:var(--green-brand);display:flex;align-items:center;justify-content:center;flex:none}
.snm{font-size:14.5px;font-weight:600}
.sds{font-size:12px;color:var(--ink-3);margin-top:1px}
.seg{display:flex;background:var(--ceramic);border-radius:50px;padding:3px;margin-left:auto;flex:none}
.sego{height:29px;padding:0 13px;border-radius:50px;font-size:12px;font-weight:600;color:var(--ink-2);display:flex;align-items:center;cursor:pointer;transition:all .2s ease}
.sego.on{background:var(--paper);color:var(--green-brand);box-shadow:0 1px 2px rgba(0,0,0,.12)}
.lockc{margin-left:auto;display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;color:var(--gold-deep);background:var(--gold-lightest);border:1px solid var(--gold-light);border-radius:50px;padding:6px 12px;flex:none}
.rep{padding:24px 26px}
.rtit{font-size:18px;font-weight:700;color:var(--green-brand)}
.rwk{margin-left:auto;font-family:var(--font-mono);font-size:11.5px;background:var(--ceramic);border-radius:50px;padding:5px 12px;color:var(--ink-2)}
.rlb{font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--ink-3);margin-bottom:10px;display:flex;align-items:center;gap:6px}
.tag{display:inline-flex;align-items:center;height:27px;padding:0 12px;border-radius:50px;background:var(--paper);border:1px solid var(--line);font-size:12px;font-weight:600;color:var(--ink)}
.tagn{border-color:var(--gold-light);color:var(--gold-deep)}
.rrow{display:flex;align-items:center;gap:9px;font-size:12.5px;padding:4px 0}
.rl2{flex:none;width:118px}
.sdot{width:8px;height:8px;border-radius:50%;flex:none}
.bar{flex:1;height:7px;border-radius:50px;background:var(--ceramic);overflow:hidden}
.fill{height:100%;border-radius:50px;background:var(--green-accent);display:block}
.fillg{background:var(--gold)}
.pct{font-family:var(--font-mono);font-size:11.5px;color:var(--ink-2);flex:none;width:58px;text-align:right}
.mind{background:var(--info-tint);border-radius:10px;padding:12px 13px;font-size:12.5px;line-height:1.55}
.priv{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--ink-3);margin-top:10px}
.plans{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:860px;margin:36px auto 0}
.plan{padding:30px;display:flex;flex-direction:column;position:relative}
.hot{border:2px solid var(--green-accent)}
.hotb{position:absolute;top:-13px;left:26px;background:var(--green-accent);color:#fff;font-size:11px;font-weight:700;border-radius:50px;padding:5px 13px;letter-spacing:.04em}
.pnm{font-size:15px;font-weight:700;color:var(--ink-2)}
.ppr{font-family:var(--font-mono);font-size:36px;font-weight:600;color:var(--green-brand);margin:12px 0 4px}
.pper{font-size:13px;color:var(--ink-3);font-family:var(--font-sans);font-weight:500}
.pft{display:flex;gap:9px;align-items:flex-start;font-size:14px;line-height:1.5;padding:6px 0}
.cta{background:var(--green-forest);text-align:center;padding:88px 56px;display:flex;flex-direction:column;align-items:center}
.ctaimg{width:64px;height:64px;border-radius:16px}
.ctat{font-size:34px;font-weight:800;color:#fff;margin:20px 0 10px;line-height:1.25}
.ctas{font-size:16px;color:rgba(255,255,255,.7);margin:0 0 30px}
.foot{background:var(--green-forest);border-top:1px solid rgba(255,255,255,.12);padding:28px 56px;display:flex;flex-wrap:wrap;align-items:center;gap:22px;color:rgba(255,255,255,.55);font-size:12.5px}
.flk{cursor:pointer;transition:all .2s ease}
.flk:hover{color:#fff}
.fbiz{flex-basis:100%;padding-top:16px;border-top:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.42);font-size:12px;line-height:1.6}
.probs{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:36px}
.prob{padding:26px}
.pno{font-family:var(--font-mono);font-size:13px;font-weight:600;color:var(--danger)}
.ptt{font-size:18.5px;font-weight:700;margin:12px 0 8px}
.pds{font-size:14px;line-height:1.6;color:var(--ink-2);margin:0}
.steps{display:grid;grid-template-columns:1fr 34px 1fr 34px 1fr;gap:10px;align-items:stretch;margin-top:36px}
.step{padding:20px;display:flex;flex-direction:column;gap:12px}
.stpl{font-size:12px;font-weight:700;color:var(--green-accent);display:flex;gap:7px;align-items:center}
.stpt{font-size:15.5px;font-weight:700;line-height:1.4}
.arr{align-self:center;justify-self:center;color:var(--ink-3)}
.pull{font-family:var(--font-serif);font-size:22px;line-height:1.75;color:var(--green-brand);text-align:center;max-width:660px;margin:0 auto}
.pull2{font-size:26px;margin-top:64px}
.gatec{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 13px;border-radius:50px;background:var(--cream);font-size:12.5px;font-weight:600;color:var(--ink)}
.scr{height:100%;display:flex;flex-direction:column;padding-top:60px;box-sizing:border-box;background:var(--cream)}
.aph{display:flex;align-items:center;gap:9px;padding:10px 14px;background:var(--paper);border-bottom:1px solid var(--line)}
.aphn{font-size:14px;font-weight:700;color:var(--green-brand)}
.avat{width:26px;height:26px;border-radius:50%;display:block;flex:none}
.pchat{flex:1;overflow:hidden;padding:14px;display:flex;flex-direction:column;gap:10px}
.inbar{margin:0 12px 14px;display:flex;align-items:center;gap:8px;background:var(--paper);border:1px solid var(--line-strong);border-radius:50px;padding:11px 16px;font-size:13px;color:var(--ink-3)}
.vcap{display:flex;align-items:center;gap:9px;margin-top:6px;border-radius:10px;padding:12px 14px;font-size:13.5px;font-weight:700;line-height:1.4}
.vcap-r{background:var(--danger-tint);color:var(--danger)}
.vcap-g{background:var(--green-tint);color:var(--green-brand)}
.setgrid{display:grid;grid-template-columns:1fr 60px 1fr;gap:12px;align-items:start;margin-top:36px}
.colhd{display:flex;align-items:center;gap:9px;font-size:13.5px;font-weight:700;color:var(--ink);margin-bottom:12px}
.ncirc{width:22px;height:22px;border-radius:50%;background:var(--green-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;font-family:var(--font-mono);flex:none}
.setarr{display:flex;flex-direction:column;align-items:center;gap:5px;padding-top:150px;color:var(--ink-3);font-size:10.5px;font-weight:700;text-align:center;line-height:1.35}
.vcard{display:flex;gap:13px;align-items:flex-start;background:var(--paper);border-radius:12px;padding:16px;box-shadow:0 0 .5px rgba(0,0,0,.14),0 1px 1px rgba(0,0,0,.14)}
.vtt{font-size:15px;font-weight:700}
.vds{font-size:13px;color:var(--ink-2);line-height:1.55;margin-top:3px}
.vbn{font-size:12.5px;font-weight:600;color:var(--green-accent);margin-top:6px}
.trend{font-family:var(--font-mono);font-size:10.5px;color:var(--gold-deep);flex:none;width:40px;text-align:right}
.starter{display:inline-flex;align-items:center;gap:7px;background:var(--paper);border:1px solid var(--line);border-radius:50px;padding:7px 13px;font-size:12px;font-weight:600;color:var(--ink);margin-top:10px}
.rnote{font-size:11.5px;color:var(--ink-3);margin-top:8px}
.repgrid{display:grid;grid-template-columns:.92fr 1.08fr;gap:28px;align-items:start;margin-top:36px}
.trylab{display:inline-flex;align-items:center;gap:8px;background:var(--green-accent);color:#fff;border-radius:50px;padding:10px 20px;font-size:13.5px;font-weight:700;box-shadow:0 4px 12px rgba(0,117,74,.28)}
.rsumbox{display:flex;gap:9px;align-items:flex-start;background:var(--green-tint);border-radius:10px;padding:12px 14px;font-size:13.5px;line-height:1.6;margin:14px 0 2px;color:var(--ink)}
.rsec{padding:16px 0;border-bottom:1px solid var(--line)}
.rsec-h{display:flex;align-items:center;gap:8px;font-size:14.5px;font-weight:700;color:var(--green-brand)}
.rsec-c{font-size:12px;color:var(--ink-3);margin:2px 0 12px 26px}
.rsec-b{margin-left:26px}
.pg{word-break:keep-all}
.qchip,.trylab,.chip,.ptag,.tag,.sched,.sentc,.help,.lockc,.sego,.gatec,.titem,.starter,.rwk,.aphn,.pnm,.stsm,.stlg{white-space:nowrap}
.phead{white-space:nowrap}

/* ============================================================
   정적 폰 프레임(§3.6) — 원본 IOSDevice x-import 대체.
   치수·좌표는 ios-frame.jsx IOSDevice/IOSStatusBar 를 1:1 이식.
   밝은 테마 · 네비바 없음 · 키보드 없음(hero 사용 형태).
   ============================================================ */
.phone{width:330px;height:672px;border-radius:48px;overflow:hidden;position:relative;background:#F2F2F7;box-shadow:0 40px 80px rgba(0,0,0,0.18),0 0 0 1px rgba(0,0,0,0.12);font-family:-apple-system,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
.phone-island{position:absolute;top:11px;left:50%;transform:translateX(-50%);width:126px;height:37px;border-radius:24px;background:#000;z-index:50}
.phone-status{position:absolute;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;justify-content:center;gap:154px;padding:21px 24px 19px;box-sizing:border-box;width:100%}
.phone-time{flex:1;height:22px;display:flex;align-items:center;justify-content:center;padding-top:1.5px;font-family:-apple-system,"SF Pro",system-ui;font-weight:590;font-size:17px;line-height:22px;color:#000}
.phone-signals{flex:1;height:22px;display:flex;align-items:center;justify-content:center;gap:7px;padding-top:1px;padding-right:1px}
.phone-home{position:absolute;bottom:0;left:0;right:0;z-index:60;height:34px;display:flex;justify-content:center;align-items:flex-end;padding-bottom:8px;pointer-events:none}
.phone-home-bar{width:139px;height:5px;border-radius:100px;background:rgba(0,0,0,0.25)}

/* ============================================================
   정적 pill 버튼(§3.7) — 원본 DesignSystem Button x-import 대체.
   요금제 CTA 전용. 레슨카드 .pbs* 소형 버튼과는 별개 용도.
   플레이스홀더(링크 없음) — 스토어/약관/문의 연결은 스코프 아님.
   ============================================================ */
.pill{border-radius:var(--radius-full);width:100%;height:50px;font-family:var(--font-sans);font-weight:700;font-size:15px;cursor:pointer;border:none;display:flex;align-items:center;justify-content:center}
.pill-primary{background:var(--green-accent);color:#fff}
.pill-secondary{background:var(--paper);color:var(--ink);border:1px solid var(--line-strong)}

/* ============================================================
   비교데모 상태 토글(§4.2 · R1-A) — hw/risk/learn 3상태를 서버가 모두
   렌더하고 비활성 상태를 감춘다. landing.js 는 표시 토글만 한다.
   .cmp-state 는 .col(display:flex)이라 특이성 0,2,0 의 이 규칙으로
   확실히 감춘다(!important 불필요·기존 규칙 훼손 없음).
   ============================================================ */
.cmp-state.is-off{display:none}

/* ============================================================
   반응형 @media (max-width:880px) — 설계 명세 §10
   단일 중단점(§10.2): hero 폰 목업(330px 고정)이 .heroA 2단 열을 넘쳐
   .pg 의 overflow:hidden 에 클리핑되는 실측 임계(≈869px)에 여유를 더한 값.
   CSS-only(§10.4): 신규 DOM 훅 0 — 기존 데스크톱 클래스를 목업 .m* 목표값
   (design-source/new-style.css)으로 재스타일한다. 다단 그리드/플렉스 →
   단일 컬럼, 타이포·패딩 축소, 화살표 세로화(rotate), nav 앵커 링크 숨김.
   ============================================================ */
@media (max-width:880px){
  /* nav 축약 + 인페이지 앵커 링크 CSS 숨김(§10.3·§10.4-divergence1 —
     링크는 DOM/HTML 소스에 보존, 시각만 숨김. hamburger 미도입) */
  .nav{padding:12px 18px}
  .nav .nlk{display:none}

  /* hero 2단 그리드 → 세로 스택 + 폰 축소(§10.3 .mhero) */
  .heroA{grid-template-columns:1fr;gap:32px;padding:44px 20px 56px}
  .phone{width:290px;height:590px}

  /* 타이포 축소(§10.3 .mh1/.mh2/.msub) */
  .h1{font-size:31px;line-height:1.28;margin:12px 0 14px}
  .h2{font-size:23px;line-height:1.34;margin:8px 0 12px}
  .sub{font-size:15px;line-height:1.65}

  /* 섹션 좌우 패딩 축소(§10.3 .msec) */
  .sec{padding:52px 20px}

  /* 문제 통계 3단 → 세로 스택(§10.3 .mstats — span 3 자동 무력화) */
  .statsd{display:flex;flex-direction:column;gap:16px;padding:52px 20px 40px}

  /* 왜 브로콜리 2단 → 세로 스택(§10.3) */
  .feat{display:flex;flex-direction:column;gap:24px}

  /* 비교데모 2단 → 세로 스택(§10.3 .mstack; .cmp-state.is-off 토글 불변) */
  .cmp{display:flex;flex-direction:column;gap:16px}
  .pane{min-height:0}

  /* 소크라테스 5단(화살표) → 세로 스택 + 화살표 아래방향(§10.3·§10.4-divergence2) */
  .steps{display:flex;flex-direction:column;gap:16px}
  .arr .msr{transform:rotate(90deg)}

  /* 부모설정 3단(화살표 열) → 세로 스택 + 화살표 가로/아래방향(§10.3) */
  .setgrid{display:flex;flex-direction:column;gap:16px}
  .setarr{flex-direction:row;align-items:center;gap:6px;padding-top:0}
  .setarr .msr{transform:rotate(90deg)}
  .seg .sego{height:26px;padding:0 10px;font-size:11px}
  .srow .snm{font-size:13.5px}
  .srow .sds{font-size:11px}

  /* 리포트 2단 → 세로 스택 + 좁은 폭 막대 fit(§10.3 .mrep) */
  .repgrid{display:flex;flex-direction:column;gap:16px}
  .rep{padding:20px 16px}
  .rep .rl2{width:104px}
  .rep .pct{width:50px}
  .pull2{font-size:17px;margin-top:40px}
  .pull{line-height:1.8}

  /* 요금제 2단 → 세로 스택(pill은 이미 width:100%)(§10.3) */
  .plans{display:flex;flex-direction:column;gap:16px;max-width:none;margin-top:32px}

  /* 하단 CTA·footer 패딩/타이포 축소 + footer 링크 랩(§10.3 .mcta/.mctat/.mfoot) */
  .cta{padding:60px 20px}
  .ctat{font-size:26px}
  .foot{flex-wrap:wrap;padding:24px 20px;gap:14px 18px}
  .foot .mla{margin-left:0;width:100%}
}
