/* JT rebuild preview. Load AFTER styles.css and redesign.css.
   This file owns presentation only: calculator logic and state colors remain intact.
   Shared legacy tokens allow the same sheet to skin generated static templates. */
@font-face {
  font-family: "JT Pretendard";
  src: url("../assets/fonts/PretendardVariable.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

:root {
  --rebuild-brand: #234d49;
  --rebuild-ground: #f6f3eb;
  --rebuild-surface: #e9e8d9;
  --rebuild-muted: #4b625b;
  --rebuild-on-brand: #fbf4df;
  --rebuild-on-brand-muted: #d1e0d7;
  --rebuild-gutter: clamp(20px, 4.45vw, 64px);
  --rebuild-width: 1440px;
  --jt-black: var(--rebuild-brand);
  --jt-white: var(--rebuild-ground);
  --jt-gray: var(--rebuild-muted);
  --jt-ink-900: #173c38;
  --jt-ink-800: var(--rebuild-brand);
  --jt-ink-700: #365950;
  --jt-ink-600: var(--rebuild-muted);
  --jt-ink-500: #5b6d65;
  --jt-ink-400: #78857a;
  --jt-ink-300: #c5cebf;
  --jt-ink-200: #d6dccf;
  --jt-ink-100: var(--rebuild-surface);
  --jt-ink-050: #eeeee3;
  --jt-accent: var(--rebuild-brand);
  --jt-accent-soft: #dce8df;
  --jt-darkbg: var(--rebuild-brand);
  --jt-darkbg-2: #365950;
  --jt-espresso: var(--rebuild-brand);
  --jt-espresso-fg: var(--rebuild-on-brand);
  --jt-espresso-fg2: var(--rebuild-on-brand-muted);
  --jt-espresso-line: #628078;
  --fg-1: var(--rebuild-brand);
  --fg-2: var(--rebuild-muted);
  --fg-3: #5b6d65;
  --fg-inverse: var(--rebuild-on-brand);
  --fg-link: var(--rebuild-brand);
  --bg-1: var(--rebuild-ground);
  --bg-2: #eeeee3;
  --bg-3: var(--rebuild-surface);
  --bg-inverse: var(--rebuild-brand);
  --border-1: #d6dccf;
  --border-2: #c5cebf;
  --border-strong: var(--rebuild-brand);
  --font-sans-kr: "JT Pretendard", "Pretendard", "Pretendard Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-sans-en: var(--font-sans-kr);
  --font-display-kr: var(--font-sans-kr);
  --font-display-en: var(--font-sans-kr);
  --fs-body: 18px;
  --fs-body-sm: 16px;
  --fs-caption: 13px;
  --fs-micro: 13px;
  --lh-base: 1.7;
  --container-max: 1280px;
  --gutter: var(--rebuild-gutter);
  --shadow-3: 0 6px 24px rgb(35 77 73 / 7%);
  --shadow-4: 0 12px 32px rgb(35 77 73 / 9%);
  /* Intentionally do not override --st-ok / --st-warn / --st-danger. */
}

html { scroll-padding-top: 104px; background: var(--bg-1); }
body { font-family: var(--font-sans-kr); background: var(--bg-1); color: var(--fg-1); }
button, input, textarea, select { font-family: var(--font-sans-kr); }
button, a, summary { -webkit-tap-highlight-color: transparent; }
:where(a, button, summary, input, select, textarea):focus-visible { outline: 2px solid var(--rebuild-brand); outline-offset: 4px; }
::selection { background: var(--rebuild-brand); color: var(--rebuild-on-brand); }
.jt-app { background: var(--bg-1); }
.jt-app::before, .jt-app::after { content: none; }
.jt-main { min-width: 0; }
.jt-renewal-skip { position: fixed; z-index: 1000; top: 12px; left: 20px; padding: 12px 20px; background: var(--rebuild-brand); color: var(--rebuild-on-brand); transform: translateY(-180%); }
.jt-renewal-skip:focus { transform: none; outline: 2px solid var(--rebuild-on-brand); outline-offset: 3px; }


:root{--brand:#234d49;--cream:#f6f3eb;--muted:#4b625b;--surface:#e9e8d9;}

.jt-nav,.jt-nav--scrolled{background:var(--cream)!important}.jt-nav__brand span{font:750 23px/1.3 var(--font-sans-kr);letter-spacing:-.05em!important}.jt-nav__brand img{height:34px!important}.jt-nav__links{gap:24px}.jt-nav__links a{font:550 15px/1.5 var(--font-sans-kr);min-height:44px;display:inline-flex;align-items:center}.jt-nav__dd,.jt-navmenu{background:var(--cream)}.jt-nav__dd-en{display:none}.jt-nav__dd-num{color:var(--muted)}.jt-navmenu a{font-size:18px}.jt-mcta{background:var(--cream)!important}.jt-footer{--fg-1:#fbf4df;--fg-2:#d1e0d7;--fg-3:#d1e0d7;background:var(--brand);color:#fbf4df}.jt-footer a,.jt-footer__bar a{color:#fbf4df!important}.jt-footer__bar a{text-decoration:underline;text-underline-offset:4px}.jt-footer__addr{color:#d1e0d7}.jt-footer__col h4{color:#d1e0d7}.jt-cta{background:var(--brand);--fg-1:#fbf4df;--fg-2:#d1e0d7}.jt-page-hero__mark{display:none}.jt-page-hero{background:var(--brand);--fg-1:#fbf4df;--fg-2:#d1e0d7;color:#fbf4df}.jt-page-hero h1{color:#fbf4df}.jt-page-hero__sub{color:#d1e0d7}.jt-page-hero__crumb{color:#d1e0d7}.jt-app::before,.jt-app::after,.jt-page-home::after{content:none!important}.jt-btn{min-height:46px}.jt-btn:focus-visible{outline-offset:4px}.jt-logomark-fix{display:none}
@media (min-width: 641px) and (max-width: 1024px){.jt-nav__links{gap:14px}.jt-nav__links a{font-size:14px}.jt-nav__cta>span{display:none}}
@media (max-width: 640px){.jt-nav__links{gap:14px}.jt-nav__links a{font-size:14px}.jt-nav__cta>span{display:none}}
@media(max-width:640px){.jt-nav__brand span{font-size:20px}.jt-nav__brand img{height:30px!important}.jt-footer__grid{gap:28px}.jt-footer__bar{gap:14px}.jt-page-hero{padding:40px 20px}.jt-page-hero h1{font-size:32px}.jt-section{padding-top:40px;padding-bottom:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}}

@media (min-width: 641px) and (max-width: 1024px){.jt-nav__links,.jt-nav__phone,.jt-nav__book{display:none}.jt-nav__burger{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:0 11px;background:transparent;border:1px solid var(--border-2)}.jt-navmenu{display:flex;flex-direction:column;position:absolute;left:0;right:0;top:100%;padding:20px;background:var(--cream);gap:14px}.jt-nav__cta>span{display:none}}
@media (max-width: 640px){.jt-nav__links,.jt-nav__phone,.jt-nav__book{display:none}.jt-nav__burger{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:0 11px;background:transparent;border:1px solid var(--border-2)}.jt-navmenu{display:flex;flex-direction:column;position:absolute;left:0;right:0;top:100%;padding:20px;background:var(--cream);gap:14px}.jt-nav__cta>span{display:none}}

@media (min-width: 641px) and (max-width: 1024px){.jt-nav__burger span{display:block;width:100%;height:2px;background:var(--fg-1);transition:transform .2s,opacity .2s}
.jt-nav--menu-open .jt-nav__burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.jt-nav--menu-open .jt-nav__burger span:nth-child(2){opacity:0}
.jt-nav--menu-open .jt-nav__burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}}
.jt-footer a:focus-visible,.jt-cta a:focus-visible,.jt-cta button:focus-visible,.rn-method-band a:focus-visible,.rn-method-band button:focus-visible{outline:3px solid #fbf4df;outline-offset:5px}.jt-footer .jt-footer__brand img{filter:brightness(0) invert(1)!important;height:42px!important;width:auto}.jt-renewal-footer a:focus-visible{outline-color:#fbf4df}

.jt-report-shell__privacy{font-size:14px!important;opacity:1!important;color:var(--muted)}

/* Readable secondary information throughout the customer journey. */
.jt-footer__col h4,.jt-footer__bar{font-size:13px;letter-spacing:0}
.jt-footer__bar a{display:inline-flex;align-items:center;min-height:44px}
.jt-mcta__btn{font-size:13px}
.jt-report-q__opt-hint{font-size:14px;line-height:1.65}
.jt-report-q>div:first-child:not([class]):has(+h2){font-size:13px!important;opacity:1!important;color:var(--fg-2);letter-spacing:.03em!important}
.jt-report-disc,.jt-report-disc p,.jt-report-disc strong{font-size:14px;line-height:1.8}
.jt-report-shell__meta,.jt-report-shell__meta .jt-tag{font-size:13px;letter-spacing:0}
.jt-renew-booking .jt-page-hero__crumb,.jt-renew-booking .jt-kicker{font-size:13px;letter-spacing:.02em}
