/* v1.0.5 — brand/acquisition navigation */
.kr-site-header--brand{height:auto;background:#fffdf9f7;box-shadow:none;transition:box-shadow .3s ease,background-color .3s ease}
.kr-site-header--brand.kr-header-scrolled{background:#fffdf9fc;box-shadow:0 8px 28px rgba(53,43,34,.08)}
.kr-header-main{position:relative;z-index:4;border-bottom:1px solid var(--kr-line);background:inherit}
.kr-brand-logo{width:44px;height:44px;object-fit:contain;flex:0 0 44px;border-radius:50%}
.kr-header-main-inner{min-height:72px;display:flex;align-items:center;gap:22px}
.kr-header-trust{display:flex;align-items:center;gap:8px;margin-left:auto}
.kr-header-trust span{display:inline-flex;align-items:center;min-height:29px;padding:4px 10px;border:1px solid #d8e6d1;border-radius:99px;background:#f7fbf4;color:#4e6547;font-size:10px;font-weight:700;white-space:nowrap}
.kr-header-actions{margin-left:0}
.kr-header-line{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:9px 14px;border:1px solid #bad4ae;border-radius:999px;background:#eef7e9;color:#36513a;text-decoration:none;font-size:12px;font-weight:800;transition:transform .22s ease,background-color .22s ease,box-shadow .22s ease}
.kr-header-line:hover{color:#36513a;background:#e1efda;transform:translateY(-1px);box-shadow:0 7px 18px rgba(71,99,62,.08)}
.kr-header-line svg{width:17px;height:17px}
.kr-header-book{min-height:44px;padding-inline:18px;font-size:12px}

.kr-header-navbar{position:relative;z-index:3;background:#fffdf9;border-bottom:1px solid rgba(233,224,211,.75)}
.kr-desktop-nav{display:block}
.kr-desktop-menu{display:flex;align-items:center;justify-content:center;gap:0;list-style:none;margin:0;padding:0}
.kr-desktop-menu>li{position:relative;margin:0}
.kr-desktop-menu>li>a,.kr-nav-parent>a{position:relative;display:flex;align-items:center;min-height:48px;padding:0 13px;color:#47403a;text-decoration:none;font-size:12.5px;font-weight:700;white-space:nowrap;transition:color .22s ease}
.kr-desktop-menu>li>a:after,.kr-nav-parent>a:after{content:'';position:absolute;left:13px;right:13px;bottom:0;height:2px;background:var(--kr-orange);transform:scaleX(0);transform-origin:center;transition:transform .25s ease}
.kr-desktop-menu>li>a:hover,.kr-nav-parent>a:hover,.kr-has-mega:focus-within>.kr-nav-parent>a{color:var(--kr-orange-deep)}
.kr-desktop-menu>li>a:hover:after,.kr-nav-parent>a:hover:after,.kr-has-mega:focus-within>.kr-nav-parent>a:after,.kr-has-mega.is-open>.kr-nav-parent>a:after{transform:scaleX(1)}
.kr-nav-parent{display:flex;align-items:center}
.kr-nav-parent>a{padding-right:5px}
.kr-nav-parent>button{width:27px;height:48px;padding:0;border:0;background:transparent;display:grid;place-items:center;color:#756b63}
.kr-nav-parent>button span{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .25s ease}
.kr-has-mega.is-open .kr-nav-parent>button span,.kr-has-mega:focus-within .kr-nav-parent>button span{transform:rotate(225deg) translate(-1px,-1px)}

.kr-mega{position:absolute;top:100%;left:50%;width:min(940px,calc(100vw - 48px));transform:translate(-50%,-8px);padding-top:9px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .24s ease,transform .24s ease,visibility .24s}
.kr-mega:before{content:'';position:absolute;top:0;left:0;right:0;height:10px}
.kr-has-mega:hover>.kr-mega,.kr-has-mega:focus-within>.kr-mega,.kr-has-mega.is-open>.kr-mega{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
.kr-mega-inner{display:grid;grid-template-columns:290px minmax(0,1fr);gap:0;overflow:hidden;border:1px solid var(--kr-line);border-radius:0 0 24px 24px;background:#fff;box-shadow:0 22px 55px rgba(47,37,29,.12)}
.kr-mega-intro{padding:32px 30px;background:linear-gradient(145deg,#f1f8ed,#fffaf3)}
.kr-mega-intro--brand{background:linear-gradient(145deg,#fff2e7,#f4f9f0)}
.kr-mega-kicker{margin:0 0 14px;color:var(--kr-orange-deep);font-size:10px;font-weight:800;letter-spacing:.17em}
.kr-mega-intro>strong{display:block;font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:21px;line-height:1.65}
.kr-mega-intro>p:not(.kr-mega-kicker){margin:12px 0 18px;color:var(--kr-muted);font-size:12px;line-height:1.9}
.kr-mega-intro>a{color:var(--kr-orange-deep);font-size:12px;font-weight:800;text-decoration:none}
.kr-mega-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:18px}
.kr-mega-links>a{display:block;padding:18px 19px;border-radius:14px;text-decoration:none;transition:background-color .22s ease,transform .22s ease}
.kr-mega-links>a:hover{background:#f8f5ef;transform:translateX(2px)}
.kr-mega-links strong{display:block;color:#443d37;font-size:13px;line-height:1.6}
.kr-mega-links span{display:block;margin-top:5px;color:var(--kr-muted);font-size:10.5px;line-height:1.6}

.kr-mobile-nav,.kr-nav-backdrop{display:none}

@media(max-width:1180px){
  .kr-header-trust,.kr-header-line{display:none}
  .kr-header-main-inner{min-height:68px}
  .kr-header-navbar,.kr-desktop-nav{display:none}
  .kr-menu-toggle{display:flex;position:relative;z-index:1502}
  .kr-menu-toggle span,.kr-menu-toggle span:before,.kr-menu-toggle span:after{transition:transform .3s ease,top .3s ease,opacity .25s ease,background-color .25s ease}
  .kr-nav-open .kr-menu-toggle{background:#fff}
  .kr-nav-open .kr-menu-toggle span{background:transparent}
  .kr-nav-open .kr-menu-toggle span:before{top:0;transform:rotate(45deg)}
  .kr-nav-open .kr-menu-toggle span:after{top:0;transform:rotate(-45deg)}

  .kr-mobile-nav{display:block;position:fixed;z-index:1500;top:0;right:0;bottom:0;width:min(92vw,440px);background:#fffdf9;transform:translateX(104%);visibility:hidden;box-shadow:-18px 0 55px rgba(34,27,22,.14);transition:transform .38s cubic-bezier(.22,.8,.24,1),visibility .38s;overflow:hidden}
  .kr-nav-open .kr-mobile-nav{transform:translateX(0);visibility:visible}
  .kr-nav-backdrop{display:block;position:fixed;z-index:1490;inset:0;background:rgba(44,37,31,.32);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s}
  .kr-nav-open .kr-nav-backdrop{opacity:1;visibility:visible}
  body.kr-nav-open{overflow:hidden}

  .kr-mobile-nav-head{height:76px;padding:0 19px 0 23px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--kr-line);background:#fff}
  .kr-mobile-nav-head>div{display:grid}
  .kr-mobile-nav-head span{color:var(--kr-orange-deep);font-size:9px;font-weight:800;letter-spacing:.18em}
  .kr-mobile-nav-head strong{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:21px;letter-spacing:.06em}
  .kr-mobile-close{width:44px;height:44px;border:0;border-radius:50%;background:#f5f1ea;position:relative}
  .kr-mobile-close span:before,.kr-mobile-close span:after{content:'';position:absolute;left:12px;top:21px;width:20px;height:1.5px;background:#4b443e}
  .kr-mobile-close span:before{transform:rotate(45deg)}.kr-mobile-close span:after{transform:rotate(-45deg)}

  .kr-mobile-nav-body{height:calc(100% - 76px);overflow-y:auto;padding:18px 18px calc(32px + env(safe-area-inset-bottom));overscroll-behavior:contain}
  .kr-mobile-feature{display:block;padding:23px;border-radius:20px;background:linear-gradient(135deg,#f1f8ed,#fff7ed);border:1px solid #dce8d5;text-decoration:none;margin-bottom:13px}
  .kr-mobile-feature small{display:block;color:var(--kr-orange-deep);font-size:10px;font-weight:800;letter-spacing:.12em;margin-bottom:6px}
  .kr-mobile-feature strong{display:block;font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:19px;line-height:1.65}
  .kr-mobile-feature span{display:block;margin-top:10px;color:var(--kr-muted);font-size:11px}

  .kr-mobile-direct{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:13px}
  .kr-mobile-direct a{padding:16px;border:1px solid var(--kr-line);border-radius:16px;background:#fff;text-decoration:none}
  .kr-mobile-direct strong{display:block;font-size:13px;line-height:1.5}
  .kr-mobile-direct span{display:block;margin-top:4px;color:var(--kr-muted);font-size:9.5px}

  .kr-mobile-accordion{border-top:1px solid var(--kr-line)}
  .kr-mobile-accordion>button{width:100%;min-height:58px;padding:0 5px;border:0;background:transparent;display:flex;align-items:center;justify-content:space-between;text-align:left;color:var(--kr-ink);font-weight:800}
  .kr-mobile-accordion>button i{width:11px;height:11px;border-right:1.5px solid #665d55;border-bottom:1.5px solid #665d55;transform:rotate(45deg) translate(-2px,-2px);transition:transform .28s ease}
  .kr-mobile-accordion.is-open>button i{transform:rotate(225deg) translate(-1px,-1px)}
  .kr-mobile-accordion-panel{max-height:0;overflow:hidden;padding-bottom:0;transition:max-height .34s cubic-bezier(.2,.7,.2,1),padding-bottom .34s ease}
  .kr-mobile-accordion.is-open .kr-mobile-accordion-panel{max-height:460px;padding-bottom:10px}
  .kr-mobile-accordion-panel>a{display:block;padding:10px 13px;margin:2px 0;border-radius:11px;color:#5a514a;background:#faf7f2;text-decoration:none;font-size:12px;font-weight:600;opacity:0;transform:translateY(-4px);transition:opacity .22s ease,transform .22s ease}
  .kr-mobile-accordion.is-open .kr-mobile-accordion-panel>a{opacity:1;transform:none}

  .kr-mobile-plain-links{border-top:1px solid var(--kr-line);display:grid}
  .kr-mobile-plain-links a{padding:16px 5px;border-bottom:1px solid var(--kr-line);text-decoration:none;font-size:13px;font-weight:800}
  .kr-mobile-contact{margin-top:22px;padding:22px;border-radius:20px;background:#f4f8f1}
  .kr-mobile-contact p{margin:0 0 15px;color:var(--kr-muted);font-size:11px;line-height:1.8}
  .kr-mobile-contact .kr-btn-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .kr-mobile-contact .kr-btn{padding:10px 8px;font-size:11px;min-height:46px}
}

@media(max-width:782px){
  .kr-header-main-inner{min-height:64px}
  .kr-header-book{padding:8px 12px;min-height:40px}
  .kr-header-book span{font-size:11px}
  .kr-header-book svg{display:none}
  .kr-brand-name{font-size:18px}
  .kr-brand-sub{font-size:8.5px}
  .kr-brand-mark{width:34px;height:34px;font-size:20px}
  .kr-mobile-nav{width:100%}
}

@media(max-width:390px){
  .kr-header-book span{font-size:10px}
  .kr-header-book{padding-inline:10px}
  .kr-brand-sub{display:none}
  .kr-mobile-nav-body{padding-inline:14px}
  .kr-mobile-contact .kr-btn-row{grid-template-columns:1fr}
}

@media(prefers-reduced-motion:reduce){
  .kr-mobile-nav,.kr-nav-backdrop,.kr-mega,.kr-mobile-accordion-panel,.kr-mobile-accordion-panel>a,.kr-site-header--brand{transition:none!important}
}
