:root{--ink:#2f4238;--deep:#174b3b;--green:#3e765a;--cream:#fff9eb;--paper:#fffef8;--coral:#ee806b;--line:#dce7cf;--shadow:0 24px 70px #29483624}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;word-break:keep-all;overflow-wrap:break-word;background:var(--cream);color:var(--ink);font-family:"Gowun Dodum",system-ui,sans-serif;font-size:17px;line-height:1.7;overflow-x:hidden}button,a{font:inherit}.skip{position:fixed;top:-80px;left:16px;background:#fff;padding:12px;z-index:99}.skip:focus{top:12px}header{height:84px;padding:0 clamp(22px,5vw,76px);display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:10;width:100%}.brand{color:var(--deep);display:flex;align-items:center;gap:10px;text-decoration:none;font:1.3rem Jua}.brand b{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--coral);color:white}nav{display:flex;gap:34px}nav a,.head-cta{text-decoration:none;font-weight:700}nav a{color:var(--ink)}nav a:hover{color:var(--coral)}.head-cta{background:var(--deep);color:white;padding:10px 18px;border-radius:8px}.hero{min-height:780px;height:100vh;max-height:980px;background:linear-gradient(90deg,#fff9ebfa 0%,#fff9ebb8 43%,#fff9eb0d 76%),url("assets/hero-meadow.webp") center/cover;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:110px clamp(24px,8vw,140px);position:relative;overflow:hidden}.hero:after{content:"";position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(transparent,var(--cream))}.hero-copy{z-index:2;max-width:680px}.eyebrow{font-size:.78rem;font-weight:900;letter-spacing:.18em;color:var(--coral);margin:0 0 18px}.hero h1,.section h2{font-family:Jua;font-weight:400;letter-spacing:-.035em}.hero h1{font-size:clamp(3.5rem,6.3vw,6.7rem);line-height:1.04;margin:0 0 26px;color:#29473b}.hero h1 em{font-style:normal;color:var(--coral)}.lead{font-size:clamp(1.05rem,1.5vw,1.35rem)}.actions{display:flex;align-items:center;gap:28px;margin-top:30px}.button{display:inline-block;background:var(--deep);color:#fff;padding:15px 25px;border-radius:10px;text-decoration:none;font-weight:800;box-shadow:0 12px 30px #174b3b38}.link{color:var(--deep);font-weight:800;text-underline-offset:6px}.proof{display:flex;align-items:center;gap:20px;margin-top:45px;font-size:.85rem}.proof strong{display:block;font:1.65rem/1 Jua;color:var(--green)}.proof i{width:1px;height:30px;background:#b9c9b6}.hero-art{z-index:2;justify-self:end;width:min(45vw,560px);aspect-ratio:1;display:grid;place-items:center;position:relative}.hero-main{position:relative;width:60%;margin-top:8%;z-index:3;filter:drop-shadow(0 24px 20px #4f422f38);animation:float 4s ease-in-out infinite}.orbit{position:absolute;width:80%;aspect-ratio:1;border-radius:50%;background:#fff1bdbf;box-shadow:0 0 0 24px #ffffff3d,0 0 0 68px #ffffff20}.steps,.level{position:absolute;z-index:3;background:#ffffffe8;padding:10px 15px;border-radius:12px;box-shadow:0 10px 28px #2b45351f;font-weight:800}.steps{left:0;top:24%}.level{right:0;bottom:20%;color:var(--coral)}.section{padding:clamp(85px,10vw,150px) clamp(24px,8vw,140px)}.heading{text-align:center;max-width:680px;margin:0 auto 70px}.section h2{font-size:clamp(2.7rem,5vw,4.8rem);line-height:1.12;margin:0 0 22px;color:var(--deep)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;max-width:1220px;margin:auto}.cards article{position:relative;background:var(--paper);border:1px solid var(--line);padding:34px;border-radius:26px;box-shadow:0 15px 45px #314b3a12}.cards article:nth-child(2){transform:translateY(-25px);background:#edf4e5}.cards article>span{position:absolute;right:25px;top:15px;font:3.4rem Jua;color:#3e765a1f}.card-art{display:block;width:84px;height:84px;object-fit:contain;filter:drop-shadow(0 10px 10px #4f422f24)}.cards h3{font:1.55rem Jua;color:var(--deep);margin:20px 0 8px}.evolution{display:grid;grid-template-columns:.75fr 1.25fr;gap:6vw;align-items:center;background:#e8f1df}.tabs{display:grid;margin-top:34px;border-top:1px solid #bfd0b4}.tabs button{display:flex;gap:18px;background:none;border:0;border-bottom:1px solid #bfd0b4;padding:17px 6px;text-align:left;color:#718074;cursor:pointer}.tabs button.active{color:var(--deep);font-weight:900;padding-left:14px;border-bottom-color:var(--coral)}.tabs span{font:1.2rem Jua}.caption{display:flex;justify-content:space-between;padding:16px 8px}.caption span,.meta>span{font-size:.72rem;letter-spacing:.15em;color:var(--coral);font-weight:900}.caption strong{font:1.4rem Jua;color:var(--deep)}.collection{background:#fffdf6}.collection-head{display:flex;justify-content:space-between;align-items:end;max-width:1250px;margin:0 auto 42px}.picker{display:flex;gap:8px;overflow:auto;padding-bottom:16px;max-width:1250px;margin:auto}.picker button{border:1px solid var(--line);background:white;padding:10px 16px;border-radius:8px;white-space:nowrap;cursor:pointer;color:#52665a}.picker small{display:block;font-size:.7rem}.picker .active{background:var(--deep);color:white}.feature{max-width:1250px;margin:18px auto 0;display:grid;grid-template-columns:280px 1fr;background:#f2f6e9;border-radius:30px;overflow:hidden;box-shadow:var(--shadow)}.meta{padding:38px 32px;display:flex;flex-direction:column;justify-content:center}.meta h3{font:2.6rem Jua;color:var(--deep);margin:8px 0}.controls{display:flex;align-items:center;gap:15px;margin-top:28px}.controls button{width:42px;height:42px;border:1px solid #b8cab3;background:transparent;border-radius:50%;cursor:pointer}.controls span{font-size:.8rem}.daily{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.daily-art{min-height:510px;display:grid;place-items:center;position:relative}.daily-art span{position:absolute;width:80%;aspect-ratio:1;border:1px solid #b9d49d;border-radius:50%;box-shadow:0 0 0 70px #f4c9b022}.daily-main{width:min(62%,380px);z-index:2;filter:drop-shadow(0 24px 20px #42533235)}.daily-copy ul{list-style:none;padding:0;margin-top:35px}.daily-copy li{display:flex;gap:20px;padding:18px 0;border-top:1px solid var(--line)}.daily-copy li>b{color:var(--coral)}.daily-copy strong{font:1.25rem Jua;color:var(--deep)}.daily-copy li p{margin:2px 0}.download{padding-top:30px}.download-inner{max-width:1280px;margin:auto;background:var(--deep);color:white;text-align:center;padding:90px 25px;border-radius:38px}.download h2{color:white}.button.light{background:white;color:var(--deep);margin-top:15px}footer{padding:50px clamp(24px,8vw,140px);display:grid;grid-template-columns:1fr auto;gap:25px;border-top:1px solid var(--line);background:#fffdf6}.footer-links{display:flex;gap:24px;align-items:center}.footer-links a{color:var(--ink);text-decoration:none}.footer-links a:hover{color:var(--coral)}footer small{grid-column:1/-1;color:#849087}.reveal{opacity:0;transform:translateY(22px);transition:.7s}.reveal.visible{opacity:1;transform:none}@keyframes float{50%{transform:translateY(-14px) rotate(1deg)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
@media(max-width:900px){nav{display:none}.hero{height:auto;min-height:850px;grid-template-columns:1fr;padding-top:125px;background-position:62% center}.hero-art{position:absolute;right:-4vw;bottom:45px;width:55vw}.cards,.evolution,.daily{grid-template-columns:1fr}.cards article:nth-child(2){transform:none}.collection-head{display:block}.feature{grid-template-columns:1fr}.meta{padding:28px}.monster-image{min-height:330px}.daily-art{order:2}footer{grid-template-columns:1fr}}
@media(max-width:600px){body{font-size:16px}header{height:70px;padding:0 18px}.head-cta{font-size:.8rem;padding:8px 11px}.hero{min-height:790px;padding:110px 22px 80px;background:linear-gradient(#fff9ebea,#fff9eb42),url("assets/hero-meadow.webp") 62% center/cover}.hero h1{font-size:3.2rem}.actions{align-items:flex-start;flex-direction:column;gap:15px}.proof{gap:12px;font-size:.72rem}.hero-art{width:68vw;right:-8vw;bottom:30px}.level{display:none}.section{padding:78px 20px}.section h2{font-size:2.75rem}.heading{text-align:left;margin-bottom:40px}.evo-window{border-radius:20px}.collection-head{margin-bottom:28px}.feature{border-radius:20px}.monster-image{min-height:250px}.daily-art{min-height:370px}.download{padding:20px 14px 65px}.download-inner{padding:65px 18px;border-radius:24px}.footer-links{flex-wrap:wrap}}

.store-row{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:30px 0 10px}
.store{display:flex;align-items:center;gap:12px;min-width:190px;padding:12px 18px;border:1px solid #ffffff66;border-radius:12px;background:#ffffff12;text-align:left}
.store>b{font-size:1.45rem;color:#fff}.store i{font-style:normal;font-weight:800;line-height:1.25}.store small{display:block;font-size:.76rem;font-weight:400;color:#dce9e3;margin-top:3px}
@media(max-width:600px){.store{min-width:165px}}

/* 매일의 걸음이 몬스터의 성장 기록으로 보이는 월간 달력 */
.walk-calendar{background:#f4eadc;display:grid;grid-template-columns:minmax(300px,.8fr) minmax(520px,1.35fr) minmax(250px,.7fr);gap:28px;align-items:center;padding-left:clamp(24px,5vw,80px);padding-right:clamp(24px,5vw,80px)}
.calendar-intro h2{font-size:clamp(2.5rem,3vw,3.3rem);line-height:1.08}
.calendar-intro>p:last-of-type{max-width:470px}
.month-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:34px}
.month-summary div{padding:15px 12px;border:1px solid #ddcfbb;border-radius:16px;background:#fff9eeaa}
.month-summary span{display:block;font-size:.76rem;color:#7c766c;white-space:nowrap}
.month-summary strong{display:block;margin-top:3px;font:1.15rem Jua;color:var(--deep);white-space:nowrap}
.calendar-card,.step-editor{background:#fffdf7;border:1px solid #e4d8c6;border-radius:30px;box-shadow:0 22px 60px #56452a17}
.calendar-card{padding:26px}
.calendar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.calendar-head h3{margin:0;font:1.65rem Jua;color:var(--deep)}
.calendar-head button{width:42px;height:42px;border:1px solid #d9cebc;border-radius:50%;background:#fffaf0;color:var(--deep);cursor:pointer;font-weight:900}
.calendar-head button:hover,.calendar-head button:focus-visible{background:#e6efda;outline:2px solid #77a288;outline-offset:2px}
.weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.weekdays{margin-bottom:6px;color:#847d72;font-size:.8rem;text-align:center;font-weight:800}
.weekdays span:first-child{color:#d46f61}
.calendar-day{position:relative;min-height:70px;padding:8px 6px;border:0;border-radius:14px;background:transparent;text-align:left;color:var(--ink);cursor:pointer}
.calendar-day:hover,.calendar-day:focus-visible{background:#edf3e5;outline:2px solid #7b9d82;outline-offset:0}
.calendar-day.outside{opacity:.25}
.calendar-day.future{color:#aaa59d;cursor:default}
.calendar-day.selected{background:#fff1d8;box-shadow:inset 0 0 0 2px var(--coral)}
.calendar-day.today .day-number{background:var(--deep);color:white}
.day-number{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;font-size:.8rem;font-weight:900}
.day-steps{position:absolute;left:7px;right:7px;bottom:7px;font-size:.66rem;line-height:1.1;color:#5c7565;text-align:center;white-space:nowrap}
.calendar-day.has-steps{background:#eff5e8}
.calendar-day.goal{background:#dcebcf}
.calendar-day.goal:after{content:"★";position:absolute;right:7px;top:6px;color:#e99556;font-size:.72rem}
.calendar-legend{display:flex;align-items:center;gap:15px;margin-top:17px;color:#777066;font-size:.72rem;flex-wrap:wrap}
.calendar-legend span{display:flex;align-items:center;gap:5px}.calendar-legend i{width:10px;height:10px;border-radius:3px;background:#eff5e8}.calendar-legend span:nth-child(2) i{background:#dcebcf}
.calendar-legend b{margin-left:auto;font-weight:800;color:var(--deep)}
.step-editor{padding:26px}
.editor-date{padding-bottom:20px;margin-bottom:22px;border-bottom:1px solid #e7dece}
.editor-date span{display:block;color:var(--coral);font-weight:900;font-size:.82rem}.editor-date strong{display:block;margin-top:4px;font:1.45rem Jua;color:var(--deep)}
.step-editor label{display:block;font-weight:900;margin-bottom:7px}
.step-input{display:flex;align-items:center;border:2px solid #d8ccb9;border-radius:14px;background:white;padding:0 14px;transition:.2s}
.step-input:focus-within{border-color:var(--green);box-shadow:0 0 0 4px #3e765a18}
.step-input input{width:100%;border:0;outline:0;padding:13px 0;background:transparent;font:1.65rem Jua;color:var(--deep)}
.step-input span{white-space:nowrap;font-weight:800;color:#777066}
.goal-progress{margin:18px 0 22px}.goal-progress>span{display:block;height:9px;background:#e7e1d6;border-radius:999px;overflow:hidden}.goal-progress i{display:block;width:0;height:100%;background:linear-gradient(90deg,#70a06f,#ef976b);border-radius:inherit;transition:width .35s}.goal-progress small{display:block;margin-top:7px;color:#777066}
.step-editor .button{width:100%;border:0;cursor:pointer;padding:13px 16px}
.save-message{min-height:1.7em;margin:9px 0 0;text-align:center;color:var(--green);font-size:.83rem;font-weight:800}
@media(max-width:1180px){.walk-calendar{grid-template-columns:minmax(240px,.65fr) minmax(520px,1.35fr)}.step-editor{grid-column:1/-1;display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:18px;align-items:end}.editor-date{margin:0;padding:0;border:0}.goal-progress{margin:0}.step-editor label{position:absolute;clip:rect(0 0 0 0)}.save-message{grid-column:1/-1}}
@media(max-width:900px){.walk-calendar{grid-template-columns:1fr}.step-editor{grid-column:auto;display:block}.editor-date{padding-bottom:20px;margin-bottom:22px;border-bottom:1px solid #e7dece}.step-editor label{position:static;clip:auto}.goal-progress{margin:18px 0 22px}}
@media(max-width:600px){.walk-calendar{padding-left:14px;padding-right:14px}.calendar-intro{padding:0 6px}.month-summary{gap:5px}.month-summary div{padding:12px 7px}.month-summary span{font-size:.68rem}.month-summary strong{font-size:1rem}.calendar-card{padding:17px 10px;border-radius:22px}.calendar-day{min-height:57px;padding:5px 3px;border-radius:10px}.day-number{width:24px;height:24px}.day-steps{font-size:.56rem;left:2px;right:2px;bottom:5px}.calendar-day.goal:after{right:4px;top:3px}.calendar-legend b{width:100%;margin-left:0}.step-editor{border-radius:22px}}

/* 랜딩 그림: 앱의 몬스터·알·아이콘(scripts/prepare-website-images.cjs로 생성)을 섹션마다 배치한다 */
img{height:auto}
.hero-art{width:min(46vw,600px)}
.friend,.hero-egg{position:absolute;filter:drop-shadow(0 16px 14px #4f422f30)}
.friend{z-index:2;width:40%;animation:float 4.6s ease-in-out infinite}
.friend-cat{left:-3%;bottom:14%;animation-delay:-1.4s}
.friend-rabbit{right:-3%;bottom:17%;width:36%;animation-delay:-2.8s}
.hero-egg{z-index:4;width:12%;left:27%;bottom:12%;animation:wobble 3.2s ease-in-out infinite;transform-origin:50% 90%}
.steps,.level{display:flex;align-items:center;gap:7px}.steps img,.level img{width:26px;height:26px;object-fit:contain}
.steps{left:2%;top:9%}.level{right:2%;top:17%;bottom:auto}
@keyframes wobble{0%,70%,100%{transform:rotate(0)}78%{transform:rotate(-7deg)}86%{transform:rotate(6deg)}93%{transform:rotate(-3deg)}}

.evolution{grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr)}
.evo-copy h2{font-size:clamp(2.7rem,4vw,4rem)}
.tabs button small{margin-left:auto;font-size:.8rem;color:#8a978c}
.tabs button.active small{color:var(--coral)}
.evo-window{display:flex;align-items:flex-end;justify-content:center;padding:48px 22px 36px;border-radius:34px;background:linear-gradient(#fffdf2c8,#fffdf266 52%,#fffdf200),url("assets/scene-meadow.webp") center 72%/cover;box-shadow:var(--shadow);overflow:hidden}
.evo-figure{flex:1 1 0;min-width:0;padding:0;border:0;background:none;cursor:pointer;opacity:.55;filter:saturate(.75);transition:flex-grow .4s,opacity .35s,filter .35s}
.evo-figure img{display:block;width:100%;height:auto;filter:drop-shadow(0 18px 14px #3d4a2c40)}
.evo-figure.active{flex-grow:1.8;opacity:1;filter:none}
.evo-figure:hover{opacity:.9}
.evo-figure:focus-visible{outline:3px solid var(--coral);outline-offset:4px;border-radius:24px}
.evo-arrow{flex:none;align-self:center;width:30px;margin:0 4px 6%;opacity:.8}
.caption span{align-self:center}

.picker button{display:flex;align-items:center;gap:9px;padding:7px 15px 7px 7px;text-align:left}
.picker button img{width:44px;height:44px;border-radius:50%;background:#f2f6e9;object-fit:contain}
.picker .active img{background:#ffffff26}
.egg-note{display:flex;align-items:center;gap:12px;margin-top:20px;padding:9px 14px 9px 9px;border:1px solid var(--line);border-radius:16px;background:#fffdf6}
.egg-note img{width:52px;height:52px;object-fit:contain}
.egg-note small{font-size:.8rem;line-height:1.45;color:#5f7064}
.monster-image{display:flex;align-items:flex-end;justify-content:center;gap:1%;min-height:430px;padding:56px 30px 30px;background:linear-gradient(#f2f6e9f2,#f2f6e9a0 48%,#f2f6e91a),url("assets/scene-riverside.webp") center 78%/cover}
.monster-image figure{flex:1 1 0;min-width:0;margin:0;text-align:center}
.monster-image figure:nth-child(1) img{transform:scale(.86)}.monster-image figure:nth-child(2) img{transform:scale(.95)}.monster-image figure:nth-child(3) img{transform:scale(1.06)}
.monster-image img{display:block;width:100%;height:auto;transform-origin:50% 100%;filter:drop-shadow(0 16px 12px #3d4a2c38);transition:opacity .25s}
.monster-image.changing img{opacity:0}
.monster-image figcaption{display:inline-block;margin-top:8px;padding:3px 13px;border-radius:999px;background:#fffdf6e8;font:.95rem Jua;color:var(--deep);box-shadow:0 4px 12px #314b3a14}

.step-editor{position:relative}
.editor-mascot{position:absolute;right:12px;top:-74px;width:112px;filter:drop-shadow(0 12px 10px #56452a2e);pointer-events:none}

.daily-art span{background:#fffaf0}
.reward{position:absolute;z-index:3;width:clamp(50px,6.5vw,82px);filter:drop-shadow(0 10px 10px #4f422f2e);animation:float 5s ease-in-out infinite}
.reward-berry{left:9%;top:14%}.reward-coin{right:11%;top:9%;animation-delay:-1.2s}.reward-heart{right:5%;bottom:24%;animation-delay:-2.5s}.reward-gift{left:5%;bottom:15%;animation-delay:-3.7s}
.daily-copy li{align-items:flex-start}
.daily-copy li>b{flex:none;display:grid;place-items:center;width:54px;height:54px;border-radius:17px;background:#fff1da}
.daily-copy li>b img{width:32px;height:32px;object-fit:contain}

.download-inner{position:relative;overflow:hidden;padding-bottom:26px}
.download-inner>*{position:relative;z-index:1}
.download-inner:after{content:"";position:absolute;left:-12%;right:-12%;bottom:-150px;height:240px;border-radius:50%;background:#2b6a51}
.cta-friends{display:flex;justify-content:center;align-items:flex-end;max-width:860px;margin:44px auto 0}
.cta-friends img{width:13%;margin:0 -.6%;filter:drop-shadow(0 12px 10px #0b2a2050)}
.cta-friends .lead-friend{width:17%}

@media(max-width:900px){
.evolution{grid-template-columns:1fr}.evo-copy h2{font-size:clamp(2.7rem,8vw,4rem)}
.hero{min-height:0;max-height:none;padding-bottom:70px}
.hero-art{position:relative;right:auto;bottom:auto;justify-self:center;width:min(78vw,520px);margin-top:28px}
.walk-calendar .step-editor{margin-top:56px}
.monster-image{min-height:0}
}
@media(max-width:1180px) and (min-width:901px){.walk-calendar .step-editor{margin-top:56px}}
@media(max-width:600px){
.hero{padding-bottom:40px}
.hero-art{width:min(96vw,420px);margin-top:18px}
.steps{top:3%;left:0;font-size:.78rem}.level{display:none}
.evo-window{min-height:0;padding:44px 10px 26px;border-radius:22px}
.evo-arrow{width:20px}
.monster-image{padding:40px 10px 20px}
.monster-image figcaption{font-size:.78rem;padding:2px 9px}
.egg-note{margin-top:14px}
.editor-mascot{width:88px;top:-58px}
.daily-art{min-height:380px}
.cta-friends{margin-top:34px}
.cta-friends img{width:19%}.cta-friends .lead-friend{width:25%}
.cta-friends img:first-child,.cta-friends img:last-child{display:none}
.download-inner:after{bottom:-170px}
}

/* 개인정보처리방침·계정 삭제 같은 안내 페이지(body.doc). 랜딩의 겹쳐 띄운 헤더 대신 일반 문서 흐름으로 보여준다 */
.doc header{position:static;height:auto;min-height:76px;max-width:900px;margin:0 auto;padding:14px 22px;flex-wrap:wrap;gap:8px 24px;border-bottom:1px solid var(--line)}
.doc nav{display:flex;flex-wrap:wrap;gap:6px 20px;font-size:.92rem}
.doc main{max-width:900px;margin:0 auto;padding:44px 22px 70px}
.doc .tag{display:inline-block;padding:5px 13px;border-radius:999px;background:#e8f1df;color:var(--green);font-size:.8rem;font-weight:800}
.doc h1{margin:16px 0 22px;font:clamp(2.2rem,5vw,3.3rem)/1.15 Jua;color:var(--deep);letter-spacing:-.02em}
.doc h2{margin:46px 0 12px;font:1.45rem Jua;color:var(--deep)}
.doc main a:not(.button){color:var(--green);text-underline-offset:3px}
.doc .button{margin:6px 0 4px}
.doc ul,.doc ol{padding-left:22px}.doc li{margin:6px 0}
.doc table{width:100%;margin:16px 0;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--paper);font-size:.92rem;line-height:1.6}
.doc th,.doc td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.doc tr:last-child td{border-bottom:0}
.doc th{background:#edf4e5;color:var(--deep);white-space:nowrap}
.doc .note{padding:16px 18px;border-radius:14px;background:#fff1da;font-size:.93rem}
.doc footer{display:block;max-width:900px;margin:0 auto;padding:30px 22px 50px;border-top:1px solid var(--line);background:none;color:#5f7064;font-size:.88rem;line-height:1.8}
.doc footer a{color:var(--green)}
@media(max-width:600px){.doc header{padding:12px 18px}.doc main{padding:30px 18px 56px}.doc table{font-size:.84rem}.doc th,.doc td{padding:10px}}

/* 마을 업데이트: 그래픽팀장 마을 UI 시안(A안, 앱 톤 보정)의 폰 화면 캡처로 소개한다. 색은 앱 토큰(크림·올리브·밤색)을 따른다 */
.new-badge{display:inline-flex;align-items:center;gap:8px;margin-bottom:18px;padding:5px 14px 5px 5px;border:1px solid #e6c88d;border-radius:999px;background:#fff9ebe8;color:#6b4a2b;font-size:.85rem;font-weight:800;text-decoration:none;box-shadow:0 6px 18px #8a6a3a1f}
.new-badge b{padding:2px 9px;border-radius:999px;background:#7e8a41;color:#fff;font-size:.72rem;letter-spacing:.06em}
.new-badge:hover,.new-badge:focus-visible{border-color:#7e8a41}
.village{background:#fbf1dd}
.village .eyebrow{color:#7e8a41}
.village h2{color:#5a3d22}
.village-intro{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.3fr);gap:clamp(30px,5vw,72px);align-items:center;max-width:1250px;margin:0 auto}
.village-copy>p:not(.eyebrow){color:#6b4a2b}
.village-points{list-style:none;display:grid;gap:12px;margin:28px 0 0;padding:0}
.village-points li{padding:14px 18px;border:1px solid #ebd9b4;border-radius:16px;background:#fff9eb;color:#6b4a2b;font-size:.95rem;line-height:1.55}
.village-points b{display:block;margin-bottom:2px;font:400 1.15rem Jua;color:#7e8a41}
/* 전경은 오른쪽 뒤, 폰 화면은 왼쪽 앞에 겹쳐 세운다 */
.village-hero{position:relative;aspect-ratio:1.45}
.village-pano{position:absolute;right:0;top:7%;width:84%;border-radius:26px;box-shadow:0 24px 60px #8a6a3a33}
.phone-shot{margin:0;overflow:hidden;border-radius:30px;background:#7fa04a;box-shadow:0 0 0 6px #2b2218,0 22px 48px #281c0e40;aspect-ratio:412/892}
.phone-shot img{display:block;width:100%;height:100%;object-fit:cover}
.village-hero-phone{position:absolute;left:3%;bottom:0;height:94%;aspect-ratio:412/892;border-radius:26px}
.village-shots{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(18px,2.2vw,30px);max-width:1250px;margin:clamp(56px,7vw,96px) auto 0}
.village-shots figure{margin:0}
.village-shots figcaption{margin-top:20px;color:#6b4a2b;font-size:.9rem;line-height:1.55}
.village-shots figcaption b{display:block;margin-bottom:4px;font:400 1.1rem/1.3 Jua;color:#5a3d22}
/* 태블릿·작은 노트북: 가로 스크롤 대신 3장 + 2장 두 줄로 가운데 맞춤 */
@media(max-width:1100px){
.village-shots{display:flex;flex-wrap:wrap;justify-content:center;gap:44px 28px;max-width:860px}
.village-shots figure{flex:0 0 calc((100% - 56px)/3);max-width:250px}
}
@media(max-width:900px){.village-intro{grid-template-columns:1fr}}
@media(max-width:600px){
.village-hero{aspect-ratio:1.05}
.village-pano{top:4%;width:90%;border-radius:18px}
.village-hero-phone{left:0;height:92%;border-radius:20px}
.phone-shot{border-radius:22px;box-shadow:0 0 0 4px #2b2218,0 16px 34px #281c0e40}
/* 휴대폰: 넘겨 보기. 안쪽 여백만큼 바깥으로 빼서 첫 폰이 제목과 같은 선에서 시작하고, 넘김 기준도 그 여백에 맞춘다 */
.village-shots{flex-wrap:nowrap;justify-content:flex-start;gap:18px;max-width:none;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:12px;padding:12px 12px 26px;margin:48px -12px 0;scrollbar-width:none}
.village-shots::-webkit-scrollbar{display:none}
.village-shots figure{flex:0 0 62vw;max-width:none;scroll-snap-align:start}
.new-badge{font-size:.78rem}
}
