:root{
  --paper:#f3eee6;--ivory:#fffaf2;--ink:#25211e;--muted:#6d655d;--line:#d9ccba;
  --gold:#a9844f;--gold-deep:#806034;--navy:#263640;--navy2:#1d2a32;--wine:#70474b;
  --shadow:0 20px 55px rgba(46,38,30,.14);
  --serif:"MaruBuri","KoPub Batang","Noto Serif KR","AppleMyungjo","Batang",serif;
  --sans:"Pretendard Variable","Pretendard","SUIT","Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);line-height:1.75;overflow-x:hidden;word-break:keep-all}button,a{font:inherit}a{color:inherit;text-decoration:none}button{color:inherit}img{max-width:100%;display:block}::selection{background:#d8c29b;color:#241e18}

/* shared title lockup */
.title-lockup{display:flex;flex-direction:column;align-items:center;line-height:1}.title-lockup span{font-family:var(--serif);font-weight:600;letter-spacing:.14em}.title-lockup strong{font-family:var(--serif);font-weight:700;letter-spacing:-.07em}.title-lockup i{font-family:Georgia,serif;font-style:normal;letter-spacing:.38em;color:var(--gold-deep)}
.title-lockup-gate span{font-size:clamp(14px,1.8vw,22px);margin-bottom:10px}.title-lockup-gate strong{font-size:clamp(54px,8vw,92px)}.title-lockup-gate i{font-size:10px;margin-top:18px}
.title-lockup-hero span{font-size:clamp(13px,1.5vw,19px);margin-bottom:9px}.title-lockup-hero strong{font-size:clamp(52px,7vw,88px)}.title-lockup-hero i{font-size:9px;margin-top:16px}
.title-lockup-footer{margin:52px auto 0;color:#40372f}.title-lockup-footer span,.title-lockup-webtoon span{font-size:13px;margin-bottom:7px}.title-lockup-footer strong,.title-lockup-webtoon strong{font-size:46px}.title-lockup-footer i,.title-lockup-webtoon i{font-size:8px;margin-top:12px}

/* gate */
.gate{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;overflow:hidden;background:#dae2e4;transition:opacity .75s ease,visibility .75s ease}.gate.closed{opacity:0;visibility:hidden;pointer-events:none}.gate-bg{position:absolute;inset:-3%;background:url('assets/bg_hero.webp') center/cover no-repeat;filter:saturate(.78) contrast(.96);transform:scale(1.04);animation:gateZoom 11s ease-out both}.gate-bloom{position:absolute;inset:-12%;background:radial-gradient(circle at 55% 22%,rgba(255,247,220,.56),transparent 36%);filter:blur(30px)}.gate-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(31,42,46,.22),rgba(29,37,40,.10) 36%,rgba(22,28,31,.48))}.gate-panel{position:relative;z-index:2;width:min(670px,90vw);padding:48px 46px 42px;text-align:center;background:rgba(252,248,240,.90);border:1px solid rgba(120,96,64,.26);box-shadow:0 22px 70px rgba(26,30,31,.24);backdrop-filter:blur(10px);color:var(--ink)}.gate-panel::before{content:"";position:absolute;inset:10px;border:1px solid rgba(152,120,76,.22);pointer-events:none}.gate-kicker{font-size:9px;font-weight:800;letter-spacing:.30em;color:#806b51;margin:0 0 22px}.gate-divider{display:flex;align-items:center;gap:12px;max-width:230px;margin:23px auto 18px;color:var(--gold)}.gate-divider i{height:1px;background:#c9b28e;flex:1}.gate-divider b{font-size:9px}.gate-copy{font:600 clamp(17px,2vw,22px)/1.75 var(--serif);margin:0 0 28px;color:#3c352f}.enter-btn{border:1px solid #55483a;background:#2c373c;color:#fff;display:inline-flex;align-items:center;gap:34px;padding:14px 20px 14px 24px;cursor:pointer;transition:.25s ease;letter-spacing:.02em}.enter-btn:hover{background:#182429;transform:translateY(-2px)}.gate-note{font-size:10px;color:#867d73;margin:13px 0 0}@keyframes gateZoom{from{transform:scale(1.07)}to{transform:scale(1)}}

/* header */
.site-header{position:fixed;top:0;left:0;right:0;height:72px;padding:0 clamp(18px,4vw,64px);display:flex;align-items:center;justify-content:space-between;z-index:200;background:rgba(248,244,237,.93);border-bottom:1px solid rgba(94,83,70,.14);backdrop-filter:blur(16px);transform:translateY(-110%);transition:transform .5s ease}.site-header.visible{transform:translateY(0)}.brand{display:flex;align-items:center;gap:10px;font:700 11px/1 Georgia,var(--serif);letter-spacing:.19em}.brand-mark{width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--gold);border-radius:50%;color:var(--gold);font-size:14px}.desktop-nav{display:flex;gap:30px;align-items:center;font-size:10px;font-weight:800;letter-spacing:.17em}.desktop-nav a,.nav-webtoon{position:relative;padding:7px 0}.nav-webtoon{border:0;background:none;cursor:pointer;letter-spacing:.17em;font-weight:800;font-size:10px}.desktop-nav a::after,.nav-webtoon::after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--gold);transition:.25s ease}.desktop-nav a:hover::after,.nav-webtoon:hover::after{right:0}.header-actions{display:flex;align-items:center;gap:12px}.audio-btn{border:0;background:transparent;display:flex;align-items:center;gap:7px;cursor:pointer;color:var(--muted);padding:8px}.audio-label{font-size:9px;font-weight:800;letter-spacing:.14em}.audio-bars{height:14px;width:16px;display:flex;align-items:flex-end;gap:2px}.audio-bars i{display:block;width:2px;height:4px;background:currentColor}.audio-btn.playing .audio-bars i{animation:eq .8s infinite alternate ease-in-out}.audio-btn.playing .audio-bars i:nth-child(2){animation-delay:-.55s}.audio-btn.playing .audio-bars i:nth-child(3){animation-delay:-.28s}.audio-btn.playing .audio-bars i:nth-child(4){animation-delay:-.7s}@keyframes eq{to{height:14px}}.play-mini{padding:8px 15px;border:1px solid #8e806f;font-size:9px;font-weight:800;letter-spacing:.18em;transition:.2s}.play-mini:hover{background:#2d3335;color:white;border-color:#2d3335}

/* hero */
.hero{position:relative;min-height:100svh;display:grid;place-items:center;overflow:hidden}.hero-bg{position:absolute;inset:0;background:url('assets/bg_hero.webp') center/cover no-repeat;transform:scale(1.02);filter:saturate(.8)}.hero-bloom{position:absolute;inset:-10%;background:radial-gradient(circle at 64% 25%,rgba(255,248,225,.55),transparent 34%);filter:blur(28px)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(21,31,35,.14),rgba(25,33,36,.08) 43%,rgba(22,29,31,.38))}.hero-frame{position:absolute;inset:90px 3.3% 34px;border:1px solid rgba(82,70,56,.34);pointer-events:none}.hero-card{position:relative;z-index:2;width:min(760px,90vw);margin-top:56px;padding:42px 44px 38px;text-align:center;background:rgba(253,249,242,.90);border:1px solid rgba(105,86,61,.24);box-shadow:0 20px 65px rgba(21,27,29,.22);backdrop-filter:blur(9px)}.hero-card::before{content:"";position:absolute;inset:9px;border:1px solid rgba(164,129,79,.18);pointer-events:none}.eyebrow,.section-no{font-size:9px;font-weight:800;letter-spacing:.25em;text-transform:uppercase}.hero .eyebrow{color:#806b51;margin:0 0 17px}.hero-sub{font-size:14px;line-height:1.95;color:#5b534b;margin:24px auto 26px;max-width:610px}.hero-buttons{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.btn{min-height:48px;padding:0 24px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:12px;cursor:pointer;transition:.25s ease;font-size:13px;font-weight:750;letter-spacing:.01em}.btn.primary{background:#28363c;color:#fff;border-color:#28363c}.btn.primary:hover{background:#18252a;transform:translateY(-2px);box-shadow:0 10px 28px rgba(19,24,26,.14)}.btn.ghost-dark{background:transparent;border-color:#88745c;color:#40372f}.btn.ghost-dark:hover{background:#eee5d8;transform:translateY(-2px)}.scroll-cue{position:absolute;z-index:3;right:4.7%;bottom:66px;display:flex;align-items:center;gap:12px;transform:rotate(90deg);transform-origin:right bottom;font-size:8px;letter-spacing:.28em;color:#2e3639}.scroll-cue i{display:block;width:46px;height:1px;background:#596266}

.intro-strip{background:#252f34;color:#ede7dc;overflow:hidden;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}.intro-strip-inner{height:46px;display:flex;align-items:center;justify-content:center;gap:clamp(18px,4vw,64px);white-space:nowrap;font:600 9px/1 Georgia,var(--serif);letter-spacing:.25em}.intro-strip b{color:#c4a572;font-size:8px}

.section{padding:clamp(78px,9vw,136px) clamp(20px,6vw,96px)}.section-head{max-width:920px;margin:0 auto 58px;text-align:center}.section-no{color:#947246;margin:0 0 15px}.section-head h2,.final-cta h2{font:600 clamp(32px,4.8vw,62px)/1.28 var(--serif);letter-spacing:-.055em;margin:0}.section-head h2 em,.final-cta h2 em{font-style:normal;color:#91693f}.section-desc{color:var(--muted);font-size:13px;margin-top:18px}

/* world */
.story{background:linear-gradient(180deg,#f7f3ed,#eee7dd);position:relative}.story::before{content:"FIDELIUM";position:absolute;left:-30px;top:220px;writing-mode:vertical-rl;font:700 64px/1 Georgia,serif;letter-spacing:.12em;color:rgba(120,93,56,.045)}.story-grid{max-width:1180px;margin:auto;display:grid;grid-template-columns:.86fr 1.2fr;gap:clamp(30px,6vw,86px);align-items:center}.story-copy{max-width:475px;margin-left:auto}.story-copy .lead{font:700 28px/1.5 var(--serif);margin-top:0}.story-copy p{font-size:14px;color:#56504a;margin:0 0 18px}.story-copy blockquote{margin:38px 0 0;padding:23px 0 23px 27px;border-left:2px solid var(--gold);font:600 clamp(19px,2.2vw,26px)/1.68 var(--serif);color:#34302c}.story-copy blockquote span{display:block;font:800 9px/1 var(--sans);letter-spacing:.22em;color:#947851;margin-bottom:10px}.story-visual{margin:0;position:relative;box-shadow:var(--shadow);overflow:hidden;background:#ddd;border:8px solid rgba(255,250,242,.7);outline:1px solid rgba(120,98,69,.18)}.story-visual img{width:100%;aspect-ratio:3/1;object-fit:cover}.story-visual figcaption{position:absolute;right:15px;bottom:11px;padding:5px 8px;background:rgba(245,239,229,.82);color:#4c443c;font-size:7px;font-weight:800;letter-spacing:.17em}.world-facts{max-width:1180px;margin:62px auto 0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.world-facts article{padding:27px 28px;position:relative}.world-facts article+article{border-left:1px solid var(--line)}.world-facts span{font:italic 22px/1 Georgia,serif;color:#b69a73}.world-facts b{display:block;font:800 9px/1 var(--sans);letter-spacing:.2em;color:#7f6545;margin:11px 0}.world-facts p{font-size:12px;line-height:1.75;color:#686158;margin:0}

/* pair system */
.system{position:relative;color:#f5eee4;background:#26343c;overflow:hidden}.system-bg{position:absolute;inset:0;background:linear-gradient(rgba(24,38,46,.88),rgba(24,38,46,.94)),url('assets/bg_bridge.webp') center/cover no-repeat;opacity:.98}.system>*:not(.system-bg){position:relative;z-index:1}.section-head.light .section-no{color:#d2b47f}.section-head.light h2{color:#f7f2e9}.section-head.light h2 em{color:#e0c18d}.pair-cards{max-width:1120px;margin:auto;display:grid;grid-template-columns:1fr 94px 1fr;align-items:stretch}.pair-card{position:relative;padding:40px 36px 34px;border:1px solid rgba(239,224,202,.24);background:rgba(244,238,228,.07);backdrop-filter:blur(7px);min-height:350px}.pair-card::before{content:"";position:absolute;inset:8px;border:1px solid rgba(233,210,175,.08);pointer-events:none}.pair-card.featured{background:rgba(244,231,207,.12);border-color:rgba(221,188,134,.48)}.pair-index{position:absolute;right:23px;top:17px;font:italic 37px/1 Georgia,serif;color:rgba(241,220,185,.14)}.pair-label{font-size:8px;font-weight:800;letter-spacing:.25em;color:#d0b381;margin:0 0 13px}.pair-card h3{font:700 34px/1.2 var(--serif);margin:0 0 23px;color:#fff}.pair-card h3 span{display:block;font:700 8px/1 var(--sans);letter-spacing:.22em;color:#bcae9a;margin-top:8px}.pair-card>p:not(.pair-label){font-size:13px;color:#ddd7cf;line-height:1.9;margin-bottom:30px}.pair-rule{position:absolute;left:36px;right:36px;bottom:28px;border-top:1px solid rgba(255,255,255,.12);padding-top:13px;font-size:10px;color:#dcc8a7}.pair-arrow{display:grid;place-items:center;align-content:center;gap:10px;color:#d5b982}.pair-arrow span{font-size:7px;letter-spacing:.28em;writing-mode:vertical-rl}.pair-arrow i{font-style:normal;font-size:12px}.vow{max-width:760px;margin:58px auto 0;text-align:center;display:flex;align-items:center;gap:18px;color:#e2d6c7}.vow-line{height:1px;flex:1;background:linear-gradient(90deg,transparent,#baa078,transparent)}.vow p{font:500 clamp(15px,1.8vw,19px)/1.8 var(--serif);margin:0}

/* character cards: preserve original complete 4:3 artwork */
.characters{background:#f8f4ee;position:relative}.characters::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 10% 15%,rgba(178,146,98,.07),transparent 28%),radial-gradient(circle at 88% 80%,rgba(70,100,116,.05),transparent 25%);pointer-events:none}.characters>*{position:relative;z-index:1}.character-group{max-width:1240px;margin:0 auto 76px}.character-group:last-child{margin-bottom:0}.group-title{display:flex;align-items:end;justify-content:space-between;border-bottom:1px solid #d8cfc3;padding-bottom:12px;margin-bottom:20px}.group-title span{font-size:9px;letter-spacing:.22em;color:#907047;font-weight:800}.group-title b{font:700 16px/1 var(--serif)}.character-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.character-card{border:0;padding:0;background:transparent;cursor:pointer;text-align:left;min-width:0}.character-card-image{position:relative;aspect-ratio:4/3;overflow:hidden;background:#e9e1d7;box-shadow:0 9px 28px rgba(63,56,48,.09);border:1px solid rgba(117,96,68,.18);transition:transform .28s ease,box-shadow .28s ease}.character-card-image::after{content:"";position:absolute;inset:7px;border:1px solid rgba(255,255,255,.30);pointer-events:none}.character-card img{width:100%;height:100%;object-fit:contain;background:#e9e1d7}.character-card:hover .character-card-image{transform:translateY(-4px);box-shadow:0 18px 34px rgba(63,56,48,.15)}.card-action{display:flex;justify-content:flex-end;align-items:center;gap:6px;padding:9px 3px 0;font-size:8px;font-weight:800;letter-spacing:.16em;color:#85725b}.card-action b{font-size:13px;font-weight:400;line-height:1}

/* webtoon promo */
.webtoon-promo{position:relative;min-height:590px;display:flex;align-items:center;padding:86px clamp(20px,8vw,120px);overflow:hidden}.webtoon-promo-bg{position:absolute;inset:0;background:url('assets/bg_mount.webp') center/cover no-repeat;transform:scale(1.03);filter:saturate(.78)}.webtoon-promo-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(25,34,38,.48),rgba(25,34,38,.14) 62%,rgba(25,34,38,.08))}.webtoon-promo-panel{position:relative;z-index:2;max-width:560px;padding:38px 40px;background:rgba(28,37,41,.86);border:1px solid rgba(234,216,188,.24);box-shadow:0 18px 50px rgba(22,26,28,.22);color:#f4eee5}.webtoon-promo-panel::before{content:"";position:absolute;inset:8px;border:1px solid rgba(223,196,153,.12);pointer-events:none}.webtoon-promo-panel>p:first-child{font-size:9px;font-weight:800;letter-spacing:.24em;color:#dfc28f}.webtoon-promo h2{font:650 clamp(34px,4.5vw,58px)/1.23 var(--serif);letter-spacing:-.05em;margin:12px 0 18px}.promo-copy{font-size:13px;line-height:1.9;color:#dfdbd4;margin-bottom:25px}.webtoon-promo .btn.primary{background:#f4ede3;color:#2c302f;border-color:#f4ede3}

.final-cta{text-align:center;background:radial-gradient(circle at center top,#fffaf0 0,#f3ede3 47%,#ebe4d9 100%);position:relative;overflow:hidden}.final-cta::before,.final-cta::after{content:"";position:absolute;width:340px;height:340px;border:1px solid rgba(174,144,96,.14);border-radius:50%;top:50%;transform:translateY(-50%)}.final-cta::before{left:-230px}.final-cta::after{right:-230px}.final-ornament{color:#af8d5a;font-size:18px;margin-bottom:20px}.final-cta h2{margin-bottom:19px}.final-copy{color:var(--muted);font-size:14px;margin-bottom:27px}.final-btn{background:#2d363a;color:#fff;border-color:#2d363a}.final-btn:hover{background:#1e272b;transform:translateY(-2px)}footer{display:flex;justify-content:space-between;gap:20px;padding:22px clamp(20px,5vw,70px);background:#22282b;color:#9ea1a1;font-size:8px;letter-spacing:.12em;text-transform:uppercase}

/* modals */
.character-modal,.webtoon-modal{border:0;padding:0;background:transparent;max-width:none;max-height:none}.character-modal::backdrop,.webtoon-modal::backdrop{background:rgba(21,25,27,.78);backdrop-filter:blur(7px)}.character-modal{width:min(1040px,94vw);background:#f8f3ec;box-shadow:0 30px 90px rgba(0,0,0,.34)}.character-modal-inner{display:grid;grid-template-columns:1.2fr .8fr;min-height:520px}.modal-image-wrap{display:flex;align-items:center;justify-content:center;background:#ddd4c8;padding:18px}.modal-image-wrap img{width:100%;height:auto;max-height:76vh;object-fit:contain}.modal-copy{padding:50px 44px;align-self:center}.modal-role{font-size:9px;letter-spacing:.18em;color:#917246;font-weight:800}.modal-copy h3{font:700 36px/1.25 var(--serif);margin:7px 0 10px}.modal-magic{font-size:12px;color:#72675c}.modal-desc{font-size:14px;color:#5f5953;line-height:1.9;margin:23px 0}.modal-copy blockquote{margin:27px 0 0;padding:18px 0 0;border-top:1px solid #d7c8b2;font:500 15px/1.85 var(--serif);color:#403a35}.modal-close{position:absolute;right:12px;top:10px;z-index:5;width:36px;height:36px;border:0;background:rgba(249,246,239,.88);font-size:25px;cursor:pointer}
.webtoon-modal{width:min(920px,96vw);height:94vh;background:#171717;box-shadow:0 30px 90px rgba(0,0,0,.5)}.webtoon-toolbar{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 18px 0 24px;background:#222;color:#eee;border-bottom:1px solid #333;position:sticky;top:0;z-index:4}.webtoon-toolbar span{display:block;font-size:8px;letter-spacing:.2em;color:#bca680}.webtoon-toolbar b{font:600 14px/1.2 var(--serif)}.webtoon-toolbar button{border:0;background:transparent;color:#fff;font-size:30px;cursor:pointer;width:42px;height:42px}.webtoon-scroll{height:calc(94vh - 64px);overflow:auto;background:#eee;scrollbar-width:thin}.webtoon-scroll>img{width:100%;height:auto}.webtoon-end{background:#faf7f1;padding:50px 20px 60px;text-align:center}.title-lockup-webtoon{margin-bottom:28px;color:#3c342d}.webtoon-end .btn{background:#2d3335;color:#fff;border-color:#2d3335}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}

@media (max-width:1080px){.character-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:980px){.desktop-nav{display:none}.site-header{height:64px}.hero-frame{inset:78px 16px 24px}.story-grid{grid-template-columns:1fr}.story-copy{max-width:700px;margin:auto}.story-visual{max-width:900px;margin:auto}.pair-cards{grid-template-columns:1fr;gap:14px}.pair-arrow{height:42px;display:flex;flex-direction:column}.pair-arrow span{writing-mode:horizontal-tb}.world-facts{grid-template-columns:1fr}.world-facts article+article{border-left:0;border-top:1px solid var(--line)}.character-modal-inner{grid-template-columns:1fr}.modal-image-wrap{padding:14px}.modal-copy{padding:32px 30px 38px}}
@media (max-width:760px){.character-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){
  .gate-panel{width:92vw;padding:36px 22px 31px}.gate-kicker{font-size:7px;letter-spacing:.23em}.title-lockup-gate strong{font-size:56px}.gate-copy{font-size:16px}.enter-btn{width:100%;justify-content:center;gap:24px}.site-header{padding:0 13px}.brand{font-size:9px}.play-mini{display:none}.section{padding:70px 16px}.section-head{margin-bottom:38px}.section-head h2,.final-cta h2{font-size:35px}.hero-card{width:91vw;margin-top:38px;padding:34px 20px 30px}.title-lockup-hero strong{font-size:52px}.hero-sub{font-size:13px;line-height:1.85}.hero-sub br{display:none}.hero-buttons{flex-direction:column;width:100%;margin:auto}.btn{width:100%}.scroll-cue{display:none}.intro-strip-inner{justify-content:flex-start;animation:marquee 18s linear infinite;width:max-content;padding-left:20px}@keyframes marquee{to{transform:translateX(-35%)}}.story-grid{gap:30px}.story-copy p{font-size:13px}.story-copy blockquote{font-size:19px}.story-visual{border-width:5px}.story-visual img{aspect-ratio:2.4/1}.world-facts{margin-top:42px}.world-facts article{padding:23px 20px}.pair-card{padding:30px 22px 73px;min-height:auto}.pair-rule{left:22px;right:22px}.vow-line{display:none}.vow p{font-size:15px}.character-grid{grid-template-columns:1fr;gap:22px}.character-card-image{aspect-ratio:4/3}.card-action{padding-right:4px}.webtoon-promo{min-height:540px;padding:58px 15px}.webtoon-promo-panel{padding:31px 24px}.webtoon-promo h2{font-size:36px}.promo-copy{font-size:12px}.final-copy br{display:none}.title-lockup-footer strong{font-size:42px}.character-modal{width:96vw}.modal-image-wrap{padding:9px}.modal-copy{padding:26px 21px 32px}.modal-copy h3{font-size:29px}.modal-desc{font-size:13px}.webtoon-modal{width:100vw;height:100vh}.webtoon-toolbar{height:58px}.webtoon-scroll{height:calc(100vh - 58px)}footer{display:block;text-align:center}footer p{margin:4px 0}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* v3: Fidelis social stakes */
.pair-stakes{max-width:1120px;margin:34px auto 0;border:1px solid rgba(231,211,181,.20);background:rgba(14,25,31,.28);padding:28px 30px 30px;backdrop-filter:blur(6px)}
.stakes-head{display:flex;align-items:end;justify-content:space-between;gap:18px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.12)}
.stakes-head span{font-size:8px;font-weight:800;letter-spacing:.22em;color:#d0b381}
.stakes-head b{font:600 clamp(17px,2.1vw,24px)/1.35 var(--serif);color:#f6eee3}
.stakes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:20px}
.stakes-grid article{padding:6px 22px 0}
.stakes-grid article+article{border-left:1px solid rgba(255,255,255,.12)}
.stakes-grid em{display:block;font-style:normal;font:650 14px/1.45 var(--serif);color:#e5c895;margin-bottom:9px}
.stakes-grid p{font-size:11px;line-height:1.82;color:#d7d1c9;margin:0}
@media (max-width:760px){.pair-stakes{padding:24px 18px}.stakes-head{display:block}.stakes-head b{display:block;margin-top:7px}.stakes-grid{grid-template-columns:1fr}.stakes-grid article{padding:16px 4px}.stakes-grid article+article{border-left:0;border-top:1px solid rgba(255,255,255,.10)}.stakes-grid p{font-size:12px}}

/* =========================================================
   v4 · Editorial entrance / Cloudflare-ready visual refresh
   ========================================================= */
:root{
  --serif:"Gowun Batang","Noto Serif KR","AppleMyungjo","Batang",serif;
  --latin:"Cormorant Garamond",Georgia,serif;
  --sans:"Noto Sans KR","Pretendard Variable","Pretendard","Apple SD Gothic Neo","Malgun Gothic",sans-serif;
}
body{font-family:var(--sans);font-weight:400;letter-spacing:-.012em}

/* Entrance: no boxed logo, editorial title over a soft parchment veil */
.gate{display:block;background:#dfe5e5;isolation:isolate}
.gate-bg{inset:-5%;background-position:center 48%;filter:saturate(.76) contrast(.94) brightness(1.02);animation:gateCinematic 16s cubic-bezier(.2,.55,.25,1) both}
.gate-light{position:absolute;inset:-30%;z-index:0;background:linear-gradient(112deg,transparent 35%,rgba(255,248,218,0) 43%,rgba(255,248,218,.44) 49%,rgba(255,248,218,.08) 57%,transparent 66%);transform:translateX(-46%);animation:gateLightSweep 8s 1.2s ease-in-out infinite;pointer-events:none}
.gate-shade{z-index:0;background:linear-gradient(90deg,rgba(247,243,235,.97) 0%,rgba(247,243,235,.90) 25%,rgba(247,243,235,.50) 49%,rgba(29,38,41,.10) 68%,rgba(20,29,33,.23) 100%),linear-gradient(180deg,rgba(255,255,255,.06),rgba(19,28,32,.22))}
.gate-content{position:absolute;z-index:3;left:clamp(30px,7.5vw,120px);top:50%;transform:translateY(-50%);width:min(610px,48vw);padding:30px 38px 32px 0;text-align:left;color:#27221d}
.gate-content::before{content:"";position:absolute;z-index:-1;left:-9vw;right:-70px;top:-62px;bottom:-62px;background:linear-gradient(90deg,rgba(250,247,240,.82),rgba(250,247,240,.58) 58%,transparent);filter:blur(1px);pointer-events:none}
.gate-academy{margin:0 0 14px;font:600 11px/1 var(--latin);letter-spacing:.34em;color:#705d45;opacity:0;transform:translateY(10px);animation:gateRise .8s .18s ease forwards}
.gate-rule{display:flex;align-items:center;gap:12px;width:205px;height:14px;margin-bottom:17px;color:#a47b45;opacity:0;animation:gateRise .8s .34s ease forwards}.gate-rule span{display:block;width:0;height:1px;background:linear-gradient(90deg,#9e7a49,rgba(158,122,73,.12));animation:ruleDraw 1.1s .52s ease forwards}.gate-rule b{font-size:8px;font-weight:400}
.gate-wordmark{display:flex;flex-direction:column;align-items:flex-start;line-height:1;color:#28231f}
.gate-wordmark span{font:700 clamp(15px,1.45vw,21px)/1.5 var(--serif);letter-spacing:.08em;opacity:0;transform:translateY(16px);animation:gateRise .85s .48s ease forwards}
.gate-wordmark strong{display:block;margin-top:4px;font:700 clamp(60px,7.2vw,108px)/.98 var(--serif);letter-spacing:-.08em;white-space:nowrap;opacity:0;clip-path:inset(0 100% 0 0);animation:wordReveal 1.15s .62s cubic-bezier(.17,.84,.29,1) forwards}
.gate-wordmark em{display:block;margin-top:17px;font:600 17px/1 var(--latin);letter-spacing:.46em;color:#826941;font-style:normal;opacity:0;transform:translateX(-10px);animation:gateRise .8s 1.18s ease forwards}
.gate-motto{margin:32px 0 27px;padding-left:18px;border-left:1px solid rgba(128,96,52,.52);font:700 clamp(15px,1.55vw,20px)/1.9 var(--serif);color:#484038;opacity:0;transform:translateY(12px);animation:gateRise .8s 1.28s ease forwards}
.gate .enter-btn{min-width:224px;justify-content:space-between;border:1px solid #344046;background:#344046;color:#fff;padding:14px 18px 14px 20px;letter-spacing:.02em;opacity:0;transform:translateY(12px);animation:gateRise .8s 1.42s ease forwards}
.gate .enter-btn:hover{background:#1e292e;border-color:#1e292e;transform:translateY(-2px)}
.gate-note{text-align:left;margin:11px 0 0;font-size:9px;letter-spacing:.02em;color:#7d746b;opacity:0;animation:gateRise .7s 1.62s ease forwards}
.gate-scrollmark{position:absolute;z-index:3;right:clamp(22px,4vw,62px);bottom:35px;display:flex;align-items:center;gap:12px;color:rgba(255,255,255,.86);font:600 9px/1 var(--latin);letter-spacing:.28em;transform:rotate(90deg);transform-origin:right bottom}.gate-scrollmark i{width:52px;height:1px;background:rgba(255,255,255,.54)}
.gate-dust{position:absolute;inset:0;z-index:1;overflow:hidden;pointer-events:none}.gate-dust i{position:absolute;width:4px;height:4px;border-radius:50%;background:rgba(255,242,198,.58);box-shadow:0 0 12px rgba(255,235,174,.45);animation:dustFloat 8s linear infinite}.gate-dust i:nth-child(1){left:57%;top:15%;animation-delay:-1s}.gate-dust i:nth-child(2){left:69%;top:31%;width:3px;height:3px;animation-delay:-5s}.gate-dust i:nth-child(3){left:79%;top:21%;animation-delay:-3s}.gate-dust i:nth-child(4){left:88%;top:49%;width:2px;height:2px;animation-delay:-6s}.gate-dust i:nth-child(5){left:61%;top:67%;width:3px;height:3px;animation-delay:-2s}.gate-dust i:nth-child(6){left:73%;top:78%;animation-delay:-7s}.gate-dust i:nth-child(7){left:92%;top:72%;width:3px;height:3px;animation-delay:-4s}.gate-dust i:nth-child(8){left:83%;top:9%;width:2px;height:2px;animation-delay:-.5s}
@keyframes gateCinematic{0%{transform:scale(1.11) translate3d(1.2%,.6%,0)}100%{transform:scale(1.02) translate3d(0,0,0)}}
@keyframes gateLightSweep{0%,18%{transform:translateX(-48%);opacity:0}35%{opacity:.9}63%{opacity:.4}82%,100%{transform:translateX(48%);opacity:0}}
@keyframes gateRise{to{opacity:1;transform:none}}
@keyframes wordReveal{0%{opacity:0;clip-path:inset(0 100% 0 0)}15%{opacity:1}100%{opacity:1;clip-path:inset(0 0 0 0)}}
@keyframes ruleDraw{to{width:160px}}
@keyframes dustFloat{0%{transform:translate3d(0,16px,0);opacity:0}18%{opacity:.75}72%{opacity:.35}100%{transform:translate3d(14px,-70px,0);opacity:0}}

/* Header wordmark */
.site-header{height:76px;background:rgba(249,246,240,.91);border-bottom:1px solid rgba(105,88,65,.12);box-shadow:0 7px 22px rgba(51,45,38,.04)}
.brand{display:flex;flex-direction:column;align-items:flex-start;gap:1px;min-width:170px;letter-spacing:0}
.brand-en{font:700 26px/.92 var(--latin);letter-spacing:.16em;color:#3b332b}
.brand-ko{font:700 8px/1.35 var(--serif);letter-spacing:.05em;color:#8c7659;margin-left:1px}
.desktop-nav{font-family:var(--latin);font-size:12px;font-weight:600;letter-spacing:.15em}
.nav-webtoon{font-family:var(--latin);font-size:12px;font-weight:600;letter-spacing:.15em}

/* Top hero: editorial rather than a repeated logo card */
.hero{place-items:center start;padding-left:clamp(28px,7vw,110px)}
.hero-bg{filter:saturate(.74) contrast(.95);transform:scale(1.035)}
.hero-overlay{background:linear-gradient(90deg,rgba(244,240,231,.94) 0%,rgba(244,240,231,.78) 33%,rgba(244,240,231,.20) 58%,rgba(23,31,35,.20) 100%),linear-gradient(180deg,rgba(255,255,255,.04),rgba(18,26,29,.26))}
.hero-bloom{background:radial-gradient(circle at 65% 23%,rgba(255,244,207,.48),transparent 33%)}
.hero-frame{inset:92px 3.3% 34px;border-color:rgba(86,70,48,.24)}
.hero-card{width:min(620px,48vw);margin-top:58px;padding:36px 40px 36px 0;text-align:left;background:transparent;border:0;box-shadow:none;backdrop-filter:none}
.hero-card::before{display:none}
.hero .eyebrow{font-family:var(--latin);font-size:11px;font-weight:600;letter-spacing:.24em;margin-bottom:16px;color:#745e41}
.hero-wordmark{display:flex;flex-direction:column;align-items:flex-start;line-height:1}.hero-wordmark span{font:700 clamp(13px,1.2vw,17px)/1.5 var(--serif);letter-spacing:.06em}.hero-wordmark strong{font:700 clamp(50px,5.2vw,78px)/1.05 var(--serif);letter-spacing:-.075em;margin-top:3px}.hero-wordmark em{font:600 14px/1 var(--latin);letter-spacing:.38em;font-style:normal;color:#896f49;margin-top:13px}.hero-sub{margin:28px 0 26px;max-width:560px;color:#554d45}.hero-buttons{justify-content:flex-start}.scroll-cue{color:#f4efe7}

/* Footer / modal wordmarks */
.footer-wordmark,.webtoon-wordmark{display:flex;flex-direction:column;align-items:center;line-height:1;color:#40372f}.footer-wordmark{margin:52px auto 0}.footer-wordmark span,.webtoon-wordmark span{font:700 12px/1.4 var(--serif);letter-spacing:.05em}.footer-wordmark strong,.webtoon-wordmark strong{font:700 44px/1.08 var(--serif);letter-spacing:-.07em;margin-top:3px}.footer-wordmark em,.webtoon-wordmark em{font:600 11px/1 var(--latin);letter-spacing:.38em;font-style:normal;color:#8b7048;margin-top:11px}.webtoon-wordmark{margin-bottom:28px}

/* Slight refinement to section typography */
.section-head h2,.final-cta h2{font-weight:700;letter-spacing:-.045em}.story-copy .lead{font-weight:700}.story-copy p,.pair-card p,.stakes-grid p,.promo-copy,.final-copy,.modal-desc{font-weight:400}

/* Mobile: prioritize readability and avoid crop-heavy first view */
@media (max-width:720px){
  .gate-bg{background-position:62% center;filter:saturate(.70) contrast(.93) brightness(1.03)}
  .gate-shade{background:linear-gradient(180deg,rgba(247,243,235,.75) 0%,rgba(247,243,235,.86) 43%,rgba(247,243,235,.97) 72%,rgba(247,243,235,.99) 100%)}
  .gate-light{opacity:.48}
  .gate-content{left:20px;right:20px;top:auto;bottom:max(54px,8svh);transform:none;width:auto;padding:0 0 0;text-align:left}
  .gate-content::before{left:-20px;right:-20px;top:-26px;bottom:-28px;background:linear-gradient(180deg,rgba(250,247,240,.08),rgba(250,247,240,.90) 28%,rgba(250,247,240,.99))}
  .gate-academy{font-size:10px;margin-bottom:10px}.gate-rule{margin-bottom:10px;width:160px}.gate-rule span{max-width:116px}
  .gate-wordmark span{font-size:14px}.gate-wordmark strong{font-size:clamp(50px,15vw,68px);white-space:normal}.gate-wordmark em{font-size:13px;margin-top:12px}
  .gate-motto{margin:22px 0 20px;font-size:14px;line-height:1.8}.gate .enter-btn{width:100%;min-width:0}.gate-note{font-size:8px}.gate-scrollmark{display:none}.gate-dust i{opacity:.25}
  .site-header{height:64px;padding:0 14px}.brand{min-width:0}.brand-en{font-size:22px}.brand-ko{display:none}.desktop-nav{display:none}.audio-label{display:none}
  .hero{place-items:end start;min-height:92svh;padding:0 18px 64px}.hero-bg{background-position:62% center}.hero-overlay{background:linear-gradient(180deg,rgba(245,241,233,.06) 0%,rgba(245,241,233,.12) 34%,rgba(245,241,233,.91) 65%,rgba(245,241,233,.99) 100%)}.hero-frame{inset:76px 13px 15px}.hero-card{width:100%;margin:0;padding:0 4px 0;text-align:left}.hero .eyebrow{font-size:10px}.hero-wordmark strong{font-size:54px}.hero-sub{font-size:13px;line-height:1.85;margin:22px 0 22px}.hero-buttons{width:100%;flex-direction:column}.hero-buttons .btn{width:100%}.scroll-cue{display:none}
}
@media (max-width:390px){.gate-wordmark strong{font-size:52px}.gate-motto{font-size:13px}.brand-en{font-size:20px}.hero-wordmark strong{font-size:48px}}

@media (prefers-reduced-motion:reduce){.gate-bg,.gate-light,.gate-dust i,.gate-academy,.gate-rule,.gate-wordmark span,.gate-wordmark strong,.gate-wordmark em,.gate-motto,.gate .enter-btn,.gate-note{animation:none!important;opacity:1!important;transform:none!important;clip-path:none!important}.gate-rule span{width:160px}}
