/* ====== WonderKing WD - 정식 오픈 페이지 ======
   landing.css 다음에 읽는다. 약관 팝업·쿠키 배너·푸터는 landing.css 를 그대로 쓰고,
   화면 틀(헤더·히어로·탭 섹션·결과 창)만 여기서 그린다. 새 블록은 lx- 접두사를 쓴다.

   배경은 긴 배경 그림 한 장(3240x5400)을 페이지 전체에 깐다. 페이지가 그림보다 길어서
   장식이 없는 민트 줄(원본 y=3540)에서 위·아래로 나누고, 그 사이는 같은 줄(1px)을 늘려 잇는다.
   위 장면이 히어로, 아래 마차·꽃이 페이지 끝이다. */
:root{
    --lx-navy:#07162b;
    --lx-line:#213952;
    --lx-ink:#17324a;
    --lx-ink-soft:#4a6175;
    --lx-teal:#0b7f86;
    --lx-card:rgba(255,255,255,.86);
    --lx-card-line:#b9ddd0;
    --lx-mint:#e9f8f3;
    --lx-gold:#ffba58;
    --lx-header-h:84px;
    --navy:#07162b; /* landing.css 의 푸터 페이드 색을 맞춘다 */
}
html{scroll-padding-top:calc(var(--lx-header-h) + 16px);}
body.landingPage{background:var(--lx-navy);color:var(--lx-ink);line-height:1.7;font-size:15px;}
.lx-wrap{width:min(1200px,calc(100% - 80px));margin-inline:auto;}
.lx-main{padding-top:var(--lx-header-h);}
/* ===== 배경 =====
   통이미지 대신 조각으로 짠다: 첫 화면은 원본 그림(hero_main), 그 아래는 패키지와 같은 색 그라데이션 +
   양옆 리본 무늬(반복) + 캐릭터·소품(.lx-deco). 그래서 페이지가 얼마나 길든, 화면이 얼마나 넓든 끝까지 이어진다. */
