/* ============================================================
   renew 셸 전용 CSS — 게시판 페이지에 renew 헤더·배너·푸터만 얹기 위한 파일
   renew/assets/style.css 에서 셸 관련 룰만 추출해 자동 생성 (build_shell.py)
   직접 수정하지 말고 생성 스크립트를 고칠 것.

   격리 방침
     · .gnb → .rn-gnb, .footer → .rn-footer   (기존 default.css 와 이름 충돌 회피)
     · renew 의 전역 룰(*, body, html)은 셸 루트 안으로만 한정 → 게시판 화면 불변
     · 기존 default.css 의 `*{line-height:1em;color:#222}` 를 셸 내부에서 무효화
     · url() 은 전부 /renew/ 절대경로 (파일 위치가 달라져도 안 깨지도록)
   ============================================================ */
@font-face{
  font-family:'NanumSquareNeo';
  font-weight:300 900;
  font-style:normal;
  font-display:swap;
  src:url('/renew/fonts/NanumSquareNeo-Variable.woff2') format('woff2'),
      url('https://cdn.jsdelivr.net/gh/moonspam/NanumSquareNeo@master/NanumSquareNeo-Variable.woff2') format('woff2');
}
:root{--c-primary:#89BDE0;               

  
  --c-white:#ffffff;                 
  --c-ink:#141414;                   
  --c-ink2:#4a4a4a;                  
  --c-ink3:#8a8a8a;                  

  
  --c-bg:#f5f5f5;                    

  
  --c-error:#EF500B;
  --c-success:#009C7B;

  
  --c-black:var(--c-ink);            
  --c-dark:var(--c-ink);             
  --c-ink4:var(--c-ink3);            
  --c-primary-soft:var(--c-primary);
  --c-primary-deep:var(--c-primary); 
  --c-primary-tint:var(--c-primary); 
  --c-border:var(--c-bg);            
  --c-border-l:var(--c-bg);
  --c-field:var(--c-bg);             
  --c-cream:var(--c-bg);
  --c-tertiary:var(--c-bg);
  --c-hero:var(--c-ink);             
  --c-kakao:#fee500;                 

  
  --font-kr:'NanumSquareNeo','Pretendard',-apple-system,BlinkMacSystemFont,sans-serif;
  --font-en:'Google Sans Flex','Google Sans','Inter',sans-serif;
  
  --fs-display:clamp(40px,5vw,64px);
  --fs-h1:clamp(30px,4vw,52px);
  --fs-h2:clamp(28px,3vw,40px);   
  --fs-h3:28px;
  --fs-h4:clamp(17px,1.6vw,22px);
  --fs-lead:18px;
  --fs-body:16px;
  --fs-body-sm:15px;
  --fs-small:14px;
  --fs-caption:12px;

  --maxw:1200px;}

/* ── 스코프 리셋: 기존 사이트 전역 규칙을 셸 내부에서만 되돌린다 ── */
.subhead,.m-menu,.mp-hero,.rn-footer,.fab-stack,.cdrawer,.cdrawer-backdrop{
  font-family:var(--font-kr);
  color:var(--c-ink);
  line-height:1.6;
  letter-spacing:normal;
  -webkit-font-smoothing:antialiased;
}
.subhead *,.subhead *::before,.subhead *::after,.m-menu *,.m-menu *::before,.m-menu *::after,.mp-hero *,.mp-hero *::before,.mp-hero *::after,.rn-footer *,.rn-footer *::before,.rn-footer *::after,.fab-stack *,.fab-stack *::before,.fab-stack *::after,.cdrawer *,.cdrawer *::before,.cdrawer *::after,.cdrawer-backdrop *,.cdrawer-backdrop *::before,.cdrawer-backdrop *::after{
  box-sizing:border-box;
  margin:0;
  padding:0;
  font-family:inherit;
  line-height:inherit;
  letter-spacing:normal;
  color:inherit;
}

/* ── 기존 배너·2뎁스 메뉴 숨김 (sub_head.php 는 수정하지 않는다 → div 짝 유지) ── */
body.rn-shell .sub_visual,
body.rn-shell .sub_menu{display:none !important;}

