
:root{
  --ink:#000000;--panel:#0d0d0d;--panel-2:#151515;--line:#2a2a2a;
  --ivory:#f7f7f7;--ivory-dim:#c4c4c4;--mute:#8c8c8c;
  --gold:#d4af5a;--gold-soft:#eccb84;--pink:#ff4fa3;--pink-soft:#ff86c2;
  --sans:"Pretendard","Apple SD Gothic Neo","Malgun Gothic",system-ui,-apple-system,sans-serif;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--ink);color:var(--ivory);font-family:var(--sans);
  line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
img{max-width:100%;height:auto;display:block;}
a{color:var(--gold-soft);text-decoration:none;}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px;}
h1,h2,h3{margin:0;line-height:1.2;text-wrap:balance;}
.topbar{position:sticky;top:0;z-index:50;background:rgba(10,7,16,.86);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);}
.topbar .wrap{display:flex;align-items:center;justify-content:flex-start;height:60px;}
.wordmark{font-weight:900;font-style:italic;font-size:1.4rem;letter-spacing:-.02em;
  background:linear-gradient(180deg,var(--gold-soft),var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent;}
.wordmark span{color:var(--pink);-webkit-text-fill-color:var(--pink);}
.brand-lockup{display:flex;flex-direction:column;line-height:1;}
.brand-lockup .wordmark{line-height:1;}
.brand-sub{font-size:.72rem;font-weight:600;letter-spacing:.12em;color:var(--ivory-dim);margin-top:4px;padding-left:2px;white-space:nowrap;}
.hero{position:relative;padding:0 0 20px;overflow:hidden;}
.hero-bg{position:absolute;inset:0;background:
  radial-gradient(60% 50% at 50% 0%,rgba(255,79,163,.18),transparent 70%),
  radial-gradient(45% 40% at 82% 24%,rgba(212,175,90,.12),transparent 70%);pointer-events:none;}
.hero-inner{position:relative;display:grid;grid-template-columns:1fr .9fr;gap:34px;align-items:center;padding:44px 0 20px;}
.hero-copy .eyebrow{color:var(--pink-soft);font-weight:700;letter-spacing:.14em;font-size:.82rem;display:inline-flex;align-items:center;gap:8px;}
.hero-copy .eyebrow::before{content:"★★★";letter-spacing:2px;color:var(--gold);}
.hero-title{font-size:clamp(2.6rem,7vw,4.4rem);font-weight:900;font-style:italic;letter-spacing:-.02em;margin:.35em 0 .1em;line-height:.98;
  background:linear-gradient(180deg,#ffffff,var(--gold) 55%,#a87f2e);-webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 4px 14px rgba(212,175,90,.25));}
.hero-sub{font-size:clamp(1.4rem,4.2vw,2.1rem);font-weight:800;color:var(--pink);text-shadow:0 0 18px rgba(255,79,163,.45);margin-bottom:.4em;}
.hero-lead{color:var(--ivory-dim);font-size:1.02rem;max-width:44ch;}
.hero-badges{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line);}
.hero-badges b{display:block;color:var(--gold-soft);font-size:.92rem;}
.hero-badges span{color:var(--mute);font-size:.8rem;}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px;}
.btn-primary,.btn-ghost{padding:14px 26px;border-radius:999px;font-weight:800;font-size:1.05rem;}
.btn-primary{background:linear-gradient(135deg,var(--pink),#d4327f);color:#fff;box-shadow:0 10px 30px -10px var(--pink);}
.btn-ghost{border:1px solid var(--gold);color:var(--gold-soft);}
.hero-visual{position:relative;}
.hero-visual img{border-radius:18px;border:1px solid var(--line);box-shadow:0 30px 70px -30px rgba(255,79,163,.4),0 0 0 1px rgba(212,175,90,.15);}
.crown{position:absolute;top:-14px;left:50%;transform:translateX(-50%);font-size:1.6rem;filter:drop-shadow(0 2px 6px rgba(212,175,90,.6));}
section.blk{padding:56px 0;border-top:1px solid var(--line);}
.sec-eyebrow{color:var(--pink-soft);font-weight:700;letter-spacing:.16em;font-size:.78rem;text-transform:uppercase;}
.sec-title{font-size:clamp(1.6rem,4vw,2.3rem);font-weight:900;margin:.3em 0 .1em;}
.sec-title em{font-style:normal;color:var(--gold-soft);}
.sec-lead{color:var(--ivory-dim);max-width:60ch;margin:.6em 0 0;}
.feat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-top:30px;}
.feat{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:24px 22px;position:relative;overflow:hidden;}
.feat::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--gold),var(--pink));}
.feat .ic{font-size:1.7rem;}
.feat h3{font-size:1.15rem;margin:12px 0 6px;color:var(--gold-soft);}
.feat p{color:var(--ivory-dim);font-size:.92rem;margin:0;}
.fac-wrap{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center;margin-top:30px;}
.fac-wrap img{border-radius:16px;border:1px solid var(--line);}
.fac-list{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:12px;}
.fac-list li{padding-left:26px;position:relative;color:var(--ivory-dim);}
.fac-list li::before{content:"◆";position:absolute;left:0;top:1px;color:var(--gold);font-size:.8rem;}
.fac-list b{color:var(--ivory);}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;margin-top:26px;}
.step{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px 16px;}
.step .n{font-weight:900;font-style:italic;font-size:1.4rem;color:var(--pink);}
.step h4{font-size:1rem;margin:6px 0 4px;color:var(--gold-soft);}
.step p{font-size:.85rem;color:var(--ivory-dim);margin:0;}
.gal{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:30px;}
.gal figure{margin:0;border-radius:14px;overflow:hidden;border:1px solid var(--line);position:relative;}
.gal img{width:100%;height:100%;object-fit:cover;aspect-ratio:3/2;transition:transform .4s ease;}
.gal figure:hover img{transform:scale(1.05);}
.gal figcaption{position:absolute;left:10px;bottom:8px;font-size:.78rem;font-weight:700;color:#fff;text-shadow:0 1px 6px #000;background:rgba(10,7,16,.4);padding:3px 8px;border-radius:6px;backdrop-filter:blur(3px);}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:26px;}
.info-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:24px 24px;}
.info-card h3{color:var(--gold-soft);font-size:1.15rem;margin-bottom:10px;}
.info-card p{color:var(--ivory-dim);font-size:.94rem;margin:0 0 10px;}
.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;}
.chip{background:var(--panel-2);border:1px solid var(--line);border-radius:999px;padding:6px 13px;font-size:.82rem;color:var(--ivory-dim);}
.rev-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:28px;}
.rev{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px 22px;}
.rev .stars{color:var(--gold);letter-spacing:2px;font-size:.9rem;}
.rev p{color:var(--ivory-dim);font-size:.92rem;margin:10px 0 8px;}
.rev .who{color:var(--mute);font-size:.8rem;}
.faq{margin-top:26px;display:grid;gap:12px;}
.faq details{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:0 22px;overflow:hidden;}
.faq summary{cursor:pointer;padding:18px 0;font-weight:700;color:var(--ivory);list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:center;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";color:var(--pink);font-weight:900;font-size:1.3rem;transition:transform .2s;}
.faq details[open] summary::after{transform:rotate(45deg);}
.faq details p{color:var(--ivory-dim);font-size:.92rem;margin:0 0 18px;border-top:1px solid var(--line);padding-top:14px;}
.hub{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-top:30px;}
.hub a{display:block;background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px 22px;transition:border-color .2s,transform .2s;}
.hub a:hover{border-color:var(--gold);transform:translateY(-2px);}
.hub a .hn{font-weight:800;color:var(--ivory);font-size:1.1rem;}
.hub a .hd{color:var(--mute);font-size:.82rem;margin-top:4px;}
.hub a .harrow{color:var(--pink);font-weight:900;float:right;}
.final{text-align:center;padding:64px 0;background:radial-gradient(70% 100% at 50% 0%,rgba(255,79,163,.18),transparent 70%);border-top:1px solid var(--line);}
.final h2{font-size:clamp(1.8rem,5vw,2.6rem);font-weight:900;}
.final .tel-big{font-size:clamp(2.2rem,8vw,3.6rem);font-weight:900;font-style:italic;margin:16px 0 6px;
  background:linear-gradient(180deg,var(--gold-soft),var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent;}
.final p{color:var(--pink-soft);font-weight:700;}
footer{padding:34px 0 110px;border-top:1px solid var(--line);color:var(--mute);font-size:.82rem;text-align:center;}
.float-tel{position:fixed;left:0;right:0;bottom:0;z-index:60;padding:12px clamp(14px,4vw,24px) calc(12px + env(safe-area-inset-bottom,0px));
  background:linear-gradient(180deg,rgba(0,0,0,.72),#000 60%);border-top:1px solid rgba(212,175,90,.55);
  box-shadow:0 -10px 34px -10px rgba(0,0,0,.85),0 -1px 0 rgba(212,175,90,.25) inset;backdrop-filter:blur(8px);display:flex;justify-content:center;}
.float-cta{display:flex;align-items:center;gap:14px;width:100%;max-width:520px;padding:11px 14px 11px 12px;border-radius:16px;
  background:linear-gradient(135deg,#1a1a1a,#0a0a0a);border:1px solid rgba(212,175,90,.45);
  box-shadow:0 4px 18px -6px rgba(0,0,0,.7),0 0 0 1px rgba(0,0,0,.4) inset;position:relative;overflow:hidden;transition:transform .18s ease;}
.float-cta::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.14),transparent);transform:skewX(-18deg);animation:shine 4.5s ease-in-out infinite;}
.float-cta:active{transform:scale(.98);}
.float-cta .ico{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-size:1.25rem;
  background:radial-gradient(circle at 30% 30%,var(--pink-soft),var(--pink) 60%,#c62a76);box-shadow:0 0 0 4px rgba(255,79,163,.16),0 6px 16px -4px var(--pink);animation:pulse 2s ease-in-out infinite;}
.float-cta .txt{display:flex;flex-direction:column;line-height:1.1;min-width:0;}
.float-cta .label{font-size:.68rem;font-weight:700;letter-spacing:.18em;color:var(--gold-soft);text-transform:uppercase;}
.float-cta .num{font-size:clamp(1.3rem,5.6vw,1.7rem);font-weight:900;font-style:italic;letter-spacing:.01em;white-space:nowrap;
  background:linear-gradient(180deg,#ffffff,var(--gold-soft) 55%,var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent;}
.float-cta .go{margin-left:auto;flex:none;font-size:.72rem;font-weight:800;color:#000;
  background:linear-gradient(135deg,var(--gold-soft),var(--gold));padding:9px 15px;border-radius:999px;white-space:nowrap;box-shadow:0 4px 12px -4px rgba(212,175,90,.6);}
@keyframes pulse{0%,100%{box-shadow:0 0 0 4px rgba(255,79,163,.16),0 6px 16px -4px var(--pink);}50%{box-shadow:0 0 0 8px rgba(255,79,163,.05),0 6px 20px -2px var(--pink);}}
@keyframes shine{0%,100%{left:-60%;}55%,100%{left:130%;}}
@media(prefers-reduced-motion:reduce){.float-cta::after{animation:none;}.float-cta .ico{animation:none;}}
@media(max-width:360px){.float-cta .go{display:none;}}
@media(max-width:760px){.hero-inner{grid-template-columns:1fr;gap:24px;}.hero-visual{max-width:420px;margin:0 auto;}.fac-wrap,.two-col{grid-template-columns:1fr;}}

p,li,summary,figcaption{word-break:keep-all;overflow-wrap:anywhere}
.skip-link{position:fixed;top:-100px;left:16px;background:#fff;color:#000;padding:12px;z-index:100}.skip-link:focus{top:8px}
:focus-visible{outline:3px solid var(--pink-soft);outline-offset:5px}section[id],h2[id]{scroll-margin-top:95px}
.topbar .wrap{height:auto;min-height:70px;justify-content:space-between;gap:16px;padding-top:10px;padding-bottom:10px;flex-wrap:wrap}
.brand-lockup{display:flex;flex-direction:column;gap:0;line-height:1.2}.brand-sub{font-size:.75rem;margin-top:5px;color:var(--ivory-dim)}
.top-nav{display:flex;gap:22px;flex-wrap:wrap;font-size:.88rem}.top-nav a{color:#eee;padding:8px 0}.top-nav a:hover{color:var(--pink-soft)}
.breadcrumbs{font-size:.78rem;color:#aaa;padding-top:20px}.breadcrumbs ol{list-style:none;display:flex;gap:12px;padding:0;margin:0;flex-wrap:wrap}.breadcrumbs li+li:before{content:'/';margin-right:12px;color:#666}
.hero-inner{padding:32px 20px 20px;align-items:center}.hero-copy{min-width:0}.hero-title{font-size:clamp(2.1rem,5vw,3.5rem);font-style:normal;line-height:1.25;letter-spacing:-.04em;word-break:keep-all;overflow-wrap:anywhere}.hero-title .brand-title{display:block;font-size:.7em;margin-top:12px;letter-spacing:-.025em}
.hero-lead{font-size:1rem;line-height:1.85;color:#ddd}.hero-copy .eyebrow:before,.hero-copy .eyebrow:after{content:none}.hero-copy .eyebrow{font-size:.72rem;letter-spacing:.15em}
.hero-visual{margin:0;max-width:365px;justify-self:end}.hero-visual img{width:100%;height:auto}.hero-visual figcaption{font-size:.73rem;color:#bdb7c0;line-height:1.65;padding-top:12px}
.hero-badges{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.hero-badges span{padding:5px 11px;border:1px solid #544634;border-radius:100px;font-size:.77rem;color:var(--gold-soft)}
.jump-nav{display:flex;gap:10px;flex-wrap:wrap;padding:20px 0 26px}.jump-nav a{padding:9px 14px;border:1px solid var(--line);border-radius:999px;font-size:.83rem;background:#111}
.readable{max-width:780px}.reading p{color:#d1d1d1;line-height:1.9}.reading h3{font-size:1.2rem;margin:25px 0 12px}.reading a:not(.btn-primary):not(.btn-ghost){text-decoration:underline;text-underline-offset:4px}
.station-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:16px;margin-top:28px}.station-card{background:var(--panel);border:1px solid #3e3326;padding:25px;border-radius:16px}.station-card h3{font-size:1.1rem;line-height:1.4;margin:0 0 10px}.station-card .line{display:block;color:var(--pink-soft);font-size:.81rem;font-weight:700}.station-card p{margin:12px 0 0;font-size:.91rem;color:#c4c4c4}
.source-note{font-size:.79rem;color:#b9b0a4;line-height:1.85;margin-top:25px}.source-note a{display:inline-block;margin:0 16px 4px 0;text-decoration:underline;text-underline-offset:3px}.source-note small{display:block;font-size:inherit}
.editorial-note{padding:16px 20px;margin-top:25px;border-left:2px solid var(--gold);background:#12100d;color:#c7c1b7;font-size:.85rem}
.numbered-plan{list-style:none;counter-reset:step;padding:0;margin:28px 0;display:grid;gap:20px}.numbered-plan li{counter-increment:step;display:grid;grid-template-columns:36px 1fr;gap:14px;border-bottom:1px solid var(--line);padding-bottom:22px}.numbered-plan li:before{content:counter(step,decimal-leading-zero);color:var(--pink-soft);font-size:1.1rem;font-weight:800}.numbered-plan h3{font-size:1.1rem;margin:0 0 10px;line-height:1.5}.numbered-plan p{margin:0;color:#c4c4c4}
.inquiry{margin:22px 0;border:1px solid #4d3f2f;background:#13100d;padding:24px;border-radius:14px;line-height:1.9;color:#e2d6be}.inquiry-label{font-size:.75rem;color:var(--pink-soft);letter-spacing:.07em;display:block;margin-bottom:10px}
.guide-callout{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:26px;border:1px solid #4e3a50;border-radius:18px;background:linear-gradient(120deg,#1b0f1b,#111);margin-top:24px}.guide-callout p{margin:8px 0 0;color:#c7c0c7;font-size:.9rem}.guide-callout a{flex-shrink:0}
.hub{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px}.hub a{min-width:0}.hub .hd{color:#bfb6ae;font-size:.87rem;line-height:1.65}.hub .hn{font-size:1.1rem}
.gallery-note{max-width:780px;color:#bfb6ae;font-size:.85rem;line-height:1.8;margin:0 0 24px}.gal figure{margin:0}.gal figcaption{font-size:.8rem}.gal img{object-position:center}
.faq summary{font-size:1rem;line-height:1.6}.faq p{color:#ccc;line-height:1.85}
.footer-links{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin:14px 0}.footer-links a{padding:6px}.footer-note{max-width:740px;margin:16px auto;line-height:1.8}
.float-cta .num{font-style:normal;font-size:1.25rem}.float-cta .label{letter-spacing:.05em;font-size:.7rem}.float-cta .ico{animation:none}.float-cta:after{animation:none}.float-cta .go{font-size:.77rem}
.guide-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px;margin:24px 0}.guide-table{border-collapse:collapse;width:100%;font-size:.91rem}.guide-table th,.guide-table td{text-align:left;vertical-align:top;padding:16px;border-bottom:1px solid var(--line);min-width:140px}.guide-table th{color:var(--gold-soft);background:#16120e}.guide-table tr:last-child td{border-bottom:0}.guide-table caption{text-align:left;padding:14px;background:#17120e;color:var(--gold-soft)}
.guide-hero{padding:45px 0 25px}.guide-hero h1{font-size:clamp(2rem,5vw,3.2rem);max-width:760px;line-height:1.25}.guide-hero .eyebrow{color:var(--pink-soft);font-size:.76rem;letter-spacing:.12em}.guide-hero p{max-width:740px;color:#ccc}
@media(max-width:760px){.top-nav{gap:16px;font-size:.79rem}.hero-visual{justify-self:center;max-width:310px}.hero-inner{gap:28px}.guide-callout{display:block}.guide-callout a{display:inline-flex;margin-top:16px}.sec-title{font-size:1.65rem}.station-card{padding:20px}.topbar .wrap{min-height:65px}.hero-title{font-size:2.15rem}.hero-title .brand-title{font-size:.8em}section.blk{padding:40px 0}.guide-hero{padding-top:30px}}
@media(max-width:420px){.top-nav{gap:13px}.topbar .wrap{gap:8px}.brand-sub{font-size:.67rem}.wordmark{font-size:1.2rem}.hero-cta{gap:10px}.btn-primary,.btn-ghost{font-size:.88rem;padding:12px 17px}.float-cta .go{padding:9px 11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