body.landingPage{
    background:linear-gradient(180deg,#d4e9dd 0%,#edf5dd 22%,#eff7ea 46%,#e3efe9 70%,#b9cfe5 100%) fixed,#e3efe9;
}
.lx-hero{
    /* 그림(1920x1080)을 폭에 맞춰 통째로, 덮는 것 없이 보여준다 */
    container-type:inline-size; /* ::after 가 그림 실제 폭(스크롤바 제외) 기준으로 위치를 잡게 한다 */
    min-height:calc(100vw * 1080 / 1920);
    background:url('/img/landing/hero_main-91cddc3afe825ca4ab8e0e5c2f1e8520.webp') center top/100% auto no-repeat;
}
/* 그림 아래 이음: 그림 아래쪽을 뒤집어 흐린 띠(hero_blend, 미리 만든 이미지)를 그림 끝에 48px 겹쳐 붙인다.
   위는 그림과 서서히 섞이고 아래로 갈수록 투명해져 .lx-below 배경으로 넘어간다. 그림은 가리지 않는다.
   (실시간 blur·mask 대신 이미지로 만들어 결과가 정확하고 그리기 비용이 없다) */
.lx-hero::after{
    content:"";position:absolute;z-index:0;pointer-events:none;left:0;right:0;
    top:calc(100cqw * 1080 / 1920 - 100cqw * 48 / 1920);
    aspect-ratio:1920 / 348;
    background:url('/img/landing/hero_blend-1c706b39cf45a80a7451d3eb0f8c7c3a.webp') center top/100% 100% no-repeat;
}
.lx-below{
    position:relative;
    --lx-ribbon-x:max(6px,calc((100% - 1080px) / 2 - 150px));
    background:
        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%22120%22%20height%3D%22600%22%20viewBox%3D%220%200%20120%20600%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x1%3D%220%22%20x2%3D%221%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23254b93%22/%3E%3Cstop%20offset%3D%22.3%22%20stop-color%3D%22%236499df%22/%3E%3Cstop%20offset%3D%22.58%22%20stop-color%3D%22%23afc9f1%22/%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23315aa3%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath%20d%3D%22M60%200C120%20150%200%20450%2060%20600%22%20fill%3D%22none%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%2226%22%20stroke-linecap%3D%22round%22/%3E%3Cpath%20d%3D%22M60%200C120%20150%200%20450%2060%20600%22%20fill%3D%22none%22%20stroke%3D%22%23f4d594%22%20stroke-width%3D%223%22/%3E%3C/svg%3E") left var(--lx-ribbon-x) top/120px 600px repeat-y,
        url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%22120%22%20height%3D%22600%22%20viewBox%3D%220%200%20120%20600%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22g%22%20x1%3D%220%22%20x2%3D%221%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22%23254b93%22/%3E%3Cstop%20offset%3D%22.3%22%20stop-color%3D%22%236499df%22/%3E%3Cstop%20offset%3D%22.58%22%20stop-color%3D%22%23afc9f1%22/%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%23315aa3%22/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath%20d%3D%22M60%200C120%20150%200%20450%2060%20600%22%20fill%3D%22none%22%20stroke%3D%22url%28%23g%29%22%20stroke-width%3D%2226%22%20stroke-linecap%3D%22round%22/%3E%3Cpath%20d%3D%22M60%200C120%20150%200%20450%2060%20600%22%20fill%3D%22none%22%20stroke%3D%22%23f4d594%22%20stroke-width%3D%223%22/%3E%3C/svg%3E") right var(--lx-ribbon-x) top 300px/120px 600px repeat-y;
}
.lx-below>*{position:relative;z-index:1;}
/* 장식: 리본 위 캐릭터·소품. 본문 뒤에 깔리고 클릭을 막지 않는다 */
.lx-below>.lx-deco{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;}
.lx-deco img{position:absolute;width:clamp(96px,12vw,230px);height:auto;filter:drop-shadow(0 8px 14px #3c6a5a33);}
.lx-deco .is-left{left:max(0px,calc((100% - 1080px) / 2 - 220px));}
.lx-deco .is-right{right:max(0px,calc((100% - 1080px) / 2 - 220px));}
/* 불꽃: 첫 화면 하늘과 섹션 사이에서 차례로 터지듯 반짝인다. 크기·투명도만 바꿔 가볍게 돈다 */
.lx-hero{position:relative;overflow-x:clip;} /* 아래 이음 띠는 다음 영역까지 내려가야 해서 세로는 자르지 않는다 */
.lx-hero>.lx-fw{position:absolute;inset:0;pointer-events:none;z-index:0;}
.lx-hero>.lx-na-inner{position:relative;z-index:1;}
.lx-fw-img{position:absolute;height:auto;filter:saturate(1.7) brightness(1.25) drop-shadow(0 0 10px #ffe9a6aa);animation:lx-burst 4.2s ease-out infinite both;}
/* 첫 화면: 불꽃이 터지는 하늘 모서리만 해질녘처럼 어둡게 */
.lx-hero>.lx-fw{background:
    radial-gradient(circle 300px at 12% 90px,#0b1a3ad9 0,#0b1a3a66 45%,#0b1a3a00 100%),
    radial-gradient(circle 300px at 88% 70px,#0b1a3ad9 0,#0b1a3a66 45%,#0b1a3a00 100%);}
/* 마지막 안내~푸터: 밤하늘 축제. 위 끝은 낮 배경에서 서서히 어두워진다 */
.lx-final{background:linear-gradient(180deg,#0b1a3a00 0,#0d1f4a 160px,#0a1736 100%);overflow:hidden;}
.lx-final>.lx-fw{position:absolute;inset:0;pointer-events:none;}
.lx-below .lx-final>.lx-wrap{position:relative;z-index:1;background:#fff;backdrop-filter:none;box-shadow:0 0 0 1px #ffffff40,0 0 60px #ffd45a55;}
.lx-final-prop{position:absolute;bottom:0;z-index:1;width:clamp(130px,17vw,330px);height:auto;pointer-events:none;}
.lx-final-prop.is-left{left:max(0px,calc((100% - 1080px) / 2 - 220px));}
.lx-final-prop.is-right{right:max(0px,calc((100% - 1080px) / 2 - 220px));}
@keyframes lx-burst{
    0%{transform:scale(.55);opacity:0;}
    12%{opacity:1;}
    55%{transform:scale(1);opacity:.95;}
    100%{transform:scale(1.08);opacity:0;}
}
@media(prefers-reduced-motion:reduce){.lx-fw-img{animation:none;opacity:.85;}}
#rewards{position:relative;}
#rewards>.lx-fw--rewards{
    position:absolute;top:0;bottom:0;left:50%;width:100vw;translate:-50% 0;z-index:0;pointer-events:none;
    /* 위쪽 160px 은 서서히 나타나게: 파란 원이 섹션 윗변에서 잘린 선이 보이지 않도록 */
    -webkit-mask-image:linear-gradient(to bottom,#0000 0,#000 160px);mask-image:linear-gradient(to bottom,#0000 0,#000 160px);
    background:
        radial-gradient(circle 230px at 9% 110px,#2a4fb0b3 0,#2a4fb044 55%,#2a4fb000 100%),
        radial-gradient(circle 230px at 91% 160px,#5a3fb0b3 0,#5a3fb044 55%,#5a3fb000 100%),
        radial-gradient(circle 200px at 8% 62%,#2a4fb099 0,#2a4fb033 55%,#2a4fb000 100%),
        radial-gradient(circle 200px at 92% 70%,#2a4fb099 0,#2a4fb033 55%,#2a4fb000 100%);
}
.lx-below{overflow-x:clip;}
#rewards>:not(.lx-fw){position:relative;z-index:1;} /* 불꽃은 항상 카드 뒤 */
/* 푸터: 같은 배경 위에 얹고 회사 정보 줄만 반투명 남색 */
.site-footer{background:#0a1736;aspect-ratio:auto;min-height:0;margin-top:0;}
.site-footer::before{display:none;}
.footer-bar{background:rgba(7,22,43,.86);}
.footer-legal .clauseBtn{padding:6px 18px;border-radius:24px;background:#ffffffd9;color:var(--lx-ink);opacity:1;font-size:18px;}
.footer-legal .clauseBtn:hover{color:var(--lx-teal);}
.lx-main h1,.lx-main h2,.lx-main h3{margin:0;}
.lx-main em{font-style:normal;color:var(--lx-teal);}
.lx-eyebrow{margin:0 0 14px;color:var(--lx-teal);font-size:11px;font-weight:800;letter-spacing:2px;}
.lx-main [hidden],.lx-dialog [hidden]{display:none!important;}

/* ---------- 헤더 (어두운 바 유지) ---------- */
.site-header.lx-header{background:#07162bf2;border-bottom:1px solid var(--lx-line);backdrop-filter:blur(16px);}
.lx-header .header-inner{
    max-width:none;min-height:var(--lx-header-h);padding:0 36px;
    display:flex;align-items:center;justify-content:flex-start;gap:36px;
}
.lx-header .logo img{height:48px;width:auto;}
.lx-header .main-nav{margin-left:auto;gap:26px;}
.lx-header .main-nav a{color:#e3edf7;font-size:14px;font-weight:600;white-space:nowrap;}
.lx-header .main-nav a:hover,.lx-header .main-nav a.is-active{color:#6edcf5;}
.lx-header .main-nav a::after{display:none;}
.lx-header .header-right{display:flex;align-items:center;gap:12px;}
.lx-header .lang-btn{
    display:flex;align-items:center;gap:8px;width:auto;height:40px;padding:0 12px;
    background:#10263d;border:1px solid #42617b;border-radius:6px;cursor:pointer;
    color:#e3edf7;font-family:inherit;font-size:12px;font-weight:700;
}
.lx-header .lang-btn:hover,.lx-header .lang-switch.is-open .lang-btn{border-color:#6edcf5;background:#16334c;}
.lx-header .lang-btn img{width:18px;height:18px;}
.lx-chevron{color:#8dafc4;}
.lx-header .lang-menu{
    top:calc(100% + 12px);right:0;left:auto;min-width:180px;padding:10px;
    background:#10243a;border:1px solid #3b5976;border-radius:8px;box-shadow:0 15px 40px #0007;
}
.lx-header .lang-menu a,.lx-header .lang-menu .is-current{border-radius:4px;}

/* ---------- 버튼 ---------- */
.lx-btn{
    display:inline-flex;align-items:center;justify-content:center;
    min-height:50px;padding:10px 24px;border:1px solid transparent;border-radius:6px;cursor:pointer;
    background:linear-gradient(115deg,#ffc45d,#ff981f);color:#17223a;
    font-family:inherit;font-weight:800;font-size:15px;line-height:1.3;text-align:center;
    box-shadow:0 4px 14px #c96a0033;transition:filter .15s,transform .15s;
}
.lx-btn:hover{filter:brightness(1.08);transform:translateY(-2px);}
.lx-btn:disabled{opacity:.65;cursor:wait;transform:none;}
.lx-btn--sm{min-height:40px;padding:6px 16px;font-size:12px;box-shadow:none;}
.lx-btn--line{background:#ffffffe6;border-color:#9fc9bd;color:var(--lx-ink);box-shadow:none;}
.lx-btn--line:hover{border-color:var(--lx-teal);filter:none;}
.lx-btn--discord{width:100%;background:#5865f2;color:#fff;box-shadow:none;}
.lx-btn:focus-visible,.lx-tab:focus-visible,.lx-link:focus-visible{outline:3px solid var(--lx-teal);outline-offset:3px;}
.lx-link{color:var(--lx-teal);font-size:13px;font-weight:600;}

/* ---------- 히어로: 북미 홈페이지 첫 화면과 같은 구성 ---------- */
.lx-hero{position:relative;padding-block:28px 40px;}
.lx-na-inner{display:flex;flex-direction:column;align-items:center;gap:22px;max-width:1160px;}
.lx-na-head{text-align:center;}
.lx-na-logo img{height:64px;width:auto;margin:0 auto 6px;filter:drop-shadow(0 3px 6px #0006);}
.lx-na-title{display:flex;flex-direction:column;align-items:center;line-height:1.02;font-weight:900;letter-spacing:-.5px;}
.lx-na-title span{
    font-size:clamp(34px,5vw,68px);
    background:linear-gradient(180deg,#fff7c8 0%,#ffd45a 45%,#ef9a12 100%);-webkit-background-clip:text;background-clip:text;color:transparent;
    -webkit-text-stroke:2px #5a2f05;paint-order:stroke fill;filter:drop-shadow(0 4px 0 #3b1d02) drop-shadow(0 6px 10px #0007);
}
.lx-na-title span+span{background:linear-gradient(180deg,#ffffff 0%,#e6eef6 50%,#a9b9c9 100%);-webkit-background-clip:text;background-clip:text;}
.lx-na-ribbon{
    position:relative;display:inline-block;margin:14px 0 0;padding:8px 30px;color:#111;font-size:17px;font-weight:700;
}
.lx-na-ribbon b{margin-right:6px;color:#111;}
/* 날짜 띠 뒤로 가로지르는 나무 막대(양 끝 소용돌이·잎·파란 깃발이 띠 밖으로 보인다) */
.lx-na-ribbon{z-index:0;}
/* 띠 바탕은 ::after 로 그려 나무 막대(::before) 위에 오게 한다 */
.lx-na-ribbon::after{
    content:"";position:absolute;z-index:-1;inset:0;border:2px solid #d9a441;border-radius:6px;
    background:linear-gradient(180deg,#f6fcf2,#d8f1cd);box-shadow:0 0 0 2px #ffffffaa,0 6px 14px #2d5a3a33;
}
.lx-na-ribbon::before{
    content:"";position:absolute;z-index:-1;left:50%;top:50%;width:calc(100% + 300px);aspect-ratio:1400/128;
    transform:translate(-50%,-50%);pointer-events:none;
    background:url('/img/landing/wood_bar-00c8ffff04c36a65617ab6f7e2768a65.webp') center/100% 100% no-repeat;filter:drop-shadow(0 4px 4px #3b1d0240);
}
.lx-na-sub{display:inline-block;margin:10px 0 0;padding:5px 16px;border-radius:20px;background:#ffffffd9;color:#111;font-size:14px;font-weight:600;}

.lx-na-grid{display:grid;grid-template-columns:1fr 250px;gap:18px;width:100%;align-items:stretch;}
.lx-na-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.lx-na-card{
    position:relative;display:grid;grid-row:span 4;grid-template-rows:subgrid;row-gap:0;justify-items:center;align-items:start;text-align:center;
    padding:30px 14px 14px;border:3px solid #d9a441;border-radius:10px;color:#111;
    background:linear-gradient(180deg,#f6fcf2,#d8f1cd);box-shadow:inset 0 0 0 2px #ffffffb3,0 10px 24px #2d5a3a33;
    transition:transform .15s,filter .15s;
}
.lx-na-card:hover{transform:translateY(-4px);filter:brightness(1.08);}
.lx-na-card:focus-visible{outline:3px solid #6edcf5;outline-offset:3px;}
.lx-na-badge{
    position:absolute;top:-16px;left:50%;transform:translateX(-50%);white-space:nowrap;
    padding:4px 16px;border:2px solid #d9a441;border-radius:6px;color:#fff;font-size:12px;font-weight:900;letter-spacing:1px;
    background:linear-gradient(180deg,#2f9a3c,#17652a);box-shadow:0 3px 6px #0006;
}
.lx-na-card--2 .lx-na-badge{background:linear-gradient(180deg,#2f6fd0,#173f86);}
.lx-na-card--3 .lx-na-badge{background:linear-gradient(180deg,#8a3fd6,#4e1d8a);}
.lx-na-card b{font-size:19px;line-height:1.25;color:#111;}
.lx-na-card small{margin-top:4px;color:#333;font-size:12px;}
.lx-na-art{
    display:flex;align-items:center;justify-content:center;width:100%;height:150px;margin:12px 0 10px;
    border:2px solid #d9a44199;border-radius:6px;overflow:hidden;
    background:radial-gradient(ellipse at center,#ffffff 0%,#c6e9bd 80%);
}
.lx-na-art img{max-height:118px;width:auto;}
/* 카드 2·3: 배경·제목을 제외한 투명 보상 아이콘. 뚜껑까지 비율 유지. */
.lx-na-card--2 .lx-na-art,.lx-na-card--3 .lx-na-art{align-items:center;}
.lx-na-card--2 .lx-na-art img,.lx-na-card--3 .lx-na-art img{width:100%;height:118px;max-height:118px;object-fit:contain;}
/* 첫 카드: 국가별 캐릭터 2명을 나란히(2·3번 카드처럼 배경 없이) */
.lx-na-art--duo{gap:6px;}
.lx-na-art--duo img{max-height:124px;}
.lx-na-more{align-self:end;color:#111;font-size:12px;font-weight:700;}

.lx-na-steam{
    display:flex;flex-direction:column;padding:18px 18px 14px;border:3px solid #d9a441;border-radius:10px;color:#111;
    background:linear-gradient(180deg,#f6fcf2,#d8f1cd);box-shadow:inset 0 0 0 2px #ffffffb3,0 10px 24px #2d5a3a33;text-align:center;
}
.lx-na-steam-top{margin:0;font-size:15px;font-weight:700;letter-spacing:1px;}
.lx-na-steam-name{margin:0;font-size:40px;font-weight:900;line-height:1.05;letter-spacing:1px;}
.lx-na-steam-sub{margin:4px 0 10px;color:#333;font-size:12px;}
.lx-na-steam ul{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;text-align:left;}
.lx-na-steam li{display:flex;gap:10px;align-items:flex-start;}
.lx-na-steam li svg{flex:none;width:26px;height:26px;color:#111;}
.lx-na-steam li b{display:block;font-size:13px;line-height:1.3;}
.lx-na-steam li small{display:block;color:#333;font-size:11px;line-height:1.35;}
.lx-na-steam-logo{display:flex;align-items:center;justify-content:center;gap:8px;margin:auto 0 0;padding-top:12px;font-size:22px;font-weight:800;letter-spacing:1px;}
.lx-na-steam-logo svg{width:34px;height:34px;color:#1b2838;}
.lx-na-steam-logo sup{font-size:10px;}

.lx-na-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:18px;width:100%;}
.lx-na-play,.lx-na-discord{display:inline-flex;align-items:center;gap:14px;font-weight:900;transition:transform .15s,filter .15s;}
.lx-na-play:hover,.lx-na-discord:hover{transform:translateY(-2px);filter:brightness(1.08);}
.lx-na-play:focus-visible,.lx-na-discord:focus-visible{outline:3px solid #6edcf5;outline-offset:3px;}
.lx-na-play{
    padding:10px 34px 10px 12px;border:3px solid #d9a441;border-radius:40px;
    background:linear-gradient(180deg,#ffd45a,#f39a13);color:#2a1503;font-size:clamp(18px,2vw,26px);
    box-shadow:inset 0 0 0 2px #fff3,0 8px 18px #0007;
}
.lx-na-play svg{width:52px;height:52px;color:#1b2838;}
.lx-na-discord{
    padding:12px 24px;border:3px solid #d9a441;border-radius:10px;
    background:linear-gradient(180deg,#5c6cf5,#3a45c2);color:#fff;font-size:17px;box-shadow:0 8px 18px #0006;
}
.lx-na-discord svg{width:30px;height:24px;}
.lx-na-region{
    display:flex;align-items:center;gap:10px;margin:0;padding:8px 14px;border:2px solid #d9a441;border-radius:8px;
    background:linear-gradient(180deg,#f6fcf2,#d8f1cd);color:#111;
}
.lx-na-region img{width:34px;height:34px;}
.lx-na-region b{display:block;color:#111;font-size:14px;}
.lx-na-region small{display:block;color:#333;font-size:11px;}

/* ---------- 특징 3줄 ---------- */
.lx-strip{
    display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:20px 16px;
    background:var(--lx-card);border:1px solid var(--lx-card-line);border-radius:12px;box-shadow:0 8px 24px #3c8a7a1f;
}
.lx-strip span{
    display:flex;align-items:center;justify-content:center;gap:12px;padding-inline:10px;text-align:center;
    border-right:1px solid var(--lx-card-line);color:var(--lx-ink-soft);font-size:12px;
}
.lx-strip span:last-child{border-right:0;}
.lx-strip b{color:var(--lx-ink);font-size:13px;font-weight:700;}

/* ---------- 섹션 공통 ---------- */
.lx-section{padding-block:88px;}
.lx-head{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:8px;}
.lx-head h2{font-size:36px;line-height:1.4;letter-spacing:-1px;font-weight:800;color:var(--lx-ink);}
.lx-head>p{max-width:520px;margin:0;color:var(--lx-ink-soft);font-size:14px;}

/* ---------- 탭 ---------- */
.lx-tabs{display:flex;margin-top:32px;border-bottom:1px solid var(--lx-card-line);}
.lx-tab{
    flex:1;padding:18px 22px;background:#ffffff80;border:0;border-bottom:3px solid transparent;
    color:var(--lx-ink-soft);font:inherit;font-size:14px;font-weight:700;line-height:1.4;text-align:left;cursor:pointer;
}
.lx-tab:first-child{border-top-left-radius:10px;}
.lx-tab:last-child{border-top-right-radius:10px;}
.lx-tab small{display:block;margin-top:4px;color:#6f8597;font-size:11px;font-weight:400;}
.lx-tab[aria-selected=true]{border-bottom-color:var(--lx-teal);background:#fff;color:var(--lx-ink);}
.lx-tab:hover{color:var(--lx-ink);}
.lx-tab-no{margin-right:10px;color:#8aa3b3;font-size:11px;}
.lx-tab[aria-selected=true] .lx-tab-no{color:var(--lx-teal);}

/* ---------- 게임 소개 ---------- */
.lx-feature{
    display:grid;grid-template-columns:1.55fr 1fr;min-height:410px;overflow:hidden;
    background:#fff;border:1px solid var(--lx-card-line);border-top:0;border-radius:0 0 12px 12px;
    box-shadow:0 10px 30px #3c8a7a1f;
}
.lx-feature-media{min-height:0;background:#0b1a2b;}
.lx-feature-media img{width:100%;height:100%;object-fit:cover;}
.lx-feature-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:40px 30px;}
.lx-feature-copy .lx-eyebrow{margin-bottom:14px;font-size:10px;}
.lx-feature-copy h3{margin-bottom:14px;font-size:25px;line-height:1.4;color:var(--lx-ink);}
.lx-feature-copy p{margin:0;color:var(--lx-ink-soft);font-size:14px;}
.lx-feature-copy .lx-feature-sub{margin:0 0 6px;color:#b86a00;font-size:13px;font-weight:700;}
.lx-feature-copy .lx-feature-note{width:100%;margin-top:14px;padding-top:14px;border-top:1px solid #dcebe5;color:#6f8597;font-size:12px;}
.lx-feature-copy .lx-link{margin-top:14px;}

/* ---------- 디스코드: 밝은 바탕 위의 남보라 카드 ---------- */
.lx-community{padding-block:12px;}
.lx-community-layout{
    display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;padding:44px 48px;
    border:1px solid #ffffffb0;border-radius:14px;background:#ffffffd9;color:var(--lx-ink);
    backdrop-filter:blur(4px);box-shadow:0 10px 30px #2c4fa033;
}
.lx-community .lx-eyebrow{color:#5865f2;}
.lx-community em{color:#5865f2;}
.lx-community h2{margin-bottom:12px;font-size:32px;line-height:1.35;letter-spacing:-.5px;}
.lx-community-layout>div>p:last-child{margin:0;color:var(--lx-ink-soft);font-size:14px;}
.lx-community-card{padding:26px 30px;border:1px solid #cfd4f7;border-radius:10px;background:linear-gradient(135deg,#f1f3ff,#e4e8ff);}
.lx-community-label{color:#5865f2;font-size:10px;letter-spacing:2px;}
.lx-community-card h3{margin:10px 0 16px;font-size:21px;line-height:1.5;}
.lx-topics{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;}
.lx-topics span{padding:3px 10px;border-radius:4px;background:#fff;color:#3b46b8;font-size:11px;}

/* ---------- 보상 패널 ---------- */
.lx-reward{
    padding:28px;background:#fff;border:1px solid var(--lx-card-line);border-top:0;border-radius:0 0 12px 12px;
    box-shadow:0 10px 30px #3c8a7a1f;
}
.lx-reward h3{margin-bottom:8px;font-size:25px;line-height:1.45;color:var(--lx-ink);}
.lx-reward-lead{margin:0 0 20px;color:var(--lx-ink-soft);font-size:14px;}
.lx-reward-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.lx-reward-cards img{width:100%;height:auto;border-radius:6px;}
.lx-claim{margin-top:22px;padding:24px;background:var(--lx-mint);border:1px solid var(--lx-card-line);border-radius:10px;}
.lx-claim label{display:block;margin-bottom:10px;font-size:14px;font-weight:700;color:var(--lx-ink);}
.lx-claim-row{display:flex;gap:12px;}
.lx-claim-row input{
    flex:1;min-width:0;padding:12px 16px;background:#fff;border:1px solid #9fc9bd;border-radius:6px;
    color:var(--lx-ink);font:inherit;
}
.lx-claim-row input::placeholder{color:#8aa3b3;}
.lx-claim-row input:focus{outline:2px solid var(--lx-teal);}
.lx-claim-msg{min-height:20px;margin:8px 0 0;color:#c4322f;font-size:13px;}
.lx-note{margin:16px 0 0;color:#6f8597;font-size:13px;}

.lx-two{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:30px;}
.lx-gift{padding:35px;border:1px solid #efd29a;border-radius:12px;text-align:center;background:radial-gradient(ellipse at top,#fff1cf 0%,#fffaf0 70%);}
.lx-gift-icon{color:#e39a22;font-size:56px;line-height:1.3;}
.lx-gift p{margin:0 0 6px;color:#9a6a1c;font-size:13px;}
.lx-gift b{font-size:22px;line-height:1.4;color:var(--lx-ink);}
.lx-ticket{padding:28px;background:#fffdf7;border:1px solid #d9bf8f;border-radius:12px;box-shadow:10px 10px 0 #cfe9df;}
.lx-ticket span{color:#b86a00;font-size:10px;letter-spacing:3px;}
.lx-ticket b{display:block;margin-top:8px;font-size:22px;line-height:1.4;color:var(--lx-ink);}
.lx-ticket i{display:block;margin:18px 0 14px;border-bottom:1px dashed #c9b48c;}
.lx-ticket p{margin:0;color:var(--lx-ink-soft);font-size:13px;}

/* ---------- 결과 창 (어두운 창 유지) ---------- */
.lx-dialog{
    width:min(560px,92vw);padding:36px 32px;
    background:#10243b;border:1px solid #45617d;border-radius:14px;color:#f4f6fa;text-align:left;
}
.lx-dialog h2{margin:0 36px 10px 0;font-size:23px;line-height:1.4;}
.lx-dialog p{margin:0;color:#abbcd0;font-size:14px;line-height:1.6;}
.lx-dialog .modal-close{top:10px;right:10px;}
.lx-dialog .modal-close img{width:34px;height:34px;}
.lx-coupon{
    margin:18px 0;padding:18px;background:#071628;border:1px dashed #6ca7b8;border-radius:6px;
    color:#6edcf5;font-family:Consolas,monospace;font-size:20px;text-align:center;word-break:break-all;
}

/* ---------- 마지막 안내: 배경 아래쪽 마차·꽃 위 ---------- */
.lx-final{padding:60px 0 clamp(160px,22vw,340px);text-align:center;}
.lx-final h2{margin-bottom:10px;font-size:36px;line-height:1.4;letter-spacing:-.5px;color:var(--lx-ink);}
.lx-final p{margin:0 0 20px;color:var(--lx-ink-soft);}
.lx-steps{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 40px;margin-top:30px;color:var(--lx-ink);font-size:13px;}
.lx-steps b{margin-right:10px;color:var(--lx-teal);}
.lx-main .nav-scroll-slack{background:transparent;}

/* 리본 배경 위: 본문 폭을 줄여 양옆 캐릭터를 더 드러내고, 배경에 바로 놓이던 제목·마지막 안내는 반투명 상자에 담는다 */
.lx-below .lx-wrap{width:min(1080px,calc(100% - 80px));}
.lx-below>.lx-strip{width:min(1160px,calc(100% - 80px));} /* 첫 화면 카드 줄과 폭을 맞춘다 */
.lx-below .lx-head,.lx-final .lx-wrap{
    padding:22px 26px;border:1px solid #ffffffb0;border-radius:14px;
    background:#ffffffd9;backdrop-filter:blur(4px);box-shadow:0 10px 30px #2c4fa033;
}
.lx-final .lx-wrap{width:min(760px,calc(100% - 32px));}
.lx-below .lx-tabs{margin-top:20px;}

@media(max-width:1100px){
    .lx-header .header-inner{padding:0 20px;gap:18px;}
    .lx-header .logo img{height:38px;}
    .lx-header .main-nav{gap:14px;}
    .lx-header .main-nav a{font-size:12px;}
    .lx-wrap{width:calc(100% - 48px);}
    .lx-community-layout{gap:35px;padding:36px;}
    .lx-reward-cards{gap:10px;}
    .lx-tab-no{display:none;}
}
@media(max-width:760px){
    :root{--lx-header-h:92px;}
    .lx-header .header-inner{flex-direction:row;flex-wrap:wrap;min-height:0;gap:6px 10px;padding:8px 14px;}
    .lx-header .logo img{height:30px;}
    .lx-header .header-right{position:static;margin-left:auto;gap:8px;}
    .lx-header .header-right .lx-btn{display:none;} /* 첫 화면 히어로에 같은 버튼이 있고, 긴 문구가 헤더를 세 줄로 민다 */
    .lx-header .lang-btn{height:34px;padding:0 9px;}
    .lx-header .main-nav{order:3;width:100%;margin:0;justify-content:space-between;gap:8px;}
    .lx-wrap,.lx-below .lx-wrap{width:calc(100% - 32px);}
    .lx-below .lx-head,.lx-final .lx-wrap{padding:18px;}
    /* 폰: 배경 장면을 먼저 보여주고, 구성은 위에서 아래로 쌓는다 */
    .lx-hero{padding:calc(100vw * 1080 / 1920 - 70px) 0 28px;}
    /* 폰은 헤더가 흐름 배치(고정 아님)라 그만큼 비워둘 필요가 없다. 비워두면 첫 화면 위에 빈 띠가 생긴다 */
    .lx-main{padding-top:0;}
    html{scroll-padding-top:16px;}
    .lx-fw-img.is-wide{display:none;}
    .lx-hero>.lx-fw{background:
        radial-gradient(circle 120px at 18% 50px,#0b1a3acc 0,#0b1a3a55 45%,#0b1a3a00 100%),
        radial-gradient(circle 120px at 82% 40px,#0b1a3acc 0,#0b1a3a55 45%,#0b1a3a00 100%);}
    /* 폰은 페이지가 그림보다 훨씬 길다: 그림을 화면 크기로 뒤에 붙여 두고 스크롤해도 양옆 캐릭터가 보이게 한다 */
    /* 폰은 페이지가 그림보다 훨씬 길다: 위 장면은 첫 화면에만, 아래 리본 부분은 화면 크기로 뒤에 붙여 둔다 */
    /* 폰: 첫 화면 원본 그림을 위에 깔고 글은 그 아래부터. 장식은 작게 가장자리에 걸친다 */
    .lx-below{--lx-ribbon-x:-56px;}
    .lx-deco img{width:84px;opacity:.95;}
    .lx-deco .is-left{left:-18px;}
    .lx-deco .is-right{right:-18px;}
    .lx-final-prop{width:120px;}
    .lx-final-prop.is-left{left:-18px;}
    .lx-final-prop.is-right{right:-18px;}
    .footer-legal .clauseBtn{padding:6px 14px;font-size:15px;}
    .lx-na-inner{gap:18px;}
    .lx-na-logo img{height:44px;}
    .lx-na-title span{font-size:30px;-webkit-text-stroke:1.5px #5a2f05;}
    .lx-na-ribbon{max-width:calc(100% - 76px);padding:6px 14px;font-size:14px;}
    .lx-na-ribbon::before{width:calc(100% + 84px);}
    .lx-na-sub{padding:6px 10px;border-radius:8px;font-size:13px;}
    .lx-na-grid{grid-template-columns:1fr;}
    .lx-na-cards{grid-template-columns:1fr;gap:22px;}
    .lx-na-card{display:grid;grid-row:auto;grid-template-rows:none;row-gap:0;grid-template-columns:96px 1fr;column-gap:14px;text-align:left;align-items:center;padding:22px 14px 14px;}
    .lx-na-card .lx-na-art{grid-row:1/4;grid-column:1;width:96px;height:96px;margin:0;}
    .lx-na-art img{max-height:82px;}
    .lx-na-card--2 .lx-na-art img,.lx-na-card--3 .lx-na-art img{height:82px;max-height:82px;max-width:100%;}
    .lx-na-art--duo{gap:2px;}
    .lx-na-art--duo img{max-height:78px;}
    .lx-na-card b,.lx-na-card small,.lx-na-more{grid-column:2;}
    .lx-na-more{margin-top:6px;align-self:center;}
    .lx-na-actions{order:2;flex-direction:column;align-items:stretch;} /* 폰: 버튼을 카드보다 먼저 */
    .lx-na-grid{order:3;}
    .lx-na-play,.lx-na-discord{justify-content:center;}
    .lx-na-play svg{width:40px;height:40px;}
    .lx-na-region{justify-content:center;}
    .lx-strip{gap:8px;padding:14px 8px;}
    .lx-strip span{flex-direction:column;gap:2px;padding-inline:4px;font-size:11px;}
    .lx-strip b{font-size:12px;}
    .lx-section{padding-block:56px;}
    .lx-head{display:block;}
    .lx-head h2{font-size:27px;}
    .lx-head>p{margin-top:12px;}
    .lx-tabs{overflow-x:auto;margin-top:22px;}
    .lx-tab{flex:1 0 auto;max-width:62vw;padding:12px;font-size:12px;text-align:center;}
    .lx-tab small{font-size:10px;}
    .lx-feature,.lx-community-layout,.lx-two{grid-template-columns:1fr;gap:20px;}
    .lx-feature{gap:0;min-height:0;}
    .lx-feature-media img{height:auto;}
    .lx-feature-copy{padding:22px;}
    .lx-feature-copy h3{font-size:21px;}
    .lx-community-layout{padding:26px 20px;}
    .lx-community h2{font-size:25px;}
    .lx-community-card{padding:20px;}
    .lx-reward{padding:16px;}
    .lx-reward h3{font-size:21px;}
    .lx-reward-cards{grid-template-columns:repeat(2,1fr);}
    .lx-claim{padding:16px;}
    .lx-claim-row{flex-direction:column;}
    .lx-ticket{box-shadow:none;}
    .lx-dialog{padding:30px 20px;}
    .lx-coupon{font-size:16px;}
    .lx-final{padding-top:40px;}
    .lx-final h2{font-size:26px;}
    .lx-steps{flex-direction:column;align-items:center;font-size:12px;}
}
@media(prefers-reduced-motion:reduce){.lx-btn{transition:none;}}

/* Wooden reward frames: preserve artwork proportions and live reward links. */
.lx-na-card{display:block;grid-row:auto;aspect-ratio:4/5;min-width:0;padding:0;border:0;border-radius:0;background:url('/img/landing/reward-card-green-326d900c4549937f8e66fc5c4e76fea3.png') center/100% 100% no-repeat;box-shadow:none;filter:drop-shadow(0 6px 8px #38230d40);container-type:inline-size;}
.lx-na-card--2{background-image:url('/img/landing/reward-card-blue-1dfe91a409518ff5636adc0253bc14fb.png');}
.lx-na-card--3{background-image:url('/img/landing/reward-card-gray-bcc700eb7c269a34d943feb1866f958c.png');}
.lx-na-card .lx-na-badge{display:flex;align-items:center;justify-content:center;position:absolute;inset:7% 16% auto;transform:none;height:9%;padding:0;border:0;border-radius:0;background:none;box-shadow:none;white-space:normal;font-size:clamp(9px,4cqw,12px);line-height:1.15;letter-spacing:.25px;text-shadow:0 1px 2px #0009;}
.lx-na-card b{position:absolute;inset:18% 12% auto;height:6%;display:flex;align-items:center;justify-content:center;font-size:clamp(10px,4.5cqw,14px);line-height:1.12;color:#4d2c14;overflow-wrap:anywhere;}
.lx-na-card small{position:absolute;inset:67% 14% auto;height:13%;margin:0;display:flex;align-items:center;justify-content:center;font-size:clamp(12px,4.8cqw,15px);font-weight:700;color:#65421f;}
.lx-na-card .lx-na-art{position:absolute;inset:27% 12% auto;width:76%;height:35%;margin:0;border:0;border-radius:0;background:none;gap:6px;}
.lx-na-card .lx-na-art img{width:auto;height:90%;max-height:none;max-width:90%;object-fit:contain;filter:drop-shadow(0 4px 3px #593a1930);}
.lx-na-card .lx-na-art--duo img{height:92%;max-width:46%;}
.lx-na-card .lx-na-more{position:absolute;inset:85% 17% auto;height:7%;display:flex;align-items:center;justify-content:center;margin:0;color:#fff9e9;font-size:clamp(11px,4.5cqw,14px);font-weight:800;text-shadow:0 1px 2px #0009;}
.lx-na-card:hover{filter:brightness(1.06) drop-shadow(0 9px 10px #38230d55);}
@media(max-width:760px){.lx-na-cards{grid-template-columns:1fr;justify-items:center;gap:16px;}.lx-na-card{width:min(100%,320px);text-align:center;}.lx-na-card .lx-na-art{grid-row:auto;grid-column:auto;}.lx-na-card b,.lx-na-card small,.lx-na-card .lx-na-more{grid-column:auto;}}
@media(prefers-reduced-motion:reduce){.lx-na-card{transition:none;}.lx-na-card:hover{transform:none;}}

/* Companion wooden panel for the Steam information beside the reward cards. */
.lx-na-steam{position:relative;isolation:isolate;border:0;border-radius:0;background:none;box-shadow:none;padding:36px 26px 28px;color:#4d2c14;}
.lx-na-steam::before{content:'';position:absolute;z-index:-1;inset:0;pointer-events:none;background:url('/img/landing/blank-wood-panel-d216c68ff2b6eb9ecc6ea352bdf0091d.png') center/100% 100% no-repeat;filter:drop-shadow(0 6px 8px #38230d40);}
.lx-na-steam-top{font-size:13px;color:#65421f;}
.lx-na-steam-name{font-size:36px;color:#302417;}
.lx-na-steam-sub,.lx-na-steam li small{color:#6b5139;}
.lx-na-steam li svg{color:#65421f;width:22px;height:22px;}
.lx-na-steam li b{color:#4d2c14;font-size:12px;}
.lx-na-steam ul{gap:9px;}
.lx-na-steam-logo{font-size:21px;}
@media(max-width:760px){.lx-na-steam{width:min(100%,320px);box-sizing:border-box;justify-self:center;min-height:380px;padding:42px 32px 32px;}.lx-na-steam li b{font-size:14px;}.lx-na-steam li small{font-size:12px;}.lx-na-steam ul{gap:14px;}}

/* Launch date printed directly on the supplied wooden text banner. */
.lx-na-ribbon{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:0 6px;box-sizing:border-box;width:min(100%,850px);max-width:100%;min-height:76px;margin:10px auto 0;padding:18px 20%;background:url('/img/landing/wood-text-banner-21080da8f5014c53abdd330a6fa80185.png') center 48%/100% auto no-repeat;color:#4d2c14;font-size:16px;line-height:1.35;text-shadow:0 1px 0 #fff5;}
.lx-na-ribbon b{margin:0;color:#4d2c14;}
.lx-na-ribbon::before,.lx-na-ribbon::after{content:none;}
@media(max-width:760px){.lx-na-ribbon{width:100%;max-width:100%;min-height:82px;padding:20px 12%;background-size:175% auto;font-size:14px;}.lx-na-ribbon b{flex-basis:100%;}}
@media(max-width:760px){.lx-na-ribbon{padding:28px 8% 12px;}}

/* Phone layout: keep full banner ends, readable labels and touch targets. */
@media(max-width:760px){
 .lx-na-head{min-width:0;width:100%;}
 .lx-na-title span{font-size:clamp(23px,6.5vw,30px);overflow-wrap:anywhere;}
 .lx-na-ribbon{min-height:100px;padding:24px 21% 12px;background-size:100% 350%;font-size:12px;line-height:1.35;gap:2px;}
 .lx-na-play{padding:10px 14px;gap:10px;font-size:clamp(14px,4vw,20px);line-height:1.3;text-align:center;min-height:60px;}
 .lx-na-play svg{flex-shrink:0;width:36px;height:36px;}
 .lx-na-discord{min-height:54px;padding:10px 14px;font-size:15px;text-align:center;}
 .lx-na-region{padding:10px;}.lx-na-region b{font-size:12px;}
 .lx-na-cards,.lx-na-grid,.lx-feature-copy,.lx-claim,.lx-reward{min-width:0;}
 .lx-na-card{max-width:100%;}
 .lx-na-card b{font-size:clamp(10px,4.1cqw,13px);}
 .lx-na-steam{min-height:380px;}
 .lx-header .main-nav a{font-size:clamp(9px,2.7vw,12px);white-space:nowrap;}
 .lx-claim input{min-width:0;width:100%;box-sizing:border-box;}
 .lx-claim button,.lx-reward .lx-btn{white-space:normal;overflow-wrap:anywhere;}
}
@media(min-width:761px) and (max-width:1050px){
 .lx-na-grid{grid-template-columns:minmax(0,1fr);}
 .lx-na-steam{width:min(100%,360px);min-height:380px;justify-self:center;padding:44px 36px 30px;}
 .lx-na-ribbon{padding-left:15%;padding-right:15%;font-size:14px;}
}

html[lang="th"] .lx-na-card .lx-na-badge{font-size:clamp(9px,3.5cqw,12px);line-height:1.5;}
html[lang="th"] .lx-na-card b{line-height:1.45;}

/* 쿠폰 공개 대기: 네트워크 조회를 보내지 않는 비활성 상태. */
[data-coupon-available="false"] button:disabled,button[data-coupon-available="false"]:disabled{cursor:not-allowed;}
