:root{color-scheme:dark;--bg:#070d18;--card:#121c2e;--line:#26364c;--txt:#f3f7ff;--muted:#a6b7ce;--accent:#4e9bff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,'Noto Sans KR',sans-serif;background:var(--bg);color:var(--txt)}a{text-decoration:none;color:inherit}.wrap{width:min(1120px,calc(100% - 36px));margin:auto}.top{background:#080f1be6;backdrop-filter:blur(14px);position:sticky;top:0;z-index:10;border-bottom:1px solid #17263a}.header-in{display:flex;justify-content:space-between;align-items:center;min-height:76px;gap:16px}.logo{font-size:22px;font-weight:900;letter-spacing:-.7px}nav{display:flex;align-items:center;gap:20px;font-size:14px}nav>a:not(.small-pill){color:#bdcadb}.small-pill,.primary{background:#327cde;border-radius:9px;padding:12px 21px;font-weight:800;display:inline-block}.hero{position:relative;isolation:isolate;min-height:485px;display:flex;align-items:center;background:radial-gradient(ellipse at 75% 25%,#133c77,transparent 50%),linear-gradient(135deg,#0c1422,#081024)}.hero:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#070d18ed,#0813268a),var(--hero-image,none) center/cover no-repeat}.hero-content{padding:75px 0}.eyebrow{color:#61a5ff;letter-spacing:3px;font-size:12px;font-weight:900;margin-bottom:14px}.hero h1{font-size:clamp(36px,5vw,68px);margin:0 0 17px;line-height:1.15;max-width:780px;word-break:keep-all}.hero p{color:#c4d3e8;font-size:clamp(16px,2vw,20px);line-height:1.7;margin:0 0 30px;max-width:700px}.sections{display:grid;gap:30px;padding:75px 0}.section{text-align:center;padding:45px 25px;background:#101a2a;border:1px solid #1d3049;border-radius:20px}.section h2{font-size:clamp(24px,3vw,34px);margin:0 0 12px}.section p{color:var(--muted);line-height:1.9;max-width:740px;margin:0 auto 20px;white-space:normal}.outline{display:inline-block;padding:10px 20px;border:1px solid var(--accent);border-radius:9px}.banner-section,.gallery-section{padding:25px 0 80px}.banner-section h2,.gallery-section h2{font-size:29px;margin:0 0 23px}.banner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.banner{border:1px solid #29415c;display:block;overflow:hidden;border-radius:12px;background:#152034}.banner img{width:100%;height:auto;aspect-ratio:5/1;object-fit:cover;display:block;transition:transform .2s}.banner:hover img{transform:scale(1.025)}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.gallery-grid figure{margin:0;background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden}.gallery-grid img{height:230px;width:100%;object-fit:cover;display:block}.gallery-grid figcaption{padding:12px;color:var(--muted);font-size:14px}.footer{text-align:center;background:#050b14;padding:38px 15px;color:#7d94af;border-top:1px solid #1c2a3d;font-size:13px}.telegram-float{position:fixed;right:20px;bottom:22px;z-index:11;background:#1689d6;box-shadow:0 12px 38px #0006;color:white;padding:13px 18px;border-radius:50px;font-weight:800}.popup-overlay{position:fixed;inset:0;background:#000c;z-index:30;display:grid;place-items:center;padding:25px}.popup-overlay[hidden]{display:none}.popup-dialog{position:relative;max-width:min(420px,95vw);width:100%;background:#101825;border-radius:13px;overflow:visible}.popup-dialog img{width:100%;aspect-ratio:3/4;object-fit:contain;display:block;max-height:75vh;background:#050a12}.popup-close{position:absolute;right:-12px;top:-13px;background:#fff;color:#111;border:none;border-radius:50%;font-size:26px;width:39px;height:39px;cursor:pointer}.popup-actions{display:flex;justify-content:space-around;gap:7px}.popup-actions button{width:50%;padding:12px;background:#1a2a40;color:#fff;border:none;cursor:pointer}.popup-actions button+button{border-left:1px solid #4a5c70}@media(max-width:680px){.header-in{min-height:65px}.logo{font-size:18px}nav{gap:9px;font-size:12px}.small-pill{padding:9px}.hero{min-height:420px}.sections{padding:40px 0}.banner-grid{grid-template-columns:1fr;gap:11px}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid img{height:150px}.telegram-float span{display:none}.section{padding:30px 15px}}

/* V2: responsive contact actions, editable brand colors */
.small-pill,.primary{background:var(--accent)}.outline{border-color:var(--accent)}.eyebrow{color:var(--accent)}.section,.gallery-grid figure{background:var(--card)}
.contact-float{position:fixed;right:clamp(12px,2.4vw,24px);bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:20;display:flex;flex-direction:column;align-items:center;gap:12px}
.contact-icon{width:60px;height:60px;display:grid;place-items:center;border-radius:50%;box-shadow:0 8px 24px #0008;transition:transform .18s,box-shadow .18s;outline-offset:4px}
.contact-icon:hover,.contact-icon:focus-visible{transform:translateY(-3px);box-shadow:0 12px 30px #000a}.contact-icon svg{width:42px;height:42px;display:block}.contact-icon.telegram{background:#229ED9}.contact-icon.kakao{background:#FEE500}.contact-icon.kakao svg{width:46px;height:46px}
@media(max-width:680px){.contact-float{right:12px;bottom:calc(14px + env(safe-area-inset-bottom,0px));gap:10px}.contact-icon{width:54px;height:54px}.contact-icon svg{width:38px;height:38px}.contact-icon.kakao svg{width:42px;height:42px}body{overflow-x:hidden}.header-in{flex-wrap:wrap}.banner-grid img{max-width:100%}}


/* OLE-VIP V3 — inspired by supplied blue-neon visual reference. Content remains database-driven. */
:root{--gold:#f9cd69;--cyan:#42d9ff;--bg:#06152b;--card:#081e38;--txt:#f1faff;--line:rgba(79,184,255,.27);--muted:#a9c2dc}
body.theme-neon{background:radial-gradient(ellipse 680px 560px at 97% 11%,#0e4683 0%,transparent 70%),radial-gradient(ellipse 850px 700px at 5% 64%,#072b54,transparent 65%),#061326;color:var(--txt)}
.theme-neon .top{background:#05162deb;border-bottom:1px solid #1b5f91;box-shadow:0 4px 30px #031123a8}
.theme-neon .logo{display:flex;align-items:center;gap:11px;font-style:italic;font-size:24px;text-shadow:0 1px 14px #18b4ff80;white-space:normal}
.logo-symbol{display:grid;place-items:center;font-size:19px;flex:none;height:39px;width:39px;clip-path:polygon(27% 0,75% 0,100% 27%,100% 75%,75% 100%,27% 100%,0 75%,0 27%);background:linear-gradient(145deg,#67f1ff,#0079d9);color:#002a54;font-style:normal;font-weight:1000}
.theme-neon .small-pill{background:linear-gradient(125deg,#0089d9,#24b9ff);box-shadow:0 4px 20px #159cfb3b;border:1px solid #77deff8a;border-radius:24px}
.theme-neon .hero{overflow:hidden;min-height:615px;background:radial-gradient(circle at 78% 45%,#065b9c6c,transparent 40%),linear-gradient(130deg,#041429 10%,#07376a 76%,#081e3a)}
.theme-neon .hero:before{background:linear-gradient(100deg,#04152be9 0%,#04254ddc 57%,#03142688 100%),var(--hero-image,none) center / cover no-repeat}
.hero-grid{position:absolute;inset:0;pointer-events:none;opacity:.35;background-image:linear-gradient(#14aaff18 1px,transparent 1px),linear-gradient(90deg,#14aaff18 1px,transparent 1px);background-size:60px 60px;mask-image:linear-gradient(100deg,transparent,#000 78%)}
.theme-neon .hero-content{display:flex;align-items:center;justify-content:space-between;gap:4vw;position:relative;z-index:1}
.hero-copy{flex:1;min-width:0;max-width:730px}.theme-neon .hero h1{font-size:clamp(42px,6.1vw,90px);font-weight:1000;letter-spacing:-2px;text-shadow:0 5px 28px #008fe75e;line-height:1.1;background:linear-gradient(180deg,#ffffff 12%,#e0f8ff 46%,#46ccff 90%);-webkit-background-clip:text;background-clip:text;color:transparent}
.theme-neon .hero p{max-width:600px;color:#d5ecff;font-weight:560}.theme-neon .eyebrow{color:var(--cyan);font-size:12px;letter-spacing:.22em}
.theme-neon .primary{border:1px solid #95e4ff;background:linear-gradient(100deg,#007ecf,#21c4f5);color:#fff;box-shadow:0 8px 36px #0099ff6d,inset 0 1px #dbf9ff80;padding:16px 27px;border-radius:12px;transition:transform .2s}.theme-neon .primary:hover{transform:translateY(-3px)}
.hero-art{height:350px;width:350px;flex:none;position:relative;display:grid;place-items:center;filter:drop-shadow(0 0 28px #12bdff80)}.art-ring{position:absolute;border-radius:50%;border:2px solid #19b9ff9c;box-shadow:0 0 22px #07bcff68,inset 0 0 22px #07bcff51}.ring-one{width:318px;height:318px}.ring-two{width:245px;height:245px;border:12px double #09cbff87;transform:rotate(-24deg)}.art-core{height:170px;width:170px;border-radius:50%;display:grid;place-items:center;font-size:63px;font-weight:1000;font-style:italic;letter-spacing:-7px;color:#fff;background:radial-gradient(circle at 35% 25%,#2cb3f0,#004d94 72%,#021e42);border:4px solid #8be4ff;text-shadow:0 3px 9px #03345b;box-shadow:inset 0 4px 23px #b0edff9e,0 0 50px #09b5f66b}.spark{position:absolute;width:9px;height:9px;border-radius:50%;background:#e8ffff;box-shadow:0 0 25px 7px #20d6ff}.spark-one{top:14%;right:9%}.spark-two{bottom:20%;left:3%}.spark-three{bottom:8%;right:21%}
.theme-neon .sections{display:block;padding:88px 0 48px}.section-heading{text-align:center;max-width:720px;margin:0 auto 37px}.section-heading h2{font-size:clamp(27px,3.6vw,46px);line-height:1.2;margin:10px 0;font-weight:900}.section-heading p{color:var(--muted);line-height:1.8;margin:6px 0}.section-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.theme-neon .section{position:relative;overflow:hidden;text-align:left;padding:38px 28px 34px;border-radius:20px;border:1px solid #246898;background:linear-gradient(145deg,#0b3760,#061a35 70%);box-shadow:0 14px 32px #0004,inset 0 1px #5aa9d43b}.theme-neon .section:before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,transparent,#36dfff,transparent)}.section-number{font-size:52px;font-weight:1000;line-height:1;color:#44ccff36;margin-bottom:18px}.theme-neon .section h2{font-size:clamp(22px,2.5vw,30px);line-height:1.35;color:#e9faff}.theme-neon .section p{color:#b8d1e6;margin:0 0 24px;line-height:1.75}.theme-neon .outline{border:1px solid #44caff85;color:#8be6ff;background:#007bba25;border-radius:9px;font-weight:750}
.theme-neon .banner-section,.theme-neon .gallery-section{padding:60px 0 55px}.theme-neon .banner-section{border-top:1px solid #23639a47}.theme-neon .banner{border:1px solid #39c4ff68;box-shadow:0 0 22px #1686ff25,0 12px 28px #0004;border-radius:12px}.theme-neon .gallery-grid figure{background:linear-gradient(165deg,#0d3257,#071b32);border:1px solid #285c86;box-shadow:0 12px 28px #0003}.theme-neon .gallery-grid figcaption{color:#e1efff;font-weight:700}
.contact-section{padding:60px 0 75px}.contact-panel{border:1px solid #228ed1;background:radial-gradient(circle at 90% 0,#0b6ca364,transparent 50%),linear-gradient(125deg,#0b3053,#06213f);padding:42px 46px;box-shadow:0 16px 55px #0005;border-radius:22px;display:flex;justify-content:space-between;align-items:center;gap:32px}.contact-panel h2{font-size:clamp(25px,3vw,35px);margin:6px 0 10px}.contact-panel p{color:#bfdbef;margin:0}.contact-actions{display:flex;gap:12px;flex-wrap:wrap}.contact-cta{padding:16px 22px;border-radius:12px;font-weight:850;white-space:nowrap}.kakao-cta{background:#fee500;color:#281b00}.tele-cta{background:#229ed9;color:white}
.theme-neon .footer{background:#031021;border-top:1px solid #145586;color:#9bb9cd}.theme-neon .contact-icon{border:2px solid #ffffff70;box-shadow:0 5px 18px #0009,0 0 22px #028ce858}.theme-neon .contact-icon.kakao{box-shadow:0 5px 18px #0009,0 0 18px #fee50050}
.theme-classic .hero-art,.theme-classic .hero-grid{display:none}.theme-classic .section-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.theme-classic .section-heading{text-align:left}.theme-classic .section-number{display:none}.theme-classic .contact-panel{background:#101a2a}
@media(max-width:1050px){.hero-art{width:260px;height:260px}.ring-one{width:235px;height:235px}.ring-two{width:180px;height:180px}.art-core{height:125px;width:125px;font-size:48px}.section-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.theme-neon .top nav{gap:12px}.theme-neon .header-in{flex-wrap:wrap;gap:10px;padding:10px 0}.theme-neon .hero{min-height:530px}.theme-neon .hero-content{padding:76px 0 65px}.hero-art{position:absolute;z-index:-1;right:-75px;top:35px;opacity:.28;width:260px;height:260px}.theme-neon .hero:before{background:linear-gradient(90deg,#04152bf2,#041a34c8),var(--hero-image,none) center/cover no-repeat}.theme-neon .hero h1{font-size:clamp(37px,9vw,64px);letter-spacing:-1px}.theme-neon .hero p{font-size:16px}.section-cards,.theme-classic .section-cards{grid-template-columns:1fr}.theme-neon .sections{padding:55px 0 30px}.theme-neon .section{padding:27px 24px}.theme-neon .section-number{font-size:40px}.section-heading{margin-bottom:26px}.contact-panel{padding:29px 22px;display:block}.contact-actions{margin-top:25px}.contact-cta{flex:1;text-align:center;padding:13px 8px;font-size:13px}.theme-neon .banner-section,.theme-neon .gallery-section{padding:40px 0}.theme-neon .logo{font-size:19px}.logo-symbol{width:32px;height:32px;font-size:15px}}
@media(prefers-reduced-motion:reduce){.theme-neon .primary,.contact-icon,.banner img{transition:none}}
