*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#faf8f1;color:#294339;font-family:"Malgun Gothic","Apple SD Gothic Neo",sans-serif;line-height:1.7}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,textarea:focus-visible{outline:3px solid #b78b4a;outline-offset:5px}a{color:inherit;text-decoration:none}header{max-width:1300px;margin:auto;padding:26px 40px;display:flex;justify-content:space-between;align-items:center}.brand{font-family:Georgia,serif;font-size:29px;letter-spacing:-1px;display:flex;gap:12px;align-items:center}.brand-mark{border:1px solid #658c76;border-radius:50%;width:37px;height:37px;text-align:center;line-height:31px;font-style:italic;color:#658c76}.brand-ko{font:12px "Malgun Gothic",sans-serif;color:#738176;letter-spacing:0;margin-left:7px}nav{display:flex;gap:30px;align-items:center;font-size:14px}.text-btn,.text-link{background:none;border:0;color:#315644;padding:10px 0}.text-link{font-weight:700;border-bottom:1px solid #8b9f8a}.hero{max-width:1300px;margin:16px auto 70px;padding:30px 40px;display:grid;grid-template-columns:1fr 1.05fr;gap:38px;align-items:center}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:#6c8573}.hero h1{font-family:Batang,Georgia,serif;font-weight:400;font-size:57px;line-height:1.35;letter-spacing:-3px;margin:25px 0}.period{color:#a57f47}.hero-copy>p{font-size:17px;color:#748073;line-height:1.95;margin:0 0 30px}.primary,.secondary{border:0;border-radius:100px;padding:15px 29px;min-height:50px;font-size:15px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:38px}.primary{background:#385c46;color:#fffdf4}.primary:hover{background:#264935}.secondary{background:#e5eadd;color:#31543e}.fine{font-size:11px;color:#788374;margin-top:14px}.preview-badge{font-size:11px;color:#71816f;margin-top:32px;display:flex;gap:8px;align-items:center}.preview-badge span{width:6px;height:6px;border-radius:100%;background:#8b9c67}.hero-scene{position:relative;height:488px;background:#e7eddf;overflow:hidden;border-radius:220px 220px 28px 28px;isolation:isolate}.sun{width:74px;height:74px;position:absolute;background:#f6efd7;top:54px;right:105px;border-radius:50%}.hill{position:absolute;left:-20%;width:140%;height:230px;border-radius:50% 60% 0 0;transform:rotate(-8deg)}.far{background:#c2d0b9;top:144px}.near{background:#a7bda4;top:207px;transform:rotate(7deg)}.water{position:absolute;bottom:0;height:209px;background:#d3dfce;width:100%}.floating-otter{position:absolute;width:78%;left:11%;top:203px;z-index:3;animation:float 7s ease-in-out infinite}.ripple{position:absolute;border:1px solid #a6bca2;border-radius:50%;width:77%;height:83px;left:11%;top:291px}.r2{width:88%;left:6%;top:280px;height:112px;border-color:#bacab1}.scene-caption{position:absolute;bottom:32px;text-align:center;width:100%;font-family:Batang,serif;font-size:20px;color:#54735c;z-index:4}.scene-caption small{display:block;font:8px sans-serif;letter-spacing:2px;margin-top:13px}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:28px}.section-head h2,h2{font-family:Batang,Georgia,serif;font-weight:400;letter-spacing:-1px;font-size:30px;line-height:1.6;margin:12px 0}.section-head p{font-size:13px;color:#7c8677}.sounds-section{max-width:1300px;padding:0 40px;margin:0 auto 85px}.sound-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.sound-card{border:0;background:none;text-align:left;padding:0;color:inherit}.sound-art{height:170px;overflow:hidden;border-radius:12px;position:relative;background:#e4ead9}.sound-art i,.sound-art b{position:absolute;left:-10%;width:120%;height:170px;top:83px;background:#91ad91;border-radius:50% 70% 0 0;transform:rotate(-12deg)}.sound-art b{top:125px;background:#6f947d;transform:rotate(10deg)}.art-sun{width:39px;height:39px;border-radius:50%;position:absolute;right:59px;top:29px;background:#fff5d9}.rain{background:#c8d5d0}.rain i{background:#92ada0}.rain b{background:#728f81}.rain:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(110deg,transparent 0,transparent 23px,#eff3e566 24px,transparent 25px)}.night{background:#304c46}.night i{background:#52766a}.night b{background:#416052}.night .art-sun{background:#e8dab3}.play-icon{position:absolute;bottom:15px;right:15px;border-radius:50%;background:#faf9e9e8;width:39px;height:39px;text-align:center;line-height:39px;font-size:12px;z-index:2}.sound-details{padding:17px 4px}.sound-details span{font-size:9px;color:#83917c;letter-spacing:1.5px}.sound-details h3{font-size:19px;font-weight:500;margin:4px 0}.sound-details p{font-size:12px;color:#7e8879;margin:0}.content-note{font-size:10px;color:#889180}.journey-intro{background:#f0f1e7;padding:65px max(40px,calc((100vw - 1220px)/2));display:grid;grid-template-columns:1.2fr 1fr;gap:80px}.journey-intro h2{font-size:35px}.journey-intro p{font-size:13px;color:#778272}.journey-intro ol{list-style:none;padding:0;margin:0}.journey-intro li{display:flex;gap:25px;padding:16px 0;border-bottom:1px solid #dce1d2}.journey-intro li:last-child{border:0}.journey-intro li>span{font:20px Georgia,serif;color:#9aab8c;padding-top:4px}.journey-intro h3{font-size:16px;font-weight:500;margin:0}.journey-intro li p{margin:3px 0;font-size:12px}.membership{max-width:1060px;margin:75px auto;display:flex;align-items:center;justify-content:center;gap:85px;padding:0 40px}.membership img{width:155px;height:250px;object-fit:contain}.membership p{color:#778272;font-size:13px}.membership small{display:block;color:#889180;font-size:10px;margin-top:13px}footer{border-top:1px solid #e1e4d7;padding:38px 40px 95px;max-width:1220px;margin:auto}footer .brand{font-size:24px}footer p{font-size:12px;color:#7d8877}.legal{font-size:10px;line-height:1.9}footer>span{font-size:10px;color:#98a08f}dialog{border:0;border-radius:22px;width:min(600px,calc(100% - 28px));padding:0;background:#faf8f1;color:#294339;max-height:90dvh;overflow-y:auto;box-shadow:0 25px 120px #1d332433}dialog::backdrop{background:#20362988;backdrop-filter:blur(3px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;padding:17px 24px;border-bottom:1px solid #e5e8dc}.dialog-top strong{font-family:Georgia,"Malgun Gothic",serif;font-size:19px}.dialog-top strong span{font-size:11px;font-weight:400;margin-left:12px}.close{border:0;background:none;min-width:44px;min-height:44px;font-size:28px;color:#61745e}.demo-note{font-size:10px;background:#eef1e5;padding:10px 24px;color:#78856e}.steps{display:flex;padding:24px 28px 0;gap:10px}.steps span{font-size:10px;flex:1;border-top:3px solid #dbe2d2;padding-top:7px;color:#95a08b}.steps .active{border-color:#527450;color:#365533}#stage-content{padding:20px 28px 30px;min-height:390px}#stage-content h2{font-size:27px;margin:5px 0 12px}#stage-content p{font-size:14px;color:#73816b}.session-art{height:150px;background:#e3eada;border-radius:14px;text-align:center;margin:20px 0;overflow:hidden}.session-art img{height:130px;width:245px;object-fit:contain;position:relative;top:9px}.timer{font:30px Georgia,serif;text-align:center;letter-spacing:3px;margin:12px}.audio-controls{display:flex;justify-content:center;align-items:center;gap:20px;margin:10px 0 23px}.audio-controls button{border:0;background:#e2e8d8;border-radius:100px;padding:9px 27px;min-height:44px}.audio-controls select{border:1px solid #cdd7c2;border-radius:8px;background:#faf8f1;padding:9px;color:#4c6744;min-height:44px}textarea{font:14px "Malgun Gothic",sans-serif;width:100%;min-height:130px;resize:vertical;border:1px solid #d4dcc8;border-radius:13px;padding:15px;background:#fffdf7;color:#3d5135;line-height:1.8;margin:12px 0}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.chips button{background:#eaf0e2;border:0;border-radius:30px;padding:8px 13px;font-size:12px;min-height:44px}.notice{background:#ecefe2;border-radius:12px;padding:16px;font-size:12px!important;line-height:1.9}.plain-dialog{padding:27px}.plain-dialog h2{font-size:25px}.plain-dialog p,.plain-dialog li{font-size:14px;color:#76816b}.plain-dialog ul{padding-left:21px}.mini-player{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#385a45;color:#fffdf2;border-radius:16px;padding:12px 17px;width:min(380px,calc(100% - 30px));display:flex;gap:15px;align-items:center;box-shadow:0 8px 30px #294f3922;z-index:5}.mini-player[hidden]{display:none}.mini-player>div{flex:1}.mini-player strong{font-size:13px}.mini-player small{display:block;font-size:9px;color:#c7d6ba}.mini-player button{background:none;border:0;color:#fff;font-size:22px;width:44px;height:44px}.error{color:#995236;font-size:12px;min-height:20px}.wide{width:100%;margin-top:10px}@keyframes float{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(8px) rotate(1deg)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}@media(max-width:700px){header{padding:20px 22px}.brand{font-size:24px}.brand-ko,.brand-mark,nav>a{display:none}nav{gap:0}.text-btn{font-size:12px;min-height:44px}.hero{padding:15px 24px;margin:0 auto 40px;grid-template-columns:1fr;gap:28px}.hero h1{font-size:42px;margin:16px 0;letter-spacing:-2px}.hero-copy>p{font-size:14px;margin-bottom:22px}.hero-scene{height:338px;border-radius:160px 160px 20px 20px}.hero-scene .sun{width:52px;height:52px;top:35px;right:65px}.far{top:95px}.near{top:153px}.water{height:143px}.floating-otter{top:143px;width:83%;left:8%}.ripple{top:216px;height:55px}.r2{top:201px;height:82px}.scene-caption{font-size:17px;bottom:25px}.preview-badge{margin-top:19px;font-size:10px}.eyebrow{font-size:9px;letter-spacing:1.4px}.sounds-section{padding:0 24px;margin-bottom:40px}.section-head{display:block;margin-bottom:19px}.section-head h2{font-size:24px}.section-head p{font-size:12px;margin-top:0}.sound-grid{grid-template-columns:1fr;gap:10px}.sound-card{display:grid;grid-template-columns:110px 1fr;gap:12px;align-items:center}.sound-art{height:96px;border-radius:9px}.sound-art i{top:44px}.sound-art b{top:70px}.art-sun{right:16px;top:13px;width:21px;height:21px}.play-icon{width:27px;height:27px;line-height:27px;font-size:8px;right:9px;bottom:9px}.sound-details h3{font-size:17px}.sound-details p{font-size:11px}.content-note{font-size:9px;margin-top:20px}.journey-intro{padding:40px 24px;grid-template-columns:1fr;gap:24px}.journey-intro h2{font-size:28px}.journey-intro p{font-size:12px}.membership{padding:0 24px;margin:40px auto;gap:18px}.membership img{width:78px;height:180px}.membership h2{font-size:24px}.membership p{font-size:11px}.membership small{font-size:9px}.membership .eyebrow{font-size:8px;letter-spacing:1px}.secondary{font-size:13px;padding:12px 22px}footer{padding:30px 24px 100px}#stage-content{padding:20px}.dialog-top{padding:12px 18px}.demo-note{padding:9px 18px}.steps{padding:18px 20px 0}.steps span{font-size:9px}.plain-dialog{padding:22px}.primary{font-size:14px}.session-art{height:135px}}
/* Keep the whole floating character above the caption on every screen. */
.floating-otter{width:66%;left:17%;top:183px}
.scene-caption{bottom:23px}
@media(max-width:700px){.floating-otter{width:68%;left:16%;top:144px}.scene-caption{bottom:19px;font-size:15px}.scene-caption small{font-size:7px;margin-top:9px}.membership h2{font-size:21px;letter-spacing:-1.2px}}

