/* SnippetCut 홈페이지 — 넓은 여백, 큰 글씨, 한 화면에 한 가지 이야기 */
:root{
  --ink:#1d1d1f; --mute:#6e6e73; --line:#e5e5ea; --bg:#fff; --soft:#f5f5f7;
  --c1:#FF7A59; --c2:#F0457A; --c3:#7A4DFF;
  --grad:linear-gradient(120deg,var(--c1),var(--c2) 48%,var(--c3));
  --font:"Inter",-apple-system,BlinkMacSystemFont,"SF Pro Display","Apple SD Gothic Neo","Noto Sans KR",sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font);color:var(--ink);background:var(--bg);line-height:1.5;-webkit-font-smoothing:antialiased;letter-spacing:-.01em}
html[lang="ko"] body{font-family:"Noto Sans KR",-apple-system,"Apple SD Gothic Neo",sans-serif;letter-spacing:-.02em;word-break:keep-all}
/* 언어 고르기: 보이지 않는 언어는 숨긴다 */
html[data-lang="en"] [lang="ko"]{display:none !important}
html[data-lang="ko"] [lang="en"]{display:none !important}
a{color:#0066cc;text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;display:block}
.in{max-width:1080px;margin:0 auto;padding:0 24px}
.narrow{max-width:760px}
section{padding:120px 0}
h2{font-size:clamp(34px,5.4vw,60px);line-height:1.08;font-weight:800;letter-spacing:-.03em;margin-bottom:56px}
.eyebrow{font-size:17px;font-weight:600;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:12px}
.grad{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}

/* 위쪽 메뉴 */
.nav{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.78);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(0,0,0,.06)}
.nav .in{display:flex;align-items:center;gap:22px;height:52px}
.brand{display:flex;align-items:center;gap:8px;font-weight:700;font-size:17px;color:var(--ink)}
.brand:hover{text-decoration:none}
.brand img{width:26px;height:26px;border-radius:7px}
.links{display:flex;gap:24px;margin-left:auto;font-size:13px}
.links a{color:var(--ink);opacity:.8}
.langbtn{background:none;border:1px solid var(--line);border-radius:999px;padding:5px 12px;font:inherit;font-size:12px;color:var(--mute);cursor:pointer}
.langbtn:hover{color:var(--ink)}
@media (max-width:820px){.links{display:none}.langbtn{margin-left:auto}}