/* ── 배너는 고정형으로: renew 원본은 sticky + JS 가 top 지정, 게시판에서는 정적 ── */
body.rn-shell .mp-hero{position:relative;top:auto;}
body.rn-shell .mp-hero-track{position:static;}

/* ── 게시판 제목 숨김: renew 배너가 이미 페이지 타이틀을 보여준다 ──
   .sub_tit 안에 파란 원(.cir_anim)이 자식으로 들어있어 함께 사라진다.
   .sub_tit 이 물고 있던 여백(padding-top 75px + margin-bottom 150px = 225px)이
   같이 사라지므로, renew 서브페이지의 상단 여백 톤(180px)에 맞춰 보정한다. */
body.rn-shell .sub_tit{display:none !important;}
body.rn-shell .sb_section{padding-top:180px;}
@media(max-width:768px){
  /* 모바일 원본은 .sb_section{padding:15vw 0 10vw} (약 60px) — 그 톤을 유지한다.
     90px 는 배너 아래가 과하게 비어 보였다. */
  body.rn-shell .sb_section{padding-top:60px;}
}

/* ── 가로 넘침 교정 ──
   모바일 CSS 에는 `*{box-sizing:border-box}` 가 없다(데스크톱 default.css 에는 있다).
   그래서 게시판 카드가 원래부터 컨테이너를 넘친다:
       .inbox   = 89vw
       .gall_li = width:50% + padding:0 2.5vw = 44.5vw+5vw = 49.5vw  → 2개 99vw
   기존에는 mobile.css 의 `.wrap{overflow:hidden}` 이 넘친 부분을 감췄을 뿐이고,
   renew 셸이 .wrap 을 대체하면서 그 은폐마저 사라졌다.
   클리핑만 복원하면 카드가 여전히 잘리므로, 셸 안에서만 box-sizing 을 바로잡는다.
   (.gall_li 자체에만 적용 — 내부 요소는 건드리지 않아 카드 내부 레이아웃은 불변) */
body.rn-shell .sub_wrap{overflow:hidden;}
body.rn-shell #bo_gall .gall_li{box-sizing:border-box;}

/* ── 게시글 상세의 '목록' 버튼 숨김 ──
   <ul class="btn_bo_user bo_v_com"> 안의 검정 알약 버튼(.btn_b01, fa-list).
   .bo_v_com 은 상세 페이지 전용 클래스라 목록 페이지에는 영향이 없다.
   news(gallery)·lawdata(basic), 데스크톱·모바일 모두 같은 클래스를 쓴다. */
body.rn-shell .btn_bo_user.bo_v_com{display:none !important;}

/* ── 추출된 renew 셸 룰 (이 아래가 우선 적용) ── */
.reveal-group>*.in-item{opacity:1;animation:riseIn 1.05s cubic-bezier(.16,1,.3,1) backwards;animation-delay:calc(var(--gi,0)*.15s);}
.sr-line{display:block;opacity:0;transform:translateY(40px);
  transition:opacity 1.3s cubic-bezier(.16,1,.3,1),transform 1.3s cubic-bezier(.16,1,.3,1);
  transition-delay:calc(var(--i,0)*.18s);will-change:opacity,transform;}
.sr.in .sr-line,.sr-line.in{opacity:1;transform:none;}
.rn-gnb{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;
  padding:23px 64px;opacity:0;transform:translateY(-16px);
  transition:background .35s ease,padding .35s ease,box-shadow .35s ease,opacity 1.1s ease .1s,transform 1.1s cubic-bezier(.16,1,.3,1) .1s;}
body.ready .rn-gnb{opacity:1;transform:none;}
.rn-gnb .logo,.gnb-menu a,.gnb-toggle{opacity:0;transform:translateY(-10px);transition:color .35s ease,opacity .9s ease,transform .9s cubic-bezier(.16,1,.3,1);}
body.ready .rn-gnb .logo,body.ready .gnb-menu a,body.ready .gnb-toggle{opacity:1;transform:none;}
body.ready .rn-gnb .logo{transition-delay:.25s;}
body.ready .gnb-menu a:nth-child(1){transition-delay:.34s;}
body.ready .gnb-menu a:nth-child(2){transition-delay:.42s;}
body.ready .gnb-menu a:nth-child(3){transition-delay:.50s;}
body.ready .gnb-menu a:nth-child(4){transition-delay:.58s;}
body.ready .gnb-toggle{transition-delay:.34s;}
.rn-gnb.scrolled{padding:23px 64px;background:rgba(255,255,255,.08);box-shadow:none;
  -webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);}
