:root{--black:#050407;--charcoal:#0c0a10;--purple:#2a0b42;--purple2:#5d1680;--orange:#ff7518;--acid:#b7ff2a;--silver:#d9dbe2;--white:#f8f6fb;--muted:#aaa5b3;--line:rgba(217,219,226,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:74px}body{margin:0;background:var(--black);color:var(--white);font-family:Pretendard,"Noto Sans KR",Arial,sans-serif;line-height:1.75;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit}.topbar{position:fixed;z-index:50;inset:0 0 auto;height:74px;padding:0 clamp(18px,5vw,70px);display:grid;grid-template-columns:250px 1fr 130px;align-items:center;background:rgba(5,4,7,.86);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}.brand{font:700 1.45rem Georgia,serif;letter-spacing:.12em;color:var(--silver)}.brand b{color:var(--orange);text-shadow:0 0 18px var(--orange)}.brand small{display:block;font:700 .56rem Arial,sans-serif;letter-spacing:.34em;color:var(--acid);margin-top:2px}.topnav{display:flex;justify-content:center;gap:clamp(15px,2vw,30px);font-size:.86rem}.topnav a:hover,.topnav a[aria-current=page]{color:var(--orange)}.header-call{justify-self:end;border:1px solid var(--orange);padding:8px 15px;border-radius:999px;font-weight:800}.menu{display:none}.hero{min-height:100svh;padding:110px clamp(20px,6vw,92px) 84px;display:grid;grid-template-columns:minmax(300px,.82fr) minmax(400px,1.18fr);gap:clamp(35px,7vw,110px);align-items:center;background:radial-gradient(circle at 76% 18%,rgba(183,255,42,.08),transparent 22%),radial-gradient(circle at 12% 55%,rgba(93,22,128,.38),transparent 42%),#050407}.hero-photo{max-width:520px;justify-self:end;border:1px solid rgba(217,219,226,.28);padding:9px;background:#0d0812;box-shadow:0 30px 90px rgba(0,0,0,.6)}.hero-photo img{display:block;width:100%;height:auto}.eyebrow{color:var(--acid);font-size:.75rem;font-weight:900;letter-spacing:.26em}.hero-logo{display:flex;flex-direction:column;margin:14px 0 26px}.hero-logo i{font-style:normal;color:var(--orange);font-size:2rem}.hero-logo strong{font:700 clamp(4.5rem,9vw,8.5rem)/.88 Georgia,serif;letter-spacing:-.03em;background:linear-gradient(180deg,#fff,#9b9daa 60%,#fff);-webkit-background-clip:text;color:transparent}.hero-logo small{margin-top:14px;color:var(--orange);font-weight:900;letter-spacing:.46em}.hero h1{font-size:clamp(1.2rem,2vw,1.7rem);margin:0 0 10px}.hero-lead{font:700 clamp(1.8rem,3vw,3.1rem)/1.28 Georgia,"Noto Serif KR",serif;margin:0 0 18px}.hero-copy>p:not(.eyebrow):not(.hero-lead){max-width:570px;color:#c7c2cc}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.btn{min-height:52px;padding:0 24px;border:1px solid var(--line);border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:900}.btn.primary{background:linear-gradient(135deg,var(--orange),#ff9d22);color:#130800;border-color:var(--orange);box-shadow:0 10px 32px rgba(255,117,24,.2)}.btn.secondary{background:rgba(42,11,66,.46);border-color:rgba(217,219,226,.35)}.quick{max-width:1180px;margin:-34px auto 0;position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);background:rgba(15,7,24,.94);box-shadow:0 20px 70px rgba(0,0,0,.45)}.quick div{padding:22px;border-right:1px solid var(--line)}.quick div:last-child{border:0}.quick small{display:block;color:var(--acid);letter-spacing:.13em}.quick b{color:var(--silver)}.section{max-width:1180px;margin:auto;padding:100px 24px}.head{display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;align-items:end;margin-bottom:45px}.head h2,.section>h2,.party-copy h2,.cta h2{font:700 clamp(2.3rem,4.7vw,4.8rem)/1.08 Georgia,"Noto Serif KR",serif;margin:8px 0}.head>p{color:var(--muted);font-size:1.04rem}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.service-grid article{padding:27px 22px;border:1px solid var(--line);background:linear-gradient(150deg,#170b23,#0b090e);min-height:250px}.service-grid span{color:var(--orange);font-weight:900}.service-grid small{display:block;color:var(--acid);letter-spacing:.12em;margin-top:28px}.service-grid h3{margin:7px 0}.service-grid p{color:var(--muted);margin:0}.party{border-top:1px solid var(--line);display:grid;grid-template-columns:1.15fr .85fr;min-height:620px}.party:nth-of-type(even){grid-template-columns:.85fr 1.15fr}.party:nth-of-type(even) .party-image{order:2}.party-image{align-self:center;padding:clamp(20px,4vw,60px)}.party-image img{display:block;width:100%;height:auto;border:1px solid rgba(217,219,226,.22);box-shadow:0 28px 80px rgba(0,0,0,.45)}.party-copy{padding:70px clamp(24px,6vw,90px);display:flex;flex-direction:column;justify-content:center;background:radial-gradient(circle at 20% 20%,rgba(93,22,128,.28),transparent 45%),#08060b}.party-copy p{color:var(--muted);max-width:520px}.party-copy .count{color:var(--orange);font-weight:900}.price-bg{background:linear-gradient(180deg,#0c0612,#050407)}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.price-card{padding:30px;border:1px solid var(--line);background:#0c0910}.price-card small{color:var(--acid);letter-spacing:.15em}.price-card strong{display:block;color:var(--silver);font:700 2rem Georgia,serif;margin:12px 0}.price-card p,.price-card li{color:var(--muted)}.price-card ul{padding-left:18px}.people{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:20px}.people div{padding:16px;text-align:center;border:1px solid var(--line);background:#100a16}.people span{display:block;color:var(--muted)}.people b{color:var(--orange)}.note{color:var(--muted);font-size:.9rem}.event-block{padding:100px 24px;background:radial-gradient(circle at 75% 25%,rgba(183,255,42,.08),transparent 30%),linear-gradient(135deg,#26083d,#070409)}.event-inner{max-width:1100px;margin:auto;display:grid;grid-template-columns:.78fr 1.22fr;gap:7vw;align-items:center}.event-inner img{width:100%;height:auto;display:block;border:1px solid rgba(217,219,226,.24)}.event-inner h2{font:700 clamp(2.7rem,5vw,5rem)/1 Georgia,serif;margin:10px 0 22px}.event-inner p{color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.steps article{padding:26px 20px;border-top:2px solid var(--orange);background:#0d0911}.steps b{color:var(--orange)}.steps p{color:var(--muted)}.actual{background:#09070c}.venue-grid{display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:repeat(2,240px);gap:10px}.venue-grid figure{margin:0;overflow:hidden;position:relative}.venue-grid figure:first-child{grid-row:1/3}.venue-grid img{width:100%;height:100%;object-fit:cover}.venue-grid figcaption{position:absolute;inset:auto 0 0;padding:35px 15px 12px;background:linear-gradient(transparent,rgba(0,0,0,.85));color:var(--silver)}.location-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:16px}.address{padding:30px;border-left:3px solid var(--acid);background:#120b18}.address strong{font-size:1.15rem}.address p{color:var(--muted)}.address .accent{color:var(--orange)}.map{width:100%;min-height:420px;border:0;filter:saturate(.65) invert(.02)}.faq details{padding:19px 22px;border:1px solid var(--line);background:#0b080e;margin-bottom:9px}.faq summary{font-weight:800;cursor:pointer}.faq details p{color:var(--muted)}.cta{text-align:center;padding:100px 24px 115px;background:radial-gradient(circle at center,rgba(93,22,128,.42),transparent 55%),#050407}.cta p{color:var(--muted)}.cta .actions{justify-content:center}.footer{text-align:center;padding:65px 24px 110px;border-top:1px solid var(--line);color:var(--muted)}.footer strong{font:700 1.5rem Georgia,serif;color:var(--silver)}.drawer{position:fixed;z-index:70;inset:0 0 0 auto;width:min(82vw,350px);padding:28px;background:#09050d;transform:translateX(100%);transition:.25s;border-left:1px solid var(--line)}.drawer.open{transform:none}.drawer>button{float:right;background:none;border:0;color:#fff;font-size:2rem}.drawer nav{clear:both;display:grid;padding-top:40px}.drawer a{padding:14px;border-bottom:1px solid var(--line)}.bottom{display:none}.toast{position:fixed;z-index:90;left:50%;bottom:90px;transform:translateX(-50%);padding:12px 18px;border-radius:999px;background:#fff;color:#08050a;font-weight:800;white-space:nowrap}.page-hero{padding:130px 24px 70px;text-align:center;background:radial-gradient(circle at center,rgba(93,22,128,.42),transparent 55%),#050407}.page-hero h1{font:700 clamp(3rem,7vw,6.5rem)/1 Georgia,serif;margin:10px 0;background:linear-gradient(#fff,#999baa,#fff);-webkit-background-clip:text;color:transparent}.page-image{max-width:820px;margin:0 auto;padding:30px 20px}.page-image img{width:100%;height:auto;display:block}.benefits{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.benefits article{padding:28px;border:1px solid var(--line);background:#100a16}.benefits b{color:var(--orange)}.benefits p{color:var(--muted)}
@media(max-width:850px){.topbar{height:68px;grid-template-columns:1fr auto;padding:0 17px}.topnav,.header-call{display:none}.menu{display:block;width:44px;height:44px;border:0;background:none;color:var(--orange);font-size:1.8rem}.brand{font-size:1.2rem}.hero{padding:90px 18px 74px;grid-template-columns:1fr;gap:28px}.hero-photo{order:0;max-width:520px;justify-self:center}.hero-copy{order:1}.hero-logo strong{font-size:4.3rem}.hero-logo small{font-size:.7rem;letter-spacing:.32em}.hero-lead{font-size:2rem}.actions{display:grid;grid-template-columns:1fr 1fr}.quick{margin:0 14px;grid-template-columns:1fr 1fr}.quick div:nth-child(2){border-right:0}.quick div:nth-child(-n+2){border-bottom:1px solid var(--line)}.head{grid-template-columns:1fr;gap:20px}.service-grid,.steps{grid-template-columns:1fr 1fr}.party,.party:nth-of-type(even){grid-template-columns:1fr;min-height:0}.party:nth-of-type(even) .party-image{order:0}.party-image{padding:28px 18px}.party-copy{padding:48px 20px 68px}.price-grid{grid-template-columns:1fr}.people{grid-template-columns:1fr 1fr}.event-inner{grid-template-columns:1fr}.event-copy{order:-1}.venue-grid{grid-template-columns:1fr;grid-template-rows:none}.venue-grid figure,.venue-grid figure:first-child{height:250px;grid-row:auto}.location-grid{grid-template-columns:1fr}.map{min-height:330px}.bottom{position:fixed;z-index:60;inset:auto 0 0;height:70px;display:grid;grid-template-columns:repeat(3,1fr);background:rgba(5,4,7,.97);border-top:1px solid var(--line)}.bottom a,.bottom button{display:flex;align-items:center;justify-content:center;background:none;color:#fff;border:0;border-right:1px solid var(--line);font-weight:900}.footer{padding-bottom:110px}}
@media(max-width:480px){.hero-logo strong{font-size:3.55rem}.service-grid,.steps,.benefits{grid-template-columns:1fr}.section{padding:76px 18px}.actions{grid-template-columns:1fr}.event-block{padding:76px 18px}.quick b{font-size:.88rem}}

/* Main HERO only: full-bleed model background with overlaid brand and CTA. */
.hero{position:relative;isolation:isolate;min-height:100svh;padding:130px clamp(22px,7vw,108px) 88px;display:flex;align-items:flex-end;background-image:linear-gradient(90deg,rgba(5,4,7,.95) 0%,rgba(5,4,7,.78) 37%,rgba(42,11,66,.24) 66%,rgba(5,4,7,.18) 100%),linear-gradient(0deg,rgba(5,4,7,.94) 0%,transparent 42%),url('assets/hero.jpg');background-size:cover;background-position:center 32%;background-repeat:no-repeat}.hero::after{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 80% 20%,rgba(183,255,42,.08),transparent 22%),linear-gradient(180deg,rgba(5,4,7,.2),transparent 38%)}.hero-copy{max-width:660px;text-shadow:0 4px 28px rgba(0,0,0,.86)}
@media(max-width:850px){.hero{min-height:940px;padding:112px 18px 82px;display:flex;align-items:flex-end;background-image:linear-gradient(180deg,rgba(5,4,7,.08) 0%,rgba(5,4,7,.03) 34%,rgba(42,11,66,.36) 57%,rgba(5,4,7,.95) 82%,#050407 100%),url('assets/hero.jpg');background-size:cover;background-position:center 18%;background-repeat:no-repeat}.hero-copy{width:100%;max-width:520px}.hero-logo{margin:8px 0 18px}.hero-logo strong{font-size:4.3rem}.hero-logo small{font-size:.7rem;letter-spacing:.32em}.hero-lead{font-size:2rem}.hero .actions{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.hero{min-height:900px;padding:102px 18px 78px;background-position:center 12%}.hero-logo strong{font-size:3.55rem}.hero .actions{grid-template-columns:1fr 1fr}.hero .btn{padding-inline:12px}}
