*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--green:#129E7B;--green-h:#1DAC86;--green-50:#EDFCF6;--green2:#76BE57;--blue:#19B5FE;--blue-50:#F0F9FF;--bg:#FFFFFF;--bg2:#F7F7F5;--fg1:#111111;--fg2:#6B7280;--muted:#AAAAAA;--border:#E8E8E6;--font:'Pretendard Variable','Pretendard',-apple-system,sans-serif;--max-w:1400px}
html{scroll-behavior:smooth}
body{font-family:var(--font);background:var(--bg);color:var(--fg1);-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}
nav{position:sticky;top:0;z-index:300;background:rgba(255,255,255,.92);backdrop-filter:blur(20px);border-bottom:.5px solid var(--border);padding:0 80px;height:68px;display:flex;align-items:center}
.nav-logo{flex-shrink:0}
.nav-center{display:flex;align-items:center;gap:104px;flex:1;justify-content:center}
.nav-btn{font-size:15px;font-weight:500;color:var(--fg2);padding:8px 14px;border-radius:9px;cursor:pointer;transition:color 150ms,background 150ms;background:none;border:none;font-family:var(--font);display:flex;align-items:center;gap:5px;white-space:nowrap;text-decoration:none}
.nav-btn:hover{color:var(--green);background:var(--green-50)}
.nav-btn.active{color:var(--green);background:var(--green-50)}
.nav-right{display:flex;align-items:center;gap:24px;flex-shrink:0}
.nav-cta{padding:11px 24px;background:var(--green);color:#fff;border:none;border-radius:999px;font-family:var(--font);font-size:15px;font-weight:500;cursor:pointer;transition:background 150ms}
.nav-cta:hover{background:var(--green-h)}
.mega-wrap{position:fixed;top:68px;left:0;right:0;z-index:299}
.mega-panel{position:relative;z-index:2;background:#fff;border-bottom:.5px solid var(--border);box-shadow:0 12px 32px rgba(0,0,0,.07);padding:20px 0 24px;display:none}
.mega-wrap.open .mega-panel{display:block;animation:megaSlide 180ms ease}
@keyframes megaSlide{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.mega-inner{max-width:var(--max-w);margin:0 auto;position:relative;padding:4px 80px 20px;min-height:20px}
.mega-col{position:absolute;top:0;min-width:160px;display:none;box-sizing:border-box;padding-right:12px}
.mega-col:first-child{min-width:170px}
.mega-wrap.open .mega-col{display:block}
.mega-item{display:block;padding:10px 12px;border-radius:10px;transition:background 180ms,color 180ms;color:var(--fg1);font-size:14px;font-weight:500;margin-bottom:2px;line-height:1.3;text-decoration:none;cursor:pointer}
.mega-item:hover{background:var(--green-50);color:var(--green)}
.mega-item-sub{display:block;font-size:12px;color:rgba(0,0,0,.35);margin-top:3px;font-weight:400;transition:color 180ms}
.mega-simple{display:block;padding:10px 12px;border-radius:10px;transition:background 180ms,color 180ms;font-size:14px;font-weight:500;color:var(--fg1);margin-bottom:2px;text-decoration:none;cursor:pointer}
.mega-simple:hover{background:var(--green-50);color:var(--green)}
.mega-overlay{position:fixed;inset:0;top:0;z-index:1;display:none}
.mega-wrap.open .mega-overlay{display:block}
.nav-burger{display:none;background:none;border:none;width:40px;height:40px;align-items:center;justify-content:center;cursor:pointer;flex-direction:column;gap:4px;padding:0}
.nav-burger span{display:block;width:22px;height:1.5px;background:var(--fg1);border-radius:2px;transition:transform 200ms,opacity 150ms}
.nav-burger.open span:nth-child(1){transform:translateY(5.5px) rotate(45deg)}
.nav-burger.open span:nth-child(2){opacity:0}
.nav-burger.open span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg)}
.mobile-drawer{display:none;position:fixed;top:60px;left:0;right:0;bottom:0;background:#fff;z-index:295;overflow-y:auto;padding:24px 20px 40px;flex-direction:column;gap:4px}
.mobile-drawer.open{display:flex;animation:megaSlide 200ms ease}
.md-group{padding:8px 0;border-bottom:.5px solid var(--border)}
.md-group:last-child{border-bottom:none}
.md-head{font-size:12px;font-weight:600;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;padding:6px 12px;margin-bottom:4px}
.md-link{display:block;font-size:16px;font-weight:500;color:var(--fg1);padding:12px;border-radius:10px}
.md-link:hover{background:var(--green-50);color:var(--green)}
.md-link-sub{display:block;font-size:12px;color:var(--muted);margin-top:2px;font-weight:400}
.md-cta{margin-top:24px;padding:14px;text-align:center;background:var(--green);color:#fff;border-radius:999px;font-weight:500;font-size:16px;display:block;text-decoration:none}
@media(max-width:768px){.nav-center{display:none}.nav-burger{display:flex}nav{padding:0 20px}}
footer{background:#111;padding:64px 80px}
.foot-inner{max-width:var(--max-w);margin:0 auto}
.foot-top{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:60px;margin-bottom:48px;padding-bottom:48px;border-bottom:.5px solid rgba(255,255,255,.07)}
.foot-tagline{font-size:14px;color:rgba(255,255,255,.35);line-height:1.8;margin-top:14px}
.foot-col-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.35);margin-bottom:18px}
.foot-links{display:flex;flex-direction:column;gap:12px}
.foot-links a{font-size:15px;color:rgba(255,255,255,.5);transition:color 150ms}
.foot-links a:hover{color:rgba(255,255,255,.85)}
.foot-bottom{display:flex;justify-content:space-between;align-items:flex-end}
.foot-info{font-size:12px;color:rgba(255,255,255,.22);line-height:1.9}
.foot-copy{font-size:12px;color:rgba(255,255,255,.18)}
.btn-p{padding:13px 28px;background:var(--green);color:#fff;border:none;border-radius:999px;font-family:var(--font);font-size:15px;font-weight:500;cursor:pointer;transition:background 150ms;display:inline-flex;align-items:center;gap:8px}
.btn-p:hover{background:var(--green-h)}
.btn-g{padding:13px 28px;background:transparent;color:var(--fg1);border:.5px solid var(--border);border-radius:999px;font-family:var(--font);font-size:15px;font-weight:500;cursor:pointer;transition:border-color 150ms;display:inline-flex;align-items:center;gap:8px}
.btn-g:hover{border-color:#999}
/* Hero */

.h1{font-size:48px;font-weight:700;letter-spacing:-0.03em;line-height:1.15;color:var(--fg1)}
.h1 .m{color:var(--muted)}
.page-hero .h1 .m{color:var(--green)}

/* ── page-hero 중앙 정렬 ── */
.page-hero { padding: 10px 80px 48px; min-height: 100vh; background: linear-gradient(180deg,#FFFFFF 0%,#F5FDF9 70%,#EDFCF6 100%); position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; }
@media (max-width:1599px){ .page-hero { min-height: 100vh; padding: 80px 80px; } }
.page-hero::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(ellipse 900px 500px at 15% 100%,rgba(18,158,123,.14) 0%,transparent 70%),radial-gradient(ellipse 700px 400px at 85% 95%,rgba(118,190,87,.12) 0%,transparent 72%); z-index: 0; }
.page-hero-grid { display: flex; flex-direction: column; align-items: center; text-align: center; width: 100%; max-width: var(--max-w); margin: 0 auto; position: relative; z-index: 1; gap: 48px; }
.page-hero-left { padding: 40px 0; min-width: 0; text-align: center; }
.hero-visual { position: relative; overflow: visible; display: flex; align-items: center; justify-content: center; width: 100%; text-align: left; }
.page-hero .lead { max-width: none; }
.page-hero .h1{font-size:55px;letter-spacing:-0.03em;white-space:normal}
.page-hero .lead{font-size:25px;margin-top:16px;max-width:none}
.hero-visual .mockup{min-height:531px;display:flex;flex-direction:column;justify-content:center;width:100%}
.lead{font-size:18px;color:var(--fg2);line-height:1.75;margin-top:24px;max-width:520px}
.mockup{background:#fff;border:.5px solid var(--border);border-radius:18px;padding:28px;box-shadow:0 12px 40px rgba(16,98,73,.10),0 2px 14px rgba(0,0,0,.04)}
.mock-head{font-size:13px;font-weight:700;color:var(--fg1);margin-bottom:16px;display:flex;justify-content:space-between;align-items:center}
.live-badge{font-size:11px;font-weight:600;background:var(--green-50);color:var(--green);padding:4px 10px;border-radius:999px;display:inline-flex;align-items:center;gap:5px}
.live-dot{width:6px;height:6px;border-radius:50%;background:var(--green);animation:livePulse 1.6s ease-in-out infinite}
@keyframes livePulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}
.std-mock{display:flex;align-items:center;justify-content:space-between;padding:11px 0;border-bottom:.5px solid var(--bg2)}
.std-mock:last-of-type{border-bottom:none}
.std-mock-name{font-size:13px;font-weight:600;color:var(--fg1);width:74px}
.std-mock-bar{flex:1;height:6px;background:var(--bg2);border-radius:999px;overflow:hidden;margin:0 12px}
.std-mock-bar-fill{height:100%;background:var(--green);border-radius:999px;transition:width 1.4s cubic-bezier(.4,0,.2,1)}
.std-mock-pct{font-size:12px;font-weight:600;color:var(--green);width:36px;text-align:right}
.report-progress{margin-top:18px;padding:18px 20px;background:linear-gradient(135deg,#EDFCF6 0%,#DBF5E8 100%);border-radius:12px;display:flex;justify-content:space-between;align-items:center}
.report-progress-lbl{font-size:13px;color:var(--fg2);font-weight:600}
.report-progress-val{font-size:22px;font-weight:700;color:var(--green);letter-spacing:-.5px}
/* Pain */
.pain-section{background:var(--bg2);padding:80px 80px;border-top:.5px solid var(--border);border-bottom:.5px solid var(--border);min-height:100vh;display:flex;flex-direction:column;justify-content:center}
.pain-inner{max-width:1000px;margin:0 auto}
.pain-head{text-align:center;margin-bottom:48px}
.pain-eyebrow{font-size:15px;font-weight:700;color:#FF5A48;margin-bottom:20px;letter-spacing:0.01em}
.pain-title-head{font-size:52px;font-weight:700;color:var(--fg1);letter-spacing:0.01em;line-height:1.15}
@media(max-width:855px){.pain-title-head{font-size:clamp(22px,6vw,28px) !important;letter-spacing:0.01em !important;line-height:1.2 !important}}
.pain-title-head .m{color:var(--muted);display:block}
.pain-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;text-align:left}
.pain-card{background:#fff;border:.5px solid var(--border);border-radius:16px;padding:28px 24px;display:flex;flex-direction:column;gap:0;min-height:220px}
.pain-icon{width:52px;height:52px;border-radius:13px;background:#FFE8E3;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-bottom:auto}
.pain-card-body{margin-top:36px}
.pain-title{font-size:20px;font-weight:700;color:var(--fg1);margin-bottom:8px;letter-spacing:0.01em;line-height:1.35}
.pain-desc{font-size:16px;color:var(--fg2);line-height:1.6}
/* Feature */
.feature-section{padding:120px 80px}
.feature-inner{max-width:var(--max-w);margin:0 auto;width:100%}
.sol-eyebrow{font-size:15px;font-weight:700;color:var(--green);margin-bottom:20px;letter-spacing:-.01em}
.sol-title-head{font-size:52px;font-weight:700;color:var(--fg1);letter-spacing:-0.03em;line-height:1.15;margin-bottom:56px}
.sol-title-head .m{color:var(--muted);display:block}
.feat-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:24px}
.feat-tab{background:#FAFBFC;border:1px solid #E8E8E6;border-radius:16px;padding:24px 22px;cursor:pointer;transition:background 200ms,border-color 200ms,transform 200ms,box-shadow 200ms;text-align:left}
.feat-tab:hover{background:#fff;border-color:rgba(18,158,123,.25);transform:translateY(-2px)}
.feat-tab.active{background:var(--green-50);border-color:var(--green);box-shadow:0 8px 24px rgba(18,158,123,.08)}
.feat-tab.active .feat-tab-icon{background:var(--green)}
.feat-tab.active .feat-tab-icon svg{stroke:#fff}
.feat-tab-icon{width:40px;height:40px;border-radius:10px;background:var(--green-50);display:flex;align-items:center;justify-content:center;margin-bottom:16px;transition:background 200ms}
.feat-tab-icon svg{stroke:var(--green);transition:stroke 200ms}
.feat-tab-title{font-size:18px;font-weight:700;color:var(--fg1);margin-bottom:6px;letter-spacing:-0.02em;line-height:1.35}
.feat-tab-desc{font-size:15px;color:var(--fg2);line-height:1.55}

  .feat-tab > .feat-tab-icon { grid-area: icon; align-self: center; }
  .feat-tab > .feat-tab-title { grid-area: title; }
  .feat-tab > .feat-tab-desc { grid-area: desc; }
.feat-dashboard{position:relative;background:#FAFBFC;border:.5px solid var(--border);border-radius:20px;padding:28px 32px;height:620px;display:flex;flex-direction:column;overflow:hidden}
.feat-panel{display:none;animation:panelFade 280ms ease;flex-direction:column;flex:1;min-height:0}
.feat-panel.active{display:flex}
@keyframes fadeUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes panelFade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.feat-panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-shrink:0}
.feat-panel-title{font-size:20px;font-weight:700;color:var(--fg1);letter-spacing:-0.02em}
.feat-panel-chip{font-size:12px;font-weight:600;background:var(--green-50);color:var(--green);padding:5px 12px;border-radius:999px}
.feat-panel-body{flex:1;min-height:0}
/* Success banner */
.opn-success-banner{position:absolute;bottom:36px;left:50%;transform:translateX(-50%);background:var(--green);color:#fff;padding:10px 22px;border-radius:999px;font-size:13px;font-weight:600;white-space:nowrap;opacity:0;transition:opacity 400ms;z-index:30;pointer-events:none}
.opn-success-banner.show{opacity:1}
/* Shared PC stage */
.pc-stage-topbar{display:flex;align-items:center;gap:6px;padding:9px 12px;border-bottom:.5px solid var(--bg2);background:#fff;flex-shrink:0}
.pc-stage-topbar .dot-r{width:7px;height:7px;border-radius:50%;background:#FF5F57}
.pc-stage-topbar .dot-y{width:7px;height:7px;border-radius:50%;background:#FEBC2E}
.pc-stage-topbar .dot-g{width:7px;height:7px;border-radius:50%;background:#28C840}
.pc-stage-topbar .pc-url{margin-left:8px;background:var(--bg2);padding:3px 10px;border-radius:999px;font-size:9px;color:var(--fg2)}
@keyframes pulseBtn{0%,100%{box-shadow:0 0 0 0 rgba(18,158,123,.55)}50%{box-shadow:0 0 0 7px rgba(18,158,123,0)}}
/* Cursor */
.rq-cursor{position:absolute;pointer-events:none;z-index:20;display:flex;align-items:flex-start;opacity:0;transition:left 900ms cubic-bezier(.32,.72,.4,1),top 900ms cubic-bezier(.32,.72,.4,1),opacity 280ms,transform 200ms;transform-origin:0 0}
.rq-cursor.show{opacity:1}
.rq-cursor.click{transform:scale(.78)}

/* === PANEL 1: Submit wizard === */
.rq-demo-wrap{position:relative;width:100%;max-width:1040px;margin:0 auto;height:580px}
.rq-pc{position:relative;width:100%;height:100%;background:#fff;border-radius:16px;border:.5px solid var(--border);box-shadow:0 20px 60px rgba(16,98,73,.13);overflow:hidden;display:flex;flex-direction:column}
.rq-stepper{display:flex;align-items:center;justify-content:center;gap:0;padding:16px 40px 18px;border-bottom:.5px solid var(--bg2);flex-shrink:0}
.rq-step-dot{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--fg2);white-space:nowrap}
.rq-step-dot.active,.rq-step-dot.done{color:var(--green)}
.rq-step-num{width:24px;height:24px;border-radius:50%;background:var(--bg2);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--fg2);flex-shrink:0}
.rq-step-dot.active .rq-step-num,.rq-step-dot.done .rq-step-num{background:var(--green);color:#fff}
.rq-step-line{width:56px;height:1.5px;background:var(--border);flex-shrink:0;margin:0 12px}
.rq-steps-area{position:relative;flex:1;min-height:0}
.rq-step{position:absolute;inset:0;padding:28px 36px 24px;display:flex;flex-direction:column;gap:16px;opacity:0;transition:opacity 380ms;pointer-events:none;overflow:hidden}
.rq-step.show{opacity:1}
.rq-section-title{font-size:16px;font-weight:700;color:var(--fg1);flex-shrink:0}
.rq-section-sub{font-size:13px;color:var(--fg2);margin-top:-8px;flex-shrink:0}
.rq-options-grid{display:flex;flex-wrap:wrap;gap:10px;flex-shrink:0}
.rq-option{padding:12px 26px;border:.5px solid var(--border);border-radius:10px;font-size:14px;font-weight:500;color:var(--fg1);cursor:pointer;transition:all 250ms;background:#fff}
.rq-option.selected{background:var(--green-50);border-color:var(--green);color:var(--green);font-weight:700}
.rq-bottom-row{display:flex;justify-content:flex-end;margin-top:auto;flex-shrink:0}
.rq-next-btn{padding:12px 28px;background:var(--green);color:#fff;border-radius:10px;font-size:14px;font-weight:700;cursor:pointer}
.rq-cb-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;flex-shrink:0}
.rq-cb-option{display:flex;align-items:center;gap:12px;padding:16px 20px;border:.5px solid var(--border);border-radius:12px;font-size:14px;font-weight:500;color:var(--fg1);background:#fff;transition:all 250ms}
.rq-cb-option.checked{background:var(--green-50);border-color:var(--green);color:var(--green);font-weight:700}
.rq-cb{width:20px;height:20px;border-radius:5px;border:1.5px solid var(--border);background:#fff;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;transition:all 250ms}
.rq-cb-option.checked .rq-cb{background:var(--green);border-color:var(--green)}
.rq-cb-option.checked .rq-cb::after{content:"✓"}
.rq-tags-row{padding:14px 18px;background:var(--bg2);border-radius:10px;flex-shrink:0}
.rq-tags-label{font-size:10px;font-weight:700;color:var(--fg2);margin-bottom:8px;letter-spacing:.04em;text-transform:uppercase}
.rq-tags{display:flex;flex-wrap:wrap;gap:6px;min-height:22px}
.rq-tag{padding:5px 14px;background:var(--green-50);border:.5px solid rgba(18,158,123,.3);border-radius:999px;font-size:12px;font-weight:700;color:var(--green)}
.rq-scope-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;flex-shrink:0}
.rq-scope-item{display:flex;align-items:center;gap:8px;padding:14px 16px;background:#fff;border:.5px solid var(--border);border-radius:10px;font-size:13px;font-weight:600;color:var(--fg1)}
.rq-scope-check{font-size:14px;font-weight:700;color:var(--muted);transition:color 300ms;flex-shrink:0}
.rq-scope-check.done{color:var(--green)}
.rq-map-row{display:flex;justify-content:center;flex-shrink:0}
.rq-map-btn{padding:14px 44px;background:var(--green);color:#fff;border-radius:12px;font-size:15px;font-weight:700;cursor:pointer;animation:pulseBtn 1.4s ease-in-out infinite}
.rq-map-btn.clicked{animation:none}
.rq-progress-wrap{flex-shrink:0;opacity:0;transition:opacity 300ms}
.rq-progress-wrap.show{opacity:1}
.rq-progress-bar{height:8px;background:var(--bg2);border-radius:999px;overflow:hidden;margin-bottom:8px}
.rq-progress-fill{height:100%;background:var(--green);border-radius:999px;width:0%;transition:width 1.8s ease}
.rq-progress-label{font-size:12px;color:var(--green);font-weight:600;text-align:center}
.rq-done-icon{width:56px;height:56px;border-radius:50%;background:var(--green);color:#fff;display:flex;align-items:center;justify-content:center;font-size:26px;font-weight:700;margin:0 auto;flex-shrink:0}
.rq-done-title{font-size:18px;font-weight:700;color:var(--fg1);text-align:center;flex-shrink:0}
.rq-done-card{background:var(--bg2);border-radius:12px;padding:18px 24px;flex-shrink:0}
.rq-done-file{font-size:14px;font-weight:600;color:var(--fg1);margin-bottom:6px}
.rq-done-meta{font-size:12px;color:var(--fg2)}
.rq-done-btns{display:flex;gap:12px;justify-content:center;flex-shrink:0}
.rq-done-btn-dl{padding:12px 32px;background:var(--green);color:#fff;border-radius:10px;font-size:14px;font-weight:700;cursor:pointer;animation:pulseBtn 1.4s ease-in-out infinite}
.rq-done-btn-prev{padding:12px 32px;background:#fff;border:.5px solid var(--border);color:var(--fg1);border-radius:10px;font-size:14px;font-weight:600;cursor:pointer}

/* === PANEL 2: Assumptions === */
.asmp-outer{position:relative;max-width:1040px;margin:0 auto;width:100%}
.asmp-pc{width:100%;height:580px;background:#fff;border-radius:16px;border:.5px solid var(--border);box-shadow:0 20px 60px rgba(16,98,73,.13);overflow:hidden;display:flex;flex-direction:column}
.asmp-content{flex:1;overflow:hidden;padding:14px 22px 16px;display:flex;flex-direction:column;gap:10px;background:#F7F7F5;min-height:0}
.asmp-action-row{display:flex;justify-content:flex-end;gap:10px;flex-shrink:0}
.asmp-new-btn{display:flex;align-items:center;gap:6px;padding:9px 18px;border:1.5px solid var(--border);border-radius:10px;font-size:13px;font-weight:600;color:var(--fg1);background:#fff;cursor:pointer}
.asmp-save-btn{display:flex;align-items:center;gap:6px;padding:9px 18px;background:var(--green);color:#fff;border-radius:10px;font-size:13px;font-weight:700;cursor:pointer;transition:all 250ms}
.asmp-save-btn.saved{background:#0a6b52;box-shadow:0 0 0 4px rgba(18,158,123,.18)}
.asmp-year-lbl{font-size:12px;font-weight:600;color:var(--fg2);flex-shrink:0}
.asmp-card{background:#fff;border-radius:12px;border:.5px solid var(--border);overflow:hidden;flex:1;display:flex;flex-direction:column;min-height:0}
.asmp-ver-row{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:.5px solid var(--border)}
.asmp-yr-dropdown{display:flex;align-items:center;gap:8px;padding:7px 14px;border:.5px solid var(--border);border-radius:8px;font-size:13px;font-weight:600;color:var(--fg1);background:var(--bg);cursor:pointer;min-width:90px;justify-content:space-between}
.asmp-ver-dropdown{display:flex;align-items:center;gap:8px;padding:7px 14px;border:.5px solid var(--border);border-radius:8px;font-size:13px;font-weight:600;color:var(--fg1);background:#fff;min-width:154px;justify-content:space-between}
.asmp-ver-dropdown.open{background:var(--green-50);border-color:var(--green);color:var(--green)}
.asmp-ver-list{position:absolute;top:148px;left:138px;background:#fff;border:.5px solid var(--border);border-radius:10px;box-shadow:0 12px 32px rgba(0,0,0,.13);z-index:50;min-width:180px;overflow:hidden;opacity:0;pointer-events:none;transform:translateY(-6px);transition:opacity 200ms,transform 200ms}
.asmp-ver-list.open{opacity:1;pointer-events:auto;transform:translateY(0)}
.asmp-ver-opt{padding:11px 18px;font-size:13px;font-weight:600;color:var(--fg1);border-bottom:.5px solid var(--bg2);cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:background 150ms}
.asmp-ver-opt:last-child{border-bottom:none}
.asmp-ver-opt:hover,.asmp-ver-opt.sel{background:var(--green-50);color:var(--green)}
.asmp-toolbar{display:flex;align-items:center;gap:1px;padding:6px 12px;border-bottom:.5px solid var(--border);overflow:hidden;flex-shrink:0}
.asmp-tb-sel{display:flex;align-items:center;gap:5px;padding:4px 8px 4px 6px;border-right:.5px solid var(--border);margin-right:4px;font-size:12px;font-weight:500;color:var(--fg1);white-space:nowrap;flex-shrink:0}
.asmp-tb-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:5px;cursor:pointer;color:var(--fg2);transition:all 150ms;flex-shrink:0}
.asmp-tb-btn.on{background:var(--green);color:#fff}
.asmp-tb-sep{width:1px;height:20px;background:var(--border);margin:0 4px;flex-shrink:0}
.asmp-editor-body{padding:13px 18px;font-size:13px;color:var(--fg1);line-height:1.85;transition:opacity 350ms;flex:1;overflow:auto;min-height:0}
.asmp-editor-body.fade{opacity:.08}
.asmp-editor-body ul{padding-left:18px;list-style:disc}
.asmp-editor-body li{margin-bottom:3px}
.asmp-cursor{position:absolute;pointer-events:none;z-index:200;display:flex;align-items:flex-start;opacity:0;transition:left 900ms cubic-bezier(.32,.72,.4,1),top 900ms cubic-bezier(.32,.72,.4,1),opacity 280ms,transform 200ms;transform-origin:0 0;left:80%;top:50%}
.asmp-cursor.show{opacity:1}
.asmp-cursor.click{transform:scale(.78)}
@keyframes caretBlink{0%,100%{opacity:1}50%{opacity:0}}
.asmp-typing::after{content:'|';color:var(--fg1);animation:caretBlink 700ms step-end infinite;margin-left:1px;font-weight:300;font-size:13px;vertical-align:middle;line-height:1}

/* === PANEL 3: Report generation === */
.rpt-outer{position:relative;max-width:1040px;margin:0 auto;overflow:hidden;border-radius:16px;box-shadow:0 20px 60px rgba(16,98,73,.13);width:100%}
.rpt-gen-screen{position:absolute;inset:0;background:#fff;border-radius:14px;border:.5px solid var(--border);box-shadow:0 16px 48px rgba(16,98,73,.12);display:flex;flex-direction:column;overflow:hidden;transition:opacity 350ms}
.rpt-gen-screen.exit{opacity:0;pointer-events:none}
.rpt-gen-inner{flex:1;display:flex;align-items:center;justify-content:center;padding:24px}
.rpt-config-card{background:var(--bg2);border-radius:14px;padding:22px 24px;width:100%;max-width:400px}
.rpt-config-title{font-size:13px;font-weight:700;color:var(--fg1);margin-bottom:14px}
.rpt-cfg-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:.5px solid var(--border);font-size:12px}
.rpt-cfg-row:last-of-type{border-bottom:none}
.rpt-cfg-row span:first-child{color:var(--fg2)}
.rpt-cfg-row span:last-child{font-weight:600;color:var(--fg1)}
.rpt-gen-btn{margin-top:16px;padding:11px 0;background:var(--green);color:#fff;border-radius:999px;font-size:13px;font-weight:700;text-align:center;cursor:pointer;animation:pulseBtn 1.4s ease-in-out infinite}
.rpt-loading-overlay{position:absolute;inset:0;background:rgba(255,255,255,.96);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity 350ms;z-index:5;border-radius:14px}
.rpt-loading-overlay.show{opacity:1}
.rpt-loading-inner{text-align:center}
.rpt-spinner{width:44px;height:44px;border:3px solid var(--bg2);border-top-color:var(--green);border-radius:50%;animation:spin 800ms linear infinite;margin:0 auto 14px}
@keyframes spin{to{transform:rotate(360deg)}}
.rpt-loading-text{font-size:14px;font-weight:700;color:var(--fg1);margin-bottom:4px}
.rpt-loading-sub{font-size:12px;color:var(--fg2)}
.rpt-modal{position:absolute;inset:0;background:#fff;display:flex;flex-direction:column;transform:translateY(110%);transition:transform 600ms cubic-bezier(.32,.72,.4,1);z-index:10;border-radius:14px;border:.5px solid var(--border);box-shadow:0 16px 48px rgba(16,98,73,.12);overflow:hidden}
.rpt-modal.show{transform:translateY(0)}
.rpt-mockup-screen{position:absolute;inset:0;opacity:0;pointer-events:none;flex-direction:column;z-index:10;border-radius:14px;overflow:hidden;background:#fff;border:.5px solid var(--border);box-shadow:0 16px 48px rgba(16,98,73,.12);display:flex;transition:opacity 350ms}
.rpt-mockup-screen.active{opacity:1;pointer-events:auto}
.rpt-modal-header{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;border-bottom:.5px solid var(--border);flex-shrink:0}
.rpt-modal-h-title{font-size:12px;font-weight:700;color:var(--fg1)}
.rpt-modal-h-sub{font-size:10px;color:var(--fg2)}
.rpt-modal-body{flex:1;display:grid;grid-template-columns:260px 1fr;min-height:0;overflow:hidden}
.rpt-modal-sidebar{border-right:.5px solid var(--border);display:flex;flex-direction:column;overflow:hidden}
.rpt-tab-row{display:flex;border-bottom:.5px solid var(--border);flex-shrink:0}
.rpt-tab-btn{flex:1;padding:14px 8px;font-size:14px;font-weight:700;color:var(--fg2);cursor:pointer;text-align:center;border-bottom:2.5px solid transparent;transition:color 150ms,border-color 150ms;line-height:1.35}
.rpt-tab-btn.active{color:var(--green);border-bottom-color:var(--green)}
.rpt-sidebar-content{flex:1;padding:14px 16px 12px;overflow:auto;display:flex;flex-direction:column}
.rpt-sidebar-lbl{font-size:11px;font-weight:700;color:var(--fg2);letter-spacing:.04em;text-transform:uppercase;margin-top:14px;margin-bottom:7px}
.rpt-view-select{font-size:13px;color:var(--fg1);background:var(--bg2);padding:8px 10px;border-radius:8px;display:flex;align-items:center;justify-content:space-between;border:.5px solid var(--border)}
.rpt-view-desc{font-size:11px;color:var(--fg2);margin-top:5px;line-height:1.4}
.rpt-emit-row{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--fg1);padding:5px 0}
.rpt-emit-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}
.rpt-emit-val{margin-left:auto;font-size:11px;color:var(--fg2)}
.rpt-emit-total{font-size:13px;font-weight:700;color:var(--fg1);margin-top:8px;padding-top:8px;border-top:.5px solid var(--border)}
.rpt-sidebar-note{font-size:11px;color:var(--fg2);line-height:1.5;margin-top:auto;padding-top:12px}
.rpt-pdf-area{overflow:hidden;background:#525659;display:flex;flex-direction:column}
.rpt-pdf-topbar{padding:4px 10px;background:#3a3d40;font-size:9px;color:rgba(255,255,255,.6);display:flex;align-items:center;gap:6px;flex-shrink:0}
.rpt-pdf-tb-left{display:flex;align-items:center;gap:6px;flex:1;min-width:0;overflow:hidden}
.rpt-pdf-tb-mid{display:flex;align-items:center;gap:5px;flex-shrink:0}
.rpt-pdf-tb-right{display:flex;align-items:center;gap:7px;flex-shrink:0;color:rgba(255,255,255,.5)}
.rpt-pdf-preview{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:2px;overflow:hidden}
.rpt-pdf-inner{background:#fff;border-radius:2px;padding:14px 12px 10px;box-shadow:0 4px 24px rgba(0,0,0,.45);font-size:6.5px;color:#111;width:312px;flex-shrink:0;display:flex;flex-direction:column;gap:5px;zoom:1.4}
.rpt-a4-header{border-bottom:2px solid #129E7B;padding-bottom:6px}
.rpt-a4-h-title{font-size:9px;font-weight:700;color:#1a1a1a}
.rpt-a4-h-sub{font-size:6px;color:#129E7B;font-weight:600;margin-top:1px}
.rpt-a4-sec-bar{background:#1a3a2a;color:#fff;font-size:6.5px;font-weight:700;padding:3px 7px;letter-spacing:.03em}
.rpt-a4-prod-row{display:flex;gap:8px;align-items:flex-start}
.rpt-a4-img-box{width:62px;height:62px;border-radius:2px;flex-shrink:0;overflow:hidden}
.rpt-a4-img-box img{width:100%;height:100%;object-fit:cover}
.rpt-a4-info-grid{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:2px}
.rpt-a4-info-cell{background:#F5F5F5;padding:3px 5px}
.rpt-a4-info-cell span{display:block;font-size:5.5px;color:#888;margin-bottom:1px}
.rpt-a4-info-cell strong{font-size:6.5px;color:#1a1a1a;font-weight:700}
.rpt-a4-cf-box{background:#ECFDF5;border:.5px solid #A7F3D0;border-radius:2px;padding:6px 10px;display:flex;gap:10px}
.rpt-a4-cf-item{flex:1}
.rpt-a4-cf-lbl{font-size:5.5px;color:#065F46;margin-bottom:2px}
.rpt-a4-cf-val{font-size:9px;font-weight:700;color:#065F46;line-height:1}
.rpt-a4-cf-unit{font-size:5.5px;color:#065F46}
.rpt-a4-chart-row{display:flex;align-items:center;gap:10px;justify-content:center}
.rpt-a4-legend{font-size:6px;display:flex;flex-direction:column;gap:3px}
.rpt-a4-legend div{display:flex;align-items:center;gap:4px}
.rpt-a4-legend span{width:6px;height:6px;border-radius:50%;flex-shrink:0;display:inline-block}
.rpt-a4-table{width:100%;border-collapse:collapse}
.rpt-a4-table td{font-size:6.5px;padding:3px 6px;border:.5px solid #E5E7EB;line-height:1.4}
.rpt-a4-table td:first-child{background:#F5F5F5;color:#555;width:76px;font-weight:600}
.rpt-a4-assump-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2px}
.rpt-a4-assump-list li{font-size:6px;color:#555;padding-left:10px;position:relative;line-height:1.5}
.rpt-a4-assump-list li::before{content:"•";position:absolute;left:2px;color:#129E7B}
.rpt-a4-footer{border-top:.5px solid #E5E7EB;padding-top:5px;display:flex;justify-content:space-between;margin-top:2px}
.rpt-a4-footer-col span{display:block;font-size:5.5px;color:#aaa}
.rpt-a4-footer-col strong{display:block;font-size:6px;color:#555;margin-top:1px}
.rpt-modal-footer{padding:9px 14px;border-top:.5px solid var(--border);display:flex;justify-content:flex-end;flex-shrink:0;background:#fff}
.rpt-dl-btn{padding:8px 18px;background:var(--green);border:.5px solid rgba(18,158,123,.3);color:#fff;border-radius:7px;font-size:11px;font-weight:700;cursor:pointer;animation:pulseBtn 1.4s ease-in-out infinite}
.rpt-xls-dl{background:var(--green)!important;border-color:rgba(18,158,123,.3)!important}
.rpt-oem-badge{padding:2px 8px;border-radius:3px;background:var(--green-50);color:var(--green);font-size:10px;font-weight:700;flex-shrink:0;margin-left:auto}
.rpt-xls-info-row{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--fg1);padding:3px 0;gap:8px}
.rpt-xls-info-row span:first-child{color:var(--fg2);flex-shrink:0}
.rpt-xls-info-row span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}
.rpt-xls-area{overflow:hidden;background:#F3F3F3;display:flex;flex-direction:column}
.rpt-xls-topbar{padding:6px 12px;background:#217346;font-size:11px;color:#fff;display:flex;align-items:center;gap:8px;flex-shrink:0}
.rpt-xls-topbar-title{font-size:12px;font-weight:700;flex:1}
.rpt-xls-badge{padding:3px 8px;border-radius:3px;font-size:10px;font-weight:700;flex-shrink:0}
.rpt-xls-badge.data{background:#D6F5E3;color:#146535}
.rpt-xls-badge.missing{background:#FFF3CD;color:#924A00}
.rpt-xls-sheet-tabs{display:flex;background:#EBEBEB;border-bottom:1px solid #C0C0C0;flex-shrink:0;overflow:hidden}
.rpt-xls-stab{padding:6px 13px;font-size:11px;font-weight:600;color:#555;cursor:pointer;border-right:1px solid #C0C0C0;white-space:nowrap;flex-shrink:0}
.rpt-xls-stab.active{background:#fff;color:#217346;border-bottom:2px solid #217346}
.rpt-xls-content{flex:1;overflow:auto;padding:12px;background:#fff}
.rpt-xls-two-col{display:flex;gap:20px}
.rpt-xls-sec{flex-shrink:0}
.rpt-xls-sec-hd{font-size:11px;font-weight:700;color:#111;margin-bottom:5px}
.rpt-xls-tbl{border-collapse:collapse;font-size:11px}
.rpt-xls-tbl td{border:1px solid #D0D7DE;padding:5px 9px;white-space:nowrap}
.rpt-xls-lbl-cell{background:#F5F5F5;color:#444;font-weight:500;min-width:110px}
.rpt-xls-val-cell{min-width:130px;color:#111}
.rpt-xls-val-cell.green-fill{background:#E6F4EA;color:#146535;font-weight:600}
.rpt-xls-val-cell.yellow-fill{background:#FFF9C4;color:#7B5E00}
.rpt-xls-val-cell.link-text{color:#217346;font-weight:600}
.rpt-xls-val-cell.dash{color:#aaa}
.rpt-xls-hd-cell{background:#217346;color:#fff;font-weight:700;text-align:center;font-size:10px;padding:4px 7px}
.rpt-xls-num-cell{background:#F5F5F5;color:#444;text-align:center;min-width:28px;font-weight:500}
.rpt-xls-footer-bar{padding:5px 14px;background:#217346;font-size:11px;color:rgba(255,255,255,.85);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}
.rpt-gen-cursor{position:absolute;pointer-events:none;z-index:20;display:flex;align-items:flex-start;opacity:0;transition:left 550ms cubic-bezier(.32,.72,.4,1),top 550ms cubic-bezier(.32,.72,.4,1),opacity 220ms,transform 160ms;transform-origin:0 0;left:50%;top:60%}
.rpt-gen-cursor.show{opacity:1}
.rpt-gen-cursor.click{transform:scale(.78)}

/* Reason */
.reason-section{background:#fff;border-top:.5px solid var(--border)}
.reason-slide{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:100px 80px}
.reason-slide:nth-child(odd){background:#fff}
.reason-slide:nth-child(even){background:var(--bg2)}
.reason-slide-title{font-size:52px;font-weight:700;letter-spacing:-1.5px;line-height:1.05;color:var(--fg1);text-align:center;margin-bottom:64px;width:100%;max-width:var(--max-w)}
.reason-slide-title .t-muted{color:var(--muted);font-weight:700}
.reason-slide-inner{max-width:var(--max-w);margin:0 auto;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.reason-slide-inner.reverse .reason-text{order:2}
.reason-num{display:none}
.reason-title{font-size:40px;font-weight:700;letter-spacing:-0.03em;line-height:1.15;color:var(--fg1);margin-bottom:20px}
.reason-title .hl{color:#1a9e7c;font-size:48px;font-weight:700;display:block;margin-bottom:6px;opacity:.85;letter-spacing:-0.03em}
.reason-desc{font-size:18px;color:var(--fg2);line-height:1.75}
.reason-visual{background:linear-gradient(135deg,#F8FFFB 0%,#EDFCF6 100%);border:.5px solid var(--border);border-radius:20px;padding:40px;min-height:340px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.reason-visual.alt{background:linear-gradient(135deg,#F0F9FF 0%,#E0F2FE 100%)}
/* Supply chain visual */
.sc-card{background:#fff;border-radius:14px;padding:22px;width:100%;max-width:380px;box-shadow:0 12px 40px rgba(16,98,73,.10)}
.sc-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:.5px solid var(--bg2)}
.sc-row:last-child{border-bottom:none}
.sc-icon{width:30px;height:30px;border-radius:7px;background:var(--green-50);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:12px;font-weight:700;color:var(--green)}
.sc-content{flex:1}
.sc-title{font-size:12px;font-weight:600;color:var(--fg1);margin-bottom:2px}
.sc-desc{font-size:11px;color:var(--fg2)}
.sc-status{font-size:10px;font-weight:700;color:var(--green);background:var(--green-50);padding:2px 8px;border-radius:999px;white-space:nowrap}
/* Custom report templates visual */
.tpl-card{background:#fff;border-radius:14px;padding:22px;width:100%;max-width:380px;box-shadow:0 12px 40px rgba(16,98,73,.10)}
.tpl-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:.5px solid var(--bg2)}
.tpl-row:last-child{border-bottom:none}
.tpl-badge{font-size:10px;font-weight:700;padding:3px 10px;border-radius:5px;white-space:nowrap;flex-shrink:0;width:72px;text-align:center}
.tpl-badge.cbam{background:#DBEAFE;color:#1D4ED8}
.tpl-badge.lca{background:#D1FAE5;color:#065F46}
.tpl-badge.pcf{background:#EDE9FE;color:#6D28D9}
.tpl-badge.cust{background:#FEF3C7;color:#92400E}
.tpl-content{flex:1}
.tpl-name{font-size:12px;font-weight:600;color:var(--fg1)}
.tpl-sub{font-size:11px;color:var(--fg2);margin-top:1px}
.tpl-dl{font-size:10px;font-weight:700;color:var(--green)}
/* Stats */
.stats-banner{padding:80px 80px;background:#fff;border-top:.5px solid var(--border);border-bottom:.5px solid var(--border)}
.stats-inner{max-width:var(--max-w);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr)}
.stat-col{padding:0 40px;border-right:.5px solid var(--border)}
.stat-col:first-child{padding-left:0}
.stat-col:last-child{border-right:none;padding-right:0}
.stat-big{font-size:52px;font-weight:700;letter-spacing:-1.5px;line-height:1;color:var(--fg1)}
.stat-big .g{color:var(--green)}
.stat-lbl{font-size:13px;color:var(--green);font-weight:500;margin-top:6px}
.stat-note{font-size:13px;color:var(--fg2);margin-top:4px;line-height:1.5}
/* CTA */
.cta-banner{position:relative;overflow:hidden;padding:160px 80px;background:#FFFFFF url('/theme/basic/assets/Shadow.png') center center / cover no-repeat}
.cta-banner::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse 460px 280px at 8% 88%,rgba(18,158,123,.10) 0%,transparent 72%),radial-gradient(ellipse 500px 300px at 94% 82%,rgba(118,190,87,.12) 0%,transparent 72%);mix-blend-mode:multiply}
.cta-banner > .cta-inner{position:relative;z-index:1}
.cta-inner{max-width:var(--max-w);margin:0 auto;display:flex;flex-direction:column;align-items:flex-start;gap:40px;position:relative;z-index:1}
.cta-h{font-size:40px;font-weight:700;letter-spacing:-0.03em;line-height:1.15;color:var(--fg1)}
.cta-m{font-size:40px;font-weight:700;letter-spacing:-0.03em;line-height:1.15;color:var(--muted)}
.cta-btn-row{display:flex;gap:14px;align-items:center}
.cta-btn-row .btn-g{background:#fff;font-size:16px;padding:16px 36px;min-width:180px;justify-content:center;border:1px solid var(--green);color:var(--green)}
.cta-btn-row .btn-p{font-size:16px;padding:16px 36px;min-width:180px;justify-content:center}
.cta-btns{display:flex;flex-direction:column;gap:16px;align-items:flex-start}
.cta-primary-row{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-start}
.cta-primary-row .btn-g,.cta-primary-row .btn-p{font-size:15px;padding:14px 28px;min-width:180px;justify-content:center}
.cta-primary-row .btn-g{background:#fff}
.cta-secondary{display:inline-flex;align-items:center;gap:6px;font-size:20px;font-weight:600;color:var(--green);text-decoration:none;padding:10px 4px;transition:gap 180ms;align-self:center;margin-top:16px;}
.cta-secondary:hover{gap:10px}
.cta-secondary .arr{transition:transform 180ms}
.cta-secondary:hover .arr{transform:translateX(2px)}
/* Media */
@media(max-width:1100px){.pain-grid{grid-template-columns:repeat(2,1fr)}.page-hero-grid,.reason-slide-inner{grid-template-columns:1fr;gap:40px}.reason-slide-inner.reverse .reason-text{order:0}.stats-inner{grid-template-columns:repeat(2,1fr);gap:32px}.stat-col{border-right:none;padding:16px 0}.feat-tabs{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:768px){
  .pain-section,.feature-section,.stats-banner{padding:80px 20px}
  .page-hero{
    min-height: calc(100vh + 68px) !important;
    padding: 100px 20px 0px !important;
    overflow:hidden !important;
    box-sizing:border-box !important}
  .reason-slide{padding:60px 20px}
  .cta-banner{padding:40px 20px}
  .h1,.pain-title-head{font-size:36px}
  .sol-title-head{font-size:25px !important}
  .cta-h,.cta-m{font-size:32px;letter-spacing:-0.03em}
  .reason-title{font-size:28px}
  .pain-grid,.feat-tabs{grid-template-columns:1fr}}

/* ── RH HERO REPORT MOCKUP ── */
.rpt-hero-mockup{padding:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;min-height:531px!important;justify-content:flex-start!important;position:relative!important}
.rh-tabs{display:flex;align-items:center;padding:0 14px;height:40px;border-bottom:.5px solid var(--border);flex-shrink:0;gap:0;background:#fff}
.rh-tab{font-size:13px;font-weight:500;color:var(--fg2);padding:0 14px;height:40px;display:flex;align-items:center;border-bottom:2.5px solid transparent;cursor:pointer;white-space:nowrap}
.rh-tab.rh-tab-active{color:var(--green);border-bottom-color:var(--green);font-weight:600}
.rh-spacer{flex:1}
.rh-dl-btn{padding:7px 14px;background:var(--green);color:#fff;border-radius:999px;font-size:11.5px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:5px;flex-shrink:0;transition:transform 120ms,box-shadow 120ms;position:absolute;bottom:12px;right:12px;z-index:10}
.rh-dl-btn.rh-clicked{transform:scale(.93);box-shadow:0 0 0 3px rgba(18,158,123,.25)}
.rh-header{padding:9px 18px;border-bottom:.5px solid var(--border);flex-shrink:0;background:#fff}
.rh-header-title{font-size:14px;font-weight:700;color:var(--fg1)}
.rh-header-sub{font-size:11px;color:var(--fg2);margin-top:2px}
.rh-body{flex:1;display:grid;grid-template-columns:270px 1fr;min-height:0;overflow:hidden;position:relative}
.rh-sidebar{border-right:.5px solid var(--border);display:flex;flex-direction:column;overflow:hidden;background:#fff}
.rh-sb-heading{font-size:15px;font-weight:700;color:var(--fg1);padding:14px 14px 8px;letter-spacing:-.2px;flex-shrink:0;border-bottom:.5px solid var(--border)}
.rh-sb-sub{font-size:10.5px;color:var(--fg2);padding:0 14px 9px;border-bottom:.5px solid var(--border)}
.rh-toc{overflow:hidden;padding:0;flex:1;display:flex;flex-direction:column}
.rh-toc-item{display:flex;align-items:center;gap:7px;padding:0 14px;cursor:pointer;border-left:2.5px solid transparent;transition:background 150ms,border-color 150ms;flex:0 0 12.5%;min-height:0}
.rh-toc-item:hover{background:var(--bg2)}
.rh-toc-item.rh-toc-active{background:var(--green-50)!important;border-left-color:var(--green)}
.rh-toc-num{font-size:11px;font-weight:600;color:var(--fg2);flex-shrink:0;width:20px;line-height:1.3}
.rh-toc-title{font-size:12px;font-weight:600;color:var(--fg1);line-height:1.3;white-space:nowrap}
.rh-toc-sub{font-size:9.5px;color:var(--fg2);line-height:1.35;margin-top:2px}
.rh-toc-item.rh-toc-active .rh-toc-title{color:var(--green)}
.rh-preview{display:flex;flex-direction:column;overflow:hidden;background:#525659}
.rh-ctrl{height:28px;display:flex;align-items:center;gap:7px;padding:0 12px;background:#3a3d40;flex-shrink:0}
.rh-ctrl-icon{color:rgba(255,255,255,.5);cursor:pointer;font-size:13px;line-height:1;user-select:none}
.rh-slider{width:72px;height:3px;background:rgba(255,255,255,.2);border-radius:99px;position:relative;flex-shrink:0}
.rh-slider-thumb{width:11px;height:11px;background:#fff;border-radius:50%;position:absolute;top:-4px;left:calc(50% - 5.5px);box-shadow:0 1px 3px rgba(0,0,0,.4)}
.rh-ctrl-pct{font-size:10.5px;color:rgba(255,255,255,.7);font-variant-numeric:tabular-nums;min-width:28px}
.rh-ctrl-sep{width:.5px;height:14px;background:rgba(255,255,255,.15);margin:0 2px}
.rh-page-wrap{flex:1;overflow-y:auto;display:flex;flex-direction:column;align-items:center;padding:14px 10px 20px;gap:0}
.rh-page{background:#fff;border-radius:2px;box-shadow:0 3px 18px rgba(0,0,0,.5);width:340px;height:481px;overflow:hidden;flex-shrink:0;font-size:8px;color:#111;padding:16px 14px 12px;display:none;transition:opacity 200ms}
.rh-page.rh-page-active{display:block}
.rh-page-company{text-align:center;font-size:8px;font-weight:700;color:#777;margin-bottom:8px;letter-spacing:.08em}
.rh-sec-heading{display:flex;align-items:center;gap:7px;margin-bottom:8px;border-bottom:1.5px solid #129E7B;padding-bottom:5px}
.rh-sec-icon{width:20px;height:20px;background:#129E7B;border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.rh-sec-title{font-size:11px;font-weight:700;color:#1a1a1a;letter-spacing:-.2px}
.rh-note-box{background:#FFFBEB;border:.5px solid #F59E0B;border-radius:4px;padding:6px 8px;margin-bottom:8px;display:flex;gap:6px;align-items:flex-start}
.rh-note-icon{color:#F59E0B;font-size:11px;flex-shrink:0;line-height:1.2;margin-top:1px}
.rh-note-text{font-size:7.5px;color:#78350F;line-height:1.5}
.rh-note-title{font-weight:700;margin-bottom:1px;font-size:5px}
.rh-chart-wrap{margin-bottom:8px;border:.5px solid #F0F0F0;border-radius:3px;padding:4px 4px 2px;background:#FAFAFA}
.rh-chart-legend{display:flex;gap:10px;justify-content:center;padding:4px 0 2px;flex-wrap:wrap}
.rh-legend-item{display:flex;align-items:center;gap:3px;font-size:6.5px;color:#555}
.rh-legend-dot{width:7px;height:7px;border-radius:1px;flex-shrink:0}
.rh-tbl{width:100%;border-collapse:collapse;margin-bottom:5px;font-size:7px}
.rh-tbl th{background:#129E7B;color:#fff;font-weight:700;padding:3.5px 5px;text-align:center;font-size:7px}
.rh-tbl td{border:.5px solid #E5E7EB;padding:2.5px 5px;text-align:right}
.rh-tbl td:first-child{background:#F5F5F5;color:#444;font-weight:600;text-align:left;min-width:72px}
.rh-tbl tr.rh-tbl-sum td{background:#E5F7F2;font-weight:700}
.rh-tbl tr.rh-tbl-sum td:first-child{background:#C8EFE5;color:#0A5C47}
.rh-unit-note{font-size:6.5px;color:#aaa;margin-bottom:7px;text-align:right}
.rh-page-footer{border-top:.5px solid #E5E7EB;padding-top:6px;margin-top:6px;display:flex;align-items:center;justify-content:space-between}
.rh-footer-brand{display:flex;align-items:center;gap:6px;font-size:7px;font-weight:700;color:#999;letter-spacing:.04em}
.rh-footer-pg{font-size:9px;font-weight:700;color:#aaa}
.rh-co-header{font-size:9px;font-weight:700;color:#fff;background:#129E7B;padding:4px 8px;border-radius:2px;margin-bottom:5px;margin-top:2px}
.rh-cat-label{font-size:8px;color:#444;margin-bottom:3px;font-weight:600}
.rh-sub-tbl{width:100%;border-collapse:collapse;margin-bottom:4px;font-size:6.5px}
.rh-sub-tbl th{background:#129E7B;color:#fff;font-weight:700;padding:2.5px 3px;text-align:center}
.rh-sub-tbl td{border:.5px solid #E5E7EB;padding:2px 3px;text-align:right}
.rh-sub-tbl td:first-child{text-align:left;background:#F5F5F5;color:#444;min-width:44px}
.rh-sub-tbl td:nth-child(2){min-width:24px;text-align:center}
.rh-sub-unit{font-size:6px;color:#aaa;text-align:right;margin-bottom:4px}
/* Cursor */
.rh-cursor{position:absolute;pointer-events:none;z-index:50;opacity:0;transition:left 700ms cubic-bezier(.25,.72,.4,1),top 700ms cubic-bezier(.25,.72,.4,1),opacity 250ms,transform 120ms;transform-origin:2px 2px}
.rh-cursor.show{opacity:1}
.rh-cursor.click{transform:scale(.8)}

/* === 솔루션 패널 보고서 상세 뷰 === */
.rpt-detail-screen{position:absolute;inset:0;z-index:8;background:#fff;border-radius:14px;display:flex;flex-direction:column;overflow:hidden;transition:opacity 350ms}
.rpt-detail-screen.exit{opacity:0;pointer-events:none}
.rh-detail-header{padding:10px 14px 8px;border-bottom:.5px solid var(--border);flex-shrink:0}
.rh-detail-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px}
.rh-detail-title-left{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.rh-detail-title{font-size:13.5px;font-weight:700;color:var(--fg1)}
.rh-detail-meta{font-size:10px;color:var(--fg2);display:flex;align-items:center;gap:7px}
.rh-detail-meta-sep{color:var(--border)}
.rh-chip{display:inline-flex;padding:3px 8px;border-radius:4px;font-size:11.5px;font-weight:700;white-space:nowrap}
.rh-chip-green{background:#ECFDF5;color:var(--green);border:.5px solid #A7F3D0}
.rh-chip-yellow{background:#FEF3C7;color:#92400E;border:.5px solid #FDE68A}
.rh-chip-gray{background:var(--bg2);color:var(--fg2);border:.5px solid var(--border)}
.rh-chip-period{background:#F0FDF4;color:var(--green);border:.5px solid #BBF7D0;font-size:11px;font-weight:600;padding:3px 7px;border-radius:4px}
.rh-detail-body{flex:1;display:grid;grid-template-columns:1fr 220px;min-height:0;overflow:hidden}
.rh-detail-left{padding:10px 15px;overflow-y:auto;border-right:.5px solid var(--border)}
.rh-detail-right{padding:12px 14px;overflow-y:auto;background:#FAFBFC}
.rh-detail-row{display:flex;align-items:flex-start;gap:9px;font-size:12.5px;padding:10px 0;border-bottom:.5px solid var(--border)}
.rh-detail-row:last-child{border-bottom:none}
.rh-detail-lbl{color:var(--fg2);width:68px;flex-shrink:0;padding-top:2px;line-height:1.4}
.rh-detail-val{color:var(--fg1);line-height:1.6;flex:1}
.rh-detail-chips{display:flex;flex-wrap:wrap;gap:5px}
.rh-detail-bottom{flex-shrink:0;border-top:.5px solid var(--border);background:#fff}
.rh-summary-header{display:flex;align-items:center;justify-content:space-between;padding:7px 13px;border-bottom:.5px solid var(--border)}
.rh-summary-title{font-size:11.5px;font-weight:700;color:var(--fg1)}
.rh-summary-dropdowns{display:flex;gap:5px}
.rh-dropdown{display:flex;align-items:center;gap:3px;padding:3px 9px;border:.5px solid var(--border);border-radius:5px;font-size:10px;font-weight:600;color:var(--fg1);cursor:pointer;background:#fff}
.rh-summary-scroll{overflow-x:auto}
.rh-summary-tbl{width:100%;border-collapse:collapse;font-size:9.5px}
.rh-summary-tbl th{padding:4px 8px;text-align:right;font-size:9px;color:var(--fg2);font-weight:600;border-bottom:.5px solid var(--border);white-space:nowrap}
.rh-summary-tbl th:first-child{text-align:left;min-width:90px}
.rh-summary-tbl td{padding:3.5px 8px;text-align:right;border-bottom:.5px solid var(--border);color:var(--fg1)}
.rh-summary-tbl td:first-child{text-align:left}
.rh-summary-tbl tr.rh-sum-row td{font-weight:700;background:#F0FDF4;color:#065F46}
.rh-summary-tbl tr.rh-sum-row td:first-child{background:#D1FAE5}
.rh-summary-tbl tr.rh-corp-row td{background:var(--bg2);font-weight:700;font-size:9.5px}
.rh-scope2-badge{display:inline-flex;align-items:center;padding:1px 5px;border-radius:3px;font-size:8px;font-weight:700;margin-left:4px}
.rh-auto-gen-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 11px;background:var(--green);color:#fff;border-radius:6px;font-size:11px;font-weight:700;cursor:pointer;border:none;font-family:var(--font);white-space:nowrap;flex-shrink:0}
.rh-auto-gen-btn:hover{background:var(--green-h)}
.rh-ver-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.rh-ver-title{font-size:13px;font-weight:700;color:var(--fg1)}
.rh-ver-confirm-btn{padding:4px 9px;border:.5px solid var(--border);border-radius:4px;font-size:10.5px;font-weight:600;color:var(--fg1);cursor:pointer;background:#fff;font-family:var(--font);white-space:nowrap}
.rh-ver-counter{display:flex;align-items:center;gap:8px;padding:9px 10px;border:.5px solid var(--border);border-radius:8px;margin-bottom:7px;background:#fff}
.rh-ver-icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:11px;font-weight:700}
.rh-ver-count{font-size:19px;font-weight:700;letter-spacing:-.5px;min-width:20px}
.rh-ver-label{font-size:11px;color:var(--fg2);flex:1}
.rh-ver-progress-wrap{flex:1;height:4px;background:var(--bg2);border-radius:999px;overflow:hidden}
.rh-ver-badge{font-size:10.5px;font-weight:700;padding:2px 6px;border-radius:3px;flex-shrink:0}

.mob-br { display: none; }
@media (max-width: 768px) { .mob-br { display: inline; } }


@media(max-width:768px){.diff-heading-sh{font-size:22px !important;margin-bottom:16px !important}.diff-heading-sm{font-size:22px !important;margin-bottom:32px !important}}

@media(max-width:855px){
  .cta-banner { padding: 80px 40px !important; }
  .cta-inner { align-items: center !important; text-align: center !important; }
  .cta-inner > div:first-child { display: flex !important; flex-direction: column !important; align-items: center !important; width: 100% !important; }
  .cta-inner > div:first-child > div[style] { flex-direction: column !important; align-items: center !important; gap: 12px !important; }
  .cta-h, .cta-m { font-size: 36px !important; text-align: center !important; white-space: normal !important; }
  .cta-secondary, .cta-link { margin-left: 0 !important; margin-top: 0 !important; }
  .cta-btns { align-items: center !important; width: 100% !important; }
  .cta-btn-row { justify-content: center !important; flex-wrap: wrap !important; }
}
@media(max-width:768px){
  .cta-inner { align-items: center !important; text-align: center !important; }
  .cta-inner > div:first-child { display: flex !important; flex-direction: column !important; align-items: center !important; width: 100% !important; }
  .cta-inner > div:first-child > div[style] { justify-content: center !important; }
  .cta-h, .cta-m { text-align: center !important; white-space: normal !important; }
  .cta-secondary, .cta-link { margin-left: 0 !important; margin-top: 0 !important; }
  .cta-btns { align-items: center !important; width: 100% !important; }
  .cta-btn-row { justify-content: center !important; flex-wrap: wrap !important; }
}

/* diff video custom controls */
.diff-vc-wrap{position:relative}
.diff-vc-bar{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;gap:10px;padding:10px 14px;background:linear-gradient(transparent,rgba(0,0,0,.45));opacity:0;transition:opacity 200ms;z-index:10;border-radius:0 0 12px 12px;box-sizing:border-box}
.diff-player-box:hover .diff-vc-bar{opacity:1}
@media(max-width:768px){.diff-player-box .diff-vc-bar{opacity:1 !important}}
.diff-vc-btn{width:30px;height:30px;border:none;background:rgba(255,255,255,.2);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;backdrop-filter:blur(4px);transition:background 150ms}
.diff-vc-btn:hover{background:rgba(255,255,255,.35)}
.diff-vc-btn svg{display:block}
.diff-vc-scrubber{flex:1;height:4px;appearance:none;background:rgba(255,255,255,.3);border-radius:999px;cursor:pointer;outline:none}
.diff-vc-scrubber::-webkit-slider-thumb{appearance:none;width:12px;height:12px;border-radius:50%;background:#fff;cursor:pointer;margin-top:-4px}
.diff-vc-scrubber::-webkit-slider-runnable-track{height:4px;border-radius:999px}
.diff-vc-time{font-size:11px;color:rgba(255,255,255,.8);white-space:nowrap;min-width:60px;text-align:right}

/* ── CTA 팝업 ── */
.diff-cta-popup{position:fixed;bottom:32px;left:50%;transform:translateX(-50%);z-index:999;opacity:0;transition:opacity 500ms ease;pointer-events:none}
.diff-cta-popup.visible{opacity:1;pointer-events:auto}
.diff-cta-btn{display:inline-flex;align-items:center;gap:8px;background:var(--green);color:#fff;font-size:15px;font-weight:700;padding:14px 28px;border-radius:999px;text-decoration:none;transition:background 150ms,box-shadow 150ms;box-shadow:0 4px 20px rgba(18,158,123,0.4);white-space:nowrap}
.diff-cta-btn:hover{background:var(--green-h);box-shadow:0 6px 28px rgba(18,158,123,0.5)}
@media(max-width:640px){.diff-cta-popup{bottom:20px;max-width:calc(100vw - 32px);width:max-content}.diff-cta-btn{font-size:clamp(11px,3.2vw,13px);padding:10px 16px;white-space:nowrap;gap:6px;max-width:100%;box-sizing:border-box}}
@media(max-width:855px){.page-hero{min-height:calc(100vh - 68px) !important}.page-hero .h1{font-size:28px !important;letter-spacing:-0.6px !important;line-height:1.2 !important}.page-hero .lead{font-size:14px !important;margin-top:14px !important;line-height:1.6 !important}}
@media(max-width:855px){
  .pain-section { padding: 80px 80px !important; min-height: auto !important; }
  .pain-eyebrow { font-size: 14px !important; margin-bottom: 12px !important; }
  .pain-title { font-size: 14px !important; line-height: 1.4 !important; margin-bottom: 6px !important; }
  .pain-desc { font-size: 14px !important; line-height: 1.4 !important; }
  .pain-grid { grid-template-columns: 1fr 1fr !important; grid-auto-rows: 1fr !important; align-items: stretch !important; gap: 10px !important; }
  .pain-grid .pain-card:last-child:nth-child(odd) { grid-column: 1 / -1 !important; }
  .pain-card { min-height: auto !important; padding: 16px 14px !important; display: flex !important; flex-direction: column !important; }
  .pain-card-icon { width: 36px !important; height: 36px !important; }
  .pain-card-body { flex: 1; }
  .pain-card-title { font-size: 13px !important; line-height: 1.3 !important; }
  .pain-card-desc { font-size: 11px !important; line-height: 1.4 !important; margin-top: 6px !important; }
}

/* diff-zz 전체화면 버튼 */
.diff-zz-fs-btn{position:absolute;bottom:10px;right:10px;z-index:25;width:36px;height:36px;background:rgba(0,0,0,0.5);border:none;border-radius:6px;cursor:pointer;display:none;align-items:center;justify-content:center;transition:opacity 200ms;backdrop-filter:blur(4px)}
@media(max-width:768px){.diff-zz-fs-btn{display:flex}}
.diff-zz-fs-btn svg{display:block}
@media(max-width:768px){.pain-grid{grid-template-columns:1fr !important;gap:12px !important}.pain-card{text-align:left !important;align-items:flex-start !important;min-height:auto !important}}

/* ── DIFF VIDEO SECTION ── */
.diff-section{background:var(--bg2);padding:100px 0;border-top:.5px solid var(--border);border-bottom:.5px solid var(--border)}
.diff-inner{max-width:var(--max-w);margin:0 auto;padding:0 80px}
@media(max-width:1280px){.diff-inner{padding:0 40px !important}}
.diff-heading-sh{font-size:52px;font-weight:700;line-height:1.15;color:var(--green);text-align:center;margin-bottom:56px}
@media(max-width:855px){.diff-heading-sh,.diff-heading-sm,.sol-title-head{font-size:35px !important;margin-bottom:28px !important}}
.diff-heading-sm{font-size:52px;font-weight:700;line-height:1.15;color:var(--muted);text-align:center;margin-bottom:0}
/* ── 지그재그 레이아웃 ── */
.diff-zz-list { display: flex; flex-direction: column; gap: 150px; margin-top: 80px; }
.diff-zz-row { display: grid; grid-template-columns: 1fr 1.4fr; gap: 60px; align-items: center; }
.diff-zz-row--reverse { grid-template-columns: 1.4fr 1fr; }
.diff-zz-row--reverse .diff-player-box { order: -1; }
.diff-zz-row:not(.diff-zz-row--reverse) .diff-zz-text { text-align: right; }
.diff-zz-text { min-width: 0; }
.diff-zz-eyebrow { font-size: 13px; font-weight: 700; color: var(--green); letter-spacing: 0.06em; margin-bottom: 14px; }
.diff-zz-title { font-size: 32px; font-weight: 800; color: var(--fg1); letter-spacing: -0.8px; line-height: 1.25; margin-bottom: 18px; }
.diff-zz-img { max-width: 200px; width: 55%; margin-top: 20px; border-radius: 12px; display: block; }
.diff-zz-desc { font-size: 20px; color: var(--fg2); line-height: 1.7; font-weight: 500; }
.diff-player-box { background: #fff; border: none !important; outline: none !important; box-shadow: none !important; overflow: hidden; border-radius: 20px; position: relative; aspect-ratio: 16/9; height: auto !important; align-self: center; }
.diff-player-box video, .diff-player-box iframe { position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; object-fit: cover !important; background: #fff !important; border: 0 !important; outline: 0 !important; box-shadow: none !important; transform: scale(1.06) !important; transform-origin: center bottom !important; }
@media (max-width: 855px) {
  .diff-zz-list { gap: 60px; margin-top: 40px; }
  .diff-zz-row, .diff-zz-row--reverse { grid-template-columns: 1fr !important; gap: 28px !important; }
  .diff-zz-row--reverse .diff-player-box { order: 0 !important; }
  .diff-zz-row:not(.diff-zz-row--reverse) .diff-zz-text { text-align: left !important; }
  .diff-zz-title { font-size: 22px !important; letter-spacing: -0.4px !important; margin-bottom: 12px !important; }
  .diff-zz-desc { font-size: 15px !important; line-height: 1.6 !important; }
  .diff-zz-eyebrow { font-size: 11px !important; margin-bottom: 10px !important; }
  .diff-player-box { height: auto !important; aspect-ratio: 16/9 !important; }
}
@media (max-width: 768px) {
  .diff-zz-list { gap: 60px; margin-top: 40px; }
  .diff-zz-row, .diff-zz-row--reverse { grid-template-columns: 1fr !important; gap: 28px !important; }
  .diff-zz-row--reverse .diff-player-box { order: 0 !important; }
  .diff-zz-row:not(.diff-zz-row--reverse) .diff-zz-text { text-align: left !important; }
  .diff-zz-title { font-size: 22px !important; letter-spacing: -0.4px !important; margin-bottom: 12px !important; }
  .diff-zz-desc { font-size: 15px !important; line-height: 1.6 !important; }
  .diff-zz-eyebrow { font-size: 11px !important; margin-bottom: 10px !important; }
}
.diff-layout{display:block}
.diff-main{display:flex;flex-direction:column;gap:16px}
.diff-text-card{background:#fff;border:.5px solid var(--border);border-radius:20px;padding:22px 32px;flex-shrink:0}
.diff-tag{display:none}
.diff-big-title{font-size:34px;font-weight:700;letter-spacing:-0.03em;line-height:1.15;color:var(--fg1);margin-bottom:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:1.2em}
.diff-hl{color:var(--green);display:inline;font-size:40px;letter-spacing:-1.2px;margin-left:6px;font-weight:800}
.diff-big-desc{font-size:16px;color:var(--fg2);line-height:1.7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:3.4em}
.mb-br{display:none}
.diff-player-box{border-radius:20px;overflow:hidden;background:#fff;position:relative;}
@media(max-width:768px){.diff-player-box{flex:none;width:100%;min-height:0;aspect-ratio:16/9;position:relative}.diff-player-box iframe,.diff-player-box video{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;object-fit:cover !important;display:block !important}}
.diff-player-box iframe,.diff-player-box video{position:absolute;inset:0;width:100%;height:100%;border:none;display:block}
.diff-empty-player{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:rgba(255,255,255,.3);font-size:14px;text-align:center;position:absolute;inset:0}
.diff-empty-player p{margin:0;line-height:1.6}
.diff-thumb-list{display:grid;grid-template-rows:repeat(1,1fr);gap:10px}
.diff-thumb-item{background:#fff;border:1.5px solid var(--border);border-radius:16px;overflow:hidden;cursor:pointer;transition:border-color 200ms,box-shadow 200ms,transform 180ms;display:grid;grid-template-columns:1fr 1fr;align-items:stretch}
.diff-thumb-item:hover{border-color:rgba(18,158,123,.4);transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.07)}
.diff-thumb-item.active{border-color:var(--green);box-shadow:0 0 0 3px rgba(18,158,123,.1)}
.diff-thumb-video-area{background:#F0F4F8;display:flex;align-items:center;justify-content:center;position:relative}
.diff-thumb-item.active .diff-thumb-video-area{background:rgba(18,158,123,.08)}
.diff-play-btn{width:36px;height:36px;border-radius:50%;background:var(--green);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform 180ms}
.diff-thumb-item:hover .diff-play-btn{transform:scale(1.1)}
.diff-idx-badge{position:absolute;top:8px;left:8px;font-size:10px;font-weight:800;color:var(--fg2);background:rgba(255,255,255,.9);padding:2px 7px;border-radius:999px;line-height:1.5}
.diff-thumb-item.active .diff-idx-badge{background:var(--green);color:#fff}
.diff-thumb-meta{padding:14px 16px;display:flex;flex-direction:column;justify-content:center;gap:5px}
.diff-thumb-title{font-size:17px;font-weight:700;color:var(--fg1);line-height:1.35;letter-spacing:-.2px}
.diff-thumb-sub{font-size:14px;color:var(--fg2);line-height:1.4}
@media(max-width:1100px){.diff-layout{grid-template-columns:1fr}.diff-thumb-list{grid-template-rows:auto!important;grid-template-columns:repeat(2,1fr)}}
@media(max-width:768px){.diff-section{padding:80px 20px}.diff-heading{font-size:36px;margin-bottom:40px}.diff-thumb-list{grid-template-columns:1fr}.diff-big-title{font-size:26px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.4em}.diff-big-desc{font-size:13px}.mb-br{display:inline}.diff-hl{font-size:30px}.diff-text-card{padding:18px 22px}}
@media(max-width:768px){.diff-big-title{line-height:1.15!important;word-break:keep-all!important;text-align:left!important}.diff-big-title .diff-hl{margin-left:0!important}.diff-big-desc{text-align:left!important}.diff-text-card{box-sizing:border-box!important;max-width:100%!important}.diff-text-card .diff-big-desc{line-height:1.6!important}}

/* === Mobile common fixes (append-only) === */
@media (max-width: 1024px) {
  html, body { overflow-x: hidden; max-width: 100vw; }
  img, svg, video, canvas { max-width: 100%; height: auto; }
  h1, h2, h3, .h1, .h2, .h3, .page-hero .h1, .hero-title { white-space: normal; word-break: keep-all; }
}


/* === CTA 섹션 모바일 중앙정렬 + Pain 2열 (solution 공통) === */
@media (max-width: 855px) {
  .cta-banner { text-align: center !important; padding: 40px 20px !important; }
  .cta-inner { align-items: center !important; gap: 24px !important; }
  .cta-inner > div:first-child { width: 100%; }
  .cta-h, .cta-m { font-size: 26px !important; letter-spacing: -0.6px !important; line-height: 1.25 !important; }
  .cta-h, .cta-m { text-align: center !important; white-space: normal !important; }
  .cta-inner > div:first-child { align-items: center !important; justify-content: center !important; display: flex !important; flex-direction: column !important; width: 100% !important; }
  .cta-secondary, .cta-link { margin-left: 0 !important; margin-top: 0 !important; align-self: center !important; }
  .cta-btns { align-items: center !important; width: 100%; }
  .cta-primary-row { justify-content: center !important; width: 100%; flex-wrap: nowrap !important; gap: 8px !important; }
  .cta-primary-row .btn-g, .cta-primary-row .btn-p {
    flex: 1 !important; min-width: 0 !important;
    padding: 12px 12px !important; font-size: 13px !important;
  }
  .cta-secondary { align-self: center !important; font-size: 13px !important; }

  /* Pain section — data 페이지 기준 (min-height 100vh 제거 + 폰트/padding 동일) */
  .pain-section { padding: 80px 20px !important; min-height: auto !important; }
  .pain-grid { grid-template-columns: 1fr !important; gap: 12px !important; }
  .pain-card { min-height: auto !important; text-align: left !important; align-items: flex-start !important; }
  .pain-title-head { font-size: clamp(22px, 6vw, 28px) !important; letter-spacing: 0.01em !important; line-height: 1.2 !important; }
  .pain-eyebrow { font-size: 14px !important; margin-bottom: 12px !important; }
  .pain-title { font-size: 14px !important; line-height: 1.4 !important;  }
  .pain-desc { font-size: 14px !important; line-height: 1.4 !important; }

  /* Pain points 2x2 */
  .pain-grid { grid-template-columns: 1fr 1fr !important; gap: 10px !important; }

  /* pain-card 홀수개일 때 마지막 카드 전체 폭으로 채움 (3개 → 2x2 마지막 빈칸 방지) */
  .pain-grid .pain-card:last-child:nth-child(odd) {
    grid-column: 1 / -1 !important;
  }

  .pain-card { min-height: auto !important; padding: 16px 14px !important; }
  .pain-card-icon { width: 36px !important; height: 36px !important; }
  .pain-card-icon svg { width: 18px !important; height: 18px !important; }
  /* 서브 텍스트: 폰트 사이즈 데스크톱(13px) 그대로. 2줄 min-height */
  .pain-card-desc, .pain-desc {
    line-height: 1.6 !important;
    min-height: calc(2 * 1.6em) !important;
    word-break: keep-all !important;
  }
  /* 4번째 카드만 — 텍스트 길어서 3줄로 넘치므로 자간만 좁혀 2줄에 맞춤 (폰트 그대로) */
  .pain-grid .pain-card:nth-child(4) .pain-desc,
  .pain-grid .pain-card:nth-child(4) .pain-card-desc {
    letter-spacing: 0.01em !important;
  }
}


/* === Solution 공통: hero 모바일 (data 페이지 기준 동일) === */
@media (max-width: 855px) {
  .page-hero {
    padding: 40px 20px !important;
    min-height: 100vh !important;
    align-items: center !important;
    text-align: center !important;
  }
  .page-hero-grid {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }
  .page-hero-left {
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }
  .page-hero-left .h1,
  .page-hero-left .lead { text-align: center !important; }
  /* 헤더 폰트 축소 (어색 줄바꿈/잘림 방지) */
  .page-hero .h1 {
    font-size: 28px !important;
    letter-spacing: -0.6px !important;
    line-height: 1.2 !important;
    margin-top: 0 !important;
  }
  .page-hero .lead {
    font-size: 14px !important;
    margin-top: 14px !important;
    line-height: 1.5 !important;
  }
}

@media (max-width: 855px) {
  .hero-visual {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 60vh !important;
    max-height: 60vh !important;
    overflow: hidden !important;
    align-items: flex-start !important;
    /* margin-top: -30px !important; */
  }

  /* rh-body: grid 2열 → flex 1열 (상단 sidebar, 하단 preview) */
  .rh-body {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: 1fr !important;
    overflow: hidden !important;
    height: 100% !important;
    position: relative !important;
  }
  /* sidebar (보고서 구성요소) — 컴팩트 헤더만 항상 노출 */
  .rh-sidebar {
    flex: 0 0 auto !important;
    border-right: none !important;
    border-bottom: .5px solid var(--border) !important;
    overflow: visible !important;
    cursor: pointer !important;
    position: relative !important;
    z-index: 5 !important;
    background: #fff !important;
  }
  .rh-sb-heading {
    padding: 12px 38px 12px 14px !important;
    font-size: 13px !important;
    border-bottom: none !important;
    position: relative !important;
  }
  /* 우측 chevron 화살표 — 펼침/접힘 시각 표시 */
  .rh-sb-heading::after {
    content: "▾";
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--fg2);
    font-size: 11px;
    transition: transform 260ms ease;
  }
  .rh-sidebar.rh-expanded .rh-sb-heading::after {
    transform: translateY(-50%) rotate(180deg);
  }
  .rh-sb-sub { display: none !important; }
  /* TOC: 드랍다운 오버레이 — A4 페이지/버튼 위로 항상 떠 보이게 최상위 z-index */
  .rh-toc {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    background: #fff !important;
    z-index: 100 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 320ms cubic-bezier(.34,1.2,.64,1) !important;
    box-shadow: 0 10px 28px rgba(0,0,0,0.14) !important;
    border-top: .5px solid var(--border) !important;
    padding: 0 !important;
    flex: none !important;
  }
  /* sidebar 자체도 dropdown 오버레이가 page/button 위로 노출되게 z-index */
  .rpt-hero-mockup .rh-sidebar { z-index: 50 !important; }
  .rh-sidebar.rh-expanded .rh-toc {
    max-height: 220px !important;  /* 약 4개 항목만 한번에 노출 (스크롤 가능) */
    overflow-y: auto !important;
    scroll-behavior: smooth !important;
  }
  .rh-toc-item {
    flex: 0 0 auto !important;
    padding: 7px 12px !important;
    gap: 4px !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    text-align: left !important;
  }
  .rh-toc-num {
    font-size: 10.5px !important;
    width: auto !important;
    min-width: 0 !important;
    flex-shrink: 0 !important;
    padding-top: 1px !important;
  }
  .rh-toc-item > div:not(.rh-toc-num) {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    text-align: left !important;
  }
  .rh-toc-title {
    font-size: 11px !important;
    white-space: normal !important;
    word-break: keep-all !important;
    line-height: 1.3 !important;
    text-align: left !important;
  }
  .rh-toc-sub {
    font-size: 9.5px !important;
    line-height: 1.3 !important;
    margin-top: 1px !important;
    text-align: left !important;
  }

  /* preview (보고서 미리보기) — 남는 공간 채움 */
  .rh-preview {
    flex: 1 !important;
    overflow: hidden !important;
  }
  .rh-page-wrap {
    padding: 44px 10px 10px !important;  /* 상단 여유 확보 → 우상단 다운로드 버튼이 페이지를 덮지 않음 */
    height: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    align-items: flex-start !important;
    justify-content: center !important;
  }
  /* A4 비율 (1:1.414) 강제 적용 */
  .rh-page {
    width: 100% !important;
    max-width: 100% !important;
    aspect-ratio: 1 / 1.414 !important;
    height: auto !important;
    margin: 0 auto !important;
  }
  /* 다운로드 버튼 — A4 페이지 바로 위 (드랍다운/슬라이더 컨트롤바 아래) */
  .rh-dl-btn {
    top: 88px !important;  /* 드랍다운 헤더(~46px) + ctrl 바(~28px) + 여유 */
    right: 12px !important;
    bottom: auto !important;
    left: auto !important;
    font-size: 10.5px !important;
    font-weight: 700 !important;
    padding: 7px 13px !important;
    background: var(--green) !important;
    color: #fff !important;
    border-radius: 999px !important;
    box-shadow: 0 6px 18px rgba(18,158,123,.40), 0 2px 6px rgba(0,0,0,.18) !important;
    z-index: 25 !important;
  }
}


/* === Feature 카드↔애니메이션 인터리브 (모바일, solution-data 패턴 동일) === */
@media (max-width: 1280px) {
  .feature-section { padding: 80px 40px !important; }
  .sol-title-head, .feature-section h2 { font-size: 36px !important; letter-spacing: -0.6px !important; line-height: 1.2 !important; margin-bottom: 28px !important; }

  .feature-inner { display: flex !important; flex-direction: column !important; gap: 0 !important; }
  .feat-tabs, .feat-dashboard { display: contents !important; }
  /* solution-report: DOM 순서가 tab 과 panel 이 달라 data-panel 속성으로 명시 매칭 */
  .feat-tabs .feat-tab[data-panel="assumptions"]   { order: 2; }
  .feat-dashboard .feat-panel[data-panel="assumptions"] { order: 3; }
  .feat-tabs .feat-tab[data-panel="verify-link"]   { order: 4; }
  .feat-dashboard .feat-panel[data-panel="verify-link"] { order: 5; }
  .feat-tabs .feat-tab[data-panel="report"]        { order: 6; }
  .feat-dashboard .feat-panel[data-panel="report"] { order: 7; }
  .sol-eyebrow, .sol-title-head { order: 1; }

  /* feat-tab — 단일 카드의 헤더 */
  .feat-tab {
    padding: 16px 18px 12px !important;
    margin: 28px 0 0 0 !important;
    border-radius: 14px 14px 0 0 !important;
    background: #FAFBFC !important;
    border: 1px solid var(--border) !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px 12px !important;
    cursor: default !important;
    text-align: left !important;
  }
  .feat-tabs .feat-tab:nth-child(1) { margin-top: 12px !important; }
  .feat-tab.active {
    background: #FAFBFC !important;
    border: 1px solid var(--border) !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
  }
  .feat-tab-icon {
    width: 38px !important; height: 38px !important;
    background: #fff !important;
    border: 0.5px solid var(--border) !important;
    border-radius: 9px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0;
    margin: 0 !important;
  }
  .feat-tab.active .feat-tab-icon { background: #fff !important; }
  .feat-tab.active .feat-tab-icon svg { stroke: var(--green) !important; }
  .feat-tab-icon svg { width: 18px !important; height: 18px !important; }
  .feat-tab-title { font-size: 17px !important; font-weight: 700 !important; line-height: 1.25 !important; margin: 0 0 2px 0 !important; }
  .feat-tab-desc { font-size: 13.5px !important; line-height: 1.35 !important; color: var(--fg2); margin: 0 !important; }
  .feat-tab > .feat-tab-icon { flex-shrink: 0 !important; align-self: center !important; }
  .feat-tab > .feat-tab-title { flex: 1 !important; min-width: 0 !important; margin: 0 !important; }
  .feat-tab > .feat-tab-desc { width: 100% !important; margin: 4px 0 0 0 !important; padding-left: 50px !important; }


  /* feat-panel — 단일 카드의 본문 */
  .feat-panel {
    opacity: 1 !important;
    visibility: visible !important;
    display: flex !important;
    flex-direction: column !important;
    background: #FAFBFC !important;
    border: 1px solid var(--border) !important;
    border-top: 0 !important;
    border-radius: 0 0 14px 14px !important;
    padding: 12px 16px 16px !important;
    height: auto !important;
    margin: 0 !important;
    position: relative !important;
    animation: none !important;
  }
  .feat-dashboard { height: auto !important; padding: 0 !important; background: transparent !important; border: none !important; }

  /* Panel 2: verify-link — 769~1280px 카드 UI */
  .feat-panel[data-panel="verify-link"] .feat-panel-body { overflow: visible !important; }
  .feat-panel[data-panel="verify-link"] .feat-panel-body > div { height: auto !important; overflow: visible !important; }
  .feat-panel[data-panel="verify-link"] .pc-stage-topbar { display: none !important; }
  .feat-panel[data-panel="verify-link"] .feat-panel-body > div > div:nth-child(2) { flex-wrap: wrap !important; padding: 8px 10px !important; gap: 6px !important; }
  .feat-panel[data-panel="verify-link"] .ver-tbl-wrap { overflow: visible !important; padding: 8px !important; gap: 8px !important; background: #FAFBFC !important; }
  .feat-panel[data-panel="verify-link"] .ver-tbl-hdr { display: none !important; }
  .feat-panel[data-panel="verify-link"] .ver-tbl-row {
    display: grid !important;
    grid-template-columns: auto 1fr auto !important;
    grid-template-areas: "title title button" "corp author button" "scope org button" "tag tag button" "cdate mdate button" !important;
    column-gap: 0 !important; row-gap: 5px !important;
    padding: 14px !important; border: 0.5px solid var(--border) !important; border-radius: 10px !important;
    background: #fff !important; height: auto !important; flex: none !important; align-items: center !important; width: 100% !important;
  }
  .feat-panel[data-panel="verify-link"] .ver-tbl-row > div:last-child { grid-area: button !important; align-self: center !important; justify-self: end !important; margin-left: 12px !important; text-align: right !important; }
  .feat-panel[data-panel="verify-link"] .ver-tbl-row > div:last-child > div { white-space: nowrap !important; padding: 8px 12px !important; font-size: 11px !important; }
  .feat-panel[data-panel="verify-link"] .ver-tbl-wrap > .ver-tbl-row:nth-child(n+6) { display: none !important; }
  .feat-panel[data-panel="verify-link"] .ver-tbl-row > div:nth-child(1) { grid-area: title !important; display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 6px !important; min-width: 0 !important; }
  .feat-panel[data-panel="verify-link"] .ver-tbl-row > div:nth-child(1) > div:nth-child(1) { white-space: normal !important; overflow: visible !important; font-size: 13px !important; line-height: 1.3 !important; font-weight: 700 !important; }
  .feat-panel[data-panel="verify-link"] .ver-tbl-row > div:nth-child(1) > div:nth-child(2) { display: none !important; }
  .feat-panel[data-panel="verify-link"] .ver-tbl-row > div:nth-child(2) { grid-area: corp !important; font-size: 11.5px !important; font-weight: 600 !important; color: var(--fg1) !important; }
  .feat-panel[data-panel="verify-link"] .ver-tbl-row > div:nth-child(5) { grid-area: author !important; font-size: 11.5px !important; color: var(--fg1) !important; }
  .feat-panel[data-panel="verify-link"] .ver-tbl-row > div:nth-child(5)::before { content: none !important; }
  .feat-panel[data-panel="verify-link"] .ver-tbl-row > div:nth-child(3) { grid-area: scope !important; font-size: 11px !important; color: var(--fg2) !important; }
  .feat-panel[data-panel="verify-link"] .ver-tbl-row > div:nth-child(6) { grid-area: org !important; font-size: 11px !important; color: var(--fg2) !important; }
  .feat-panel[data-panel="verify-link"] .ver-tbl-row > div:nth-child(6)::before { content: none !important; }
  .feat-panel[data-panel="verify-link"] .ver-tbl-row > div:nth-child(4) { grid-area: tag !important; }
  .feat-panel[data-panel="verify-link"] .ver-tbl-row > div:nth-child(7) { grid-area: cdate !important; font-size: 10px !important; color: var(--fg2) !important; }
  .feat-panel[data-panel="verify-link"] .ver-tbl-row > div:nth-child(7)::before { content: "생성 "; }
  .feat-panel[data-panel="verify-link"] .ver-tbl-row > div:nth-child(7)::after { content: " · "; }
  .feat-panel[data-panel="verify-link"] .ver-tbl-row > div:nth-child(8) { grid-area: mdate !important; font-size: 10px !important; color: var(--fg2) !important; }
  .feat-panel[data-panel="verify-link"] .ver-tbl-row > div:nth-child(8)::before { content: "수정 "; }

  /* Panel 3: 보고서 자동 생성 — 769~1280px 구간 override */
  .feat-panel[data-panel="report"] { height: auto !important; }
  .feat-panel[data-panel="report"] .feat-panel-body,
  .feat-panel[data-panel="report"] .rpt-outer { height: 532px !important; flex: none !important; overflow: hidden !important; position: relative !important; max-width: 100% !important; }
  .feat-panel[data-panel="report"] .rpt-modal, #rptModal { display: none !important; }
}
@media (max-width: 768px) {
  .feature-section { padding: 80px 20px !important; }
  .sol-title-head, .feature-section h2 { font-size: 25px !important; letter-spacing: -0.6px !important; line-height: 1.2 !important; margin-bottom: 28px !important; }

  .feature-inner { display: flex !important; flex-direction: column !important; gap: 0 !important; }
  .feat-tabs, .feat-dashboard { display: contents !important; }
  /* solution-report: DOM 순서가 tab 과 panel 이 달라 data-panel 속성으로 명시 매칭 */
  .feat-tabs .feat-tab[data-panel="assumptions"]   { order: 2; }
  .feat-dashboard .feat-panel[data-panel="assumptions"] { order: 3; }
  .feat-tabs .feat-tab[data-panel="verify-link"]   { order: 4; }
  .feat-dashboard .feat-panel[data-panel="verify-link"] { order: 5; }
  .feat-tabs .feat-tab[data-panel="report"]        { order: 6; }
  .feat-dashboard .feat-panel[data-panel="report"] { order: 7; }
  .sol-eyebrow, .sol-title-head { order: 1; }

  /* feat-tab — 단일 카드의 헤더 */
  .feat-tab {
    padding: 16px 18px 12px !important;
    margin: 28px 0 0 0 !important;
    border-radius: 14px 14px 0 0 !important;
    background: #FAFBFC !important;
    border: 1px solid var(--border) !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px 12px !important;
    cursor: default !important;
    text-align: left !important;
  }
  .feat-tabs .feat-tab:nth-child(1) { margin-top: 12px !important; }
  .feat-tab.active {
    background: #FAFBFC !important;
    border: 1px solid var(--border) !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
  }
  .feat-tab-icon {
    width: 38px !important; height: 38px !important;
    background: #fff !important;
    border: 0.5px solid var(--border) !important;
    border-radius: 9px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0;
    margin: 0 !important;
  }
  .feat-tab.active .feat-tab-icon { background: #fff !important; }
  .feat-tab.active .feat-tab-icon svg { stroke: var(--green) !important; }
  .feat-tab-icon svg { width: 18px !important; height: 18px !important; }
  .feat-tab-title { font-size: 17px !important; font-weight: 700 !important; line-height: 1.25 !important; margin: 0 0 2px 0 !important; }
  .feat-tab-desc { font-size: 13.5px !important; line-height: 1.35 !important; color: var(--fg2); margin: 0 !important; }
  .feat-tab > .feat-tab-icon { flex-shrink: 0 !important; align-self: center !important; }
  .feat-tab > .feat-tab-title { flex: 1 !important; min-width: 0 !important; margin: 0 !important; }
  .feat-tab > .feat-tab-desc { width: 100% !important; margin: 4px 0 0 0 !important; padding-left: 50px !important; }


  /* feat-panel — 단일 카드의 본문 */
  .feat-panel {
    opacity: 1 !important;
    visibility: visible !important;
    display: flex !important;
    flex-direction: column !important;
    background: #FAFBFC !important;
    border: 1px solid var(--border) !important;
    border-top: 0 !important;
    border-radius: 0 0 14px 14px !important;
    padding: 12px 16px 16px !important;
    height: auto !important;
    margin: 0 !important;
    position: relative !important;
    animation: none !important;
  }
  .feat-dashboard { height: auto !important; padding: 0 !important; background: transparent !important; border: none !important; }
}

/* === solution-report: 패널별 모바일 상세 (cursor sync / 테이블 카드화 / overflow) === */
@media (max-width: 768px) {
  /* 패널 내부 자동 커서들은 모바일에서 숨김 (좌표 계산 어긋남 방지)
     단, hero mockup 의 rh-cursor 는 dropdown 시퀀스용으로 유지 */
  .asmp-cursor, #asmpCursor,
  .feat-panel .rh-cursor, #rmCursor { display: none !important; }

  /* ===== Panel 1: 가정 및 제한사항 ===== */
  /* asmp-ver-list 위치는 JS 가 trigger 버튼 기준 inline style 로 설정.
     데스크톱 하드코딩 top:148px/left:138px 을 unset 으로 무효화 (!important 없이 → JS inline 이 적용됨) */
  .asmp-ver-list {
    position: absolute !important;
    top: unset;
    left: unset;
    margin-top: 0 !important;
    min-width: 180px !important;
  }
  .asmp-ver-row { flex-wrap: wrap !important; padding: 10px !important; gap: 8px !important; position: relative !important; }
  .asmp-ver-dropdown { min-width: 0 !important; flex: 1 !important; font-size: 12px !important; padding: 6px 10px !important; }
  .asmp-yr-dropdown { min-width: 0 !important; font-size: 12px !important; padding: 6px 10px !important; }
  .asmp-year-lbl { font-size: 11px !important; }

  /* ===== Panel 2: 보고서로 검증까지 연결 — 테이블을 카드 UI 로 변환 ===== */
  .feat-panel[data-panel="verify-link"] .feat-panel-body { overflow: visible !important; }
  .feat-panel[data-panel="verify-link"] .pc-stage-topbar { display: none !important; }
  /* 필터바 컴팩트 */
  .feat-panel[data-panel="verify-link"] .feat-panel-body > div > div:nth-child(2) {
    flex-wrap: wrap !important;
    padding: 8px 10px !important;
    gap: 6px !important;
  }
  /* 테이블 컨테이너 — 카드들 stack */
  .ver-tbl-wrap {
    overflow: visible !important;
    padding: 8px !important;
    gap: 8px !important;
    background: #FAFBFC !important;
  }
  /* 헤더 행 숨김 */
  .ver-tbl-hdr { display: none !important; }
  /* 데이터 행 → 카드 UI: title 셀에 status chip 이 inline 으로 들어간다 (JS 가 DOM 이동)
     grid 는 단순화: 좌측 content + 우측 button 만. corp+author 는 col 1+col 2 로 가로 정렬 */
  .ver-tbl-row {
    display: grid !important;
    grid-template-columns: auto 1fr auto !important;
    grid-template-areas:
      "title  title  button"
      "corp   author button"
      "scope  org    button"
      "tag    tag    button"
      "cdate  mdate  button" !important;
    column-gap: 0 !important;
    row-gap: 5px !important;
    padding: 14px 14px !important;
    border: 0.5px solid var(--border) !important;
    border-radius: 10px !important;
    background: #fff !important;
    height: auto !important;
    flex: none !important;
    align-items: center !important;
    width: 100% !important;
  }
  /* 검증신청 버튼: 우측 끝 */
  .ver-tbl-row > div:last-child {
    grid-area: button !important;
    align-self: center !important;
    justify-self: end !important;
    margin-left: 12px !important;
    text-align: right !important;
  }
  .ver-tbl-row > div:last-child > div {
    white-space: nowrap !important;
    padding: 8px 12px !important;
    font-size: 11px !important;
  }
  /* 보고서 목록 4개만 노출 — 5,6번째 카드 숨김 */
  .ver-tbl-wrap > .ver-tbl-row:nth-child(n+6) { display: none !important; }
  /* 제목 셀: title + status chip 을 가로 flex 로 inline 배치 */
  .ver-tbl-row > div:nth-child(1) {
    grid-area: title !important;
    min-width: 0 !important;
    align-self: center !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 6px !important;
  }
  .ver-tbl-row > div:nth-child(1) > div:nth-child(1) {
    white-space: normal !important;
    overflow: visible !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
    font-weight: 700 !important;
  }
  /* 부제목 (GHG Protocol · ...) 숨김 */
  .ver-tbl-row > div:nth-child(1) > div:nth-child(2) {
    display: none !important;
  }
  /* JS 로 title 셀 안에 이동된 status chip — 제목 바로 옆 inline */
  .ver-tbl-row > div:nth-child(1) > div:nth-child(3) {
    display: inline-flex !important;
    align-items: center !important;
  }
  /* 법인 · 작성자 (한 줄) */
  .ver-tbl-row > div:nth-child(2) {
    grid-area: corp !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
    color: var(--fg1) !important;
    text-align: left !important;
    align-self: center !important;
  }
  .ver-tbl-row > div:nth-child(2)::after {
    content: " · ";
    color: var(--fg2);
    font-weight: 400;
  }
  .ver-tbl-row > div:nth-child(5) {
    grid-area: author !important;
    font-size: 11.5px !important;
    color: var(--fg1) !important;
    text-align: left !important;
    align-self: center !important;
  }
  .ver-tbl-row > div:nth-child(5)::before { content: none !important; }
  /* 범위 · 검증기관 (한 줄) */
  .ver-tbl-row > div:nth-child(3) {
    grid-area: scope !important;
    font-size: 11px !important;
    color: var(--fg2) !important;
    text-align: left !important;
    align-self: center !important;
  }
  .ver-tbl-row > div:nth-child(3)::after {
    content: " · ";
    color: var(--fg2);
  }
  .ver-tbl-row > div:nth-child(6) {
    grid-area: org !important;
    font-size: 11px !important;
    color: var(--fg2) !important;
    text-align: left !important;
    align-self: center !important;
  }
  .ver-tbl-row > div:nth-child(6)::before { content: none !important; }
  /* 태그 chip */
  .ver-tbl-row > div:nth-child(4) {
    grid-area: tag !important;
    align-self: center !important;
  }
  /* 생성·수정 (한 줄, 태그 아래) */
  .ver-tbl-row > div:nth-child(7) {
    grid-area: cdate !important;
    font-size: 10px !important;
    color: var(--fg2) !important;
    text-align: left !important;
    align-self: center !important;
  }
  .ver-tbl-row > div:nth-child(7)::before { content: "생성 "; }
  .ver-tbl-row > div:nth-child(7)::after { content: " · "; }
  .ver-tbl-row > div:nth-child(8) {
    grid-area: mdate !important;
    font-size: 10px !important;
    color: var(--fg2) !important;
    text-align: left !important;
    align-self: center !important;
  }
  .ver-tbl-row > div:nth-child(8)::before { content: "수정 "; }

  /* ===== rpt-modal (PDF/Excel 미리보기 모달) — 모바일 가림 방지 ===== */
  .rpt-modal,
  .feat-panel[data-panel="report"] .rpt-modal,
  #rptModal { display: none !important; }

  /* ===== Panel 3: 보고서 자동 생성 — 컴팩트 단일 화면 (mockup-screen 전환 없음) ===== */
  /* 패널 자체의 min-height 제거 (빈 여백 제거) */
  .feat-panel[data-panel="report"] {
    padding: 12px !important;
  }
  .feat-panel[data-panel="report"] .feat-panel-body { overflow: visible !important; }
  /* 내부 스크롤 영역이 페이지 터치 스크롤을 가로채지 않도록: 스크롤 컨테이너 해제 */
  .rpt-detail-col { overflow-y: visible !important; }
  .rpt-outer {
    position: relative !important;
    max-width: 100% !important;
    overflow: visible !important;
    box-shadow: 0 6px 20px rgba(16,98,73,.10) !important;
    height: auto !important;
  }
  /* detail-screen: 기본 노출, .exit 클래스로 숨김 (mockup-screen 으로 전환) */
  .rpt-detail-screen {
    position: relative !important;
    inset: auto !important;
    height: auto !important;
    overflow: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }
  .rpt-detail-screen.exit {
    display: none !important;
  }
  /* mockup-screen: 기본 숨김, .active 클래스로 보고서 미리보기 노출 (hero 와 동일 layout) */
  .feat-panel[data-panel="report"] .rpt-mockup-screen {
    display: none !important;
  }
  .feat-panel[data-panel="report"] .rpt-mockup-screen.active {
    display: flex !important;
    position: relative !important;
    inset: auto !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    height: 480px !important;
    min-height: 480px !important;
    max-height: 480px !important;
    border-radius: 14px !important;
    overflow: hidden !important;
  }
  /* mockup 내부: hero mockup 과 동일한 dropdown + preview 구조 */
  .feat-panel[data-panel="report"] .rpt-mockup-screen .pc-stage-topbar { display: none !important; }
  .feat-panel[data-panel="report"] .rpt-mockup-screen .rh-body {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    grid-template-columns: 1fr !important;
    position: relative !important;
    overflow: hidden !important;
  }
  /* sidebar: hero 와 동일 dropdown header */
  .feat-panel[data-panel="report"] .rpt-mockup-screen .rh-sidebar {
    display: flex !important;
    flex: 0 0 auto !important;
    flex-direction: column !important;
    border-right: none !important;
    border-bottom: .5px solid var(--border) !important;
    overflow: visible !important;
    cursor: pointer !important;
    position: relative !important;
    z-index: 50 !important;
    background: #fff !important;
  }
  .feat-panel[data-panel="report"] .rpt-mockup-screen .rh-sb-heading {
    padding: 12px 38px 12px 14px !important;
    font-size: 13px !important;
    border-bottom: none !important;
    position: relative !important;
  }
  .feat-panel[data-panel="report"] .rpt-mockup-screen .rh-sb-heading::after {
    content: "▾";
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--fg2);
    font-size: 11px;
    transition: transform 260ms ease;
  }
  .feat-panel[data-panel="report"] .rpt-mockup-screen .rh-sidebar.rh-expanded .rh-sb-heading::after {
    transform: translateY(-50%) rotate(180deg);
  }
  .feat-panel[data-panel="report"] .rpt-mockup-screen .rh-sb-sub { display: none !important; }
  /* TOC dropdown overlay */
  .feat-panel[data-panel="report"] .rpt-mockup-screen .rh-toc {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    background: #fff !important;
    z-index: 100 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 320ms cubic-bezier(.34,1.2,.64,1) !important;
    box-shadow: 0 10px 28px rgba(0,0,0,0.14) !important;
    border-top: .5px solid var(--border) !important;
    padding: 0 !important;
    flex: none !important;
  }
  .feat-panel[data-panel="report"] .rpt-mockup-screen .rh-sidebar.rh-expanded .rh-toc {
    max-height: 220px !important;
    overflow-y: auto !important;
    scroll-behavior: smooth !important;
  }
  .feat-panel[data-panel="report"] .rpt-mockup-screen .rh-toc-item {
    flex: 0 0 auto !important;
    padding: 7px 12px !important;
    gap: 4px !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
  }
  .feat-panel[data-panel="report"] .rpt-mockup-screen .rh-toc-num {
    font-size: 10.5px !important;
    width: auto !important;
    min-width: 0 !important;
    flex-shrink: 0 !important;
    padding-top: 1px !important;
  }
  .feat-panel[data-panel="report"] .rpt-mockup-screen .rh-toc-title {
    font-size: 11px !important;
    white-space: normal !important;
    word-break: keep-all !important;
    line-height: 1.3 !important;
  }
  .feat-panel[data-panel="report"] .rpt-mockup-screen .rh-toc-sub {
    font-size: 9.5px !important;
    line-height: 1.3 !important;
  }
  .feat-panel[data-panel="report"] .rpt-mockup-screen .rh-toc-item:not(.rh-toc-active) { display: none !important; }
  .feat-panel[data-panel="report"] .rpt-mockup-screen .rh-sidebar.rh-expanded .rh-toc-item { display: flex !important; }
  /* preview: hero 와 동일 */
  .feat-panel[data-panel="report"] .rpt-mockup-screen .rh-preview {
    flex: 1 !important;
    overflow: hidden !important;
  }
  .feat-panel[data-panel="report"] .rpt-mockup-screen .rh-page-wrap {
    padding: 44px 10px 10px !important;
    height: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    align-items: flex-start !important;
    justify-content: center !important;
  }
  .feat-panel[data-panel="report"] .rpt-mockup-screen .rh-page {
    width: 100% !important;
    max-width: 100% !important;
    aspect-ratio: 1 / 1.414 !important;
    height: auto !important;
    margin: 0 auto !important;
  }
  /* 다운로드 버튼: A4 페이지 바로 위 */
  .feat-panel[data-panel="report"] .rpt-mockup-screen .rh-dl-btn {
    top: 88px !important;
    right: 12px !important;
    bottom: auto !important;
    left: auto !important;
    font-size: 10.5px !important;
    font-weight: 700 !important;
    padding: 7px 13px !important;
    background: var(--green) !important;
    color: #fff !important;
    border-radius: 999px !important;
    box-shadow: 0 6px 18px rgba(18,158,123,.40), 0 2px 6px rgba(0,0,0,.18) !important;
    z-index: 25 !important;
  }
  /* 보고서 자동생성 버튼 클릭 커서 & mockup 내부 dropdown 시퀀스용 커서 — 모바일에서도 표시 */
  .feat-panel[data-panel="report"] .rpt-gen-cursor,
  .feat-panel[data-panel="report"] #rmCursor { display: block !important; }
  /* banner 만 숨김 */
  .feat-panel[data-panel="report"] .rpt-banner { display: none !important; }
  /* PC 상단바 숨김 */
  .rpt-detail-screen .pc-stage-topbar { display: none !important; }
  /* 상세 헤더 padding/폰트 축소 */
  .rpt-detail-screen > div[style*="padding:12px 16px"] { padding: 10px 12px !important; }
  .rpt-detail-screen > div[style*="padding:12px 16px"] span[style*="font-size:16px"] { font-size: 13.5px !important; }
  .rpt-detail-screen > div[style*="padding:12px 16px"] button { font-size: 11px !important; padding: 6px 10px !important; }
  .rpt-detail-screen > div[style*="padding:12px 16px"] > div[style*="font-size:11.5px"] {
    font-size: 10px !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
  }
  /* 본문 grid 1fr 220px → 1열 stack */
  .rpt-detail-screen > div[style*="grid-template-columns:1fr 220px"] {
    display: flex !important;
    flex-direction: column !important;
    flex: none !important;
    overflow: visible !important;
  }
  .rpt-detail-screen > div[style*="grid-template-columns:1fr 220px"] > div {
    border-right: none !important;
    padding: 10px 12px !important;
    overflow: visible !important;
  }
  .rpt-detail-screen > div[style*="grid-template-columns:1fr 220px"] > div:first-child {
    border-bottom: .5px solid var(--border) !important;
  }
  .rh-detail-row { font-size: 11.5px !important; padding: 6px 0 !important; gap: 6px !important; }
  .rh-detail-row .rh-detail-lbl { flex-shrink: 0 !important; }
  .rh-detail-chips { gap: 4px !important; }
  .rh-chip-period { font-size: 9.5px !important; padding: 2px 6px !important; }
  /* ★ 검증 의견 우측 컨테이너 — 카운터 2개 가로 배치 */
  .rpt-detail-screen > div[style*="grid-template-columns:1fr 220px"] > div:last-child {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    align-items: stretch !important;
  }
  .rpt-detail-screen .rh-ver-title-row {
    width: 100% !important;
    margin-bottom: 0 !important;
  }
  .rpt-detail-screen .rh-ver-counter {
    flex: 1 1 calc(50% - 4px) !important;
    margin-bottom: 0 !important;
    min-width: 0 !important;
    padding: 8px !important;
    gap: 5px !important;
  }
  .rpt-detail-screen .rh-ver-label { font-size: 11px !important; }
  .rpt-detail-screen .rh-ver-count { font-size: 13px !important; }
  .rpt-detail-screen .rh-ver-badge { font-size: 9px !important; padding: 1px 5px !important; }
  /* 하단 배출량 요약 테이블 — 2024/2025만 3열로 노출 (가로 스크롤 불필요) */
  .rpt-detail-screen > div[style*="flex-shrink:0;border-top"] {
    overflow-x: visible !important;
  }
  .rpt-detail-screen > div[style*="flex-shrink:0;border-top"] > div:first-child {
    padding: 6px 12px !important;
  }
  .rpt-detail-screen > div[style*="flex-shrink:0;border-top"] > div:first-child span[style*="font-size:12.5px"] {
    font-size: 12px !important;
  }
  /* 각 행의 padding 축소 (모바일 폭에 잘리지 않게) */
  .rpt-detail-screen > div[style*="flex-shrink:0;border-top"] [style*="grid-template-columns:2fr 1fr 1fr"] {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  /* 만신테크 이하 행 숨김 — 첫 번째 법인(만신홀딩스)만 표시 */
  .rpt-detail-screen > div[style*="flex-shrink:0;border-top"] > div:last-child > div:nth-child(n+7) {
    display: none !important;
  }
  /* pc-stage-topbar: detail-screen 안에서도 숨김 */
  .rpt-detail-screen .pc-stage-topbar { display: none !important; }
  /* 검증 의견 우측 컬럼 전체 숨김 + 그리드 1열로 변경 */
  .rpt-detail-screen > div[style*="grid-template-columns:1fr 220px"] {
    grid-template-columns: 1fr !important;
  }
  .rpt-detail-screen > div[style*="grid-template-columns:1fr 220px"] > div:last-child {
    display: none !important;
  }
  /* 작성자 행만 숨김 */
  .rpt-detail-screen > div[style*="grid-template-columns:1fr 220px"] > div:first-child .rh-detail-row:last-child {
    display: none !important;
  }
  /* 좌측 컬럼 border-right 제거 */
  .rpt-detail-screen > div[style*="grid-template-columns:1fr 220px"] > div:first-child {
    border-right: none !important;
  }
}

/* ===== 솔루션 페이지 공통 수정사항 ===== */
.page-hero-grid { max-width: 1600px; margin-left: auto; margin-right: auto; }
.hero-visual { max-width: 920px; margin: 0 auto; width: 920px; align-self: center; }
@media (max-width: 1024px) { .hero-visual { max-width: 100%; width: 100%; margin: 0; align-self: stretch; } }
@media (min-width: 1600px) { .hero-visual { transform: scale(1.2); transform-origin: center; } }
}

/* 2. 페인포인트: 헤딩과 카드 사이 간격 더 띄우기 */
.pain-head { margin-bottom: 96px; }
@media (max-width: 768px) { .pain-head { margin-bottom: 48px; } }

/* 3. 비디오: 세로 더 크게, 검정 선·테두리·letterbox 일체 안 보이게 */
.diff-section, .diff-section * { box-shadow: none !important; }
.diff-layout { gap: 16px; }
.diff-player-box { aspect-ratio: 16/9; background: #fff; border: none !important; outline: none !important; box-shadow: none !important; overflow: hidden; height: auto !important; }
.diff-player-box::after { content: ""; position: absolute; inset: 0; pointer-events: none; box-shadow: inset 0 0 0 1px #fff; border-radius: 20px; z-index: 1; }
.diff-player-box video, .diff-player-box iframe {
  object-fit: cover !important;
  background: #fff !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  transform: scale(1.02);
  transform-origin: center center;
}
@media (max-width: 1100px) { .diff-player-box { aspect-ratio: 16/9; } }

/* 6. CTA 배너: Shadow.png 항상 배경으로 깔리도록 */
.cta-banner::before {
  content: ""; position: absolute; left: 0; right: 0; top: 0; bottom: 0;
  pointer-events: none; z-index: 0; opacity: 1;
  background: url('/theme/basic/assets/Shadow.png') center center / cover no-repeat;
}
.cta-banner > .cta-inner { position: relative; z-index: 2; }


  .feat-tab > .feat-tab-desc { padding-left: 0 !important; }
  /* 솔루션 feature 카드 모바일 간격 확대 (data 와 동일) */
@media (max-width: 768px) {
  .feat-tabs { gap: 20px !important; margin-bottom: 28px !important; }
  .feat-tab { padding: 18px 16px !important; }
}


/* 모바일: feat-panel 내부 중복 타이틀+칩 숨김 (feat-tab이 이미 표시) */
@media (max-width: 768px) {
  .feat-panel .feat-panel-head { display: none !important; }
}

/* CTA 배너: 모바일 흰색 영역 제거 + 소개자료 버튼 녹색 테두리 (모든 솔루션 공통) */
.cta-banner .btn-g, .cta-primary-row .btn-g { border-color: var(--green) !important; color: var(--green) !important; }
@media (max-width: 768px) {
  .cta-banner { padding-top: 80px !important; padding-bottom: 60px !important; margin-top: 0 !important; }
}
.pain-card { text-align: center; display: flex; flex-direction: column; align-items: center; }
.pain-icon { margin: 0 auto; }

/* ── page-hero 모바일 중앙정렬 ── */
@media (max-width: 768px) {
  .page-hero { height: calc(100dvh - 68px) !important; min-height: 0 !important; max-height: calc(100dvh - 68px) !important; overflow: hidden !important; padding: 100px 20px !important; box-sizing: border-box !important; align-items: center !important; justify-content: center !important; text-align: center !important; }
  .page-hero-grid { flex-direction: column !important; align-items: center !important; gap: 28px !important; width: 100% !important; }
  .page-hero-left { padding: 0 !important; display: flex !important; flex-direction: column !important; align-items: center !important; text-align: center !important; }
  .page-hero .h1 { font-size: 28px !important; letter-spacing: -0.6px !important; line-height: 1.2 !important; white-space: normal !important; word-break: keep-all !important; }
  .page-hero .lead { font-size: 14px !important; margin-top: 14px !important; line-height: 1.5 !important; max-width: none !important; }
}


@media(max-width:768px){
  .cta-banner .cta-inner { align-items: center !important; text-align: center !important; }
  .cta-banner .cta-inner > div:first-child { display: flex !important; flex-direction: column !important; align-items: center !important; width: 100% !important; text-align: center !important; }
  .cta-banner .cta-h, .cta-banner .cta-m { text-align: center !important; white-space: normal !important; width: 100% !important; }
  .cta-banner .cta-inner > div:first-child > div[style] { flex-direction: column !important; align-items: center !important; gap: 5px !important; }
  .cta-banner .cta-secondary, .cta-banner .cta-link { margin-left: 0 !important; margin-top: 0 !important; }
  .cta-banner .cta-btns { align-items: center !important; width: 100% !important; }
  .cta-banner .cta-btn-row { justify-content: center !important; flex-wrap: wrap !important; }
}

@media(max-width:768px){ .pain-desc, .pain-title { text-align: left !important; } .pain-card { align-items: flex-start !important; } .pain-icon { margin: 0 !important; } .pain-card-body { margin-top: 20px !important; } }

/* ── Footer 모바일 반응형 ── */
@media(max-width:768px){
  footer { padding: 48px 20px !important; }
  .foot-top { grid-template-columns: 1fr !important; gap: 32px !important; margin-bottom: 32px !important; padding-bottom: 32px !important; }
  .foot-bottom { flex-direction: column !important; align-items: flex-start !important; gap: 12px !important; }
}

@media(max-width:768px){
  .pain-grid{grid-template-columns:1fr !important;gap:12px !important}
  .pain-card{text-align:left !important;align-items:flex-start !important;min-height:auto !important}
  .pain-grid .pain-card:last-child:nth-child(odd){grid-column:auto !important}
}

@media(max-width:768px){
  .page-hero{
    min-height: calc(100vh + 68px) !important;
    padding: 100px 20px 0px !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }
  .page-hero-grid{
    height:100% !important;
    flex:1 !important;
    justify-content:flex-start !important;
    gap:16px !important;
  }
  .page-hero-left{
    flex-shrink:0 !important;
  }

}

@media(max-width:768px){
  .hero-visual{
    flex:1 !important;
    overflow:visible !important;
    display:flex !important;
    align-items:flex-start !important;
    justify-content:center !important;
  }
  .hero-visual > *{
    transform-origin: top center !important;
  }
}

@media(max-width:768px){
  .diff-heading-sh{font-size:25px !important;margin-bottom:16px !important}
  .diff-heading-sm{font-size:25px !important;margin-bottom:24px !important}
}

.diff-h-br { display: none; }
@media(max-width:768px){ .diff-h-br { display: block; } }

/* ====================================================
   solution-report.html — 모바일(768px) 반응형 추가분
   원칙: 기존 규칙 수정 금지, 누락 규칙만 추가, !important 사용
   ==================================================== */
@media(max-width:768px){

  /* ── CTA 배너 (지정 스펙 적용) ── */
  .cta-banner { padding: 60px 20px !important; }
  .cta-h, .cta-m { font-size: 24px !important; letter-spacing: -0.4px !important; white-space: normal !important; }
  .cta-btn-row .btn-p { font-size: 12px; padding: 14px 20px; justify-content: center; }
  .cta-btn-row .btn-g { background: #fff; font-size: 12px; padding: 14px 20px; justify-content: center; border: 1px solid var(--green); color: var(--green); }
  .cta-secondary { font-size: 14px !important; }

  /* ── Footer (지정 스펙 적용) ── */
  footer { padding: 48px 20px !important; }
  .foot-top { grid-template-columns: 1fr !important; gap: 28px !important; }
  .foot-bottom { flex-direction: column !important; align-items: flex-start !important; gap: 10px !important; }
  .foot-info { font-size: 11px !important; line-height: 1.7 !important; }
  .foot-tagline { font-size: 13px !important; }

  /* ── feat-tab > .feat-tab-desc: padding-left 0 ── */
  .feat-tab > .feat-tab-desc { padding-left: 0 !important; }

  /* ── 가로 스크롤 방지 ── */
  html, body { overflow-x: hidden !important; max-width: 100vw !important; }
  .page-hero, .pain-section, .feature-section, .diff-section, .cta-banner, footer {
    box-sizing: border-box !important;
    max-width: 100vw !important;
    overflow-x: hidden !important;
  }
}

@media(max-width:768px){ .diff-inner { padding: 0 !important; max-width: 100% !important; } }
.cta-inner .sh, .cta-inner .sm { text-align: left; }
@media (max-width: 768px) {
  .cta-inner .sh, .cta-inner .sm { text-align: center; }
}