/* 단추 */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--ink);color:#fff;font-weight:600;font-size:17px;padding:14px 28px;border-radius:999px;border:1.5px solid var(--ink);transition:transform .15s,opacity .15s;cursor:pointer}
.btn:hover{text-decoration:none;transform:scale(1.02)}
.btn.sm{font-size:13px;padding:6px 14px}
.btn.ghost{background:transparent;color:var(--ink)}
.btn .soonTag{display:none;font-style:normal;font-size:11px;font-weight:700;background:var(--grad);color:#fff;border-radius:999px;padding:2px 9px}
.btn.soon{opacity:.5;cursor:default;transform:none}
.btn.soon .soonTag{display:inline-block}
.link{font-size:19px;color:#0066cc}

/* 첫 화면 */
.hero{padding:96px 0 0;text-align:center;overflow:hidden;background:radial-gradient(1200px 500px at 50% 0%,#fff3f0 0%,#fff 60%)}
.appicon{width:96px;height:96px;margin:0 auto 26px;border-radius:22px;box-shadow:0 14px 34px rgba(240,69,122,.3)}
.hero h1{font-size:clamp(46px,8vw,96px);line-height:1.02;font-weight:800;letter-spacing:-.045em}
.lead{font-size:clamp(19px,2.2vw,24px);color:var(--mute);max-width:720px;margin:26px auto 0;line-height:1.45}
.cta{display:flex;gap:26px;justify-content:center;align-items:center;flex-wrap:wrap;margin-top:34px}
.small{font-size:14px;color:var(--mute);margin-top:18px}
.device{max-width:980px;margin:64px auto 0;border-radius:18px 18px 0 0;overflow:hidden;background:#1c1c1e;box-shadow:0 -10px 60px rgba(122,77,255,.18),0 40px 80px rgba(0,0,0,.25);border:1px solid #2c2c2e;border-bottom:none}
.win{height:30px;display:flex;gap:7px;align-items:center;padding:0 14px;background:#2c2c2e}
.win i{width:11px;height:11px;border-radius:50%;background:#ff5f57}
.win i:nth-child(2){background:#febc2e}.win i:nth-child(3){background:#28c840}

/* 쓰는 법 */
.how{background:var(--soft)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.step{background:#fff;border-radius:28px;padding:40px 34px}
.step > span{display:inline-flex;width:44px;height:44px;border-radius:50%;align-items:center;justify-content:center;background:var(--grad);color:#fff;font-weight:800;font-size:19px;margin-bottom:22px}
.step h3{font-size:26px;font-weight:700;margin-bottom:10px;letter-spacing:-.02em}
.step p{color:var(--mute);font-size:17px}
@media (max-width:820px){.steps{grid-template-columns:1fr}}

/* 기능 타일 */
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.tile{background:var(--soft);border-radius:28px;padding:38px 32px;min-height:250px}
.tile i{font-style:normal;font-size:38px;display:block;margin-bottom:16px}
.tile h3{font-size:24px;font-weight:700;letter-spacing:-.02em;margin-bottom:10px}
.tile p{color:var(--mute);font-size:17px}
.tile.big{grid-column:span 2;grid-row:span 1}
.tile.wide{grid-column:span 2}
.tile.dark{background:#000;color:#f5f5f7}
.tile.dark p{color:#a1a1a6}
.tile.dark h3{font-size:clamp(28px,3.4vw,40px)}
.chips{display:flex;gap:10px;margin-top:26px;flex-wrap:wrap}
.chips b{border:1px solid #3a3a3c;border-radius:999px;padding:7px 16px;font-size:14px;font-weight:600}
.tile.grad-bg{background:var(--grad);color:#fff;min-height:200px}
.tile.grad-bg p{color:rgba(255,255,255,.88);max-width:640px}
.tile.grad-bg h3{font-size:clamp(28px,3.4vw,40px)}
@media (max-width:900px){.tiles{grid-template-columns:1fr 1fr}.tile.big,.tile.wide{grid-column:span 2}}
@media (max-width:600px){.tiles{grid-template-columns:1fr}.tile.big,.tile.wide{grid-column:span 1}}

/* 템플릿 */
.tpl{background:#000;color:#f5f5f7;padding-bottom:110px}
.tpl h2{margin-bottom:46px}
.rail{display:flex;gap:22px;overflow-x:auto;padding:10px max(24px,calc((100vw - 1032px)/2)) 24px;scroll-snap-type:x mandatory;scrollbar-width:none}
.rail::-webkit-scrollbar{display:none}
.rail img{flex:0 0 230px;width:230px;border-radius:30px;scroll-snap-align:center;box-shadow:0 20px 50px rgba(240,69,122,.18)}

/* 가격 */
.pricing{text-align:center}
.pricing h2{margin-bottom:46px}
.card{max-width:560px;margin:0 auto;background:var(--soft);border-radius:32px;padding:48px 44px;text-align:left}
.price{font-size:64px;font-weight:800;letter-spacing:-.04em;display:flex;align-items:baseline;gap:12px}
.price small{font-size:17px;font-weight:500;color:var(--mute);letter-spacing:0}
.card ul{list-style:none;margin:26px 0 32px}
.card li{padding:12px 0 12px 30px;border-top:1px solid var(--line);position:relative;font-size:17px}
.card li:before{content:"✓";position:absolute;left:2px;font-weight:800;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.buy{display:flex;flex-direction:column;gap:12px}

/* 자주 묻는 질문 */
.faq{background:var(--soft)}
.faq h2{margin-bottom:30px}
.faq details{background:#fff;border-radius:18px;padding:22px 26px;margin-top:12px}
.faq summary{font-weight:600;font-size:18px;cursor:pointer;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";float:right;color:var(--c2);font-size:22px;line-height:1}
.faq details[open] summary:after{content:"–"}
.faq details p{color:var(--mute);margin-top:12px;font-size:16px}

.foot{padding:40px 0 56px;font-size:13px;color:var(--mute);text-align:center;border-top:1px solid var(--line)}
.foot p{margin:4px 0}
.foot .c{opacity:.7}

/* 줄바꿈: 마지막 줄에 한두 글자만 남지 않게 */
body{overflow-wrap:break-word}
h1,h2,h3{text-wrap:balance}
p,li,.lead,summary{text-wrap:pretty}
