@charset "UTF-8";

/* ============================================================
   Fonts (Inter / JetBrains Mono: 로컬, Noto Sans KR: Google Fonts)
   ============================================================ */
@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(../assets/fonts/inter/inter-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(../assets/fonts/inter/inter-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(../assets/fonts/inter/inter-latin-ext-500-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(../assets/fonts/inter/inter-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(../assets/fonts/inter/inter-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(../assets/fonts/inter/inter-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(../assets/fonts/inter/inter-latin-ext-700-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(../assets/fonts/inter/inter-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-display:swap;font-weight:400;src:url(../assets/fonts/jetbrains-mono/jetbrains-mono-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-display:swap;font-weight:400;src:url(../assets/fonts/jetbrains-mono/jetbrains-mono-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-display:swap;font-weight:500;src:url(../assets/fonts/jetbrains-mono/jetbrains-mono-latin-ext-500-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-display:swap;font-weight:500;src:url(../assets/fonts/jetbrains-mono/jetbrains-mono-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-display:swap;font-weight:700;src:url(../assets/fonts/jetbrains-mono/jetbrains-mono-latin-ext-700-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-display:swap;font-weight:700;src:url(../assets/fonts/jetbrains-mono/jetbrains-mono-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ============================================================
   Design tokens
   ============================================================ */
:root{
  --color-primary:#0A0F2D;--color-secondary:#1A1F3C;--color-accent:#00DDFF;--color-accent2:#00B4D8;--color-accent3:#2D1A69;
  --color-nav:#9D4EDD;--color-vip:#FFD700;--color-points:#F59E0B;--color-referral:#10B981;--color-partner:#818CF8;
  --color-white:#FFFFFF;--color-neutral-100:#F0F0F0;--color-neutral-200:#E0E0E0;--color-neutral-300:#CCCCCC;--color-neutral-400:#999999;
  --color-neutral-500:#666666;--color-neutral-600:#4A4A4A;--color-neutral-700:#333333;--color-neutral-800:#1E1E1E;
  --text-primary:#FFFFFF;--text-secondary:#F0F0F0;--text-muted:#999999;--text-disabled:#666666;
  --bg-dataflow:linear-gradient(135deg,#0A0F2D 0%,#1A1F3C 50%,#2D1A69 100%);
  --space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;
  --radius-sm:.25rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;
  --shadow-accent:0 0 15px rgba(0,221,255,.4),0 0 30px rgba(0,180,216,.2);
  --transition-fast:.15s ease;--transition-base:.25s ease;--transition-slow:.5s ease;
  --z-header:100;
  --font-sans:"Inter","Noto Sans KR",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Malgun Gothic",sans-serif,"Apple Color Emoji","Segoe UI Emoji";
  --font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
  --font-mono-logo:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
}

/* ============================================================
   Base / reset
   ============================================================ */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;font-size:16px;scrollbar-width:none;-ms-overflow-style:none}
html::-webkit-scrollbar{display:none;width:0;height:0}
body{min-height:100vh;font-family:var(--font-sans);font-weight:400;color:var(--color-neutral-100);background:var(--color-primary);overflow-x:hidden;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:flex;flex-direction:column;align-items:center;scrollbar-width:none;-ms-overflow-style:none}
body::-webkit-scrollbar{display:none;width:0;height:0}
*,*:before,*:after{scrollbar-width:none;-ms-overflow-style:none}
*::-webkit-scrollbar{width:0!important;height:0!important;display:none}
h1{font-family:var(--font-sans);font-weight:700}
h2{font-family:var(--font-sans);font-weight:600}
button{font-family:var(--font-sans)}
a{color:inherit}
#app{display:block;width:100%;min-height:100vh}
@media (max-width:639px){
  html{overflow-x:hidden;max-width:100%}
  body{align-items:stretch;max-width:100%}
  #app{max-width:100%;min-width:0}
}
.router-container{position:relative;width:100%;max-width:1280px;margin-left:auto;margin-right:auto}
.align-container{width:100%;max-width:1200px;margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px}
.container{width:100%;max-width:1280px;margin:0 auto;padding:0 var(--space-4)}
@media (min-width:640px){.container{padding:0 var(--space-6)}}
@media (min-width:1024px){.container{padding:0 var(--space-8)}}
.w-full{width:100%}
.text-right{text-align:right}
.text-2xl{font-size:1.5rem}
.text-white{color:#fff}
.smooth-edge{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translateZ(0);backface-visibility:hidden;overflow:hidden}
.hidden-desktop{}
@media (min-width:1024px){.hidden-desktop{display:none!important}}

.dataflow-bg{background:var(--bg-dataflow);background-size:cover;position:fixed;inset:0;z-index:-10}

.glass-card{background:#ffffff0d;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-2xl);box-shadow:0 8px 32px #0000001a;transition:all var(--transition-base)}
.glass-card:hover{border-color:#00ddff4d;box-shadow:0 12px 40px #00000026;transform:translateY(-2px)}

.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-3) var(--space-6);border-radius:var(--radius-full);font-weight:600;font-size:.875rem;cursor:pointer;border:none;transition:all var(--transition-base);white-space:nowrap;text-decoration:none}
.btn-primary{background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent2) 100%);color:var(--color-primary);box-shadow:var(--shadow-accent)}
.btn-primary:hover{transform:scale(1.03);box-shadow:0 0 20px #00ddff80,0 0 40px #00b4d84d}
.btn-secondary{background:#ffffff0d;color:var(--color-neutral-300);border:1px solid rgba(255,255,255,.1)}
.btn-secondary:hover{background:#ffffff1a;color:var(--color-white)}
.text-gradient-accent{background:linear-gradient(135deg,var(--color-white) 0%,var(--color-accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}

/* scroll-reveal */
.animate-on-scroll,.module-enter{opacity:0;transform:translateY(40px);transition:all .8s cubic-bezier(.22,1,.36,1)}
.animate-on-scroll.visible,.module-enter.visible{opacity:1;transform:translateY(0)}

/* keyframes */
@keyframes float{0%{transform:translateY(0) rotate(0)}50%{transform:translateY(-15px) rotate(5deg)}to{transform:translateY(0) rotate(0)}}
@keyframes pulse{0%{opacity:.3}50%{opacity:.8}to{opacity:.3}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes scrollLeft{0%{transform:translate(0)}to{transform:translate(-50%)}}
@keyframes scrollRight{0%{transform:translate(-50%)}to{transform:translate(0)}}
@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}
.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}
.light-pulse{animation:pulse 4s infinite ease-in-out}

/* inline SVG icons (assets/icons.svg sprite) */
.icon{display:inline-block;height:1em;width:auto;min-width:1em;fill:currentColor;vertical-align:-.125em;flex-shrink:0}
.icon-logos-visa,.icon-logos-mastercard,.icon-logos-paypal,.icon-logos-google-pay,.icon-logos-apple-pay{height:1.25em}

/* ============================================================
   Header
   ============================================================ */
.header-sticky{position:sticky;top:max(.75rem,env(safe-area-inset-top,0px));width:calc(100% - 2rem);max-width:1280px;margin:1rem auto 0;z-index:var(--z-header);padding:0 var(--space-4);border-radius:var(--radius-2xl);overflow:visible}
@media (min-width:640px){.header-sticky{top:max(1rem,env(safe-area-inset-top,0px));margin-top:1.5rem;padding:0 var(--space-6)}}
@media (min-width:1024px){.header-sticky{padding:0 var(--space-8)}}
.header-nav{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:0 var(--space-4);height:5rem}
@media (min-width:1024px){.header-nav{padding:0 var(--space-8)}}

.logo-container{display:flex;align-items:center;gap:var(--space-3);cursor:pointer;-webkit-user-select:none;user-select:none;text-decoration:none;color:inherit}
.logo-icon-wrapper{position:relative;display:flex;align-items:center;justify-content:center;transition:transform var(--transition-slow)}
.logo-icon-glow{position:absolute;inset:0;border-radius:9999px;background:var(--color-accent);filter:blur(12px);opacity:.4;pointer-events:none}
.logo-container:hover .logo-icon-wrapper{transform:rotate(180deg)}
.logo-icon{position:relative;z-index:1;font-size:1.875rem;color:var(--color-accent);transition:all var(--transition-base)}
.logo-container:hover .logo-icon{transform:scale(1.1)}
.logo-wordmark{display:flex;align-items:center;font-family:var(--font-mono-logo);line-height:1;font-variant-ligatures:none;font-feature-settings:"liga" 0,"calt" 0,"clig" 0}
.logo-text-glow{transition:text-shadow .3s ease,color .3s ease,-webkit-text-fill-color .3s ease,background .3s ease}
.logo-text-mark{font-family:var(--font-mono-logo);font-size:1.5rem;font-weight:700;letter-spacing:.025em;background:linear-gradient(90deg,#ffffff 0%,var(--color-accent) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.logo-container:hover .logo-text-mark{background:none;-webkit-text-fill-color:#ffffff;color:#fff;text-shadow:0 0 10px rgba(0,221,255,.6),0 0 20px rgba(0,221,255,.3)}

.nav-links{display:none;align-items:center;gap:var(--space-8)}
@media (min-width:1024px){.nav-links{display:flex}}
.nav-link{position:relative;display:flex;align-items:center;gap:var(--space-1);padding:var(--space-2) 0;font-size:.875rem;font-weight:500;color:var(--color-neutral-300);background:transparent;border:none;cursor:pointer;transition:color var(--transition-base);letter-spacing:.05em;text-decoration:none}
.nav-link:hover,.nav-link.active{color:var(--color-accent)}
.nav-underline{position:absolute;bottom:0;left:50%;transform:translate(-50%);height:2px;width:0;background-color:var(--color-accent);transition:width .3s cubic-bezier(.4,0,.2,1)}
.nav-link:hover .nav-underline,.nav-link.active .nav-underline{width:100%}

.header-actions{display:flex;align-items:center;gap:var(--space-3);position:relative;z-index:2;overflow:visible;flex-shrink:0;min-width:0}
.header-actions-guest-desktop{display:none;align-items:center;gap:.75rem;flex-shrink:0;margin-left:.5rem}
@media (min-width:1024px){.header-actions-guest-desktop{display:flex}}
.btn-header-login{display:inline-flex;align-items:center;justify-content:center;min-height:2.5rem;padding:.5rem 1.5rem;border-radius:9999px;font-size:.8125rem;font-weight:600;white-space:nowrap;text-decoration:none;box-shadow:0 0 14px #00ddff38;flex-shrink:0}
@media (max-width:380px){.btn-header-login{padding:.45rem .75rem;font-size:.75rem;min-height:2.35rem}}
.guest-mobile-account-btn{display:none;align-items:center;justify-content:center;flex-shrink:0;padding:.35rem;border:1px solid rgba(255,255,255,.1);border-radius:9999px;background:#ffffff0d;color:var(--color-accent2);cursor:pointer;text-decoration:none}
.guest-mobile-account-btn .icon{font-size:1.75rem;display:block}
.mobile-menu-btn{display:none;align-items:center;justify-content:center;padding:var(--space-2);background:transparent;border:none;color:var(--color-white);font-size:1.5rem;cursor:pointer}

.mobile-menu{display:none;flex-direction:column;padding:var(--space-4);border-top:1px solid rgba(255,255,255,.1)}
.mobile-menu.open{display:flex}
.mobile-menu-digital{display:flex;flex-direction:column;gap:.25rem;margin-bottom:var(--space-6)}
.mobile-menu-section-title{padding:var(--space-2) var(--space-4);font-size:.6875rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#ffffff73}
.mobile-menu-item{padding:var(--space-3) var(--space-4);color:var(--color-neutral-300);text-decoration:none;border-radius:var(--radius-lg);transition:all var(--transition-fast);cursor:pointer}
.mobile-menu-item:hover{background:#ffffff0d;color:var(--color-accent)}
.mobile-menu-item-with-icon{display:flex;align-items:center;gap:var(--space-3)}
.mobile-menu-item-with-icon .icon{font-size:1.25rem;flex-shrink:0;opacity:.9}
.mobile-menu-item-divider{height:1px;margin:var(--space-2) var(--space-4);background:#ffffff1a}
.mobile-menu-footer{display:flex;flex-direction:column;gap:var(--space-4);margin-top:auto;padding-top:var(--space-6);border-top:1px solid rgba(255,255,255,.1)}
.mobile-menu-login-cta{width:100%;justify-content:center;min-height:3rem;padding:.75rem 1rem;border-radius:var(--radius-xl);font-weight:700;text-decoration:none;box-shadow:0 8px 24px #0df3}

@media (max-width:1023px){
  .guest-mobile-account-btn{display:flex}
  .mobile-menu-btn{display:flex}
  .header-nav{padding:0 var(--space-4)}
  .header-nav .logo-container{min-width:0;flex:1 1 auto}
  .header-nav .logo-wordmark{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
  .header-actions{gap:.375rem}
  .nav-links{display:none}
  .header-sticky{max-width:100%;overflow:visible;margin-top:max(.35rem,env(safe-area-inset-top,0px))}
  .mobile-menu{position:absolute;left:var(--space-2);right:var(--space-2);top:calc(100% + .5rem);z-index:50;margin:0;border-radius:var(--radius-2xl);border:1px solid rgba(255,255,255,.1);background:#0b0e1ef7;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 4px 6px #00000026,0 20px 48px #0000008c;max-height:min(78vh,28rem);overflow-y:auto;-webkit-overflow-scrolling:touch}
}
@media (min-width:1024px){.mobile-menu{display:none!important}}
@media (max-width:639px){
  .header-sticky{width:100%;max-width:100%;margin-left:0;margin-right:0;margin-bottom:0;padding:0 var(--space-2)}
  .header-nav{height:3.5rem;padding:0 var(--space-4)}
  .logo-text-mark{font-size:1.25rem}
  .logo-icon{font-size:1.5rem}
}

/* ============================================================
   Hero
   ============================================================ */
.hero-section{min-height:90vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:1.5rem 0;margin-bottom:2rem;position:relative;width:100%}
.hero-content{max-width:1280px;width:100%;margin:0 auto;position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}
.hero-title{font-size:3rem;font-weight:200;letter-spacing:-.025em;line-height:1.15;max-width:48rem;margin:0 auto 1.5rem}
@media (min-width:768px){.hero-title{font-size:4.5rem}}
.hero-title span{font-weight:700}
.hero-desc{font-size:1.125rem;color:#ccc;max-width:42rem;margin:0 auto 2.5rem;line-height:1.625}
@media (min-width:768px){.hero-desc{font-size:1.25rem}}
@media (max-width:639px){.hero-desc{font-size:1rem}.hero-actions,.btn-large{width:100%}}
.hero-actions{display:flex;flex-direction:column;gap:1rem;margin-bottom:4rem}
@media (min-width:640px){.hero-actions{flex-direction:row;justify-content:center}}
.btn-large{padding:1rem 2rem;font-size:1.125rem;font-weight:700;letter-spacing:.025em}
.scroll-hint{position:absolute;bottom:4rem;left:0;right:0;margin:0 auto;width:max-content;cursor:pointer;opacity:.8;display:flex;flex-direction:column;align-items:center;gap:.25rem;text-decoration:none;animation:bounce 1s infinite;transition:opacity var(--transition-base)}
.scroll-hint:hover{opacity:1}
.scroll-hint .scroll-text{font-size:.75rem;font-weight:300;letter-spacing:.3em;color:#ccc;text-transform:uppercase;text-shadow:0 0 8px rgba(0,0,0,.8)}
.scroll-hint .scroll-icon{font-size:1.875rem;color:#0df;filter:drop-shadow(0 0 8px rgba(0,221,255,.6))}

/* ============================================================
   Supported platforms marquee
   ============================================================ */
.marquee-section{margin-bottom:7rem;width:100%;overflow:hidden;padding:1.5rem 0;touch-action:pan-y}
.marquee-header{text-align:center;margin-bottom:1rem}
.marquee-label{font-size:.6875rem;font-weight:700;color:#0df;letter-spacing:.3em;text-transform:uppercase;opacity:.7}
.marquee-mask{mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%),linear-gradient(to bottom,transparent 0%,black 10%,black 90%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%),linear-gradient(to bottom,transparent 0%,black 10%,black 90%,transparent 100%);touch-action:pan-y}
.marquee-row{display:flex;overflow:hidden;margin-bottom:.25rem;touch-action:pan-y}
.marquee-track{display:flex;gap:1.5rem;width:max-content;padding:1rem 0}
.marquee-track.scroll-left{animation:scrollLeft 50s linear infinite}
.marquee-track.scroll-right{animation:scrollRight 50s linear infinite}
.marquee-section:hover .marquee-track{animation-play-state:paused}
.product-card{width:5rem;height:5rem;border-radius:1rem;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;background:transparent;border:none;transition:all .3s cubic-bezier(.34,1.56,.64,1);position:relative;z-index:1}
@media (min-width:768px){.product-card{width:6rem;height:6rem}}
.product-card:hover{transform:scale(1.25);z-index:20;background:#0f1221e6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 0 12px var(--brand-glow),inset 0 0 5px var(--brand-glow)}
.product-card-icon{width:64px;height:64px;filter:drop-shadow(0 4px 6px rgba(0,0,0,.3));transition:transform .3s}
.product-card:hover .product-card-icon{transform:scale(1.1)}

.product-tooltip{position:fixed;z-index:9999;pointer-events:none;opacity:0;transform:translateY(10px) scale(.95);transition:opacity .2s,transform .2s cubic-bezier(.19,1,.22,1);visibility:hidden;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0f1221;border:1px solid rgba(255,255,255,.15);box-shadow:0 50px 100px -20px #000000e6;border-radius:.75rem;padding:1rem;min-width:220px;max-width:280px;text-align:center}
.product-tooltip.active{opacity:1;transform:translateY(0) scale(1);visibility:visible}
.tooltip-arrow{position:absolute;bottom:-6px;left:50%;transform:translate(-50%) rotate(45deg);width:12px;height:12px;background:#0f1221;border-right:1px solid rgba(255,255,255,.15);border-bottom:1px solid rgba(255,255,255,.15);z-index:-1}
.tooltip-title{color:#fff;font-weight:700;font-size:.875rem;margin-bottom:.25rem}
.tooltip-tag{display:inline-block;padding:.125rem .5rem;border-radius:.25rem;font-size:.625rem;font-family:monospace;letter-spacing:.05em;border:1px solid;text-transform:uppercase;margin-bottom:.5rem}
.tooltip-tag.tag-type-short{background:#00ddff1a;color:#0df;border-color:#00ddff4d}
.tooltip-tag.tag-type-long{background:#00b4d81a;color:#00b4d8;border-color:#00b4d84d}
.tooltip-desc{color:#999;font-size:.75rem;line-height:1.5}

/* ============================================================
   Section headers / island
   ============================================================ */
.section-header{text-align:center;margin-bottom:3.5rem}
.section-title-bar{font-size:1.875rem;font-weight:700;margin-bottom:.75rem;display:flex;justify-content:center;align-items:center;gap:.75rem;color:#fff}
@media (min-width:768px){.section-title-bar{font-size:2.25rem}}
.title-bar-accent{width:.5rem;height:2rem;background:#0df;border-radius:9999px;display:inline-block;box-shadow:0 0 15px #0df;flex-shrink:0}
.section-sub{color:#999;max-width:42rem;margin:0 auto;font-size:.875rem}
@media (min-width:768px){.section-sub{font-size:1rem}}
.island-section{background:radial-gradient(ellipse at top,rgba(0,221,255,.05) 0%,rgba(255,255,255,.01) 70%,transparent 100%);border:1px solid rgba(255,255,255,.05);box-shadow:0 30px 60px -15px #00000080,inset 0 1px #ffffff1a;border-radius:2.5rem;padding:1.5rem}
@media (min-width:768px){.island-section{padding:3rem}}

/* ============================================================
   Matrix (비교)
   ============================================================ */
.matrix-section{margin-bottom:11rem;scroll-margin-top:7rem;width:100%}
.matrix-row{display:grid;grid-template-columns:43% 1fr 43%;gap:1.5rem;align-items:stretch;width:100%}
@media (max-width:1023px){.matrix-row{grid-template-columns:1fr}.matrix-row .matrix-vs{display:none}}
.matrix-card{border-radius:1.5rem;padding:2rem;display:flex;flex-direction:column;justify-content:space-between;transition:all .4s cubic-bezier(.25,.8,.25,1);text-decoration:none;color:inherit}
.matrix-card-left{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid #ffffff1a;background:#ffffff05;box-shadow:0 10px 30px -10px #00000080;position:relative}
.matrix-card-left:hover{border-color:#ef444480;box-shadow:0 0 40px #ef444426}
.waste-stamp{opacity:0;transform:scale(1.6) rotate(-25deg);transition:all .35s cubic-bezier(.175,.885,.32,1.275);position:absolute;right:1.5rem;top:2rem;pointer-events:none;display:flex;flex-direction:column;align-items:center;justify-content:center;border:4px solid rgba(239,68,68,.8);border-radius:.75rem;padding:.5rem 1rem;box-shadow:0 0 20px #ef44444d;background:#ef44441a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:50}
.matrix-card-left:hover .waste-stamp{opacity:1;transform:scale(1) rotate(-15deg)}
.waste-stamp-text{color:#ef4444;font-weight:900;font-size:2.25rem;letter-spacing:.1em;line-height:1;text-shadow:0 0 8px rgba(239,68,68,.8)}
.waste-stamp-sub{color:#ef4444;font-weight:700;font-size:.625rem;letter-spacing:.2em;margin-top:.25rem;text-shadow:0 0 5px rgba(239,68,68,.5)}
.matrix-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}
.matrix-card-title{font-size:1.25rem;font-weight:700;color:#ccc;letter-spacing:.05em}
.matrix-card-title-accent{font-size:1.25rem;font-weight:700;color:#fff;letter-spacing:.05em;display:flex;align-items:center;gap:.5rem}
.matrix-badge{font-size:.75rem;font-weight:700;padding:.25rem .75rem;border-radius:9999px;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
.matrix-badge.matrix-badge-red{border:1px solid rgba(239,68,68,.3);color:#f87171;background:#ef44441a}
.matrix-badge.matrix-badge-cyan{border:1px solid rgba(0,221,255,.4);color:#0df;background:#00ddff1a;animation:pulse 2s infinite;font-family:monospace}
.matrix-card-desc{color:#999;font-size:.875rem;line-height:1.625;margin-bottom:1.5rem}
.matrix-card-desc-light{color:#ccc;font-size:.875rem;line-height:1.625;margin-bottom:1.5rem}
.matrix-price-list{background:#0006;border-radius:1rem;padding:1.25rem;border:1px solid rgba(255,255,255,.05);font-size:.875rem;color:#ccc;font-family:monospace}
.matrix-price-item{display:flex;justify-content:space-between;align-items:center;padding-bottom:.75rem;margin-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.05)}
.matrix-price-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.price-bold{font-weight:700;color:#fff}
.matrix-warning{margin-top:1.25rem;padding-top:1rem;border-top:1px solid rgba(239,68,68,.2);background:linear-gradient(to right,rgba(239,68,68,.1),transparent);border-left:4px solid #ef4444;color:#f87171;font-weight:700;font-size:.875rem;padding:.75rem 1rem;border-radius:0 .5rem .5rem 0;display:flex;align-items:center;gap:.5rem}
@media (min-width:768px){.matrix-warning{font-size:.8125rem}}
.matrix-card-footer{margin-top:2rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:flex-end}
.matrix-footer-accent{border-color:#00ddff4d}
.footer-label{font-size:.75rem;color:#666;display:block;margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600}
.footer-amount{font-size:2.25rem;font-weight:800;color:#ccc;font-family:monospace}
.footer-unit{font-size:.75rem;color:#666;font-weight:400}
.footer-wasted-label{font-size:.625rem;color:#ef4444;display:block;text-transform:uppercase;letter-spacing:.05em;font-weight:700;font-family:monospace}
.footer-wasted-value{font-size:1.125rem;font-weight:700;color:#f87171;font-family:monospace}
.footer-label-accent{font-size:.75rem;color:#00b4d8;display:block;margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700}
.footer-price-accent{font-size:2.25rem;font-weight:900;letter-spacing:-.025em;color:#fff;transition:all .3s}
.matrix-card-right:hover .footer-price-accent{text-shadow:0 0 15px rgba(0,221,255,.6)}
.footer-unit-light{font-size:.875rem;font-weight:700;color:#999}
.rent-now{display:flex;align-items:center;gap:.25rem;color:#0df;transition:transform .3s;margin-bottom:.25rem}
.rent-now span{font-size:.75rem;font-weight:700;font-family:monospace;letter-spacing:.05em;text-transform:uppercase}
.rent-now .icon{font-size:1.5rem}
.matrix-card-right:hover .rent-now{transform:translate(.5rem)}
.matrix-vs{display:flex;align-items:center;justify-content:center;padding:1.5rem 0;pointer-events:none;z-index:30}
.vs-core{width:5rem;height:5rem;border-radius:50%;background:#0f1221;border:2px solid rgba(0,221,255,.4);display:flex;align-items:center;justify-content:center;box-shadow:0 0 25px #0df3;position:relative;transition:transform .3s}
.vs-core:before{content:"";position:absolute;inset:-12px;border-radius:50%;background:linear-gradient(90deg,#0df,#b142fe,#00b4d8);opacity:.3;filter:blur(8px);animation:spin 4s linear infinite}
.vs-core span{font-family:monospace;font-size:1.5rem;font-weight:900;font-style:italic;letter-spacing:.1em;background:linear-gradient(to top right,#0df,#fff,#00b4d8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.matrix-card-right{border:1px solid rgba(0,221,255,.5);background:linear-gradient(to bottom right,#00ddff26,#1a1f3cb3,#0f1221);transition:all .5s;box-shadow:0 0 50px #00ddff14;cursor:pointer;position:relative;z-index:20}
.matrix-card-right:hover{box-shadow:0 0 60px #00ddff40;border-color:#0df}
.matrix-features-grid{display:grid;grid-template-columns:1fr;gap:.875rem;margin-top:.5rem}
@media (min-width:640px){.matrix-features-grid{grid-template-columns:1fr 1fr}}
.matrix-feature{padding:.875rem;border-radius:1rem;transition:background-color .3s;text-align:left}
.matrix-feature.f-cyan{background:#00ddff0d;border:1px solid rgba(0,221,255,.2)}
.matrix-feature.f-blue{background:#00b4d80d;border:1px solid rgba(0,180,216,.2)}
.matrix-feature.f-purple{background:#a855f70d;border:1px solid rgba(168,85,247,.2)}
.matrix-feature.f-green{background:#34d3990d;border:1px solid rgba(52,211,153,.2)}
.matrix-feature.f-cyan:hover{background:#00ddff1a}
.matrix-feature.f-blue:hover{background:#00b4d81a}
.matrix-feature.f-purple:hover{background:#a855f71a}
.matrix-feature.f-green:hover{background:#34d3991a}
.matrix-feature .f-head{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}
.matrix-feature .f-head .icon{font-size:1.125rem}
.matrix-feature .f-head span{font-weight:700;font-size:.875rem}
.matrix-feature.f-cyan .f-head{color:#0df}
.matrix-feature.f-blue .f-head{color:#00b4d8}
.matrix-feature.f-purple .f-head{color:#a855f7}
.matrix-feature.f-green .f-head{color:#34d399}
.matrix-feature p{color:#999;font-size:.75rem;line-height:1.5;font-weight:400}
.matrix-container:hover .matrix-card:not(:hover){opacity:.35;filter:grayscale(40%) blur(.5px);transform:scale(.99)}

/* ============================================================
   Services
   ============================================================ */
.services-section{margin-bottom:11rem;scroll-margin-top:7rem;width:100%}
.services-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;width:100%;align-items:stretch}
@media (min-width:768px){.services-grid{grid-template-columns:repeat(3,1fr)}}
.service-card{border-radius:1.5rem;padding:2rem;border:1px solid rgba(255,255,255,.1);background:#ffffff05;position:relative;overflow:hidden;cursor:pointer;height:100%;display:flex;flex-direction:column;justify-content:space-between;transition:all .35s cubic-bezier(.34,1.56,.64,1);text-decoration:none;color:inherit}
.service-card:before{content:"";position:absolute;top:-50%;right:-50%;width:200px;height:200px;background:var(--color-accent);opacity:.05;border-radius:50%;filter:blur(40px);transition:opacity var(--transition-base)}
.service-card:hover:before{opacity:.15}
.service-card:hover{transform:translateY(-8px) scale(1.02);z-index:10;box-shadow:0 20px 40px -15px #00ddff40;border-color:#0df9}
.service-featured{border:2px solid #00DDFF;background:linear-gradient(to bottom,#0df3,#12162d,#0f1221);box-shadow:0 0 40px #0df3}
.featured-badge{position:absolute;top:-1px;right:1.5rem;background:linear-gradient(to right,#0df,#00b4d8);color:#0a0f2d;font-weight:900;font-size:.75rem;padding:.375rem 1rem;border-radius:0 0 .75rem .75rem;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 4px 12px #0000004d;display:flex;align-items:center;gap:.25rem}
.featured-badge .icon{font-size:1rem}
.service-icon-wrap{width:4rem;height:4rem;border-radius:1rem;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;font-size:1.875rem}
.service-icon-wrap.icon-indigo{background:linear-gradient(to bottom right,#6366f133,#4f46e533);border:1px solid rgba(99,102,241,.3);color:#818cf8}
.service-icon-wrap.icon-cyan-glow{background:linear-gradient(to bottom right,#06b6d44d,#3b82f64d);border:1px solid #00DDFF;color:#0df;box-shadow:0 0 20px #0df3}
.service-icon-wrap.icon-purple{background:linear-gradient(to bottom right,#a855f733,#ec489933);border:1px solid rgba(168,85,247,.3);color:#a855f7}
.service-title{font-size:1.5rem;font-weight:700;color:#fff;margin-bottom:.5rem}
.service-tags{display:flex;gap:.5rem;margin-bottom:1rem}
.service-tag{font-size:.625rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;padding:.25rem .625rem;border-radius:.25rem}
.service-tag.tag-indigo{background:#ffffff0d;color:#a5b4fc;border:1px solid rgba(255,255,255,.05)}
.service-tag.tag-cyan{background:#0df3;color:#0df;border:1px solid rgba(0,221,255,.3)}
.service-tag.tag-purple{background:#ffffff0d;color:#c4b5fd;border:1px solid rgba(255,255,255,.05)}
.service-desc{color:#999;font-size:.875rem;line-height:1.625;margin-bottom:2rem}
.service-desc-light{color:#ccc;font-size:.875rem;line-height:1.625;margin-bottom:2rem}
.service-footer,.service-footer-cyan{display:flex;align-items:center;justify-content:space-between;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1)}
.service-footer-cyan{border-color:#00ddff4d}
.service-cta-text{font-size:.75rem;color:#999;font-weight:500}
.service-cta-text-cyan{font-size:.75rem;color:#0df;font-weight:700}
.service-arrow{width:2rem;height:2rem;border-radius:50%;background:#ffffff1a;display:flex;align-items:center;justify-content:center;color:#fff}
.service-arrow-cyan{width:2rem;height:2rem;border-radius:50%;background:#0df;display:flex;align-items:center;justify-content:center;color:#000;font-weight:700;box-shadow:0 0 15px #00ddff80}

/* ============================================================
   Membership
   ============================================================ */
.membership-section{margin-bottom:11rem;scroll-margin-top:7rem;width:100%}
.sub-note{font-size:.75rem;color:#666;margin-top:.25rem;display:block;font-weight:400}
.membership-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;width:100%;align-items:stretch}
@media (min-width:1024px){.membership-grid{grid-template-columns:repeat(3,1fr)}}
.membership-card{border-radius:1.5rem;padding:2rem;border:1px solid rgba(255,255,255,.1);background:#ffffff05;position:relative;overflow:hidden;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;transition:all .35s cubic-bezier(.34,1.56,.64,1);text-decoration:none;color:inherit}
.membership-card:hover{transform:translateY(-8px) scale(1.02);z-index:10;box-shadow:0 20px 40px -15px #00ddff40;border-color:#0df9}
.membership-featured{border:2px solid #00DDFF;background:linear-gradient(to bottom,#00ddff1a,#12162d,#0f1221);box-shadow:0 0 40px #00ddff1a}
.tier-top-border{position:absolute;top:0;left:0;right:0;height:.375rem}
.tier-top-border.border-explorer{background:#666}
.tier-top-border.border-advancer{background:linear-gradient(to right,#0df,#00b4d8)}
.tier-top-border.border-navigator{background:#a855f7}
.recommended-tag{position:absolute;top:1.25rem;right:1.5rem;color:#0df;font-size:.75rem;font-weight:700;border:1px solid rgba(0,221,255,.4);background:#00ddff1a;padding:.25rem .75rem;border-radius:9999px;text-transform:uppercase;font-family:monospace}
.tier-name{font-size:1.5rem;font-weight:700;margin-bottom:.25rem;margin-top:.5rem}
.tier-name.text-neutral{color:#ccc}
.tier-name.text-accent{color:#0df}
.tier-name.text-purple{color:#a855f7}
.tier-sub{font-size:.75rem;color:#999;margin-bottom:1.5rem;font-family:monospace;text-transform:uppercase;letter-spacing:.05em}
.tier-divider{height:1px;width:100%;background:#ffffff1a;margin-bottom:1.5rem}
.divider-advancer{background:#0df3}
.tier-features{list-style:none;padding:0;margin:0 0 2rem;display:flex;flex-direction:column;gap:1rem;font-size:.875rem;color:#ccc}
.tier-features li{display:flex;align-items:flex-start}
.tier-features li .icon{font-size:1.125rem;margin-right:.625rem;margin-top:.125rem;flex-shrink:0}
.tier-features li .feat-icon-neutral{color:#999}
.tier-features li .feat-icon-accent{color:#0df}
.tier-features li .feat-icon-purple{color:#a855f7}
.tier-points{font-size:1.25rem;font-weight:700;color:#ccc}
.tier-points-accent{font-size:1.25rem;font-weight:700;color:#0df}
.tier-points-purple{font-size:1.25rem;font-weight:700;color:#a855f7}
.tier-points-unit{font-size:.75rem;color:#666}
.tier-points-unit-light{font-size:.75rem;color:#999}
.tier-btn{display:block;width:100%;padding:.875rem;border-radius:1rem;transition:all .3s;font-size:.875rem;border:none;cursor:pointer;font-weight:600;font-family:monospace;text-align:center}
.tier-btn-disabled{background:#ffffff0d;color:#999;border:1px solid rgba(255,255,255,.1)}
.tier-btn-primary{background:linear-gradient(to right,#0df,#00b4d8);color:#0a0f2d;font-weight:700}
.membership-card:hover .tier-btn-primary{box-shadow:0 0 20px #0df6}
.tier-btn-purple{background:transparent;color:#c4b5fd;border:1px solid rgba(168,85,247,.5);font-weight:700}
.membership-card:hover .tier-btn-purple{background:#a855f71a}

/* ============================================================
   FAQ
   ============================================================ */
.faq-section{margin-bottom:11rem;scroll-margin-top:7rem;width:100%}
.faq-list{max-width:56rem;margin:0 auto;display:flex;flex-direction:column;gap:1rem}
.faq-item{border-radius:1rem;background:#ffffff05;padding:1.5rem;cursor:pointer;transition:all .3s ease;border:1px solid rgba(255,255,255,.08)}
.faq-item:hover{border-color:#00ddff4d;background:#ffffff0a}
.faq-item.active{border-color:#00ddff80;background:#00ddff0a;box-shadow:0 10px 30px -10px #00000080}
.faq-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.faq-question{font-weight:700;font-size:1rem;color:#fff;display:flex;align-items:center;gap:.75rem}
@media (min-width:768px){.faq-question{font-size:1.125rem}}
.faq-number{color:#0df;font-family:monospace;font-weight:900;font-size:.875rem;background:#00ddff1a;padding:.25rem .625rem;border-radius:.5rem;border:1px solid rgba(0,221,255,.2);flex-shrink:0}
.faq-icon{font-size:1.5rem;color:#999;flex-shrink:0;transition:transform .3s ease}
.faq-item.active .faq-icon{transform:rotate(180deg);color:#0df}
.faq-answer{max-height:0;overflow:hidden;transition:max-height .35s cubic-bezier(.4,0,.2,1)}
.faq-item.active .faq-answer{max-height:500px}
.faq-answer p{font-size:.875rem;color:#ccc;line-height:1.625;padding-top:1rem;border-top:1px solid rgba(255,255,255,.05);margin-top:1rem}

/* ============================================================
   Bottom CTA / floating coupon
   ============================================================ */
.bottom-cta{text-align:center;padding-bottom:6rem}
.btn-cta{display:inline-block;background:linear-gradient(to right,#0df,#00b4d8);color:#0a0f2d;padding:1rem 2.5rem;border-radius:9999px;font-weight:700;font-size:1.125rem;letter-spacing:.025em;border:none;cursor:pointer;transition:all .3s;box-shadow:0 0 15px #0df6,0 0 30px #00b4d833;text-decoration:none}
.btn-cta:hover{transform:scale(1.03);box-shadow:0 0 30px #0df9}

.coupon-float-btn{position:fixed;bottom:1.25rem;right:1.25rem;z-index:190;width:64px;height:64px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(0,221,255,.4);background:linear-gradient(135deg,#162b43,#291e63);box-shadow:0 12px 40px #0000008c;color:var(--color-accent);cursor:pointer;transition:transform .2s;text-decoration:none}
.coupon-float-btn:hover{transform:translateY(-4px) scale(1.05)}
@media (min-width:640px){.coupon-float-btn{bottom:1.75rem;right:1.75rem}}
.coupon-float-inner{position:absolute;inset:5px;border-radius:50%;border:1px solid rgba(255,255,255,.1);background:#0b1328cc}
.coupon-float-icon{position:relative;font-size:1.875rem}

/* ============================================================
   Footer
   ============================================================ */
.footer{margin-top:6rem;border-top:1px solid rgba(255,255,255,.1);border-radius:0;width:100%}
.footer.glass-card:hover{transform:none;border-color:rgba(255,255,255,.1);box-shadow:0 8px 32px #0000001a}
@media (min-width:768px){.footer{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}}
.footer .container{max-width:1280px;margin-left:auto;margin-right:auto;width:100%;padding-top:var(--space-8);padding-bottom:var(--space-8)}
.footer-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-6);margin-bottom:var(--space-8)}
@media (min-width:768px){.footer-grid{grid-template-columns:repeat(5,1fr)}}
.footer-brand{grid-column:span 2}
@media (min-width:768px){.footer-brand{grid-column:span 1}}
.brand-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);text-decoration:none;color:inherit}
.footer .logo-icon-glow{filter:blur(10px);opacity:.35}
.footer .logo-icon{font-size:1.5rem}
.footer .logo-icon-wrapper{transition:none}
.footer .logo-container:hover .logo-icon-wrapper{transform:none}
.footer .logo-container:hover .logo-icon{transform:none}
.brand-desc{font-size:.75rem;color:var(--color-neutral-400);line-height:1.6;margin-bottom:var(--space-4)}
.footer-column{display:flex;flex-direction:column}
.column-title{font-size:.875rem;font-weight:700;color:var(--color-white);margin-bottom:var(--space-4)}
.column-links{list-style:none;display:flex;flex-direction:column;gap:var(--space-2)}
.column-links li a{font-size:.75rem;color:var(--color-neutral-400);text-decoration:none;transition:color var(--transition-base)}
.column-links li a:hover{color:var(--color-accent)}
.footer-badges{display:flex;flex-direction:column;align-items:center;gap:var(--space-6);padding:var(--space-4);background:#ffffff0d;border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-xl);margin-bottom:var(--space-6)}
@media (min-width:768px){.footer-badges{flex-direction:row;justify-content:space-between}}
.badge-section{display:flex;flex-direction:column;gap:var(--space-2);align-items:center}
@media (min-width:768px){.badge-section-right{align-items:flex-end}}
.badge-label{font-size:.625rem;color:var(--color-neutral-400);text-transform:uppercase;letter-spacing:.1em;font-weight:600}
.payment-icons{display:flex;align-items:center;gap:var(--space-4);font-size:1.25rem;opacity:.85;transition:all .3s ease}
.payment-icons:hover{opacity:1}
.payment-icons .icon-logos-visa,.payment-icons .icon-logos-mastercard{background:#fff;border-radius:var(--radius-sm);padding:0 .25rem}
.crypto-icon{color:#f7931a}
.badge-divider{width:100%;height:1px;background:#ffffff1a}
@media (min-width:768px){.badge-divider{width:1px;height:2rem}}
.security-badges{display:flex;align-items:center;gap:var(--space-4);font-size:1.25rem;color:var(--color-neutral-400)}
.security-badge{display:flex;align-items:center;gap:var(--space-1)}
.security-badge .icon{font-size:1.25rem;color:var(--color-accent)}
.security-badge span{font-size:.625rem;font-family:var(--font-mono)}
.affiliate-note{font-size:.6875rem;color:var(--color-neutral-500);line-height:1.6;margin-bottom:var(--space-4);text-align:center}
@media (min-width:768px){.affiliate-note{text-align:left}}
.siteda-badge{display:inline-flex;align-items:center;margin-left:var(--space-2)}
.siteda-badge svg{display:block;height:38px;width:auto;opacity:.9;transition:opacity var(--transition-base)}
.siteda-badge:hover svg{opacity:1}
@media (max-width:639px){.security-badges{flex-wrap:wrap;justify-content:center}}
.footer-bottom{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding-top:var(--space-6);border-top:1px solid rgba(255,255,255,.1);font-size:.75rem;color:var(--color-neutral-500)}
@media (min-width:768px){.footer-bottom{flex-direction:row;justify-content:space-between}}
.copyright{text-align:center}
@media (min-width:768px){.copyright{text-align:left}}
.footer-meta{display:flex;gap:var(--space-4);margin-top:var(--space-4)}
@media (min-width:768px){.footer-meta{margin-top:0}}
.status-ok{color:#10b981}

/* ============================================================
   Guides (홈 섹션 + 목록 + 글)
   ============================================================ */
.guides-section{margin-bottom:11rem;scroll-margin-top:7rem;width:100%}
.guides-page{padding:2rem 0 4rem}
.guides-page .section-header h1{margin-top:1rem}
.guides-grid{display:grid;grid-template-columns:1fr;gap:1.25rem;width:100%}
@media (min-width:768px){.guides-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.guides-grid{grid-template-columns:repeat(3,1fr)}}
.guide-card{display:flex;flex-direction:column;padding:1.5rem;text-decoration:none;color:inherit;border-radius:1.25rem}
.guide-card h2,.guide-card h3{font-size:1.0625rem;font-weight:700;color:#fff;line-height:1.4;margin-bottom:.5rem}
.guide-card p{font-size:.8125rem;color:#999;line-height:1.6;flex:1}
.guide-card-more{margin-top:1rem;font-size:.75rem;font-weight:700;color:#0df;letter-spacing:.05em}
.guide-card-all{border-style:dashed}

.article-breadcrumb{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;font-size:.8125rem;color:#999;margin:2rem 0 1rem}
.article-breadcrumb a{color:#ccc;text-decoration:none}
.article-breadcrumb a:hover{color:#0df}
.article{max-width:46rem;margin:0 auto 5rem;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:1.5rem;padding:2rem 1.5rem}
@media (min-width:768px){.article{padding:3rem 3rem 2.5rem}}
.article-head h1{font-size:1.75rem;font-weight:700;line-height:1.3;color:#fff;letter-spacing:-.01em}
@media (min-width:768px){.article-head h1{font-size:2.125rem}}
.article-meta{font-size:.75rem;color:#666;margin:.75rem 0 1.5rem;font-family:monospace}
.article-summary{background:#00ddff0d;border:1px solid rgba(0,221,255,.2);border-radius:1rem;padding:1.25rem 1.25rem 1.25rem 1.5rem;margin-bottom:2rem}
.article-summary h2{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:#0df;margin:0 0 .5rem;font-weight:700}
.article-summary ul{margin:0;padding-left:1.1rem;font-size:.9375rem;color:#e0e0e0;line-height:1.7}
.article h2{font-size:1.25rem;font-weight:700;color:#fff;margin:2.25rem 0 .75rem;padding-left:.875rem;border-left:4px solid #0df;line-height:1.4}
.article p{font-size:1rem;color:#ccc;line-height:1.85;margin-bottom:1rem;word-break:keep-all}
.article-cta{text-align:center;margin:2rem 0}
.article-cta .btn{width:100%;max-width:26rem}
.article-related{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.1)}
.article-related h2{font-size:1rem;border-left:none;padding-left:0;margin:0 0 .75rem}
.article-related ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}
.article-related a{font-size:.9375rem;color:#9feffF;text-decoration:none}
.article-related a:hover{color:#0df;text-decoration:underline}
.article-disclosure{font-size:.75rem;color:#666;margin-top:2rem;line-height:1.6}
