@charset "UTF-8";

/* LARVA official logo palette: cyan, deep navy, coral, and cool silver. */
:root{
  --bg:#030b1f;
  --surface:#0a1830;
  --green:#09c4d5;
  --text:#f5fbff;
  --muted:#a6b7c8;
  --line:#193b52;
  --brand-cyan:#09c4d5;
  --brand-cyan-bright:#33dbe4;
  --brand-navy:#061a31;
  --brand-coral:#e36f82;
  --brand-silver:#d9e3ee;
}
:root{color-scheme:dark;--bg:#030b1f;--surface:#0a1830;--green:#09c4d5;--text:#f5fbff;--muted:#a6b7c8;--line:#193b52;--max:1180px;--header:84px}
.site-header{background:rgba(3,11,31,.96)!important;border-bottom-color:rgba(9,196,213,.18)!important}
.hero-shade{background:linear-gradient(90deg,rgba(3,11,31,.97) 0%,rgba(6,26,49,.84) 32%,rgba(3,11,31,.30) 64%,rgba(3,11,31,.06)),linear-gradient(0deg,#030b1f 0%,transparent 30%)!important}
.hero-event-badge{background:var(--brand-coral)!important;color:#fff!important;box-shadow:0 0 24px rgba(227,111,130,.38)!important}
.guide-alert-icon,.notice-alert-mark{border-color:var(--brand-coral)!important;color:#ffdce2!important;background:rgba(227,111,130,.10)!important}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 24px)}body{margin:0;color:var(--text);background:var(--bg);font-family:"Pretendard","Noto Sans KR","Malgun Gothic",system-ui,sans-serif;font-size:16px;line-height:1.75;word-break:keep-all;overflow-wrap:break-word}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button[hidden],[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.25;font-weight:750;letter-spacing:-.055em}svg{display:block}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex="0"]:focus-visible{outline:3px solid var(--green);outline-offset:6px}::selection{background:var(--green);color:var(--bg)}.container{width:calc(100% - 96px);max-width:var(--max);margin:auto}.skip-link{position:fixed;top:10px;left:16px;z-index:100;background:var(--green);color:var(--bg);padding:10px 18px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}
.site-header{position:sticky;top:0;z-index:30;background:rgba(9,14,34,.96);border-bottom:1px solid rgba(255,255,255,.09);backdrop-filter:blur(16px)}.header-inner{min-height:var(--header);display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:inline-flex;align-items:center;gap:12px;font-size:25px;line-height:1.1;font-weight:800;letter-spacing:-1px;flex-shrink:0}.brand svg{width:24px;height:32px;color:var(--green)}.brand-light{font-weight:550}.main-nav{display:flex;align-items:center;gap:30px}.main-nav>a:not(.button){font-size:14px;font-weight:600;color:#c4ccdc;transition:color .2s}.main-nav>a:hover{color:var(--green)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:14px 26px;background:var(--green);border:1px solid var(--green);border-radius:6px;color:#061a31;font-size:15px;line-height:1.55;font-weight:750;transition:background .2s,border-color .2s,transform .2s}.button:hover{background:#33dbe4;border-color:#33dbe4;transform:translateY(-2px)}.button-small{min-height:42px;padding:9px 18px;font-size:14px}.button-outline{background:rgba(9,14,34,.3);color:var(--text);border-color:rgba(255,255,255,.35)}.button-outline:hover{background:rgba(255,255,255,.1);border-color:var(--text)}.menu-toggle{display:none}.hero{position:relative;isolation:isolate;min-height:690px;overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.hero-image{object-fit:cover;object-position:center 53%}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(9,14,34,.96) 0%,rgba(9,14,34,.82) 30%,rgba(9,14,34,.26) 62%,rgba(9,14,34,.04)),linear-gradient(0deg,#090e22 0%,transparent 28%)}.hero-inner{min-height:690px;display:flex;flex-direction:column;justify-content:space-between;padding-top:112px;padding-bottom:28px}.hero-copy{max-width:675px}.eyebrow{font-family:system-ui,sans-serif;font-size:12px;font-weight:700;line-height:1.5;letter-spacing:1.6px;color:var(--green);margin-bottom:24px}.hero .eyebrow{display:flex;gap:13px;align-items:center}.line{width:30px;height:1px;background:var(--green)}h1{font-size:clamp(48px,5.7vw,80px);line-height:1.2;letter-spacing:-.065em}h1 span{color:var(--green)}.hero-description{margin-top:28px;font-size:17px;line-height:1.85;color:#ced5e7;letter-spacing:-.02em}.hero-actions{display:flex;gap:12px;margin-top:33px}.hero-caption{font-size:12px;color:#8e99b5;margin-top:25px;letter-spacing:-.01em}.hero-footer{display:flex;justify-content:space-between;gap:20px;font-size:11px;font-family:system-ui,sans-serif;color:#8991a9;letter-spacing:1.5px;margin-top:62px}.connection-strip{border-block:1px solid var(--line);background:#0d1429}.connection-inner{display:flex;justify-content:center;align-items:center;gap:30px;padding-block:25px;font-size:16px;font-weight:700}.connection-line{height:1px;width:120px;background:linear-gradient(90deg,#364456,#09c4d5)}.connection-line:nth-of-type(4){transform:rotate(180deg)}.connection-label{font-size:13px;color:var(--muted);font-weight:500;letter-spacing:.03em}.section{padding:108px 0}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:36px;margin-bottom:48px}h2{font-size:clamp(34px,3.3vw,46px);line-height:1.32}.muted{color:#8792ad}.section-intro{color:var(--muted);font-size:15px;line-height:1.85;padding-bottom:5px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature-card{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:32px;display:flex;flex-direction:column;transition:border-color .2s}.feature-card:hover{border-color:#1d8190}.card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:42px}.card-number{font-size:13px;font-family:system-ui,sans-serif;letter-spacing:1px;color:#8792ad}.icon{width:32px;height:32px;fill:none;stroke:var(--green);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.feature-card h3{font-size:21px;letter-spacing:-.045em}.feature-card p{color:var(--muted);font-size:15px;line-height:1.85;margin-top:17px}.card-note{margin-top:28px;font-size:12px;color:#69dbe2;letter-spacing:.015em}.service-footnote{margin-top:24px;color:#7c88a5;font-size:12px;line-height:1.9}.audience-section{background:#0e152b;border-block:1px solid var(--line)}.audience-layout{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.audience-layout h2 span{color:var(--green)}.audience-description{color:var(--muted);margin-top:24px;font-size:15px;line-height:1.9}.audience-panel{background:#131d34;border:1px solid #2b3951;border-radius:12px;overflow:hidden}.audience-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #2b3951}.audience-tabs button{background:transparent;border:0;border-bottom:2px solid transparent;padding:21px 14px;font-size:14px;font-weight:700;color:#939fb8}.audience-tabs button[aria-selected="true"]{color:var(--green);border-bottom-color:var(--green);background:rgba(9,196,213,.04)}[role="tabpanel"]{padding:35px 36px;min-height:338px}.panel-kicker{font-size:11px;font-family:system-ui,sans-serif;color:#8c9ab3;letter-spacing:1.8px}.audience-panel h3{font-size:27px;line-height:1.5;margin-top:13px}.check-list{padding:0;list-style:none;margin:23px 0}.check-list li{font-size:14px;color:#bcc7dc;line-height:1.9;margin-top:8px;padding-left:24px;position:relative}.check-list li::before{content:"✓";color:var(--green);position:absolute;left:0}.text-link{display:inline-block;font-size:13px;font-weight:700;color:var(--green);border-bottom:1px solid #3d6954;padding-bottom:2px}.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin:59px 0 38px}.steps li{position:relative;padding-top:32px;border-top:1px solid #344158}.steps li::before{content:"";position:absolute;top:-4px;left:0;width:7px;height:7px;background:var(--green);border-radius:50%}.step-number{color:var(--green);font-family:system-ui,sans-serif;font-size:31px;font-weight:300;line-height:1}.steps h3{font-size:19px;margin-top:23px}.steps p{font-size:14px;line-height:1.9;color:var(--muted);margin-top:13px}.guide-note{display:flex;align-items:center;gap:14px;background:#101a2e;border:1px solid #25334a;padding:20px 24px;border-radius:7px}.guide-note .icon{width:23px;height:23px;flex-shrink:0}.guide-note p{font-size:14px;color:#b6c3d8;flex:1}.guide-note a{font-size:14px;font-weight:700;color:var(--green);white-space:nowrap}.owners-section{background:#111a2e;border-block:1px solid var(--line)}.owners-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.owners-lead h2 span{color:var(--green)}.owners-lead>p:not(.eyebrow){color:#a8b5ca;font-size:15px;line-height:2;margin-top:25px}.owners-lead .button{margin-top:30px}.owners-caption{display:block;margin-top:16px;color:#7e8da7;font-size:12px}.benefits article{display:flex;gap:27px;padding:27px 0;border-bottom:1px solid #2b384e}.benefits article:first-child{padding-top:0}.benefits article:last-child{border-bottom:0;padding-bottom:0}.benefits article>span{color:var(--green);font-size:13px;font-family:system-ui,sans-serif;padding-top:4px}.benefits h3{font-size:21px;letter-spacing:-.045em}.benefits p{font-size:14px;color:var(--muted);line-height:1.85;margin-top:11px}.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:75px}.faq-list{border-top:1px solid #3b455b}.faq-list details{border-bottom:1px solid #28344b}.faq-list summary{list-style:none;padding:25px 0;cursor:pointer;font-size:16px;line-height:1.65;font-weight:600;display:flex;justify-content:space-between;gap:20px;align-items:center}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{display:block;position:relative;width:16px;height:16px;flex-shrink:0}.faq-list summary>span::before,.faq-list summary>span::after{content:"";position:absolute;inset:7px 0 auto;height:1px;background:var(--green)}.faq-list summary>span::after{transform:rotate(90deg);transition:transform .2s}.faq-list details[open] summary{color:var(--green)}.faq-list details[open] summary>span::after{transform:rotate(0)}.faq-list details p{color:var(--muted);font-size:14px;line-height:1.95;padding:0 33px 25px 0}.contact-section{background:var(--green);color:#061a31;padding:75px 0}.contact-inner{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:60px}.contact-section .eyebrow{color:#08445d;margin-bottom:20px}.contact-section h2{font-size:42px;line-height:1.4}.contact-section h2+p{margin-top:20px;font-size:15px;color:#0b4f68}.contact-card{border-left:1px solid rgba(7,26,19,.22);padding-left:55px}.contact-card>span{font-size:14px;font-weight:600}.phone{display:block;font-size:45px;line-height:1.3;font-weight:750;letter-spacing:-1.8px;margin-top:8px}.phone:hover{text-decoration:underline}.contact-card p{font-size:12px;color:#0b4f68;margin-top:9px}.button-dark{background:#08243f;color:#e3fcff;border-color:#08243f;margin-top:23px;min-height:47px;padding:11px 22px;font-size:14px}.button-dark:hover{background:#0b3854;border-color:#0b3854}.contact-card .button:focus-visible,.contact-card .phone:focus-visible{outline-color:#08243f}.footer{padding:40px 0 25px;background:#080c1b}.footer-top{display:flex;align-items:center;gap:32px;flex-wrap:wrap;padding-bottom:32px}.footer .brand{font-size:22px}.footer .brand svg{width:20px;height:28px}.footer-top p{font-size:13px;color:#8792ab}.back-top{margin-left:auto;font-size:12px;color:#c5cee0;border-bottom:1px solid #526078;padding-bottom:3px}.footer-bottom{border-top:1px solid #212a3b;padding-top:23px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#738099;font-family:system-ui,"Malgun Gothic",sans-serif}
@media(min-width:1600px){.hero-image{object-position:center 54%}.hero-shade{background:linear-gradient(90deg,rgba(9,14,34,.94),rgba(9,14,34,.76) 35%,rgba(9,14,34,.08) 75%),linear-gradient(0deg,#090e22,transparent 28%)}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.main-nav{gap:20px}.brand{font-size:23px}.main-nav>a:not(.button){font-size:13px}.hero-inner{padding-top:105px}.audience-layout,.owners-layout{gap:45px}.feature-card{padding:25px}.feature-card h3{font-size:19px}.faq-layout{gap:40px}.contact-inner{gap:35px}.contact-card{padding-left:35px}.phone{font-size:39px}.contact-section h2{font-size:38px}}
@media(max-width:800px){:root{--header:72px}.container{width:calc(100% - 44px)}.header-inner{gap:16px}.brand{font-size:23px}.brand svg{width:22px;height:29px}.menu-toggle:not([hidden]){display:flex;align-items:center;gap:12px;background:none;border:1px solid #344057;border-radius:5px;padding:9px 12px;font-size:13px}.menu-lines{position:relative;width:16px;height:12px;border-block:1px solid #d3daeb}.menu-lines::before{content:"";position:absolute;top:5px;left:0;right:0;height:1px;background:#d3daeb}.main-nav{position:absolute;top:100%;left:0;right:0;display:none;background:#10172c;border-bottom:1px solid #354057;padding:15px 22px 22px;gap:0;box-shadow:0 14px 24px #0006}.main-nav.open{display:flex;flex-direction:column;align-items:stretch}.main-nav>a:not(.button){font-size:15px;padding:13px 0}.main-nav .nav-contact{margin-top:12px;align-self:flex-start}.hero,.hero-inner{min-height:670px}.hero-inner{padding-top:84px}.hero-copy{max-width:600px}.hero-image{object-position:62% center}.hero-shade{background:linear-gradient(90deg,rgba(9,14,34,.95),rgba(9,14,34,.76) 46%,rgba(9,14,34,.38)),linear-gradient(0deg,#090e22,transparent 30%)}h1{font-size:61px}.hero-description{font-size:16px}.hero-footer{font-size:10px}.connection-inner{gap:20px;padding-block:23px;font-size:14px}.connection-line{width:50px}.connection-label{font-size:12px}.section{padding:76px 0}.section-heading{display:block;margin-bottom:35px}.section-intro{margin-top:22px}.feature-grid{grid-template-columns:1fr;gap:15px}.feature-card{padding:27px;display:block}.card-top{margin-bottom:23px}.feature-card h3{font-size:23px}.feature-card p{font-size:15px;max-width:600px}.card-note{display:block;margin-top:22px}.audience-layout,.owners-layout,.faq-layout{grid-template-columns:1fr;gap:38px}.audience-panel{max-width:650px;width:100%}.audience-layout h2{font-size:40px}.steps{grid-template-columns:repeat(2,1fr);gap:35px;margin-top:44px}.steps h3{font-size:20px}.guide-note{flex-wrap:wrap}.guide-note p{min-width:180px}.owners-lead h2{font-size:40px}.owners-lead>p:not(.eyebrow){font-size:16px}.benefits article{padding:24px 0}.faq-list summary{font-size:16px}.contact-inner{grid-template-columns:1fr;gap:32px}.contact-card{padding:28px 0 0;border-left:0;border-top:1px solid rgba(7,26,19,.25)}.contact-section{padding:57px 0}.phone{font-size:44px}.footer-top{gap:18px}.footer-top p{width:100%;order:3}.footer-bottom{flex-direction:column;gap:8px}}
@media(max-width:480px){.container{width:calc(100% - 40px)}.hero,.hero-inner{min-height:650px}.hero-inner{padding-top:75px;padding-bottom:24px}.hero .eyebrow{font-size:10px;letter-spacing:1.3px;gap:10px}.hero .line{width:20px}h1{font-size:clamp(40px,11.5vw,55px)}.hero-description{font-size:14px;margin-top:25px;line-height:1.85}.hero-description br{display:none}.hero-actions{gap:9px;margin-top:28px;flex-wrap:wrap}.button{font-size:14px;padding:13px 18px;min-height:50px}.hero-caption{font-size:11px;max-width:260px;line-height:1.8}.hero-image{object-position:64% center}.hero-shade{background:linear-gradient(90deg,rgba(9,14,34,.93),rgba(9,14,34,.75) 60%,rgba(9,14,34,.5)),linear-gradient(0deg,#090e22,transparent 45%)}.hero-footer{font-size:9px;letter-spacing:1px}.connection-inner{gap:12px;flex-wrap:wrap;padding-block:19px;font-size:13px}.connection-line{width:20px}.connection-label{font-size:10px;letter-spacing:0}.eyebrow{font-size:10px;letter-spacing:1.35px;margin-bottom:19px}h2,.audience-layout h2,.owners-lead h2{font-size:34px}.section{padding:66px 0}.section-intro{font-size:14px}.desktop-break{display:none}.feature-card h3{font-size:21px}.feature-card{padding:25px}.feature-card p{font-size:14px}.service-footnote{font-size:11px}.audience-description{font-size:14px}.audience-tabs button{font-size:13px;padding:18px 8px}[role="tabpanel"]{padding:29px 24px;min-height:345px}.audience-panel h3{font-size:24px}.check-list li{font-size:13px}.steps{gap:28px 22px}.steps h3{font-size:17px}.steps p{font-size:13px}.guide-note{padding:18px;gap:11px}.guide-note p{font-size:13px;min-width:160px}.guide-note a{margin-left:34px;font-size:13px}.owners-lead>p:not(.eyebrow){font-size:14px}.benefits h3{font-size:20px}.benefits p{font-size:13px}.benefits article{gap:20px}.faq-list summary{font-size:14px;padding:21px 0}.faq-list details p{font-size:13px}.contact-section h2{font-size:32px}.contact-section h2+p{font-size:14px}.contact-card>span{font-size:13px}.phone{font-size:42px}.footer-bottom{font-size:10px}.footer-top p{font-size:12px}}
.section-intro,.feature-card p,.audience-description,.steps p,.owners-lead>p:not(.eyebrow),.benefits p,.faq-list details p,.contact-section h2+p{font-size:16px}.check-list li,.guide-note p,.main-nav>a:not(.button),.audience-tabs button,.text-link{font-size:14px}.eyebrow,.hero .eyebrow,.panel-kicker,.hero-caption,.hero-footer,.connection-label,.service-footnote,.owners-caption,.footer-bottom,.footer-top p,.back-top{font-size:12px}.menu-toggle:not([hidden]){font-size:14px}.connection-inner{font-size:14px}.steps{list-style:decimal}.steps li::marker{color:transparent}.hero-description{font-size:17px}
@media(max-width:480px){.hero-description{font-size:16px}.hero-description br{display:block}.hero .eyebrow{font-size:11px;letter-spacing:1px}.hero-footer{font-size:10px}.connection-label{font-size:12px}.connection-inner{gap:10px}.connection-line{width:14px}.audience-tabs button{font-size:14px}.hero-caption{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
.hero-inner{position:relative}.hero-description{font-size:clamp(23px,2.1vw,29px);font-weight:700;line-height:1.5;color:#e8eefb;letter-spacing:-.04em}.hero-description strong{font-weight:inherit}.hero-pc-notice{position:absolute;right:0;bottom:98px;width:352px;padding:23px 25px;background:rgba(12,24,37,.82);border:1px solid rgba(9,196,213,.35);border-radius:9px;backdrop-filter:blur(14px)}.hero-pc-notice h2{font-size:24px;line-height:1.5;letter-spacing:-.045em}.hero-pc-notice h2 strong{color:var(--green);font-weight:inherit}.hero-pc-notice p{margin-top:13px;font-size:14px;line-height:1.85;color:#c3d2df}
@media(max-width:1100px) and (min-width:801px){.hero-pc-notice{width:305px;padding:20px}.hero-pc-notice h2{font-size:22px}.hero-pc-notice p{font-size:14px}.hero-actions{max-width:450px;flex-wrap:wrap}}
@media(max-width:800px){.hero,.hero-inner{min-height:0}.hero-inner{padding-top:74px;padding-bottom:27px}.hero-pc-notice{position:static;width:100%;max-width:480px;margin-top:28px;padding:22px 25px}.hero-footer{margin-top:32px}.hero-description{font-size:25px}.hero-pc-notice h2{font-size:24px}.hero-pc-notice p{font-size:16px}}
@media(max-width:480px){.hero-inner{padding-top:62px}.hero-description{font-size:22px}.hero-actions{gap:10px}.hero-actions .button{padding:13px 16px;font-size:14px}.hero-caption{max-width:none}.hero-pc-notice{padding:20px}.hero-pc-notice h2{font-size:22px}.hero-pc-notice p{font-size:14px}.hero-pc-notice p br{display:none}}

/* Motion and interaction system */
body::before{content:"";position:fixed;inset:0 auto auto 0;z-index:80;width:100%;height:2px;background:linear-gradient(90deg,var(--green),#e36f82);transform:scaleX(var(--scroll-progress,0));transform-origin:left;pointer-events:none;box-shadow:0 0 12px rgba(9,196,213,.45)}
.site-header{transition:min-height .35s ease,background-color .35s ease,box-shadow .35s ease,border-color .35s ease}.site-header.is-scrolled{background:rgba(7,11,27,.88);border-bottom-color:rgba(9,196,213,.16);box-shadow:0 12px 35px rgba(0,0,0,.22)}.site-header.is-scrolled .header-inner{min-height:68px}.header-inner{transition:min-height .35s ease}.brand svg{filter:drop-shadow(0 0 0 rgba(9,196,213,0));transition:transform .35s cubic-bezier(.2,.8,.2,1),filter .35s}.brand:hover svg{transform:translateY(-2px) scale(1.08);filter:drop-shadow(0 0 9px rgba(9,196,213,.55))}
.main-nav>a:not(.button){position:relative}.main-nav>a:not(.button)::after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:1px;background:var(--green);transform:scaleX(0);transform-origin:right;transition:transform .3s cubic-bezier(.2,.8,.2,1)}.main-nav>a:not(.button):hover::after,.main-nav>a.is-active::after{transform:scaleX(1);transform-origin:left}.main-nav>a.is-active{color:var(--green)}
.button{position:relative;isolation:isolate;overflow:hidden;box-shadow:0 0 0 rgba(9,196,213,0);transition:background .25s,border-color .25s,transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s}.button::before{content:"";position:absolute;z-index:-1;width:150px;height:150px;left:var(--button-x,50%);top:var(--button-y,50%);transform:translate(-50%,-50%) scale(0);border-radius:50%;background:rgba(255,255,255,.28);transition:transform .45s ease}.button:hover::before{transform:translate(-50%,-50%) scale(1)}.button:hover{box-shadow:0 10px 28px rgba(9,196,213,.17)}.button:active{transform:translateY(0) scale(.975)}.button-outline::before,.button-dark::before{background:rgba(255,255,255,.1)}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(460px circle at var(--mouse-x,72%) var(--mouse-y,42%),rgba(9,196,213,.09),transparent 70%);opacity:.8}.hero-image{transform:translate3d(0,var(--hero-parallax,0),0) scale(1.075);transform-origin:center;will-change:transform}.hero-pc-notice{overflow:hidden;transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .35s,box-shadow .35s}.hero-pc-notice::before{content:"";position:absolute;inset:-80% -40%;background:linear-gradient(110deg,transparent 42%,rgba(9,196,213,.11) 50%,transparent 58%);transform:translateX(-45%);transition:transform .8s ease}.hero-pc-notice:hover{transform:translateY(-5px);border-color:rgba(9,196,213,.65);box-shadow:0 20px 50px rgba(0,0,0,.25)}.hero-pc-notice:hover::before{transform:translateX(45%)}
.motion-ready .hero-copy .eyebrow,.motion-ready .hero-copy h1,.motion-ready .hero-description,.motion-ready .hero-actions,.motion-ready .hero-caption,.motion-ready .hero-pc-notice,.motion-ready .hero-footer{opacity:0;transform:translateY(24px)}.motion-ready.hero-ready .hero-copy .eyebrow,.motion-ready.hero-ready .hero-copy h1,.motion-ready.hero-ready .hero-description,.motion-ready.hero-ready .hero-actions,.motion-ready.hero-ready .hero-caption,.motion-ready.hero-ready .hero-pc-notice,.motion-ready.hero-ready .hero-footer{opacity:1;transform:translateY(0);transition:opacity .75s ease,transform .75s cubic-bezier(.16,1,.3,1)}.motion-ready.hero-ready .hero-copy h1{transition-delay:.08s}.motion-ready.hero-ready .hero-description{transition-delay:.16s}.motion-ready.hero-ready .hero-actions{transition-delay:.24s}.motion-ready.hero-ready .hero-caption{transition-delay:.3s}.motion-ready.hero-ready .hero-pc-notice{transition-delay:.34s}.motion-ready.hero-ready .hero-footer{transition-delay:.4s}
.reveal{opacity:0;transform:translateY(34px);transition:opacity .7s ease var(--reveal-delay,0ms),transform .7s cubic-bezier(.16,1,.3,1) var(--reveal-delay,0ms)}.reveal.is-inview{opacity:1;transform:translateY(0)}
.connection-line{position:relative;overflow:hidden;background:#25374a}.connection-line::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,var(--green),transparent);transform:translateX(-100%);animation:signal 2.6s ease-in-out infinite}.connection-line:nth-of-type(4)::after{animation-delay:1.3s}@keyframes signal{0%,20%{transform:translateX(-100%)}65%,100%{transform:translateX(100%)}}
.feature-card,.audience-panel{position:relative;isolation:isolate}.tilt-card{transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .18s ease,border-color .3s,box-shadow .3s;will-change:transform}.tilt-card::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;background:radial-gradient(420px circle at var(--glow-x,50%) var(--glow-y,50%),rgba(9,196,213,.11),transparent 52%);opacity:0;transition:opacity .3s;pointer-events:none}.tilt-card:hover::before{opacity:1}.feature-card:hover{box-shadow:0 24px 48px rgba(0,0,0,.22)}.feature-card .icon{transition:transform .4s cubic-bezier(.16,1,.3,1),filter .4s}.feature-card:hover .icon{transform:translateY(-3px) scale(1.08);filter:drop-shadow(0 0 8px rgba(9,196,213,.38))}.feature-card .card-number{transition:color .3s}.feature-card:hover .card-number{color:var(--green)}
.audience-tabs button{position:relative;transition:color .25s,background-color .25s}.audience-tabs button::after{content:"";position:absolute;left:50%;bottom:-2px;width:34%;height:2px;background:var(--green);transform:translateX(-50%) scaleX(0);transition:transform .35s cubic-bezier(.2,.8,.2,1)}.audience-tabs button[aria-selected="true"]::after{transform:translateX(-50%) scaleX(1)}.panel-enter{animation:panelIn .45s cubic-bezier(.16,1,.3,1)}@keyframes panelIn{from{opacity:0;transform:translateX(16px)}to{opacity:1;transform:translateX(0)}}
.steps li::before{box-shadow:0 0 0 0 rgba(9,196,213,.4);animation:nodePulse 2.8s ease-out infinite}.steps li:nth-child(2)::before{animation-delay:.35s}.steps li:nth-child(3)::before{animation-delay:.7s}.steps li:nth-child(4)::before{animation-delay:1.05s}@keyframes nodePulse{0%,30%{box-shadow:0 0 0 0 rgba(9,196,213,.42)}70%,100%{box-shadow:0 0 0 10px rgba(9,196,213,0)}}.step-number{transition:transform .3s,color .3s}.steps li:hover .step-number{transform:translateX(5px);color:#09c4d5}
.benefits article{transition:padding-left .3s,border-color .3s,background-color .3s}.benefits article:hover{padding-left:12px;border-color:rgba(9,196,213,.35)}.benefits article>span{transition:transform .3s,color .3s}.benefits article:hover>span{transform:translateY(-3px);color:#6eeef2}
.faq-list summary{transition:color .25s,padding-left .25s}.faq-list summary:hover{color:#e3fcff;padding-left:6px}.faq-list details[open] p{animation:answerIn .38s cubic-bezier(.16,1,.3,1)}@keyframes answerIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.contact-section{position:relative;overflow:hidden}.contact-section::before,.contact-section::after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.12);pointer-events:none}.contact-section::before{width:360px;height:360px;right:-150px;top:-240px;animation:floatOrb 7s ease-in-out infinite}.contact-section::after{width:180px;height:180px;left:-90px;bottom:-130px;animation:floatOrb 8s ease-in-out infinite reverse}@keyframes floatOrb{50%{transform:translateY(24px) scale(1.06)}}.phone{transition:letter-spacing .3s,transform .3s;transform-origin:left}.phone:hover{letter-spacing:-.8px;transform:translateX(5px)}
.back-top{transition:color .25s,transform .25s}.back-top:hover{color:var(--green);transform:translateY(-3px)}
@media(max-width:800px){.site-header.is-scrolled .header-inner{min-height:60px}.main-nav.open{animation:menuIn .28s cubic-bezier(.16,1,.3,1)}@keyframes menuIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.menu-toggle.is-open .menu-lines{border-color:transparent}.menu-toggle.is-open .menu-lines::before{transform:rotate(45deg)}.menu-toggle.is-open .menu-lines::after{content:"";position:absolute;inset:5px 0 auto;height:1px;background:#d3daeb;transform:rotate(-45deg)}.hero-image{transform:scale(1.035)}.hero::after{display:none}.reveal{transform:translateY(24px)}}

/* Three-hour free coupon registration */
.coupon-body{min-height:100vh;background:#080d1d}.coupon-main{min-height:calc(100vh - var(--header));overflow:hidden}.coupon-hero{position:relative;isolation:isolate;min-height:850px;padding:92px 0 110px;background:radial-gradient(circle at 75% 22%,rgba(20,126,92,.2),transparent 34%),linear-gradient(135deg,#090f22 0%,#0a1225 48%,#07151a 100%)}.coupon-hero::before{position:absolute;inset:0;z-index:-2;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,#000,transparent 78%);content:""}.coupon-glow{position:absolute;z-index:-1;width:420px;height:420px;border-radius:50%;filter:blur(120px);opacity:.2;pointer-events:none}.coupon-glow-one{top:-120px;right:-80px;background:#09c4d5}.coupon-glow-two{bottom:-180px;left:-160px;background:#2b75d5}.coupon-hero-inner{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(560px,1.28fr);gap:78px;align-items:start}.coupon-intro{position:sticky;top:calc(var(--header) + 48px);padding-top:18px}.coupon-intro .eyebrow{display:flex;align-items:center;gap:13px;margin-bottom:25px}.coupon-intro h1{font-size:clamp(45px,4.7vw,68px);line-height:1.22}.coupon-intro h1 span{color:var(--green)}.coupon-intro>p:not(.eyebrow){max-width:530px;margin-top:28px;color:#b9c4d8;font-size:16px;line-height:1.9}.coupon-flow{display:grid;gap:0;margin:40px 0 0;padding:0;list-style:none;border-top:1px solid rgba(255,255,255,.13)}.coupon-flow li{display:grid;grid-template-columns:46px 1fr;gap:15px;align-items:center;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.1)}.coupon-flow li>span{color:var(--green);font-size:12px;font-family:system-ui,sans-serif;letter-spacing:.08em}.coupon-flow strong{display:block;font-size:15px}.coupon-flow small{display:block;margin-top:3px;color:#7f8ca7;font-size:12px;line-height:1.6}.coupon-workspace{position:relative;padding:30px;border:1px solid rgba(9,196,213,.28);border-radius:22px;background:linear-gradient(145deg,rgba(17,27,50,.97),rgba(8,18,31,.96));box-shadow:0 32px 80px rgba(0,0,0,.36),inset 0 1px rgba(255,255,255,.04)}.coupon-workspace::before{position:absolute;inset:0;border-radius:inherit;background:linear-gradient(115deg,rgba(9,196,213,.07),transparent 38%);content:"";pointer-events:none}.coupon-panel{position:relative;padding:30px;border:1px solid #2a3852;border-radius:15px;background:rgba(9,16,35,.83)}.coupon-panel-primary{border-color:rgba(9,196,213,.35)}.coupon-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px;color:var(--green);font-family:system-ui,sans-serif;font-size:11px;font-weight:750;letter-spacing:.16em}.coupon-panel-head i{padding:5px 9px;border:1px solid rgba(9,196,213,.25);border-radius:20px;background:rgba(9,196,213,.07);font-style:normal;font-size:9px}.coupon-panel h2{font-size:28px}.coupon-panel>p{margin-top:10px;color:#8f9bb3;font-size:13px;line-height:1.75}.coupon-form{margin-top:24px}.coupon-form label{display:block;margin-bottom:9px;color:#cbd3e2;font-size:12px;font-weight:700}.coupon-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.coupon-input-row input{width:100%;height:54px;padding:0 17px;border:1px solid #34435e;border-radius:7px;outline:0;background:#0b1328;color:#f5f8ff;font:700 14px/1.2 system-ui,sans-serif;letter-spacing:.05em;transition:border-color .2s,box-shadow .2s}.coupon-input-row input::placeholder{color:#68748d;font-weight:500;letter-spacing:0}.coupon-input-row input:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(9,196,213,.12)}.coupon-input-row .button{min-height:54px;padding-inline:19px;border-radius:7px;white-space:nowrap}.coupon-message{min-height:22px;margin-top:10px;color:#8390aa;font-size:12px;line-height:1.7}.coupon-message.is-error{color:#e36f82}.coupon-message.is-success{color:#33dbe4}.coupon-issued{margin-top:16px;padding:17px;border:1px solid rgba(9,196,213,.3);border-radius:9px;background:rgba(9,196,213,.055)}.coupon-issued>span{display:block;color:#86a091;font-size:11px}.coupon-issued>div{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:7px}.coupon-issued strong{color:#e9fcff;font:800 clamp(15px,2vw,20px)/1.3 system-ui,sans-serif;letter-spacing:.08em;overflow-wrap:anywhere}.coupon-issued button{padding:7px 12px;border:1px solid rgba(9,196,213,.4);border-radius:5px;background:transparent;color:var(--green);font-size:11px;font-weight:750}.coupon-issued p{margin-top:10px;color:#8795ad;font-size:11px}.coupon-issued p b{color:var(--green);font-family:system-ui,sans-serif;font-size:13px}.coupon-connector{position:relative;display:flex;align-items:center;justify-content:center;gap:9px;height:42px}.coupon-connector span{width:32%;height:1px;background:linear-gradient(90deg,transparent,rgba(9,196,213,.45))}.coupon-connector span:last-child{transform:rotate(180deg)}.coupon-connector i{width:9px;height:9px;border:2px solid var(--green);border-radius:50%;box-shadow:0 0 18px rgba(9,196,213,.9)}.coupon-destination{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:16px;padding:18px;border:1px solid rgba(9,196,213,.38);border-radius:10px;background:linear-gradient(90deg,rgba(9,196,213,.08),rgba(9,196,213,.025))}.coupon-destination span{display:block;color:#7e9889;font-size:11px}.coupon-destination strong{display:block;margin-top:4px;color:#f2fff7;font:800 18px/1.35 system-ui,sans-serif;letter-spacing:.035em}.coupon-connect-button{min-height:46px;padding:10px 18px;flex-shrink:0}.coupon-connect-button span{display:inline;margin-left:7px;color:inherit;font-size:14px}.coupon-help{position:relative;display:flex;align-items:center;gap:10px;margin:22px 3px 0;color:#78859e;font-size:11px;line-height:1.7}.coupon-help>span{display:inline-grid;width:20px;height:20px;place-items:center;flex:0 0 auto;border:1px solid #42506a;border-radius:50%;color:#a9b3c7}.coupon-help a{color:#b8c5da;border-bottom:1px solid #46526a}.coupon-body .pcbang-app-dock{display:none}
@media(max-width:1100px){.coupon-hero-inner{grid-template-columns:.65fr 1.35fr;gap:42px}.coupon-workspace{padding:24px}.coupon-panel{padding:25px}.coupon-intro h1{font-size:48px}.main-nav{gap:16px}.main-nav>a:not(.button){font-size:12px}}
@media(max-width:900px){.coupon-hero{padding:70px 0 85px}.coupon-hero-inner{grid-template-columns:1fr;gap:42px}.coupon-intro{position:static;max-width:720px}.coupon-intro h1{font-size:52px}.coupon-flow{grid-template-columns:repeat(3,1fr);border-bottom:1px solid rgba(255,255,255,.1)}.coupon-flow li{grid-template-columns:1fr;gap:7px;padding:17px 14px;border-right:1px solid rgba(255,255,255,.1);border-bottom:0}.coupon-flow li:last-child{border-right:0}}
@media(max-width:620px){.coupon-hero{padding:48px 0 68px}.coupon-intro h1{font-size:40px}.coupon-intro>p:not(.eyebrow){font-size:14px}.coupon-flow{grid-template-columns:1fr}.coupon-flow li{grid-template-columns:42px 1fr;border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}.coupon-flow li:last-child{border-bottom:0}.coupon-workspace{padding:14px;border-radius:16px}.coupon-panel{padding:21px 17px}.coupon-panel h2{font-size:24px}.coupon-input-row{grid-template-columns:1fr}.coupon-input-row .button{width:100%}.coupon-issued>div,.coupon-destination{align-items:stretch;flex-direction:column}.coupon-issued button{align-self:flex-start}.coupon-connect-button{width:100%}.coupon-help{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){body::before{display:none}.hero-image,.hero-pc-notice,.tilt-card{transform:none!important}.connection-line::after,.steps li::before,.contact-section::before,.contact-section::after{animation:none!important}.reveal{opacity:1;transform:none}.button::before{display:none}}

/* Hero QR notice */
.hero-pc-notice{width:500px;display:grid;grid-template-columns:minmax(0,1fr) 124px;align-items:center;gap:20px;padding:22px}
.hero-notice-copy,.hero-qr{position:relative;z-index:1}
.hero-qr{--qr-size:124px;display:block;width:var(--qr-size);height:var(--qr-size);overflow:hidden;border-radius:15px;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.28);cursor:pointer;touch-action:manipulation;transition:transform .25s ease,box-shadow .25s ease}
.hero-qr:hover,.hero-qr:focus-visible{transform:translateY(-3px) scale(1.025);box-shadow:0 14px 34px rgba(0,0,0,.36),0 0 0 3px rgba(9,196,213,.38);outline:none}
.hero-qr:active{transform:scale(.97)}
.hero-qr img{position:absolute;max-width:none;width:291.262%;height:auto;left:-177.864%;top:-244.272%}
@media(max-width:1100px) and (min-width:801px){.hero-pc-notice{width:435px;grid-template-columns:minmax(0,1fr) 112px;gap:16px;padding:20px}.hero-qr{--qr-size:112px}}
@media(max-width:800px){.hero-pc-notice{width:auto;max-width:100%;grid-template-columns:minmax(0,1fr) 112px;gap:16px}.hero-qr{--qr-size:112px}}
@media(max-width:480px){.hero-pc-notice{width:calc(100% - 16px);max-width:calc(100% - 16px);align-self:flex-start;grid-template-columns:minmax(0,1fr) 96px;gap:13px;padding:18px}.hero-qr{--qr-size:96px}}

/* Group the primary actions and KakaoTalk QR panel at the lower left. */
.hero,.hero-inner{min-height:790px}
.hero-service-message{margin-top:24px;padding-left:18px;border-left:2px solid rgba(9,196,213,.7)}
.hero-service-message h2{font-size:22px;line-height:1.45;letter-spacing:-.04em}
.hero-service-message h2 strong{color:var(--green);font-weight:inherit}
.hero-service-message p{margin-top:9px;color:#c3d2df;font-size:14px;line-height:1.75}
.motion-ready .hero-service-message{opacity:0;transform:translateY(24px)}
.motion-ready.hero-ready .hero-service-message{opacity:1;transform:translateY(0);transition:opacity .75s .16s ease,transform .75s .16s cubic-bezier(.16,1,.3,1)}
.hero-bottom-cluster{position:absolute;left:0;right:0;bottom:78px;display:flex;align-items:flex-end;gap:24px}
.hero-action-stack{width:360px;flex:0 0 360px}
.hero-action-stack .hero-actions{margin-top:0}
.hero-action-stack .hero-caption{margin-top:20px}
.hero-pc-notice{position:relative;right:auto;bottom:auto}
.hero-notice-copy h2{font-size:22px}
.hero-notice-copy p strong{color:var(--green);font-size:16px;font-weight:750}
.hero-mobile-note{display:block;margin-top:6px;color:#91a7b8;font-size:11px;line-height:1.55;letter-spacing:-.015em}
@media(max-width:1100px) and (min-width:801px){.hero-bottom-cluster{gap:18px}.hero-action-stack{width:340px;flex-basis:340px}}
@media(max-width:800px){.hero,.hero-inner{min-height:0}.hero-bottom-cluster{position:static;display:flex;flex-direction:column;align-items:flex-start;gap:24px;margin-top:30px}.hero-action-stack{width:100%;flex-basis:auto}.hero-pc-notice{margin-top:0}.hero-footer{margin-top:32px}}
@media(max-width:480px){.hero-service-message{margin-top:20px;padding-left:14px}.hero-service-message h2{font-size:20px}.hero-service-message p{font-size:13px}.hero-bottom-cluster{gap:20px;margin-top:26px}.hero-pc-notice{width:100%;max-width:100%}.hero-notice-copy h2{font-size:18px}.hero-notice-copy p{font-size:12px;line-height:1.7}.hero-notice-copy p strong{font-size:14px}.hero-mobile-note{font-size:10px;line-height:1.5}}

/* Present the actions and QR contact guide as one unified panel. */
.hero-bottom-cluster{right:auto;width:910px;max-width:100%;align-items:center;gap:26px;padding:22px 24px;background:rgba(10,21,35,.88);border:1px solid rgba(9,196,213,.42);border-radius:12px;backdrop-filter:blur(14px);box-shadow:0 20px 55px rgba(0,0,0,.18)}
.hero-action-stack{width:350px;flex-basis:350px;padding-right:26px;border-right:1px solid rgba(130,153,175,.23)}
.hero-action-stack .hero-actions{flex-wrap:nowrap}
.hero-action-stack .button{padding-inline:14px;font-size:14px;white-space:nowrap}
.hero-pc-notice{width:486px;padding:0;background:transparent;border:0;border-radius:0;backdrop-filter:none;box-shadow:none}
.hero-pc-notice::before{display:none}
.hero-pc-notice:hover{transform:none;border-color:transparent;box-shadow:none}
@media(max-width:1100px) and (min-width:801px){.hero-bottom-cluster{width:820px;gap:20px;padding:20px}.hero-action-stack{width:330px;flex-basis:330px;padding-right:20px}.hero-pc-notice{width:430px;padding:0}}
@media(max-width:800px){.hero-bottom-cluster{width:100%;gap:22px;padding:22px}.hero-action-stack{width:100%;flex-basis:auto;padding:0 0 22px;border-right:0;border-bottom:1px solid rgba(130,153,175,.23)}.hero-pc-notice{width:100%;max-width:100%;padding:0}}
@media(max-width:480px){.hero-bottom-cluster{gap:18px;padding:18px}.hero-action-stack{padding-bottom:18px}.hero-pc-notice{grid-template-columns:minmax(0,1fr) 96px}}

/* High-visibility service role statement */
.service-notice{position:relative;isolation:isolate;display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:38px;margin-bottom:72px;padding:38px 42px;overflow:hidden;background:linear-gradient(125deg,rgba(18,34,53,.98),rgba(11,23,40,.96) 58%,rgba(12,42,38,.9));border:1px solid rgba(9,196,213,.42);border-radius:18px;box-shadow:0 28px 70px rgba(0,0,0,.22),inset 0 1px rgba(255,255,255,.04)}
.service-notice::before{content:"";position:absolute;z-index:-1;width:360px;height:360px;right:-100px;top:-210px;border-radius:50%;background:radial-gradient(circle,rgba(9,196,213,.2),transparent 67%);animation:serviceGlow 5s ease-in-out infinite alternate}
.service-notice::after{content:"";position:absolute;left:42px;right:42px;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--green),transparent);opacity:.9}
.service-notice-icon{position:relative;width:138px;height:138px;display:grid;place-items:center;border:1px solid rgba(9,196,213,.3);border-radius:50%;background:radial-gradient(circle,rgba(9,196,213,.12),rgba(9,196,213,.025) 68%);box-shadow:0 0 45px rgba(9,196,213,.1)}
.service-notice-icon::before{content:"";position:absolute;inset:10px;border:1px dashed rgba(9,196,213,.24);border-radius:50%;animation:serviceOrbit 14s linear infinite}
.service-notice-icon svg{width:94px;height:94px;fill:none;stroke:var(--green);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.service-signal{stroke-dasharray:7 7;animation:serviceSignal 2.2s linear infinite}
.service-notice-copy{position:relative;z-index:1}
.service-notice-kicker{display:flex;align-items:center;gap:10px;color:var(--green);font:700 11px system-ui;letter-spacing:1.55px}
.service-notice-kicker span{width:26px;height:1px;background:var(--green)}
.service-notice h2{max-width:900px;margin-top:13px;font-size:clamp(27px,2.8vw,39px);line-height:1.42;letter-spacing:-.05em}
.service-notice h2 strong{color:var(--green);font-weight:inherit}
.service-notice-explain{margin-top:16px;color:#c3cee0;font-size:16px;line-height:1.85}
.service-notice-pledge{display:flex;align-items:center;gap:14px;margin-top:22px;padding-top:20px;border-top:1px solid rgba(135,154,180,.2)}
.service-notice-pledge>span{display:grid;place-items:center;min-width:48px;height:28px;padding:0 11px;border-radius:999px;background:var(--green);color:#061a31;font-size:12px;font-weight:800}
.service-notice-pledge p{color:#aab8cd;font-size:14px;line-height:1.75}
.service-notice-pledge strong{color:#eef5ff}
.service-notice-contact{display:flex;align-items:center;gap:12px;margin-left:auto;padding-left:24px;border-left:1px solid rgba(135,154,180,.24);white-space:nowrap;transition:transform .25s,color .25s}
.service-notice-contact small{color:#8f9eb4;font-size:12px;font-weight:700}
.service-notice-contact strong{color:var(--green);font:750 22px/1.2 system-ui;letter-spacing:.3px}
.service-notice-contact:hover{color:var(--green);transform:translateY(-2px)}
@keyframes serviceSignal{to{stroke-dashoffset:-28}}
@keyframes serviceOrbit{to{transform:rotate(360deg)}}
@keyframes serviceGlow{to{transform:translate(-55px,45px) scale(1.12);opacity:.65}}
@media(max-width:800px){.service-notice{grid-template-columns:110px minmax(0,1fr);gap:26px;margin-bottom:52px;padding:30px}.service-notice-icon{width:104px;height:104px}.service-notice-icon svg{width:72px;height:72px}.service-notice h2{font-size:28px}.service-notice-explain{font-size:15px}}
@media(max-width:600px){.service-notice{grid-template-columns:1fr;gap:22px;padding:26px 23px;border-radius:14px}.service-notice::after{left:23px;right:23px}.service-notice-icon{width:86px;height:86px}.service-notice-icon svg{width:60px;height:60px}.service-notice h2{font-size:24px}.service-notice-explain{font-size:14px}.service-notice-pledge{align-items:flex-start;flex-wrap:wrap}.service-notice-pledge p{font-size:13px;flex:1;min-width:180px}.service-notice-contact{width:100%;justify-content:flex-end;margin:4px 0 0;padding:16px 0 0;border-left:0;border-top:1px solid rgba(135,154,180,.2)}}
@media(prefers-reduced-motion:reduce){.service-notice::before,.service-notice-icon::before,.service-signal{animation:none!important}}

/* Remote PC keyboard shortcut guide */
.remote-shortcuts{position:relative;overflow:hidden;background:linear-gradient(180deg,#080d1d,#0a1124);border-top:1px solid #202b40}
.remote-shortcuts::before{content:"";position:absolute;width:520px;height:520px;right:-180px;top:-270px;border-radius:50%;background:radial-gradient(circle,rgba(9,196,213,.09),transparent 68%);pointer-events:none}
.remote-shortcuts-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:42px}
.remote-shortcuts-heading .eyebrow{margin-bottom:12px}
.remote-shortcuts-heading h2{font-size:clamp(36px,3.7vw,50px)}
.remote-shortcuts-heading>p{padding-bottom:5px;color:#9daac0;font-size:15px;line-height:1.85;text-align:right}
.shortcut-board{position:relative;overflow:hidden;padding:0 30px 30px;background:rgba(15,24,43,.88);border:1px solid #2b3951;border-radius:16px;box-shadow:0 28px 70px rgba(0,0,0,.24)}
.shortcut-board::before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(9,196,213,.045) 50%,transparent 65%);transform:translateX(-100%);animation:shortcutSweep 6s ease-in-out infinite}
.shortcut-board-top{position:relative;z-index:1;height:58px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #2b3850;color:#71809b;font:650 10px system-ui;letter-spacing:1.35px}
.shortcut-status{display:flex;align-items:center;gap:9px;color:#a6b4ca}
.shortcut-status i{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 0 rgba(9,196,213,.45);animation:shortcutPulse 2s ease-out infinite}
.shortcut-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0 0;padding:0;list-style:none}
.shortcut-card{min-width:0;display:grid;grid-template-columns:minmax(245px,.9fr) minmax(160px,1fr);align-items:center;gap:22px;padding:20px 22px;background:#0c1528;border:1px solid #28364e;border-radius:10px;transition:transform .28s,border-color .28s,background-color .28s,box-shadow .28s}
.shortcut-card-featured{grid-column:1/-1;background:linear-gradient(90deg,rgba(9,196,213,.09),#0c1528 48%);border-color:rgba(9,196,213,.38)}
.shortcut-card:hover{transform:translateY(-4px);border-color:rgba(9,196,213,.55);background:#101d31;box-shadow:0 15px 30px rgba(0,0,0,.18)}
.shortcut-keys{display:flex;align-items:center;gap:6px;min-width:0;white-space:nowrap}
.shortcut-keys kbd{min-width:42px;height:38px;display:inline-grid;place-items:center;padding:0 10px;background:linear-gradient(#18243a,#111a2d);border:1px solid #43516b;border-bottom-width:3px;border-radius:7px;color:#edf4ff;font:700 12px system-ui;box-shadow:0 3px 0 #070c19,0 7px 16px rgba(0,0,0,.22);transition:transform .2s,border-color .2s,color .2s}
.shortcut-card:hover kbd{transform:translateY(-2px);border-color:#4d8c70;color:var(--green)}
.shortcut-keys b{color:#65738d;font:500 11px system-ui}
.shortcut-card>div:last-child{min-width:0;padding-left:20px;border-left:1px solid #28364e}
.shortcut-card>div:last-child>span{display:block;margin-bottom:4px;color:var(--green);font-size:11px;font-weight:700;letter-spacing:.06em}
.shortcut-card>div:last-child>strong{display:block;color:#edf3ff;font-size:17px;line-height:1.45;letter-spacing:-.025em}
.shortcut-card>div:last-child small{margin-left:7px;color:#8d9ab2;font-size:11px;font-weight:600}
@keyframes shortcutSweep{0%,35%{transform:translateX(-100%)}65%,100%{transform:translateX(100%)}}
@keyframes shortcutPulse{70%,100%{box-shadow:0 0 0 11px rgba(9,196,213,0)}}
@media(max-width:1100px){.shortcut-card{grid-template-columns:1fr;gap:15px}.shortcut-card>div:last-child{padding:14px 0 0;border-left:0;border-top:1px solid #28364e}.shortcut-keys{flex-wrap:wrap;white-space:normal}}
@media(max-width:700px){.remote-shortcuts-heading{display:block;margin-bottom:30px}.remote-shortcuts-heading>p{margin-top:16px;text-align:left}.shortcut-board{padding:0 18px 20px;border-radius:13px}.shortcut-grid{grid-template-columns:1fr;gap:12px;margin-top:18px}.shortcut-card-featured{grid-column:auto}.shortcut-card{padding:18px}.shortcut-keys{gap:4px}.shortcut-keys kbd{min-width:37px;height:35px;padding:0 8px;font-size:11px}.shortcut-card>div:last-child>strong{font-size:16px}}
@media(max-width:420px){.shortcut-keys kbd{min-width:34px;padding:0 6px;font-size:10px}.shortcut-keys b{font-size:9px}.shortcut-card{padding:16px}.shortcut-card>div:last-child small{display:block;margin:4px 0 0}}
@media(prefers-reduced-motion:reduce){.shortcut-board::before,.shortcut-status i{animation:none!important}}

/* Notice and usage policy page */
.notice-page-body{background:#080d1c}
.notice-hero{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(135deg,#0a1023 0%,#0c172a 58%,#0c221f 100%);border-bottom:1px solid #26344b}
.notice-hero::after{content:"";position:absolute;z-index:-1;inset:0;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(90deg,transparent,#000 55%,transparent)}
.notice-orb{position:absolute;z-index:-1;border-radius:50%;filter:blur(2px);pointer-events:none}
.notice-orb-one{width:420px;height:420px;right:-130px;top:-180px;background:radial-gradient(circle,rgba(9,196,213,.15),transparent 68%);animation:noticeFloat 7s ease-in-out infinite alternate}
.notice-orb-two{width:280px;height:280px;left:42%;bottom:-180px;background:radial-gradient(circle,rgba(227,111,130,.1),transparent 68%);animation:noticeFloat 9s ease-in-out infinite alternate-reverse}
.notice-hero-grid{min-height:560px;display:grid;grid-template-columns:1fr .86fr;align-items:center;gap:70px;padding-block:80px}
.notice-hero-copy .eyebrow{display:flex;align-items:center;gap:13px;margin-bottom:22px}
.notice-hero-copy h1{font-size:clamp(47px,5.1vw,70px)}
.notice-hero-copy h1 span{color:var(--green)}
.notice-hero-copy>p:not(.eyebrow){margin-top:27px;color:#adb9cf;font-size:17px;line-height:1.9}
.notice-hero-actions{display:flex;gap:12px;margin-top:32px}
.notice-hero-panel{position:relative;display:grid;grid-template-columns:auto 1fr;gap:24px;padding:34px;background:linear-gradient(145deg,rgba(20,31,51,.96),rgba(13,28,37,.95));border:1px solid rgba(227,111,130,.35);border-radius:16px;box-shadow:0 30px 70px rgba(0,0,0,.25);overflow:hidden}
.notice-hero-panel::after{content:"";position:absolute;width:170px;height:170px;right:-65px;bottom:-90px;border:1px solid rgba(9,196,213,.24);border-radius:50%;box-shadow:0 0 0 24px rgba(9,196,213,.025)}
.notice-alert-mark{width:56px;height:56px;display:grid;place-items:center;border:1px solid #e36f82;border-radius:50%;color:#e36f82;font:800 24px system-ui;box-shadow:0 0 0 0 rgba(227,111,130,.22);animation:noticePulse 2.3s ease-out infinite}
.notice-hero-panel .panel-kicker{color:#e36f82}
.notice-hero-panel h2{margin-top:8px;font-size:30px}
.notice-hero-panel div>p:not(.panel-kicker){margin-top:14px;color:#aab7cb;font-size:14px;line-height:1.85}
.notice-count{display:inline-flex;align-items:baseline;gap:8px;margin-top:22px;color:#8492a9;font-size:12px}
.notice-count strong{color:var(--green);font:300 34px/1 system-ui}
.notice-list-section{position:relative;background:#090e22}
.notice-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:46px}
.notice-section-heading .eyebrow{margin-bottom:12px}
.notice-section-heading h2 span{color:var(--green)}
.notice-section-heading>p{padding-bottom:5px;color:#98a5bb;font-size:15px;line-height:1.85;text-align:right}
.notice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;counter-reset:none}
.notice-card{position:relative;min-height:210px;display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:20px;padding:29px;background:linear-gradient(145deg,#10192e,#0d1729);border:1px solid #293750;border-radius:13px;overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s}
.notice-card::before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 38%,rgba(9,196,213,.055) 50%,transparent 62%);transform:translateX(-110%);transition:transform .8s}
.notice-card:hover{transform:translateY(-6px);border-color:rgba(9,196,213,.52);box-shadow:0 22px 45px rgba(0,0,0,.2)}
.notice-card:hover::before{transform:translateX(110%)}
.notice-card-critical{border-color:rgba(227,111,130,.3);background:linear-gradient(145deg,rgba(41,30,31,.96),#101829 65%)}
.notice-card-critical:hover{border-color:rgba(227,111,130,.65)}
.notice-card-wide{grid-column:1/-1;min-height:180px}
.notice-number{position:relative;z-index:1;color:#6f7e98;font:600 12px system-ui;letter-spacing:1px;padding-top:4px}
.notice-card>div{position:relative;z-index:1}
.notice-category{color:var(--green);font:700 10px system-ui;letter-spacing:1.25px}
.notice-card-critical .notice-category{color:#e36f82}
.notice-card h3{margin-top:10px;font-size:22px;letter-spacing:-.04em}
.notice-card div>p:last-child{max-width:780px;margin-top:13px;color:#a8b5ca;font-size:14px;line-height:1.85}
.notice-card div>p strong{color:var(--green)}
.notice-card-icon{position:relative;z-index:1;width:43px;height:43px;display:grid;place-items:center;border:1px solid rgba(9,196,213,.35);border-radius:50%;color:var(--green);font:700 14px system-ui;transition:transform .3s,background-color .3s}
.notice-card-critical .notice-card-icon{border-color:rgba(227,111,130,.42);color:#e36f82}
.notice-card:hover .notice-card-icon{transform:rotate(8deg) scale(1.08);background:rgba(9,196,213,.07)}
.notice-bottom{display:flex;align-items:center;justify-content:space-between;gap:35px;margin-top:25px;padding:26px 29px;background:#111b2f;border:1px solid #2a3951;border-radius:12px}
.notice-bottom>div{display:flex;align-items:center;gap:16px}
.notice-bottom-mark{width:42px;height:42px;display:grid;place-items:center;flex-shrink:0;border:1px solid rgba(9,196,213,.4);border-radius:50%;color:var(--green);font:750 18px system-ui}
.notice-bottom p{color:#8f9db4;font-size:13px;line-height:1.7}
.notice-bottom p strong{color:#e9f0fb;font-size:15px}
.notice-bottom .button{min-height:46px;padding:10px 18px;font-size:13px}
.notice-bottom .text-link{white-space:nowrap}
@keyframes noticeFloat{to{transform:translate(-50px,40px) scale(1.08)}}
@keyframes noticePulse{70%,100%{box-shadow:0 0 0 16px rgba(227,111,130,0)}}
@media(max-width:980px){.notice-hero-grid{grid-template-columns:1fr;gap:42px;padding-block:70px}.notice-hero-panel{max-width:700px}.notice-section-heading{display:block}.notice-section-heading>p{margin-top:20px;text-align:left}.notice-bottom{align-items:flex-start;flex-direction:column}.notice-bottom>div:last-child{width:100%;justify-content:flex-start}}
@media(max-width:700px){.notice-hero-grid{min-height:0;padding-block:60px}.notice-hero-copy h1{font-size:clamp(40px,11vw,55px)}.notice-hero-copy>p:not(.eyebrow){font-size:15px}.notice-hero-actions{flex-direction:column}.notice-hero-actions .button{width:100%}.notice-hero-panel{grid-template-columns:1fr;padding:27px 24px}.notice-alert-mark{width:48px;height:48px}.notice-hero-panel h2{font-size:25px}.notice-grid{grid-template-columns:1fr}.notice-card,.notice-card-wide{grid-column:auto;min-height:0;grid-template-columns:40px minmax(0,1fr);padding:24px 21px}.notice-card-icon{display:none}.notice-card h3{font-size:20px}.notice-card div>p:last-child{font-size:13px}.notice-bottom{padding:22px}.notice-bottom>div:first-child{align-items:flex-start}.notice-bottom>div:last-child{align-items:stretch;flex-direction:column}.notice-bottom .button{width:100%}.notice-bottom .text-link{align-self:flex-start}}
@media(prefers-reduced-motion:reduce){.notice-orb,.notice-alert-mark{animation:none!important}.notice-card::before{display:none}}

/* Official LARVA mascot with a flat LARVA PC SOLUTION / REMOTE lockup. */
.brand>svg{display:none}
.brand-wordmark{display:flex;position:relative;width:auto;height:64px;overflow:visible;align-items:center;gap:10px;flex-shrink:0}
.brand-wordmark img.brand-mascot{position:static;width:58px;height:58px;max-width:58px;object-fit:contain;filter:drop-shadow(0 7px 12px rgba(0,0,0,.22))}
.brand-wordmark::after{content:none}
.brand-copy{display:flex;flex-direction:column;justify-content:center;gap:6px;white-space:nowrap;line-height:1}
.brand-copy strong{color:#fff;font-family:Arial,Helvetica,sans-serif;font-size:15px;font-weight:900;letter-spacing:-.055em;text-shadow:none;filter:none}
.brand-copy small{color:var(--brand-cyan);font-family:system-ui,sans-serif;font-size:9px;font-weight:800;letter-spacing:.30em;text-shadow:none;filter:none}
.footer .brand-wordmark{height:58px;gap:10px}
.footer .brand-wordmark img.brand-mascot{width:52px;height:52px;max-width:52px}
.footer .brand-copy strong{font-size:14px}
@media(max-width:1100px){.brand-wordmark{height:58px;gap:9px}.brand-wordmark img.brand-mascot{width:53px;height:53px;max-width:53px}.brand-copy strong{font-size:14px}}
@media(max-width:800px){.brand-wordmark{height:52px;gap:8px}.brand-wordmark img.brand-mascot{width:48px;height:48px;max-width:48px}.brand-copy strong{font-size:12px}.brand-copy small{font-size:8px}.footer .brand-wordmark{height:50px}}
.footer-company .footer-company-lockup{display:inline-flex;flex-direction:column;justify-content:center;gap:2px;margin-right:20px;vertical-align:middle;line-height:1}
.footer-company .footer-company-lockup strong{margin:0;color:#f5fbff;font-family:Arial,Helvetica,sans-serif;font-size:12px;font-weight:900;letter-spacing:-.045em;text-shadow:none;filter:none}
.footer-company .footer-company-lockup small{color:var(--brand-cyan);font-family:system-ui,sans-serif;font-size:9px;font-weight:750;letter-spacing:.28em}
@media(max-width:560px){.footer-company .footer-company-lockup{margin-right:8px}.footer-company .footer-company-lockup strong{font-size:11px}}

/* Download page */
.download-body{background:#090e22}.download-hero{position:relative;isolation:isolate;min-height:710px;display:flex;align-items:center;overflow:hidden;background:radial-gradient(circle at 76% 42%,rgba(36,137,124,.19),transparent 34%),linear-gradient(135deg,#090e22 0%,#0b132a 58%,#0d1d2b 100%)}.download-hero::before{content:"";position:absolute;inset:0;z-index:-2;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(to right,transparent,black 44%,black)}.download-hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:105px;align-items:center;padding-block:95px}.download-copy{position:relative;z-index:1}.download-copy .eyebrow{display:flex;align-items:center;gap:13px}.download-copy h1{font-size:clamp(48px,5.2vw,74px)}.download-copy h1 span{color:var(--green)}.download-lead{margin-top:29px;font-size:clamp(21px,2vw,27px);line-height:1.6;color:#d6deef;letter-spacing:-.035em}.download-lead strong{color:#fff}.download-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:35px}.download-caption{margin-top:21px;font-size:12px;color:#8996b0}.download-card{position:relative;padding:40px;background:linear-gradient(145deg,rgba(20,34,52,.94),rgba(11,27,34,.9));border:1px solid rgba(9,196,213,.36);border-radius:16px;box-shadow:0 36px 85px rgba(0,0,0,.33);overflow:hidden}.download-card::before{content:"";position:absolute;inset:-40% -35%;background:linear-gradient(115deg,transparent 42%,rgba(9,196,213,.08),transparent 58%);animation:downloadShine 5.5s ease-in-out infinite;pointer-events:none}@keyframes downloadShine{0%,28%{transform:translateX(-38%)}70%,100%{transform:translateX(38%)}}.download-icon{position:relative;z-index:1;width:76px;height:76px;display:grid;place-items:center;margin-bottom:31px;background:rgba(9,196,213,.09);border:1px solid rgba(9,196,213,.35);border-radius:50%;cursor:pointer;transition:transform .3s cubic-bezier(.16,1,.3,1),background-color .3s,border-color .3s,box-shadow .3s}.download-icon:hover{transform:translateY(-4px) scale(1.06);background:rgba(9,196,213,.16);border-color:rgba(9,196,213,.8);box-shadow:0 12px 32px rgba(9,196,213,.18)}.download-icon:active{transform:translateY(-1px) scale(.98)}.download-icon::after{content:"";position:absolute;inset:-9px;border:1px solid rgba(9,196,213,.13);border-radius:50%;animation:downloadRing 2.8s ease-out infinite;pointer-events:none}@keyframes downloadRing{0%{transform:scale(.9);opacity:0}35%{opacity:1}100%{transform:scale(1.22);opacity:0}}.download-icon svg{width:38px;height:38px;fill:none;stroke:var(--green);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.download-card h2{position:relative;margin-top:12px;font-size:29px}.download-card p{position:relative;margin-top:17px;color:#adb9cd;font-size:15px;line-height:1.9}.download-card p strong{color:#dce9e4}.download-card .text-link{position:relative;margin-top:25px}.download-orb{position:absolute;z-index:-1;border-radius:50%;filter:blur(2px);pointer-events:none}.download-orb-one{width:360px;height:360px;right:-110px;top:30px;border:1px solid rgba(9,196,213,.14);animation:floatOrb 8s ease-in-out infinite}.download-orb-two{width:180px;height:180px;left:43%;bottom:-115px;background:rgba(9,196,213,.06);animation:floatOrb 7s ease-in-out infinite reverse}
.download-info{background:#0d1428;border-top:1px solid var(--line)}.download-details{display:grid;grid-template-columns:.78fr 1.22fr;gap:95px;align-items:start}.download-steps{list-style:none;padding:0;margin:0;border-top:1px solid #344158}.download-steps li{display:flex;gap:27px;padding:26px 0;border-bottom:1px solid #29354a;transition:padding-left .3s,border-color .3s,background-color .3s}.download-steps li:hover{padding-left:10px;border-color:rgba(9,196,213,.36)}.download-steps li>span{color:var(--green);font-size:13px;font-family:system-ui,sans-serif;padding-top:4px}.download-steps h3{font-size:20px}.download-steps p{margin-top:8px;color:var(--muted);font-size:14px;line-height:1.8}.download-back{padding:72px 0;background:var(--green);color:#061a31}.download-back-inner{display:flex;align-items:center;justify-content:space-between;gap:50px}.download-back p{font-size:14px;color:#0b4f68;font-weight:700}.download-back h2{margin-top:8px;font-size:34px;line-height:1.45}.download-back .button{flex-shrink:0}
@media(max-width:900px){.download-hero-grid{grid-template-columns:1fr;gap:46px;padding-block:76px}.download-card{max-width:650px}.download-details{grid-template-columns:1fr;gap:38px}.download-back-inner{align-items:flex-end}.download-back h2{font-size:30px}}
@media(max-width:600px){.download-hero{min-height:auto}.download-hero-grid{padding-block:65px;gap:38px}.download-copy h1{font-size:clamp(39px,11.6vw,54px)}.download-lead{font-size:20px}.download-lead br{display:none}.download-actions{flex-direction:column;align-items:stretch}.download-actions .button{width:100%}.download-card{padding:29px 25px}.download-card h2{font-size:25px}.download-card p{font-size:14px}.download-icon{width:65px;height:65px;margin-bottom:26px}.download-back{padding:55px 0}.download-back-inner{display:block}.download-back h2{font-size:27px}.download-back .button{margin-top:28px}.download-steps li{gap:20px}.download-caption{line-height:1.7}}
@media(prefers-reduced-motion:reduce){.download-card::before,.download-icon::after,.download-orb{animation:none!important}}

/* Guide page */
.guide-page-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 76% 34%,rgba(9,196,213,.12),transparent 31%),linear-gradient(135deg,#090e22,#0c162c 58%,#0a2029);border-bottom:1px solid var(--line)}.guide-page-hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 54%,rgba(9,196,213,.035) 54.2%,transparent 54.4%),linear-gradient(25deg,transparent 68%,rgba(9,196,213,.035) 68.2%,transparent 68.4%)}.guide-page-hero-grid{position:relative;display:grid;grid-template-columns:1.14fr .86fr;gap:95px;align-items:center;min-height:610px;padding-block:82px}.guide-page-hero .eyebrow{display:flex;align-items:center;gap:13px}.guide-page-hero h1{font-size:clamp(47px,5.1vw,72px)}.guide-page-lead{margin-top:28px;color:#bdc9dd;font-size:18px;line-height:1.9}.guide-page-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:33px}.unavailable-games{position:relative;display:flex;gap:24px;padding:35px;background:rgba(17,28,48,.88);border:1px solid #334159;border-radius:14px;box-shadow:0 28px 70px rgba(0,0,0,.3);overflow:hidden}.unavailable-games::after{content:"";position:absolute;width:180px;height:180px;right:-100px;bottom:-110px;border:1px solid rgba(9,196,213,.2);border-radius:50%}.guide-alert-icon{width:48px;height:48px;display:grid;place-items:center;flex:0 0 auto;border:1px solid #e36f82;border-radius:50%;color:#e36f82;font:700 21px system-ui;background:rgba(227,111,130,.08)}.unavailable-games h2{margin-top:8px;font-size:24px}.unavailable-games ul{list-style:none;padding:0;margin:21px 0 0;display:grid;gap:8px}.unavailable-games li{position:relative;padding-left:19px;color:#d5dceb;font-size:14px}.unavailable-games li::before{content:"";position:absolute;left:0;top:.78em;width:7px;height:1px;background:#e36f82}.unavailable-games div>p:last-child{margin-top:20px;color:#7f8aa3;font-size:12px;line-height:1.7}
.guide-step{background:#090e22;border-bottom:1px solid var(--line)}.guide-step-alt{background:#0d1428}.guide-step-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:90px;align-items:center}.guide-step-reverse .guide-step-copy{order:2}.guide-step-reverse>div:last-child{order:1}.guide-step-number{display:inline-block;margin-bottom:17px;color:#72809d;font:600 11px system-ui;letter-spacing:1.45px}.guide-step-copy .eyebrow{margin-bottom:10px}.guide-step-copy h2{font-size:clamp(34px,3.3vw,46px)}.guide-check-list{list-style:none;counter-reset:guide-items;padding:0;margin:30px 0 0}.guide-check-list li{counter-increment:guide-items;position:relative;margin-top:17px;padding-left:34px;color:#adb9cf;font-size:15px;line-height:1.85}.guide-check-list li::before{content:counter(guide-items);position:absolute;left:0;top:3px;width:21px;height:21px;display:grid;place-items:center;border:1px solid rgba(9,196,213,.4);border-radius:50%;color:var(--green);font:600 10px system-ui}.guide-check-list strong{color:#e8edf8}.guide-address{display:inline-flex;align-items:center;gap:13px;margin-top:27px;padding:12px 15px;background:#111a30;border:1px solid #2a3750;border-radius:6px}.guide-address span{color:#8390aa;font-size:11px}.guide-address code{color:var(--green);font:600 13px ui-monospace,Consolas,monospace}
.account-mock{border:1px solid #2b3b55;border-radius:12px;background:#0e172a;box-shadow:0 30px 70px rgba(0,0,0,.25);overflow:hidden;transform:perspective(900px) rotateY(-2deg)}.mock-window-bar{height:45px;display:flex;align-items:center;gap:7px;padding:0 16px;background:#141e33;border-bottom:1px solid #2b3b55}.mock-window-bar>span{width:8px;height:8px;border-radius:50%;background:#3d4a62}.mock-window-bar>span:first-child{background:#e36f82}.mock-window-bar>span:nth-child(2){background:#e36f82}.mock-window-bar>span:nth-child(3){background:#09c4d5}.mock-window-bar strong{margin-left:7px;color:#8c98af;font:500 10px system-ui;letter-spacing:.8px}.mock-form{max-width:400px;margin:auto;padding:34px 38px 39px}.mock-brand{display:flex;align-items:center;gap:10px;margin-bottom:27px;font-size:16px;font-weight:750}.mock-brand svg{width:17px;height:22px;color:var(--green)}.mock-form label{display:flex;justify-content:space-between;margin:14px 0 6px;color:#b9c3d6;font-size:12px;font-weight:650}.mock-form label span{color:var(--green);font-size:10px}.mock-input{height:43px;display:flex;align-items:center;padding:0 13px;background:#091024;border:1px solid #34425c;border-radius:5px;color:#7d8aa3;font-size:12px}.mock-password{letter-spacing:3px}.mock-submit{display:grid;place-items:center;height:44px;margin-top:22px;border-radius:5px;background:var(--green);color:#061a31;font-size:12px;font-weight:750}
.mock-account-hint{margin:-14px 0 22px;padding:11px 13px;border-left:2px solid var(--green);background:rgba(9,196,213,.06);color:#c4d2e5;font-size:12px;line-height:1.65}.mock-account-footnote{margin-top:12px;color:#8592aa;font-size:11px;text-align:center;line-height:1.6}
.account-mock-light{background:linear-gradient(145deg,#162238,#0c172b);transform:none}.account-mock-light .mock-window-bar{background:#18253c}.account-register-card{max-width:430px;margin:36px auto;padding:30px 34px 32px;background:#f7f8fc;border:1px solid #dce2ec;border-radius:20px;box-shadow:0 28px 55px rgba(0,0,0,.32);color:#0e1d38}.account-register-card .mock-brand{margin-bottom:18px;color:#173157;font-size:22px}.account-register-card .mock-brand svg{color:#09c4d5}.account-register-card .mock-account-hint{margin:0 0 21px;padding:0;background:transparent;border:0;color:#68758b}.account-register-card label{color:#44536b}.account-register-card label span{color:#09c4d5}.account-register-card .mock-input{background:#fff;border-color:#cfd8e6;color:#52637d}.account-register-card .mock-input-active{border-color:#09c4d5;box-shadow:0 0 0 3px rgba(9,196,213,.12);color:#223d63}.account-register-card .mock-submit{background:#09c4d5;color:#fff}.account-register-card .mock-account-footnote{color:#77849a}
@media (min-width:981px) and (max-width:1400px){#account .guide-step-grid{grid-template-columns:1fr 1fr;gap:48px;padding-right:150px}}
.security-mock{position:relative;padding:42px;background:linear-gradient(145deg,#121c31,#0d1b27);border:1px solid #2b4050;border-radius:14px;box-shadow:0 30px 70px rgba(0,0,0,.24);overflow:hidden}.security-mock::after{content:"";position:absolute;right:-70px;top:-75px;width:210px;height:210px;border-radius:50%;background:rgba(9,196,213,.055)}.security-shield{width:65px;height:72px;margin-bottom:24px}.security-shield svg{width:100%;height:100%;fill:none;stroke:var(--green);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.security-mock h3{font-size:25px}.security-mock>p:not(.panel-kicker){max-width:420px;margin-top:13px;color:#9eabc1;font-size:14px;line-height:1.85}.security-mock p strong{color:#e5ecf8}.security-flow{display:flex;align-items:center;gap:13px;flex-wrap:wrap;margin-top:27px}.security-flow span{padding:9px 13px;border:1px solid rgba(9,196,213,.35);border-radius:5px;color:#d4f7e2;font-size:12px}.security-flow b{color:var(--green);font-weight:400}.guide-inline-actions{display:flex;align-items:center;gap:22px;margin-top:29px}.guide-inline-actions .button{min-height:47px;padding:11px 20px}
.connect-flow{display:grid;grid-template-columns:1fr 34px 1fr;gap:16px;align-items:center}.connect-flow div{min-height:135px;padding:22px;background:#10192e;border:1px solid #2b3850;border-radius:9px;transition:transform .3s,border-color .3s,background-color .3s}.connect-flow div:hover{transform:translateY(-5px);border-color:rgba(9,196,213,.5);background:#121f33}.connect-flow div span{color:var(--green);font:600 11px system-ui;letter-spacing:1px}.connect-flow div strong{display:block;margin-top:15px;font-size:16px}.connect-flow div p{margin-top:6px;color:#8693aa;font-size:12px}.connect-flow i{height:1px;background:linear-gradient(90deg,#334057,var(--green));position:relative;overflow:hidden}.connect-flow i::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#fff,transparent);transform:translateX(-100%);animation:signal 2.6s ease-in-out infinite}.connect-flow div:nth-of-type(3),.connect-flow div:nth-of-type(4){grid-row:2}.connect-flow i:nth-of-type(2){grid-row:2}
.guide-warning{padding:78px 0;background:var(--green);color:#061a31}.guide-warning-inner{display:grid;grid-template-columns:auto 1fr auto;gap:29px;align-items:center}.guide-warning-mark{width:62px;height:62px;display:grid;place-items:center;border:2px solid rgba(7,26,19,.6);border-radius:50%;font:800 27px system-ui}.guide-warning .eyebrow{color:#08445d;margin-bottom:10px}.guide-warning h2{font-size:34px;line-height:1.45}.guide-warning h2 strong{font-weight:inherit;text-decoration:underline;text-underline-offset:5px}.guide-warning h2+p{margin-top:10px;color:#0b4f68;font-size:14px}.guide-warning-actions{display:flex;flex-direction:column;align-items:center;gap:14px}.guide-warning-actions .button{margin:0;white-space:nowrap}.guide-phone-link{font-size:13px;font-weight:750;border-bottom:1px solid rgba(7,26,19,.4)}
@media(max-width:980px){.guide-page-hero-grid,.guide-step-grid{grid-template-columns:1fr;gap:45px}.guide-page-hero-grid{padding-block:75px}.unavailable-games{max-width:650px}.guide-step-reverse .guide-step-copy,.guide-step-reverse>div:last-child{order:initial}.account-mock,.security-mock{max-width:700px;width:100%}.guide-warning-inner{grid-template-columns:auto 1fr}.guide-warning-actions{grid-column:2;align-items:flex-start;flex-direction:row}.connect-flow{max-width:700px}}
@media(max-width:600px){.guide-page-hero-grid{padding-block:62px}.guide-page-hero h1{font-size:clamp(39px,11.4vw,53px)}.guide-page-lead{font-size:16px}.guide-page-lead br{display:none}.guide-page-actions{flex-direction:column}.guide-page-actions .button{width:100%}.unavailable-games{padding:26px 23px;gap:17px}.guide-alert-icon{width:40px;height:40px}.unavailable-games h2{font-size:21px}.guide-step-grid{gap:34px}.guide-check-list li{font-size:14px;padding-left:31px}.guide-address{display:flex;align-items:flex-start;flex-direction:column;gap:4px}.account-mock{transform:none}.mock-form{padding:27px 21px 31px}.security-mock{padding:31px 24px}.security-mock h3{font-size:22px}.guide-inline-actions{align-items:flex-start;flex-direction:column;gap:17px}.connect-flow{grid-template-columns:1fr;gap:10px}.connect-flow i{height:24px;width:1px;margin-left:28px;background:linear-gradient(#334057,var(--green))}.connect-flow div:nth-of-type(3),.connect-flow div:nth-of-type(4),.connect-flow i:nth-of-type(2){grid-row:auto}.connect-flow div{min-height:0}.guide-warning{padding:58px 0}.guide-warning-inner{grid-template-columns:1fr;gap:20px}.guide-warning-mark{width:51px;height:51px}.guide-warning h2{font-size:28px}.guide-warning-actions{grid-column:auto;flex-direction:column;align-items:flex-start}.guide-warning-actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){.connect-flow i::after{animation:none!important}.account-mock{transform:none}}

/* Keep the four connection cards in a balanced 2 × 2 flow. */
.connect-flow>div:nth-of-type(1){grid-column:1;grid-row:1}.connect-flow>i:nth-of-type(1){grid-column:2;grid-row:1}.connect-flow>div:nth-of-type(2){grid-column:3;grid-row:1}.connect-flow>i:nth-of-type(2){grid-column:3;grid-row:2;width:1px;height:24px;justify-self:center;background:linear-gradient(#334057,var(--green))}.connect-flow>div:nth-of-type(3){grid-column:3;grid-row:3}.connect-flow>i:nth-of-type(3){grid-column:2;grid-row:3;background:linear-gradient(90deg,var(--green),#334057)}.connect-flow>div:nth-of-type(4){grid-column:1;grid-row:3}.connect-flow>div{min-width:0}
.connect-flow>i:nth-of-type(3)::after{animation-direction:reverse}
@media(max-width:600px){.connect-flow>div:nth-of-type(n),.connect-flow>i:nth-of-type(n){grid-column:1;grid-row:auto}.connect-flow>i:nth-of-type(n){width:1px;height:24px;justify-self:start;margin-left:28px;background:linear-gradient(#334057,var(--green))}}

/* Browser-style Google and NAVER search */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.connect-side{min-width:0}.browser-search{margin-top:24px;background:#0d162a;border:1px solid #2b3850;border-radius:10px;overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.16)}.browser-toolbar{height:38px;display:flex;align-items:center;gap:11px;padding:0 14px;background:#121c31;border-bottom:1px solid #29364d;color:#73829d}.browser-toolbar strong{font:600 9px system-ui;letter-spacing:1.3px}.browser-dots{display:flex;gap:5px}.browser-dots i{display:block;width:7px;height:7px;border-radius:50%;background:#41506a}.browser-dots i:first-child{background:#e36f82}.browser-dots i:nth-child(2){background:#e36f82}.browser-dots i:last-child{background:#09c4d5}.browser-lock{margin-left:auto;color:var(--green);font-size:15px}.browser-search-form{padding:16px}.search-engines{display:flex;gap:8px;margin-bottom:10px}.search-engine{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:transparent;border:1px solid #2d3a51;border-radius:999px;color:#8390a8;font-size:10px;font-weight:700;transition:color .2s,border-color .2s,background-color .2s}.search-engine span{font:800 12px system-ui}.search-engine.google span{color:#72a7ff}.search-engine.naver span{color:#09c4d5}.search-engine:hover,.search-engine.is-selected{color:#eef4ff;border-color:rgba(9,196,213,.55);background:rgba(9,196,213,.07)}.browser-address{display:flex;align-items:center;gap:9px;padding:6px 7px 6px 13px;background:#081023;border:1px solid #34435d;border-radius:7px;transition:border-color .2s,box-shadow .2s}.browser-address:focus-within{border-color:var(--green);box-shadow:0 0 0 3px rgba(9,196,213,.08)}.browser-address>span{color:#687894;font-size:14px}.browser-address input{min-width:0;flex:1;height:34px;padding:0;background:transparent;border:0;outline:0;color:#edf3ff;font:500 13px "Pretendard","Noto Sans KR","Malgun Gothic",sans-serif}.browser-address input::placeholder{color:#66748e}.browser-address button{height:34px;padding:0 14px;background:var(--green);border:0;border-radius:5px;color:#061a31;font-size:12px;font-weight:750;transition:background-color .2s,transform .2s}.browser-address button:hover{background:#09c4d5;transform:translateY(-1px)}.browser-search>p{padding:0 16px 15px;color:#6f7e98;font-size:10px;line-height:1.6}
@media(max-width:600px){.browser-search{margin-top:20px}.browser-search-form{padding:14px}.search-engines{flex-wrap:wrap}.browser-address{padding-left:10px}.browser-address button{padding-inline:11px}.browser-address input{font-size:12px}}
.account-address-browser{margin-top:30px}.account-address-browser .browser-search-form{padding:18px 16px 14px}.account-address-browser>p{padding:0 16px 18px}.account-address-browser>p.is-error{color:#e36f82}.account-address-browser .browser-toolbar strong{color:#8c9ab3}.account-address-browser .browser-lock{font-size:13px}

/* Match the homepage PC cafe contact card with the account guide. */
.hero-notice-copy h2 a{transition:color .25s ease}.hero-notice-copy h2 a:hover,.hero-notice-copy h2 a:focus-visible{color:var(--green)}
.guide-account-contact{scroll-margin-top:calc(var(--header) + 24px);display:grid;grid-template-columns:minmax(0,1fr) 108px;align-items:center;gap:18px;margin-top:22px;padding:18px;background:linear-gradient(135deg,rgba(17,33,50,.98),rgba(10,25,37,.96));border:1px solid rgba(9,196,213,.4);border-radius:11px;box-shadow:0 18px 42px rgba(0,0,0,.18)}
.guide-account-contact>div{min-width:0}.guide-account-contact .guide-contact-kicker{margin-bottom:5px;color:#8293ad;font:650 9px/1.5 system-ui;letter-spacing:1.15px}.guide-account-contact h3{font-size:19px;line-height:1.4}.guide-account-contact>div>p:last-child{margin-top:8px;color:#b8c7d7;font-size:12px;line-height:1.7}.guide-account-contact>div>p strong{color:var(--green)}.guide-account-contact>div>p span{display:block;margin-top:5px;color:#8fa4b8;font-size:10px}.guide-account-contact .hero-qr{--qr-size:108px}
.guide-contact-phone{display:inline-flex;align-items:center;margin-top:11px;padding:7px 11px;border:1px solid rgba(9,196,213,.45);border-radius:999px;color:#e9fcff;font-size:12px;font-weight:800;letter-spacing:.02em;box-shadow:0 0 18px rgba(9,196,213,.08);transition:background-color .2s,color .2s,transform .2s}.guide-contact-phone:hover,.guide-contact-phone:focus-visible{background:var(--green);color:#061a31;transform:translateY(-1px)}
@media(max-width:600px){.guide-account-contact{grid-template-columns:minmax(0,1fr) 92px;gap:13px;padding:15px}.guide-account-contact h3{font-size:17px}.guide-account-contact>div>p:last-child{font-size:11px}.guide-account-contact .hero-qr{--qr-size:92px}}

/* Large first-time visitor guidance above the hero action panel. */
.hero-bottom-cluster{display:grid;grid-template-columns:350px 486px;align-items:center;gap:20px 26px}
.hero-newcomer-guide{grid-column:1/-1;padding:0 0 18px;border-bottom:1px solid rgba(130,153,175,.23);color:#eaf1fb;font-size:clamp(20px,1.65vw,25px);font-weight:720;line-height:1.55;letter-spacing:-.045em}
.hero-newcomer-guide strong{color:var(--green)}.hero-newcomer-guide a{position:relative;color:#fff;white-space:nowrap}.hero-newcomer-guide a::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:var(--green);transform:scaleX(.4);transform-origin:left;transition:transform .25s ease}.hero-newcomer-guide a:hover::after,.hero-newcomer-guide a:focus-visible::after{transform:scaleX(1)}
@media(min-width:801px){.hero,.hero-inner{min-height:880px}}
@media(max-width:1100px) and (min-width:801px){.hero-bottom-cluster{grid-template-columns:330px 430px}}
@media(max-width:800px){.hero-bottom-cluster{display:grid;grid-template-columns:1fr;align-items:start}.hero-newcomer-guide{grid-column:1;padding-bottom:17px;font-size:clamp(19px,4.7vw,24px)}.hero-action-stack,.hero-pc-notice{grid-column:1}}
@media(max-width:480px){.hero-newcomer-guide{font-size:18px;line-height:1.6}}

/* Interactive address-to-account flow in the guide. */
.account-flow{transform:none;min-height:330px}.account-flow-body{position:relative}.account-address-embedded{margin:0;border:0;border-radius:0;background:transparent;box-shadow:none}.account-address-embedded .browser-search-form{padding:24px 28px 14px}.account-address-embedded>p{padding:0 28px 24px}.account-flow.is-account-ready .account-address-embedded{border-bottom:1px solid #2b3b55;background:rgba(9,16,36,.3)}.account-flow.is-account-ready .account-address-embedded>p{color:var(--green)}
.mock-account-stage{animation:accountStageIn .5s cubic-bezier(.16,1,.3,1)}@keyframes accountStageIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
.mock-account-stage .mock-form{padding-top:28px}.mock-form .mock-input{width:100%;font-family:inherit;letter-spacing:0}.mock-form input.mock-input{display:block;outline:0}.mock-form input.mock-input::placeholder{color:#68758e}.mock-form input.mock-input:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(9,196,213,.08)}.mock-form input[type="password"]{letter-spacing:.12em}.mock-form input[type="password"]::placeholder{letter-spacing:0}.mock-submit{width:100%;border:0;cursor:pointer;transition:background-color .2s,transform .2s,box-shadow .2s}.mock-submit:hover{background:#09c4d5;transform:translateY(-1px);box-shadow:0 10px 24px rgba(9,196,213,.14)}
.registration-status{min-height:20px;margin-top:12px;color:#91a0ba;font-size:11px;line-height:1.65}.registration-status.is-error{color:#e36f82}.registration-status.is-success{color:var(--green)}.registration-destination{display:inline-flex;margin-top:9px;color:var(--green);font-size:12px;font-weight:750;border-bottom:1px solid rgba(9,196,213,.42)}
@media(max-width:600px){.account-address-embedded .browser-search-form{padding:18px 18px 12px}.account-address-embedded>p{padding:0 18px 20px}.mock-account-stage .mock-form{padding-top:24px}}

/* Registration completion message and installer download. */
body.registration-modal-open{overflow:hidden}.registration-welcome{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:22px;background:rgba(3,8,20,.78);backdrop-filter:blur(9px);animation:welcomeBackdrop .3s ease}.registration-welcome-card{position:relative;width:min(480px,100%);padding:42px 38px 36px;text-align:center;background:linear-gradient(145deg,#14213a,#0c1729 72%);border:1px solid rgba(9,196,213,.55);border-radius:18px;box-shadow:0 32px 90px rgba(0,0,0,.55);animation:welcomeCard .5s cubic-bezier(.16,1,.3,1)}.registration-welcome-close{position:absolute;top:13px;right:15px;width:34px;height:34px;display:grid;place-items:center;background:transparent;border:1px solid #34435b;border-radius:50%;color:#aab7cb;font-size:22px;line-height:1}.registration-welcome-close:hover{color:#fff;border-color:var(--green)}.registration-welcome-check{width:66px;height:66px;display:grid;place-items:center;margin:0 auto 19px;background:rgba(9,196,213,.12);border:1px solid rgba(9,196,213,.55);border-radius:50%;color:var(--green);font-size:32px;font-weight:800;box-shadow:0 0 35px rgba(9,196,213,.16)}.registration-welcome .panel-kicker{margin-bottom:9px;color:var(--green)}.registration-welcome h2{font-size:38px}.registration-welcome-card>strong{display:block;margin-top:8px;color:#f2f7ff;font-size:20px;line-height:1.55}.registration-welcome-card>p:not(.panel-kicker){margin-top:18px;color:#aebcd0;font-size:14px;line-height:1.8}.registration-download{margin-top:24px;min-width:210px}.registration-welcome-card>small{display:block;margin-top:14px;color:#7e8da7;font-size:11px;line-height:1.6}@keyframes welcomeBackdrop{from{opacity:0}to{opacity:1}}@keyframes welcomeCard{from{opacity:0;transform:translateY(22px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:480px){.registration-welcome-card{padding:38px 22px 29px}.registration-welcome h2{font-size:32px}.registration-welcome-card>strong{font-size:17px}.registration-download{width:100%}}

/* Send changing PC cafe addresses directly to their own registration server. */
.registration-redirect{padding:34px 38px 38px;text-align:center}.registration-redirect-icon{width:58px;height:58px;display:grid;place-items:center;margin:0 auto 17px;background:rgba(9,196,213,.1);border:1px solid rgba(9,196,213,.4);border-radius:50%;color:var(--green);font-size:27px;font-weight:800}.registration-redirect .panel-kicker{margin-bottom:8px;color:var(--green)}.registration-redirect h3{font-size:24px;line-height:1.45}.registration-redirect>p:not(.panel-kicker){margin:13px auto 0;max-width:420px;color:#aebcd0;font-size:13px;line-height:1.8}.registration-redirect .button{margin-top:22px}.registration-redirect .text-link{display:block;width:max-content;margin:15px auto 0}
@media(max-width:600px){.registration-redirect{padding:28px 21px 31px}.registration-redirect h3{font-size:21px}.registration-redirect .button{width:100%}}

/* Business information in every page footer. */
.footer-company{flex:1;min-width:0;color:#9aa7bf}.footer-company p{width:auto;margin:0;color:#9aa7bf;font-size:13px;line-height:1.75}.footer-company .footer-slogan{margin-bottom:6px;color:#c8d2e6;font-size:13px}.footer-company strong{margin-right:20px;color:#f0f4fc;font-weight:750}.footer-company span+span{margin-left:20px}.footer-company a{margin-left:14px;color:#b8c8ee;transition:color .2s}.footer-company a:hover{color:var(--green)}
@media(max-width:800px){.footer-company{width:100%;order:3}.footer-company p{width:auto;order:initial}.footer-company strong,.footer-company span{display:inline}.footer-company .footer-slogan{margin-bottom:7px}.footer-company span+span{margin-left:12px}}
@media(max-width:560px){.footer-company p{font-size:11px;line-height:1.75}.footer-company p:not(.footer-slogan){display:flex;align-items:baseline;flex-wrap:wrap;column-gap:12px;row-gap:1px}.footer-company strong,.footer-company p span{display:inline;margin:0}.footer-company strong{margin-right:0}.footer-company span+span{margin-left:0}.footer-company a{margin-left:0}.footer-company p:nth-child(2)>*{white-space:nowrap}.footer-company p:nth-child(3)>span{white-space:normal}}

/* A calm glass treatment that settles naturally into the hero image. */

/* Mobile swipe navigation shared by the home page and all subpages. */
.mobile-swipe-nav{display:none}
@media(max-width:800px){body.mobile-page-swipe{overflow-x:hidden;touch-action:pan-y;padding-bottom:58px}.mobile-swipe-nav{position:fixed;z-index:80;left:50%;bottom:max(12px,env(safe-area-inset-bottom));display:grid;grid-template-columns:minmax(86px,1fr) auto minmax(86px,1fr);align-items:center;width:min(calc(100% - 32px),430px);min-height:44px;padding:6px 10px;translate:-50% 0;background:rgba(9,17,34,.9);border:1px solid rgba(9,196,213,.27);border-radius:24px;box-shadow:0 12px 34px rgba(0,0,0,.34);backdrop-filter:blur(14px) saturate(125%);animation:swipeHintIn .55s cubic-bezier(.16,1,.3,1) both}.mobile-swipe-link{min-width:0;padding:6px 7px;color:#b9c7db;font-size:10px;font-weight:700;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-swipe-link:last-child{text-align:right}.mobile-swipe-link.is-disabled{visibility:hidden}.mobile-swipe-position{display:flex;align-items:center;justify-content:center;gap:5px;padding:0 10px}.mobile-swipe-position i{display:block;width:5px;height:5px;border-radius:50%;background:#526078;transition:width .25s,background .25s}.mobile-swipe-position i.is-current{width:15px;border-radius:5px;background:var(--green);box-shadow:0 0 9px rgba(9,196,213,.4)}body.swipe-page-out-left{animation:swipePageOutLeft .22s ease-in both;pointer-events:none}body.swipe-page-out-right{animation:swipePageOutRight .22s ease-in both;pointer-events:none}body.swipe-page-enter-right{animation:swipePageInRight .34s cubic-bezier(.16,1,.3,1) both}body.swipe-page-enter-left{animation:swipePageInLeft .34s cubic-bezier(.16,1,.3,1) both}}
@keyframes swipeHintIn{from{opacity:0;translate:-50% 10px}to{opacity:1;translate:-50% 0}}@keyframes swipePageOutLeft{to{opacity:.32;transform:translateX(-28px)}}@keyframes swipePageOutRight{to{opacity:.32;transform:translateX(28px)}}@keyframes swipePageInRight{from{opacity:.35;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes swipePageInLeft{from{opacity:.35;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){.mobile-swipe-nav,body.swipe-page-out-left,body.swipe-page-out-right,body.swipe-page-enter-right,body.swipe-page-enter-left{animation:none}}

/* LARVA REMOTE INTERACTIVE QUICK GUIDE */
.guide-video {
  display: grid;
  grid-template-columns: minmax(230px, .65fr) minmax(0, 1.35fr);
  gap: 30px;
  align-items: stretch;
  margin: 30px auto 34px;
  padding: 28px;
  border: 1px solid rgba(9,196,213, .24);
  border-radius: 28px;
  background:
    radial-gradient(circle at 84% 16%, rgba(9,196,213, .18), transparent 34%),
    radial-gradient(circle at 10% 88%, rgba(31, 111, 157, .2), transparent 36%),
    linear-gradient(135deg, rgba(5, 18, 33, .98), rgba(9, 31, 45, .96) 58%, rgba(8, 43, 37, .94));
  box-shadow: 0 26px 70px rgba(0, 0, 0, .32), inset 0 1px 0 rgba(104, 255, 190, .07);
  overflow: hidden;
}

.guide-video-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 16px 4px 16px 8px;
}

.guide-video-copy h2 {
  margin: 10px 0 14px;
  color: #fff;
  font-size: clamp(28px, 3vw, 44px);
  line-height: 1.13;
  letter-spacing: -.045em;
}

.guide-video-copy h2 em {
  color: var(--green);
  font-style: normal;
}

.guide-video-copy > p:last-of-type {
  margin: 0;
  color: #c8cae2;
  font-size: 14px;
  line-height: 1.75;
}

.guide-video-controls {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 5px;
  margin-top: 26px;
}

.guide-video-controls button {
  display: grid;
  justify-items: center;
  gap: 3px;
  min-width: 0;
  padding: 9px 3px;
  border: 1px solid rgba(255, 255, 255, .09);
  border-radius: 10px;
  background: rgba(255, 255, 255, .04);
  color: #aabfca;
  font: inherit;
  font-size: 10px;
  font-weight: 700;
  cursor: pointer;
  transition: border-color .25s ease, background .25s ease, color .25s ease, transform .25s ease;
}

.guide-video-controls button span {
  color: #6f8d9e;
  font-size: 9px;
  letter-spacing: .08em;
}

.guide-video-controls button:is(:hover, .is-current) {
  border-color: rgba(9,196,213, .4);
  background: rgba(9,196,213, .1);
  color: #fff;
  transform: translateY(-2px);
}

.guide-video-controls button.is-current span {
  color: var(--green);
}

.guide-video-player {
  position: relative;
  min-width: 0;
  border: 1px solid rgba(9,196,213, .27);
  border-radius: 22px;
  background: #071321;
  box-shadow: 0 22px 52px rgba(0, 0, 0, .34);
  overflow: hidden;
}

.guide-video-topbar,
.guide-video-status {
  position: relative;
  z-index: 4;
  display: flex;
  align-items: center;
}

.guide-video-topbar {
  justify-content: space-between;
  height: 46px;
  padding: 0 16px 0 18px;
  border-bottom: 1px solid rgba(255, 255, 255, .08);
  background: rgba(4, 13, 27, .88);
}

.guide-video-topbar > span {
  color: #d8daef;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .13em;
}

.guide-video-topbar > span i {
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-right: 7px;
  border-radius: 50%;
  background: var(--green);
  box-shadow: 0 0 12px rgba(9,196,213, .7);
  animation: guideVideoLive 1.4s ease-in-out infinite;
}

.guide-video-topbar button {
  width: 30px;
  height: 30px;
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 50%;
  background: rgba(255, 255, 255, .05);
  color: #fff;
  font: inherit;
  cursor: pointer;
}

.guide-video-stage {
  position: relative;
  min-height: 330px;
  overflow: hidden;
}

.guide-video-stage::before {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: radial-gradient(circle at 70% 35%, rgba(9,196,213, .11), transparent 38%);
  content: '';
  pointer-events: none;
}

.guide-mascot-narrator {
  position: relative;
  z-index: 5;
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  min-height: 98px;
  padding: 6px 20px 6px 8px;
  border-top: 1px solid rgba(9,196,213, .22);
  background: linear-gradient(90deg, rgba(12, 31, 43, .98), rgba(4, 13, 27, .98));
}

.guide-mascot-narrator img {
  align-self: end;
  width: 88px;
  height: 94px;
  object-fit: contain;
  filter: drop-shadow(0 8px 14px rgba(0, 0, 0, .34)) drop-shadow(0 0 12px rgba(9,196,213, .13));
  transform-origin: 82% 48%;
  animation: guideMascotWave 3.6s ease-in-out infinite;
}

.guide-mascot-narrator p {
  position: relative;
  margin: 0;
  padding: 12px 15px;
  border: 1px solid rgba(9,196,213, .3);
  border-radius: 13px;
  background: rgba(8, 23, 38, .92);
  box-shadow: 0 9px 22px rgba(0, 0, 0, .19);
}

.guide-mascot-narrator p::before {
  position: absolute;
  left: -8px;
  top: 50%;
  width: 14px;
  height: 14px;
  border-left: 1px solid rgba(9,196,213, .3);
  border-bottom: 1px solid rgba(9,196,213, .3);
  background: rgba(8, 23, 38, .98);
  content: '';
  transform: translateY(-50%) rotate(45deg);
}

.guide-mascot-narrator span {
  display: block;
  color: var(--green);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .08em;
}

.guide-mascot-narrator strong {
  display: block;
  margin-top: 3px;
  color: #f5f8ff;
  font-size: 13px;
  line-height: 1.55;
}

.guide-mascot-narrator.is-changing p {
  animation: guideMascotCopyIn .55s cubic-bezier(.2, .8, .2, 1);
}

.guide-video-slide {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(190px, .88fr);
  gap: 22px;
  align-items: center;
  padding: 26px 34px;
  opacity: 0;
  transform: translate3d(36px, 0, 0) scale(.985);
  pointer-events: none;
  transition: opacity .5s ease, transform .55s cubic-bezier(.2, .74, .25, 1);
}

.guide-video-slide.is-current {
  opacity: 1;
  transform: none;
  pointer-events: auto;
}

.guide-video-caption {
  display: grid;
  gap: 10px;
}

.guide-video-caption span {
  color: var(--green);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .13em;
}

.guide-video-caption strong {
  color: #fff;
  font-size: clamp(25px, 3vw, 39px);
  line-height: 1.12;
  letter-spacing: -.045em;
}

.guide-video-caption small {
  color: #cfd1e7;
  font-size: 13px;
  line-height: 1.65;
}

.guide-video-caption small b {
  color: var(--green);
  font-weight: 900;
}

.guide-video-qr-slide > a {
  justify-self: center;
  padding: 0;
  border-radius: 20px;
  box-shadow: 0 18px 45px rgba(0, 0, 0, .35), 0 0 32px rgba(9,196,213, .08);
  touch-action: manipulation;
}

.guide-video-qr-slide img {
  display: block;
  width: min(210px, 100%);
  height: auto;
  border-radius: 20px;
}

.guide-video-image {
  justify-self: center;
  width: min(190px, 100%);
  height: 250px;
  padding: 12px;
  border: 1px solid rgba(9,196,213, .22);
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(9,196,213, .56), rgba(17, 22, 75, .8));
  overflow: hidden;
}

.guide-video-image.is-wide {
  width: min(280px, 100%);
  height: 205px;
}

.guide-video-image img {
  width: 100%;
  height: 100%;
  border-radius: 11px;
  object-fit: contain;
}

.guide-account-demo {
  position: relative;
  justify-self: center;
  width: min(255px, 100%);
  min-height: 258px;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 18px;
  background: #102044;
  color: #18335c;
  box-shadow: 0 18px 38px rgba(0, 0, 0, .28);
  overflow: hidden;
}

.guide-address-demo-stage,
.guide-account-form {
  position: absolute;
  inset: 0;
  transition: opacity .45s ease, transform .55s cubic-bezier(.2, .75, .25, 1);
}

.guide-address-demo-stage {
  display: grid;
  align-content: center;
  gap: 12px;
  padding: 24px 17px;
  background: linear-gradient(145deg, #102044, #0b153d);
  opacity: 1;
  transform: none;
}

.guide-address-demo-stage > strong {
  color: var(--green);
  font-size: 12px;
}

.guide-address-demo-stage > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 58px;
  gap: 7px;
}

.guide-address-demo-stage .guide-demo-input {
  min-width: 0;
  min-height: 36px;
  border-color: rgba(9,196,213, .42);
  background: #080d2e;
  color: #e8ebff;
  font-size: 8px;
  letter-spacing: -.01em;
}

.guide-address-demo-stage b {
  display: grid;
  place-items: center;
  border-radius: 7px;
  background: var(--green);
  color: #071a31;
  font-size: 11px;
  font-weight: 950;
  transition: transform .18s ease, filter .18s ease;
}

.guide-address-demo-stage b.is-pressing {
  filter: brightness(.82);
  transform: scale(.94);
}

.guide-address-demo-stage > small {
  color: #afb7d7;
  font-size: 8px;
}

.guide-account-form {
  display: grid;
  gap: 7px;
  padding: 18px 17px 15px;
  background: #f8f9fd;
  opacity: 0;
  transform: translateX(30px);
  pointer-events: none;
}

.guide-account-demo.is-address-complete .guide-address-demo-stage {
  opacity: 0;
  transform: translateX(-30px);
  pointer-events: none;
}

.guide-account-demo.is-address-complete .guide-account-form {
  opacity: 1;
  transform: none;
  pointer-events: auto;
}

.guide-account-brand {
  display: grid;
  gap: 1px;
  margin-bottom: 2px;
}

.guide-account-brand strong {
  color: #17335c;
  font-size: 17px;
  letter-spacing: -.04em;
}

.guide-account-brand small,
.guide-account-demo label,
.guide-demo-status {
  font-size: 8px;
}

.guide-account-brand small,
.guide-demo-status {
  color: #8a94a7;
}

.guide-account-demo label {
  display: grid;
  gap: 3px;
  color: #59667b;
  font-weight: 750;
}

.guide-demo-input {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 26px;
  padding: 0 8px;
  border: 1px solid #d9deea;
  border-radius: 5px;
  background: #fff;
  color: #1d3152;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .02em;
  transition: border-color .2s ease, box-shadow .2s ease;
}

.guide-demo-input.is-typing {
  border-color: #09c4d5;
  box-shadow: 0 0 0 2px rgba(9,196,213, .13);
}

.guide-demo-input.is-typing::after {
  width: 1px;
  height: 12px;
  margin-left: 2px;
  background: #09c4d5;
  content: '';
  animation: guideDemoCaret .7s steps(1) infinite;
}

.guide-demo-register {
  display: grid;
  place-items: center;
  min-height: 28px;
  margin-top: 2px;
  border-radius: 5px;
  background: #09c4d5;
  color: #fff;
  font-size: 9px;
  font-weight: 900;
  box-shadow: 0 8px 17px rgba(9,196,213, .24);
  transition: transform .16s ease, background .2s ease;
}

.guide-demo-register.is-pressing {
  background: #09c4d5;
  transform: scale(.96);
}

.guide-demo-status.is-complete {
  color: #09c4d5;
  font-weight: 800;
}

.guide-demo-pointer,
.guide-install-pointer {
  position: absolute;
  z-index: 4;
  width: 18px;
  height: 23px;
  background: linear-gradient(135deg, transparent 0 43%, #fff 44% 63%, transparent 64%), linear-gradient(45deg, transparent 0 51%, #182649 52% 61%, transparent 62%);
  filter: drop-shadow(0 2px 2px rgba(0, 0, 0, .55));
  opacity: 0;
  pointer-events: none;
}

.guide-account-demo.is-ready .guide-demo-pointer {
  right: 42px;
  bottom: 37px;
  opacity: 1;
  animation: guideDemoPointerPress .7s ease both;
}

.guide-account-demo.is-address-pressing .guide-demo-pointer {
  right: 28px;
  top: 55px;
  opacity: 1;
  animation: guideDemoPointerPress .65s ease both;
}

.guide-install-demo {
  position: relative;
  justify-self: center;
  width: min(270px, 100%);
  aspect-ratio: 529 / 500;
  border: 1px solid rgba(9,196,213, .28);
  border-radius: 18px;
  background: #09c4d5;
  box-shadow: 0 18px 40px rgba(0, 0, 0, .3);
  overflow: hidden;
}

.guide-install-demo > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.guide-install-highlight {
  position: absolute;
  left: 3.4%;
  top: 23.4%;
  width: 14.4%;
  height: 6.2%;
  border: 2px solid transparent;
  border-radius: 3px;
  pointer-events: none;
}

.guide-install-demo.is-pointing-info .guide-install-highlight {
  border-color: var(--green);
  background: rgba(9,196,213, .14);
  box-shadow: 0 0 0 5px rgba(9,196,213, .09), 0 0 18px rgba(9,196,213, .5);
  animation: guideInstallPulse .75s ease-in-out infinite alternate;
}

.guide-install-pointer {
  left: 39%;
  top: 30%;
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 2px solid rgba(255, 255, 255, .92);
  border-radius: 50%;
  background: rgba(8, 13, 45, .9);
  box-shadow: 0 5px 14px rgba(0, 0, 0, .4), 0 0 0 4px rgba(9,196,213, .16);
  filter: none;
  opacity: 0;
  transform: translate(-50%, -50%);
  transition: left .65s cubic-bezier(.2, .75, .22, 1), top .65s cubic-bezier(.2, .75, .22, 1), opacity .25s ease;
}

.guide-install-pointer svg {
  width: 22px;
  height: 22px;
  fill: #fff;
  stroke: var(--green);
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.guide-install-demo.is-pointing-info .guide-install-pointer {
  left: 20%;
  top: 32%;
  opacity: 1;
}

.guide-install-demo:is(.is-pointing-info, .is-pointing-run) .guide-install-pointer svg {
  animation: guideInstallCursorClick .7s ease-in-out infinite;
}

.guide-install-demo.is-info-open::after {
  position: absolute;
  right: 6%;
  bottom: 9%;
  left: 6%;
  padding: 8px 10px 38px;
  border: 1px solid rgba(255, 255, 255, .42);
  border-radius: 7px;
  background: rgba(2, 74, 126, .93);
  color: #e9f7ff;
  font-size: 8px;
  line-height: 1.4;
  content: '앱: 라바원격 원격 다운로드  ·  게시자: 라바원격';
}

.guide-install-run {
  position: absolute;
  right: 11%;
  bottom: 12%;
  z-index: 2;
  display: grid;
  place-items: center;
  width: 58px;
  height: 25px;
  border-radius: 3px;
  background: #fff;
  color: #17263b;
  font-size: 9px;
  font-weight: 850;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity .25s ease, transform .25s ease, background .18s ease;
}

.guide-install-demo.is-info-open .guide-install-run {
  opacity: 1;
  transform: none;
}

.guide-install-demo.is-pointing-run .guide-install-pointer {
  left: 88%;
  top: 88%;
  opacity: 1;
}

.guide-install-demo.is-running .guide-install-run {
  background: var(--green);
  transform: scale(.94);
}

.guide-install-status {
  position: absolute;
  right: 7%;
  bottom: 3%;
  left: 7%;
  z-index: 3;
  color: #d7edfa;
  font-size: 8px;
  font-weight: 800;
  text-align: center;
}

.guide-install-demo.is-running .guide-install-status {
  color: var(--green);
}

.guide-video-shortcuts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.guide-video-shortcuts span {
  display: grid;
  gap: 3px;
  padding: 8px 9px;
  border: 1px solid rgba(9,196,213, .2);
  border-radius: 9px;
  background: rgba(9,196,213, .06);
  opacity: 0;
  transform: translateY(8px);
}

.guide-video-slide.is-current .guide-video-shortcuts span {
  animation: guideShortcutIn .45s ease forwards;
}

.guide-video-slide.is-current .guide-video-shortcuts span:nth-child(2) { animation-delay: .12s; }
.guide-video-slide.is-current .guide-video-shortcuts span:nth-child(3) { animation-delay: .24s; }
.guide-video-slide.is-current .guide-video-shortcuts span:nth-child(4) { animation-delay: .36s; }
.guide-video-slide.is-current .guide-video-shortcuts span:nth-child(5) { animation-delay: .48s; }
.guide-video-slide.is-current .guide-video-shortcuts span:nth-child(6) { animation-delay: .6s; }
.guide-video-slide.is-current .guide-video-shortcuts span:nth-child(7) { animation-delay: .72s; }

.guide-video-shortcuts kbd {
  color: var(--green);
  font-family: inherit;
  font-size: 9px;
  font-weight: 900;
  white-space: nowrap;
}

.guide-video-shortcuts b {
  color: #eef0ff;
  font-size: 9px;
}

.guide-video-flow {
  display: grid;
  gap: 7px;
}

.guide-video-flow span {
  padding: 11px 14px;
  border: 1px solid rgba(9,196,213, .25);
  border-radius: 11px;
  background: rgba(9,196,213, .07);
  color: #fff;
  font-size: 12px;
  font-weight: 750;
  text-align: center;
}

.guide-video-flow i {
  color: var(--green);
  font-style: normal;
  text-align: center;
  transform: rotate(90deg);
}

.guide-connect-demo {
  position: relative;
  justify-self: center;
  width: min(300px, 100%);
  height: 230px;
  border: 1px solid rgba(9,196,213, .32);
  border-radius: 17px;
  background: #292929;
  box-shadow: 0 18px 42px rgba(0, 0, 0, .32);
  overflow: hidden;
}

.guide-connect-scene {
  position: absolute;
  inset: 0;
  z-index: 1;
  opacity: 0;
  transform: translateX(24px) scale(.98);
  pointer-events: none;
  transition: opacity .38s ease, transform .48s cubic-bezier(.2, .75, .25, 1);
}

.guide-connect-scene.is-current {
  z-index: 2;
  opacity: 1;
  transform: none;
}

.guide-connect-launch {
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 14px;
  background: linear-gradient(145deg, #50677d, #26394b);
}

.guide-desktop-shortcut {
  display: grid;
  justify-items: center;
  gap: 3px;
  padding: 8px 13px;
  border: 1px solid rgba(255, 255, 255, .45);
  background: rgba(255, 255, 255, .06);
}

.guide-desktop-shortcut img {
  width: 58px;
  height: 58px;
  object-fit: contain;
}

.guide-desktop-shortcut span {
  color: #fff;
  font-size: 10px;
  text-shadow: 0 1px 2px #000;
}

.guide-connect-launch > small {
  color: #e4ebf4;
  font-size: 9px;
}

.guide-connect-login,
.guide-connect-pcs {
  display: grid;
  justify-items: center;
  align-content: start;
  gap: 10px;
  padding: 0 28px 18px;
  background: #292929;
}

.guide-connect-login header,
.guide-connect-pcs header {
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc(100% + 56px);
  height: 42px;
  margin-bottom: 4px;
  background: #09c4d5;
  color: #fff;
  font-size: 16px;
}

.guide-connect-login header b,
.guide-connect-pcs header b {
  position: absolute;
  right: 12px;
  font-size: 15px;
}

.guide-connect-login > strong {
  color: #fff;
  font-size: 15px;
}

.guide-connect-input {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 28px;
  padding: 0 10px;
  border: 1px solid #656565;
  border-radius: 4px;
  color: #f4f4f4;
  font-size: 9px;
}

.guide-connect-input[data-connect-id]:empty::before {
  color: #858585;
  content: 'Connection Code';
}

.guide-connect-input[data-connect-password]:empty::before {
  color: #858585;
  content: 'Authentication Key';
}

.guide-connect-input.is-typing {
  border-color: #09c4d5;
  box-shadow: 0 0 0 2px rgba(119, 140, 255, .13);
}

.guide-connect-button {
  display: grid;
  place-items: center;
  width: 100%;
  min-height: 27px;
  border-radius: 15px;
  background: #4b4b4b;
  color: #aaa;
  font-size: 10px;
  transition: background .2s ease, color .2s ease, transform .15s ease;
}

.guide-connect-demo.is-login-ready .guide-connect-button {
  background: #09c4d5;
  color: #fff;
}

.guide-connect-button.is-pressing {
  transform: scale(.95);
  filter: brightness(.83);
}

.guide-connect-consent {
  display: grid;
  grid-template-rows: auto 1fr auto auto;
  gap: 10px;
  padding: 18px 20px 12px;
  background: #aaa;
}

.guide-connect-consent::before {
  position: absolute;
  inset: 15px 18px;
  z-index: -1;
  border-radius: 12px;
  background: #2d2d2d;
  box-shadow: 0 7px 18px rgba(0, 0, 0, .3);
  content: '';
}

.guide-connect-consent header,
.guide-connect-consent > div,
.guide-connect-consent p,
.guide-connect-consent footer {
  margin: 0 13px;
}

.guide-connect-consent header {
  color: #fff;
  font-size: 12px;
}

.guide-connect-consent > div {
  display: grid;
  gap: 4px;
  padding: 9px;
  border: 1px solid #6f6f6f;
  color: #eee;
  font-size: 7px;
}

.guide-connect-consent > div b {
  margin-bottom: 2px;
}

.guide-connect-consent p {
  display: flex;
  align-items: center;
  gap: 6px;
  color: #fff;
  font-size: 9px;
}

.guide-connect-consent p i {
  display: grid;
  place-items: center;
  width: 15px;
  height: 15px;
  border: 1px solid #09c4d5;
  border-radius: 3px;
  color: transparent;
  font-style: normal;
}

.guide-connect-demo.is-consent-checked .guide-connect-consent p i {
  background: #09c4d5;
  color: #fff;
}

.guide-connect-consent footer {
  display: flex;
  justify-content: flex-end;
  gap: 20px;
  color: #09c4d5;
  font-size: 8px;
}

.guide-connect-consent footer b.is-pressing {
  color: #fff;
  transform: scale(.92);
}

.guide-connect-pcs {
  gap: 14px;
  padding-inline: 16px;
}

.guide-connect-pcs > strong {
  color: #fff;
  font-size: 12px;
}

.guide-connect-pcs > div {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 7px;
  width: 100%;
}

.guide-connect-pcs > div b {
  display: grid;
  place-items: center;
  min-height: 42px;
  border-radius: 21px;
  background: linear-gradient(#555, #444);
  color: #fff;
  font-size: 11px;
  box-shadow: 0 5px 9px rgba(0, 0, 0, .25);
  transition: background .2s ease, transform .2s ease, box-shadow .2s ease;
}

.guide-connect-pcs > div b.is-selected {
  background: linear-gradient(145deg, #09c4d5, #09c4d5);
  box-shadow: 0 0 0 3px rgba(9,196,213, .18), 0 6px 14px rgba(0, 0, 0, .3);
  transform: translateY(-3px);
}

.guide-connect-pcs > small {
  color: #bfc1ca;
  font-size: 8px;
}

.guide-connect-loading {
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 8px;
  padding: 22px;
  background: radial-gradient(circle at center, #30375a, #202020 65%);
  text-align: center;
}

.guide-connect-loading i {
  width: 50px;
  height: 50px;
  border: 4px solid rgba(255, 255, 255, .12);
  border-top-color: var(--green);
  border-radius: 50%;
  animation: guideConnectSpin 1s linear infinite;
}

.guide-connect-loading strong {
  color: #fff;
  font-size: 15px;
}

.guide-connect-loading span {
  color: #d7d9ea;
  font-size: 9px;
}

.guide-connect-loading small {
  color: var(--green);
  font-size: 10px;
  font-weight: 900;
}

.guide-connect-pointer {
  position: absolute;
  z-index: 5;
  width: 18px;
  height: 23px;
  background: linear-gradient(135deg, transparent 0 43%, #fff 44% 63%, transparent 64%), linear-gradient(45deg, transparent 0 51%, #182649 52% 61%, transparent 62%);
  filter: drop-shadow(0 2px 2px rgba(0, 0, 0, .55));
  opacity: 0;
  pointer-events: none;
}

.guide-connect-demo.is-launching .guide-connect-pointer {
  left: 55%;
  top: 51%;
  opacity: 1;
  animation: guideDemoPointerPress .65s ease both;
}

.guide-connect-demo.is-connecting .guide-connect-pointer {
  left: 72%;
  top: 82%;
  opacity: 1;
  animation: guideDemoPointerPress .65s ease both;
}

.guide-connect-demo.is-consenting .guide-connect-pointer {
  right: 24px;
  bottom: 18px;
  opacity: 1;
  animation: guideDemoPointerPress .65s ease both;
}

.guide-connect-demo.is-selecting .guide-connect-pointer {
  left: 69%;
  top: 58%;
  opacity: 1;
  animation: guideDemoPointerPress .65s ease both;
}

.guide-video-power {
  display: grid;
  justify-items: center;
  gap: 8px;
  justify-self: center;
  width: min(220px, 100%);
  padding: 28px 20px;
  border: 1px solid rgba(9,196,213, .35);
  border-radius: 24px;
  background: linear-gradient(145deg, rgba(9,196,213, .13), rgba(9,196,213, .18));
  box-shadow: inset 0 0 35px rgba(9,196,213, .06);
}

.guide-video-power > span {
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  border: 3px solid var(--green);
  border-radius: 50%;
  color: var(--green);
  font-size: 44px;
  line-height: 1;
  transform: rotate(-90deg);
}

.guide-video-power strong {
  color: #fff;
  font-size: 23px;
}

.guide-video-power small {
  color: #bfc3df;
  font-size: 11px;
}

.guide-video-progress {
  position: relative;
  z-index: 4;
  height: 3px;
  background: rgba(255, 255, 255, .1);
  overflow: hidden;
}

.guide-video-progress i {
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, var(--green), #09c4d5);
  transform: scaleX(0);
  transform-origin: left;
}

.guide-video-progress i.is-playing {
  animation: guideVideoProgress var(--guide-video-duration, 8s) linear forwards;
}

.guide-video-player.is-paused .guide-video-progress i {
  animation-play-state: paused;
}

.guide-video-player.is-paused .guide-video-topbar > span i {
  animation-play-state: paused;
  opacity: .45;
}

.guide-video-status {
  gap: 5px;
  min-height: 43px;
  padding: 0 18px;
  background: rgba(4, 13, 27, .92);
}

.guide-video-status span {
  color: var(--green);
  font-size: 13px;
  font-weight: 900;
}

.guide-video-status small {
  color: #09c4d5;
  font-size: 10px;
}

.guide-video-status strong {
  margin-left: auto;
  color: #dfe1f2;
  font-size: 11px;
}

@keyframes guideVideoProgress {
  to { transform: scaleX(1); }
}

@keyframes guideVideoLive {
  50% { opacity: .45; transform: scale(.8); }
}

@keyframes guideMascotWave{0%,100%{transform:rotate(-.7deg)}50%{transform:rotate(1.3deg)}}

@keyframes guideMascotCopyIn {
  from { opacity: .25; transform: translateX(10px); }
  to { opacity: 1; transform: translateX(0); }
}

@keyframes guideDemoCaret {
  50% { opacity: 0; }
}

@keyframes guideDemoPointerPress {
  0% { transform: translate(18px, 13px); opacity: 0; }
  55% { transform: translate(0, 0); opacity: 1; }
  75% { transform: translate(2px, 2px) scale(.9); opacity: 1; }
  100% { transform: none; opacity: 1; }
}

@keyframes guideInstallPulse {
  to { box-shadow: 0 0 0 8px rgba(9,196,213, .05), 0 0 22px rgba(9,196,213, .72); }
}

@keyframes guideInstallCursorClick {
  50% { transform: scale(.78); }
}

@keyframes guideShortcutIn {
  to { opacity: 1; transform: none; }
}

@keyframes guideConnectSpin {
  to { transform: rotate(360deg); }
}

@media (max-width:1000px){
  .guide-video{grid-template-columns:minmax(0,1fr)}
  .guide-video-copy{padding:6px 2px 0}
}
@media (max-width:760px){
  .guide-video{gap:20px;margin:24px auto 28px;padding:18px;border-radius:22px}
  .guide-video-copy h2{font-size:30px}
  .guide-video-copy>p:last-of-type{font-size:13px}
  .guide-video-controls{margin-top:18px}
  .guide-video-controls button{min-height:44px}
  .guide-video-stage{min-height:430px}
  .guide-video-slide{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:18px;align-content:center;padding:24px 22px}
  .guide-video-caption{gap:6px;text-align:center}
  .guide-video-caption strong{font-size:28px}
  .guide-video-caption small{font-size:12px}
  .guide-video-qr-slide img{width:176px}
  .guide-account-demo{width:min(260px,100%)}
  .guide-install-demo{width:min(235px,100%)}
  .guide-video-shortcuts{align-self:center;width:min(330px,100%);margin:0 auto}
  .guide-video-shortcuts span{padding:7px 8px}
  .guide-video-power{padding:20px}
  .guide-mascot-narrator{grid-template-columns:76px minmax(0,1fr);min-height:86px;padding:5px 12px 5px 6px}
  .guide-mascot-narrator img{width:74px;height:82px}
  .guide-mascot-narrator p{padding:10px 12px}
  .guide-mascot-narrator strong{font-size:12px}
}
@media (max-width:480px){
  .guide-video-controls{grid-template-columns:repeat(3,minmax(0,1fr))}
  .guide-video-stage{min-height:455px}
  .guide-video-slide{padding:20px 14px}
  .guide-connect-demo{height:220px}
  .footer-company p:nth-child(2)>*{white-space:normal}
  .footer-company p:nth-child(2)>span:last-child{flex-basis:100%}
}

@media (prefers-reduced-motion: reduce){
  .guide-mascot-narrator img,
  .guide-mascot-narrator.is-changing p{animation:none}
}

/* Supporting statement below the homepage title message. */
.hero-fixed-store-message{max-width:720px;margin-top:14px;color:#b9c7da;font-size:clamp(14px,1.1vw,17px);font-weight:600;line-height:1.65;letter-spacing:-.025em;text-shadow:0 2px 14px rgba(0,0,0,.5)}
.hero-fixed-store-message::before{display:inline-block;width:6px;height:6px;margin-right:9px;border-radius:50%;background:var(--green);box-shadow:0 0 12px rgba(9,196,213,.82);content:"";vertical-align:.16em}
.hero-fixed-store-message+.hero-key-points{margin-top:14px}
@media(max-width:700px){.hero-fixed-store-message{max-width:520px;margin:11px auto 0;font-size:13px;line-height:1.55}.hero-fixed-store-message::before{display:none}.hero-fixed-store-message+.hero-key-points{margin-top:11px}}

/* ADDRESS ENTRY GUIDANCE */
.account-address-embedded>.address-entry-hint{padding:0 28px 8px;color:#8fa0ba;font-size:11px;line-height:1.65}
.account-address-embedded>[data-address-status]:empty{display:none}

.guide-address-demo-stage{display:block;padding:0;background:#0d172a}
.guide-account-demo{width:min(300px,100%);min-height:190px;height:190px;transition:height .45s cubic-bezier(.2,.75,.25,1)}
.guide-account-demo.is-address-complete{height:258px}
.guide-account-address-image{position:absolute;left:0;top:50%;width:100%;height:auto;transform:translateY(-50%);object-fit:contain}
.guide-address-demo-stage>.guide-address-demo-input-row{
  position:absolute;
  left:6%;
  top:25.5%;
  display:grid;
  grid-template-columns:minmax(0,1fr) 54px;
  gap:6px;
  width:85%;
  min-height:30px;
  padding:3px 4px 3px 9px;
  border:1px solid #34435d;
  border-radius:7px;
  background:#0b1428;
}
.guide-address-demo-stage .guide-address-demo-input-row .guide-demo-input{min-height:22px;padding:0;border:0;background:transparent;color:#f0f5ff;font-size:8px}
.guide-address-demo-input-row button{border:0;border-radius:5px;background:var(--green);color:#071a31;font-size:9px;font-weight:900;transition:transform .18s ease,filter .18s ease}
.guide-address-demo-input-row button.is-pressing{filter:brightness(.82);transform:scale(.94)}
@media(max-width:600px){.account-address-embedded>.address-entry-hint{padding-inline:18px}}

/* Emphasize the main visitor actions and PC cafe access contact. */
.hero-copy{max-width:790px}
.hero-partnership-title{font-size:clamp(46px,4.35vw,64px);line-height:1.18}
.hero-signup-highlight{
  display:inline-block;
  max-width:720px;
  margin-top:24px;
  padding:11px 17px 12px;
  border-left:3px solid #e36f82;
  border-radius:0 9px 9px 0;
  background:linear-gradient(90deg,rgba(227,111,130,.18),rgba(227,111,130,.04));
  color:#e36f82;
  font-size:clamp(17px,1.45vw,21px);
  font-weight:750;
  line-height:1.65;
  letter-spacing:-.025em;
  text-shadow:0 0 20px rgba(227,111,130,.22);
}
.motion-ready .hero-signup-highlight{opacity:0;transform:translateY(24px)}
.motion-ready.hero-ready .hero-signup-highlight{opacity:1;transform:translateY(0);transition:opacity .75s ease .16s,transform .75s cubic-bezier(.16,1,.3,1) .16s}
@media(min-width:801px){
  .hero,.hero-inner{min-height:1040px}
  .hero-bottom-cluster{width:1100px;grid-template-columns:520px minmax(0,1fr);gap:30px 38px;padding:34px 36px;border-radius:18px}
  .hero-newcomer-guide{padding-bottom:26px;font-size:clamp(17px,1.35vw,20px);line-height:1.65}
  .hero-newcomer-guide strong{display:block;margin-bottom:7px;font-size:clamp(27px,2.15vw,34px);line-height:1.4}
  .hero-newcomer-guide span{display:block}
  .hero-action-stack{width:520px;flex-basis:520px;padding-right:20px}
  .hero-action-stack .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:15px}
  .hero-action-stack .button{min-height:92px;padding:22px 24px;font-size:20px;line-height:1.35;text-align:center;white-space:normal}
  .hero-action-stack .hero-caption{margin-top:22px;font-size:14px}
  .hero-pc-notice{width:100%;grid-template-columns:minmax(0,1fr) 164px;gap:27px}
  .hero-notice-copy h2{font-size:31px}
  .hero-notice-copy p{font-size:16px;line-height:1.8}
  .hero-notice-copy p strong{font-size:20px}
  .hero-mobile-note{font-size:12px}
  .hero-pc-notice .hero-qr{--qr-size:164px}
}
@media(max-width:1100px) and (min-width:801px){
  .hero-bottom-cluster{width:100%;grid-template-columns:420px minmax(0,1fr);gap:26px;padding:30px}
  .hero-action-stack{width:420px;flex-basis:420px;padding-right:26px}
  .hero-action-stack .button{min-height:82px;font-size:18px}
  .hero-pc-notice{grid-template-columns:minmax(0,1fr) 140px}
  .hero-pc-notice .hero-qr{--qr-size:140px}
}
@media(max-width:800px){
  .hero-bottom-cluster{padding:28px;border-radius:16px}
  .hero-newcomer-guide{font-size:clamp(16px,4vw,19px);line-height:1.65;padding-bottom:24px}
  .hero-newcomer-guide strong{font-size:clamp(23px,5.8vw,30px)}
  .hero-action-stack .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  .hero-action-stack .button{min-height:78px;font-size:18px;text-align:center;white-space:normal}
  .hero-pc-notice{grid-template-columns:minmax(0,1fr) 138px;gap:22px}
  .hero-notice-copy h2{font-size:27px}
  .hero-notice-copy p{font-size:15px}
  .hero-notice-copy p strong{font-size:18px}
  .hero-pc-notice .hero-qr{--qr-size:138px}
}
@media(max-width:480px){
  .hero-partnership-title{font-size:clamp(38px,10.5vw,48px);line-height:1.2}
  .hero-signup-highlight{margin-top:19px;padding:9px 13px 10px;font-size:15px;line-height:1.6}
  .hero-bottom-cluster{padding:23px 20px}
  .hero-newcomer-guide{font-size:15px;line-height:1.65}
  .hero-newcomer-guide strong{font-size:21px;line-height:1.45}
  .hero-action-stack .hero-actions{grid-template-columns:1fr}
  .hero-action-stack .button{width:100%;min-height:76px;font-size:18px}
  .hero-caption{font-size:12px}
  .hero-pc-notice{grid-template-columns:minmax(0,1fr) 112px;gap:15px}
  .hero-notice-copy h2{font-size:23px}
  .hero-notice-copy p{font-size:13px}
  .hero-notice-copy p strong{font-size:16px}
  .hero-pc-notice .hero-qr{--qr-size:112px}
}

/* PC CAFE CUSTOMER APP SHORTCUTS */
.pcbang-app-dock{
  position:fixed;
  z-index:80;
  top:50%;
  right:20px;
  display:grid;
  gap:9px;
  width:170px;
  padding:11px;
  border:1px solid rgba(111,133,180,.28);
  border-radius:21px;
  background:rgba(7,12,31,.94);
  box-shadow:0 18px 55px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.04);
  backdrop-filter:blur(14px);
  transform:translateY(-50%);
}
.pcbang-app-dock>p{display:flex;align-items:center;gap:8px;margin:0;padding:4px 8px 6px;color:#bac5dc;font-size:11px;font-weight:800;letter-spacing:.04em}
.pcbang-app-dock>p span{color:var(--green);font-size:9px;filter:drop-shadow(0 0 6px rgba(9,196,213,.65))}
.pcbang-app-link{position:relative;display:grid;grid-template-columns:42px 1fr 12px;grid-template-rows:auto auto;column-gap:10px;align-items:center;min-height:64px;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:#10182c;color:#f7f9ff;text-decoration:none;transition:transform .2s ease,border-color .2s ease,background .2s ease}
.pcbang-app-link:hover,.pcbang-app-link:focus-visible{transform:translateX(-4px);border-color:rgba(9,196,213,.5);background:#15213c;outline:none}
.pcbang-app-icon{grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;border-radius:12px;color:#fff;font:900 18px/1 system-ui;box-shadow:inset 0 1px rgba(255,255,255,.22),0 7px 18px rgba(0,0,0,.24)}
.pcbang-app-geto .pcbang-app-icon{background:linear-gradient(145deg,#09c4d5,#09c4d5)}
.pcbang-app-pica .pcbang-app-icon{background:linear-gradient(145deg,#09c4d5,#09c4d5)}
.pcbang-app-world .pcbang-app-icon{background:linear-gradient(145deg,#e36f82,#e36f82)}
.pcbang-app-link b{align-self:end;font-size:14px;line-height:1.15;white-space:nowrap}
.pcbang-app-link small{align-self:start;color:#71809e;font-size:9px;font-weight:800;letter-spacing:.08em}
.pcbang-app-link i{grid-column:3;grid-row:1/3;color:#667590;font:normal 14px system-ui}
@media(max-width:700px){
  body{padding-bottom:170px}
  .pcbang-app-dock{top:auto;right:8px;bottom:calc(max(12px,env(safe-area-inset-bottom)) + 68px);left:8px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;width:auto;padding:9px;border-radius:19px;transform:none}
  .pcbang-app-dock>p{position:absolute;left:14px;bottom:calc(100% + 6px);padding:4px 9px;border:1px solid rgba(111,133,180,.23);border-radius:999px;background:rgba(7,12,31,.92);box-shadow:0 6px 22px rgba(0,0,0,.25);font-size:9px}
  .pcbang-app-link{grid-template-columns:36px 1fr;grid-template-rows:1fr;gap:8px;min-height:56px;padding:8px}
  .pcbang-app-link:hover,.pcbang-app-link:focus-visible{transform:translateY(-2px)}
  .pcbang-app-icon{grid-row:auto;width:36px;height:36px;border-radius:10px;font-size:16px}
  .pcbang-app-link b{align-self:center;font-size:12px}
  .pcbang-app-link small,.pcbang-app-link i{display:none}
}
@media(max-width:390px){.pcbang-app-dock{gap:5px;right:5px;left:5px;padding:7px}.pcbang-app-link{grid-template-columns:31px 1fr;gap:6px;padding:7px}.pcbang-app-icon{width:31px;height:31px}.pcbang-app-link b{font-size:11px}}

/* CONTENT IMAGERY */
.content-visual{
  position:relative;
  margin:0;
  overflow:hidden;
  border:1px solid rgba(111,133,180,.3);
  border-radius:18px;
  background:#0a1327;
  box-shadow:0 24px 60px rgba(0,0,0,.24);
  isolation:isolate;
}
.content-visual::after{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 42%,rgba(4,9,24,.91) 100%);
  content:"";
  pointer-events:none;
}
.content-visual img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .7s cubic-bezier(.16,1,.3,1),filter .45s ease;
}
.content-visual:hover img{transform:scale(1.025);filter:saturate(1.08)}
.content-visual figcaption{
  position:absolute;
  z-index:2;
  right:25px;
  bottom:22px;
  left:25px;
  display:grid;
  gap:5px;
}
.content-visual figcaption span{color:var(--green);font:800 10px/1.2 system-ui;letter-spacing:1.35px}
.content-visual figcaption strong{max-width:620px;color:#f4f7ff;font-size:16px;line-height:1.5;letter-spacing:-.025em}
.service-connection-visual{height:clamp(280px,34vw,430px);margin:-6px 0 26px}
.service-connection-visual img{object-position:center 48%}
.audience-intro{align-self:start}
.audience-visual{aspect-ratio:1.35/1;margin-top:31px}
.audience-visual img{object-position:center}
.owners-visual{aspect-ratio:1.52/1;margin:29px 0 27px}
.owners-visual img{object-position:center 52%}
.faq-intro{align-self:start}
.faq-visual{aspect-ratio:1.25/1;margin-top:32px}
.faq-visual img{object-position:61% center}

.notice-hero-visual{
  grid-column:1/-1;
  height:205px;
  margin:-34px -34px 8px;
  overflow:hidden;
  border-bottom:1px solid rgba(227,111,130,.25);
  background:#071020;
}
.notice-hero-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 58%}

.download-card-visual{
  height:225px;
  margin:-40px -40px 32px;
  overflow:hidden;
  border-bottom:1px solid rgba(9,196,213,.24);
  background:#071020;
}
.download-card-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 52%}

@media(max-width:980px){
  .audience-visual{max-width:700px;aspect-ratio:1.65/1}
  .faq-visual{max-width:700px;aspect-ratio:1.75/1}
}
@media(max-width:800px){
  .service-connection-visual{height:clamp(245px,54vw,390px)}
  .owners-visual{max-width:700px;aspect-ratio:1.7/1}
}
@media(max-width:700px){
  .content-visual{border-radius:13px}
  .content-visual figcaption{right:17px;bottom:15px;left:17px}
  .content-visual figcaption strong{font-size:13px}
  .service-connection-visual{height:240px;margin-bottom:18px}
  .service-connection-visual img{object-position:center}
  .audience-visual,.owners-visual,.faq-visual{aspect-ratio:1.24/1;margin-top:24px}
  .notice-hero-visual{height:180px;margin:-27px -24px 4px}
  .download-card-visual{height:190px;margin:-29px -25px 27px}
}
@media(max-width:480px){
  .content-visual figcaption strong{max-width:280px;font-size:12px}
  .service-connection-visual{height:210px}
  .audience-visual,.owners-visual,.faq-visual{aspect-ratio:1.12/1}
  .notice-hero-visual{height:165px}
  .download-card-visual{height:170px}
}
@media(prefers-reduced-motion:reduce){.content-visual img{transition:none}.content-visual:hover img{transform:none}}

/* SIMPLE COUPON REGISTRATION */
.coupon-simple-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(220px,.8fr);gap:18px;align-items:stretch}
.coupon-simple-grid .coupon-panel{display:flex;flex-direction:column;min-height:430px;padding:32px}
.coupon-simple-grid .coupon-panel>p{max-width:430px}
.coupon-panel>.coupon-register-instruction{margin-top:14px;color:#eafff2;font-size:20px;font-weight:850;line-height:1.45;letter-spacing:-.025em;text-shadow:0 0 18px rgba(9,196,213,.16)}
.coupon-simple-grid .coupon-form{display:flex;flex-direction:column;flex:1;margin-top:30px}
.coupon-input-help{display:block;margin:-2px 0 12px;color:#b9c9c2;font-size:13px;font-weight:700;line-height:1.65;letter-spacing:-.015em}
.coupon-simple-grid .coupon-form>input{width:100%;height:58px;padding:0 18px;border:1px solid #34435e;border-radius:8px;outline:0;background:#0b1328;color:#f5f8ff;font:750 15px/1.2 system-ui,sans-serif;letter-spacing:.055em;transition:border-color .2s,box-shadow .2s}
.coupon-simple-grid .coupon-form>input::placeholder{color:#65718a;font-weight:550;letter-spacing:.015em}
.coupon-simple-grid .coupon-form>input:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(9,196,213,.12)}
.coupon-submit-button{width:100%;min-height:58px;margin-top:12px;border-radius:8px;font-size:15px}
.coupon-simple-grid .coupon-message{margin-bottom:0}
.coupon-simple-grid .coupon-destination{align-items:stretch;flex-direction:column;margin-top:18px;padding:20px}
.coupon-simple-grid .coupon-destination strong{font-size:clamp(17px,2vw,21px)}
.coupon-simple-grid .coupon-connect-button{width:100%;justify-content:center;text-align:center}
.coupon-example{position:relative;overflow:hidden;padding:30px;border:1px solid rgba(102,132,185,.28);border-radius:15px;background:linear-gradient(160deg,rgba(17,30,52,.94),rgba(8,16,32,.98));box-shadow:inset 0 1px rgba(255,255,255,.04)}
.coupon-example::before{position:absolute;right:-54px;bottom:-58px;width:190px;height:190px;border-radius:50%;background:radial-gradient(circle,rgba(9,196,213,.16),transparent 68%);content:"";pointer-events:none}
.coupon-example-badge{display:inline-flex;padding:6px 10px;border:1px solid rgba(9,196,213,.3);border-radius:999px;background:rgba(9,196,213,.07);color:var(--green);font:800 9px/1 system-ui,sans-serif;letter-spacing:.15em}
.coupon-example h2{margin-top:22px;font-size:23px}
.coupon-example>p{margin-top:10px;color:#8996af;font-size:12px;line-height:1.75}
.coupon-example-field{margin-top:30px;padding:17px;border:1px solid rgba(9,196,213,.32);border-radius:10px;background:#09172a;box-shadow:0 0 0 3px rgba(9,196,213,.035)}
.coupon-example-field span{display:block;color:#7f8ea8;font-size:10px;font-weight:700}
.coupon-example-field strong{display:block;margin-top:8px;color:#edf9f3;font:800 clamp(13px,1.25vw,16px)/1.4 system-ui,sans-serif;letter-spacing:.045em;overflow-wrap:anywhere}
.coupon-example-result{position:relative;display:flex;align-items:center;gap:12px;margin-top:18px;padding:15px;border-radius:10px;background:rgba(9,196,213,.075)}
.coupon-example-result>span{display:grid;width:30px;height:30px;place-items:center;flex:0 0 auto;border-radius:50%;background:var(--green);color:#071a17;font-size:16px;font-weight:900;box-shadow:0 0 18px rgba(9,196,213,.32)}
.coupon-example-result p{display:grid;gap:3px;margin:0}
.coupon-example-result strong{color:#dffff0;font-size:12px}
.coupon-example-result small{color:#81968b;font-size:10px}
@media(max-width:1150px){.coupon-simple-grid{grid-template-columns:1fr}.coupon-example{display:grid;grid-template-columns:auto 1fr;gap:8px 18px;align-items:center}.coupon-example-badge{grid-row:1;grid-column:1}.coupon-example h2{grid-row:1;grid-column:2;margin:0}.coupon-example>p{grid-column:1/-1;margin-top:4px}.coupon-example-field{grid-column:1/-1;margin-top:10px}.coupon-example-result{grid-column:1/-1}}
@media(max-width:900px){.coupon-simple-grid{grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr)}.coupon-example{display:block}.coupon-example h2{margin-top:22px}.coupon-example>p{margin-top:10px}.coupon-example-field{margin-top:30px}.coupon-simple-grid .coupon-panel{min-height:430px}}
@media(max-width:720px){.coupon-simple-grid{grid-template-columns:1fr}.coupon-simple-grid .coupon-panel{min-height:auto;padding:24px 20px}.coupon-example{padding:24px 20px}.coupon-example-field{margin-top:22px}.coupon-simple-grid .coupon-destination{padding:17px}.coupon-flow{grid-template-columns:repeat(2,1fr)}}

/* CINEMATIC HOME HERO */
.hero-cinematic{
  min-height:calc(100svh - var(--header));
  background:#06101f;
}
.hero-visual-layer{
  position:absolute;
  z-index:-2;
  top:54%;
  left:50%;
  width:max(100%,calc((100svh - var(--header))*1.5));
  aspect-ratio:3/2;
  transform:translate(-50%,-54%);
}
.hero-visual-drift{
  position:absolute;
  inset:0;
  transform-origin:center;
  animation:heroCinematicDrift 18s ease-in-out infinite alternate;
}
.hero-cinematic .hero-image{
  z-index:0;
  object-fit:fill;
  object-position:center;
  transform:none;
  animation:none;
}
.hero-monitor-showcase{
  position:absolute;
  z-index:2;
  top:23.05%;
  left:65.28%;
  width:27.18%;
  height:33.78%;
  overflow:hidden;
  clip-path:polygon(0 14%,100% 0,100% 100%,0 87%);
  background:#020713;
  filter:saturate(.9) contrast(1.08) drop-shadow(0 0 22px rgba(38,199,255,.16));
}
.hero-monitor-showcase::before{
  position:absolute;
  inset:-10%;
  z-index:0;
  background-image:var(--active-game-image);
  background-position:center;
  background-size:cover;
  filter:blur(12px) brightness(.34) saturate(.72);
  transform:scale(1.08);
  content:"";
}
.hero-monitor-showcase::after{
  position:absolute;
  inset:0;
  z-index:2;
  background:
    linear-gradient(180deg,rgba(3,10,26,.12),rgba(3,10,26,.45)),
    linear-gradient(115deg,rgba(17,72,118,.18),transparent 42%,rgba(12,96,66,.16)),
    repeating-linear-gradient(180deg,rgba(255,255,255,.018) 0 1px,transparent 1px 4px);
  box-shadow:inset 0 0 38px rgba(2,7,20,.62);
  content:"";
  pointer-events:none;
}
.hero-game-slide{
  position:absolute;
  inset:0;
  z-index:1;
  width:100%;
  height:100%;
  object-fit:fill;
  object-position:center;
  filter:brightness(.62) saturate(.76) contrast(1.14) hue-rotate(3deg);
  opacity:0;
  transform:none;
  transition:opacity 1.4s ease;
}
.hero-game-slide.is-current{
  opacity:1;
  transform:none;
}
.hero-game-status{
  position:absolute;
  z-index:3;
  right:5%;
  bottom:7%;
  left:5%;
  display:grid;
  grid-template-columns:1fr auto;
  align-items:end;
  gap:2px 10px;
  padding:7px 10px;
  border:1px solid rgba(9,196,213,.38);
  border-radius:4px;
  background:linear-gradient(90deg,rgba(3,10,24,.86),rgba(3,10,24,.45));
  color:#f5f8ff;
  font-family:system-ui,"Malgun Gothic",sans-serif;
  text-shadow:0 1px 4px #000;
  backdrop-filter:blur(4px);
  transform:rotateZ(6deg);
  transform-origin:100% 50%;
}
.hero-game-status span{grid-column:1/-1;color:#09c4d5;font-size:7px;font-weight:800;letter-spacing:.12em}
.hero-game-status strong{min-width:0;font-size:clamp(9px,.75vw,13px);line-height:1.25;letter-spacing:-.03em;white-space:nowrap}
.hero-game-status small{color:#b8c8da;font-size:7px;font-weight:700;letter-spacing:.08em}
}
.hero-cinematic .hero-shade{
  background:
    linear-gradient(180deg,rgba(4,9,24,.34) 0%,rgba(4,9,24,.08) 40%,rgba(4,9,24,.76) 100%),
    linear-gradient(90deg,rgba(4,9,24,.58) 0%,rgba(4,9,24,.18) 48%,rgba(4,9,24,.28) 100%);
}
.hero-light{
  position:absolute;
  z-index:-1;
  top:8%;
  left:50%;
  width:min(920px,76vw);
  height:min(680px,72vh);
  transform:translateX(-50%);
  border-radius:50%;
  background:radial-gradient(circle,rgba(9,196,213,.16),rgba(38,126,255,.08) 38%,transparent 70%);
  filter:blur(8px);
  animation:heroLightBreathe 6s ease-in-out infinite;
  pointer-events:none;
}
.hero-mascot-dancer{
  position:absolute;
  z-index:4;
  isolation:isolate;
  right:clamp(205px,18vw,245px);
  bottom:clamp(96px,9vh,120px);
  width:clamp(160px,14vw,205px);
  pointer-events:none;
  filter:drop-shadow(0 18px 18px rgba(0,0,0,.42));
}
.hero-mascot-dancer::before{
  position:absolute;
  z-index:-1;
  right:5%;
  bottom:-4%;
  left:5%;
  height:22px;
  border-top:2px solid rgba(9,196,213,.18);
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(9,196,213,.22),transparent 68%);
  filter:blur(3px);
  content:"";
  transform:perspective(120px) rotateX(68deg);
}
.hero-mascot-dancer::after{
  position:absolute;
  z-index:-1;
  right:9%;
  bottom:-2%;
  left:9%;
  height:16px;
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(0,0,0,.7),rgba(0,0,0,.14) 68%,transparent 75%);
  filter:blur(3px);
  content:"";
}
.hero-mascot-character{
  position:relative;
  display:block;
  width:100%;
  aspect-ratio:1;
  transform-origin:50% 96%;
  will-change:transform;
}
.hero-mascot-frame{
  position:absolute;
  inset:0;
  display:block;
  background-image:url("assets/larva-hero-mascot-wave.png");
  background-repeat:no-repeat;
  background-position:center!important;
  background-size:contain;
  opacity:0;
  filter:drop-shadow(0 5px 3px rgba(2,8,20,.28));
  transition:opacity .22s ease;
  will-change:opacity,background-position;
}
.hero-mascot-frame.is-visible{opacity:1}
.hero-mascot-speech{
  position:absolute;
  z-index:2;
  right:84%;
  bottom:42%;
  width:max-content;
  max-width:clamp(235px,24vw,340px);
  margin:0;
  padding:11px 15px;
  border:1px solid rgba(51,219,228,.52);
  border-radius:18px 18px 5px 18px;
  background:rgba(5,24,31,.9);
  box-shadow:0 12px 30px rgba(0,0,0,.28),0 0 22px rgba(9,196,213,.14);
  color:#f2fff8;
  font-size:clamp(12px,.95vw,15px);
  font-weight:900;
  line-height:1.5;
  text-align:left;
  text-shadow:none;
}
.hero-mascot-speech span{display:block}
.hero-mascot-speech::after{
  position:absolute;
  right:-7px;
  bottom:3px;
  width:13px;
  height:13px;
  border-top:1px solid rgba(51,219,228,.52);
  border-right:1px solid rgba(51,219,228,.52);
  background:rgba(5,24,31,.94);
  content:"";
  transform:rotate(45deg);
}
.hero-mascot-dancer.is-message-changing .hero-mascot-speech span{animation:heroMascotCopyIn .48s cubic-bezier(.2,.8,.2,1)}
.hero-mascot-dancer.is-performing::after{animation:heroMascotShadow 1.45s ease-in-out 1}
.hero-mascot-dancer.is-performing .hero-mascot-speech{animation:heroMascotBubble 1.45s ease-in-out 1}
.hero-mascot-dancer.is-performing .hero-mascot-character{animation-duration:1.45s;animation-timing-function:cubic-bezier(.36,0,.24,1);animation-iteration-count:1}
.hero-mascot-dancer.is-performing[data-pose="greet"] .hero-mascot-character{animation-name:heroMascotGreet}
.hero-mascot-dancer.is-performing[data-pose="single"] .hero-mascot-character{animation-name:heroMascotStep}
.hero-mascot-dancer.is-performing[data-pose="double"] .hero-mascot-character{animation-name:heroMascotDoubleStep}
.hero-mascot-dancer.is-performing[data-pose="payment"] .hero-mascot-character{animation-name:heroMascotExplain}
.hero-mascot-dancer.is-performing[data-pose="event"] .hero-mascot-character{animation-name:heroMascotCheer}
.hero-mascot-dancer.is-performing[data-pose="finale"] .hero-mascot-character{animation-name:heroMascotFinale}
.hero-cinematic::after{
  background:
    radial-gradient(640px circle at var(--mouse-x,50%) var(--mouse-y,50%),rgba(9,196,213,.12),transparent 72%),
    linear-gradient(180deg,transparent 72%,rgba(6,12,29,.62));
}
.hero-event-promo{
  position:absolute;
  z-index:6;
  top:28px;
  left:50%;
  display:flex;
  align-items:center;
  gap:26px;
  width:min(1180px,calc(100% - 96px));
  min-height:142px;
  padding:20px 24px;
  border:1px solid rgba(9,196,213,.58);
  border-radius:26px;
  background:linear-gradient(110deg,rgba(4,20,29,.95),rgba(7,42,40,.9));
  box-shadow:0 24px 60px rgba(0,0,0,.4),0 0 50px rgba(9,196,213,.16),inset 0 1px rgba(255,255,255,.08);
  color:#edf8f4;
  font-family:system-ui,"Malgun Gothic",sans-serif;
  backdrop-filter:blur(16px);
  transform:translateX(-50%);
  transition:border-color .25s,box-shadow .25s,transform .25s;
}
.hero-event-promo::before{
  position:absolute;
  inset:-1px;
  z-index:-1;
  border-radius:inherit;
  background:linear-gradient(95deg,rgba(9,196,213,.24),transparent 42%,rgba(41,201,255,.16));
  content:"";
  opacity:.55;
}
.hero-event-promo:hover{
  border-color:rgba(105,255,177,.75);
  box-shadow:0 16px 42px rgba(0,0,0,.38),0 0 38px rgba(9,196,213,.2),inset 0 1px rgba(255,255,255,.08);
  transform:translateX(-50%) translateY(-2px);
}
.hero-event-badge{
  display:inline-grid;
  min-width:118px;
  min-height:76px;
  padding:0 20px;
  place-items:center;
  border-radius:18px;
  background:var(--green);
  color:#051a11;
  font-size:16px;
  font-weight:900;
  letter-spacing:.13em;
  box-shadow:0 0 20px rgba(9,196,213,.35);
}
.hero-event-message{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px;text-align:left}
.hero-event-promo strong{font-size:clamp(22px,2vw,30px);line-height:1.35;letter-spacing:-.035em}
.hero-event-copy{color:#b8d4c7;font-size:15px;line-height:1.5}
.hero-event-copy b{color:#09c4d5;font-weight:900}
.hero-event-deadline{display:inline-flex;align-self:flex-start;margin-top:5px;padding:4px 9px;border:1px solid rgba(227,111,130,.34);border-radius:999px;background:rgba(227,111,130,.09);color:#e36f82;font-size:12px;font-weight:800;line-height:1.4;letter-spacing:.01em}
.hero-event-promo em{
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-width:164px;
  min-height:56px;
  padding:0 22px;
  border:1px solid rgba(9,196,213,.26);
  border-radius:999px;
  color:#09c4d5;
  font-size:14px;
  font-style:normal;
  font-weight:800;
}
.hero-cinematic .hero-stage{
  min-height:calc(100svh - var(--header));
  display:grid;
  place-items:center;
  padding-top:210px;
  padding-bottom:72px;
}
.hero-brand-lockup{
  position:relative;
  isolation:isolate;
  width:min(960px,100%);
  margin:auto;
  text-align:center;
  text-shadow:0 4px 36px rgba(0,0,0,.42);
}
.hero-brand-lockup::before{
  position:absolute;
  z-index:-1;
  inset:8% -9% 3%;
  border-radius:50%;
  background:radial-gradient(ellipse at center,rgba(5,13,29,.72) 0%,rgba(5,13,29,.38) 45%,transparent 74%);
  filter:blur(10px);
  content:"";
}
.hero-brand-mark{
  display:grid;
  place-items:center;
  width:clamp(72px,8vw,112px);
  height:clamp(72px,8vw,112px);
  margin:0 auto 12px;
  color:var(--green);
  filter:drop-shadow(0 0 28px rgba(9,196,213,.5));
  animation:heroMarkFloat 4.8s ease-in-out infinite;
}
.hero-brand-mark svg{width:72%;height:72%}
.hero-overline{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:15px;
  color:#b9c7dc;
  font-family:system-ui,sans-serif;
  font-size:clamp(10px,.85vw,13px);
  font-weight:800;
  letter-spacing:.38em;
}
.hero-overline::before,.hero-overline::after{width:44px;height:1px;background:linear-gradient(90deg,transparent,rgba(9,196,213,.82));content:""}
.hero-overline::after{transform:rotate(180deg)}
.hero-cinematic h1{
  margin-top:12px;
  font-size:clamp(72px,10.5vw,156px);
  line-height:.92;
  letter-spacing:-.075em;
  color:#f8fbff;
  filter:drop-shadow(0 8px 30px rgba(0,0,0,.28));
}
.hero-cinematic h1 span{
  background:linear-gradient(105deg,#09c4d5 6%,#09c4d5 34%,#09c4d5 54%,#20d9d8 78%,#09c4d5 100%);
  background-size:220% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  filter:drop-shadow(0 0 22px rgba(9,196,213,.3));
  animation:heroTitleSheen 7s ease-in-out infinite;
}
.hero-cinematic h1.hero-main-logo{
  width:min(820px,82vw);
  margin:18px auto 0;
  line-height:0;
  filter:none;
}
.hero-logo-lockup{display:flex;align-items:center;justify-content:center;gap:clamp(18px,2vw,28px);width:100%}
.hero-logo-lockup>img{display:block;width:clamp(180px,21vw,300px);height:clamp(180px,21vw,300px);object-fit:contain;filter:drop-shadow(0 18px 34px rgba(0,0,0,.32))}
.hero-logo-copy{display:flex;flex-direction:column;align-items:flex-start;gap:clamp(14px,1.4vw,22px);white-space:nowrap;line-height:1}
.hero-logo-copy strong{color:#fff;font-family:Arial,Helvetica,sans-serif;font-size:clamp(38px,5.2vw,76px);font-weight:900;letter-spacing:-.06em;text-shadow:none;filter:none}
.hero-logo-copy small{color:var(--brand-cyan);font-family:system-ui,sans-serif;font-size:clamp(14px,1.8vw,26px);font-weight:850;letter-spacing:.30em;text-shadow:none;filter:none}
.hero-korean-name{
  margin-top:20px;
  color:#f3f7ff;
  font-size:clamp(19px,2vw,30px);
  font-weight:780;
  letter-spacing:.08em;
}
.hero-simple-message{
  margin-top:14px;
  color:#c6d1e2;
  font-size:clamp(15px,1.25vw,19px);
  font-weight:600;
}
.hero-connected-message{
  max-width:760px;
  margin:17px auto 0;
  color:#d3dce9;
  font-size:clamp(14px,1.12vw,17px);
  font-weight:600;
  line-height:1.7;
  letter-spacing:-.025em;
}
.hero-connected-message span{display:block;color:#b8c7d9}
.hero-connected-message b{color:#09c4d5;font-weight:900}
.hero-connected-message+.hero-key-points{margin-top:19px}
.hero-key-points{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:9px;
  margin:25px 0 0;
  padding:0;
  list-style:none;
}
.hero-key-points li{
  padding:8px 14px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  background:rgba(5,13,29,.32);
  color:#e4ebf6;
  font-size:13px;
  font-weight:700;
  backdrop-filter:blur(10px);
}
.hero-key-points li::before{content:"";display:inline-block;width:6px;height:6px;margin-right:8px;border-radius:50%;background:var(--green);box-shadow:0 0 11px rgba(9,196,213,.9);vertical-align:1px}
.hero-simple-actions{
  display:flex;
  justify-content:center;
  gap:12px;
  margin-top:30px;
}
.hero-simple-actions .button{min-width:190px;min-height:58px}
.hero-simple-actions .button-outline{background:rgba(5,13,29,.42);backdrop-filter:blur(12px)}
.hero-scroll-cue{
  position:absolute;
  left:50%;
  bottom:24px;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  transform:translateX(-50%);
  color:#aab7ca;
  font-family:system-ui,sans-serif;
  font-size:9px;
  font-weight:700;
  letter-spacing:.26em;
}
.hero-scroll-cue i{display:block;width:1px;height:30px;background:linear-gradient(var(--green),transparent);animation:heroScrollPulse 1.8s ease-in-out infinite}
.motion-ready .hero-brand-lockup{opacity:0;transform:translateY(28px) scale(.98)}
.motion-ready.hero-ready .hero-brand-lockup{opacity:1;transform:none;transition:opacity 1s ease .08s,transform 1.1s cubic-bezier(.16,1,.3,1) .08s}

@keyframes heroCinematicDrift{
  0%{transform:scale(1.06) translate3d(-1.2%,0,0)}
  100%{transform:scale(1.14) translate3d(1.6%,-1.1%,0)}
}
@keyframes heroLightBreathe{50%{opacity:.62;transform:translateX(-50%) scale(1.08)}}
@keyframes heroMarkFloat{50%{transform:translateY(-9px);filter:drop-shadow(0 0 38px rgba(9,196,213,.68))}}
@keyframes heroTitleSheen{0%,72%,100%{background-position:100% 50%}38%{background-position:0 50%}}
@keyframes heroScrollPulse{0%,100%{opacity:.25;transform:scaleY(.55);transform-origin:top}50%{opacity:1;transform:scaleY(1)}}
@keyframes heroMascotGreet{
  0%,100%{transform:translate3d(0,0,0) rotate(-2deg) scale(1)}
  18%{transform:translate3d(-6px,-4px,0) rotate(-7deg) scale(1.01,.99)}
  36%{transform:translate3d(4px,-11px,0) rotate(5deg) scale(.99,1.02)}
  54%{transform:translate3d(-3px,-3px,0) rotate(-4deg) scale(1.01,.99)}
  72%{transform:translate3d(5px,-9px,0) rotate(6deg) scale(.99,1.02)}
  88%{transform:translate3d(1px,-2px,0) rotate(1deg) scale(1)}
}
@keyframes heroMascotStep{
  0%,100%{transform:translate3d(0,0,0) rotate(0) scale(1)}
  18%{transform:translate3d(-9px,-3px,0) rotate(-6deg) scale(1.03,.97)}
  34%{transform:translate3d(-2px,-15px,0) rotate(2deg) scale(.97,1.04)}
  50%{transform:translate3d(8px,-3px,0) rotate(7deg) scale(1.03,.97)}
  66%{transform:translate3d(2px,-14px,0) rotate(-2deg) scale(.97,1.04)}
  84%{transform:translate3d(-4px,-2px,0) rotate(-3deg) scale(1.02,.98)}
}
@keyframes heroMascotDoubleStep{
  0%,100%{transform:translate3d(0,0,0) rotate(-1deg) scale(1)}
  14%{transform:translate3d(-12px,-7px,0) rotate(-9deg) scale(.98,1.02)}
  28%{transform:translate3d(-4px,-19px,0) rotate(4deg) scale(.96,1.06)}
  42%{transform:translate3d(11px,-7px,0) rotate(10deg) scale(1.02,.98)}
  56%{transform:translate3d(3px,-18px,0) rotate(-4deg) scale(.96,1.06)}
  70%{transform:translate3d(-10px,-6px,0) rotate(-8deg) scale(1.02,.98)}
  84%{transform:translate3d(4px,-10px,0) rotate(5deg) scale(.98,1.03)}
}
@keyframes heroMascotExplain{
  0%,100%{transform:translate3d(0,0,0) rotate(-1deg) scale(1)}
  22%{transform:translate3d(-8px,-5px,0) rotate(-8deg) scale(1.01,.99)}
  42%{transform:translate3d(-2px,-13px,0) rotate(5deg) scale(.98,1.03)}
  62%{transform:translate3d(7px,-4px,0) rotate(8deg) scale(1.02,.98)}
  82%{transform:translate3d(1px,-9px,0) rotate(-4deg) scale(.99,1.02)}
}
@keyframes heroMascotCheer{
  0%,100%{transform:translate3d(0,0,0) rotate(0) scale(1)}
  16%{transform:translate3d(-7px,-13px,0) rotate(-7deg) scale(.97,1.04)}
  32%{transform:translate3d(2px,-28px,0) rotate(5deg) scale(.94,1.08)}
  48%{transform:translate3d(9px,-8px,0) rotate(9deg) scale(1.04,.96)}
  64%{transform:translate3d(-3px,-22px,0) rotate(-5deg) scale(.96,1.06)}
  80%{transform:translate3d(-8px,-4px,0) rotate(-7deg) scale(1.03,.97)}
}
@keyframes heroMascotFinale{
  0%,100%{transform:translate3d(0,0,0) rotate(-2deg) scale(1)}
  10%{transform:translate3d(-8px,-10px,0) rotate(-8deg) scale(.98,1.04)}
  20%{transform:translate3d(0,-24px,0) rotate(5deg) scale(.95,1.08)}
  30%{transform:translate3d(8px,-4px,0) rotate(9deg) scale(1.05,.95)}
  42%{transform:translate3d(-7px,-16px,0) rotate(-7deg) scale(.96,1.06)}
  54%{transform:translate3d(7px,-3px,0) rotate(8deg) scale(1.04,.96)}
  66%{transform:translate3d(-4px,-20px,0) rotate(-4deg) scale(.96,1.07)}
  78%{transform:translate3d(5px,-4px,0) rotate(6deg) scale(1.03,.97)}
  90%{transform:translate3d(0,-9px,0) rotate(0) scale(.99,1.02)}
}
@keyframes heroMascotBubble{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-4px) rotate(.7deg)}}
@keyframes heroMascotShadow{0%,100%{opacity:.8;transform:scaleX(1)}50%{opacity:.5;transform:scaleX(.78)}}
@keyframes heroMascotCopyIn{0%{opacity:0;transform:translateY(7px)}100%{opacity:1;transform:none}}

@media(max-width:800px){
  .hero-mascot-dancer{display:none}
  .hero-event-promo{position:relative;top:auto;left:auto;gap:10px;width:calc(100% - 28px);min-height:92px;margin:12px auto 0;padding:10px;border-radius:18px;transform:none}
  .hero-event-promo:hover{transform:translateY(-2px)}
  .hero-event-badge{min-width:64px;min-height:48px;padding:0 9px;border-radius:12px;font-size:10px}
  .hero-event-promo strong{font-size:14px}
  .hero-event-copy{font-size:10px}
  .hero-event-deadline{margin-top:2px;padding:2px 6px;font-size:9px}
  .hero-event-promo em{min-width:auto;min-height:38px;padding:0 10px;font-size:10px;white-space:nowrap}
  .hero-cinematic,.hero-cinematic .hero-stage{min-height:calc(100svh - var(--header))}
  .hero-cinematic .hero-stage{padding-top:54px;padding-bottom:74px}
  .hero-visual-layer{top:50%;left:63%;width:max(100%,calc((100svh - var(--header))*1.5));transform:translate(-63%,-50%)}
  .hero-cinematic .hero-shade{background:linear-gradient(180deg,rgba(4,9,24,.28),rgba(4,9,24,.42) 48%,rgba(4,9,24,.86))}
  .hero-cinematic h1{font-size:clamp(57px,17vw,92px)}
  .hero-cinematic h1.hero-main-logo{width:min(680px,94vw);margin-top:16px}
  .hero-logo-lockup{gap:clamp(14px,2.4vw,22px)}
  .hero-logo-lockup>img{width:clamp(138px,28vw,210px);height:clamp(138px,28vw,210px)}
  .hero-logo-copy strong{font-size:clamp(26px,7.2vw,48px)}
  .hero-logo-copy small{font-size:clamp(10px,2.4vw,16px)}
  .hero-connected-message{max-width:560px;font-size:13px}
  .hero-korean-name{font-size:clamp(17px,5vw,24px);letter-spacing:.035em}
  .hero-simple-actions{flex-wrap:wrap}
  .hero-simple-actions .button{min-width:168px}
}
@media(max-width:480px){
  .hero-cinematic .hero-stage{padding-top:44px}
  .hero-visual-layer{left:64%;transform:translate(-64%,-50%)}
  .hero-brand-mark{margin-bottom:4px}
  .hero-cinematic h1{font-size:clamp(49px,16vw,68px)}
  .hero-cinematic h1.hero-main-logo{width:96vw;margin-top:14px}
  .hero-logo-lockup{gap:10px}
  .hero-logo-lockup>img{width:118px;height:118px}
  .hero-logo-copy{gap:10px}
  .hero-logo-copy strong{font-size:clamp(22px,7vw,32px);letter-spacing:-.035em}
  .hero-logo-copy small{font-size:9px;letter-spacing:.22em}
  .hero-korean-name{margin-top:16px}
  .hero-simple-message{max-width:300px;margin:11px auto 0;line-height:1.7}
  .hero-connected-message{max-width:320px;margin-top:13px;font-size:12px;line-height:1.65}
  .hero-key-points{gap:7px;margin-top:20px}
  .hero-key-points li{padding:6px 10px;font-size:11px}
  .hero-simple-actions{display:grid;grid-template-columns:1fr;width:min(290px,100%);margin:24px auto 0}
  .hero-simple-actions .button{width:100%;min-height:52px}
}
@media(prefers-reduced-motion:reduce){
  .hero-mascot-dancer::after,.hero-mascot-character,.hero-mascot-speech,.hero-mascot-speech span{animation:none!important}
  .hero-mascot-frame{transition:none!important}
  .hero-visual-drift,.hero-light,.hero-brand-mark,.hero-cinematic h1 span,.hero-scroll-cue i{animation:none!important}
  .hero-game-slide{transition:none!important;transform:none!important}
}

/* CURRENT PC AVAILABILITY */
.pc-availability{
  position:relative;
  z-index:2;
  padding:30px 0;
  border-top:1px solid rgba(9,196,213,.22);
  border-bottom:1px solid rgba(111,133,180,.22);
  background:
    radial-gradient(circle at 22% 0%,rgba(9,196,213,.08),transparent 32%),
    linear-gradient(180deg,#091225,#080f20);
}
.availability-shell{display:grid;grid-template-columns:225px minmax(0,1fr);gap:26px 32px;align-items:center}
.availability-heading span{display:flex;align-items:center;gap:8px;color:#09c4d5;font:800 10px/1.3 system-ui;letter-spacing:.18em}
.availability-heading span i{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 13px rgba(9,196,213,.8);animation:availabilityLive 1.8s ease-in-out infinite}
.availability-heading h2{margin-top:9px;font-size:clamp(23px,2vw,30px);line-height:1.25;letter-spacing:-.045em}
.availability-heading p{margin-top:7px;color:#8997ad;font-size:12px;line-height:1.7}
.availability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden;border:1px solid rgba(111,133,180,.28);border-radius:15px;background:rgba(12,21,40,.76);box-shadow:0 18px 46px rgba(0,0,0,.2)}
.availability-item{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto auto;gap:7px 16px;align-content:center;min-width:0;padding:20px;border-right:1px solid rgba(111,133,180,.2)}
.availability-item:last-child{border-right:0}
.availability-item::before{position:absolute;top:0;right:0;left:0;height:2px;background:var(--availability-accent);content:"";opacity:.9}
.availability-pica{--availability-accent:#09c4d5}
.availability-world{--availability-accent:#e36f82}
.availability-geto{--availability-accent:#09c4d5}
.availability-store{grid-column:1;display:flex;align-items:center;gap:10px;min-width:0}
.availability-store b{display:grid;place-items:center;width:35px;height:35px;flex:0 0 35px;border-radius:10px;background:var(--availability-accent);color:white;font:900 15px/1 system-ui;box-shadow:0 8px 20px color-mix(in srgb,var(--availability-accent) 28%,transparent)}
.availability-store span{overflow:hidden;color:#f3f6fd;font-size:13px;font-weight:800;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.availability-spec{grid-column:1;display:flex;align-items:center;gap:8px;min-width:0;padding-left:45px}
.availability-spec small,.availability-count small{color:#6f7e97;font:800 9px/1.2 system-ui;letter-spacing:.09em}
.availability-spec strong{overflow:hidden;color:#c9d3e4;font-size:12px;line-height:1.35;white-space:nowrap;text-overflow:ellipsis}
.availability-count{grid-column:2;grid-row:1/4;align-self:center;display:grid;grid-template-columns:auto auto;justify-content:end;align-items:baseline;column-gap:3px;min-width:64px;color:var(--green);text-align:right}
.availability-count strong{font:800 29px/1 system-ui;letter-spacing:-.06em}
.availability-count span{font-size:12px;font-weight:800}
.availability-count small{grid-column:1/-1;margin-top:5px;color:#82a391;letter-spacing:0}
.availability-note{grid-column:2;margin:-14px 3px 0;color:#8d9ab1;font-size:14px;font-weight:600;line-height:1.5;text-align:right}
@keyframes availabilityLive{50%{opacity:.35;transform:scale(.72)}}

@media(max-width:1180px){
  .availability-shell{grid-template-columns:200px minmax(0,1fr);gap:24px}
  .availability-item{padding:17px 16px}
  .availability-store b{width:31px;height:31px;flex-basis:31px}
  .availability-spec{padding-left:41px}
}
@media(max-width:800px){
  .pc-availability{padding:28px 0}
  .availability-shell{grid-template-columns:1fr}
  .availability-heading{text-align:center}
  .availability-heading span{justify-content:center}
  .availability-grid{grid-template-columns:1fr}
  .availability-item{border-right:0;border-bottom:1px solid rgba(111,133,180,.2)}
  .availability-item:last-child{border-bottom:0}
  .availability-note{grid-column:1;margin:-12px 0 0;text-align:center}
}
@media(max-width:520px){
  .availability-note{font-size:13px}
  .availability-item{gap:6px 12px;padding:17px 14px}
  .availability-store{padding-right:4px}
  .availability-spec{padding-left:41px}
}
@media(prefers-reduced-motion:reduce){.availability-heading span i{animation:none}}

.availability-count strong.is-daily-updated{animation:dailyCountIn .55s cubic-bezier(.16,1,.3,1)}

@keyframes dailyCountIn{0%{opacity:.2;transform:translateY(8px) scale(.82)}100%{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){
  .availability-count strong.is-daily-updated{animation:none!important}
}

/* Single-column coupon registration and installation guidance. */
.coupon-single-grid{grid-template-columns:1fr!important}
.coupon-single-grid .coupon-panel{min-height:auto}
.coupon-install-guide{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:24px;padding:20px;border:1px solid rgba(9,196,213,.25);border-radius:12px;background:linear-gradient(110deg,rgba(9,196,213,.075),rgba(16,32,49,.62))}
.coupon-install-guide>div{display:grid;gap:5px}
.coupon-install-guide>div>span{color:var(--green);font:800 9px/1.4 system-ui,sans-serif;letter-spacing:.16em}
.coupon-install-guide strong{color:#e9fcff;font-size:15px}
.coupon-install-guide p{color:#8ea09b;font-size:11px;line-height:1.65}
.coupon-install-guide .button{min-width:190px;min-height:46px;padding:10px 16px;flex:0 0 auto;font-size:12px}
@media(max-width:720px){.coupon-install-guide{align-items:stretch;flex-direction:column;gap:16px}.coupon-install-guide .button{width:100%}}
.coupon-kakao-contact{display:grid;grid-template-columns:minmax(0,1fr) 116px;align-items:center;gap:22px;margin-top:24px;padding:20px;border:1px solid rgba(9,196,213,.32);border-radius:12px;background:linear-gradient(135deg,rgba(14,36,40,.84),rgba(9,20,37,.82))}
.coupon-kakao-contact>div{display:grid;gap:6px}
.coupon-kakao-contact>div>span{color:#8aa39a;font:750 9px/1.4 system-ui,sans-serif;letter-spacing:.15em}
.coupon-kakao-contact strong{color:#e9fcff;font-size:17px}
.coupon-kakao-contact p{max-width:520px;color:#91a5a0;font-size:12px;line-height:1.7}
.coupon-kakao-contact>div>a{justify-self:start;margin-top:3px;padding:6px 10px;border:1px solid rgba(9,196,213,.38);border-radius:999px;color:var(--green);font-size:11px;font-weight:800}
.coupon-kakao-qr{display:block;width:116px;height:116px;padding:7px;border-radius:13px;background:#fff;box-shadow:0 12px 30px rgba(0,0,0,.3);transition:transform .2s,box-shadow .2s}
.coupon-kakao-qr:hover,.coupon-kakao-qr:focus-visible{transform:translateY(-2px) scale(1.02);box-shadow:0 14px 34px rgba(0,0,0,.36),0 0 0 3px rgba(9,196,213,.25)}
.coupon-kakao-qr img{display:block;width:100%;height:100%;object-fit:contain}
@media(max-width:560px){.coupon-kakao-contact{grid-template-columns:1fr 96px;gap:14px;padding:17px}.coupon-kakao-qr{width:96px;height:96px}.coupon-kakao-contact p{font-size:11px}}
@media(max-width:560px){.coupon-panel>.coupon-register-instruction{font-size:17px}}

/* COMPLETE LARVA BRAND PALETTE PASS
   Decorative imagery, borders, UI accents, and emphasized copy now use only
   the official cyan, deep navy, coral, and cool-silver family. */
:root{
  --brand-cyan:#09c4d5;
  --brand-cyan-bright:#33dbe4;
  --brand-navy:#061a31;
  --brand-navy-deep:#030b1f;
  --brand-coral:#e36f82;
  --brand-silver:#d9e3ee;
  --brand-line:rgba(9,196,213,.32);
  --brand-line-soft:rgba(9,196,213,.2);
  --green:var(--brand-cyan);
  --line:var(--brand-line-soft);
}

/* Structural borders and surfaces. */
:where(
  .feature-card,.audience-panel,.guide-note,.service-notice,.availability-grid,
  .availability-item,.coupon-workspace,.coupon-panel,.coupon-destination,
  .coupon-install-guide,.coupon-kakao-contact,.notice-card,.notice-hero-panel,
  .download-card,.guide-step,.guide-warning,.guide-video,.guide-account-contact,
  .account-mock,.browser-search,.pcbang-app-dock,.pcbang-app-link,.content-visual,
  .hero-event-promo,.hero-mascot-speech,.hero-game-status,.guide-mascot-narrator p,
  .guide-demo-input,.guide-connect-input,.guide-address-demo-input-row
){border-color:var(--brand-line)!important}
.site-header,.connection-strip,.audience-section,.owners-section,.pc-availability,.footer-bottom,
.faq-list,.faq-list details{border-color:var(--brand-line-soft)!important}
.button,.coupon-input-row input,.browser-address,.mock-input,.guide-connect-button{
  border-color:var(--brand-cyan)!important;
}
.button-outline{border-color:rgba(217,227,238,.48)!important}
.button-outline:hover{border-color:var(--brand-cyan-bright)!important}

/* Brand-colored copy and UI accents. */
:where(
  .eyebrow,.panel-kicker,.card-note,.text-link,.step-number,.benefits article>span,
  .guide-note a,.coupon-panel-head,.coupon-flow li>span,.coupon-issued button,
  .coupon-issued p b,.coupon-kakao-contact>div>a,.coupon-install-guide>div>span,
  .guide-contact-kicker,.guide-contact-phone,.guide-step-number,.guide-video-caption small,
  .guide-video-status,.download-caption,.download-info dt,.availability-count,
  .availability-heading span,.hero-game-status span,.hero-overline,.hero-logo-copy small,
  .brand-copy small,.footer-company-lockup small,.content-visual figcaption span
){color:var(--brand-cyan-bright)!important}
h1 span,h2 span:not(.muted),.audience-layout h2 span,.owners-lead h2 span,
.hero-connected-message b,.hero-event-copy b{color:var(--brand-cyan-bright)!important}
:where(.muted,.section-intro,.audience-description,.service-footnote,.owners-caption,
  .availability-note,.footer-top p,.footer-bottom,.pcbang-app-link small,
  .coupon-help,.coupon-panel>p){color:#a6b7c8!important}
:where(.notice-alert-mark,.guide-alert-icon,.notice-card-critical .notice-category,
  .notice-card-critical .notice-card-icon,.hero-event-deadline,.coupon-event-deadline,
  .coupon-message.is-error,.registration-status.is-error,.account-address-browser>p.is-error
){color:var(--brand-coral)!important;border-color:rgba(227,111,130,.52)!important}
.hero-event-deadline,.coupon-event-deadline{background:rgba(227,111,130,.1)!important}

/* Buttons and status badges. */
.button,.mock-submit,.guide-demo-register,.browser-address button,.guide-address-demo-input-row button{
  background:var(--brand-cyan)!important;
  color:var(--brand-navy)!important;
}
.button:hover,.mock-submit:hover,.guide-demo-register:hover,.browser-address button:hover{
  background:var(--brand-cyan-bright)!important;
}
.button-dark{background:var(--brand-navy)!important;color:var(--brand-silver)!important}
.notice-card-critical{border-color:rgba(227,111,130,.48)!important}
.notice-card-critical::before,.hero-event-badge{background:var(--brand-coral)!important}

/* Use the four logo colors for store/app identities instead of unrelated hues. */
.availability-pica{--availability-accent:var(--brand-cyan)}
.availability-world{--availability-accent:var(--brand-coral)}
.availability-geto{--availability-accent:var(--brand-silver)}
.availability-geto .availability-store b{color:var(--brand-navy)!important}
.pcbang-app-geto .pcbang-app-icon{background:linear-gradient(145deg,var(--brand-silver),var(--brand-navy))!important}
.pcbang-app-pica .pcbang-app-icon{background:linear-gradient(145deg,var(--brand-cyan-bright),var(--brand-cyan))!important;color:var(--brand-navy)!important}
.pcbang-app-world .pcbang-app-icon{background:linear-gradient(145deg,var(--brand-coral),#a94f65)!important}
.mock-window-bar>span:first-child,.browser-dots i:first-child{background:var(--brand-coral)!important}
.mock-window-bar>span:nth-child(2),.browser-dots i:nth-child(2){background:var(--brand-silver)!important}
.mock-window-bar>span:nth-child(3),.browser-dots i:last-child{background:var(--brand-cyan)!important}

/* Cyan/navy/coral color grading for photographic and game imagery. */
.content-visual,.notice-hero-visual,.download-card-visual{position:relative;isolation:isolate}
.content-visual img,.notice-hero-visual img,.download-card-visual img,.hero-game-slide{
  filter:saturate(.72) contrast(1.08) brightness(.9)!important;
}
.content-visual:hover img{filter:saturate(.82) contrast(1.1) brightness(.94)!important}
.content-visual::before,.notice-hero-visual::after,.download-card-visual::after{
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(135deg,rgba(9,196,213,.28),rgba(6,26,49,.2) 55%,rgba(227,111,130,.2));
  mix-blend-mode:color;
  opacity:.7;
  content:"";
  pointer-events:none;
}
.content-visual::after{z-index:1;background:linear-gradient(180deg,rgba(6,26,49,.04) 32%,rgba(3,11,31,.92) 100%)}
.content-visual figcaption{z-index:2}
.hero-cinematic .hero-shade{
  background:
    radial-gradient(circle at 76% 24%,rgba(9,196,213,.2),transparent 36%),
    radial-gradient(circle at 14% 78%,rgba(227,111,130,.12),transparent 34%),
    linear-gradient(180deg,rgba(3,11,31,.28),rgba(3,11,31,.08) 38%,rgba(3,11,31,.8)),
    linear-gradient(90deg,rgba(3,11,31,.62),rgba(6,26,49,.16) 50%,rgba(3,11,31,.3))!important;
}
.hero-monitor-showcase::after{
  background:
    linear-gradient(180deg,rgba(3,11,31,.08),rgba(3,11,31,.48)),
    linear-gradient(115deg,rgba(9,196,213,.22),transparent 44%,rgba(227,111,130,.14)),
    repeating-linear-gradient(180deg,rgba(255,255,255,.018) 0 1px,transparent 1px 4px)!important;
}

/* Homepage-event guidance on the coupon page. */
.coupon-event-intro strong,.coupon-event-intro span{display:block}
.coupon-event-intro strong{margin-bottom:5px;color:#eafff3;font-size:17px}
.coupon-event-intro span+span{margin-top:8px}
.coupon-event-intro b{color:#f4f8ff}
.coupon-event-intro a{color:var(--green);font-weight:800;border-bottom:1px solid rgba(9,196,213,.45)}
.coupon-event-intro .coupon-event-deadline{margin:8px 0;padding:7px 10px;border-left:2px solid #e36f82;background:rgba(227,111,130,.055);color:#e36f82;font-weight:750}
