/* from design/Main.dc.html */
body{margin:0;background:#FFFFFF}
*{box-sizing:border-box}
a{color:#0A0A0A}a:hover{color:#666666}
.heading-1{margin:0;font-size:60px;line-height:60px;font-weight:600;letter-spacing:-0.025em;text-wrap:balance}
.heading-2{margin:0;font-size:48px;line-height:48px;font-weight:600;letter-spacing:-0.02em;text-wrap:balance}
.heading-3{margin:0;font-size:36px;line-height:40px;font-weight:600;letter-spacing:-0.02em;text-wrap:balance}
.heading-5{margin:0;font-size:24px;line-height:32px;font-weight:600;letter-spacing:-0.01em}
.heading-6{margin:0;font-size:20px;line-height:28px;font-weight:600;letter-spacing:-0.01em}
.title-1{font-size:20px;line-height:28px;font-weight:500}
.title-3{font-size:16px;line-height:24px;font-weight:500}
.body-3{margin:0;font-size:16px;line-height:24px;font-weight:400;text-wrap:pretty}
.body-6{margin:0;font-size:14px;line-height:20px;font-weight:400;text-wrap:pretty}
.body-7{margin:0;font-size:18px;line-height:28px;font-weight:400;text-wrap:pretty}
.button-lg{font-size:18px;line-height:28px;font-weight:600}
.button-sm{font-size:14px;line-height:20px;font-weight:600}
.caption-1{font-size:14px;line-height:20px;font-weight:500}
.caption-2{font-size:14px;line-height:20px;font-weight:400}
.caption-4{font-size:12px;line-height:16px;font-weight:500}
.mono{font-family:'Geist Mono',ui-monospace,monospace;font-weight:500;letter-spacing:0}
.hero-grad{background:linear-gradient(90deg,#000000,#666666);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-grad-dark{background:linear-gradient(90deg,#FFFFFF,#9B9B9B);-webkit-background-clip:text;background-clip:text;color:transparent}
.chapter{transition:background-color 300ms cubic-bezier(0.22,1,0.36,1),border-color 300ms cubic-bezier(0.22,1,0.36,1),transform 300ms cubic-bezier(0.22,1,0.36,1)}
.chapter:hover{background:#FFFFFF !important}
.chapter:active{transform:scale(0.98)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px;border:0;border-radius:8px;text-decoration:none;cursor:pointer;font-family:inherit;transition:transform 300ms cubic-bezier(0.22,1,0.36,1),opacity 300ms cubic-bezier(0.22,1,0.36,1),background-color 300ms cubic-bezier(0.22,1,0.36,1)}
.btn:hover{transform:translateY(-1px);opacity:0.88}
.btn:active{transform:scale(0.98)}
.nav-link{padding:8px 12px;border-radius:9999px;color:#666666;text-decoration:none;transition:color 300ms cubic-bezier(0.22,1,0.36,1),background-color 300ms cubic-bezier(0.22,1,0.36,1)}
.nav-link:hover{color:#0A0A0A;background:#E5E5E5}
.text-link{color:#0A0A0A;text-decoration:underline;text-decoration-color:#666666;text-underline-offset:4px}
.text-link:hover{color:#0A0A0A;text-decoration-color:#0A0A0A}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #0A72AD;outline-offset:2px}
.skip{position:absolute;left:16px;top:-64px;z-index:10;padding:8px 12px;border-radius:8px;background:#0A0A0A;color:#FFFFFF;text-decoration:none}
.skip:focus{top:16px}
.zoom-card img{transition:transform 500ms cubic-bezier(0.22,1,0.36,1)}
.zoom-card:hover img{transform:scale(1.04)}
.faq summary{list-style:none;cursor:pointer}
.faq summary::-webkit-details-marker{display:none}
.faq-icon{flex:none;transition:transform 500ms cubic-bezier(0.22,1,0.36,1)}
.faq[open] .faq-icon{transform:rotate(45deg)}
.tw{transition:color 500ms cubic-bezier(0.22,1,0.36,1)}
.field{display:block;width:100%;min-height:48px;padding:12px 16px;border:1px solid #E5E5E5;border-radius:8px;background:#FFFFFF;color:#0A0A0A;font:inherit;font-size:16px;line-height:24px;box-sizing:border-box}
.field:focus{outline:2px solid #0A72AD;outline-offset:0;border-color:transparent}
.field[aria-invalid="true"]{border-color:#DC2626}
.field-error{margin:4px 0 0;font-size:14px;line-height:20px;color:#B91C1C}
.contact-link{transition:transform 300ms cubic-bezier(0.22,1,0.36,1),opacity 300ms cubic-bezier(0.22,1,0.36,1)}
.contact-link:hover{transform:translateY(-1px);opacity:0.92}
.contact-link:active{transform:scale(0.98)}
@media (prefers-reduced-motion: reduce){*{transition-duration:0ms !important}}

/* site-only rules: layout container, interactive states, mobile */
:root{--accent:#0A72AD;--ease:cubic-bezier(0.22,1,0.36,1)}
html{scroll-behavior:smooth;scroll-padding-top:96px}
.wrap{max-width:1200px;margin:0 auto;padding:96px 24px}
[hidden]{display:none !important}

/* tagline: words light up one at a time */
.tw-line{display:block}
.tw{display:inline-block;margin-right:0.25em;color:rgba(255,255,255,0.3)}
.tw.is-lit{color:#FFFFFF}

/* short-form chapters */
.chapter{border:1px solid #E5E5E5;background:transparent}
.chapter[aria-current="true"]{border-color:var(--accent);background:#FFFFFF}

/* sticky call bar, phones only */
.mobile-cta{display:none}

@media (max-width: 767px){
  .wrap{padding:64px 16px}
  .heading-1{font-size:36px;line-height:40px}
  .heading-2,.heading-3{font-size:30px;line-height:36px}
  .nav-link{display:none}
  #top > div[style*="min-height: 760px"]{min-height:0 !important;padding:120px 16px 32px !important;gap:40px !important}
  [style*="min-height: 480px"]{min-height:320px !important}
  [style*="height: 400px"]{height:300px !important}
  [style*="padding: 48px; border-radius: 24px"]{padding:32px 24px !important}
  .chapter > span:first-child{width:54px !important;height:96px !important}
  #contact-form{padding:24px !important}
  body{padding-bottom:80px}
  .mobile-cta{position:fixed;left:0;right:0;bottom:0;z-index:20;display:flex;gap:8px;padding:12px 16px 16px;background:rgba(255,255,255,0.9);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
  .mobile-cta-sms{flex:none;width:48px;height:48px;padding:0;background:#E5E5E5;color:#0A0A0A}
  .mobile-cta-kakao{flex:none;width:48px;height:48px;padding:0;background:#FEE500;color:#191919}
  .mobile-cta-call{flex:1 1 auto;height:48px;background:var(--accent);color:#FFFFFF}
  .mobile-cta-call:hover{color:#FFFFFF}
}
