@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600;700&family=Noto+Serif+KR:wght@400;500;600&display=swap');
:root{--ink:#223f33;--green:#294d3c;--paper:#faf9f4;--muted:#697369;--line:#d9dfd3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Noto Sans KR',sans-serif;font-size:15px;line-height:1.85}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;display:block}button{color:inherit}header{height:96px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:12px;font-size:17px;font-weight:600;line-height:1.45}.brand img{width:48px;height:48px;object-fit:contain;mix-blend-mode:multiply}.brand small{display:block;font-size:9px;letter-spacing:1.5px;font-weight:400;margin-top:5px}nav{display:flex;align-items:center;gap:30px;font-size:13px}.nav-cta{border:1px solid var(--green);padding:9px 19px;border-radius:30px}.menu{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:680px}.hero-copy{padding:83px 8% 46px 10%}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2px}.hero h1{font-size:clamp(38px,4.3vw,68px);font-family:'Noto Serif KR',serif;font-weight:500;line-height:1.45;letter-spacing:-3px;margin:23px 0}em{font-style:normal;color:#799063}.hero p{font-size:15px;color:var(--muted);line-height:2}.actions{display:flex;align-items:center;gap:23px;margin-top:35px;flex-wrap:wrap}.button{border:1px solid var(--green);background:var(--green);color:white;padding:14px 24px;border-radius:3px;display:inline-block;font-size:13px}.button:hover{background:#46634a}.text-link{background:none;border:0;border-bottom:1px solid currentColor;padding:5px 0;font-size:12px}.hero-note{font-size:11px;color:var(--muted);margin-top:59px}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#7d9468;margin-right:8px}.hero-photo{position:relative;margin:30px 30px 30px 0;min-height:600px;overflow:hidden;border-radius:140px 0 0 0}.hero-photo>img{width:100%;height:100%;object-fit:cover;position:absolute;object-position:47% center}.hero-photo:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#122c20b5)}.photo-label{position:absolute;bottom:32px;left:35px;color:white;z-index:1;font-size:10px;letter-spacing:2px}.photo-label span{display:block;font-size:19px;letter-spacing:0;margin-top:6px}.round-stamp{position:absolute;right:26px;top:28px;width:108px;height:108px;display:grid;place-content:center;text-align:center;border-radius:50%;background:#e8edda;color:var(--green);font-size:12px;line-height:1.7;transform:rotate(12deg)}.ticker{background:#e7ebdf;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px;text-align:center;font-size:11px;letter-spacing:2px;display:flex;justify-content:space-around;gap:15px}.ticker i{font-style:normal}.section{padding:100px 8%}h2{font-family:'Noto Serif KR',serif;font-weight:500;font-size:38px;line-height:1.55;letter-spacing:-1.7px;margin:18px 0 25px}h3{font-size:18px;letter-spacing:-.4px;margin:0 0 8px}p{color:var(--muted)}.intro{display:grid;grid-template-columns:1fr 1fr;gap:9%}.large{font-size:23px;color:var(--ink);margin-top:8px}.two-path{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px;border-top:1px solid var(--line);padding-top:25px}.two-path span{display:block;font-size:11px;margin-top:7px}.forest{background:#eef0e7}.section-top{display:flex;justify-content:space-between;align-items:center;gap:35px}.forest-logo{width:200px;mix-blend-mode:multiply}.section-lead{margin:0 0 45px}.forest-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:stretch}.feature-photo{width:100%;height:590px;object-fit:cover;border-radius:3px}.programs article{display:flex;gap:24px;border-top:1px solid #cbd3c5;padding:22px 0}.programs article>span{font-size:11px;padding-top:5px;color:#849279}.programs p{font-size:13px;margin:5px 0}.programs .button{margin-top:15px}.regions{display:grid;grid-template-columns:1fr 1fr 1.15fr;border-top:1px solid #cad3c3;margin-top:55px;padding-top:35px;gap:45px}.regions small{font-size:9px;letter-spacing:2px}.regions h3{font-size:16px;margin-top:10px}.regions p{font-size:12px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:35px}.gallery button{border:0;background:none;padding:0;text-align:left;overflow:hidden}.gallery img{width:100%;height:270px;object-fit:cover;transition:transform .4s}.gallery button:hover img{transform:scale(1.025)}.gallery span{display:block;padding-top:16px;font-size:13px}.more-gallery summary{cursor:pointer;border-bottom:1px solid var(--line);padding:25px 0;font-size:13px;list-style:none}.more-gallery summary span{float:right}.extra img{height:210px}.clients{margin-top:75px;text-align:center}.clients p{font-size:12px}.client-list{font-size:19px;line-height:2.5;margin:25px auto 14px;max-width:950px;font-weight:500}.client-list i{font-style:normal;color:#aab3a0;margin:0 12px}.school-list{font-size:13px;line-height:2.5;color:var(--muted)}.research{background:#253f34;color:#f2f3e9;display:grid;grid-template-columns:1fr 1fr;gap:12%}.research h2{font-size:43px}.research p{color:#c2cebf;font-size:14px}.research em{color:#c7d5a6}.research .eyebrow{color:#bacba8}.research .light{background:#e7edd9;color:var(--ink);margin-top:24px}.research-items article{border-top:1px solid #607366;padding:25px 0}.research-items article>span{float:right;font-size:24px;color:#c3d29f}.research-items h3{font-size:22px;font-weight:500}.tags{display:flex;gap:8px;flex-wrap:wrap}.tags span{border:1px solid #657a67;border-radius:20px;font-size:10px;padding:4px 11px}.people{display:grid;grid-template-columns:1fr 1fr;gap:65px;margin-top:45px}.people article{border-top:1px solid var(--ink);padding-top:25px}.person-no{font-size:10px;letter-spacing:2px}.people h3{font-size:28px;margin-top:25px}.people h3 small{font-size:12px;margin-left:15px;font-weight:400}.person-highlight{font-family:'Noto Serif KR',serif;font-size:23px;color:var(--ink);line-height:1.7}.people p:not(.person-highlight){font-size:14px}.credential{font-size:11px;display:inline-block;border:1px solid var(--line);border-radius:30px;padding:4px 14px;margin-top:10px}.shared-history{background:#eef0e7;padding:20px 25px;font-size:12px;margin-top:40px}.instructor{background:#e6e9dc;display:grid;grid-template-columns:1fr 1fr;gap:12%}.instructor .button{margin-top:18px}.instructor p{font-size:14px}.training{padding-top:25px}.eligibility{border-bottom:1px solid #bdc6b6;padding-bottom:20px}.eligibility small{font-size:11px}.eligibility h3{font-size:25px;margin-top:12px;font-weight:500}.training ol{padding-left:23px;line-height:3;font-size:14px}.fine{font-size:11px!important;line-height:1.8}.contact{text-align:center}.contact h2{font-size:49px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;max-width:950px;margin:45px auto 0;gap:50px}.contact-grid>div{border-top:1px solid var(--line);padding-top:30px}.contact-grid p{font-size:12px}.contact-grid a{display:block;font-size:19px;overflow-wrap:anywhere}.contact-grid button{margin-top:20px}footer{padding:35px 5%;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px}footer p,footer>a:last-child{font-size:10px}dialog{border:none;padding:40px;width:550px;max-width:94vw;max-height:90vh;color:var(--ink);background:var(--paper);border-radius:5px}dialog::backdrop{background:#12251ec9;backdrop-filter:blur(4px)}dialog h2{font-size:28px;margin:12px 0}dialog p{font-size:12px}dialog .close{position:absolute;right:17px;top:10px;border:0;background:none;font-size:28px}form label{display:block;font-size:12px;margin:14px 0}input,textarea,select{width:100%;display:block;border:1px solid #c8d1c4;background:white;padding:10px;margin-top:6px;border-radius:2px;font-size:13px}form .button{width:100%}#direct-email{font-size:12px}#lightbox{width:1000px;padding:38px 15px 15px}#lightbox img{width:100%;max-height:75vh;object-fit:contain}:focus-visible{outline:3px solid #9cae69;outline-offset:5px}
@media(min-width:1600px){main,header,footer{max-width:1600px;margin:auto}}@media(max-width:1050px){nav{gap:15px;font-size:11px}.hero-copy{padding-left:8%}.hero h1{font-size:46px}.hero-photo{min-height:560px}.actions{gap:15px}.section{padding:75px 6%}.gallery img{height:220px}.research{gap:7%}.brand{font-size:14px}}
@media(max-width:760px){header{height:76px;padding:0 6%}.brand img{width:36px;height:36px}.brand small{font-size:8px}.menu{display:block;background:none;border:0;font-size:24px}nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--paper);padding:25px 7%;border-bottom:1px solid var(--line)}nav.open{display:flex;flex-direction:column;align-items:flex-start;gap:20px;font-size:14px}.hero{grid-template-columns:1fr}.hero-copy{padding:48px 7% 35px}.hero h1{font-size:44px;letter-spacing:-2px}.hero p{font-size:13px}.hero-note{margin-top:28px}.hero-photo{height:390px;min-height:0;margin:0 6% 25px;border-radius:90px 0 0 0}.round-stamp{width:85px;height:85px;font-size:10px}.ticker{font-size:9px;letter-spacing:1px;overflow:hidden;white-space:nowrap;justify-content:flex-start}.section{padding:60px 7%}h2{font-size:29px}.intro,.forest-grid,.research,.people,.instructor,.contact-grid{grid-template-columns:1fr;gap:30px}.section-top{align-items:flex-start;gap:15px}.forest-logo{width:95px;margin-top:25px}.section-top p{font-size:11px}.section-lead{font-size:13px}.feature-photo{height:350px}.regions{grid-template-columns:1fr;gap:18px;margin-top:35px}.regions>div+div{border-top:1px solid var(--line);padding-top:18px}.gallery{gap:15px;grid-template-columns:1fr 1fr}.gallery button:first-child{grid-column:1/-1}.gallery img{height:170px}.gallery button:first-child img{height:280px}.gallery span{font-size:11px}.extra button:first-child{grid-column:auto}.extra button:first-child img{height:170px}.clients{margin-top:50px}.client-list{font-size:15px}.client-list i{margin:0 5px}.research h2{font-size:35px}.people{gap:40px}.people h3 small{display:block;margin:5px 0}.contact h2{font-size:37px}.contact-grid a{font-size:16px}.contact-grid{gap:35px}footer{flex-direction:column;align-items:flex-start;padding:30px 7%}dialog{padding:30px 22px}.two-path{gap:10px}.two-path b{font-size:13px}.two-path span{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Brand distinction: lab logo navy/teal; atelier logo forest green. */
:root{--ink:#17435c;--green:#215c70;--muted:#62737c;--line:#d8e2e5}em{color:#368b98}.hero-photo{border-radius:3px}.hero-photo>img{object-position:center 64%}.hero-photo:after{background:linear-gradient(transparent,#10374cbd)}.round-stamp{background:#e0eef0;color:#17435c}.ticker{background:#e5eff1}.intro .large{color:#17435c}.research{background:#143e58}.research p{color:#c2d9df}.research em{color:#80c3ca}.research .eyebrow{color:#95c8d1}.research .light{background:#d7edf0}.research-items article{border-color:#477387}.research-items article>span{color:#8ac8cf}.tags span{border-color:#588396}.forest,.forest-archive,.instructor{--ink:#243f2e;--green:#294d3c;--muted:#637162;--line:#d5ddcf;color:var(--ink)}.forest-archive{background:#f7f8f0}.forest .button:hover,.instructor .button:hover{background:#46634a}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin:35px 0 20px}.course-grid article{border-top:2px solid #49644c;padding:23px 0}.course-grid article>span{font-size:10px;letter-spacing:1.5px;color:#61735b}.course-grid h3{font-size:21px;margin-top:15px}.course-grid p{font-size:13px}.course-tags{font-size:13px;font-weight:600;margin-top:20px;color:#294d3c}.psychology-note{display:flex;align-items:center;gap:20px;border-top:1px solid #cbd5c3;border-bottom:1px solid #cbd5c3;padding:22px 0;font-size:12px}.psychology-note b{white-space:nowrap;font-size:14px}.psychology-note span{flex:1;color:#637162}.psychology-note button{white-space:nowrap}.course-routing{display:flex;gap:25px;font-size:12px;margin:25px 0 45px;flex-wrap:wrap}.course-routing b{margin-right:8px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}[hidden]{display:none!important}.contact-grid>div:first-child{color:#294d3c}.people article:first-child{border-color:#368b98}.people article:last-child{border-color:#49644c}.people article:last-child h3,.people article:last-child .person-highlight{color:#294d3c}.shared-history{background:#edf1ea}.hero-note .dot{background:#368b98}@media(max-width:760px){.course-grid{grid-template-columns:1fr;gap:5px}.course-grid article{padding:20px 0}.course-grid p br{display:none}.psychology-note{align-items:flex-start;flex-direction:column;gap:9px}.hero-photo{height:450px}.hero-photo>img{object-position:center 65%}.course-routing{gap:12px}.form-row{grid-template-columns:1fr;gap:0}}
.common-heading{margin-top:35px;border-top:1px solid #bac8b1;padding-top:25px}.common-heading h3{font-size:23px;margin:10px 0}.common-heading p{max-width:820px;font-size:13px}.course-routing>strong{flex-basis:100%;font-size:13px}.trust-strip{display:flex;align-items:center;justify-content:center;gap:28px;margin:65px 0 0;padding:32px 25px;background:#e9eedd;border:1px solid #d1dac2}.achievement-mark{width:80px;height:94px;flex-shrink:0}.trust-strip h3{font-family:'Noto Serif KR',serif;font-size:27px;font-weight:500;margin:8px 0}.trust-strip p{font-size:13px;margin:0}.reviews{margin-top:65px;padding-top:35px;border-top:1px solid var(--line)}.reviews>h3{font-family:'Noto Serif KR',serif;font-size:28px;font-weight:500;margin:15px 0 25px}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.review-grid blockquote{margin:0;padding:28px;background:#eef1e7;border-left:2px solid #8b9b70;font-size:17px;line-height:1.9}.reviews>.fine{margin-top:20px;color:#637162}@media(max-width:760px){.trust-strip{gap:18px;padding:25px 18px}.achievement-mark{width:56px;height:70px}.trust-strip h3{font-size:21px}.trust-strip .eyebrow{font-size:8px;letter-spacing:1px}.trust-strip p{font-size:11px}.review-grid{grid-template-columns:1fr}.review-grid blockquote{font-size:15px;padding:23px}.common-heading h3{font-size:20px}}
.forest-hero{--ink:#243f2e;--green:#294d3c;--muted:#637162;color:var(--ink)}.forest-hero em{color:#799063}.forest-hero .round-stamp{background:#e8edda;color:#294d3c}.forest-hero .hero-photo>img{object-position:47% center}.forest-hero .hero-photo{border-radius:100px 0 0 0}.forest .trust-strip{margin:25px 0 40px;justify-content:flex-start}.forest-people{margin-top:65px;padding-top:40px;border-top:1px solid #cbd5c3}.forest-people>h2{font-size:30px}.forest-people .people{gap:50px;margin-top:25px}.profile-heading{display:flex;align-items:center;gap:20px}.profile-heading h3{margin:0;font-size:25px}.profile-heading span{font-size:12px;color:#637162}.avatar{width:96px;height:96px;border-radius:50%;overflow:hidden;position:relative;flex-shrink:0;background:#dbe1d3}.avatar img{position:absolute;width:300%;max-width:none;height:auto}.avatar.yeongju img{left:-150%;top:-10%}.avatar.hyeryeong img{left:-34%;top:-29%}.lesson-location{padding:28px 30px;background:#f8f9f1;border-left:3px solid #647c50;margin-top:30px}.lesson-location h3{margin-top:10px}.lesson-location p{font-size:13px;margin:8px 0}.lesson-location address{font-style:normal;font-size:15px}.inline-contact{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid #bdcbb8;margin-top:30px;padding-top:28px}.inline-contact small{display:block;font-size:12px}.inline-contact a{display:block;font-size:21px;overflow-wrap:anywhere;margin:8px 0}.inline-contact span{font-size:11px;display:block}.inline-contact span a{display:inline;font-size:12px}.review-grid blockquote{font-family:'Noto Serif KR',serif;font-weight:400}.research{grid-template-columns:1fr 1fr;align-items:center;gap:7%}.lab-photo img{width:100%;height:510px;object-fit:cover;object-position:center 65%}.lab-photo p{font-size:11px}.research h2{font-size:34px}.research .inline-contact{border-color:#477387}.research .inline-contact a{font-size:20px}.research .button{margin-top:20px}@media(max-width:760px){.forest-people>h2{font-size:25px}.profile-heading{gap:15px}.avatar{width:82px;height:82px}.profile-heading h3{font-size:22px}.inline-contact{align-items:flex-start;flex-direction:column}.inline-contact a{font-size:18px}.research{grid-template-columns:1fr}.lab-photo img{height:380px}.research h2{font-size:29px}.research .inline-contact a{font-size:17px}.lesson-location{padding:22px}.lesson-location address{font-size:13px}}
.forest-logo{width:330px;max-width:38%;flex-shrink:0}.brand-relationship{font-size:14px;letter-spacing:.2px;color:#486047;border-bottom:1px solid #cbd5c3;margin:0 0 35px;padding-bottom:18px}.brand-keywords{font-size:14px;letter-spacing:2px;margin-top:22px;color:#657b54;word-spacing:16px}.brand-keywords span{color:#294d3c}@media(max-width:760px){#forest .section-top{flex-direction:column-reverse;gap:12px}.forest-logo{width:270px;max-width:85%;margin:0 0 15px}.brand-relationship{font-size:12px}.brand-keywords{font-size:12px}.forest-hero h1{font-size:39px}}
.forest-brand-intro{display:grid;grid-template-columns:30% 1fr;gap:6%;align-items:stretch;margin-bottom:45px}.vertical-brand{width:100%;height:100%;min-height:420px;object-fit:cover;object-position:center}.forest-brand-copy{padding:18px 0}.forest-brand-copy .section-top{display:block}.forest-brand-copy .section-lead{margin-bottom:20px}.forest-brand-copy .trust-strip{margin:25px 0 0;padding:24px 20px}.forest-brand-copy .trust-strip h3{font-size:23px}.forest-brand-copy .achievement-mark{width:60px}.studio-photos{display:flex;gap:18px;margin-top:24px;max-width:650px}.studio-photos figure{margin:0;flex:1;min-width:0}.studio-photos img{height:170px;width:100%;object-fit:cover;border-radius:3px}.studio-photos figcaption{font-size:11px;color:#637162;margin-top:7px}#forest-contact{display:block}#forest-contact .contact-intro p{font-size:13px;margin:8px 0 20px}.equal-contacts{display:grid;grid-template-columns:1fr 1fr;gap:12px 25px;margin-bottom:25px}.equal-contacts>a{padding:16px 18px;background:#f7f8f0;font-size:16px!important;border:1px solid #d5ddcf;margin:0}.equal-contacts small{font-size:10px;margin-bottom:7px;color:#637162}@media(max-width:760px){.forest-brand-intro{grid-template-columns:1fr;gap:22px}.vertical-brand{height:360px;min-height:0;object-fit:contain;background:#23453b}.forest-brand-copy{padding:0}.forest-brand-copy .trust-strip h3{font-size:21px}.studio-photos{gap:12px}.studio-photos img{height:130px}.equal-contacts{grid-template-columns:1fr}.equal-contacts>a{font-size:15px!important}}

/* Expression programme and social archive */
.mind-program{display:grid;grid-template-columns:1fr 1fr;gap:55px;padding:42px;background:#e5e9dc;border-left:3px solid #6e805d;margin:34px 0 50px}.mind-program h3{font-family:'Noto Serif KR',serif;font-size:30px;line-height:1.5;margin:12px 0 20px}.mind-program p{line-height:1.9}.mind-program .text-link{margin-top:18px}.mind-topics article+article{border-top:1px solid #c7cebd;margin-top:24px;padding-top:24px}.mind-topics small{font-size:10px;letter-spacing:1.5px;color:#61714e}.mind-topics h4{font-size:19px;margin:9px 0}.mind-topics .fine{margin-top:22px}.social-journal{margin-top:65px;padding-top:55px;border-top:1px solid #cdd2c4}.social-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.journal-card{display:block;text-decoration:none;color:inherit;background:#f8f8f1;border:1px solid #d8ddcf;transition:transform .2s}.journal-card:hover{transform:translateY(-4px)}.journal-card>img,.art-mosaic{width:100%;height:280px;object-fit:cover}.art-mosaic{display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:1fr 1fr;gap:5px;overflow:hidden}.art-mosaic img{width:100%;height:100%;min-height:0;object-fit:cover}.art-mosaic img:first-child{grid-row:1/3}.social-card-copy{padding:28px}.social-card-copy h3{font-size:24px;margin:12px 0}.social-card-copy p{line-height:1.9}.social-action{display:inline-block;margin-top:20px;border-bottom:1px solid #869777;padding-bottom:5px}.social-journal>.fine{margin-top:15px}@media(max-width:700px){.mind-program,.social-grid{grid-template-columns:1fr}.mind-program{padding:25px;gap:30px}.mind-program h3{font-size:25px}.journal-card>img,.art-mosaic{height:230px}.social-card-copy{padding:23px}}

@font-face{font-family:"forest-myungjo";src:url("assets/fonts/forest-myungjo.woff") format("woff");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"forest-diary";src:url("assets/fonts/forest-diary.woff") format("woff");font-weight:400;font-style:normal;font-display:swap}


.hero h1,.section h2,.mind-program h3,.trust-strip h3,.reviews blockquote{font-family:'Noto Serif KR',serif;font-weight:400}.hero h1{letter-spacing:-1.7px}.course-grid h3{font-family:'forest-diary','Noto Sans KR',sans-serif;font-weight:400;font-size:29px;line-height:1.5;margin:15px 0}.brand-keywords{font-family:'forest-diary','Noto Sans KR',sans-serif;font-weight:400;font-size:21px;letter-spacing:1px}.review-grid blockquote{font-size:23px;line-height:1.8}.social-card-copy h3{font-family:'Noto Serif KR',serif;font-weight:400;font-size:28px}.journal-card{border-top:3px solid #7e906f}.social-card-copy{padding:34px}.people,.people h3,.people p,.people small{font-family:'Noto Sans KR',sans-serif}@media(max-width:700px){.course-grid h3{font-size:26px}.review-grid blockquote{font-size:21px}.social-card-copy{padding:25px}.social-card-copy h3{font-size:25px}}

/* Brand typography and channel colours */
.round-stamp{font-family:'forest-diary','Noto Sans KR',sans-serif;font-weight:400;font-size:19px;line-height:1.65}.brand-relationship{font-family:'Noto Serif KR',serif;font-weight:500;font-size:16px}.brand-keywords{font-family:'forest-myungjo',serif;font-size:21px;letter-spacing:.5px}.journal-card.blog-channel{background:#fff2bf;border-color:#e8d790;border-top-color:#d3b64e;color:#504520}.journal-card.instagram-channel{background:#f9e4ec;border-color:#e9c8d6;border-top-color:#c97a9a;color:#593b49}.channel-logo{width:46px;height:46px;display:block;margin-bottom:24px}.blog-channel .social-action{border-color:#bda351}.instagram-channel .social-action{border-color:#bf8b9f}.journal-card:hover{box-shadow:0 8px 24px #263a2a0c}.common-heading p{font-size:14px}@media(max-width:700px){.round-stamp{font-size:17px}.brand-relationship{font-size:14px}.channel-logo{width:40px;height:40px}}

.ticker{font-family:'forest-diary','Noto Sans KR',sans-serif;font-weight:400;font-size:24px;letter-spacing:1px;text-align:center}.ticker i{font-style:normal}.lab-copy .lab-intro{font-family:'Noto Sans KR',sans-serif;font-size:15px;line-height:1.95}.lab-copy .lab-invitation{font-family:'Noto Serif KR',serif;font-size:19px;font-weight:400;line-height:1.9;margin-top:25px;padding-top:23px;border-top:1px solid #ffffff30;color:#e5efeb}@media(max-width:700px){.ticker{font-size:19px}.lab-copy .lab-invitation{font-size:17px}}

.ticker{font-size:20px;font-weight:700;font-style:italic;letter-spacing:.5px}.course-grid h3{font-weight:700}.programs article{align-items:flex-start;gap:18px}.programs article .program-icon{display:flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;height:48px;background:#e0e6d6;border-radius:14px;color:#4e6946}.program-icon svg{width:30px;height:30px}.programs article h3{font-size:23px;line-height:1.5;margin-top:3px;margin-bottom:10px;word-break:keep-all}.lesson-info{display:grid;grid-template-columns:minmax(220px,.9fr) 1.3fr;gap:35px;margin:25px 0 28px}.location-label{display:block;font-size:11px;letter-spacing:1px;color:#6b7d5c;margin-bottom:10px}.lesson-location .lesson-place address{font-style:normal;line-height:1.9;margin:0;font-size:15px}.lesson-place strong{font-weight:600}.lesson-booking{border-left:1px solid #d6ddcb;padding-left:30px}.lesson-booking p{font-size:14px;line-height:1.85;margin:0 0 10px;max-width:440px}.lesson-booking .text-link{font-size:13px}@media(max-width:700px){.ticker{font-size:16px}.programs article h3{font-size:21px}.programs article .program-icon{flex-basis:42px;width:42px;height:42px}.lesson-info{grid-template-columns:1fr;gap:20px}.lesson-booking{border-left:0;border-top:1px solid #d6ddcb;padding-left:0;padding-top:20px}}

.ticker{color:#748a80;background:#eef2ed;position:relative;overflow:hidden;isolation:isolate;transition:color .3s,text-shadow .3s}.ticker::after{content:"";position:absolute;inset:-50% auto -50% -40%;width:22%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.72),transparent);transform:skewX(-20deg);pointer-events:none;opacity:0}.ticker:hover{color:#607b6d;text-shadow:0 0 12px #ffffff90}.ticker:hover::after{animation:forest-shimmer 1.25s ease-out forwards}@keyframes forest-shimmer{0%{left:-40%;opacity:0}15%{opacity:1}85%{opacity:1}100%{left:125%;opacity:0}}.course-grid h3{font-family:'Noto Serif KR',serif;font-size:25px;font-weight:600;line-height:1.65}.mind-program h3{font-family:'Noto Serif KR',serif;font-weight:500;line-height:1.75;word-break:keep-all}.reveal-pending{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.65,.3,1)}.reveal-pending.is-visible{opacity:1;transform:translateY(0)}@media(max-width:700px){.course-grid h3{font-size:23px}}@media(prefers-reduced-motion:reduce){.ticker,.ticker::after,.reveal-pending{animation:none!important;transition:none!important}.reveal-pending{opacity:1;transform:none}}

/* Light stays with the pointer, rather than sweeping once on hover. */
.ticker::after{inset:0;width:auto;transform:none;background:radial-gradient(ellipse 155px 85px at var(--light-x,50%) var(--light-y,50%),rgba(255,255,255,.9) 0%,rgba(255,248,204,.38) 35%,transparent 75%);opacity:0;animation:none!important;transition:opacity .2s;mix-blend-mode:soft-light}.ticker:hover::after{animation:none;opacity:0}.ticker.light-active::after{opacity:1}.reveal-pending{transition-delay:var(--reveal-delay,0ms)}@media(prefers-reduced-motion:reduce){.ticker::after{display:none}.reveal-pending{transition-delay:0ms}}

.equal-contacts>.phone-contact{padding:16px 18px;background:#f7f8f0;border:1px solid #d5ddcf}.phone-contact>small{display:block}.equal-contacts .phone-contact a{display:flex;align-items:center;justify-content:space-between;gap:14px;border:0;background:none;padding:3px 0;margin:0;font-size:15px!important}.phone-contact a span{font-size:12px;color:#637162}.phone-contact strong{font-weight:500;white-space:nowrap}.mind-program{position:relative;isolation:isolate;overflow:hidden;background:#fffefa;border:1px solid #e6e6e9;border-radius:16px;box-shadow:0 12px 44px #56655b09}.mind-program:before{content:"";position:absolute;inset:-35%;z-index:-1;background:radial-gradient(ellipse at 20% 35%,#e9dff785,transparent 48%),radial-gradient(ellipse at 80% 25%,#d9f1ed99,transparent 44%),radial-gradient(ellipse at 55% 85%,#ffe8e899,transparent 48%);filter:blur(22px);animation:dream-colours 16s ease-in-out infinite alternate;pointer-events:none}@keyframes dream-colours{0%{transform:translate(-3%,-2%) rotate(-5deg) scale(1);opacity:.65}50%{opacity:1}100%{transform:translate(4%,3%) rotate(10deg) scale(1.12);opacity:.8}}.cursor-sparkles{position:fixed;inset:0;pointer-events:none;z-index:15;overflow:hidden}.cursor-sparkle{position:absolute;width:var(--size);height:var(--size);border-radius:50%;background:radial-gradient(circle,#fffef7 0%,#f7ebbeaa 35%,#e6e9dc44 65%,transparent 75%);box-shadow:0 0 10px #e8d89c80;animation:sparkle-fade 1.05s ease-out forwards;pointer-events:none}@keyframes sparkle-fade{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}20%{opacity:.8;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(calc(-50% + var(--drift)),calc(-50% - 22px)) scale(.2)}}.reveal-pending{will-change:transform,opacity;transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.25,1),filter .9s ease;transition-delay:var(--reveal-delay,0ms)}.reveal-pending.float-title{opacity:0;transform:translateY(42px);filter:blur(5px);transition-duration:1.25s}.reveal-pending.rise-card{opacity:0;transform:translateY(30px) scale(.98)}.reveal-pending.slide-card{opacity:0;transform:translateX(-26px)}.reveal-pending.soft-card{opacity:0;transform:translateY(16px) scale(.97);filter:blur(2px)}.reveal-pending.is-visible{opacity:1;transform:none;filter:none;will-change:auto}@media(prefers-reduced-motion:reduce){.mind-program:before{animation:none}.cursor-sparkles{display:none}.reveal-pending,.reveal-pending.float-title,.reveal-pending.rise-card,.reveal-pending.slide-card,.reveal-pending.soft-card{opacity:1;transform:none;filter:none;transition:none}}

.portal-intro{padding:65px 6% 40px}.portal-intro h1{font-family:'Noto Serif KR',serif;font-size:clamp(32px,3.8vw,56px);font-weight:500;line-height:1.5;letter-spacing:-1.5px;margin:12px 0 0}.portal-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:0 4% 70px}.portal-card{position:relative;min-height:580px;overflow:hidden;color:#fff;border-radius:3px;display:flex;align-items:flex-end}.portal-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s}.portal-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#07191b08 10%,#07191b9c 65%,#07191be8)}.portal-forest:after{background:linear-gradient(180deg,#14291b05 10%,#14291b85 60%,#14291be8)}.portal-card:hover>img{transform:scale(1.035)}.portal-content{position:relative;z-index:1;padding:42px;width:100%}.portal-content h2{font-family:'Noto Serif KR',serif;font-size:clamp(36px,4vw,62px);font-weight:500;line-height:1.35;margin:20px 0}.portal-content p{color:#e4eae5;line-height:1.8}.portal-link{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff66;margin-top:30px;padding-top:22px}.portal-link b{font-size:32px;font-weight:400}.lab-home .research{margin-top:0}.instructor-fold{margin:0;padding:25px 8%;background:#eeeee5;border-top:1px solid #d5ddcf;border-bottom:1px solid #d5ddcf}.instructor-fold>summary{cursor:pointer;font-size:16px;padding:10px 0;color:#526147}.instructor-content{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:35px 0}.instructor-content h2{font-family:'Noto Serif KR',serif;font-size:32px;line-height:1.5}.instructor-fold:not([open]) .instructor-content{display:none}header .brand img[src*="forest-vertical"]{width:45px;height:52px;object-fit:cover;mix-blend-mode:normal;border-radius:2px}@media(max-width:700px){.portal-intro{padding:40px 6% 28px}.portal-grid{grid-template-columns:1fr;gap:16px;padding:0 5% 40px}.portal-card{min-height:460px}.portal-content{padding:28px}.portal-content h2{font-size:40px}.instructor-content{grid-template-columns:1fr;gap:30px}.instructor-fold{padding:20px 6%}}@media(prefers-reduced-motion:reduce){.portal-card>img{transition:none}}

.forest-page .mind-program h3{color:#386447}.cursor-leaf{position:absolute;width:calc(var(--size) * 1.15);height:calc(var(--size) * 1.4);background:url('assets/cursor-leaf.svg') center/contain no-repeat;animation:leaf-drift 1.8s ease-out forwards;pointer-events:none}@keyframes leaf-drift{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--turn)) scale(.5)}15%{opacity:.85}100%{opacity:0;transform:translate(calc(-50% + var(--drift) * 3),65px) rotate(calc(var(--turn) + 100deg)) scale(.7)}}.sequence-item{opacity:0;transform:translateY(38px);transition:opacity 1s ease,transform 1.15s cubic-bezier(.2,.7,.25,1);transition-delay:var(--sequence-delay)}.sequence-visible>.sequence-item{opacity:1;transform:none}.clients{position:relative;isolation:isolate;background:linear-gradient(115deg,#ffffffb8,#f8faf3e8,#fff);padding:38px 30px;border:1px solid #ffffff;border-radius:15px;box-shadow:0 0 35px #ffffffb0;overflow:hidden}.clients:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 25% 15%,#fff,transparent 60%);animation:client-glow 6s ease-in-out infinite alternate}@keyframes client-glow{to{opacity:.35;transform:translateX(18%)}}.client-letter{opacity:0;transition:opacity .4s ease;transition-delay:var(--letter-delay)}.letters-visible .client-letter{opacity:1}.lesson-booking .location-label{letter-spacing:0;font-size:12px}@media(prefers-reduced-motion:reduce){.cursor-leaf{display:none}.sequence-item{opacity:1;transform:none;transition:none}.client-letter{opacity:1;transition:none}.clients:before{animation:none}}
/* Centre-triggered sections, followed by their typography. */
.stage{opacity:0;transform:translateY(32px);transition:opacity .85s ease,transform 1s cubic-bezier(.2,.7,.25,1);transition-delay:var(--stage-delay,0ms)}
.stage.stage-visible{opacity:1;transform:none}
.stage .stage-text{opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform 1.1s ease;transition-delay:calc(var(--stage-delay,0ms) + 550ms + var(--text-delay,0ms))}
.stage.stage-visible .stage-text{opacity:1;transform:none}
.clients.stage-visible .client-letter{opacity:1}
.course-grid{gap:18px;align-items:stretch}
.course-grid>article{position:relative;isolation:isolate;overflow:hidden;padding:34px 28px;border:1px solid #d3ddce;border-radius:5px;background:#dce5d6;min-width:0}
.course-grid>article:nth-child(2){background:#d8e3dc}.course-grid>article:nth-child(3){background:#e6e5d5}
.course-content{position:relative;z-index:1;padding-top:110px}.course-content>span{font-size:10px;letter-spacing:1.5px}.course-grid h3{font-size:24px;word-break:keep-all;overflow-wrap:anywhere}
.brush-letter{position:absolute;top:12px;right:8px;width:200px;height:160px;background-image:url('assets/brush-abc.png');background-size:300% 100%;background-position:left center;opacity:.58;pointer-events:none}
[data-letter=B] .brush-letter{background-position:center}[data-letter=C] .brush-letter{background-position:right}
.mind-photo{width:100%;max-width:443px;aspect-ratio:443/248;object-fit:cover;margin-top:28px;border-radius:8px}
.atelier-history{margin-top:36px;border-top:1px solid #cbd5c3;padding-top:25px}.atelier-history h3{font-size:19px;margin-top:8px}.atelier-history ol{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:28px}.atelier-history li{border-left:2px solid #a7b59a;padding-left:18px}.atelier-history time{font-size:13px;font-weight:600;letter-spacing:1px}.atelier-history p{font-size:12px;margin:8px 0}
main>* , .lab-copy,.portal-content,.forest-brand-copy,.programs article>div{min-width:0}h1,h2,h3,h4,p,a,button{overflow-wrap:break-word}.button{line-height:1.6;max-width:100%;white-space:normal;position:relative}.lab-copy .button{display:inline-flex;align-items:center;background:#e1f1ee;color:#17435c;border-color:#e1f1ee;padding:14px 24px;margin-bottom:8px}.lab-copy .inline-contact{display:block}.lab-copy .inline-contact a{overflow-wrap:anywhere}
@media(max-width:760px){.ticker{white-space:normal;flex-wrap:wrap;justify-content:center;gap:5px 12px;font-size:15px}.forest-hero h1{font-size:clamp(29px,8.5vw,39px)}.section h2,.research h2{font-size:clamp(25px,6.8vw,30px);word-break:keep-all}.portal-content h2{font-size:clamp(28px,8vw,40px);word-break:keep-all}.portal-content{padding:25px}.mind-program h3{font-size:clamp(22px,5.6vw,26px)}.mind-program h3 br{display:none}.course-grid{gap:20px}.course-grid>article{padding:28px 24px}.course-content{padding-top:90px}.course-grid h3{font-size:23px}.programs article{gap:12px}.programs article h3{font-size:20px}.equal-contacts>a{font-size:13px!important;overflow-wrap:anywhere}.equal-contacts .phone-contact a{flex-wrap:wrap;gap:4px}.photo-label{left:22px;right:18px}.photo-label span{font-size:16px}.atelier-history ol{grid-template-columns:1fr;gap:20px}.clients{padding:30px 20px}.forest-brand-copy .trust-strip{gap:14px;padding:20px 14px}.forest-brand-copy .trust-strip h3{font-size:19px}.review-grid blockquote{font-size:19px}.lab-copy .button{margin-top:24px}.section-top{flex-wrap:wrap}.instructor-content h2{font-size:27px}dialog{max-width:calc(100vw - 24px)}.brand{min-width:0}.brand small{letter-spacing:1px}}
@media(prefers-reduced-motion:reduce){.stage,.stage .stage-text{opacity:1;transform:none;transition:none}.client-letter{opacity:1}}
@media(max-width:760px){.research{gap:30px;padding-bottom:60px}.research .lab-copy{padding-bottom:6px}}
/* Warm, quiet history with a central dotted axis. */
.atelier-history{color:#a97750;border-top-color:#dfc8af;padding:32px 0 10px;text-align:center}
.atelier-history h3,.atelier-history time,.atelier-history p{font-family:'Noto Serif KR',serif;font-weight:400;color:#a97750}
.atelier-history .eyebrow{color:#b58660;font-weight:400}.atelier-history h3{font-size:21px}.atelier-history ol{display:block;position:relative;max-width:740px;margin:28px auto 0}
.atelier-history ol:before{content:'';position:absolute;top:12px;bottom:30px;left:50%;width:1px;background:#dec3a5}
.atelier-history li{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;border:0;padding:0 0 30px;text-align:left}
.atelier-history li:before{content:'';position:absolute;left:50%;top:8px;width:9px;height:9px;border-radius:50%;background:#c99a6e;box-shadow:0 0 0 5px #eee5d9;transform:translateX(-50%)}
.atelier-history time{text-align:right;font-size:16px;line-height:1.8}.atelier-history p{margin:0;font-size:13px;line-height:1.9;color:#a57d5c}
/* A full-photo expression chapter, with a quiet D behind the copy. */
.mind-program{background:linear-gradient(90deg,rgba(247,249,238,.91),rgba(247,249,238,.85)),url('assets/hand-on-heart.png') center 52%/cover no-repeat;border-color:#dce2ce;position:relative}
.mind-program:before{display:none}.mind-program>div{position:relative;z-index:1;min-width:0}.mind-letter{position:absolute;z-index:0;left:5%;top:-42px;font-family:'Noto Serif KR',serif;font-style:italic;font-weight:600;font-size:330px;line-height:1;color:#fff;opacity:.58;pointer-events:none;user-select:none}
.mind-program p{color:#485640}.mind-program .mind-topics small{color:#4b603c}
@media(max-width:760px){.atelier-history li{gap:38px;grid-template-columns:1fr 1fr}.atelier-history time{font-size:13px;letter-spacing:0}.atelier-history p{font-size:12px;word-break:keep-all}.atelier-history p br{display:none}.mind-program{background:linear-gradient(180deg,#f7f9eed9,#f7f9eeed),url('assets/hand-on-heart.png') center top/auto 100% no-repeat}.mind-letter{font-size:250px;left:2%;top:-15px}}
.mind-letter.brush-d{width:300px;height:300px;background:url('assets/brush-d.png') center/contain no-repeat;font-size:0;top:0;left:3%;opacity:.55}
.atelier-history .history-foundation{font-size:13px;max-width:560px;margin:12px auto 26px;color:#a57d5c;line-height:1.9}
.review-words{display:block;transform-origin:center;will-change:transform}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.review-grid blockquote:hover .review-words{animation:review-wiggle .8s ease-in-out infinite}}
@keyframes review-wiggle{0%,100%{transform:rotate(0) translateY(0)}20%{transform:rotate(-.7deg) translateY(-2px)}45%{transform:rotate(.6deg) translateY(1px)}70%{transform:rotate(-.4deg) translateY(-1px)}}
.naver-place-link{display:inline-flex;align-items:center;max-width:100%;margin-top:20px;padding:13px 20px;border:1px solid #bfd8c2;border-radius:30px;color:#287244;background:#eef7ed;font-size:13px;line-height:1.7}.naver-place-link:hover{background:#e0f0dc}
@media(max-width:760px){.mind-letter.brush-d{width:230px;height:230px;left:0;top:4px}.atelier-history .history-foundation{font-size:12px}.naver-place-link{font-size:12px;padding:12px 16px}}
.forest-hero .round-stamp{background:transparent;width:154px;height:154px;padding:0;transform:rotate(8deg);display:block;right:20px;top:20px}.round-stamp img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 7px #172c2430)}.ticker{align-items:center}.ticker>img{width:25px;height:31px;object-fit:contain;flex:0 0 25px;opacity:.85}@media(max-width:760px){.forest-hero .round-stamp{width:120px;height:120px;right:15px;top:16px}.ticker>img{width:18px;height:23px;flex-basis:18px}}
.artist-profile{position:relative;isolation:isolate;overflow:hidden}.profile-heading{position:relative;z-index:1}.people .profile-heading h3 .artist-alias{display:block;font-family:'Noto Sans KR',sans-serif;font-size:12px;font-weight:400;letter-spacing:.3px;color:#87917f;margin:5px 0 2px}.alias-art{position:absolute;z-index:-1;width:240px;height:65px;right:0;top:12px;opacity:.16;background:url('assets/artist-signatures.png') left center/200% 100% no-repeat;pointer-events:none}.alias-art.alias-1{background-position:right center}.atelier-nicknames{font-family:'forest-diary','Noto Sans KR',sans-serif;font-size:23px;line-height:1.7;text-align:center;color:#728064;margin:30px auto 0;max-width:750px}.forest-hero .round-stamp{transform:rotate(5deg)}@media(max-width:760px){.alias-art{width:190px;height:52px;top:23px;opacity:.13}.atelier-nicknames{font-size:20px}.people .profile-heading h3 .artist-alias{font-size:11px}}
/* Give each handwritten alias its own line: no overlap with names or portraits. */
.artist-profile .alias-art{position:relative;display:block;z-index:auto;top:auto;right:auto;width:250px;max-width:100%;height:86px;margin:12px 0 8px 112px;opacity:.55;background-size:200% 100%;pointer-events:none}
#archive>.atelier-nicknames{margin:0 0 28px;max-width:850px;text-align:left;font-size:24px;color:#738366}
.naver-place-link{display:flex;gap:22px;align-items:center;width:100%;max-width:630px;border-radius:14px;margin-top:28px;padding:28px 32px;background:#edf7dc;border:1px solid #d4e8bc;text-align:left;transition:background .2s,transform .2s}.naver-place-link:hover{background:#e2f2cb;transform:translateY(-2px)}.place-n-logo{display:grid;place-items:center;flex:0 0 62px;width:62px;height:62px;border-radius:15px;background:#03c75a;color:#fff;font-family:Arial,sans-serif;font-weight:900;font-size:40px;line-height:1}.place-link-copy small{display:block;font-size:10px;letter-spacing:1.5px;color:#63854b;margin-bottom:8px}.place-link-copy strong{font-size:19px;line-height:1.65;font-weight:500;color:#2e633a}.place-link-copy br{display:none}
.forest-hero .round-stamp{width:174px;height:174px}.round-stamp img{border-radius:0;background:transparent}
@media(max-width:760px){.artist-profile .alias-art{margin:10px 0 10px 92px;width:190px;max-width:calc(100% - 92px);height:70px;opacity:.65}#archive>.atelier-nicknames{font-size:21px;line-height:1.65;margin-bottom:25px}.naver-place-link{padding:22px 18px;gap:16px}.place-n-logo{flex-basis:48px;width:48px;height:48px;border-radius:12px;font-size:32px}.place-link-copy strong{font-size:16px}.place-link-copy br{display:block}.forest-hero .round-stamp{width:140px;height:140px}}
.teaching-map{margin:72px 0 54px;padding:40px;background:#f1f2e9;border:1px solid #dce1d3;border-radius:24px}.map-heading h3{font-family:var(--serif,serif);font-size:clamp(26px,3vw,38px);color:#385640;margin:12px 0}.map-heading>p{line-height:1.8;color:#647361}.map-legend{display:flex;gap:22px;margin:22px 0}.map-legend span{display:flex;align-items:center;gap:8px;font-size:13px}.map-legend i{height:12px;width:12px;border-radius:50%}.past{background:#b74d47}.current{background:#f0cd5e}.map-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(240px,1fr);gap:38px;align-items:center}.region-canvas{position:relative;aspect-ratio:1;max-width:620px;width:100%;border-radius:18px;overflow:hidden;background:#f6faf7;border:1px solid #d4ded2}.region-canvas>img{display:block;width:100%;height:100%;object-fit:contain;opacity:.56;filter:saturate(.45)}.map-area{position:absolute;pointer-events:none;font-size:clamp(10px,1.1vw,14px);font-weight:700;letter-spacing:.06em;color:#49694d;background:#edf2e6e8;padding:7px 12px;border:1px solid #c8d5bd;border-radius:30px}.area-seoul{top:32%;left:18%}.area-chung{top:62%;left:56%}.map-marker{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);z-index:2}.marker-label{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);font-size:12px;white-space:nowrap;color:#344c39;font-weight:700;background:#fffffff0;padding:2px 5px;border-radius:4px;line-height:1.5}.marker-circles{display:flex;gap:4px}.map-dot{width:34px;height:34px;border-radius:50%;border:2px solid white;color:white;box-shadow:0 3px 10px #31433335;font:bold 14px/1 sans-serif;cursor:pointer;transition:transform .2s,box-shadow .2s}.map-dot.current{color:#4d401b}.map-dot:hover,.map-dot:focus-visible{transform:scale(1.18);box-shadow:0 4px 18px #31433365;outline:2px solid #355b40;outline-offset:3px}.map-records h4{font:30px/1.45 var(--serif,serif);margin:12px 0 18px;color:#385640}.map-records>p{font-size:13px;line-height:1.8;color:#677260}.map-record-head,.map-record{display:grid;grid-template-columns:1fr 50px 50px;align-items:center;gap:12px;width:100%;padding:13px 0;text-align:left}.map-record-head{font-size:11px;letter-spacing:.08em;color:#798773;margin-top:20px}.map-record{background:transparent;border:0;border-top:1px solid #d9dfd2;cursor:pointer;color:#3d5341;font:14px/1.5 inherit}.map-record:hover,.map-record:focus-visible{background:#e3eadb}.map-record span,.map-record-head span:not(:first-child){text-align:center}.past-count{color:#a13e38;font-weight:700}.current-count{color:#79611a;font-weight:700}.map-note{font-size:11px!important;margin-top:22px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:760px){.teaching-map{padding:24px 16px;margin-top:42px}.map-layout{grid-template-columns:1fr;gap:28px}.map-dot{width:28px;height:28px;font-size:12px}.marker-label{font-size:10px;padding:0 3px}.marker-circles{gap:2px}.map-records h4{font-size:25px}.map-area{padding:5px 8px}}
@media(prefers-reduced-motion:reduce){.map-dot{transition:none}}
.map-dot{padding:0!important;min-width:0;display:flex;align-items:center;justify-content:center;flex-shrink:0;letter-spacing:0;white-space:nowrap;line-height:1!important}.teaching-map h3{scroll-margin-top:110px}
/* Region inquiry and compact lesson disclosure */
.region-canvas{cursor:crosshair}.map-marker .map-dot{width:20px;height:20px}.map-area,.marker-label{pointer-events:none}.map-records .button{font-size:14px;white-space:normal}.city-selection{padding:18px;background:#edf2e7;border-radius:12px;margin-bottom:20px}.city-selection select{width:100%;max-width:100%;padding:12px;border:1px solid #b8c6ad;background:white;color:#30492d;border-radius:6px}.city-help{font-size:12px;margin:10px 0 0;color:#65725f}#nearby-cities{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}#nearby-cities>span{width:100%;font-size:12px}#nearby-cities button{border:1px solid #a6b898;border-radius:20px;padding:7px 13px;background:white;color:#38513b;font-size:13px}#nearby-cities button[aria-pressed=true]{background:#496542;color:white}.lesson-fold{border-top:1px solid #ccd4c2;border-bottom:1px solid #ccd4c2;margin:38px 0}.lesson-fold>summary{cursor:pointer;padding:24px 8px;color:#496542;font-size:18px}.lesson-fold .lesson-location{margin-top:0}.lesson-fold:not([open]) .lesson-location{display:none}
.forest-hero .hero-service-title{display:block;font-size:clamp(20px,2.05vw,30px);font-weight:700;line-height:1.6;letter-spacing:-.035em;color:#45633f;max-width:23em;margin-bottom:20px;word-break:keep-all}.region-canvas{aspect-ratio:1.05}.region-map-stage{position:absolute;width:181.818%;height:190.91%;left:-9.091%;top:-85.91%}.region-map-stage>img{display:block;width:100%;height:100%;object-fit:fill;opacity:.82;filter:grayscale(1)}.map-service-mask{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.region-map-stage .area-seoul{top:58%;left:29%;font-size:12px;padding:5px 8px}.region-map-stage .area-chung{top:85%;left:40%;font-size:12px;padding:5px 8px}.region-map-stage .marker-label{font-size:11px}.detailed-location{margin-top:8px}@media(max-width:600px){.forest-hero .hero-service-title{font-size:20px;max-width:17em}.region-map-stage .map-area{font-size:9px;padding:3px 5px}.region-map-stage .marker-label{font-size:10px}}
