
/* CONTACT 섹션 — 좌측 정보+축소 지도 / 우측 문의 폼 (2026-07-21) */

/* 공시 상세 페이지 본문 안 이미지 자동 사이즈 */
#disc-detail-panel img{max-width:100%;height:auto;display:block;margin:8px auto;}

/* Quill 콘텐츠 글로벌 — 상세 페이지에서도 정렬/색/크기 적용 */
.ql-align-center{text-align:center;}
.ql-align-right{text-align:right;}
.ql-align-justify{text-align:justify;}
.ql-size-small{font-size:0.75em;}
.ql-size-large{font-size:1.5em;}
.ql-size-huge{font-size:2.5em;}
.ql-indent-1{padding-left:3em;}
.ql-indent-2{padding-left:6em;}
.ql-indent-3{padding-left:9em;}
.ql-indent-4{padding-left:12em;}

*{margin:0;padding:0;box-sizing:border-box;}
:root{
  --green:#2a5438;
  --green2:#3a7a50;
  --green-light:#eef5f0;
  --text:#1a1a1a;
  --sub:#484848;
  --border:#e0e0e0;
  --dark:#0d1117;
  --bg:#ffffff;
}
html{scroll-behavior:smooth;color-scheme:light only;}
body{background:var(--bg);color:var(--text);font-family:'Noto Sans KR',sans-serif;line-height:1.6;color-scheme:light only;-webkit-text-fill-color:initial;}

