:root { --paper: #F7F5EF; --paper-dim: #EFEBE0; --ink: #1F2A26; --ink-soft: #4B5750; --pine: #26433C; --pine-deep: #1A2F2A; --sage: #86A491; --sage-pale: #E4EAE3; --honey: #E3A24C; --honey-deep: #C9832E; --line: #D8D2C4; --max: 1120px; } * { box-sizing: border-box; -webkit-tap-highlight-color: transparent; } html { scroll-behavior: smooth; } body { margin: 0; background: var(--paper); color: var(--ink); font-family: 'Pretendard', -apple-system, BlinkMacSystemFont, sans-serif; font-weight: 400; font-size: 15.5px; line-height: 1.65; -webkit-font-smoothing: antialiased; overflow-x: hidden; } @media (min-width: 768px) { body { font-size: 16px; line-height: 1.7; } } h1, h2, h3, .serif { font-family: 'Gowun Batang', serif; font-weight: 700; color: var(--pine-deep); line-height: 1.35; margin: 0; } p { margin: 0 0 1em; color: var(--ink-soft); } a { color: inherit; text-decoration: none; } img { max-width: 100%; display: block; } button { font-family: inherit; } .wrap { max-width: var(--max); margin: 0 auto; padding: 0 20px; } @media (min-width: 768px) { .wrap { padding: 0 28px; } } .site-header { position: sticky; top: 0; z-index: 50; background: rgba(247,245,239,0.92); backdrop-filter: blur(8px); border-bottom: 1px solid var(--line); } .site-header .wrap { display: flex; align-items: center; justify-content: space-between; height: 64px; } @media (min-width: 768px) { .site-header .wrap { height: 76px; } } .brand { display: flex; align-items: baseline; gap: 8px; font-family: 'Gowun Batang', serif; font-weight: 700; font-size: 17px; color: var(--pine-deep); white-space: nowrap; } .brand span { display: none; } @media (min-width: 768px) { .brand { font-size: 20px; } .brand span { display: inline; font-family: 'Pretendard'; font-weight: 500; font-size: 12px; color: var(--sage); letter-spacing: 0.02em; } } .main-nav { display: none; } .main-nav a { padding: 10px 16px; font-size: 15px; font-weight: 500; color: var(--ink-soft); border-radius: 999px; transition: background .2s, color .2s; } .main-nav a:hover { background: var(--sage-pale); color: var(--pine-deep); } .main-nav a.active { background: var(--pine); color: #fff; } .main-nav.open { display: flex; position: absolute; top: 64px; left: 0; right: 0; background: var(--paper); border-bottom: 1px solid var(--line); flex-direction: column; padding: 8px 20px 16px; } .main-nav.open a { padding: 14px 4px; font-size: 16px; border-radius: 0; border-bottom: 1px solid var(--line); } .main-nav.open a:last-child { border-bottom: none; } .nav-toggle { display: flex; background: none; border: 1px solid var(--line); border-radius: 10px; width: 44px; height: 44px; align-items: center; justify-content: center; cursor: pointer; flex-shrink: 0; } .nav-toggle span, .nav-toggle span::before, .nav-toggle span::after { content: ''; display: block; width: 20px; height: 2px; background: var(--pine-deep); position: relative; transition: transform .2s; } .nav-toggle span::before { position: absolute; top: -6px; } .nav-toggle span::after { position: absolute; top: 6px; } @media (min-width: 880px) { .main-nav { display: flex; gap: 6px; position: static; padding: 0; border: none; background: none; } .main-nav a { border-bottom: none !important; } .nav-toggle { display: none; } } .btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 14px 24px; border-radius: 999px; font-size: 15px; font-weight: 500; border: 1px solid transparent; cursor: pointer; min-height: 48px; } .btn-primary { background: var(--pine); color: #fff; } .btn-primary:hover { background: var(--pine-deep); } .btn-ghost { border-color: var(--pine); color: var(--pine); } .btn-ghost:hover { background: var(--sage-pale); } .btn-honey { background: var(--honey); color: var(--pine-deep); } .btn-honey:hover { background: var(--honey-deep); color: #fff; } .curve-field { position: relative; overflow: hidden; } .curve-line { position: absolute; pointer-events: none; opacity: .5; } .hero { padding: 40px 0 48px; position: relative; overflow: hidden; border-bottom: 1px solid var(--line); } .hero .wrap { display: grid; grid-template-columns: 1fr; gap: 32px; align-items: center; position: relative; z-index: 2; } .eyebrow-line { display: flex; align-items: center; gap: 10px; margin-bottom: 16px; } .eyebrow-line .dot { width: 7px; height: 7px; border-radius: 50%; background: var(--honey); flex-shrink: 0; } .eyebrow-line span { font-size: 13px; color: var(--sage); font-weight: 500; } .hero h1 { font-size: clamp(28px, 7vw, 50px); margin-bottom: 18px; max-width: 15ch; } .hero .lede { font-size: 15.5px; max-width: 42ch; margin-bottom: 24px; } .hero-actions { display: flex; gap: 10px; flex-wrap: wrap; } .hero-actions .btn { flex: 1 1 auto; } .hero-figure { position: relative; aspect-ratio: 16/10; background: var(--pine); border-radius: 22px; overflow: hidden; display: flex; align-items: flex-end; order: -1; } .hero-figure svg { width: 100%; height: 100%; } .growth-draw { stroke-dasharray: 720; stroke-dashoffset: 720; animation: draw-curve 1.6s .3s cubic-bezier(.34,.01,.15,1) forwards; } @keyframes draw-curve { to { stroke-dashoffset: 0; } } @media (prefers-reduced-motion: reduce) { .growth-draw { animation: none; stroke-dashoffset: 0; } } .stat-row { display: grid; grid-template-columns: 1fr; gap: 16px; margin-top: 36px; border-top: 1px solid var(--line); padding-top: 24px; } .stat { border-left: none; padding-left: 0; border-top: 1px solid var(--line); padding-top: 14px; } .stat:first-child { border-top: none; padding-top: 0; } .stat b { font-family: 'Gowun Batang', serif; font-size: 24px; color: var(--pine-deep); display: block; } .stat span { font-size: 13px; color: var(--ink-soft); } @media (min-width: 880px) { .hero { padding: 72px 0 96px; } .hero .wrap { grid-template-columns: 1.1fr 0.9fr; gap: 56px; } .hero .lede { font-size: 17px; margin-bottom: 32px; } .hero-actions .btn { flex: 0 0 auto; } .hero-figure { aspect-ratio: 4/5; order: 0; border-radius: 28px; } .stat-row { grid-template-columns: repeat(3, 1fr); gap: 0; margin-top: 64px; } .stat { border-left: 1px solid var(--line); padding-left: 20px; border-top: none; padding-top: 0; } .stat:first-child { border-left: none; padding-left: 0; } .stat b { font-size: 30px; } .stat span { font-size: 13.5px; } } section { padding: 52px 0; } .section-head { max-width: 640px; margin-bottom: 32px; } .section-head .kicker { font-size: 13px; color: var(--honey-deep); font-weight: 500; margin-bottom: 8px; display: block; } .section-head h2 { font-size: clamp(22px, 6vw, 34px); } .section-alt { background: var(--pine); color: #fff; } .section-alt h2, .section-alt .section-head .kicker { color: #fff; } .section-alt p { color: rgba(255,255,255,0.78); } .section-pale { background: var(--sage-pale); } @media (min-width: 880px) { section { padding: 88px 0; } .section-head { margin-bottom: 48px; } } .grid-auto { display: grid; grid-template-columns: 1fr; gap: 16px; } @media (min-width: 620px) { .grid-auto { grid-template-columns: 1fr 1fr; } } @media (min-width: 960px) { .grid-auto { grid-template-columns: repeat(3, 1fr); gap: 24px; } } .grid-3, .grid-2, .grid-4 { display: grid; grid-template-columns: 1fr; gap: 16px; } @media (min-width: 620px) { .grid-2 { grid-template-columns: 1fr 1fr; } .grid-4 { grid-template-columns: 1fr 1fr; } } @media (min-width: 880px) { .grid-3, .grid-2, .grid-4 { gap: 24px; } .grid-3 { grid-template-columns: repeat(3, 1fr); } } @media (min-width: 1020px) { .grid-4 { grid-template-columns: repeat(4, 1fr); } } .service-card { background: #fff; border: 1px solid var(--line); border-radius: 18px; padding: 24px 22px; position: relative; } .service-card .num { font-family: 'Gowun Batang', serif; font-size: 14px; color: var(--sage); margin-bottom: 14px; display: block; } .service-card h3 { font-size: 17.5px; margin-bottom: 8px; } .service-card h3 a:hover { color: var(--honey-deep); } .service-card p { font-size: 14px; margin-bottom: 0; } @media (min-width: 880px) { .service-card { padding: 32px 28px; border-radius: 20px; } .service-card .num { font-size: 15px; margin-bottom: 18px; } .service-card h3 { font-size: 19px; } .service-card p { font-size: 14.5px; } } .growth-line { position: relative; padding-left: 26px; border-left: 2px solid var(--sage); } .growth-step { position: relative; padding-bottom: 32px; } .growth-step:last-child { padding-bottom: 0; } .growth-step::before { content: ''; position: absolute; left: -32px; top: 4px; width: 12px; height: 12px; border-radius: 50%; background: var(--honey); border: 3px solid var(--paper); box-shadow: 0 0 0 2px var(--sage); } .growth-step .age { font-size: 13px; color: var(--honey); font-weight: 500; margin-bottom: 6px; display: block; } .growth-step h3 { font-size: 16.5px; margin-bottom: 6px; color: #fff; } .growth-step p { font-size: 14px; color: rgba(255,255,255,0.78); } @media (min-width: 880px) { .growth-line { padding-left: 32px; } .growth-step { padding-bottom: 44px; } .growth-step::before { left: -38px; } .growth-step h3 { font-size: 18px; margin-bottom: 8px; } .growth-step p { font-size: 14.5px; } } .edu-badge { display: inline-flex; align-items: center; gap: 12px; background: #fff; border: 1px solid var(--line); color: var(--pine-deep); border-radius: 999px; padding: 8px 20px 8px 8px; margin-bottom: 18px; } .edu-badge img { width: 36px; height: 36px; flex-shrink: 0; object-fit: contain; } .edu-badge b { font-size: 14.5px; font-weight: 600; letter-spacing: 0.01em; } @media (min-width: 700px) { .edu-badge { padding: 9px 24px 9px 9px; } .edu-badge img { width: 44px; height: 44px; } .edu-badge b { font-size: 15.5px; } } .profile { display: grid; grid-template-columns: 1fr; gap: 28px; align-items: start; } .profile-figure { aspect-ratio: 4/3; background: var(--sage-pale); border-radius: 18px; overflow: hidden; position: relative; } .profile-name { font-size: 14px; color: var(--sage); margin-bottom: 6px; display: block; } .profile h2 { font-size: 25px; margin-bottom: 4px; } .profile .role { color: var(--ink-soft); font-size: 14px; margin-bottom: 20px; display: block; } .cred-list { list-style: none; margin: 0 0 24px; padding: 0; } .cred-list li { padding: 12px 0; border-top: 1px solid var(--line); font-size: 14.5px; display: flex; flex-wrap: wrap; gap: 6px 14px; } .cred-list li:last-child { border-bottom: 1px solid var(--line); } .cred-list b { color: var(--pine-deep); min-width: 84px; flex-shrink: 0; font-weight: 500; } @media (min-width: 880px) { .profile { grid-template-columns: 0.85fr 1.15fr; gap: 56px; } .profile-figure { aspect-ratio: 3/4; border-radius: 20px; } .profile-name { font-size: 15px; margin-bottom: 8px; } .profile h2 { font-size: 30px; } .profile .role { font-size: 15px; margin-bottom: 26px; } .cred-list li { font-size: 15px; flex-wrap: nowrap; } } .cred-groups { display: grid; grid-template-columns: 1fr; gap: 22px; margin-bottom: 28px; } .cred-group h4 { font-size: 13px; color: var(--sage); font-weight: 500; margin-bottom: 8px; letter-spacing: 0.01em; } .cred-group ul { list-style: none; margin: 0; padding: 0; } .cred-group li { padding: 9px 0; border-top: 1px solid var(--line); font-size: 14.5px; color: var(--ink); } .cred-group li:last-child { border-bottom: 1px solid var(--line); } @media (min-width: 620px) { .cred-groups { grid-template-columns: 1fr 1fr; } } @media (min-width: 880px) { .cred-group li { font-size: 15px; } } .info-table { width: 100%; border-collapse: collapse; } .info-table th, .info-table td { text-align: left; padding: 13px 0; border-top: 1px solid var(--line); font-size: 14px; font-weight: 400; vertical-align: top; } .info-table th { width: 92px; color: var(--pine-deep); } .info-table td { color: var(--ink-soft); } .info-table tr:last-child th, .info-table tr:last-child td { border-bottom: 1px solid var(--line); } @media (min-width: 880px) { .info-table th, .info-table td { padding: 16px 0; font-size: 15px; } .info-table th { width: 120px; } } .map-box { aspect-ratio: 4/3; background: var(--sage-pale); border-radius: 18px; display: flex; align-items: center; justify-content: center; color: var(--sage); font-size: 13.5px; border: 1px dashed var(--sage); text-align: center; padding: 20px; } @media (min-width: 880px) { .map-box { aspect-ratio: 16/9; border-radius: 20px; font-size: 14px; } } .kakao-map-embed { display: block; border-radius: 18px; overflow: hidden; border: 1px solid var(--line); } .kakao-map-embed img { width: 100%; height: auto; display: block; } .form-box { background: #fff; border: 1px solid var(--line); border-radius: 18px; padding: 24px 20px; } .field { margin-bottom: 18px; } .field label { display: block; font-size: 13.5px; color: var(--pine-deep); margin-bottom: 7px; } .field input, .field select, .field textarea { width: 100%; border: 1px solid var(--line); background: var(--paper); border-radius: 10px; padding: 13px 14px; font-size: 16px; font-family: inherit; color: var(--ink); min-height: 48px; } .field textarea { resize: vertical; min-height: 100px; } .field-row { display: grid; grid-template-columns: 1fr; gap: 14px; } .form-note { font-size: 12.5px; color: var(--ink-soft); margin-top: 14px; } @media (min-width: 620px) { .field-row { grid-template-columns: 1fr 1fr; gap: 16px; } } @media (min-width: 880px) { .form-box { padding: 36px; } } .quick-contact { display: grid; grid-template-columns: 1fr; gap: 14px; margin-bottom: 32px; } .quick-contact a, .quick-contact div { border: 1px solid var(--line); border-radius: 16px; padding: 20px; background: #fff; } .quick-contact .label { font-size: 12.5px; color: var(--sage); display: block; margin-bottom: 6px; } .quick-contact .value { font-family: 'Gowun Batang', serif; font-size: 18px; color: var(--pine-deep); } @media (min-width: 620px) { .quick-contact { grid-template-columns: repeat(3,1fr); gap: 18px; margin-bottom: 40px; } } .faq-item { border-top: 1px solid var(--line); padding: 18px 0; } .faq-item:last-child { border-bottom: 1px solid var(--line); } .faq-item summary { cursor: pointer; font-size: 15px; color: var(--pine-deep); font-weight: 500; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 12px; } .faq-item summary::-webkit-details-marker { display: none; } .faq-item summary::after { content: '+'; font-size: 20px; color: var(--sage); flex-shrink: 0; } .faq-item[open] summary::after { content: '–'; } .faq-item p { margin-top: 12px; font-size: 14px; } .section-alt .faq-item summary { color: #fff; } @media (min-width: 880px) { .faq-item { padding: 22px 0; } .faq-item summary { font-size: 16px; } .faq-item p { margin-top: 14px; font-size: 14.5px; } } footer { border-top: 1px solid var(--line); padding: 36px 0; } footer .wrap { display: flex; flex-direction: column; gap: 24px; } footer .f-brand { font-family: 'Gowun Batang', serif; font-size: 16px; color: var(--pine-deep); margin-bottom: 8px; } footer .f-meta { font-size: 13px; color: var(--ink-soft); line-height: 1.9; } footer .f-nav { display: flex; gap: 16px; font-size: 13.5px; flex-wrap: wrap; } footer .f-nav a:hover { color: var(--pine); } @media (min-width: 768px) { footer { padding: 48px 0; } footer .wrap { flex-direction: row; justify-content: space-between; align-items: flex-start; } footer .f-brand { font-size: 17px; } footer .f-meta { font-size: 13.5px; } footer .f-nav { gap: 18px; font-size: 14px; } } .reserve-grid { display: grid; grid-template-columns: 1fr; gap: 16px; } .reserve-card { background: #fff; border: 1px solid var(--line); border-radius: 18px; padding: 24px 22px; display: flex; flex-direction: column; gap: 12px; } .reserve-card .emoji { font-size: 26px; } .reserve-card h3 { font-size: 17px; } .reserve-card p { font-size: 13.5px; margin: 0; flex-grow: 1; } .reserve-card.primary { background: var(--pine); border-color: var(--pine); } .reserve-card.primary h3, .reserve-card.primary p { color: #fff; } .reserve-card.primary p { color: rgba(255,255,255,0.78); } @media (min-width: 700px) { .reserve-grid { grid-template-columns: repeat(3, 1fr); gap: 20px; } } @media (min-width: 880px) { .reserve-card { padding: 32px 26px; } .reserve-card .emoji { font-size: 28px; } .reserve-card h3 { font-size: 18px; } .reserve-card p { font-size: 14px; } } .story-band { background: var(--pine-deep); color: #fff; padding: 56px 0; position: relative; overflow: hidden; } .story-band .wrap { position: relative; z-index: 2; text-align: center; } .story-band .story-year { font-family: 'Gowun Batang', serif; font-size: clamp(40px, 16vw, 96px); color: var(--honey); line-height: 1; } .story-band .story-year-label { font-size: 12px; letter-spacing: 0.1em; color: var(--sage); margin-top: 6px; } .story-lines { max-width: 640px; margin: 28px auto 0; } .story-lines p { color: rgba(255,255,255,0.9); font-size: clamp(16px, 5vw, 24px); font-family: 'Gowun Batang', serif; margin-bottom: 12px; } .story-lines em { color: var(--honey); font-style: normal; } .story-band .story-sub { margin-top: 24px; color: rgba(255,255,255,0.65); font-size: 13.5px; } @media (min-width: 880px) { .story-band { padding: 96px 0; } .story-band .story-year-label { font-size: 13px; } .story-lines { margin-top: 40px; } .story-lines p { margin-bottom: 14px; } .story-band .story-sub { margin-top: 32px; font-size: 14.5px; } } .reason-grid { display: grid; grid-template-columns: 1fr; gap: 14px; } .reason-item { padding: 20px; border: 1px solid var(--line); border-radius: 16px; background: #fff; border-left: 3px solid var(--honey); } .reason-item h4 { font-size: 15px; color: var(--pine-deep); font-family: 'Pretendard'; font-weight: 500; margin-bottom: 5px; } .reason-item p { font-size: 13.5px; margin: 0; } @media (min-width: 700px) { .reason-grid { grid-template-columns: repeat(2, 1fr); gap: 18px; } .reason-item { padding: 22px; } .reason-item h4 { font-size: 16px; } .reason-item p { font-size: 14px; } } .persona-grid { display: grid; grid-template-columns: 1fr; gap: 14px; } .persona-card { padding: 20px; border-radius: 16px; background: var(--sage-pale); } .persona-card h4 { font-size: 14.5px; color: var(--pine-deep); font-family: 'Pretendard'; font-weight: 500; margin-bottom: 6px; } .persona-card p { font-size: 13px; margin: 0; } @media (min-width: 620px) { .persona-grid { grid-template-columns: 1fr 1fr; } } @media (min-width: 960px) { .persona-grid { grid-template-columns: repeat(3, 1fr); gap: 18px; } .persona-card { padding: 26px 22px; } .persona-card h4 { font-size: 15.5px; } .persona-card p { font-size: 13.5px; } } .space-grid { display: grid; grid-template-columns: 1fr; gap: 14px; } .space-shot { aspect-ratio: 4/3; border-radius: 16px; overflow: hidden; position: relative; background: var(--sage-pale); display: flex; align-items: flex-end; } .space-shot .cap { position: relative; z-index: 2; padding: 14px; color: var(--pine-deep); font-size: 13px; background: linear-gradient(to top, rgba(247,245,239,0.92), transparent); width: 100%; } .space-shot svg { position: absolute; inset: 0; width: 100%; height: 100%; } @media (min-width: 700px) { .space-grid { grid-template-columns: repeat(3, 1fr); gap: 18px; } .space-shot .cap { padding: 16px; font-size: 13.5px; } } .review-row { display: flex; flex-direction: column; gap: 10px; } .review-row a { border: 1px solid var(--line); border-radius: 14px; padding: 14px 20px; font-size: 14px; background: #fff; text-align: center; } .review-row a:hover { background: var(--sage-pale); } @media (min-width: 480px) { .review-row { flex-direction: row; flex-wrap: wrap; } .review-row a { border-radius: 999px; padding: 13px 22px; font-size: 14.5px; } } .cta-band { background: var(--honey); border-radius: 20px; padding: 32px 26px; display: flex; flex-direction: column; align-items: flex-start; gap: 18px; } .cta-band h2 { color: var(--pine-deep); font-size: 21px; max-width: 20ch; } .cta-band .btn { width: 100%; } @media (min-width: 620px) { .cta-band { flex-direction: row; align-items: center; justify-content: space-between; padding: 52px 48px; border-radius: 24px; gap: 24px; flex-wrap: wrap; } .cta-band h2 { font-size: 26px; } .cta-band .btn { width: auto; } } .blog-group + .blog-group { margin-top:40px; } .blog-heading { display:flex; justify-content:space-between; align-items:baseline; gap:16px; flex-wrap:wrap; margin-bottom:16px; } .blog-heading h3 { margin:0; font-size:1.3rem; } .blog-heading a,.blog-note,.blog-source { font-size:0.9rem; color:var(--ink-soft); } .blog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; } .blog-card { background:var(--paper); border:1px solid var(--line); border-radius:16px; padding:24px; min-width:0; } .blog-card time { font-size:0.9rem; color:var(--ink-soft); } .blog-card h3 { font-size:1.08rem; line-height:1.65; margin:12px 0 20px; overflow-wrap:anywhere; } .blog-card a:hover { text-decoration:underline; } .blog-card a:focus-visible { outline:2px solid var(--pine); outline-offset:4px; } .blog-note { margin-top:24px; } @media(max-width:767px) { .blog-grid { grid-template-columns:1fr; } } :root{--paper:#fffdfb;--paper-dim:#f6f2ed;--ink:#172b44;--ink-soft:#526070;--pine:#19374c;--pine-deep:#102640;--sage:#537966;--sage-pale:#eef4f0;--honey:#b77b69;--honey-deep:#915c4d;--line:#dce1df;--max:1240px;--mint:#edf4f0;--coral:#fbefeb;--blue:#edf4fb} body{font-size:1rem;line-height:1.85;overflow-x:clip}h1,h2,h3,.serif{font-weight:400;word-break:keep-all}h4{font-weight:500}p{word-break:keep-all}figure{margin:0}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #265a80;outline-offset:5px}section[id],main[id]{scroll-margin-top:108px}.wrap{padding-inline:28px}.mobile-only{display:none} .skip-link{position:fixed;top:-100px;left:16px;z-index:100;background:#142c43;color:white;padding:12px 20px}.skip-link:focus{top:10px} .site-header{background:rgba(255,253,251,.96);border-color:#e5e7e5;backdrop-filter:blur(12px)}.site-header .wrap{height:92px;max-width:1440px}.brand{display:flex;align-items:center;gap:13px;flex-shrink:0;font-family:'Pretendard',sans-serif;font-size:23px;font-weight:500;letter-spacing:-.035em}.brand img{width:45px;height:48px;object-fit:contain}.brand .brand-words{display:block;font:inherit;color:var(--ink);letter-spacing:inherit}.brand small{display:block;font-size:12px;line-height:1.8;letter-spacing:.07em;color:#617080}.main-nav{gap:4px}.main-nav a{font-size:15px;font-weight:400;padding:10px 13px;border-radius:0}.main-nav a.active{background:none;color:var(--ink);box-shadow:0 1px 0 var(--ink)}.main-nav a:hover{background:transparent;color:#688779}.main-nav a[href="reservation.html"]{border:1px solid #b5c3be;padding:9px 20px;margin-left:10px}.nav-toggle{border:0;border-radius:0}.main-nav.open{top:92px;background:#fffdfb}.main-nav.open a{margin:0} .btn{border-radius:2px;font-size:1rem;font-weight:400;padding:14px 27px;min-height:52px;transition:background .2s,color .2s}.btn-primary{background:#1c3c4d}.btn-primary:hover{background:#345968}.btn-ghost{border-color:#a7b8b2;background:transparent}.text-link{display:inline-flex;align-items:center;min-height:44px;padding:5px 0;border-bottom:1px solid #9caaa9;font-size:.94rem;color:var(--ink)}.text-link:hover{color:#547463}.hero-actions{align-items:center;gap:27px}.hero-actions .btn{flex:0 0 auto} .brand-hero{padding:0;background:#f8f5ef;border-bottom:1px solid var(--line)}.hero-layout{display:grid;grid-template-columns:1.12fr .88fr;align-items:center;gap:65px;min-height:700px}.hero-copy{padding:60px 0 40px}.brand-eyebrow{font-size:1rem;letter-spacing:.1em;color:#52616b;margin-bottom:24px}.theme-strokes{display:flex;gap:10px;margin-bottom:28px}.theme-strokes i{width:43px;height:3px;background:#8dbfaf}.theme-strokes i:nth-child(2){background:#dfa997}.theme-strokes i:nth-child(3){background:#91bed9}.hero-copy h1{font-size:clamp(2.7rem,4.8vw,4.8rem);font-weight:400;line-height:1.33;letter-spacing:-.075em;white-space:nowrap;margin-bottom:27px}.hero-description{font-size:1.08rem;line-height:1.95;color:#52606b;margin-bottom:27px}.hero-signature{margin:38px 0 0;font-size:1rem;letter-spacing:.03em;color:var(--ink)}.hero-signature span{display:block;font-size:.75rem;letter-spacing:.12em;color:#7b848c;margin-top:3px}.hero-portrait{align-self:stretch;position:relative;min-height:700px;overflow:hidden}.hero-portrait svg{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.hero-portrait figcaption{position:absolute;inset:auto 0 0;padding:34px 22px 22px;background:linear-gradient(transparent,rgba(255,253,251,.94));font-size:.94rem;color:#344454}.hero-portrait figcaption span{display:block;font-size:.75rem;margin-top:6px;color:#68737a} .care-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding-block:32px}.care-index a{display:flex;align-items:center;gap:20px;padding:10px 27px;border-right:1px solid var(--line)}.care-index a:first-child{padding-left:0}.care-index a:last-child{border:0}.care-index a>span:last-child{margin-left:auto;color:#748579}.care-index b{display:block;font-family:Georgia,serif;letter-spacing:.12em;font-size:1rem;font-weight:400}.care-index small{display:block;font-size:.88rem;margin-top:4px;color:#657075}.care-number{font-family:Georgia,serif;color:#78958a;font-size:.88rem}.care-index a:nth-child(2) .care-number{color:#ab7565}.care-index a:nth-child(3) .care-number{color:#608ba5}.care-index a:hover b{color:#567a6b} .kicker{font-family:Georgia,'Pretendard',serif;font-size:.82rem;font-weight:400;letter-spacing:.2em;color:#586f79;margin:0 0 22px}.care-intro{text-align:center;padding-block:88px 72px}.care-intro h2{font-size:clamp(1.9rem,3.1vw,2.9rem);letter-spacing:-.05em;line-height:1.55;margin-bottom:23px}.care-intro>p:last-child{font-size:1rem;line-height:1.9;margin:0} .care-feature{padding:78px 0}.theme-comfort{--theme-accent:#476d5b;--theme-pale:var(--mint)}.theme-smile{--theme-accent:#965f54;--theme-pale:var(--coral)}.theme-growth{--theme-accent:#456e8a;--theme-pale:var(--blue)}.care-feature{background:var(--theme-pale)}.feature-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:76px;align-items:center}.feature-photo{position:relative;overflow:hidden;background:#f2f3ef;aspect-ratio:1.23;border-radius:0 60px 0 0}.feature-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:65% center}.feature-photo figcaption{position:absolute;bottom:8px;right:12px;padding:2px 8px;background:rgba(255,255,255,.85);color:#626c71;font-size:.75rem}.feature-copy{padding:15px 0}.feature-copy .kicker{display:flex;align-items:center;gap:17px;color:var(--theme-accent);font-size:.82rem}.feature-copy .kicker span{letter-spacing:0;font-size:.8rem;border-right:1px solid #9eaead;padding-right:17px}.feature-copy h2{font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.5;letter-spacing:-.07em;color:var(--theme-accent);margin-bottom:25px}.feature-copy>p{font-size:1rem;line-height:1.85}.feature-copy .feature-lead{color:#283e4b;font-size:1.08rem;margin-bottom:18px}.feature-copy .service-summary{font-size:.9rem;border-top:1px solid #cbd6d2;margin:25px 0 0;padding-top:20px;color:#566571}.treatment-links{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:17px}.treatment-links a{min-height:44px;display:flex;align-items:center;gap:18px;font-size:.9rem;border-bottom:1px solid #a5b2ae;color:var(--theme-accent)}.treatment-links a:hover{border-color:currentColor}.theme-smile .feature-photo{grid-column:2;grid-row:1;border-radius:60px 0 0 0}.theme-smile .feature-copy{grid-column:1;grid-row:1}.theme-smile .feature-layout{grid-template-columns:1fr 1.1fr} .clinic-story{padding:100px 0;background:#fffdfb}.story-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px}.story-layout h2{font-size:clamp(2rem,3.2vw,3rem);line-height:1.5;letter-spacing:-.06em}.doctor-note{border-left:1px solid var(--line);padding-left:65px;font-size:1rem}.doctor-signature{margin:30px 0 15px;display:flex;gap:18px;align-items:center;flex-wrap:wrap}.doctor-signature span{font-size:.85rem;color:#66737b}.doctor-signature strong{font-family:'Gowun Batang',serif;font-size:1.65rem;font-weight:400;letter-spacing:.16em} .journal-section{padding:80px 0;background:#f8f7f4}.journal-section .section-head{max-width:none;text-align:left}.journal-section .section-head h2{font-size:2.4rem;letter-spacing:-.055em}.journal-section .section-head p{font-size:1rem;margin-top:20px}.blog-card{border:0;border-top:1px solid #ced5d1;border-radius:0;background:transparent;padding:25px 12px 25px 0}.blog-card h3{font-family:'Pretendard',sans-serif;font-weight:400;font-size:1.08rem;line-height:1.7}.blog-grid{gap:35px}.blog-heading h3{font-size:1.4rem}.blog-group+.blog-group{margin-top:50px}.blog-card time,.blog-source{font-size:.88rem}.blog-card .btn{margin-top:12px}.blog-note{font-size:.88rem} .visit-band{background:#f1f5f2;padding:80px 0}.visit-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px}.visit-layout h2{font-size:2.7rem;line-height:1.4;letter-spacing:-.06em;margin-bottom:25px}.phone-number{font-family:Georgia,serif;font-size:2.6rem;line-height:1.2;letter-spacing:.03em}.visit-details dl{margin:28px 0}.visit-details dl div{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #d4ddd7;font-size:1rem}.visit-details dd{margin:0}.visit-details .btn{width:100%}.review-section{padding:35px 0}.review-section .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px}.review-section p{margin:0;font-size:.94rem}.review-row a{border-radius:2px;background:transparent} footer{background:#fffdfb;padding:42px 0}.f-brand{font-weight:400!important;font-size:1.1rem!important}.f-meta{font-size:.88rem!important}.f-nav a{min-height:32px}.brand-inner main>section:first-child{padding-top:70px}.brand-inner h1{font-size:clamp(2rem,5vw,3.4rem);letter-spacing:-.05em}.brand-inner .section-head h2{font-size:clamp(1.7rem,3.1vw,2.5rem)}.brand-inner .section-pale{background:var(--theme-pale,var(--mint))}.brand-inner .section-alt{background:#284654}.service-card,.persona-card,.reason-item,.form-box,.reserve-card,.quick-contact a,.quick-contact div{border-radius:3px}.service-card{padding:30px;border-color:#d6dfdb}.service-card h3{font-size:1.25rem;font-weight:400}.service-card p,.faq-item p,.reserve-card p,.persona-card p,.reason-item p{font-size:1rem}.section-head .kicker{font-size:.88rem;color:var(--theme-accent,#5f776a);font-weight:400}.cta-band{background:#e7efea;border-radius:3px}.cta-band h2{font-weight:400}.profile-figure{border-radius:0 40px 0 0;background:#f8f5ef;aspect-ratio:565/810!important}.profile-figure svg{width:100%;height:100%;display:block}.photo-note{position:absolute;bottom:10px;right:12px;font-size:.75rem;background:#fffdfbdd;padding:2px 8px}.profile h2{font-weight:400}.cred-group h4,.cred-group li,.cred-list li,.info-table td,.info-table th{font-size:1rem}.theme-shortcuts{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.theme-shortcuts a{display:block;padding:12px 16px;background:var(--mint);font-size:.9rem;border-bottom:2px solid #91b4a4}.theme-shortcuts a:nth-child(2){background:var(--coral);border-color:#dca897}.theme-shortcuts a:nth-child(3){background:var(--blue);border-color:#9fc3d9}.treatment-intro h1{margin-bottom:20px} @media(min-width:880px){.main-nav.open{position:static;flex-direction:row;padding:0;background:transparent;border:0}.main-nav.open a{padding:10px 13px;font-size:15px}.main-nav.open a[href="reservation.html"]{border:1px solid #b5c3be!important;padding:9px 20px;margin-left:10px}} @media(max-width:1100px){.brand{font-size:20px;gap:10px}.brand img{width:38px;height:42px}.brand small{font-size:12px}.main-nav a{padding:10px 8px}.main-nav{gap:0}.hero-layout{gap:35px}.hero-copy h1{font-size:clamp(2.5rem,5vw,4rem)}.hero-layout,.hero-portrait{min-height:630px}.feature-layout,.theme-smile .feature-layout{gap:40px}.feature-copy h2{font-size:2.2rem}.story-layout,.visit-layout{gap:60px}.doctor-note{padding-left:40px}} @media(max-width:879px){.site-header .wrap{height:76px}.main-nav.open{top:76px;padding:14px 28px 22px}.brand{font-size:21px}.brand small{font-size:12px}.main-nav.open a[href="reservation.html"]{border:0;border-bottom:1px solid var(--line);padding:14px 4px}.hero-layout{gap:25px;grid-template-columns:1fr .8fr;min-height:590px}.hero-portrait{min-height:590px}.hero-copy{padding-block:45px}.hero-copy h1{font-size:3rem}.brand-eyebrow{font-size:.88rem;letter-spacing:.05em}.hero-description{font-size:1rem}.hero-actions{gap:16px}.hero-actions .btn{font-size:.9rem;padding:12px 20px}.hero-actions .text-link{font-size:.88rem}.hero-signature{margin-top:25px}.care-index{padding-block:22px}.care-index a{gap:12px;padding:10px 18px}.care-index b{font-size:.85rem;letter-spacing:.08em}.care-index small{font-size:.82rem}.care-number{display:none}.feature-layout,.theme-smile .feature-layout{grid-template-columns:1fr 1fr;gap:32px}.feature-copy h2{font-size:1.9rem}.feature-copy>p br{display:none}.feature-photo{aspect-ratio:.85;border-radius:0 36px 0 0}.feature-copy .kicker{font-size:.8rem;gap:10px}.feature-copy .kicker span{padding-right:10px}.feature-copy .feature-lead{font-size:1rem}.story-layout,.visit-layout{gap:35px}.doctor-note{padding-left:28px}.doctor-signature{gap:7px}.visit-layout h2{font-size:2.3rem}.phone-number{font-size:2.2rem}.review-section .wrap{flex-direction:column;align-items:flex-start}} @media(max-width:620px){.wrap{padding-inline:22px}.mobile-only{display:block}.site-header .wrap{height:72px}.main-nav.open{top:72px}.brand{font-size:20px;gap:10px}.brand img{width:35px;height:39px}.brand small{font-size:12px;letter-spacing:.035em}.hero-layout{display:flex;flex-direction:column;gap:0;min-height:0;align-items:stretch}.hero-copy{padding:47px 0 28px}.brand-eyebrow{font-size:.9rem;letter-spacing:.06em;margin-bottom:20px}.theme-strokes{margin-bottom:25px}.hero-copy h1{font-size:clamp(2.65rem,10.6vw,4rem);letter-spacing:-.07em;line-height:1.34;margin-bottom:25px}.hero-description{font-size:1rem;margin-bottom:24px}.hero-actions{gap:23px}.hero-actions .btn{font-size:.94rem;padding:12px 22px}.hero-signature{display:none}.hero-portrait{align-self:stretch;min-height:0;aspect-ratio:.92;margin:10px -22px 0}.hero-portrait svg{width:100%;height:100%;object-position:center}.hero-portrait figcaption{font-size:.88rem;padding:25px 22px 15px}.hero-portrait figcaption span{display:inline;margin-left:14px}.care-index{display:flex;flex-direction:column;padding-block:10px}.care-index a,.care-index a:first-child{padding:17px 0;border-right:0;border-bottom:1px solid var(--line);gap:18px}.care-index a>span:nth-child(2){display:flex;align-items:center;justify-content:space-between;gap:14px;flex:1}.care-index b{font-size:.88rem;letter-spacing:.07em}.care-index small{font-size:.84rem;margin:0}.care-index a>span:last-child{margin-left:0}.care-intro{padding-block:64px 48px}.care-intro h2{font-size:1.9rem;line-height:1.55}.care-intro .kicker{margin-bottom:18px}.care-intro>p:last-child{font-size:.94rem}.care-feature{padding:45px 0}.feature-layout,.theme-smile .feature-layout{display:flex;flex-direction:column;gap:25px;align-items:stretch}.feature-copy{order:-1;padding:0}.feature-copy .kicker{font-size:.8rem;letter-spacing:.16em;margin-bottom:18px}.feature-copy h2{font-size:2.05rem;line-height:1.48;margin-bottom:21px}.feature-copy>p br{display:initial}.feature-copy .feature-lead{font-size:1.05rem}.feature-copy>p{font-size:1rem}.feature-copy .service-summary{font-size:.88rem;line-height:1.9;margin-top:24px}.treatment-links{gap:8px 22px}.feature-photo,.theme-smile .feature-photo{aspect-ratio:1.23;border-radius:0 36px 0 0}.feature-photo img{object-position:62% center}.clinic-story{padding:60px 0}.story-layout{display:block}.story-layout h2{font-size:2.05rem;margin-bottom:30px}.doctor-note{border-left:0;border-top:1px solid var(--line);padding:27px 0 0}.doctor-signature{margin-top:25px;gap:12px}.doctor-signature span{font-size:.8rem}.journal-section{padding:55px 0}.journal-section .section-head h2{font-size:2rem}.journal-section .section-head p{font-size:.94rem}.blog-grid{gap:0}.blog-card{padding-block:22px}.blog-heading h3{font-size:1.2rem}.blog-heading a{font-size:.88rem}.blog-group+.blog-group{margin-top:25px}.visit-band{padding:55px 0}.visit-layout{display:block}.visit-layout h2{font-size:2.2rem}.visit-details{margin-top:35px}.phone-number{font-size:2.35rem}.visit-details dl{margin:22px 0}.review-section{padding:30px 0}.review-section p{font-size:.88rem}.review-section .review-row{flex-direction:row}.review-row a{padding:10px 18px;font-size:.88rem}footer .f-meta{font-size:.8rem!important}footer .f-nav{font-size:.88rem}.brand-inner main>section:first-child{padding-top:40px}.brand-inner .profile{padding-top:0!important}.service-card{padding:24px}.theme-shortcuts{flex-direction:column}.theme-shortcuts a{font-size:.88rem}.treatment-intro h1{font-size:2.55rem}.section-head h2{font-size:1.9rem}.info-table th{width:92px}.info-table td,.info-table th{font-size:.94rem}} @media(max-width:350px){.brand{font-size:18px}.brand small{font-size:12px}.brand img{width:29px}.hero-actions{gap:14px}.hero-actions .btn{padding:12px 17px}.hero-copy h1{font-size:2.45rem}.feature-copy h2{font-size:1.85rem}.care-index small{font-size:.8rem}.care-index b{font-size:.78rem}} @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}} @media (min-width:621px) and (max-width:1023px){ .site-header .wrap{height:76px}.main-nav{display:none}.nav-toggle{display:flex} .main-nav.open{display:flex;position:absolute;top:76px;left:0;right:0;flex-direction:column;padding:14px 28px 22px;background:#fffdfb;border-bottom:1px solid var(--line)} .main-nav.open a{font-size:1rem;padding:14px 4px;border-bottom:1px solid var(--line)!important} .main-nav.open a[href="reservation.html"]{margin-left:0;border:0!important;border-bottom:1px solid var(--line)!important;padding:14px 4px} } @media (max-width:620px){.brand small{display:none}.brand{letter-spacing:-.05em}.hero-portrait svg{overflow:hidden}} .clinical-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:28px 0} .clinical-photo,.black-compare figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden} .clinical-photo img,.clinical-photo svg{display:block;width:100%;height:auto} .clinical-photo figcaption,.black-compare figcaption{padding:14px 18px;color:var(--ink);font-size:.9rem;line-height:1.6} .clinical-note{font-size:.85rem;color:var(--ink-soft);line-height:1.85;margin-top:22px;max-width:950px} .black-compare .photo{position:relative;aspect-ratio:2.4;overflow:hidden} .black-compare .photo img{display:block;width:100%;height:auto} .black-compare .pointer{position:absolute;inset:0;width:100%;height:auto;aspect-ratio:2048/1364;pointer-events:none} .icon-band{padding:28px;margin-top:26px;background:var(--coral);border-left:3px solid #dca897} .fees-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px} .fees-grid section{padding:24px;background:#fff;border:1px solid var(--line);border-radius:8px} .fees-grid section h2{font-size:1.25rem;margin-bottom:18px} .fees-grid .row{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #edf0ee;font-size:.95rem} .fees-grid .price{white-space:nowrap;font-weight:600;color:#215565} footer .fee-footer{display:block!important;margin-top:20px} .fee-footer a{font-size:12px;color:#66717d;display:inline-block;text-decoration:underline;text-underline-offset:3px;padding:6px 0} .journal-section .blog-grid,.blog-grid[data-blog]{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px;align-items:stretch} .blog-grid[data-blog] .blog-card{display:grid;grid-template-columns:42% minmax(0,1fr);border:1px solid var(--line);border-radius:12px;padding:0;background:#fff;overflow:hidden;min-width:0;box-shadow:none} .blog-grid[data-blog] .blog-card{grid-column:span 3} .blog-grid[data-blog] .blog-card:first-child{grid-row:span 2;display:flex;flex-direction:column} .blog-grid[data-blog] .blog-card:first-child .blog-image-link{aspect-ratio:16/10;flex:none} .blog-image-link{display:block;overflow:hidden;background:#f1f4f2;min-height:145px} .blog-image-link img{width:100%;height:100%;display:block;object-fit:contain;transition:transform .2s ease} .blog-image-link:hover img{transform:scale(1.025)} .blog-card-body{padding:22px;min-width:0} .blog-grid[data-blog] h3{font-family:'Pretendard',sans-serif;font-size:1.1rem;font-weight:500;line-height:1.55;margin:10px 0;overflow-wrap:anywhere} .blog-grid[data-blog] .blog-card:first-child h3{font-size:1.4rem} .blog-card-body p{font-size:.87rem;line-height:1.75;color:var(--ink-soft);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden} .blog-grid[data-blog] .blog-source{display:inline-block;color:#285969;margin-top:14px;font-size:.8rem} .blog-grid[data-blog] .blog-card:nth-child(n+4){grid-column:span 2;display:flex;flex-direction:column} .blog-grid[data-blog] .blog-card:nth-child(n+4) .blog-image-link{aspect-ratio:16/9} .blog-grid[data-blog] .blog-card:has(.blog-text-only){display:flex;flex-direction:column;justify-content:center} .blog-text-only{border-top:3px solid #b8d7c9} @media(max-width:760px){.clinical-grid,.fees-grid{grid-template-columns:1fr;gap:16px}.clinical-grid.compare{grid-template-columns:1fr 1fr;gap:8px}.compare figcaption{padding:10px;font-size:.75rem}.blog-grid[data-blog],.journal-section .blog-grid{grid-template-columns:1fr;gap:16px}.blog-grid[data-blog] .blog-card:first-child{grid-row:auto}.blog-grid[data-blog] .blog-card,.blog-grid[data-blog] .blog-card:nth-child(n+4){grid-column:auto;display:flex;flex-direction:column}.blog-grid[data-blog] .blog-image-link{aspect-ratio:16/10;min-height:0}.blog-card-body{padding:17px}.blog-grid[data-blog] h3{font-size:1rem}.blog-grid[data-blog] .blog-card:first-child h3{font-size:1.2rem}.fees-grid .row{font-size:.88rem}.clinical-note{font-size:.8rem}} .hero-signature span,.care-index small,.brand small{color:#526070} .care-number{color:#486858}.care-index a:nth-child(2) .care-number{color:#915c4d}.care-index a:nth-child(3) .care-number{color:#456e8a} .main-nav a:hover{color:#456b57} footer .f-nav a,.fee-footer a,.blog-heading>a,.blog-grid[data-blog] .blog-source{display:inline-flex;align-items:center;min-height:44px} .fee-footer a{padding:10px 4px;color:#526070} .blog-grid[data-blog] h3 a{display:block;min-height:44px} @media(max-width:620px){footer .f-nav{gap:8px 18px}.blog-heading>a{padding:6px 0}}