.rn-gnb.scrolled.on-light{background:rgba(255,255,255,.96);box-shadow:0 1px 0 var(--c-border-l);}
.logo{display:flex;align-items:center;}
.logo-img{height:26px;width:auto;display:block;filter:brightness(0) invert(1);transition:filter .35s ease,height .35s ease;}
.rn-gnb.scrolled .logo-img{height:26px;}
.rn-gnb.scrolled.on-light .logo-img{filter:none;}
.gnb-menu{display:flex;gap:44px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);}
.gnb-menu a{font-family:var(--font-en);font-size:15px;font-weight:600;color:#fff;transition:color .35s ease,opacity .9s ease,transform .9s cubic-bezier(.16,1,.3,1);}
.rn-gnb.scrolled.on-light .gnb-menu a{color:var(--c-ink);}
.roll{display:inline-flex;flex-direction:column;height:1.25em;line-height:1.25em;overflow:hidden;vertical-align:top;}
.roll span{flex:0 0 auto;display:block;transition:transform .42s cubic-bezier(.7,0,.16,1);}
.gnb-item:hover .roll span{transform:translateY(-100%);}
.gnb-menu a.gnb-item{display:inline-flex;align-items:center;gap:6px;}
.gnb-item[data-menu]::after{content:"";flex:0 0 auto;width:16px;height:16px;background-color:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 15.5a1.993 1.993 0 0 1-1.414-.585L5.293 9.621 6.707 8.207 12 13.5l5.293-5.293 1.414 1.414-5.293 5.293A1.993 1.993 0 0 1 12 15.5Z'/%3E%3C/svg%3E") no-repeat center/contain;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 15.5a1.993 1.993 0 0 1-1.414-.585L5.293 9.621 6.707 8.207 12 13.5l5.293-5.293 1.414 1.414-5.293 5.293A1.993 1.993 0 0 1 12 15.5Z'/%3E%3C/svg%3E") no-repeat center/contain;}
.gnb-toggle{display:none;background:none;border:0;cursor:pointer;padding:6px;line-height:0;color:#fff;}
.gnb-burger{display:block;}
.gnb-x{display:none;}
.gnb-burger line,.gnb-x line{stroke:currentColor;stroke-width:2;stroke-linecap:round;}
.rn-gnb.scrolled.on-light .gnb-toggle{color:var(--c-ink);}
body.m-open{overflow:hidden;}
body.m-open .rn-gnb,body.m-open .rn-gnb.scrolled,body.m-open .rn-gnb.scrolled.on-light{background:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;}
body.m-open .rn-gnb .logo{opacity:0;pointer-events:none;transition:opacity .3s ease;}
body.m-open .gnb-toggle{color:var(--c-ink);}
body.m-open .gnb-burger{display:none;}
body.m-open .gnb-x{display:block;}
.gnb-mega{position:absolute;top:100%;left:0;right:0;background:var(--c-primary);
  overflow:hidden;max-height:0;opacity:0;
  transition:max-height .5s cubic-bezier(.7,0,.16,1),opacity .3s ease;pointer-events:none;box-shadow:0 12px 24px rgba(0,0,0,.08);}
.rn-gnb.mega-open .gnb-mega{max-height:80px;opacity:1;pointer-events:auto;}
.mega-inner{position:relative;height:56px;}
.mega-set{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:clamp(22px,3vw,48px);
  opacity:0;visibility:hidden;transition:opacity .3s ease;}
.mega-set.active{opacity:1;visibility:visible;}
.mega-set a{position:relative;font-family:var(--font-kr);font-size:15px;font-weight:500;color:#fff;letter-spacing:-.3px;
  transition:opacity .25s ease,font-weight .2s ease;white-space:nowrap;}
.mega-set a::after{content:"";position:absolute;left:0;bottom:-2px;height:1.5px;width:100%;background:currentColor;
  transform:scaleX(0);transform-origin:left center;transition:transform .35s cubic-bezier(.7,0,.16,1);pointer-events:none;}
.mega-set a:hover{opacity:.9;font-weight:700;}
.mega-set a:hover::after,.mega-set a.current::after{transform:scaleX(1);}
.mega-set a.current{font-weight:700;}
.m-menu{position:fixed;inset:0;z-index:95;background:#fff;overflow-y:auto;-webkit-overflow-scrolling:touch;
  visibility:hidden;clip-path:inset(0 0 100% 0);   
  transition:clip-path .6s cubic-bezier(.7,0,.16,1),visibility .6s;}
.m-menu.open{visibility:visible;clip-path:inset(0 0 0 0);}
.m-menu-inner{max-width:680px;margin:0;padding:64px 32px 72px 52px;text-align:left;}
.m-sec{text-align:left;margin-bottom:20px;
  opacity:0;transform:translateY(28px);
  transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1);}
.m-sec:last-child{margin-bottom:0;}
.m-menu.open .m-sec{opacity:1;transform:none;}
.m-menu.open .m-sec:nth-child(1){transition-delay:.14s;}
.m-menu.open .m-sec:nth-child(2){transition-delay:.22s;}
.m-menu.open .m-sec:nth-child(3){transition-delay:.30s;}
.m-menu.open .m-sec:nth-child(4){transition-delay:.38s;}
.m-cat{font-family:var(--font-en);font-size:32px;font-weight:500;color:#141414;letter-spacing:-.5px;line-height:1.3;margin-bottom:0;}
.m-toggle{display:inline-flex;align-items:center;gap:10px;width:auto;background:none;border:0;padding:8px 0;cursor:pointer;-webkit-tap-highlight-color:transparent;}
.m-chev{position:relative;display:inline-flex;width:28px;height:28px;flex:0 0 auto;color:#141414;transition:transform .42s cubic-bezier(.7,0,.16,1);}
.m-chev svg{position:absolute;inset:0;width:100%;height:100%;display:block;transition:opacity .32s ease;}
.m-chev .ic-minus{opacity:0;}
.m-sec.open .m-chev{transform:rotate(180deg);}
.m-sec.open .m-chev .ic-plus{opacity:0;}
.m-sec.open .m-chev .ic-minus{opacity:1;}
.m-sub{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s cubic-bezier(.7,0,.16,1);}
.m-sub-in{overflow:hidden;min-height:0;padding-top:4px;}
.m-sec.open .m-sub{grid-template-rows:1fr;}
.m-sec a{display:block;width:max-content;max-width:100%;position:relative;font-family:var(--font-kr);font-size:15px;font-weight:400;color:#141414;letter-spacing:-1.2px;line-height:1.5;padding:7px 0;
  transition:opacity .2s ease;}
.m-sec a:active{opacity:.55;}
.m-sec a:not(.m-cat)::after{content:"";position:absolute;left:0;bottom:5px;height:1.5px;width:100%;background:currentColor;
  transform:scaleX(0);transform-origin:left center;transition:transform .42s cubic-bezier(.7,0,.16,1);pointer-events:none;}
.m-sec a:not(.m-cat):hover::after,.m-sec a:not(.m-cat).current::after{transform:scaleX(1);}
.m-sec a.m-cat{font-family:var(--font-en);font-size:32px;font-weight:500;color:#141414;letter-spacing:-.5px;line-height:1.3;padding:8px 0;margin-bottom:0;}
.story .sr-line{transition:opacity 1.1s cubic-bezier(.22,1,.36,1),transform 1.1s cubic-bezier(.22,1,.36,1);transition-delay:calc(var(--i,0)*.11s);}
.mpop.open{opacity:1;visibility:visible;}
.mpop.open .mpop-card{transform:none;}
.mpop-x{width:16px;height:16px;display:block;}
.mpop-x path{fill:#808080;transition:fill .18s;}
.mpop-close:hover .mpop-x path,.mpop-close:active .mpop-x path{fill:#fff;}
.rn-footer{background:var(--c-dark);color:#fff;padding:64px 100px;}
.footer-inner{max-width:1240px;margin:0 auto;}
.footer-top{display:flex;flex-direction:column;gap:48px;padding-bottom:38px;border-bottom:1px solid #2a2a2a;}
.footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:16px;}
.footer-logo{display:block;height:32px;width:auto;margin-left:0;}
.footer-addr-wrap{display:flex;flex-direction:column;gap:8px;}
.footer-addr{display:grid;grid-template-columns:360px 360px 1fr;gap:38px;}
.footer-addr .addr-col{display:flex;flex-direction:column;gap:12px;}
.footer-addr .label{font-size:16px;font-weight:700;color:#fff;}
.footer-addr .addr{font-size:14px;line-height:1.7;color:#8a8a8a;}
.addr-br-m{display:none;}
.footer-tel a,.footer-addr .addr a,.cloc-detail a{color:inherit !important;text-decoration:none !important;pointer-events:none;}
.footer-tel{font-family:var(--font-en);font-size:14px;color:#8a8a8a;letter-spacing:.3px;margin-top:-10px;}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding-top:24px;}
.footer-links{display:flex;gap:36px;}
.footer-links a{font-size:12px;color:var(--c-ink2);}
.footer-links a:hover{color:#fff;}
.footer-copy{font-family:var(--font-en);font-size:12px;color:var(--c-ink2);}
.fab-stack{position:fixed;right:28px;bottom:28px;z-index:90;display:flex;flex-direction:column;gap:14px;}
.fab-btn{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .25s cubic-bezier(.34,1.56,.64,1);}
.fab-btn:hover{transform:translateY(-3px);}
.fab-btn img{width:19.6px;height:19.6px;display:block;}
.fab-mail{background:#e8e8e8;}
.fab-mail img{filter:brightness(0);}
.fab-kakao{background:#FEE500;}
.fab-kakao img{width:23.6px;height:23.6px;}
@media (max-width:600px){
  .fab-stack{right:18px;bottom:18px;gap:12px;}
  .fab-btn{width:44px;height:44px;}
  .fab-btn img{width:15.9px;height:15.9px;}
  .fab-kakao img{width:19.9px;height:19.9px;}
}
body.cdrawer-open{overflow:hidden;}
body.cdrawer-open #site{transform:translateX(-6vw);pointer-events:none;}
.cdrawer-backdrop{position:fixed;inset:0;z-index:150;background:rgba(0,0,0,.8);opacity:0;visibility:hidden;transition:opacity .7s ease,visibility .7s;}
.cdrawer-backdrop.open{opacity:1;visibility:visible;}
.cdrawer{position:fixed;top:0;right:0;height:100%;width:calc(100vw - 180px);z-index:200;transform:translateX(100%);   
  transition:transform .7s cubic-bezier(.65,0,.35,1);overflow-y:auto;background:#141414;}
.cdrawer.open{transform:none;}
.cdrawer-bg{position:sticky;top:0;height:100vh;margin-bottom:-100vh;z-index:0;}
.cdrawer-bg img{width:100%;height:100%;object-fit:cover;display:block;}
.cdrawer-bg::after{content:"";position:absolute;inset:0;background:rgba(10,12,16,.5);}
.cdrawer-close{position:absolute;top:28px;right:22px;z-index:3;width:32px;height:32px;border:0;padding:0;border-radius:50%;background:#f0f0f0;color:#141414;cursor:pointer;display:none;align-items:center;justify-content:center;transition:background .18s;}
.cdrawer-close:hover,.cdrawer-close:active{background:#141414;}
.cdrawer-close:hover .mpop-x path,.cdrawer-close:active .mpop-x path{fill:#fff;}
.cdrawer-inner{position:relative;z-index:1;display:grid;grid-template-columns:1fr 600px;gap:56px;padding:90px 72px;min-height:100%;align-items:start;}
.cinfo{color:#fff;min-width:0;position:sticky;top:90px;align-self:start;}
.ctitle{font-family:var(--font-en);font-size:clamp(40px,4vw,64px);font-weight:700;letter-spacing:-1px;line-height:1.4;}
.csub{font-family:var(--font-kr);font-size:clamp(20px,2vw,28px);font-weight:400;letter-spacing:-1.2px;line-height:1.5;margin-top:28px;color:#f5f5f5;}
.cloc-list{margin-top:60px;display:flex;flex-direction:column;gap:16px;}
.cloc-name{display:flex;align-items:center;gap:8px;width:100%;padding:0;border:0;background:none;font-family:inherit;font-size:18px;font-weight:400;letter-spacing:-.72px;color:#fff;cursor:pointer;text-align:left;}
.cloc-icon{width:24px;height:24px;flex-shrink:0;}
.cloc-arrow{width:18px;height:18px;margin-left:4px;flex-shrink:0;color:#fff;transition:transform .45s cubic-bezier(.16,1,.3,1);}
.cloc.open .cloc-arrow{transform:rotate(180deg);}
.cloc-detail-wrap{display:grid;grid-template-rows:0fr;transition:grid-template-rows .55s cubic-bezier(.16,1,.3,1);}
.cloc.open .cloc-detail-wrap{grid-template-rows:1fr;}
.cloc-detail{overflow:hidden;min-height:0;padding-top:12px;padding-left:32px;font-size:14px;line-height:23px;color:rgba(255,255,255,.65);letter-spacing:-.6px;opacity:0;transition:opacity .4s ease .05s;}
.cloc.open .cloc-detail{opacity:1;}
.cloc-sub{display:block;}
.cform{background:#fff;border-radius:8px;padding:40px;display:flex;flex-direction:column;gap:18px;}
.cform .row{display:flex;gap:24px;}
.cform .field{display:flex;flex-direction:column;gap:6px;flex:1;}
.cform label{font-size:16px;font-weight:800;color:#4a4a4a;line-height:28px;}
.cform input,.cform textarea{background:var(--c-field);border:0;border-radius:8px;padding:10px 16px;height:42px;box-sizing:border-box;font-family:var(--font-en);font-size:16px;color:var(--c-ink);width:100%;outline:none;}
.cform input:focus,.cform textarea:focus{box-shadow:0 0 0 2px var(--c-primary-soft) inset;}
.cform textarea{height:200px;resize:vertical;font-family:var(--font-kr);line-height:1.6;}
.ctypes{display:flex;justify-content:space-between;gap:12px;}
.ctypes label{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:400;color:#4a4a4a;cursor:pointer;white-space:nowrap;}
.cform label.cagree{display:flex;align-items:center;justify-content:center;gap:10px;font-size:16px;font-weight:400;color:#4a4a4a;cursor:pointer;padding-top:16px;}
.ctypes input,.cagree input{appearance:none;-webkit-appearance:none;margin:0;box-sizing:border-box;padding:0;width:20px;height:20px;min-width:20px;flex:0 0 20px;border-radius:4px;background-color:rgba(187,187,187,.2);cursor:pointer;background-repeat:no-repeat;background-position:center;background-size:20px 20px;transition:background-color .15s;}
.ctypes input:checked,.cagree input:checked{background-color:var(--c-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%23ffffff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round' d='M5 10.5l3.3 3.3L15 6.8'/%3E%3C/svg%3E");}
.ctypes input:focus,.cagree input:focus{outline:none;box-shadow:none;}
.csubmit{align-self:center;width:224px;height:58px;background:#89BDE0;color:#fff;border:0;border-radius:50px;font-size:18px;font-weight:600;cursor:pointer;font-family:var(--font-kr);transition:transform .2s,opacity .2s;}
.csubmit:hover{transform:translateY(-2px);opacity:.92;}
.csubmit:disabled{opacity:.55;cursor:default;transform:none;}
.cform .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;}
.cform-status{margin:0;text-align:center;font-size:15px;font-weight:600;min-height:1.4em;}
.cform-status:empty{display:none;min-height:0;}
.cform-status.ok{color:var(--c-success);}
.cform-status.err{color:var(--c-error);}
@media(max-width:1300px){
  .footer-addr{grid-template-columns:1fr;gap:28px;}
}
@media(max-width:1024px){
  .rn-gnb{padding:23px 32px;}
  .rn-gnb.scrolled{padding:23px 32px;}
  .services,.story,.conclusion,.partners,.cta,.rn-footer{padding-left:32px;padding-right:32px;}
  .ap-copy .sr-line{transition-duration:.4s;transition-delay:0s;transform:translateY(12px);}
}
@media(max-width:1440px){
  .cdrawer{width:calc(100vw - 180px);}
  .cdrawer-inner{grid-template-columns:1fr;gap:40px;padding:88px 72px 56px;}
  .cinfo{position:static;top:auto;}
  .csub{white-space:nowrap;}
  .csub-br{display:none;}
}
@media(max-width:920px){
  .gnb-menu{display:none;}
  .gnb-mega{display:none;}
  .gnb-toggle{display:block;position:absolute;right:32px;top:50%;left:auto;transform:translateY(-50%) translateX(16px);}
  body.ready .gnb-toggle{transform:translateY(-50%) translateX(16px);}
}
@media(max-width:768px){
  .rn-footer{padding:48px 24px 28px;}
  .footer-top{gap:32px;}
  .footer-addr{grid-template-columns:1fr;gap:24px;}
  .addr-br-m{display:inline;}
  .cloc-sub{margin-top:12px;}
  .footer-bottom{flex-direction:column;align-items:flex-start;}
  body.cdrawer-open #site{transform:none;}
  .cdrawer{width:100vw;}
  .cdrawer-inner{grid-template-columns:1fr;gap:30px;padding:32px 22px 48px;}
  .cdrawer-close{display:flex;top:44px;right:22px;}
  .csub{white-space:normal;font-size:22px;}
  .csub-br{display:inline;}
  .cform{padding:40px 28px;}
}
@media(max-width:600px){
  .cform .row{flex-direction:column;gap:18px;}
  .ctypes{display:grid;grid-template-columns:repeat(3,1fr);gap:2px 12px;}
}
body.subpage{overflow-x:clip;}
.subhead{position:sticky;top:0;z-index:100;}
body.subpage .rn-gnb, body.subpage .rn-gnb.scrolled{position:relative;padding:23px 64px;background:#fff;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;}
@media(max-width:1024px){
  body.subpage .rn-gnb,body.subpage .rn-gnb.scrolled{padding:23px 32px;}
}
body.subpage .rn-gnb .logo-img{filter:none;height:26px;}
body.subpage .gnb-menu a{color:var(--c-ink);}
body.subpage .gnb-toggle{color:var(--c-ink);}
.subnav{display:none;}
.subnav-inner{max-width:1240px;margin:0 auto;height:56px;display:flex;align-items:center;justify-content:center;gap:clamp(22px,3vw,48px);padding:0 24px;}
.subnav a{position:relative;font-family:var(--font-kr);font-size:15px;font-weight:500;color:#fff;letter-spacing:-.3px;opacity:.9;transition:opacity .2s;white-space:nowrap;}
.subnav a::after{content:"";position:absolute;left:0;bottom:-2px;height:1.5px;width:100%;background:currentColor;
  transform:scaleX(0);transform-origin:left center;transition:transform .35s cubic-bezier(.7,0,.16,1);pointer-events:none;}
.subnav a:hover{opacity:1;}
.subnav a:hover::after,.subnav a.current::after{transform:scaleX(1);}
.subnav a.current{font-weight:700;opacity:1;}
body.m-open .subnav{display:none;}
body.subpage .subnav{display:block;background:var(--c-primary);}
body.subpage .gnb-mega{display:block;top:100%;max-height:56px;box-shadow:none;transition:none;z-index:2;}
body.subpage .rn-gnb.mega-open .gnb-mega{max-height:56px;}
body.subpage .rn-gnb.mega-open + .subnav{visibility:hidden;}
@media(max-width:920px){
  body.subpage .subnav{display:none;}
  body.subpage .gnb-mega{display:none;}
}
body.subpage.m-open .subhead{position:fixed;top:0;left:0;right:0;z-index:100;}
body.subpage.m-open{background:#fff;}
.mp-hero{position:sticky;top:0;z-index:1;height:320px;overflow:hidden;background:#0a1419;}
.mp-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;transform:scale(1.04);animation:mpHeroZoom 20s ease-out forwards;will-change:transform;}
.mp-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,18,28,.45),rgba(10,18,28,.55));}
.mp-hero-inner{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;padding:0 24px;}
.mp-hero-title{font-size:clamp(30px,4vw,52px);font-weight:800;letter-spacing:-1px;line-height:1.3;}
.mp-hero-sub{margin-top:14px;font-size:clamp(13px,1.4vw,17px);color:rgba(255,255,255,.82);letter-spacing:-.3px;}
body.subpage .gnb-item.current{color:#7AB3DA;}
@media(max-width:768px){
  .subnav{display:none;}
}
