:root{--forest:#183e35;--ink:#213c33;--paper:#f9f9f4;--cream:#e9eddd;--muted:#626e65;--line:#d9dfd5;--serif:'Noto Serif KR',serif;--sans:'DM Sans','Noto Sans KR',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.8;word-break:keep-all}a{color:inherit;text-decoration:none}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #a87428;outline-offset:6px}img{display:block;width:100%;height:100%;object-fit:cover}figure,h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-weight:500}h1,h2{font-family:var(--serif);letter-spacing:-.05em;line-height:1.65}h2{font-size:clamp(28px,3.1vw,44px)}em{font-style:normal;color:#bcc8a9}p{color:var(--muted)}[hidden]{display:none!important}.skip-link{position:fixed;top:-100px;left:20px;background:white;z-index:100;padding:12px}.skip-link:focus{top:10px}.header{height:105px;padding:0 4.6%;display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.brand{display:flex;flex-direction:column;width:max-content;line-height:1}.brand-name{font-family:Georgia,serif;font-size:49px;letter-spacing:-3px}.brand-sub{font-size:9px;letter-spacing:2.25px;margin:10px 0 0 3px}.desktop-nav{display:flex;gap:30px;font-size:14px}.desktop-nav a:hover,.footer a:hover{text-decoration:underline;text-underline-offset:5px}.header-book{border-bottom:1px solid var(--ink);padding:9px 0;font-size:14px;white-space:nowrap}.header-book span{margin-left:18px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:47% 53%;min-height:630px}.hero-copy{background:var(--forest);color:white;padding:64px 9.7% 32px;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:12px;letter-spacing:1.8px;font-weight:500}.light{color:#c2cebb}.hero h1{font-size:clamp(32px,3.65vw,54px);line-height:1.62;margin:31px 0 21px;white-space:nowrap;font-weight:400}.hero p{color:#d2dbd3;font-size:15px;line-height:2.1}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:16px 24px;font-size:14px;font-weight:500;min-height:55px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.cream{background:var(--cream);color:var(--forest)}.cream:hover{background:#f5f7ee}.green{background:var(--forest);color:white}.green:hover{background:#285448}.hero .button{margin-top:32px}.hero-bottom{margin-top:auto;padding-top:48px;width:100%;display:flex;align-items:flex-end;justify-content:space-between;font-size:12px;line-height:1.8;color:#c2cebb}.hero-bottom strong{font-weight:500;font-size:15px;color:#f0f4e8}.hero-index{font-size:10px;letter-spacing:1.2px}.hero-image{position:relative;overflow:hidden}.hero-image img{position:absolute;inset:0;object-position:61% center}.hero-image:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#0005)}.hero-image figcaption{position:absolute;bottom:31px;right:34px;z-index:1;color:white;font-size:10px;letter-spacing:1.6px}.quick-links{display:grid;grid-template-columns:1.5fr repeat(3,1fr);padding:25px 4.6%;border-bottom:1px solid var(--line);gap:35px;align-items:center}.quick-links>span{font-size:10px;letter-spacing:1.7px;color:var(--muted)}.quick-links a{font-size:14px;display:flex;justify-content:space-between;padding-left:30px;border-left:1px solid var(--line)}.section{padding:105px 7.5%;max-width:1600px;margin:auto}.section-label{display:flex;justify-content:space-between;font-size:12px;letter-spacing:1px;padding-bottom:30px;border-bottom:1px solid var(--line)}.about-main{display:grid;grid-template-columns:1fr 1fr;gap:10%;margin:48px 0}.about h2 em{color:#667956}.about-description{padding-top:7px}.about-description p+p{margin-top:18px}.text-link{display:inline-flex;gap:30px;align-items:center;border-bottom:1px solid var(--ink);padding:8px 0;font-size:14px}.about .text-link{margin-top:22px}.space-strip{display:flex;gap:35px;font-size:13px;color:var(--muted)}.space-strip span+span{border-left:1px solid var(--line);padding-left:35px}.practice{background:#eef0e9;max-width:none}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:42px}.section-heading h2{margin-top:12px}.section-heading>p{font-size:14px;line-height:1.9}.practice-layout{display:grid;grid-template-columns:1fr 1fr;gap:7%}.practice-photo{height:430px;position:relative}.practice-photo img{object-position:center}.practice-photo figcaption{position:absolute;bottom:20px;left:24px;color:white;font-size:13px;text-shadow:0 1px 8px black}.program-list details{border-top:1px solid #aebcad}.program-list details:last-child{border-bottom:1px solid #aebcad}.program-list summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:25px;padding:24px 0;font-family:var(--serif);font-size:25px;line-height:1.4}.program-list summary::-webkit-details-marker{display:none}.number{font-family:var(--sans);font-size:12px;color:var(--muted);align-self:flex-start;padding-top:7px}.program-list small{display:block;font-family:var(--sans);font-size:10px;letter-spacing:1.4px;margin-top:10px;color:var(--muted)}.plus{margin-left:auto;font-family:var(--sans);font-weight:400;font-size:24px;transition:transform .2s}.program-list details[open] .plus{transform:rotate(45deg)}.detail-content{padding:0 35px 27px 40px;font-size:14px;line-height:1.9}.detail-content a{display:inline-block;margin-top:17px;border-bottom:1px solid #99a28f}.schedule{display:grid;grid-template-columns:1fr 1.15fr;gap:12%}.schedule-intro h2{margin:20px 0}.schedule-intro p{font-size:15px}.schedule-intro .button{margin-top:30px;gap:18px}.naver-n{font-size:20px}.schedule-intro small{display:block;color:var(--muted);font-size:12px;line-height:1.8;margin-top:12px}.visit-guide{border-top:1px solid var(--ink);padding-top:25px}.schedule-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.schedule-head h3{font-family:var(--serif);font-size:26px;margin:7px 0 15px}.round-link{width:46px;height:46px;border:1px solid #8c9c8d;border-radius:50%;display:grid;place-items:center}.visit-guide>p{font-size:14px}.schedule-actions{display:flex;gap:22px;font-size:13px;margin-top:19px;text-decoration:underline;text-underline-offset:5px}.steps{list-style:none;margin:25px 0 0;padding:0}.steps li{display:flex;gap:23px;border-top:1px solid var(--line);padding:19px 0}.steps li>span{font-size:12px;padding-top:3px}.steps h4{font-size:15px}.steps p{font-size:13px;margin-top:3px}.business{display:grid;grid-template-columns:1fr 1fr;background:var(--forest);color:white}.business-copy{padding:75px 12% 75px 15%}.business h2{margin-top:25px;font-size:clamp(27px,3vw,42px)}.business-subtitle{color:#cfdbbd!important;font-size:15px;margin:25px 0 18px}.business-copy>p{font-size:14px;color:#d2dbd3;line-height:2}.business-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:25px}.business-tags span{font-size:12px;padding:5px 11px;border:1px solid #658072;color:#d6dfd0}.business-actions{display:flex;flex-direction:column;align-items:flex-start;gap:18px;margin-top:35px}.business-actions .button{font-size:13px;gap:10px}.light-link{font-size:13px;text-decoration:underline;text-underline-offset:5px;color:#d0d9c9}.business figure{position:relative;min-height:590px}.business img{position:absolute;inset:0;object-position:57% center}.business figcaption{position:absolute;bottom:30px;left:30px;color:white;font-size:11px;letter-spacing:1.6px;text-shadow:0 1px 8px black}.ttc{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.ttc-monogram{font-family:Georgia,serif;font-size:clamp(48px,6.8vw,98px);line-height:1.14;letter-spacing:-4px;padding:30px 0 30px 6%;border-left:1px solid var(--line)}.ttc-monogram em{font-style:italic;color:#829171}.ttc-copy h2{margin:18px 0}.ttc-title{font-size:17px;color:var(--ink);margin-bottom:14px}.ttc-copy>p{font-size:14px}.ttc-notice{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;margin-top:28px;font-size:14px}.ttc-notice strong{font-weight:500}.fine-print{font-size:12px!important;margin:12px 0 17px}.journal{border-top:1px solid var(--line)}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.journal-item{padding:29px 0 20px;border-top:1px solid var(--ink);display:flex;flex-direction:column}.journal-category{font-size:11px;letter-spacing:1.5px;color:#647750}.journal h3{font-family:var(--serif);font-size:25px;line-height:1.7;margin:25px 0 15px;letter-spacing:-.04em}.journal-item p{font-size:13px}.journal-link{display:flex;justify-content:space-between;font-size:13px;margin-top:40px}.journal-item:hover .journal-link{text-decoration:underline;text-underline-offset:5px}.journal-note{font-size:12px;margin-top:30px}.closing{text-align:center;background:#dfe5d3;padding:72px 25px}.closing h2{margin:17px 0 28px;font-size:36px}.closing .button{background:var(--forest);color:white}.footer{padding:64px 7.5% 22px;background:#102c25;color:#e1e7da}.footer-top{display:grid;grid-template-columns:1.5fr 1fr .6fr;gap:50px}.footer p{font-size:13px;color:#b5c4b5;margin-top:25px}.footer .eyebrow{color:#9eaf9e;font-size:10px}.footer address{font-style:normal;font-size:14px;line-height:1.9;margin:17px 0 10px}.footer a{font-size:14px}.footer-brand .brand-name{font-size:54px}.footer-brand .brand-sub{font-size:9px}.footer-links{display:flex;flex-direction:column;gap:9px}.footer-links .eyebrow{margin-bottom:8px}.footer-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid #3c5447;margin-top:50px;padding-top:22px;color:#9eaf9e;font-size:10px;letter-spacing:1px}.footer-bottom a{font-size:10px}.mobile-book{display:none}@media(min-width:1600px){.hero-copy{padding-left:16%}.hero{min-height:700px}}@media(max-width:1100px){.desktop-nav{display:none}.header{height:88px}.header-book{margin-left:auto}.menu-toggle{border:0;background:transparent;display:flex;width:44px;height:44px;flex-direction:column;justify-content:center;gap:7px;padding:10px;cursor:pointer}.menu-toggle span{display:block;width:24px;height:1px;background:var(--ink)}.mobile-menu{position:fixed;top:88px;left:0;right:0;padding:20px 5% 30px;background:var(--paper);z-index:19;border-bottom:1px solid var(--line);box-shadow:0 12px 20px #183e3510}.mobile-menu a{display:block;padding:12px 0;border-bottom:1px solid var(--line)}.hero{min-height:580px;grid-template-columns:49% 51%}.hero-copy{padding:47px 9% 30px}.hero h1{font-size:36px}.hero p{font-size:13px}.hero-index{display:none}.section{padding:75px 6%}.section-heading>p br{display:none}.practice-photo{height:400px}.business-copy{padding:55px 10% 55px 12%}.business figure{min-height:580px}.ttc{gap:8%}.journal h3{font-size:22px}}@media(max-width:760px){html{scroll-padding-top:90px}.header{height:78px;padding:0 6%;gap:18px}.brand-name{font-size:38px}.brand-sub{font-size:7px;letter-spacing:1.8px;margin-top:7px}.header-book{font-size:12px}.header-book span{margin-left:10px}.mobile-menu{top:78px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:43px 7% 30px;min-height:463px}.hero .eyebrow{font-size:10px}.hero h1{font-size:clamp(30px,7.8vw,46px);margin:23px 0 17px}.hero p{font-size:14px;line-height:1.9}.hero .button{margin-top:25px}.button{min-height:53px;font-size:13px;padding:14px 20px}.hero-bottom{padding-top:30px;align-items:center}.hero-index{display:block;font-size:8px}.hero-bottom>span:first-child{font-size:10px}.hero-bottom strong{font-size:12px}.hero-image{height:330px}.hero-image img{object-position:50% 58%}.hero-image figcaption{font-size:8px;bottom:21px;right:24px}.quick-links{grid-template-columns:repeat(3,1fr);padding:22px 5%;gap:15px}.quick-links>span{display:none}.quick-links a{font-size:11px;padding-left:12px;gap:10px}.quick-links a:first-of-type{border:0;padding:0}.section{padding:62px 7%}.section-label{font-size:10px;padding-bottom:20px}.about-main{grid-template-columns:1fr;gap:24px;margin:30px 0}.about-description p{font-size:14px}.about h2{font-size:31px}.space-strip{flex-wrap:wrap;gap:10px;font-size:11px}.space-strip span+span{padding-left:10px}.section-heading{display:block;margin-bottom:27px}.section-heading>p{margin-top:19px;font-size:13px}.eyebrow{font-size:10px}.practice-layout{grid-template-columns:1fr;gap:30px}.practice-photo{height:290px}.program-list summary{font-size:23px;padding:23px 0}.detail-content{font-size:14px;padding-right:8px}.program-list small{font-size:10px}.schedule{grid-template-columns:1fr;gap:40px}.schedule-intro h2 br{display:none}.schedule-intro p{font-size:14px}.schedule-head h3{font-size:24px}.schedule-actions{flex-wrap:wrap;gap:10px 20px;font-size:12px}.steps p{font-size:13px}.business{grid-template-columns:1fr}.business-copy{padding:55px 7%}.business h2{font-size:31px}.business figure{min-height:0;height:340px}.business img{object-position:center 44%}.ttc{grid-template-columns:1fr;gap:35px}.ttc-monogram{font-size:55px;letter-spacing:-2px;padding:0 0 0 20px;line-height:1.15}.ttc-copy h2{font-size:31px}.ttc-monogram br:last-of-type{display:none}.ttc-monogram em{margin-right:10px}.journal-grid{grid-template-columns:1fr;gap:12px}.journal .section-heading .text-link{margin-top:16px}.journal h3{font-size:25px;margin:16px 0 12px}.journal-item{padding-top:24px}.journal-link{margin-top:23px}.journal-note{margin-top:20px}.closing{padding:55px 7%}.closing h2{font-size:27px}.footer{padding:50px 7% 100px}.footer-top{grid-template-columns:1fr 1fr;gap:38px 25px}.footer-top>div:first-child{grid-column:1/-1}.footer address,.footer a{font-size:12px}.footer-bottom{flex-wrap:wrap;gap:13px;margin-top:30px}.footer-bottom a{font-size:9px}.mobile-book{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:18;align-items:center;gap:15px;justify-content:center;background:var(--forest);color:#fff;padding:15px 6% calc(15px + env(safe-area-inset-bottom));font-size:14px;box-shadow:0 -3px 15px #0002}.mobile-book b{font-size:19px;color:#c4dbaf}.mobile-book span{margin-left:auto}.mobile-book b{margin-right:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media(max-width:360px){.header{gap:7px}.header-book{font-size:11px}.hero-index{display:none}.quick-links{gap:8px}.quick-links a{font-size:10px}.footer-top{grid-template-columns:1fr}.hero h1{font-size:29px}}
button{color:inherit;cursor:pointer}.button{border:0}.header-book{border-top:0;border-left:0;border-right:0;background:transparent}.mobile-book{width:100%;border:0}.footer-links button{text-align:left;padding:0;background:transparent;border:0;font-size:14px;color:inherit}.weekly-schedule{margin-top:24px}.day-tabs{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;border:1px solid var(--line)}.day-tabs button{background:transparent;border:0;min-height:43px;font-size:14px}.day-tabs button[aria-selected=true]{background:var(--forest);color:white}.class-row{display:grid;grid-template-columns:105px 1fr 35px;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.class-row time{font-size:12px;color:var(--muted)}.class-row strong{font-weight:500}.class-row>span{font-size:12px;color:var(--muted);text-align:right}.schedule-note{font-size:11px;margin-top:12px;line-height:1.9}.schedule{align-items:start}.schedule-intro{position:sticky;top:130px}@media(max-width:760px){.schedule-intro{position:static}.footer-links button{font-size:12px}.class-row{grid-template-columns:98px 1fr 32px;gap:8px}.class-row strong{font-size:12px}.schedule-note{font-size:12px}}


/* Readable text sizes across screen sizes. */
.hero p,.about-description p,.section-heading>p,.detail-content,.schedule-intro p,.visit-guide>p,.business-copy>p,.ttc-copy>p,.journal-item p,.eyebrow,.hero .eyebrow,.hero-index,.hero-image figcaption,.quick-links>span,.section-label,.space-strip,.program-list small,.business-tags span,.business figcaption,.journal-category,.footer .eyebrow,.footer-bottom,.footer-bottom a,.hero-bottom>span:first-child,.fine-print,.journal-note{font-size:12px}.quick-links a,.schedule-actions,.steps p,.journal-link,.footer address,.footer a,.footer-links button{font-size:14px}.class-row,.class-row time,.class-row strong,.class-row>span{font-size:14px}.class-row{grid-template-columns:115px 1fr 35px}.hero h1{white-space:normal}@media(max-width:760px){.hero-index{font-size:10px}.hero-image figcaption{font-size:10px}.quick-links a{font-size:12px}.class-row{grid-template-columns:106px 1fr 30px;gap:6px}.footer-bottom,.footer-bottom a{font-size:12px}.hero-copy{min-height:480px}}
.schedule-fallback{padding:18px 0;font-size:13px;color:var(--muted)}