/* 공식 홈페이지(dyneasset.co.kr) 헤더 반영 — 콘텐츠 폭 1110px 안쪽 배치(로고 좌 / 메뉴 우) */
header{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(255,255,255,0.97);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 max(40px, calc((100% - 1110px) / 2));transition:background 0.35s ease,border-color 0.35s ease,height 0.35s ease;}
.logo{display:flex;align-items:center;text-decoration:none;font-family:'Jost',sans-serif;font-size:1.2rem;font-weight:700;color:var(--green);letter-spacing:2px;}
/* DYNE 로고 — 원본 PNG 그대로(디자인 유지), 진한 초록 필터 + 크게 */
.logo-img{height:44px;width:auto;display:block;filter:brightness(0) saturate(100%) invert(24%) sepia(34%) saturate(960%) hue-rotate(101deg) brightness(94%) contrast(95%);transition:filter 0.35s ease;}
.logo-kr{margin-left:12px;font-family:'Noto Sans KR',sans-serif;font-size:1.3rem;font-weight:700;color:var(--green);letter-spacing:0.5px;line-height:1;transition:color 0.35s ease;}
.footer-logo-img{height:38px;width:auto;display:block;}
nav{display:flex;align-items:center;height:100%;}
.nav-item{position:relative;height:100%;display:flex;align-items:center;}
.nav-item>a{display:flex;align-items:center;height:100%;padding:0 22px;font-size:1.0625rem;font-weight:500;letter-spacing:-1px;color:var(--text);text-decoration:none;transition:color 0.2s;white-space:nowrap;}
.nav-item>a:hover{color:var(--green);}
.dropdown{display:none;position:absolute;top:100%;left:0;background:#fff;border:1px solid var(--border);min-width:140px;box-shadow:0 8px 30px rgba(0,0,0,0.1);}
.nav-item:hover .dropdown{display:block;}
.dropdown a{display:block;padding:11px 18px;color:var(--text);font-size:0.82rem;text-decoration:none;border-bottom:1px solid var(--border);transition:all 0.2s;}
.dropdown a:hover{color:var(--green);background:var(--green-light);padding-left:22px;}
.header-sns{display:flex;gap:8px;align-items:center;margin-left:16px;}
.header-sns a{color:var(--sub);font-size:0.95rem;text-decoration:none;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:50%;transition:all 0.2s;}
.header-sns a:hover{color:var(--green);border-color:var(--green);}

/* 우측 문의하기 CTA — 흰 박스 + 검정 글씨 (히어로·흰 헤더 공통) */
.nav-item>a.nav-cta{background:#fff;color:#1a1a1a;height:auto;padding:10px 22px;font-weight:700;border:1px solid rgba(0,0,0,0.14);box-shadow:0 4px 14px rgba(0,0,0,0.12);margin-left:10px;}
.nav-item>a.nav-cta:hover{color:#1a1a1a;background:#f2f2f2;}
header.on-hero .nav-item>a.nav-cta{color:#1a1a1a;border-color:transparent;}
header.on-hero .nav-item>a.nav-cta:hover{color:#1a1a1a;}

/* ─── 히어로 위 투명 헤더(공식홈처럼 흰 로고·흰 메뉴) — 홈 최상단에서만 ─── */
header.on-hero{background:transparent;border-bottom-color:transparent;backdrop-filter:none;height:104px;}
header.on-hero .logo-img{filter:brightness(0) invert(1);}
header.on-hero .logo-kr{color:#fff;}
header.on-hero .nav-item>a{color:#fff;}
header.on-hero .nav-item>a:hover{color:rgba(255,255,255,0.75);}
header.on-hero .mob-menu-btn{color:#fff;}

/* ─── 우하단 플로팅 (전화 + 문의) — 스페이스엔코 원형 FAB 방식, 항상 표시 ─── */
.float-contact{position:fixed;right:24px;bottom:24px;z-index:950;display:flex;flex-direction:column;gap:12px;align-items:center;}
.float-contact .fc-fab{display:flex;align-items:center;justify-content:center;width:70px;height:70px;border-radius:50%;text-decoration:none;box-shadow:0 10px 26px rgba(0,0,0,0.22);transition:transform 0.2s,box-shadow 0.2s;}
.float-contact .fc-fab:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(0,0,0,0.28);}
.float-contact .fc-fab:active{transform:scale(0.94);}
.float-contact .fc-tel{background:#fff;color:#FF3B30;border:1px solid rgba(0,0,0,0.06);}
.float-contact .fc-tel svg{width:34px;height:34px;}
.float-contact .fc-btn{background:#fff;color:#1a1a1a;border:1px solid rgba(0,0,0,0.06);font-size:0.98rem;font-weight:800;letter-spacing:0;line-height:1.3;text-align:center;}
.float-contact .fc-item{display:flex;flex-direction:column;align-items:center;gap:5px;}
.float-contact .fc-cap{font-size:0.78rem;font-weight:700;color:#fff;background:rgba(0,0,0,0.55);padding:3px 9px;border-radius:20px;letter-spacing:0.5px;white-space:nowrap;}
@media(max-width:768px){
  .float-contact{right:16px;bottom:16px;gap:10px;}
  .float-contact .fc-fab{width:60px;height:60px;}
}

.hero{position:relative;height:100vh;min-height:700px;overflow:hidden;}
/* 강물 배경 영상 — 히어로 전체를 덮고 고정 재생 */
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;}
.hero-video-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(135deg,rgba(13,17,23,0.5) 0%,rgba(21,28,36,0.42) 100%);}
/* 배경음악 on/off 스피커 버튼 */
.hero-sound{position:absolute;right:28px;bottom:210px;z-index:12;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,0.35);background:rgba(13,17,23,0.4);backdrop-filter:blur(6px);color:#fff;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.25s;}
.hero-sound:hover{background:rgba(111,196,145,0.85);border-color:transparent;}
@media(max-width:768px){.hero-sound{right:16px;bottom:185px;width:42px;height:42px;font-size:1rem;}}
.hero-slides{position:absolute;inset:0;z-index:2;}
/* 슬라이드는 이제 글귀만 담음(배경이미지 없음) — 글귀만 페이드로 순환 */
/* 공식홈처럼 — 글귀 왼쪽 정렬(콘텐츠 폭 1110px 라인), 흰색만, Noto Sans KR 500, 50px급 */
.hero-slide{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left;padding:0 max(40px, calc((100% - 1110px) / 2)) 10vh;opacity:0;transition:opacity 0.7s ease;pointer-events:none;}
.hero-slide>*{position:relative;z-index:2;}
.hero-slide.active{opacity:1;z-index:1;}
.hero-sub{font-family:'Noto Sans KR',sans-serif;font-size:0.8rem;font-weight:500;letter-spacing:4px;color:rgba(255,255,255,0.85);text-transform:uppercase;margin-bottom:20px;}
.hero-slide h1{font-family:'Noto Sans KR',sans-serif;font-size:clamp(1.8rem,2.7vw,3.125rem);font-weight:500;color:#fff;line-height:1.4;letter-spacing:-1px;margin-bottom:20px;cursor:default;max-width:980px;text-shadow:0 2px 14px rgba(0,0,0,0.35);}
.hero-slide h1 em{color:#fff;font-style:normal;font-weight:500;}
.hero-slide p{font-size:1rem;color:rgba(255,255,255,0.75);max-width:640px;line-height:1.9;margin-bottom:32px;}
.hero-dots{position:absolute;bottom:80px;left:50%;transform:translateX(-50%);display:flex;gap:10px;z-index:10;}
.hero-dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,0.35);cursor:pointer;border:none;transition:all 0.3s;padding:0;}
.hero-dot.active{background:#fff;transform:scale(1.3);}
.hero-btns{display:flex;gap:14px;justify-content:flex-start;flex-wrap:wrap;}
.btn-primary{padding:14px 32px;background:#fff;color:var(--green);font-size:0.88rem;font-weight:700;letter-spacing:1px;text-decoration:none;border:none;cursor:pointer;transition:all 0.2s;}
.btn-primary:hover{background:var(--green);color:#fff;}
.btn-outline{padding:14px 32px;background:transparent;color:#fff;font-size:0.88rem;font-weight:500;letter-spacing:1px;text-decoration:none;border:1px solid rgba(255,255,255,0.4);cursor:pointer;transition:all 0.2s;}
.btn-outline:hover{border-color:#fff;background:rgba(255,255,255,0.08);}
.hero-scroll{position:absolute;bottom:36px;left:50%;transform:translateX(-50%);color:rgba(255,255,255,0.4);font-size:0.72rem;letter-spacing:3px;text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:8px;}
.hero-scroll::after{content:'';width:1px;height:40px;background:rgba(255,255,255,0.3);}

.stats-strip{background:var(--dark);padding:40px 120px;display:flex;justify-content:space-around;align-items:center;gap:20px;}
.strip-item{text-align:center;}
.strip-val{font-size:2rem;font-weight:600;color:#fff;font-family:'Jost',sans-serif;}
.strip-val span{font-size:1rem;color:#6fc491;}
.strip-label{font-size:0.98rem;color:rgba(255,255,255,0.55);letter-spacing:2px;margin-top:6px;text-transform:uppercase;}

.sec{padding:90px 120px;}
.sec-alt{background:#f8f9fa;}
.sec-label{font-size:0.72rem;font-weight:700;letter-spacing:4px;color:var(--green2);text-transform:uppercase;margin-bottom:12px;display:block;}
.sec-title{font-size:clamp(1.4rem,3vw,2rem);font-weight:900;color:var(--text);margin-bottom:48px;line-height:1.3;}
.sec-title-line{display:inline-block;border-bottom:3px solid var(--green);padding-bottom:10px;}

.company-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start;}
.company-text{font-size:0.9rem;color:var(--sub);line-height:2.1;}
.company-text strong{color:var(--text);}
.company-kpi{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border);}
.kpi-item{background:#fff;padding:28px 24px;text-align:center;}
.kpi-num{font-size:1.8rem;font-weight:600;color:var(--green);font-family:'Jost',sans-serif;}
.kpi-label{font-size:0.75rem;color:var(--sub);letter-spacing:1px;margin-top:6px;}

.fund-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--border);}
.fund-card{background:#fff;padding:36px 28px;cursor:pointer;transition:background 0.2s;position:relative;}
.fund-card:hover{background:var(--green-light);}
.fund-card::before{content:'';position:absolute;top:0;left:0;width:3px;height:0;background:var(--green);transition:height 0.3s;}
.fund-card:hover::before{height:100%;}

/* 펀드 카드 admin 호버 버튼 + 새 펀드 추가 박스 */
.fp-card{position:relative;}
body.adm-on .fp-card-admin{display:flex!important;gap:6px;position:absolute;top:14px;right:14px;z-index:10;}

/* 코스닥 호 시리즈 카드 admin 버튼 */
.fp-series-card{position:relative;}
body.adm-on .fp-series-admin{display:flex!important;gap:5px;position:absolute;top:10px;right:10px;z-index:10;}
.fp-admin-btn{padding:6px 11px;border:1px solid var(--green);background:#fff;color:var(--green);border-radius:4px;font-size:0.84rem;font-weight:700;cursor:pointer;font-family:inherit;transition:all 0.15s;}
.fp-admin-btn:hover{background:var(--green);color:#fff;}
.fp-admin-btn-del{border-color:#c33;color:#c33;}
.fp-admin-btn-del:hover{background:#c33;color:#fff;}
.fp-card-add{transition:all 0.2s;}
.fp-card-add:hover{background:rgba(42,84,56,0.08)!important;border-color:var(--green)!important;transform:translateY(-2px);}

/* 리서치 카드 admin 호버 버튼 + 새 리서치 추가 박스 (펀드와 동일 패턴) */
.rp-article{position:relative;}
body.adm-on .rp-article-admin{display:flex!important;gap:6px;position:absolute;top:14px;right:14px;z-index:10;}
.rp-article-add{transition:all 0.2s;}
.rp-article-add:hover{background:rgba(42,84,56,0.08)!important;border-color:var(--green)!important;transform:translateY(-2px);}

/* Timeline events admin 버튼 + 새 이벤트 추가 박스 (펀드/리서치 패턴) */
body.adm-on .evt{position:relative;padding-right:80px;}
body.adm-on .evt-admin{display:flex!important;gap:4px;position:absolute;top:8px;right:8px;z-index:5;}
body.adm-on .evt-admin .fp-admin-btn{padding:4px 9px;font-size:0.78rem;}
body.adm-on .evt-add{display:flex!important;align-items:center;justify-content:center;padding:14px;cursor:pointer;background:rgba(42,84,56,0.04);border:2px dashed rgba(42,84,56,0.4);margin-top:10px;color:var(--green);font-weight:700;font-size:0.86rem;letter-spacing:0.5px;transition:all 0.2s;}
.evt-add:hover{background:rgba(42,84,56,0.08)!important;border-color:var(--green)!important;}
/* Year-card admin 버튼 + 새 연도 추가 박스 */
.year-card{position:relative;}
body.adm-on .year-card-admin{display:flex!important;gap:4px;position:absolute;top:14px;right:14px;z-index:6;}
body.adm-on .year-card-admin .fp-admin-btn{padding:5px 10px;font-size:0.8rem;}
body.adm-on .year-card-add{display:flex!important;align-items:center;justify-content:center;min-height:200px;cursor:pointer;background:rgba(42,84,56,0.04);border:2px dashed rgba(42,84,56,0.4);color:var(--green);font-weight:700;font-size:0.96rem;letter-spacing:0.5px;transition:all 0.2s;margin-top:24px;}
.year-card-add:hover{background:rgba(42,84,56,0.08)!important;border-color:var(--green)!important;}

/* 펀드 글쓰기 모달 (공시 글쓰기와 같은 패턴) */
#fund-writer-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.6);z-index:9300;align-items:center;justify-content:center;padding:24px;backdrop-filter:blur(3px);}
.fw-card{background:#fff;border-radius:8px;width:100%;max-width:640px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,0.3);}
.fw-head{display:flex;justify-content:space-between;align-items:center;padding:22px 26px;border-bottom:1px solid var(--border);}
.fw-head h2{font-size:1.15rem;font-weight:800;color:var(--text);}
.fw-close{background:transparent;border:none;font-size:1.6rem;color:var(--sub);cursor:pointer;line-height:1;}
.fw-body{padding:22px 26px;overflow-y:auto;}
.fw-row{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:14px;}
.fw-fld{flex:1;min-width:200px;}
.fw-fld label{display:block;font-size:0.82rem;color:var(--sub);font-weight:700;margin-bottom:6px;}
.fw-fld input,.fw-fld textarea{width:100%;padding:11px 14px;border:1px solid var(--border);border-radius:5px;font-family:inherit;font-size:0.94rem;color:var(--text);transition:border 0.15s;}
.fw-fld input:focus,.fw-fld textarea:focus{outline:none;border-color:var(--green);}
.fw-fld textarea{min-height:80px;resize:vertical;}
.fw-fld .fw-hint{display:block;font-size:0.76rem;color:var(--sub);margin-top:4px;line-height:1.5;}
.fw-foot{display:flex;justify-content:flex-end;gap:10px;padding:18px 26px;background:#fafafa;border-top:1px solid var(--border);}
.fw-btn{padding:11px 24px;border:none;border-radius:5px;font-weight:700;font-size:0.92rem;cursor:pointer;font-family:inherit;transition:all 0.15s;}
.fw-btn{background:#fff;color:var(--sub);border:1px solid var(--border);}
.fw-btn:hover{border-color:var(--text);color:var(--text);}
.fw-btn-save{background:var(--green);color:#fff;border:none;}
.fw-btn-save:hover{background:var(--green2);}
.fund-tag{display:inline-block;font-size:0.7rem;font-weight:700;letter-spacing:2px;color:var(--green);text-transform:uppercase;margin-bottom:14px;}
.fund-name{font-size:1rem;font-weight:800;color:var(--text);margin-bottom:12px;line-height:1.4;}
.fund-desc{font-size:0.82rem;color:var(--sub);line-height:1.9;list-style:none;}
.fund-desc li{padding-left:12px;position:relative;margin-bottom:4px;}
.fund-desc li::before{content:'—';position:absolute;left:0;color:var(--green);}
.fund-yield{margin-top:14px;padding:8px 12px;background:var(--green-light);font-size:0.78rem;color:var(--green);font-weight:700;}

.research-filter{display:flex;gap:8px;margin-bottom:32px;flex-wrap:wrap;}
.rf-btn{padding:8px 20px;border:1px solid var(--border);background:#fff;font-size:0.82rem;cursor:pointer;transition:all 0.2s;}
.rf-btn.active,.rf-btn:hover{background:var(--green);color:#fff;border-color:var(--green);}
.research-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.research-card{border:1px solid var(--border);padding:28px;cursor:pointer;transition:all 0.2s;position:relative;overflow:hidden;}
.research-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--green);transform:scaleX(0);transition:transform 0.3s;}
.research-card:hover{border-color:var(--green);box-shadow:0 4px 20px rgba(42,84,56,0.1);}
.research-card:hover::after{transform:scaleX(1);}
.research-tag{display:inline-block;font-size:0.68rem;font-weight:700;letter-spacing:2px;color:var(--green);text-transform:uppercase;margin-bottom:10px;}
.research-title{font-size:0.9rem;font-weight:700;color:var(--text);margin-bottom:8px;line-height:1.5;}
.research-date{font-size:0.75rem;color:var(--sub);}

.disclosure-table{width:100%;border-collapse:collapse;}
.disclosure-table th{padding:14px 0;font-size:0.82rem;color:var(--sub);font-weight:600;text-align:left;border-bottom:2px solid var(--green);}
.disclosure-table td{padding:14px 0;font-size:0.85rem;border-bottom:1px solid var(--border);}
.disclosure-table .d-tag{font-size:0.74rem;color:var(--green);font-weight:700;display:inline-block;padding:3px 10px;border:1px solid currentColor;border-radius:3px;letter-spacing:1px;min-width:46px;text-align:center;}
.disclosure-table .d-tag.normal{color:var(--sub);font-weight:600;}
.disclosure-table .d-tag.gold{color:#a37a3a;}
.disclosure-table .d-tag.gray{color:#484848;}
.disclosure-table .d-date{font-size:0.8rem;color:var(--sub);}
.disc-pagination{display:flex;gap:6px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:36px;padding-top:24px;border-top:1px solid var(--border);}
.disc-pg-btn{min-width:36px;height:36px;padding:0 12px;background:#fff;border:1px solid var(--border);color:var(--text);font-size:0.84rem;font-weight:600;cursor:pointer;transition:all 0.2s;font-family:'Jost','Pretendard',sans-serif;}
.disc-pg-btn:hover:not(:disabled){border-color:var(--green);color:var(--green);}
.disc-pg-btn.active{background:var(--green);color:#fff;border-color:var(--green);}
.disc-pg-btn:disabled{opacity:0.35;cursor:not-allowed;}
.disc-pg-btn.nav{padding:0 16px;font-weight:500;}
.disc-pg-info{margin-left:14px;font-size:0.78rem;color:var(--sub);letter-spacing:0.5px;}
@media (max-width:760px){
  .disc-pg-info{flex:1 0 100%;text-align:center;margin:8px 0 0;}
  .disc-pg-btn{min-width:32px;height:32px;font-size:0.78rem;padding:0 8px;}
}

.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:56px;align-items:stretch;}
.contact-info{display:flex;flex-direction:column;gap:24px;}
.contact-item{display:flex;gap:16px;align-items:flex-start;}
.contact-icon{width:40px;height:40px;background:var(--green-light);display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0;}
.contact-label{font-size:0.82rem;font-weight:700;letter-spacing:2px;color:var(--green);text-transform:uppercase;margin-bottom:6px;}
.contact-val{font-size:1.08rem;color:var(--text);line-height:1.7;}
.map-wrap{margin-top:28px;}
.map-wrap iframe{width:100%;height:220px;border:none;display:block;border:1px solid var(--border);}
/* 문의하기 폼 */
.cform{background:#fff;border:1px solid var(--border);padding:32px 30px;}
.cform-title{font-size:1.45rem;font-weight:800;color:var(--text);margin-bottom:5px;}
.cform-sub{font-size:1.02rem;color:var(--sub);margin-bottom:22px;}
.cform-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.cform label{display:block;font-size:0.95rem;font-weight:700;letter-spacing:1px;color:var(--green);margin-bottom:7px;text-transform:uppercase;}
.cform .cf-fld{margin-bottom:16px;}
.cform input,.cform textarea{width:100%;padding:14px 16px;border:1px solid var(--border);font-size:1.08rem;font-family:inherit;outline:none;background:#fff;color:var(--text);transition:border-color 0.2s;}
.cform input:focus,.cform textarea:focus{border-color:var(--green);}
.cform textarea{min-height:130px;resize:vertical;line-height:1.7;}
.cform-btn{width:100%;padding:17px 0;background:var(--green);color:#fff;font-size:1.15rem;font-weight:800;letter-spacing:2px;border:none;cursor:pointer;transition:background 0.2s;}
.cform-btn:hover{background:var(--green2);}
.cform-btn:disabled{background:#9db3a4;cursor:default;}
.cform-msg{font-size:0.82rem;margin-top:12px;display:none;}
.cform-msg.ok{display:block;color:var(--green);}
.cform-msg.err{display:block;color:#c0392b;}
.cf-hp{position:absolute;left:-9999px;top:-9999px;height:0;overflow:hidden;}

.sns-sec{position:relative;background:#0d1117;padding:96px 120px;text-align:center;background-image:url('https://images.unsplash.com/photo-1477959858617-67f85cf4f1df?w=1400&q=80');background-size:cover;background-position:center;}
.sns-sec::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(13,17,23,0.92) 0%,rgba(20,40,28,0.88) 60%,rgba(28,74,58,0.86) 100%);pointer-events:none;}
.sns-sec > *{position:relative;z-index:2;}
.sns-sec h2{font-size:2.2rem;font-weight:900;color:#fff;margin-bottom:14px;letter-spacing:-0.3px;text-shadow:0 4px 20px rgba(0,0,0,0.5);}
.sns-sec p{color:rgba(255,255,255,0.92);font-size:1.05rem;margin-bottom:44px;font-weight:500;text-shadow:0 2px 12px rgba(0,0,0,0.5);}
.sns-links{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;position:relative;z-index:2;}
.sns-link{display:inline-flex;align-items:center;gap:10px;padding:15px 36px;color:#ffffff;font-size:1.1rem;font-weight:800;text-decoration:none;transition:background 0.25s ease,border-color 0.25s ease;background:rgba(0,0,0,0.35);border:1.5px solid rgba(255,255,255,0.5);letter-spacing:0.3px;position:relative;}
.sns-link:hover{background:rgba(0,0,0,0.55);border-color:rgba(255,255,255,0.8);}
/* 네이버 블로그 버튼 — 네이버 공식 초록(#03C75A) 박스 + 블로그 마크 */
.naver-blog-mark{width:24px;height:24px;flex:0 0 24px;display:block;}
.sns-link-naver{background:#03C75A;border-color:#03C75A;color:#fff;}
.sns-link-naver:hover{background:#02b350;border-color:#02b350;}
.rp-cta-naver{background:#03C75A;border-color:#03C75A;color:#fff;}
.rp-cta-naver:hover{background:#02b350;border-color:#02b350;color:#fff;}

footer{background:var(--dark);padding:36px 120px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;border-top:1px solid rgba(255,255,255,0.06);}
.footer-logo{font-family:'Jost',sans-serif;font-size:1rem;font-weight:700;color:#fff;letter-spacing:3px;cursor:pointer;}
.footer-info{font-size:0.88rem;color:rgba(255,255,255,0.5);line-height:2;}
.footer-copy{font-size:0.8rem;color:rgba(255,255,255,0.35);}

/* ─── 모바일 햄버거 메뉴 ─── */
.mob-menu-btn{display:none;background:transparent;border:none;cursor:pointer;width:42px;height:42px;padding:0;align-items:center;justify-content:center;color:var(--text);}
.mob-menu-btn span{display:block;position:relative;width:22px;height:2px;background:currentColor;transition:all 0.25s;}
.mob-menu-btn span::before,.mob-menu-btn span::after{content:'';position:absolute;left:0;width:22px;height:2px;background:currentColor;transition:all 0.25s;}
.mob-menu-btn span::before{top:-7px;}
.mob-menu-btn span::after{top:7px;}
.mob-menu-btn.open span{background:transparent;}
.mob-menu-btn.open span::before{top:0;transform:rotate(45deg);}
.mob-menu-btn.open span::after{top:0;transform:rotate(-45deg);}

/* === MOBILE FLUID (Edge25 412px reference) === */
@media(max-width:900px){
  h1, h2, h3, h4, h5, p, li, label, summary, span, a { word-break: keep-all; }

  header{padding:0 clamp(14px, 4vw, 20px);height: clamp(56px, 15vw, 62px);z-index:330;}
  header.on-hero{height: clamp(56px, 15vw, 62px);}
  /* 햄버거 버튼 켜기 (오른쪽 정렬) */
  .mob-menu-btn{display:flex!important;align-items:center;justify-content:center;flex-shrink:0;z-index:320;margin-left:auto;}
  .header-sns{display:none;}
  .logo{flex-shrink:0;}
  .logo-img{height:34px;}
  .logo-kr{font-size:1.02rem;margin-left:8px;}
  /* nav = 펼침 패널 (기본 숨김, .open일 때 슬라이드 다운) */
  nav{
    position:fixed;top: clamp(56px, 15vw, 62px);left:0;right:0;
    display:flex!important;flex-direction:column;align-items:stretch;gap:0;
    background:#fff;border-bottom:1px solid var(--border);
    box-shadow:0 12px 28px rgba(0,0,0,0.12);
    max-height:0;overflow:hidden;opacity:0;pointer-events:none;
    transition:max-height 0.32s ease,opacity 0.25s ease;z-index:320;
  }
  nav.open{max-height:calc(100vh - 56px);overflow-y:auto;opacity:1;pointer-events:auto;}
  .nav-item{position:static;flex-shrink:0;border-bottom:1px solid #f0f0f0;height:auto;display:block;align-items:initial;}
  .nav-item>a{display:block;padding:16px 22px;height:auto;line-height:1.3;font-size:1rem;font-weight:600;color:#1a1a1a!important;-webkit-text-fill-color:#1a1a1a!important;white-space:nowrap;letter-spacing:-0.2px;}
  .nav-item:hover .dropdown{display:none;}
  .nav-item.mob-open .dropdown{display:block!important;}
  /* 모바일 dropdown = 펼침 패널 안의 서브 항목 (들여쓰기·연한 배경) */
  .dropdown{position:static;top:auto;min-width:0;width:100%;box-shadow:none;border:none;background:#f7f9f8;z-index:auto;}
  .dropdown a{padding:13px 22px 13px 38px;font-size:0.92rem;color:#444!important;-webkit-text-fill-color:#444!important;white-space:nowrap;border-bottom:1px solid #eef0ef;}
  /* 햄버거 펼침 시 바깥 영역 오버레이 (누르면 닫힘) */
  #mob-nav-overlay{position:fixed;left:0;right:0;bottom:0;top: clamp(56px, 15vw, 62px);background:rgba(0,0,0,0.28);z-index:300;opacity:0;pointer-events:none;transition:opacity 0.25s;}
  #mob-nav-overlay.show{opacity:1;pointer-events:auto;}
  #history-back-btn{top:80px!important;left:12px!important;padding: clamp(6.99px, 1.94vw, 8px) clamp(13.99px, 3.88vw, 16px) !important;font-size: clamp(0.6468rem, 2.88vw, 0.74rem) !important;z-index:50!important;}
  .stats-strip,.sec{padding: clamp(41.95px, 11.65vw, 48px) clamp(17.48px, 4.85vw, 20px);}
  .company-grid,.fund-grid,.contact-grid{grid-template-columns:1fr;}
  .cform-row{grid-template-columns:1fr;}
  .research-grid{grid-template-columns:1fr;}
  .sns-sec,.footer{padding: clamp(41.95px, 11.65vw, 48px) clamp(17.48px, 4.85vw, 20px);}
  /* 모바일 푸터 압축 — 줄간격 2.0은 너무 길다 */
  footer{padding:26px 20px;gap:10px;}
  .footer-info{line-height:1.65;font-size:0.82rem;}
  .footer-copy{line-height:1.6;font-size:0.76rem;}
  /* 모바일: 4개 항목을 2x2로 (3+1로 깨지던 문제 수정) */
  .stats-strip{display:grid;grid-template-columns:1fr 1fr;gap:28px 12px;justify-items:center;}
  .stats-strip .strip-item{width:100%;text-align:center;}
  .hero,.history-hero,.fp-hero,.rp-hero,.gp-hero{padding-top: clamp(69.92px, 19.42vw, 80px) !important;}
  /* Fixed-header overlap fix — disclosure subpage section eyebrow clipped */
  #disclosure{padding-top: clamp(80px, 20vw, 100px) !important;}
}

/* === TABLET FLUID (PC 1024px reference, 641-1023px) === */
@media (min-width: 641px) and (max-width: 1023px) {
  header{padding: 0 clamp(20px, 3.13vw, 32px);}
  .stats-strip,.sec{padding: clamp(60px, 9.38vw, 96px) clamp(37.5px, 5.86vw, 60px);}
  .sns-sec,footer{padding: clamp(60px, 9.38vw, 96px) clamp(37.5px, 5.86vw, 60px);}
  .research-grid{grid-template-columns: repeat(2, 1fr);}
  .rp-articles{grid-template-columns: repeat(2, 1fr);}
  .rp-stats-grid{grid-template-columns: repeat(2, 1fr);}
  .rp-schedule-grid{grid-template-columns: repeat(2, 1fr);}
}

/* ─── ADMIN STYLES ─── */
#adm-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.6);z-index:9000;backdrop-filter:blur(3px);}
#adm-overlay.show{display:block;}

#login-modal,#pw-modal{display:none;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;padding:36px 32px;width:340px;max-width:92vw;z-index:9001;box-shadow:0 24px 60px rgba(0,0,0,0.3);border-top:4px solid var(--green);}
#login-modal.show,#pw-modal.show{display:block;}
.lm-title{font-family:'Jost',sans-serif;font-size:1.05rem;font-weight:600;letter-spacing:3px;color:var(--green);margin-bottom:6px;}
.lm-sub{font-size:0.78rem;color:var(--sub);margin-bottom:18px;}
.lm-input{display:block;width:100%;padding:12px 14px;border:1px solid var(--border);font-size:0.9rem;font-family:inherit;margin-bottom:10px;outline:none;}
.lm-input:focus{border-color:var(--green);}
.lm-btn{display:block;width:100%;padding:13px;background:var(--green);color:#fff;border:none;font-weight:700;font-size:0.88rem;cursor:pointer;font-family:inherit;letter-spacing:1px;}
.lm-btn:hover{background:var(--green2);}
.lm-cancel{display:block;width:100%;padding:11px;background:none;color:var(--sub);border:none;font-size:0.82rem;cursor:pointer;font-family:inherit;margin-top:6px;}
.lm-msg{font-size:0.78rem;margin-bottom:8px;display:none;}
.lm-msg.err{color:#e94560;}
.lm-msg.ok{color:var(--green);}

#adm-fab{display:none;position:fixed;bottom:24px;left:24px;right:auto;z-index:9600;width:56px;height:56px;border-radius:50%;background:var(--green);color:#fff;font-size:1.4rem;border:none;cursor:pointer;box-shadow:0 10px 30px rgba(42,84,56,0.4);transition:transform 0.2s;}
#adm-fab:hover{transform:scale(1.08);}
body.adm-on #adm-fab{display:flex;align-items:center;justify-content:center;}

#adm-panel{position:fixed;top:0;right:-420px;bottom:0;width:420px;max-width:92vw;background:#fff;z-index:9050;box-shadow:-12px 0 40px rgba(0,0,0,0.18);transition:right 0.3s ease;display:flex;flex-direction:column;}
#adm-panel.show{right:0;}
.ap-head{padding:22px 24px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;background:var(--dark);color:#fff;}
/* admin 패널 제목 — about 섹션 .ap-title(남색)과 클래스명 충돌 → #adm-panel로 구체화해서 흰색 강제 */
#adm-panel .ap-head .ap-title{font-family:'Jost',sans-serif;font-size:0.95rem;font-weight:600;letter-spacing:2px;color:#fff !important;font-style:normal;text-align:left;margin:0;}
.ap-close{background:none;border:none;color:#fff;font-size:1.4rem;cursor:pointer;}
.ap-tabs{display:flex;border-bottom:1px solid var(--border);}
.ap-tab{flex:1;padding:14px 8px;background:none;border:none;border-bottom:3px solid transparent;font-size:0.78rem;font-weight:700;color:var(--sub);cursor:pointer;font-family:inherit;transition:all 0.2s;}
.ap-tab.active{color:var(--green);border-bottom-color:var(--green);background:var(--green-light);}
.ap-tab:hover:not(.active){background:#f8f9fa;}
.ap-body{flex:1;overflow-y:auto;padding:18px;}
.ap-pane{display:none;}
.ap-pane.active{display:block;}

.ap-card{background:#f8f9fa;padding:22px 22px;margin-bottom:16px;border-left:4px solid var(--green);border-radius:6px;}
.ap-card h4{font-size:1rem;margin-bottom:10px;line-height:1.4;}
.ap-page-btn{display:flex;align-items:center;justify-content:center;padding:18px 12px;background:#fff;border:1px solid rgba(42,84,56,0.25);border-radius:6px;color:var(--green);text-decoration:none;font-weight:700;font-size:0.92rem;letter-spacing:0.5px;transition:all 0.18s;}
.ap-page-btn:hover{background:var(--green);color:#fff;border-color:var(--green);transform:translateY(-1px);box-shadow:0 4px 12px rgba(42,84,56,0.2);}
.ap-card h4{font-size:0.84rem;font-weight:700;color:var(--text);margin-bottom:10px;display:flex;align-items:center;justify-content:space-between;}
.ap-card h4 .ap-tag{font-size:0.66rem;color:var(--sub);font-weight:500;letter-spacing:1px;}
.ap-fld{display:flex;flex-direction:column;gap:5px;margin-bottom:8px;}
.ap-fld label{font-size:0.7rem;color:var(--sub);letter-spacing:1px;font-weight:600;text-transform:uppercase;}
.ap-fld input[type=text],.ap-fld input[type=tel],.ap-fld input[type=email],.ap-fld textarea{padding:9px 11px;border:1px solid var(--border);font-family:inherit;font-size:0.84rem;outline:none;background:#fff;width:100%;}
.ap-fld input:focus,.ap-fld textarea:focus{border-color:var(--green);}
.ap-fld textarea{resize:vertical;min-height:60px;}
.ap-fld input[type=color]{width:40px;height:32px;border:1px solid var(--border);padding:2px;cursor:pointer;background:#fff;}
.ap-row{display:flex;gap:10px;align-items:center;width:100%;flex-wrap:nowrap;margin-bottom:8px;}
.ap-row label{flex:1 1 auto;min-width:0;font-size:0.82rem;color:var(--text);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ap-row > input[type=color]{flex:0 0 46px;width:46px;height:28px;padding:0;border:1px solid var(--border);cursor:pointer;}
.ap-row > label:last-child{flex:0 0 auto;white-space:nowrap;}
.ap-mini-btn{padding:4px 10px;background:none;border:1px solid var(--border);color:var(--sub);font-size:0.72rem;cursor:pointer;font-family:inherit;}
.ap-mini-btn:hover{color:var(--green);border-color:var(--green);}
.ap-mini-btn.danger{color:#e94560;border-color:#fce4e8;}
.ap-mini-btn.danger:hover{background:#fce4e8;}
.ap-action-btn{display:block;width:100%;padding:11px;background:var(--green);color:#fff;border:none;font-weight:700;font-size:0.84rem;cursor:pointer;font-family:inherit;margin-top:8px;letter-spacing:1px;}
.ap-action-btn:hover{background:var(--green2);}
.ap-action-btn.alt{background:#fff;color:var(--green);border:1px solid var(--green);}
.ap-action-btn.alt:hover{background:var(--green-light);}
.ap-saved-flash{display:none;padding:8px 12px;background:var(--green-light);color:var(--green);font-size:0.78rem;font-weight:700;text-align:center;margin-bottom:10px;}
.ap-saved-flash.show{display:block;animation:apFlash 2s ease forwards;}
@keyframes apFlash{0%{opacity:0;}10%{opacity:1;}80%{opacity:1;}100%{opacity:0;}}

.ap-theme-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.ap-theme-btn{padding:14px 8px;border:1px solid var(--border);background:#fff;cursor:pointer;font-family:inherit;font-size:0.74rem;font-weight:700;letter-spacing:0.5px;color:var(--text);transition:all 0.2s;}
.ap-theme-btn:hover{border-color:var(--green);color:var(--green);}
.ap-theme-btn.dark{background:var(--dark);color:#fff;border-color:var(--dark);}
.ap-theme-btn.wine{background:#3a1a25;color:#d4a574;border-color:#3a1a25;}

.ap-section-row{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;padding:8px 10px;background:#fff;margin-bottom:6px;}
.ap-section-row span{font-size:0.84rem;color:var(--text);}

.ap-help{font-size:0.74rem;color:var(--sub);padding:10px 12px;background:#fffbeb;border-left:3px solid #f5a623;margin-bottom:12px;line-height:1.6;}

/* Inline edit highlight */
body.adm-edit [data-e]{outline:1px dashed rgba(42,84,56,0.4);outline-offset:2px;cursor:text;min-height:.8em;border-radius:2px;}
body.adm-edit [data-e]:hover{outline-color:var(--green);background:rgba(42,84,56,0.04);}
body.adm-edit [data-e]:focus{outline:2px solid var(--green);background:rgba(42,84,56,0.06);}
body.adm-edit .editable-img{cursor:pointer;position:relative;}
body.adm-edit .editable-img::after{content:'📷 클릭하여 변경';position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(42,84,56,0.85);color:#fff;font-size:0.86rem;font-weight:700;opacity:0;transition:opacity 0.2s;pointer-events:none;}
body.adm-edit .editable-img:hover::after{opacity:1;}

/* Floating quick-edit hint */
.adm-edit-hint{display:none;position:fixed;top:84px;left:50%;transform:translateX(-50%);background:var(--green);color:#fff;padding:10px 22px;font-size:0.84rem;font-weight:700;z-index:8400;box-shadow:0 6px 20px rgba(42,84,56,0.4);}
body.adm-edit .adm-edit-hint{display:block;}

/* ════ POPUP NOTICE (4-SECTION LAYOUT) ════ */
#site-popup{display:none;position:fixed;inset:0;background:rgba(13,17,23,0.62);backdrop-filter:blur(4px);z-index:9000;align-items:center;justify-content:center;padding:20px;animation:popFade 0.4s ease;}
#site-popup.show{display:flex;}
@keyframes popFade{from{opacity:0}to{opacity:1}}

.popup-card{width:100%;max-width:450px;max-height:calc(100vh - 40px);display:flex;flex-direction:column;box-shadow:0 30px 80px rgba(0,0,0,0.45);position:relative;animation:popUp 0.45s cubic-bezier(0.16,1,0.3,1);font-family:'Noto Sans KR',sans-serif;overflow:hidden;border-radius:6px;background:#fff;}
@keyframes popUp{from{transform:translateY(30px) scale(0.96);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}

/* X close button */
.popup-card .popup-x{position:absolute;top:14px;right:16px;background:transparent;border:none;font-size:1.5rem;cursor:pointer;color:#484848;line-height:1;padding:4px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:color 0.2s;font-family:inherit;z-index:5;}
.popup-card .popup-x:hover{color:#333;}

/* SECTION 1: TITLE */
.popup-section-title{padding:clamp(14px,3.2vh,30px) 26px clamp(10px,2vh,20px);text-align:center;border-bottom:1px solid #e5e7eb;}
.popup-section-title .popup-icon-circle{width:clamp(44px,7vh,56px);height:clamp(44px,7vh,56px);border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:clamp(26px,4vh,32px);font-weight:800;margin:0 auto clamp(8px,1.6vh,14px);transform:rotate(45deg);}
.popup-section-title .popup-icon-circle > *{transform:rotate(-45deg);}
.popup-section-title .popup-icon-circle.warning{background:#f5000f;color:#ffffff;}
.popup-section-title h3{font-size:clamp(1.05rem,2vh,1.19rem);font-weight:700;line-height:1.55;letter-spacing:-0.4px;white-space:pre-line;margin:0;}

/* SECTION 2: CONTENT */
.popup-section-content{padding:clamp(12px,2.6vh,26px) 26px;text-align:center;}
.popup-section-content .popup-red{color:#e60012;font-weight:700;display:block;}
.popup-section-content .popup-box{background:#f4f5f7;border-radius:4px;padding:clamp(10px,1.8vh,16px) 14px;margin-top:clamp(10px,2vh,18px);text-align:center;}
.popup-section-content .popup-box > *:first-child{font-weight:700;}
.popup-section-content .popup-image-wrap{margin-bottom:18px;}
.popup-section-content .popup-image-wrap img{width:100%;border-radius:4px;display:block;}
.popup-section-content .popup-body{font-size:clamp(0.84rem,1.6vh,0.95rem);line-height:clamp(1.5,2.6vh,1.7);white-space:pre-line;letter-spacing:-0.2px;margin:0;}

/* SECTION 3: LOGO */

.popup-section-logo .popup-logo-img{height:26px;width:auto;display:block;}
.popup-section-logo{padding:clamp(8px,1.7vh,16px) 0;display:flex;justify-content:center;align-items:center;gap:6px;}
.popup-section-logo .leaf{color:var(--green);font-size:1.05rem;}
.popup-section-logo .name{font-family:'Jost',sans-serif;font-weight:600;color:var(--green);font-size:0.95rem;letter-spacing:1.5px;}

/* SECTION 4: CLOSE (FIXED WHITE) */
#site-popup .popup-section-close{background:#ffffff;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 24px;border-top:1px solid #e5e7eb;}
.popup-section-close .popup-today{display:flex;align-items:center;gap:8px;font-size:0.88rem;color:#444;cursor:pointer;font-weight:400;}
.popup-section-close .popup-today input{cursor:pointer;width:14px;height:14px;accent-color:var(--green);}
.popup-section-close .popup-close{background:transparent;color:#374151;border:none;padding:6px 12px;font-size:0.9rem;font-weight:600;cursor:pointer;font-family:inherit;}
.popup-section-close .popup-close:hover{color:var(--green);}

@media (max-width:520px){
  .popup-section-title{padding:38px 22px 22px;}
  .popup-section-title h3{font-size:1.08rem;}
  .popup-section-content{padding:24px 24px 28px;}
  .popup-section-content .popup-body{font-size:0.9rem;}
  .popup-section-close{padding:12px 20px;}
}

/* ===== HISTORY PAGE — premium magazine layout ===== */
:root{
  --gold:#c9a268;
  --ivory:#fdfdfb;
  --ivory-2:#f8f7f3;
  --navy:#0e1b22;
}
#history.history-premium{padding:0;background:var(--ivory);}
.history-hero{position:relative;width:100%;height:auto;min-height:380px;padding:96px 0 32px;background:linear-gradient(135deg,#0e1b22 0%,#143028 60%,#1c4a3a 100%);overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;box-sizing:border-box;}
.history-hero::before{content:'';position:absolute;inset:0;background-image:url('https://images.unsplash.com/photo-1554260570-9140fd3b7614?w=1600&q=80');background-size:cover;background-position:center;opacity:0.18;filter:grayscale(0.4) blur(0.5px);animation:hhKenburns 24s ease-in-out infinite alternate;}
.history-hero::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 0%,rgba(14,27,34,0.55) 100%);}
@keyframes hhKenburns{0%{transform:scale(1.08) translate(-1%,-1%);}100%{transform:scale(1.18) translate(1.5%,1.5%);}}
.history-hero-inner{position:relative;z-index:2;padding:0 24px;}
.history-hero-eyebrow{font-family:'Jost',sans-serif;font-size:0.86rem;letter-spacing:4px;color:#e8c890;font-weight:700;margin-bottom:18px;text-transform:uppercase;white-space:normal;word-break:keep-all;}
.history-hero h1{font-family:'Jost','Noto Sans KR',sans-serif;font-size:clamp(2.6rem,5.5vw,4.4rem);font-weight:600;line-height:1.05;letter-spacing:0.5px;margin-bottom:14px;color:#fff;text-shadow:0 4px 24px rgba(0,0,0,0.4);}
.history-hero-sub{font-size:0.95rem;letter-spacing:6px;color:rgba(255,255,255,0.78);font-weight:300;}
.history-hero-rule{display:block;width:60px;height:1px;background:var(--gold);margin:22px auto 0;}

.history-graph-wrap{max-width:980px;margin:0 auto;padding:64px 32px 24px;}
.history-graph-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px;border-bottom:1px solid #d5d2ca;padding-bottom:14px;}
.history-graph-title{font-family:'Jost','Noto Sans KR',sans-serif;font-size:1.8rem;color:var(--navy);font-weight:600;}
.history-graph-cap{font-family:'Jost',sans-serif;font-size:0.84rem;letter-spacing:2.5px;color:#5a5a52;text-transform:uppercase;font-weight:600;}
.history-graph-svg{width:100%;height:230px;display:block;}
.hg-grid{stroke:#e7e3d8;stroke-width:1;}
.hg-axis{stroke:#bfbab0;stroke-width:1;}
.hg-line{fill:none;stroke:var(--green);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 6px rgba(42,84,56,0.25));stroke-dasharray:2000;stroke-dashoffset:2000;animation:hgDraw 2.4s ease 0.4s forwards;}
@keyframes hgDraw{to{stroke-dashoffset:0;}}
.hg-area{fill:url(#hgGrad);opacity:0;animation:hgFade 1.4s ease 1.6s forwards;}
@keyframes hgFade{to{opacity:0.55;}}
.hg-dot{fill:#fff;stroke:var(--green);stroke-width:2.4;}
.hg-dot-end{fill:var(--gold);stroke:#fff;stroke-width:2.4;}
.hg-label{font-family:'Jost',sans-serif;font-size:13px;fill:#3a3a32;font-weight:600;}
.hg-val{font-family:'Jost','Noto Sans KR',sans-serif;font-size:16px;fill:var(--navy);font-weight:700;}

.history-timeline{max-width:1080px;margin:0 auto;padding:32px 32px 80px;}
.year-card{position:relative;display:grid;grid-template-columns:300px 1fr;gap:60px;padding:64px 40px;background:var(--ivory);border-bottom:1px solid #ece7da;opacity:0;transform:translateY(28px);transition:opacity 0.9s ease,transform 0.9s ease;}
.year-card.in-view{opacity:1;transform:translateY(0);}
.year-card:nth-child(even){background:#f4f6f1;}
.year-card:first-child{border-top:1px solid #ece7da;}
.year-card-meta{position:relative;}
.year-card-cap{font-family:'Jost',sans-serif;font-size:0.86rem;letter-spacing:4px;color:#a37a3a;font-weight:700;text-transform:uppercase;margin-bottom:10px;}
.year-card-num{font-family:'Jost','Noto Sans KR',sans-serif;font-size:clamp(4.6rem,7.5vw,6.8rem);font-weight:600;color:var(--green);line-height:0.95;letter-spacing:-2px;}
.year-card-theme{font-family:'Jost','Noto Sans KR',sans-serif;font-size:1.25rem;color:var(--navy);margin-top:10px;letter-spacing:0.3px;}
.year-card-rule{display:block;width:42px;height:2px;background:var(--gold);margin-top:18px;}
.year-card-events{display:flex;flex-direction:column;gap:18px;padding-top:14px;}
.evt{display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:baseline;padding-left:6px;}
.evt-month{font-family:'Pretendard','Noto Sans KR',sans-serif;font-size:0.85rem;color:var(--green);font-weight:700;letter-spacing:1px;white-space:nowrap;}
.evt-month::before{content:'·';color:var(--gold);margin-right:8px;font-weight:700;}
.evt-text{font-family:'Noto Sans KR',sans-serif;font-size:0.96rem;color:#1a1a1a;line-height:1.7;}
.evt-text strong{color:var(--navy);font-weight:700;}
.evt.evt-highlight{background:linear-gradient(180deg,#fffaf1 0%,#fff7e6 100%);border-left:3px solid var(--gold);padding:14px 16px 14px 18px;margin-left:-6px;border-radius:2px;}
.evt.evt-highlight .evt-month{color:var(--gold);}
.evt.evt-highlight .evt-text strong{color:#a37a3a;}
/* 연혁 타임라인 태블릿 — 300px 고정 메타컬럼이 긴 펀드명(keep-all 한 단어)과 만나면 가로 넘침 → 모바일처럼 1열 (base .year-card보다 뒤에 위치해야 적용됨) */
@media (min-width: 641px) and (max-width: 1023px) {
  .year-card{grid-template-columns:1fr;gap:28px;padding:52px 32px;}
}

.history-closing{max-width:980px;margin:0 auto;padding:96px 32px 120px;text-align:center;background:#fff;}
.history-closing-rule{display:block;width:80px;height:1px;background:var(--gold);margin:0 auto 26px;}
.history-closing-eyebrow{font-family:'Jost',sans-serif;font-size:0.86rem;letter-spacing:5px;color:#a37a3a;font-weight:700;text-transform:uppercase;margin-bottom:24px;}
.history-closing-quote{font-family:'Pretendard','Noto Sans KR',sans-serif;font-size:clamp(1.3rem,2.3vw,1.85rem);color:var(--navy);line-height:1.55;font-weight:600;max-width:760px;margin:0 auto 56px;letter-spacing:-0.01em;}
.history-future-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin:0 0 56px;}
.future-item{padding:32px 22px;background:var(--ivory-2);border-top:2px solid var(--green);text-align:center;}
.future-item-cap{font-family:'Jost',sans-serif;font-size:0.82rem;letter-spacing:3px;color:#a37a3a;font-weight:700;margin-bottom:12px;text-transform:uppercase;}
.future-item-title{font-family:'Jost','Noto Sans KR',sans-serif;font-size:1.55rem;color:var(--navy);font-weight:600;margin-bottom:8px;}
.future-item-desc{font-size:0.95rem;color:#3a3a32;line-height:1.7;font-weight:500;}
.history-cta{display:inline-flex;align-items:center;gap:10px;padding:16px 38px;background:var(--green);color:#fff;text-decoration:none;font-family:'Jost',sans-serif;font-size:0.78rem;font-weight:700;letter-spacing:3px;text-transform:uppercase;transition:all 0.25s;border:1px solid var(--green);}
.history-cta:hover{background:transparent;color:var(--green);}

@media (max-width:760px){
  .history-hero{height: clamp(209.76px, 58.25vw, 240px);}
  .history-hero h1{font-size: clamp(1.9228rem, 8.54vw, 2.2rem);}
  .history-hero-sub{font-size: clamp(0.6817rem, 3.03vw, 0.78rem);letter-spacing: clamp(3.5px, 0.97vw, 4px);}
  .history-graph-wrap{padding: clamp(34.96px, 9.71vw, 40px) clamp(15.73px, 4.37vw, 18px) clamp(13.98px, 3.88vw, 16px);}
  .history-graph-svg{height: clamp(157.32px, 43.69vw, 180px);}
  .history-timeline{padding: clamp(15.73px, 4.37vw, 18px) clamp(15.73px, 4.37vw, 18px) clamp(52.44px, 14.56vw, 60px);}
  .year-card{grid-template-columns:1fr;gap: clamp(20.98px, 5.83vw, 24px);padding: clamp(41.95px, 11.65vw, 48px) clamp(19.23px, 5.34vw, 22px);}
  .year-card-num{font-size: clamp(3.6708rem, 16.31vw, 4.2rem);}
  .evt{grid-template-columns:auto 1fr;gap: clamp(12.24px, 3.4vw, 14px);}
  .evt-text{font-size: clamp(0.7866rem, 3.5vw, 0.9rem);}
  .history-future-grid{grid-template-columns:1fr;gap: clamp(15.73px, 4.37vw, 18px);}
  .history-closing{padding: clamp(55.94px, 15.53vw, 64px) clamp(15.73px, 4.37vw, 18px) clamp(69.92px, 19.42vw, 80px);}
}

#history-back-btn:hover{background:var(--green2)!important;transform:translateX(-3px);}

/* ════ GREETINGS PREMIUM (#/greetings 인사말 서브페이지) ════ */
#greetings.greetings-premium{padding:0;background:var(--ivory);}
.gp-hero{position:relative;width:100%;height:auto;min-height:380px;padding:96px 0 32px;background:linear-gradient(135deg,#0e1b22 0%,#143028 60%,#1c4a3a 100%);overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;box-sizing:border-box;}
.gp-hero::before{content:'';position:absolute;inset:0;background-image:url('https://images.unsplash.com/photo-1497366216548-37526070297c?w=1800&q=90');background-size:cover;background-position:center;opacity:0.28;filter:grayscale(0.2) blur(0.5px);animation:hhKenburns 24s ease-in-out infinite alternate;}
.gp-hero::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 0%,rgba(14,27,34,0.55) 100%);}
.gp-hero-inner{position:relative;z-index:2;padding:0 24px;}
.gp-hero-eyebrow{font-family:'Jost',sans-serif;font-size:0.86rem;letter-spacing:4px;color:#e8c890;font-weight:700;margin-bottom:18px;text-transform:uppercase;}
.gp-hero h1{font-family:'Jost','Noto Sans KR',sans-serif;font-size:clamp(2.6rem,5.5vw,4.4rem);font-weight:600;line-height:1.05;letter-spacing:0.5px;margin-bottom:14px;color:#fff;text-shadow:0 4px 24px rgba(0,0,0,0.4);}
.gp-hero-sub{font-size:1rem;letter-spacing:5px;color:rgba(255,255,255,0.82);font-weight:400;}
.gp-hero-rule{display:block;width:60px;height:2px;background:var(--gold);margin:22px auto 0;}

.gp-quote-wrap{max-width:980px;margin:0 auto;padding:80px 32px 24px;text-align:center;}
.gp-quote-eyebrow{font-family:'Jost',sans-serif;font-size:0.86rem;letter-spacing:5px;color:#a37a3a;font-weight:700;text-transform:uppercase;margin-bottom:24px;}
.gp-quote-rule{display:block;width:60px;height:2px;background:var(--gold);margin:0 auto 28px;}
.gp-quote-headline{font-family:'Jost','Noto Sans KR',sans-serif;font-size:clamp(1.8rem,3.2vw,2.6rem);color:var(--navy);font-weight:600;line-height:1.4;letter-spacing:0.3px;}
.gp-quote-headline::before{content:'"';display:block;font-size:3.6rem;color:var(--gold);margin-bottom:6px;font-family:'Jost','Noto Sans KR',sans-serif;line-height:1;}

.gp-body-wrap{max-width:880px;margin:0 auto;padding:48px 32px 96px;}
.gp-body p{font-family:'Pretendard','Noto Sans KR',sans-serif;font-size:1.08rem;color:#1f1f1a;line-height:2.05;margin-bottom:28px;font-weight:500;letter-spacing:-0.01em;}
.gp-body p strong{color:var(--navy);font-weight:700;}
.gp-body-rule{display:block;width:80px;height:1px;background:#d5d2ca;margin:48px auto;}
.gp-signature{text-align:right;margin-top:48px;padding-top:32px;border-top:1px solid #d5d2ca;}
.gp-signature-cap{font-family:'Jost',sans-serif;font-size:0.78rem;letter-spacing:3px;color:#a37a3a;font-weight:700;text-transform:uppercase;margin-bottom:8px;}
.gp-signature-name{font-family:'Jost','Noto Sans KR',sans-serif;font-size:1.7rem;color:var(--navy);font-weight:600;}
.gp-signature-role{font-family:'Pretendard',sans-serif;font-size:0.95rem;color:#3a3a32;font-weight:500;margin-top:6px;}

@media (max-width:760px){
  .gp-hero h1{font-size: clamp(1.9228rem, 8.54vw, 2.2rem);}
  .gp-hero-sub{font-size: clamp(0.7167rem, 3.18vw, 0.82rem);letter-spacing: clamp(2.622px, 0.73vw, 3px);}
  .gp-quote-wrap{padding: clamp(41.95px, 11.65vw, 48px) clamp(15.73px, 4.37vw, 18px) clamp(13.98px, 3.88vw, 16px);}
  .gp-quote-headline::before{font-size: clamp(2.272rem, 10.1vw, 2.6rem);}
  .gp-body-wrap{padding: clamp(27.97px, 7.77vw, 32px) clamp(15.73px, 4.37vw, 18px) clamp(55.94px, 15.53vw, 64px);}
  .gp-body p{font-size: clamp(0.874rem, 3.88vw, 1rem);line-height:1.95;}
}

/* ════ ABOUT PREMIUM (메인 페이지 #about 섹션, 연혁/펀드/리서치와 톤 일치) ════ */
#about.about-premium{background:var(--ivory);padding:96px 60px;}
.ap-inner{max-width:1180px;margin:0 auto;}
.ap-eyebrow{font-family:'Jost',sans-serif;font-size:0.86rem;letter-spacing:5px;color:#a37a3a;font-weight:700;text-transform:uppercase;margin-bottom:14px;text-align:center;}
.ap-title{font-family:'Jost','Noto Sans KR',sans-serif;font-size:clamp(1.9rem,3.4vw,2.8rem);color:var(--navy);font-weight:600;line-height:1.3;text-align:center;margin-bottom:14px;letter-spacing:0.3px;}
.ap-rule{display:block;width:60px;height:2px;background:var(--gold);margin:0 auto 56px;}
.ap-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center;}
.ap-text{font-family:'Pretendard','Noto Sans KR',sans-serif;font-size:1.02rem;color:#1f1f1a;line-height:2.05;font-weight:500;}
.ap-text strong{color:var(--navy);font-weight:700;}
.ap-text-quote{font-family:'Jost','Noto Sans KR',sans-serif;font-size:1.25rem;color:var(--navy);line-height:1.65;padding:18px 22px;border-left:3px solid var(--gold);background:linear-gradient(180deg,#fffaf1 0%,#fff7e6 100%);margin:24px 0;}
.ap-kpi{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid #d5d2ca;border-left:1px solid #d5d2ca;}
.ap-kpi-item{padding:30px 24px;text-align:center;border-right:1px solid #d5d2ca;border-bottom:1px solid #d5d2ca;background:#fff;position:relative;}
.ap-kpi-item::before{content:'';position:absolute;top:0;left:0;width:100%;height:2px;background:var(--gold);transform:scaleX(0);transition:transform 0.3s;transform-origin:left;}
.ap-kpi-item:hover::before{transform:scaleX(1);}
.ap-kpi-cap{font-family:'Jost',sans-serif;font-size:0.78rem;letter-spacing:2.5px;color:#a37a3a;font-weight:700;text-transform:uppercase;margin-bottom:10px;}
.ap-kpi-num{font-family:'Jost','Noto Sans KR',sans-serif;font-size:3.4rem;font-weight:600;color:var(--green);line-height:1;letter-spacing:-1px;margin-bottom:10px;}
.ap-kpi-num span{font-size:1.8rem;color:#a37a3a;margin-left:4px;font-weight:600;}
.ap-kpi-label{font-family:'Pretendard',sans-serif;font-size:0.92rem;color:#3a3a32;font-weight:600;}
.ap-info{margin-top:28px;padding-top:24px;border-top:1px solid #d5d2ca;display:grid;grid-template-columns:1fr 1fr;gap:14px 24px;font-size:0.95rem;}
.ap-info-row{display:flex;gap:10px;color:#3a3a32;font-weight:500;}
.ap-info-row strong{color:var(--navy);font-weight:700;font-family:'Jost',sans-serif;font-size:0.78rem;letter-spacing:1.5px;text-transform:uppercase;min-width:60px;padding-top:2px;}
@media (max-width:760px){
  #about.about-premium{padding: clamp(55.94px, 15.53vw, 64px) clamp(19.23px, 5.34vw, 22px);}
  .ap-grid{grid-template-columns:1fr;gap: clamp(31.46px, 8.74vw, 36px);}
  .ap-kpi-num{font-size: clamp(1.9228rem, 8.54vw, 2.2rem);}
  .ap-info{grid-template-columns:1fr;}
}
/* ── 회사개요 진입 모션 (subtle, 한 번만) ── */
#about.about-premium .ap-eyebrow,
#about.about-premium .ap-title,
#about.about-premium .ap-grid > div,
#about.about-premium .ap-kpi-item{opacity:0;transform:translateY(20px);transition:opacity 0.75s cubic-bezier(0.22,0.7,0.4,1),transform 0.75s cubic-bezier(0.22,0.7,0.4,1);}
#about.about-premium .ap-rule{transform:scaleX(0);transition:transform 0.7s cubic-bezier(0.22,0.7,0.4,1) 0.3s;}
#about.about-premium.in-view .ap-eyebrow{opacity:1;transform:translateY(0);}
#about.about-premium.in-view .ap-title{opacity:1;transform:translateY(0);transition-delay:0.1s;}
#about.about-premium.in-view .ap-rule{transform:scaleX(1);}
#about.about-premium.in-view .ap-grid > div:first-child{opacity:1;transform:translateY(0);transition-delay:0.4s;}
#about.about-premium.in-view .ap-grid > div:last-child{opacity:1;transform:translateY(0);transition-delay:0.45s;}
#about.about-premium.in-view .ap-kpi-item:nth-child(1){opacity:1;transform:translateY(0);transition-delay:0.5s;}
#about.about-premium.in-view .ap-kpi-item:nth-child(2){opacity:1;transform:translateY(0);transition-delay:0.58s;}
#about.about-premium.in-view .ap-kpi-item:nth-child(3){opacity:1;transform:translateY(0);transition-delay:0.66s;}
#about.about-premium.in-view .ap-kpi-item:nth-child(4){opacity:1;transform:translateY(0);transition-delay:0.74s;}

/* ════ FUNDS PREMIUM (history-premium 톤 일치) ════ */
#funds.funds-premium{padding:0;background:var(--ivory);}
.fp-hero{position:relative;width:100%;height:auto;min-height:380px;padding:96px 0 32px;background:linear-gradient(135deg,#0e1b22 0%,#143028 60%,#1c4a3a 100%);overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;box-sizing:border-box;}
.fp-hero::before{content:'';position:absolute;inset:0;background-image:url('https://images.unsplash.com/photo-1551836022-d5d88e9218df?w=1600&q=80');background-size:cover;background-position:center;opacity:0.20;filter:grayscale(0.3) blur(0.5px);animation:hhKenburns 24s ease-in-out infinite alternate;}
.fp-hero::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 0%,rgba(14,27,34,0.55) 100%);}
.fp-hero-inner{position:relative;z-index:2;padding:0 24px;}
.fp-hero-eyebrow{font-family:'Jost',sans-serif;font-size:0.86rem;letter-spacing:4px;color:#e8c890;font-weight:700;margin-bottom:18px;text-transform:uppercase;white-space:normal;word-break:keep-all;}
.fp-hero h1{font-family:'Jost','Noto Sans KR',sans-serif;font-size:clamp(2.6rem,5.5vw,4.4rem);font-weight:600;line-height:1.05;letter-spacing:0.5px;margin-bottom:14px;color:#fff;text-shadow:0 4px 24px rgba(0,0,0,0.4);}
.fp-hero-sub{font-size:0.95rem;letter-spacing:6px;color:rgba(255,255,255,0.78);font-weight:300;}
.fp-hero-rule{display:block;width:60px;height:1px;background:var(--gold);margin:22px auto 0;}

.fp-aum-wrap{max-width:980px;margin:0 auto;padding:64px 32px 24px;}
.fp-aum-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:24px;border-bottom:1px solid #d5d2ca;padding-bottom:14px;}
.fp-aum-title{font-family:'Jost','Noto Sans KR',sans-serif;font-size:1.8rem;color:var(--navy);font-weight:600;}
.fp-aum-cap{font-family:'Jost',sans-serif;font-size:0.84rem;letter-spacing:2.5px;color:#5a5a52;text-transform:uppercase;font-weight:600;}
.fp-aum-svg{width:100%;height:230px;display:block;}
.fp-aum-disclaimer{text-align:right;font-family:'Pretendard',sans-serif;font-size:0.86rem;letter-spacing:0.3px;color:#5a5a52;margin-top:14px;font-weight:500;}

.fp-philosophy{max-width:880px;margin:24px auto 0;padding:64px 32px 80px;text-align:center;}
.fp-philosophy-eyebrow{font-family:'Jost',sans-serif;font-size:0.86rem;letter-spacing:5px;color:#a37a3a;font-weight:700;text-transform:uppercase;margin-bottom:24px;}
.fp-philosophy-rule{display:block;width:60px;height:2px;background:var(--gold);margin:0 auto 26px;}
.fp-philosophy-quote{font-family:'Jost','Noto Sans KR',sans-serif;font-size:clamp(1.5rem,2.6vw,2.1rem);color:var(--navy);line-height:1.55;font-weight:600;letter-spacing:0.2px;}
.fp-philosophy-quote::before{content:'"';font-size:3rem;color:var(--gold);display:block;margin-bottom:6px;font-family:'Jost','Noto Sans KR',sans-serif;line-height:1;}

.fp-cards-wrap{max-width:1180px;margin:0 auto;padding:32px 32px 80px;}
.fp-cards-eyebrow{font-family:'Jost',sans-serif;font-size:0.84rem;letter-spacing:4px;color:#a37a3a;font-weight:700;text-transform:uppercase;margin-bottom:10px;}
.fp-cards-h2{font-family:'Jost','Noto Sans KR',sans-serif;font-size:clamp(1.7rem,2.8vw,2.4rem);color:var(--navy);font-weight:600;margin-bottom:36px;border-bottom:1px solid #d5d2ca;padding-bottom:18px;}
.fp-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;}
.fp-card{background:#fff;border:1px solid #ece7da;padding:36px 28px 32px;position:relative;transition:all 0.3s;}
.fp-card::before{content:'';position:absolute;top:0;left:0;width:0;height:3px;background:var(--gold);transition:width 0.4s;}
.fp-card:hover{box-shadow:0 16px 40px rgba(14,27,34,0.10);transform:translateY(-4px);}
.fp-card:hover::before{width:100%;}
.fp-card-tag{font-family:'Jost',sans-serif;font-size:0.78rem;letter-spacing:2.5px;color:#a37a3a;font-weight:700;text-transform:uppercase;margin-bottom:14px;}
.fp-card-name{font-family:'Jost','Noto Sans KR',sans-serif;font-size:1.55rem;font-weight:600;color:var(--navy);margin-bottom:18px;line-height:1.35;}
.fp-card-desc{font-size:0.95rem;color:#3a3a32;line-height:1.85;margin-bottom:20px;list-style:none;}
.fp-card-desc li{padding-left:14px;position:relative;margin-bottom:6px;}
.fp-card-desc li::before{content:'—';position:absolute;left:0;color:var(--gold);}
.fp-card-yield{padding-top:16px;border-top:1px solid #d5d2ca;font-family:'Jost',sans-serif;font-size:0.86rem;letter-spacing:1.5px;color:var(--green);font-weight:700;text-transform:uppercase;}

.fp-series-wrap{background:var(--ivory-2);padding:80px 32px 96px;}
.fp-series-inner{max-width:1180px;margin:0 auto;}
.fp-series-eyebrow{font-family:'Jost',sans-serif;font-size:0.84rem;letter-spacing:4px;color:#a37a3a;font-weight:700;text-transform:uppercase;margin-bottom:10px;text-align:center;}
.fp-series-h2{font-family:'Jost','Noto Sans KR',sans-serif;font-size:clamp(1.8rem,3vw,2.6rem);color:var(--navy);font-weight:600;margin-bottom:8px;text-align:center;}
.fp-series-sub{text-align:center;color:#3a3a32;font-size:1rem;margin-bottom:36px;font-weight:500;}
.fp-series-rule{display:block;width:60px;height:2px;background:var(--gold);margin:0 auto 40px;}
.fp-series-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;background:transparent;}
.fp-series-card{background:#fff;padding:32px 24px;cursor:pointer;transition:all 0.25s;text-align:left;position:relative;border:1px solid #d5d2ca;}
.fp-series-card:hover{background:var(--ivory);box-shadow:0 8px 24px rgba(14,27,34,0.08);transform:translateY(-2px);border-color:var(--gold);}
.fp-series-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--gold);transform:scaleX(0);transition:transform 0.3s;transform-origin:left;}
.fp-series-card:hover{background:var(--ivory);}
.fp-series-card:hover::after{transform:scaleX(1);}
.fp-series-cap{font-family:'Jost',sans-serif;font-size:0.76rem;letter-spacing:2.5px;color:#a37a3a;font-weight:700;text-transform:uppercase;margin-bottom:10px;}
.fp-series-num{font-family:'Jost','Noto Sans KR',sans-serif;font-size:2.6rem;color:var(--green);font-weight:600;line-height:0.95;letter-spacing:-1px;margin-bottom:10px;}
.fp-series-period{font-size:0.88rem;color:#3a3a32;line-height:1.5;margin-bottom:14px;font-weight:500;}
.fp-series-yield{font-family:'Jost',sans-serif;font-size:0.92rem;color:var(--green);font-weight:700;letter-spacing:0.3px;}
.fp-series-arrow{margin-top:14px;font-size:0.78rem;letter-spacing:2px;color:#5a5a52;font-weight:700;}

.fp-detail-wrap{max-width:900px;margin:48px auto 0;padding:0 32px;}
.fp-detail-panel{background:#fff;padding:56px 48px;border:1px solid #ece7da;}
.fp-detail-back{display:inline-flex;align-items:center;gap:6px;color:var(--green);text-decoration:none;font-family:'Jost',sans-serif;font-size:0.86rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:28px;}
.fp-detail-eyebrow{font-family:'Jost',sans-serif;font-size:0.86rem;letter-spacing:4px;color:#a37a3a;font-weight:700;text-transform:uppercase;margin-bottom:12px;}
.fp-detail-title{font-family:'Jost','Noto Sans KR',sans-serif;font-size:clamp(1.9rem,3.4vw,2.8rem);color:var(--navy);font-weight:600;line-height:1.3;margin-bottom:10px;}
.fp-detail-meta{font-size:1rem;color:#3a3a32;margin-bottom:32px;border-bottom:1px solid #d5d2ca;padding-bottom:24px;font-weight:500;}
.fp-detail-yield-box{background:linear-gradient(180deg,#fffaf1 0%,#fff7e6 100%);border-left:4px solid var(--gold);padding:24px 28px;margin-bottom:32px;}
.fp-detail-yield-cap{font-family:'Jost',sans-serif;font-size:0.82rem;letter-spacing:2.5px;color:#a37a3a;font-weight:700;text-transform:uppercase;margin-bottom:10px;}
.fp-detail-yield-val{font-family:'Jost','Noto Sans KR',sans-serif;font-size:1.8rem;font-weight:600;color:var(--navy);}
.fp-detail-section-h{font-family:'Jost',sans-serif;font-size:0.92rem;letter-spacing:3px;color:var(--navy);font-weight:700;text-transform:uppercase;margin-bottom:16px;border-bottom:1px solid #d5d2ca;padding-bottom:12px;}
.fp-detail-summary{font-family:'Jost','Noto Sans KR',sans-serif;font-size:1.15rem;color:#1f1f1a;line-height:1.85;margin-bottom:36px;}
.fp-detail-routes{list-style:none;padding:0;margin-bottom:32px;}
.fp-detail-routes li{padding:14px 0;border-bottom:1px solid #d5d2ca;font-size:1rem;color:#1f1f1a;line-height:1.65;display:flex;gap:14px;align-items:flex-start;}
.fp-detail-routes li::before{content:counter(routeCounter, decimal-leading-zero);counter-increment:routeCounter;font-family:'Jost','Noto Sans KR',sans-serif;font-size:1.1rem;color:var(--gold);font-weight:700;min-width:32px;}
.fp-detail-routes{counter-reset:routeCounter;}
.fp-detail-disclaimer{margin-top:28px;padding:18px 22px;background:var(--ivory-2);border-top:2px solid #d5d2ca;font-size:0.9rem;color:#3a3a32;line-height:1.7;font-weight:500;}

@media (max-width:760px){
  .fp-hero{height: clamp(209.76px, 58.25vw, 240px);}
  .fp-hero h1{font-size: clamp(1.9228rem, 8.54vw, 2.2rem);}
  .fp-hero-sub{font-size: clamp(0.6817rem, 3.03vw, 0.78rem);letter-spacing: clamp(3.5px, 0.97vw, 4px);}
  .fp-aum-wrap{padding: clamp(34.96px, 9.71vw, 40px) clamp(15.73px, 4.37vw, 18px) clamp(13.98px, 3.88vw, 16px);}
  .fp-aum-svg{height: clamp(157.32px, 43.69vw, 180px);}
  .fp-philosophy{padding: clamp(34.96px, 9.71vw, 40px) clamp(15.73px, 4.37vw, 18px) clamp(52.44px, 14.56vw, 60px);}
  .fp-cards-wrap{padding: clamp(15.73px, 4.37vw, 18px) clamp(15.73px, 4.37vw, 18px) clamp(52.44px, 14.56vw, 60px);}
  .fp-cards{grid-template-columns:1fr;gap: clamp(15.73px, 4.37vw, 18px);}
  .fp-series-wrap{padding: clamp(52.44px, 14.56vw, 60px) clamp(15.73px, 4.37vw, 18px) clamp(61.18px, 16.99vw, 70px);}
  .fp-detail-wrap{padding:0 clamp(15.73px, 4.37vw, 18px);}
  .fp-detail-panel{padding: clamp(31.46px, 8.74vw, 36px) clamp(19.23px, 5.34vw, 22px);}
}

/* ════ RESEARCH PREMIUM ════ */
#research.research-premium{padding:0;background:var(--ivory);}
.rp-hero{position:relative;width:100%;height:auto;min-height:380px;padding:96px 0 32px;background:linear-gradient(135deg,#0e1b22 0%,#143028 60%,#1c4a3a 100%);overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;box-sizing:border-box;}
.rp-hero::before{content:'';position:absolute;inset:0;background-image:url('https://images.unsplash.com/photo-1507842217343-583bb7270b66?w=1600&q=80');background-size:cover;background-position:center;opacity:0.20;filter:grayscale(0.3) blur(0.5px);animation:hhKenburns 24s ease-in-out infinite alternate;}
.rp-hero::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 0%,rgba(14,27,34,0.55) 100%);}
.rp-hero-inner{position:relative;z-index:2;padding:0 24px;}
.rp-hero-eyebrow{font-family:'Jost',sans-serif;font-size:0.86rem;letter-spacing:4px;color:#e8c890;font-weight:700;margin-bottom:18px;text-transform:uppercase;white-space:normal;word-break:keep-all;}
.rp-hero h1{font-family:'Jost','Noto Sans KR',sans-serif;font-size:clamp(2.6rem,5.5vw,4.4rem);font-weight:600;line-height:1.05;letter-spacing:0.5px;margin-bottom:14px;color:#fff;text-shadow:0 4px 24px rgba(0,0,0,0.4);}
.rp-hero-sub{font-size:0.95rem;letter-spacing:6px;color:rgba(255,255,255,0.78);font-weight:300;}
.rp-hero-rule{display:block;width:60px;height:1px;background:var(--gold);margin:22px auto 0;}

.rp-stats-wrap{max-width:980px;margin:0 auto;padding:64px 32px 24px;}
.rp-stats-head{margin-bottom:24px;border-bottom:1px solid #d5d2ca;padding-bottom:14px;display:flex;justify-content:space-between;align-items:flex-end;}
.rp-stats-title{font-family:'Jost','Noto Sans KR',sans-serif;font-size:1.8rem;color:var(--navy);font-weight:600;}
.rp-stats-cap{font-family:'Jost',sans-serif;font-size:0.84rem;letter-spacing:2.5px;color:#5a5a52;text-transform:uppercase;font-weight:600;}
.rp-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#d5d2ca;border:1px solid #d5d2ca;max-width:560px;margin:0 auto;}
.rp-stat{background:#fff;padding:32px 22px;text-align:center;}
.rp-stat-num{font-family:'Jost','Noto Sans KR',sans-serif;font-size:2.8rem;font-weight:600;color:var(--green);line-height:1;letter-spacing:-1px;}
.rp-stat-num span{font-size:1.3rem;color:#a37a3a;margin-left:4px;}
.rp-stat-label{font-family:'Jost',sans-serif;font-size:1.02rem;letter-spacing:2.5px;color:#3a3a32;font-weight:700;text-transform:uppercase;margin-top:12px;}

.rp-filter-wrap{max-width:1180px;margin:48px auto 0;padding:0 32px;}
.rp-filter{display:flex;gap:0;border-bottom:1px solid #e5e2da;flex-wrap:wrap;}
.rp-filter button{padding:14px 28px;border:none;background:transparent;font-family:'Jost',sans-serif;font-size:0.92rem;letter-spacing:2px;color:#4a4a44;font-weight:600;text-transform:uppercase;cursor:pointer;transition:all 0.25s;border-bottom:2px solid transparent;margin-bottom:-1px;}
.rp-filter button:hover{color:var(--navy);}
.rp-filter button.active{color:var(--navy);border-bottom-color:var(--gold);}

.rp-articles-wrap{max-width:1180px;margin:0 auto;padding:48px 32px 80px;}
.rp-articles{display:grid;grid-template-columns:repeat(3,1fr);gap:48px 32px;}
.rp-article{cursor:pointer;transition:all 0.3s;border-top:1px solid #d5d2ca;padding-top:28px;}
.rp-article:hover .rp-article-title{color:var(--green);}
.rp-article-cat{font-family:'Jost',sans-serif;font-size:0.82rem;letter-spacing:2.5px;color:#a37a3a;font-weight:700;text-transform:uppercase;margin-bottom:14px;}
.rp-article-title{font-family:'Jost','Noto Sans KR',sans-serif;font-size:1.55rem;font-weight:600;color:var(--navy);margin-bottom:14px;line-height:1.4;transition:color 0.2s;}
.rp-article-excerpt{font-size:1rem;color:#3a3a32;line-height:1.85;margin-bottom:18px;font-weight:500;}
.rp-article-meta{display:flex;justify-content:space-between;align-items:center;font-family:'Jost',sans-serif;font-size:0.86rem;letter-spacing:0.5px;color:#3a3a32;font-weight:600;}
.rp-article-meta-arrow{color:#a37a3a;font-weight:700;letter-spacing:1.5px;}

.rp-schedule-wrap{background:var(--ivory-2);padding:80px 32px;border-top:1px solid #d5d2ca;border-bottom:1px solid #d5d2ca;}
.rp-schedule-inner{max-width:1080px;margin:0 auto;}
.rp-schedule-eyebrow{font-family:'Jost',sans-serif;font-size:0.86rem;letter-spacing:4px;color:#a37a3a;font-weight:700;text-transform:uppercase;text-align:center;margin-bottom:10px;}
.rp-schedule-h2{font-family:'Jost','Noto Sans KR',sans-serif;font-size:clamp(1.7rem,2.8vw,2.4rem);color:var(--navy);font-weight:600;text-align:center;margin-bottom:8px;}
.rp-schedule-sub{text-align:center;color:#3a3a32;font-size:1rem;margin-bottom:48px;font-weight:500;}
.rp-schedule-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;}
.rp-schedule-item{background:#fff;border-top:2px solid var(--green);padding:30px 22px;text-align:center;}
.rp-schedule-cap{font-family:'Jost',sans-serif;font-size:0.8rem;letter-spacing:2.5px;color:#a37a3a;font-weight:700;margin-bottom:12px;text-transform:uppercase;}
.rp-schedule-title{font-family:'Jost','Noto Sans KR',sans-serif;font-size:1.5rem;color:var(--navy);font-weight:600;margin-bottom:10px;}
.rp-schedule-desc{font-size:0.95rem;color:#3a3a32;line-height:1.7;font-weight:500;}

.rp-cta-wrap{max-width:980px;margin:0 auto;padding:80px 32px 100px;text-align:center;}
.rp-cta-rule{display:block;width:60px;height:2px;background:var(--gold);margin:0 auto 26px;}
.rp-cta-eyebrow{font-family:'Jost',sans-serif;font-size:0.86rem;letter-spacing:5px;color:#a37a3a;font-weight:700;text-transform:uppercase;margin-bottom:24px;}
.rp-cta-quote{font-family:'Pretendard','Noto Sans KR',sans-serif;font-size:clamp(1.3rem,2.2vw,1.75rem);color:var(--navy);line-height:1.6;font-weight:600;max-width:680px;margin:0 auto 36px;letter-spacing:-0.01em;}
.rp-cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.rp-cta-btn{display:inline-flex;align-items:center;gap:10px;padding:15px 32px;background:var(--green);color:#fff;text-decoration:none;font-family:'Jost',sans-serif;font-size:0.86rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;border:1px solid var(--green);transition:all 0.25s;}
.rp-cta-btn:hover{background:transparent;color:var(--green);}
.rp-cta-btn.outline{background:transparent;color:var(--navy);border-color:#bfbab0;}
.rp-cta-btn.outline:hover{background:var(--navy);color:#fff;border-color:var(--navy);}

.rp-detail-panel{background:#fff;padding:56px 48px;border:1px solid #d5d2ca;}
.rp-detail-back{display:inline-flex;align-items:center;gap:6px;color:var(--green);text-decoration:none;font-family:'Jost',sans-serif;font-size:0.86rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:28px;}
.rp-detail-cat{font-family:'Jost',sans-serif;font-size:0.86rem;letter-spacing:4px;color:#a37a3a;font-weight:700;text-transform:uppercase;margin-bottom:12px;}
.rp-detail-title{font-family:'Jost','Noto Sans KR',sans-serif;font-size:clamp(1.9rem,3.4vw,2.8rem);color:var(--navy);font-weight:600;line-height:1.3;margin-bottom:16px;}
.rp-detail-meta{font-size:1rem;color:#3a3a32;margin-bottom:32px;border-bottom:1px solid #d5d2ca;padding-bottom:24px;display:flex;gap:20px;flex-wrap:wrap;font-weight:500;}
.rp-detail-meta span{position:relative;}
.rp-detail-excerpt{font-family:'Jost','Noto Sans KR',sans-serif;font-size:1.25rem;color:var(--navy);line-height:1.75;margin-bottom:32px;padding:20px 24px;background:linear-gradient(180deg,#fffaf1 0%,#fff7e6 100%);border-left:4px solid var(--gold);font-weight:500;}
.rp-detail-body h3{font-family:'Jost','Noto Sans KR',sans-serif;font-size:1.5rem;color:var(--navy);font-weight:600;margin:32px 0 14px;border-bottom:1px solid #d5d2ca;padding-bottom:10px;}
.rp-detail-body p{font-size:1.02rem;color:#1f1f1a;line-height:1.85;margin-bottom:14px;}
.rp-detail-body strong{color:var(--navy);font-weight:700;}
.rp-detail-body ul{padding-left:22px;margin-bottom:14px;}
.rp-detail-body ul li{font-size:1.02rem;color:#1f1f1a;line-height:1.85;margin-bottom:8px;list-style:none;position:relative;padding-left:14px;}
.rp-detail-body ul li::before{content:'—';position:absolute;left:-4px;color:var(--gold);}
@media (max-width:760px){
  .rp-detail-panel{padding: clamp(27.97px, 7.77vw, 32px) clamp(19.23px, 5.34vw, 22px);}
  .rp-detail-title{font-size: clamp(1.3984rem, 6.21vw, 1.6rem);}
}

@media (max-width:760px){
  .rp-hero{height: clamp(209.76px, 58.25vw, 240px);}
  .rp-hero h1{font-size: clamp(1.9228rem, 8.54vw, 2.2rem);}
  .rp-hero-sub{font-size: clamp(0.6817rem, 3.03vw, 0.78rem);letter-spacing: clamp(3.5px, 0.97vw, 4px);}
  .rp-stats-wrap{padding: clamp(34.96px, 9.71vw, 40px) clamp(15.73px, 4.37vw, 18px) clamp(13.98px, 3.88vw, 16px);}
  .rp-stats-grid{grid-template-columns:repeat(2,1fr);}
  .rp-filter-wrap{padding:0 clamp(15.73px, 4.37vw, 18px);}
  .rp-filter button{padding: clamp(8.74px, 2.43vw, 10px) clamp(13.99px, 3.88vw, 16px);font-size: clamp(0.74rem, 3.2vw, 0.86rem);}
  .rp-articles-wrap{padding: clamp(31.46px, 8.74vw, 36px) clamp(15.73px, 4.37vw, 18px) clamp(52.44px, 14.56vw, 60px);}
  .rp-articles{grid-template-columns:1fr;gap: clamp(27.97px, 7.77vw, 32px);}
  .rp-schedule-wrap{padding: clamp(52.44px, 14.56vw, 60px) clamp(15.73px, 4.37vw, 18px);}
  .rp-schedule-grid{grid-template-columns:1fr 1fr;gap: clamp(15.73px, 4.37vw, 18px);}
  .rp-cta-wrap{padding: clamp(52.44px, 14.56vw, 60px) clamp(15.73px, 4.37vw, 18px) clamp(69.92px, 19.42vw, 80px);}
}
/* Toast UI Editor 컨테이너 — 공시 본문 */
#dw-ck { display:block; min-height:420px; }
.dw-ck-wrap .ck-editor__editable { min-height:420px; max-height:600px; font-family:'Pretendard','Noto Sans KR',sans-serif; color:var(--text); background:#fff; }
.dw-ck-wrap .ck.ck-toolbar { background:#fafafa; border-color:#ddd; }
.dw-ck-wrap .ck.ck-editor__main>.ck-editor__editable { border:1px solid #ddd; border-radius:0 0 5px 5px; }
.dw-ck-wrap .ck.ck-toolbar { border-radius:5px 5px 0 0; }
/* 공시 인페이지 글쓰기 버튼 + 행 액션 (관리자 전용) */
.disc-admin-bar { display:none; margin-bottom:16px; }
body.adm-on .disc-admin-bar { display:flex; justify-content:flex-end; gap:8px; }
.disc-write-btn { background:var(--green); color:#fff; border:none; padding:9px 18px; border-radius:4px; font-size:0.84rem; font-weight:600; cursor:pointer; font-family:inherit; }
.disc-write-btn:hover { background:#0a5a3a; }
.disc-row-actions { display:none; gap:6px; }
body.adm-on .disc-row-actions { display:inline-flex; }
.disc-row-actions button { width:28px; height:28px; border:1px solid #ddd; background:#fff; border-radius:4px; cursor:pointer; font-size:0.8rem; }
.disc-row-actions button.del { color:#c33; border-color:#e9b3b3; }
.disc-row-actions button:hover { background:#f5f5f0; }
/* 공시 글쓰기 모달 */
#disc-writer-modal { display:none; position:fixed; inset:0; background:rgba(0,0,0,0.6); z-index:9500; backdrop-filter:blur(3px); align-items:flex-start; justify-content:center; padding:40px 16px; overflow-y:auto; }
#disc-writer-modal.show { display:flex; }
#disc-writer-modal .dw-card { background:#fff; width:100%; max-width:780px; border-radius:8px; padding:0; overflow:hidden; box-shadow:0 24px 60px rgba(0,0,0,0.4); }
#disc-writer-modal .dw-head { display:flex; justify-content:space-between; align-items:center; padding:18px 24px; border-bottom:1px solid #eee; background:var(--green); color:#fff; }
#disc-writer-modal .dw-head h2 { font-size:1.05rem; font-weight:700; margin:0; }
#disc-writer-modal .dw-close { background:transparent; border:none; color:#fff; font-size:1.5rem; cursor:pointer; line-height:1; }
#disc-writer-modal .dw-body { padding:22px 24px; }
#disc-writer-modal .dw-row { display:flex; gap:12px; flex-wrap:wrap; margin-bottom:14px; }
#disc-writer-modal .dw-fld { display:flex; flex-direction:column; gap:5px; }
#disc-writer-modal .dw-fld label { font-size:0.78rem; font-weight:600; color:#444; }
#disc-writer-modal .dw-fld input, #disc-writer-modal .dw-fld select { padding:9px 11px; border:1px solid #ddd; font-family:inherit; font-size:0.86rem; outline:none; background:#fff; border-radius:4px; }
#disc-writer-modal .dw-fld input:focus, #disc-writer-modal .dw-fld select:focus { border-color:var(--green); }
#disc-writer-modal .dw-foot { padding:14px 24px; display:flex; justify-content:flex-end; gap:8px; border-top:1px solid #eee; background:#fafafa; }
#disc-writer-modal .dw-btn { padding:9px 18px; border:1px solid #ddd; background:#fff; border-radius:4px; cursor:pointer; font-size:0.86rem; font-weight:600; font-family:inherit; }
#disc-writer-modal .dw-btn-save { background:var(--green); border-color:var(--green); color:#fff; }
#disc-writer-modal .dw-btn-save:hover { background:#0a5a3a; }
/* ── KOREAN LINE-BREAK ENFORCEMENT ──
   Force keep-all on all text elements to prevent mid-word breaks
   (e.g., "문화" should not split into "문" / "화") */
h1, h2, h3, h4, h5, h6,
p, li, label, summary, span, a, em, strong, button, blockquote,
div, td, th, dt, dd {
  word-break: keep-all !important;
  overflow-wrap: break-word;
}

/* ════ 일임·자문 이력 섹션 (다인) ════ */
.dy-mandate-wrap{background:#fafbfa;padding:80px 0;border-top:1px solid var(--border);}
.dy-mandate-inner{max-width:1180px;margin:0 auto;padding:0 32px;text-align:center;}
.dy-mandate-eyebrow{font-family:'Jost',sans-serif;font-size:0.72rem;font-weight:700;letter-spacing:4px;color:var(--green2,#3a7a50);text-transform:uppercase;margin-bottom:14px;}
.dy-mandate-h2{font-size:clamp(1.5rem,3.2vw,2.1rem);font-weight:900;color:var(--text);margin-bottom:14px;}
.dy-mandate-sub{font-size:0.95rem;color:#444;margin-bottom:22px;}
.dy-mandate-rule{display:inline-block;width:48px;height:2px;background:var(--gold,#c9a86a);margin-bottom:44px;}
.dy-mandate-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;text-align:left;}
.dy-mandate-cap{font-family:'Jost',sans-serif;font-size:0.92rem;font-weight:700;letter-spacing:0.5px;color:var(--green);margin-bottom:14px;padding-bottom:10px;border-bottom:2px solid var(--green);}
.dy-mandate-table{width:100%;border-collapse:collapse;font-size:0.88rem;background:#fff;}
.dy-mandate-table th{background:#f2f5f3;color:#444;font-weight:700;font-size:0.8rem;padding:11px 12px;text-align:left;border-bottom:1px solid var(--border);}
.dy-mandate-table td{padding:12px;border-bottom:1px solid #eef0ef;color:var(--text);vertical-align:middle;}
.dy-mandate-table tbody tr:hover{background:#f7faf8;}
.dy-mandate-table .dy-amt{text-align:right;font-family:'Jost',sans-serif;font-weight:600;white-space:nowrap;}
.dy-mandate-table .dy-amt strong{color:var(--green);font-size:1rem;}
.dy-tag{display:inline-block;font-size:0.66rem;font-weight:700;letter-spacing:0.5px;color:#8a7a4a;background:#f3ecd9;border-radius:3px;padding:1px 6px;margin-left:5px;vertical-align:middle;}
.dy-mandate-note{margin-top:24px;font-size:0.8rem;color:#484848;text-align:left;}
@media(max-width:820px){
  .dy-mandate-grid{grid-template-columns:1fr;gap:40px;}
  .dy-mandate-table{font-size:0.82rem;}
  .dy-mandate-table th,.dy-mandate-table td{padding:9px 8px;}
}

/* 일임·자문 이력 — 관리자 추가/수정/삭제 버튼 */
.dy-mandate-actions{white-space:nowrap;width:64px;text-align:right;}
.dy-mini-edit,.dy-mini-del{border:1px solid var(--border);background:#fff;width:26px;height:26px;border-radius:4px;cursor:pointer;font-size:0.82rem;line-height:1;margin-left:3px;transition:all 0.15s;}
.dy-mini-edit:hover{border-color:var(--green);color:var(--green);}
.dy-mini-del{color:#c33;}
.dy-mini-del:hover{background:#c33;color:#fff;border-color:#c33;}
.dy-mandate-add-row td{padding:8px 0 0 !important;border:none !important;}
.dy-mandate-add{width:100%;padding:11px;background:rgba(42,84,56,0.04);border:1.5px dashed rgba(42,84,56,0.4);border-radius:5px;color:var(--green);font-weight:700;font-size:0.86rem;cursor:pointer;font-family:inherit;transition:all 0.2s;}
.dy-mandate-add:hover{background:rgba(42,84,56,0.09);border-color:var(--green);}

/* 공모주펀드 표 */
.ipo-funds-table{margin-top:8px;}
.ipo-funds-table .ipo-name{font-weight:600;color:var(--navy,#1a2e44);line-height:1.4;}
.ipo-funds-table .ipo-yield-th{text-align:right;}
.ipo-funds-table .ipo-yield{text-align:right;font-family:'Jost','Noto Sans KR',sans-serif;font-weight:700;white-space:nowrap;}
.ipo-funds-table .ipo-yield.pos{color:var(--green,#2a5438);}
.ipo-funds-table .ipo-yield.neg{color:#c0392b;}
@media(max-width:820px){
  .ipo-funds-table{font-size:0.82rem;}
  .ipo-funds-table th,.ipo-funds-table td{padding:9px 8px;}
}

/* [다인 요청 2026-06-26] 연도별 펀드 수 막대그래프 */
.fp-fundcount-svg .fp-bar{ fill:var(--green2); opacity:.85; transition:opacity .2s; }
.fp-fundcount-svg .fp-bar-last{ fill:var(--green); opacity:1; }
.fp-fundcount-svg .fp-bar:hover{ opacity:1; }

/* popup fit */
.popup-card .popup-section-content{flex:1 1 auto;overflow-y:auto;min-height:0;}
.popup-card .popup-section-title,.popup-card .popup-section-logo,.popup-card .popup-section-close{flex:0 0 auto;}
/* popup green bands */
.popup-card{border-top:38px solid #2a5438;border-bottom:38px solid #2a5438;}
@media (max-height:660px){.popup-card{border-top-width:26px;border-bottom-width:26px;}}
@media (max-width:520px){.popup-card{border-top-width:18px;border-bottom-width:18px;}}
@media (max-width:520px){
  .popup-section-title{padding:12px 18px 8px;}
  .popup-section-content{padding:10px 18px;}
  .popup-section-logo{padding:6px 0;}
  .popup-body{font-size:0.84rem;line-height:1.6;}
  .popup-section-title .popup-icon-circle{width:40px;height:40px;font-size:24px;margin:0 auto 8px;}
}
body.adm-open .float-contact{display:none !important;}
@media (max-height:660px){.popup-card .popup-gap{height:0.4em !important;}}
#adm-panel .ap-card{display:block;}
#adm-panel .ap-card .ap-help{white-space:normal;}
#adm-panel .ap-help{display:block;width:100%;white-space:normal;margin:6px 0 10px;}
#adm-panel .ap-card > *{max-width:100%;}
@media (max-height:660px){
  .popup-card{border-top-width:20px;border-bottom-width:20px;}
  .popup-section-title{padding:12px 24px 10px;}
  .popup-section-content{padding:12px 24px;}
  .popup-section-logo{padding:7px 0;}
  .popup-card .popup-body p{margin:0 0 5px;}
}
@media (max-height:660px){
  .popup-card .popup-gap{height:0.25em !important;}
  .popup-card .popup-box{padding:8px 12px !important;margin-top:8px !important;}
  .popup-card .popup-body .popup-red{margin:6px 0 !important;}
  .popup-section-title .popup-icon-circle{width:38px;height:38px;font-size:22px;margin:0 auto 6px;}
}
/* 문의 섹션 좌우 하단 정렬 (2026-08-28) */
@media (min-width:901px){
  .contact-grid > .contact-info{display:flex;flex-direction:column;}
  .contact-grid > .contact-info > *:last-child{margin-top:auto;}
  .contact-grid > .cform{display:flex;flex-direction:column;}
}
@media (max-width:900px){ header nav.open{z-index:320;} header nav.open .nav-item>a{position:relative;z-index:321;} }
/* 문의 동의 체크박스 — (필수)가 줄바꿈되지 않게 (형 8/29) */
.cf-consent-row{display:flex;align-items:flex-start;gap:8px;}
.cf-consent-row input{flex:0 0 auto;margin-top:3px;}
.cf-consent-row span{flex:1 1 auto;line-height:1.5;word-break:keep-all;font-size:0.86rem;}
.cf-consent-row span b{white-space:nowrap;}
@media (max-width:900px){ .cf-consent-row span{font-size:0.8rem;letter-spacing:-0.3px;} }
/* 모바일 공시표 — 태그와 제목이 붙고 날짜만 벌어지던 문제 (형 8/29) */
@media (max-width:900px){
  .disclosure-table{table-layout:fixed;}
  .disclosure-table th:nth-child(1),.disclosure-table td:nth-child(1){width:62px;padding-right:10px;}
  .disclosure-table th:nth-child(2),.disclosure-table td:nth-child(2){padding-right:12px;word-break:keep-all;}
  .disclosure-table th:nth-child(3),.disclosure-table td:nth-child(3){width:78px;text-align:right;white-space:nowrap;font-size:0.78rem;}
  .disclosure-table .d-tag{min-width:0;width:100%;padding:3px 4px;font-size:0.68rem;letter-spacing:0;}
  /* 관리자 전용 4번째 열이 90px를 먹어 우측이 벌어짐 → 로그인 전엔 숨김 */
  .disclosure-table th:nth-child(4),.disclosure-table td:nth-child(4){display:none;}
  body.adm-on .disclosure-table th:nth-child(4),body.adm-on .disclosure-table td:nth-child(4){display:table-cell;}
  .disclosure-table td{font-size:0.82rem;}
}
/* 서브페이지에서도 햄버거 메뉴 전체가 보이게 (형 8/29) */
@media (max-width:900px){
  header nav.open{max-height:none!important;height:auto!important;
    max-block-size:calc(100vh - 56px);overflow-y:auto!important;}
}
/* 모바일 첫 화면 — 100vh를 꽉 채우면 아래에 뭐가 있는지 안 보인다 (형 8/29) */
@media (max-width:900px){
  .hero{height:86svh;min-height:520px;}
}
/* 블로그 버튼 = 네이버 녹색 (PC·모바일 공통, 형 8/29)
   .rp-cta-btn(787줄)이 뒤에 와서 266줄 규칙을 덮어써 초록이 아니게 됨 */
.rp-cta-btn.rp-cta-naver{background:#03C75A;border-color:#03C75A;color:#fff;}
.rp-cta-btn.rp-cta-naver:hover{background:#02b350;border-color:#02b350;color:#fff;}
/* 하단 플로팅 버튼이 푸터 정보를 가림 (형 8/29) — 푸터에선 살짝 위로 */
@media (max-width:900px){
  .float-contact{right:14px;bottom:14px;}
  footer{padding-bottom:96px;}
}
