@font-face{font-family:'Freesentation';src:url('https://cdn.jsdelivr.net/gh/projectnoonnu/2404@1.0/Freesentation-4Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;unicode-range:U+1100-11FF,U+3130-318F,U+A960-A97F,U+AC00-D7AF,U+D7B0-D7FF;}
@font-face{font-family:'Freesentation';src:url('https://cdn.jsdelivr.net/gh/projectnoonnu/2404@1.0/Freesentation-5Medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap;unicode-range:U+1100-11FF,U+3130-318F,U+A960-A97F,U+AC00-D7AF,U+D7B0-D7FF;}
@font-face{font-family:'Freesentation';src:url('https://cdn.jsdelivr.net/gh/projectnoonnu/2404@1.0/Freesentation-6SemiBold.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap;unicode-range:U+1100-11FF,U+3130-318F,U+A960-A97F,U+AC00-D7AF,U+D7B0-D7FF;}
/* Xames brand and shared controls. */
:root{--paper:#FBF8EE;--ink:#292923;--brown:#6E4A30;--line:#dbd6c8;--muted:#777568;--ease:cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:64px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Freesentation','Pretendard Variable',Pretendard,-apple-system,BlinkMacSystemFont,sans-serif;word-break:keep-all}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;height:auto;display:block}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #b78354;outline-offset:5px}.skip{position:fixed;top:-100px;background:var(--paper);padding:20px;z-index:100}.skip:focus{top:0}
.header{height:64px;padding:0 4.3%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--paper);position:relative;z-index:20}.brand,.brand img{width:120px}.brand img{height:48px;object-fit:contain}.header nav{display:flex;align-items:center;gap:26px;font-size:15px}.header nav a{padding:8px 0}.header nav a:hover{text-decoration:underline;text-underline-offset:5px}.nav-cta{padding:9px 20px;border:1px solid #aaa18d;border-radius:30px;font-size:14px}.nav-cta:hover{background:var(--ink);color:var(--paper)}.menu-button{display:none}.mobile-nav[hidden]{display:none}.mobile-nav{position:absolute;z-index:30;top:76px;right:20px;width:176px;max-width:calc(100vw - 40px);padding:6px;background:var(--paper);color:var(--ink);border:1px solid #29292315;border-radius:10px;box-shadow:0 8px 24px #0002}.mobile-nav a{display:flex;align-items:center;min-height:44px;padding:10px 14px;border-radius:6px;font-size:16px;line-height:1.4}.mobile-nav a:hover,.mobile-nav a:focus-visible{background:#29292309}.mobile-nav a:focus-visible{outline-offset:-3px}
/* Text enters over the scenery; the photograph settles once. */
.hero{min-height:680px;height:calc(100svh - 64px);max-height:1000px;position:relative;color:white;overflow:hidden;background:#20261f}.hero picture{display:contents}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 43%;animation:photo-settle 3s var(--ease) both;transform-origin:60% 50%}.hero-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#101811a1,#10181114 75%),linear-gradient(0deg,#0f140e59,transparent 45%)}.hero-content{position:relative;z-index:1;max-width:850px;padding:clamp(100px,16vh,200px) 0 110px 6.3%}.eyebrow{font-size:12px;font-weight:500;letter-spacing:.16em;margin:0 0 24px}.hero h1{font-size:clamp(42px,4.8vw,76px);letter-spacing:-.04em;line-height:1.2;font-weight:500;margin:0 0 24px}.hero-line{display:block}.hero-description{font-size:18px;line-height:1.7;margin:0 0 28px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 25px;border-radius:30px;font-size:15px;transition:background .25s}.button.light{background:var(--paper);color:var(--ink)}.button.light:hover{background:white}.hero-bottom{position:absolute;z-index:1;bottom:28px;left:6.3%;right:6.3%;display:flex;align-items:center;justify-content:space-between;font-size:13px}.hero-bottom>a{font-size:12px;letter-spacing:.12em;display:flex;align-items:center;gap:14px;min-height:44px}.scroll-line{display:block;width:1px;height:27px;background:currentColor;position:relative;margin:0 5px}.scroll-line:after{content:'';position:absolute;bottom:0;left:-3px;width:7px;height:7px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg)}
.hero-content>.eyebrow,.hero-line,.hero-description,.hero-content>.download-area,.hero-bottom{animation:hero-rise .85s cubic-bezier(.16,1,.3,1) backwards}.hero-content>.eyebrow{animation-delay:.05s}.hero-line:first-child{animation-delay:.15s}.hero-line:last-child{animation-delay:.25s}.hero-description{animation-delay:.35s}.hero-content>.download-area{animation-delay:.45s}.hero-bottom{animation-delay:.55s}
@keyframes hero-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes photo-settle{from{transform:scale(1.035)}to{transform:scale(1)}}
/* A concise introduction and three directly visible themes. */
.section{padding:64px 6.3%}.intro .eyebrow{color:var(--brown);margin-bottom:22px}.intro-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center}h2{font-size:clamp(30px,3.5vw,48px);font-weight:500;line-height:1.25;letter-spacing:-.04em;margin:0}h2 em{font-style:normal;color:var(--brown)}.intro-layout>p{font-size:18px;line-height:1.8;color:#686457;margin:0}.strengths{padding-top:0;padding-bottom:64px}.strength-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 36px}.strength{display:flex;gap:20px;align-items:flex-start;border-top:1px solid var(--line);padding:28px 0}.number{font-family:'Instrument Serif',Georgia,serif;color:var(--brown);font-size:25px;line-height:1.15}.strength h3{font-size:22px;font-weight:500;line-height:1.4;letter-spacing:-.025em;margin:0 0 10px}.strength p{font-size:16px;line-height:1.65;color:#716b5d;margin:0}.reveal{transition:opacity .65s var(--ease),transform .65s var(--ease)}.will-reveal{opacity:0;transform:translateY(16px)}.is-visible{opacity:1;transform:translateY(0)}
footer{border-top:1px solid var(--line);padding:24px 6.3%;display:flex;flex-wrap:wrap;align-items:center;gap:16px 25px;font-size:14px}.footer-brand img{width:100px}footer>span{font-family:'Instrument Serif',Georgia,serif;font-size:19px;color:var(--muted)}footer nav{display:flex;flex-wrap:wrap;gap:12px 22px;margin-left:auto}footer small{font-size:12px;color:var(--muted)}footer .policy-links{flex-basis:100%;margin:0;order:5;font-size:14px}footer a:hover{text-decoration:underline;text-underline-offset:4px}
.policy-header{height:90px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 6.3%;gap:20px}.policy-header img{width:132px}.policy-header>a:last-child{font-size:15px;color:var(--brown)}.policy-main{max-width:900px;margin:0 auto;padding:70px 30px 100px}.policy-main .eyebrow{color:var(--brown)}.policy-main h1{font-size:clamp(32px,5vw,48px);font-weight:500;letter-spacing:-.035em;margin:0 0 35px;line-height:1.25}.policy-body{font-size:17px;line-height:1.9;overflow-wrap:anywhere}.policy-body h2,.policy-body h3{font-size:24px;font-weight:600;line-height:1.5;letter-spacing:-.025em;margin:40px 0 15px}.policy-body li{padding-left:5px;margin:7px 0}.policy-body ul,.policy-body ol{padding-left:24px}.policy-body a{color:var(--brown);text-decoration:underline;text-underline-offset:3px}.policy-body p{margin:14px 0}.policy-table{overflow-x:auto;max-width:100%;margin:22px 0}.policy-body table{width:100%;border-collapse:collapse;font-size:15px;min-width:440px}.policy-body td,.policy-body th{border:1px solid var(--line);padding:12px;vertical-align:top}.policy-body tr:first-child{background:#eee9da;font-weight:600}.policy-back{display:inline-block;margin-top:46px;border-bottom:1px solid var(--brown);color:var(--brown)}

@media(max-width:1100px){.strength-grid{grid-template-columns:repeat(2,1fr)}.header nav{gap:20px}footer>span{display:none}}
@media(max-width:800px){
html{scroll-padding-top:50px}.header{height:50px;padding:0 20px}.brand,.brand img{width:98px}.brand img{height:39px}.header nav,.nav-cta{display:none}.menu-button{display:flex;flex-direction:column;gap:6px;justify-content:center;align-items:center;width:44px;height:44px;border:0;background:none}.menu-button span{width:23px;height:1px;background:var(--ink)}
.hero{height:calc(100svh - 50px);min-height:600px;max-height:1000px}.hero-image{object-position:50% 50%;top:-70px;height:calc(100% + 70px)}.hero-shade{background:linear-gradient(180deg,#101810b3 0%,#1018108c 30%,#10181012 54%,transparent 70%,#10181077 100%)}.hero-content{padding:64px 24px 0;max-width:none}.hero .eyebrow{font-size:12px;margin-bottom:17px}.hero h1{font-size:clamp(36px,10.2vw,48px);line-height:1.16;margin:0 0 17px}.hero-description{font-size:16px;line-height:1.6;margin:0 0 22px;text-shadow:0 1px 8px #0002}.hero .button{min-height:44px;padding:10px 22px;font-size:14px}.hero-bottom{bottom:18px;left:24px;right:24px;gap:16px}.hero-bottom>span{font-size:12px;max-width:140px;line-height:1.4}.hero-bottom>a{font-size:12px;gap:12px}
.section{padding:40px 24px}.intro .eyebrow{font-size:12px;margin-bottom:18px}.intro-layout{grid-template-columns:1fr;gap:18px}h2{font-size:31px}.intro-layout>p{font-size:16px;line-height:1.7}.strengths{padding-top:0;padding-bottom:30px}.strength-grid{grid-template-columns:1fr}.strength{padding:20px 0;gap:18px}.number{font-size:23px;min-width:25px}.strength h3{font-size:21px;margin:0 0 6px}.strength p{font-size:16px;line-height:1.55}.strength p br{display:none}
footer{padding:22px 24px;gap:14px 20px}footer .policy-links{gap:8px 18px;line-height:1.6}footer small{margin-left:auto}.policy-header{height:64px;padding:0 24px}.policy-header img{width:112px}.policy-main{padding:42px 24px 70px}.policy-body{font-size:16px}.policy-body h2,.policy-body h3{font-size:22px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.will-reveal{opacity:1;transform:none}}

/* Store destinations remain intentionally unset until official URLs are supplied. */
.download-area{width:max-content;max-width:100%}.download-options{display:flex;align-items:stretch;gap:14px}.store-buttons{display:grid;gap:8px;width:166px}.store-button{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;min-height:46px;padding:9px 15px;border:1px solid var(--brown);border-radius:8px;background:var(--brown);color:#fff;text-align:left;cursor:default;opacity:1;-webkit-text-fill-color:#fff}.store-button>span{font-size:12px;color:#6b675d;-webkit-text-fill-color:#6b675d}.store-button>strong{font-size:16px;font-weight:500;white-space:nowrap}.download-qr{width:98px;background:var(--paper);color:var(--ink);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:7px 10px 6px;gap:3px}.download-qr svg{width:64px;height:64px}.download-qr>span{font-size:12px;color:#716b5d}.download-area>p{font-size:12px;margin:9px 0 0;color:#f4efdf}
@media(max-width:800px){.hero-content{padding-top:64px}.hero-description{margin-bottom:20px}.download-options{gap:12px}.store-buttons{width:170px}.store-button{min-height:42px;padding:8px 12px}.download-qr{width:90px;padding:5px 8px}.download-qr svg{width:59px;height:59px}.download-area>p{margin-top:8px}}
@media(max-width:800px) and (max-height:740px){.hero-content{padding-top:46px}.hero h1{font-size:36px;margin-bottom:14px}.hero .eyebrow{margin-bottom:14px}.hero-description{font-size:15px;line-height:1.55;margin-bottom:16px}.hero-image{top:-40px;height:calc(100% + 40px)}}

.store-button{justify-content:flex-start;gap:13px}.store-mark{width:24px;height:24px;object-fit:contain;flex-shrink:0}.apple-mark{filter:brightness(0) invert(1)}.store-button>strong{color:#fff;-webkit-text-fill-color:#fff}

/* The navigation sits directly over the opening photograph. */
.header{position:absolute;inset:0 0 auto;width:100%;background:transparent;color:#fff}.header .brand img{filter:brightness(0) invert(1)}.header .menu-button span{background:#fff}.header .nav-cta{border-color:#ffffff80}.header .nav-cta:hover{background:#ffffff20;color:#fff}.header nav a{text-shadow:0 1px 8px #0005}.hero{height:100svh}.hero:before{content:'';position:absolute;inset:0 0 auto;height:110px;background:linear-gradient(#0005,transparent);z-index:1;pointer-events:none}.hero-content{padding-top:calc(clamp(100px,16vh,200px) + 64px)}
@media(max-width:800px){.hero-content{padding-top:114px}.hero{min-height:650px}}
@media(max-width:800px) and (max-height:740px){.hero-content{padding-top:96px}}

/* Preserve the original logo geometry; animate only the dot. */
.header .brand{position:relative;display:block}.header .brand img:not(.brand-dot){clip-path:inset(0 11% 0 0)}.header .brand img.brand-dot{position:absolute;inset:0;filter:none;clip-path:inset(0 0 0 89%)}
.hero-content>.eyebrow{font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-size:24px;letter-spacing:.035em;line-height:1.2;font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
.store-buttons{display:flex;flex-direction:column;align-items:flex-start;width:auto;gap:8px}.store-button{display:block;width:auto;min-height:0;height:44px;padding:0;border:0;border-radius:0;background:transparent;line-height:0}.store-button .store-badge{display:block;height:44px;width:auto;max-width:none}.download-qr{align-self:stretch}
@media(max-width:800px){.hero-content>.eyebrow{font-size:21px;letter-spacing:.025em}.hero h1{font-size:clamp(32px,10vw,46px)}.store-buttons{width:auto}.store-button{min-height:0;padding:0;height:44px}}

/* A tighter introduction with two deliberate supporting lines. */
.hero-content{padding-top:calc(clamp(100px,16vh,200px)*2/3 + 64px)}.hero h1{margin-bottom:8px}.download-qr{background:#000;color:#fff;border:0}.download-qr>span{color:#fff}
@media(max-width:800px){.hero-content{padding-top:92.67px}.hero h1{font-size:clamp(25px,8.5vw,44px);margin-bottom:5.67px}}
@media(max-width:800px) and (max-height:740px){.hero-content{padding-top:80.67px}.hero h1{margin-bottom:4.67px}}

/* Smaller wordmark, more air above the header, and a closer headline. */
.header{top:19px}.header .brand,.header .brand img{width:80px}.header .brand img{height:32px}.hero-content>.eyebrow{margin-bottom:12px}
@media(max-width:800px){.header{top:14px}.header .brand,.header .brand img{width:65.333px}.header .brand img{height:26px}.hero-content>.eyebrow{margin-bottom:8.5px}}
@media(max-width:800px) and (max-height:740px){.hero-content>.eyebrow{margin-bottom:7px}}

/* Restore the wordmark and give both store badges an equal frame. */
.header{top:24px}.header .brand,.header .brand img{width:120px}.header .brand img{height:48px}.store-button{display:flex;align-items:center;justify-content:center;width:150px;height:46px;background:#000;border:0;border-radius:6px;overflow:hidden}.store-button .store-badge{height:44px;width:auto;flex-shrink:0}
@media(max-width:800px){.header{top:18px}.header .brand,.header .brand img{width:98px}.header .brand img{height:39px}.store-button{width:150px;height:46px}.hero-image{top:-225px;height:calc(100% + 225px)}}
@media(max-width:800px) and (max-height:740px){.hero-image{top:-110px;height:calc(100% + 110px)}}

/* Give the mobile wordmark twice the breathing room above the introduction. */
@media(max-width:800px){.hero-content{padding-top:134px}.hero-image{top:-125px;height:calc(100% + 125px)}}
@media(max-width:800px) and (max-height:740px){.hero-content{padding-top:110px}.hero-image{top:-40px;height:calc(100% + 40px)}}

/* Invite exploration with a centered downward cue. */
.hero-bottom{justify-content:center}.hero-bottom>a{flex-direction:column;gap:10px;padding:4px 12px;letter-spacing:.025em;font-size:13px}.hero-bottom .scroll-line{height:24px}

/* Give both download captions the same typography and alignment. */
.store-button{position:relative}.store-button>.store-caption{position:absolute;top:7px;left:46px;font-family:Arial,sans-serif;font-size:9px;font-weight:400;line-height:11px;letter-spacing:0;color:#fff;-webkit-text-fill-color:#fff;white-space:nowrap}

/* A slow white fill reveals the original brown dot between cycles. */
.header .brand img.brand-dot-fill{filter:brightness(0) invert(1);clip-path:inset(72% 0 16% 89%);animation:brand-dot-fill 6s ease-in-out infinite}
@keyframes brand-dot-fill{0%,15%,100%{clip-path:inset(72% 0 16% 89%);opacity:1}45%,65%{clip-path:inset(84% 0 16% 89%);opacity:0}}

/* Keep both people visible as wider windows become taller or narrower. */
@media(min-width:801px){.hero-image{object-position:100% 43%;transform-origin:100% 50%}}
@media(min-width:801px) and (max-aspect-ratio:7/5){.hero-image{object-position:50% 58%;transform-origin:50% 65%}.hero-shade{background:linear-gradient(180deg,#101810a6 0%,#10181080 35%,#10181012 65%,#10181055 100%)}}

/* Three concise themes, with no cards or extra navigation steps. */
.strength p+p{margin-top:10px}.strength h3{margin-bottom:14px}.strengths{padding-bottom:44px}
@media(min-width:801px){.strength-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.intro-layout{grid-template-columns:1fr 1fr;gap:36px}.strength{padding:24px 0}.strength h3{font-size:22px}}
@media(max-width:800px){.intro.section{padding:36px 24px 28px}.intro-layout{gap:16px}.strengths{padding-bottom:22px}.strength{padding:19px 0}.strength h3{font-size:21px;margin-bottom:8px}.strength p+p{margin-top:6px}}

/* Preserve the original 1206px store composition below y=280.
   Copy remains live Korean text; the mockup region is an unchanged crop of
   the approved image from y=595 through its original lower edge at y=2622. */
.screenshot-gallery{--feature-width:clamp(320px,calc((100svh - 112px)*1206/2342),520px);position:relative;background:#f3ece1}
.gallery-stage{position:relative;height:calc(var(--feature-width)*2342/1206 + 32px);display:flex;align-items:flex-end}
.gallery-window{width:100%;overflow-x:auto;overflow-y:hidden;scroll-behavior:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--brown) transparent}
.gallery-window:focus-visible{outline:2px solid var(--brown);outline-offset:-4px}
.gallery-track{display:flex;align-items:flex-end;gap:24px;width:max-content;padding:0 max(16px,calc((100vw - var(--feature-width))/2))}
.gallery-feature{container-type:inline-size;flex:none;position:relative;width:var(--feature-width);aspect-ratio:1206/2342;overflow:hidden;text-align:center}
.gallery-feature h2{position:absolute;top:6.6335cqw;left:3.98cqw;right:3.98cqw;font-size:6.3018cqw;line-height:1.22;font-weight:500;color:#292923;letter-spacing:-.04em;white-space:nowrap;margin:0}
.gallery-mockup{position:absolute;top:26.1194cqw;left:0;right:0;bottom:0;overflow:hidden}
.gallery-mockup img{position:absolute;left:0;top:-49.3367cqw;width:100%;height:auto;max-width:none;filter:none}
.screenshot-gallery.is-scroll-linked .gallery-stage{position:sticky;top:0;height:100vh;height:100dvh}
.is-scroll-linked .gallery-window{scrollbar-width:none}
.is-scroll-linked .gallery-window::-webkit-scrollbar{display:none}
.legal-section{background:#181815;color:var(--paper);padding:64px 6.3% 58px}
.legal-section h2{font-size:20px;line-height:1.4;letter-spacing:.02em;color:#c6a786;margin:0 0 14px;font-weight:500}
.legal-section nav{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.legal-section a{font-size:calc(26px * 2 / 3);line-height:1.45;letter-spacing:-.02em}
.legal-section a:hover{text-decoration:underline;text-underline-offset:6px}
footer.site-footer{--footer-line-gap:calc(26px / 3);--footer-bottom:26px;--footer-space-above:0px;position:relative;background:#181815;color:#d0cdc4;border-top:0;display:block;padding:calc(var(--footer-space-above) + var(--footer-line-gap)) 6.3% var(--footer-bottom)}
.site-footer small{font-size:14px;line-height:1.6;color:inherit;margin:0}
@media(max-width:800px){
 .screenshot-gallery{--feature-width:min(86vw,420px,calc((100svh - 112px)*1206/2342))}
 .gallery-track{gap:16px;padding:0 16px}
 .legal-section{padding:44px 24px 40px}.legal-section h2{font-size:18px;margin-bottom:12px}
 .legal-section a{font-size:16px}.legal-section nav{gap:4px}
 footer.site-footer{--footer-line-gap:8px;--footer-bottom:24px;padding-right:24px;padding-left:24px}.site-footer small{font-size:13px}
}
@media(prefers-reduced-motion:reduce){.gallery-stage{position:relative!important}}

/* The original wordmark appears only while the horizontal row is pinned. */
.gallery-brand{position:absolute;z-index:2;top:max(12px,env(safe-area-inset-top));left:50%;display:flex;flex-direction:column;align-items:center;gap:3px;pointer-events:none;opacity:0;visibility:hidden;transform:translate(-50%,-8px);transition:opacity .4s var(--ease),transform .4s var(--ease),visibility .4s}
.gallery-logo{width:120px;height:48px;object-fit:contain}
.gallery-label{margin:0;font-size:clamp(14px,calc(var(--feature-width)*.05),26px);line-height:1.25;font-weight:500;letter-spacing:-.025em;white-space:nowrap;text-align:center}
.is-swiping .gallery-brand{opacity:1;visibility:visible;transform:translate(-50%,0)}
@media(max-width:800px){.gallery-brand{top:max(20px,env(safe-area-inset-top))}.gallery-logo{width:98px;height:39px}}

/* Closing copy follows slide 07's original 1206px composition. */
.gallery-cta-line{display:flex;align-items:baseline;justify-content:center;white-space:nowrap;height:calc(93 * 100cqw / 1206)}
.gallery-wordmark{display:inline-block;position:relative;overflow:hidden;width:calc(181 * 100cqw / 1206);height:calc(60 * 100cqw / 1206);flex:none;margin-right:calc(5 * 100cqw / 1206);vertical-align:middle}
.gallery-wordmark img{position:absolute;width:calc(231.48 * 100cqw / 1206);height:auto;max-width:none;left:calc(-17.41 * 100cqw / 1206);top:calc(-15.63 * 100cqw / 1206)}

/* Keep the dropdown compact and the footer rule inset from both edges. */
@media(min-width:801px){.mobile-nav{display:none}}
footer.site-footer:before{content:"";position:absolute;top:var(--footer-space-above);left:24px;right:24px;height:1px;background:#ffffff30}

/* Shared top-level links use the same line box as the submenu control. */
.header .desktop-nav>a,.header .nav-legal>a{display:flex;align-items:center;height:36px;padding:0;line-height:20px;white-space:nowrap}
/* Legal destinations remain separate from the link to the home-page section. */
.nav-legal{position:relative;display:flex;align-items:center;gap:2px}
.submenu-toggle{display:grid;place-items:center;width:28px;height:36px;padding:0;border:0;background:transparent;color:inherit;border-radius:6px}
.submenu-toggle[aria-expanded="true"] svg{transform:rotate(180deg)}
.legal-submenu{position:absolute;right:0;top:calc(100% + 8px);width:220px;padding:6px;background:var(--paper);color:var(--ink);border:1px solid #29292315;border-radius:10px;box-shadow:0 8px 24px #0002}
.legal-submenu[hidden]{display:none}
.header nav .legal-submenu a{display:flex;align-items:center;min-height:44px;padding:10px 14px;border-radius:6px;font-size:15px;line-height:1.4;text-shadow:none}
.header nav .legal-submenu a:hover,.header nav .legal-submenu a:focus-visible{background:#29292309;text-decoration:none}
.legal-submenu a:focus-visible{outline-offset:-3px}
.mobile-nav{width:220px}
.mobile-legal-links{margin:0 8px 6px 14px;padding-left:6px;border-left:1px solid var(--line)}
.mobile-legal-links a{font-size:15px;padding:10px 12px}
.mobile-legal-links a[aria-current="page"],.legal-submenu a[aria-current="page"]{color:var(--brown);font-weight:600}

/* Document pages share the home header geometry and the minimal company footer. */
.policy-page{min-height:100vh;display:flex;flex-direction:column}
.policy-page .header{color:var(--ink)}
.policy-page .header .brand img{filter:none}
.policy-page .header .brand img.brand-dot-fill{display:none}
.policy-page .header .menu-button span{background:var(--ink)}
.policy-page .header nav a{text-shadow:none}
.policy-page .policy-main{width:100%;flex:1;padding-top:144px;padding-bottom:150px}
.policy-page .policy-main h1{margin:0 0 28px;text-align:center}

.policy-language{display:flex;width:max-content;gap:2px;margin:0 auto 20px;padding:2px;border:1px solid var(--line);border-radius:999px}
.policy-language a{display:flex;align-items:center;justify-content:center;min-height:26px;padding:4px 11px;font-size:12px;font-weight:600;line-height:1.4;border-radius:999px;white-space:nowrap}
.policy-language a[aria-current="page"]{background:var(--ink);color:var(--paper)}

.policy-body>:first-child{margin-top:0}
.policy-body:lang(en){word-break:normal}
.policy-body h2[id]{scroll-margin-top:24px}
@media(max-width:800px){
 .policy-page .policy-main{padding-top:112px;padding-bottom:96px}
 .policy-page .policy-main h1{margin-bottom:24px}


}


/* The sticky gallery starts at the viewport edge, without the global anchor offset. */
#features{scroll-margin-top:-64px}
@media(max-width:800px){#features{scroll-margin-top:-50px}}

/* A single segmented rectangle groups the legal documents without an extra rule. */
.policy-switcher{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;margin:0 0 28px;padding:0;font-size:14px;line-height:1.4}
.policy-switcher a{display:flex;align-items:center;justify-content:center;min-width:0;min-height:48px;padding:12px 10px;text-align:center;transition:background .15s}
.policy-switcher a+a{border-left:1px solid var(--line)}
.policy-switcher a:hover{background:#f0ebe0}
.policy-switcher a[aria-current="page"]{background:#eae3d6;color:var(--brown);font-weight:600;text-decoration:none}
.policy-switcher a:focus-visible{outline-offset:-3px}
@media(max-width:800px){.policy-switcher{margin-bottom:24px}.policy-switcher a{padding:12px 8px}}

/* Support destinations share the site's navigation and restrained document layout. */
.footer-groups{display:grid;grid-template-columns:1fr;gap:40px;max-width:840px}
.header .desktop-nav>a[aria-current="page"],.mobile-nav>a[aria-current="page"]{font-weight:600}
.support-page .policy-main h1{margin-bottom:48px}
.faq-group+.faq-group{margin-top:64px}
.faq-group h2{font-size:30px;line-height:1.35;font-weight:400;letter-spacing:-.025em;margin:0 0 24px;padding-bottom:16px;border-bottom:2px solid var(--brown)}
.faq-group h2+.faq-item{border-top:0}
.faq-item{border-top:1px solid var(--line)}
.faq-item:last-child{border-bottom:1px solid var(--line)}
.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0;list-style:none;cursor:pointer;font-size:19px;line-height:1.55;font-weight:400;word-break:break-all;overflow-wrap:anywhere}
.faq-item summary::-webkit-details-marker{display:none}
.faq-chevron{flex:none;color:var(--brown)}
.faq-item[open] .faq-chevron{transform:rotate(180deg)}
.faq-item summary:focus-visible{outline:3px solid #b78354;outline-offset:3px}
.faq-answer{max-width:680px;padding:0 0 28px;color:#4c4a42}
.faq-answer p{margin:0;font-size:18px;line-height:1.85;word-break:break-all;overflow-wrap:anywhere}
.faq-answer p+p{margin-top:14px}
.contact-content{text-align:center;font-size:17px;line-height:1.8}
.contact-content>p:first-child{margin:0}
.contact-email{color:inherit;font:inherit;text-decoration:none;overflow-wrap:anywhere}
.contact-privacy{display:flex;align-items:flex-start;gap:6px;width:fit-content;max-width:100%;margin:8px auto 0;padding:8px 12px;border:0;border-radius:6px;background:#f0ebe0;text-align:left}
@media(max-width:800px){
 .footer-groups{grid-template-columns:1fr;gap:32px}
 .support-page .policy-main h1{margin-bottom:36px}
 .faq-group+.faq-group{margin-top:48px}
 .faq-group h2{font-size:26px;margin-bottom:16px;padding-bottom:14px}
 .faq-item summary{font-size:17px;gap:12px;padding:18px 0}
 .faq-answer{padding-bottom:24px}
 .faq-answer p{font-size:16px;line-height:1.85}
 .contact-content{font-size:16px}
}

/* Match the dotless wordmark to the adjacent Korean label. */
.hero-explore-label{display:inline-flex;align-items:baseline;gap:.3em;line-height:1.4}
.hero-explore-wordmark{position:relative;display:block;overflow:hidden;flex:none;width:3.0167em;height:1em}
.hero-explore-wordmark img{position:absolute;max-width:none;width:3.858em;height:auto;left:-.2902em;top:-.2605em;filter:brightness(0) invert(1)}

.contact-warning{flex:none}

/* PC: 히어로를 화면 세로 높이에 맞춰 채우고 둘러보기를 화면 맨 아래에 고정 (2026-10-10) */
@media(min-width:801px){.hero{height:100vh;height:100svh;min-height:560px;max-height:none}}

/* 갤러리: 첫·마지막 스크린샷이 시작·끝 시점에 화면 정중앙에 오도록 좌우 여백을 (보이는 폭 - 카드 폭)/2 로 (모바일 포함, 2026-10-10) */
.gallery-track{padding:0 max(16px,calc((100% - var(--feature-width))/2))}

/* 앱 웹뷰(?app=1): 사이트 헤더·메뉴·문서 탭을 숨기고 KOR/ENG 부터 보이게 (2026-10-10) */
.in-app .header,.in-app #mobile-nav,.in-app .policy-switcher,.in-app .skip,.in-app .legal-section{display:none!important}
html.in-app{scroll-padding-top:0;scroll-behavior:auto}
.in-app .policy-page .policy-main{padding-top:20px}