.floating-otter{top:135px}@media(max-width:700px){.floating-otter{top:110px}}

.chat{max-height:260px;overflow-y:auto;display:flex;flex-direction:column;gap:9px;margin:14px 0 4px;padding:4px 2px}
.bubble{max-width:86%;padding:11px 15px;border-radius:16px;font-size:14px;line-height:1.75;white-space:pre-wrap}
.bubble.naru{background:#e9eee0;color:#30483a;border-bottom-left-radius:5px;align-self:flex-start}
.bubble.me{background:#385c46;color:#fffdf4;border-bottom-right-radius:5px;align-self:flex-end}
.bubble.typing{color:#7c8b74;font-style:italic}
.chat-actions{display:grid;grid-template-columns:1fr 1.3fr;gap:10px;margin-top:6px}
.chat-actions button{width:100%;gap:8px}
.chat-actions button:disabled{opacity:.55;cursor:wait}
#stage-content textarea{min-height:84px}
.ai-note{font-size:10px!important;color:#8a9583!important;margin-top:12px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

.voice-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:6px 0 4px}
.mic{display:inline-flex;align-items:center;gap:10px;border:0;border-radius:100px;background:#eef1e5;color:#2f5140;padding:12px 20px;min-height:50px;font-size:14px;font-weight:700}
.mic .mic-dot{width:14px;height:14px;border-radius:50%;background:#5f8a6c;box-shadow:0 0 0 0 #5f8a6c66}
.mic.on{background:#385c46;color:#fffdf4}
.mic.on .mic-dot{background:#f2c9a4;animation:pulse 1.2s infinite}
.mic:disabled{opacity:.6;cursor:wait}
@keyframes pulse{0%{box-shadow:0 0 0 0 #f2c9a488}100%{box-shadow:0 0 0 14px #f2c9a400}}
.speak-toggle{font-size:12px;color:#61745e;display:flex;gap:6px;align-items:center;min-height:44px}
.volume{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:#f1f3ea;border-radius:12px;padding:10px 14px;margin:10px 0}
.volume label{display:flex;flex-direction:column;font-size:11px;color:#6c7b66;gap:2px}
input[type=range]{accent-color:#385c46;width:100%;min-height:30px}
.mini-vol{width:90px;flex:none;accent-color:#d9e7cf}
@media(max-width:700px){.volume{grid-template-columns:1fr}.mini-vol{width:70px}}

@media(max-width:700px){.chat-actions{grid-template-columns:1fr 1.5fr}.chat-actions button{font-size:13px;padding:12px 10px;white-space:nowrap}.mic{flex:1;justify-content:center}}

.hero-actions{display:flex;gap:10px;flex-wrap:wrap}
.hero-actions .primary{gap:10px}
#call{width:min(440px,100%);max-height:100dvh;height:min(820px,100dvh);border-radius:28px;background:#24413a;color:#f4f1e6;display:flex;flex-direction:column;padding:0}
#call:not([open]){display:none}
.call-top{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;font-size:13px;color:#c8d6c4}
.call-brand{font-family:Georgia,serif;font-size:17px;color:#f4f1e6}
#call .close{color:#c8d6c4}
.call-body{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:0 26px}
.call-ring{--lvl:0;width:168px;height:168px;border-radius:50%;background:#e6ecdc;display:grid;place-items:center;box-shadow:0 0 0 calc(6px + var(--lvl)*26px) #a8c3a42e,0 0 0 calc(18px + var(--lvl)*40px) #a8c3a414;transition:box-shadow .08s}
.call-ring img{width:120px;height:150px;object-fit:contain;margin-top:6px}
#call[data-state=speaking] .call-ring{animation:breathe 2.6s ease-in-out infinite}
#call[data-state=thinking] .call-ring{opacity:.8}
@keyframes breathe{50%{transform:scale(1.04)}}
#call h2{font-family:Batang,serif;font-size:26px;margin:22px 0 2px;color:#f4f1e6}
.call-status{font-size:13px;color:#b9cdb4;min-height:22px;margin:0}
.call-line{font-family:Batang,serif;font-size:17px;line-height:1.75;color:#f8f5ea;min-height:62px;margin:18px 0 6px}
.call-you{font-size:12px;color:#9fb59c;min-height:18px;margin:0}
.call-error{font-size:12px;color:#f2c9a4;min-height:18px;margin:6px 0 0}
.call-settings{display:grid;grid-template-columns:1fr 1fr;gap:8px 14px;padding:10px 22px;font-size:11px;color:#b9cdb4}
.call-settings label{display:flex;flex-direction:column;gap:2px}
.call-settings input{accent-color:#d9e7cf}
.call-pick{grid-column:1/-1;flex-direction:row!important;align-items:center;gap:10px!important}
.call-pick select{flex:1;background:#2f4f46;color:#f4f1e6;border:1px solid #4d6c61;border-radius:8px;padding:8px;min-height:40px}
.call-actions{display:flex;justify-content:center;gap:28px;padding:12px 0 6px}
.call-btn{width:68px;height:68px;border-radius:50%;border:0;font-size:24px;color:#fff}
.call-btn.end{background:#c4523f}
.call-btn.again{background:#4f8a62;display:none}
#call[data-state=idle] .call-btn.again{display:block}
#call[data-state=idle] .call-btn.end{display:none}
.call-note{font-size:10px;color:#93a98f;text-align:center;padding:0 22px 18px;line-height:1.7;margin:0}
@media(max-width:700px){#call{border-radius:0;height:100dvh;width:100%;max-width:100%;margin:0}.call-ring{width:140px;height:140px}.call-ring img{width:100px;height:125px}.hero-actions button{flex:1}}
