/* v3.10 v4 homepage — full design CSS + chrome (issue bar / inperson section /
   BB-header full-bleed glue) + lvsg component styles. Enqueued for
   page-v3-10-home.php (which dequeues core.css). Edit the design HERE, not the template. */

:root{
  --gold:#FCB900;
  --gold-deep:#CF9800;
  --cream:#FEEBB9;
  --paper:#FEF8E7;
  --paper-2:#FDF1D2;
  --pink:#F5ADC3;
  --blue:#B3C0D7;
  --mint:#B7EAE7;
  --peach:#FCE5CD;
  --ink:#1F242C;
  --ink-2:#3A4250;
  --line:rgba(31,36,44,.14);
  --line-2:rgba(31,36,44,.32);
  --muted:rgba(31,36,44,.55);
  --serif:'Fraunces','Noto Serif KR',Georgia,serif;
  --sans:'Inter Tight',-apple-system,sans-serif;
  --mono:'JetBrains Mono',ui-monospace,monospace;
  --kr:'Noto Serif KR',serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
img{max-width:100%;display:block}
h1,h2,h3,h4{font-family:var(--serif);font-weight:400;letter-spacing:-0.03em;line-height:1.05}
em{font-style:italic;font-weight:300}

.wrap{max-width:1280px;margin:0 auto;padding:0 32px}
@media(max-width:768px){.wrap{padding:0 20px}}

.mono{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase}

/* TOP BAR */
.issue{background:var(--ink);color:var(--paper);padding:9px 0;font-family:var(--mono);font-size:10px;letter-spacing:0.12em;text-transform:uppercase}
.issue .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.issue a{color:var(--paper);border-bottom:1px solid var(--paper)}
.issue-tag{background:var(--paper);padding:2px 7px;letter-spacing:0.1em;color:var(--ink);font-weight:700}

/* MASTHEAD */
.mh{background:rgba(254,248,231,.97);backdrop-filter:blur(10px);border-bottom:1px solid var(--line-2);position:sticky;top:0;z-index:50}
.mh .wrap{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:32px;padding:14px 32px}
.brand-logo{height:34px;width:auto;display:block}
.nav{display:flex;justify-content:center;gap:6px}
.nav-item{position:relative}
.nav-item>span{display:inline-block;padding:8px 14px;font-family:var(--mono);font-size:11px;letter-spacing:0.16em;font-weight:700;cursor:pointer;color:var(--ink-2);transition:color .2s;text-transform:uppercase;border-radius:6px}
.nav-item:hover>span{color:var(--ink);background:var(--paper-2)}
.nav-item>span.cur{color:var(--ink)}
.nav-item>span.cur::after{content:'';position:absolute;left:14px;right:14px;bottom:-4px;height:3px;background:var(--gold);border-radius:2px}
.nav-drop{position:absolute;top:calc(100% + 8px);left:0;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:10px;min-width:280px;box-shadow:0 20px 50px -12px rgba(31,36,44,.25);opacity:0;visibility:hidden;transform:translateY(-8px);transition:all .2s;display:flex;flex-direction:column;gap:1px;z-index:60}
.nav-item:hover .nav-drop{opacity:1;visibility:visible;transform:translateY(0)}
.nav-drop a{padding:10px 14px;border-radius:8px;transition:all .15s;display:flex;flex-direction:column;gap:2px}
.nav-drop a:hover{background:var(--paper-2)}
.nav-cta{display:flex;gap:14px;align-items:center}
.nav-pricing{font-family:var(--mono);font-size:11px;letter-spacing:0.16em;font-weight:700;color:var(--ink-2);text-transform:uppercase;transition:color .2s}
.nav-pricing:hover{color:var(--ink)}
.nav-drop a.prio{background:var(--paper-2);font-weight:600;color:var(--ink);padding-left:18px;border-left:3px solid var(--gold)}
.nav-drop a.prio:hover{background:var(--gold);color:var(--ink)}
.nav-drop a.sub{padding-left:24px;font-size:12px;color:var(--ink-2);position:relative}
.nav-drop a.sub::before{content:'·';position:absolute;left:14px;font-weight:700}
@media(max-width:980px){.nav{display:none}.mh .wrap{grid-template-columns:1fr auto}.nav-pricing{display:none}}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;font-size:13px;font-weight:600;transition:all .2s;border:1px solid transparent;cursor:pointer;letter-spacing:0.01em;border-radius:8px;text-decoration:none}
.btn-ink{background:var(--ink);color:var(--paper)}
.btn-ink:hover{background:var(--ink-2)}
.btn-gold{background:var(--gold);color:var(--ink);font-weight:700;box-shadow:0 4px 12px -3px rgba(252,185,0,.35)}
.btn-gold:hover{background:var(--gold-deep);color:var(--paper);box-shadow:0 8px 20px -3px rgba(252,185,0,.45)}
.btn-ghost{border-color:var(--ink);color:var(--ink);background:transparent}
.btn-ghost:hover{background:var(--ink);color:var(--paper)}
.btn-lg{padding:15px 24px;font-size:14px}
.btn-mega{padding:18px 28px;font-size:15px;border-radius:10px;font-weight:700}
.btn-arr::after{content:'→';margin-left:4px;transition:transform .2s}
.btn-arr:hover::after{transform:translateX(4px)}

/* SECTION NUM */
.snum{font-family:var(--mono);font-size:11px;letter-spacing:0.16em;color:var(--ink);text-transform:uppercase;display:flex;align-items:center;gap:12px;margin-bottom:22px;font-weight:700}
.snum::before{content:'';display:block;width:32px;height:2px;background:var(--ink)}
.snum .kr{font-family:var(--kr);font-weight:900;color:var(--ink-2);letter-spacing:0;font-size:13px}

@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}
@keyframes mq{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* HERO */
.hero{padding:70px 0 80px;border-bottom:1px solid var(--line);position:relative;overflow:hidden;background:linear-gradient(180deg,var(--cream) 0%,var(--paper) 55%)}
.hero .hero-kr{position:absolute;font-family:var(--kr);font-weight:900;font-size:clamp(220px,30vw,420px);color:rgba(31,36,44,.05);top:-40px;right:-50px;line-height:.8;letter-spacing:-0.04em;pointer-events:none}
.hero .wrap{position:relative;z-index:1}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:60px;align-items:center}
.hero-tag{display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);font-size:11px;letter-spacing:0.12em;text-transform:uppercase;font-weight:700;color:var(--ink-2);background:var(--paper);border:1px solid var(--line);padding:7px 14px;border-radius:100px;margin-bottom:22px}
.hero-tag .live{width:8px;height:8px;border-radius:50%;background:#22C55E;animation:pulse 1.5s infinite}
.hero-tag .kr{font-family:var(--kr);font-weight:900;color:var(--ink)}
.hero h1{font-size:clamp(46px,6.5vw,88px);font-weight:300;letter-spacing:-0.045em;line-height:.98;margin-bottom:16px}
.hero h1 em{font-style:italic;font-weight:500;color:var(--ink);background:var(--gold);padding:0 12px;border-radius:8px}
.hero-kr-sub{font-family:var(--kr);font-weight:400;font-size:21px;color:var(--ink-2);margin-bottom:16px;font-style:italic}
.hero-sub{font-size:18px;color:var(--ink-2);max-width:560px;line-height:1.55;margin-bottom:26px}
.hero-sub strong{color:var(--ink);font-weight:600}
.hero-acts{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}
.hero-trust{display:flex;align-items:center;gap:14px;font-family:var(--mono);font-size:11px;letter-spacing:0.08em;color:var(--muted);text-transform:uppercase;font-weight:600;flex-wrap:wrap}
.hero-trust .check{color:#22C55E;font-weight:800}
.hero-trust span:not(:last-child)::after{content:'·';margin-left:14px;color:var(--line-2)}
.hero-img{position:relative}
.hero-img-frame{aspect-ratio:4/5;border-radius:24px;overflow:hidden;box-shadow:0 30px 60px -20px rgba(31,36,44,.25);border:1px solid var(--line)}
.hero-img-frame img{width:100%;height:100%;object-fit:cover}
.hero-mini-card,.hero-bottom-card{position:absolute;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:14px 16px;box-shadow:0 16px 30px -10px rgba(31,36,44,.22);display:flex;align-items:center;gap:12px}
.hero-mini-card{top:26px;left:-30px}
.hero-bottom-card{bottom:26px;right:-30px}
.hero-mini-card .ic,.hero-bottom-card .ic{width:40px;height:40px;border-radius:10px;background:var(--gold);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:800;color:var(--ink);font-family:var(--serif);flex-shrink:0}
.hero-mini-card .txt,.hero-bottom-card .txt{font-size:12px;color:var(--muted);line-height:1.3;font-family:var(--mono);letter-spacing:0.04em}
.hero-mini-card .txt strong,.hero-bottom-card .txt strong{display:block;font-size:14px;color:var(--ink);font-family:var(--sans);letter-spacing:0;margin-bottom:1px}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr;gap:60px}.hero-mini-card{left:0}.hero-bottom-card{right:0}}

/* EMOT */
.emot{padding:96px 0;border-bottom:1px solid var(--line)}
.emot-head{margin-bottom:46px;max-width:780px}
.emot-head h2{font-size:clamp(34px,5vw,60px);font-weight:300;letter-spacing:-0.04em;line-height:.98;margin-bottom:14px}
.emot-head h2 em{color:var(--ink);font-style:italic;background:var(--gold);padding:0 8px;border-radius:6px}
.emot-head p{font-size:17px;color:var(--ink-2);line-height:1.55}
.emot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.emoc{padding:30px 26px;background:var(--paper-2);border:1px solid var(--line);border-radius:18px;transition:transform .22s,box-shadow .22s,background .22s;display:block}
.emoc:hover{transform:translateY(-4px);background:var(--paper);box-shadow:0 20px 40px -14px rgba(31,36,44,.18)}
.emoc-emoji{font-size:34px;margin-bottom:18px;line-height:1}
.emoc h4{font-family:var(--serif);font-size:21px;font-weight:500;letter-spacing:-0.01em;line-height:1.15;margin-bottom:10px}
.emoc h4 em{color:var(--ink);font-style:italic}
.emoc p{font-size:13.5px;color:var(--ink-2);line-height:1.5}
@media(max-width:900px){.emot-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.emot-grid{grid-template-columns:1fr}}

/* INTENT */
.intent{padding:96px 0;border-bottom:1px solid var(--line);background:var(--paper-2)}
.intent-head{margin-bottom:46px;max-width:780px}
.intent-head h2{font-size:clamp(34px,5vw,60px);font-weight:300;letter-spacing:-0.04em;line-height:.98;margin-bottom:14px}
.intent-head h2 em{color:var(--ink);font-style:italic;background:var(--gold);padding:0 8px;border-radius:6px}
.intent-head p{font-size:17px;color:var(--ink-2);line-height:1.55}
.intent-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.intc{padding:32px 28px;border-radius:18px;display:flex;flex-direction:column;justify-content:space-between;gap:40px;min-height:280px;position:relative;overflow:hidden;transition:transform .22s,box-shadow .22s}
.intc:hover{transform:translateY(-4px);box-shadow:0 24px 44px -16px rgba(31,36,44,.24)}
.intc.a{background:var(--mint)}
.intc.b{background:var(--blue)}
.intc.c{background:var(--cream)}
.intc.d{background:var(--pink)}
.intc .featured{position:absolute;top:18px;right:18px;font-family:var(--mono);font-size:9px;letter-spacing:0.12em;text-transform:uppercase;font-weight:800;background:var(--ink);color:var(--paper);padding:4px 9px;border-radius:5px}
.intc-kr{font-family:var(--kr);font-weight:900;font-size:30px;color:var(--ink);opacity:.85;line-height:1;margin-bottom:14px}
.intc h3{font-family:var(--serif);font-size:26px;font-weight:500;letter-spacing:-0.02em;line-height:1.1;margin-bottom:10px}
.intc h3 em{font-style:italic}
.intc-tag{font-size:14px;color:var(--ink-2);line-height:1.45}
.intc-cta{font-family:var(--mono);font-size:11px;letter-spacing:0.12em;text-transform:uppercase;font-weight:800;color:var(--ink);display:inline-flex;align-items:center;gap:7px}
.intc-cta::after{content:'→';transition:transform .2s}
.intc:hover .intc-cta::after{transform:translateX(4px)}
.intent-foot{margin-top:30px;font-size:15px;color:var(--ink-2);text-align:center}
.intent-foot a{font-weight:600;color:var(--ink);border-bottom:2px solid var(--gold);padding-bottom:1px}
@media(max-width:900px){.intent-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.intent-grid{grid-template-columns:1fr}}

/* WHY */
.why{padding:96px 0;border-bottom:1px solid var(--line)}
.why-head{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:48px}
.why-head h2{font-size:clamp(32px,4.5vw,56px);font-weight:300;letter-spacing:-0.04em;line-height:1}
.why-head h2 em{color:var(--ink);font-style:italic;background:var(--gold);padding:0 8px;border-radius:6px}
.why-head p{font-size:16px;color:var(--ink-2);line-height:1.6;max-width:460px}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.why-card{padding:30px 26px;background:var(--paper-2);border:1px solid var(--line);border-radius:18px;position:relative;overflow:hidden}
.why-card .kr-bg{position:absolute;font-family:var(--kr);font-weight:900;font-size:72px;color:rgba(31,36,44,.04);bottom:-14px;right:-6px;line-height:.8;pointer-events:none}
.why-card .why-num{font-family:var(--mono);font-size:10px;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-bottom:22px}
.why-card .ic{font-family:var(--serif);font-size:44px;font-weight:300;font-style:italic;color:var(--ink);line-height:.85;letter-spacing:-0.04em;margin-bottom:14px;opacity:.4}
.why-card h4{font-family:var(--serif);font-size:21px;font-weight:600;letter-spacing:-0.01em;margin-bottom:8px}
.why-card h4 em{color:var(--ink);font-style:italic;font-weight:400}
.why-card p{font-size:13.5px;color:var(--ink-2);line-height:1.5;position:relative;z-index:1}
@media(max-width:900px){.why-head{grid-template-columns:1fr;gap:18px}.why-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.why-grid{grid-template-columns:1fr}}

/* LVSG base */
.lvsg{padding:100px 0;border-bottom:1px solid var(--line)}
.lvsg h2{font-size:clamp(30px,4vw,48px);font-weight:300;letter-spacing:-0.03em;line-height:1.05}
.lvsg h2 em{font-style:italic;background:var(--gold);padding:0 8px;border-radius:6px;color:var(--ink)}
.lvsg .lead{font-size:17px;color:var(--ink-2);line-height:1.6;margin:14px 0 16px}
.lvsg .lead strong{color:var(--ink);font-weight:600}
.lvsg .pull{font-family:var(--serif);font-size:21px;font-style:italic;font-weight:300;color:var(--ink);line-height:1.4;margin:18px 0 6px;border-left:3px solid var(--gold);padding-left:16px}
.lvsg-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}

/* PATHS */
.paths-sec{padding:96px 0;border-bottom:1px solid var(--line);background:var(--paper-2)}
.paths-head{margin-bottom:46px;max-width:820px}
.paths-head h2{font-size:clamp(34px,5vw,60px);font-weight:300;letter-spacing:-0.04em;line-height:.98;margin-bottom:14px}
.paths-head h2 em{color:var(--ink);font-style:italic;background:var(--gold);padding:0 8px;border-radius:6px}
.paths-head p{font-size:17px;color:var(--ink-2);line-height:1.55}
.paths-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.path-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.path-card:hover{transform:translateY(-5px);box-shadow:0 26px 50px -16px rgba(31,36,44,.22)}
.path-img{aspect-ratio:16/9;position:relative;overflow:hidden;background:var(--cream)}
.path-img img{width:100%;height:100%;object-fit:cover}
.path-kr-stamp{position:absolute;top:14px;left:14px;font-family:var(--kr);font-weight:900;font-size:26px;color:var(--paper);z-index:2;text-shadow:0 2px 8px rgba(31,36,44,.5)}
.path-pastel-tag{position:absolute;bottom:14px;left:14px;font-family:var(--mono);font-size:10px;letter-spacing:0.12em;text-transform:uppercase;font-weight:800;color:var(--ink);padding:5px 11px;border-radius:6px;z-index:2}
.path-pastel-tag.mint{background:var(--mint)}
.path-pastel-tag.blue{background:var(--blue)}
.path-pastel-tag.cream{background:var(--cream)}
.path-pastel-tag.pink{background:var(--pink)}
.path-pastel-tag.peach{background:var(--peach)}
.path-pastel-tag.gold{background:var(--gold)}
.path-body{padding:26px;display:flex;flex-direction:column;justify-content:space-between;gap:24px;flex:1}
.path-num{font-family:var(--mono);font-size:10px;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-bottom:10px}
.path-body h3{font-family:var(--serif);font-size:24px;font-weight:600;letter-spacing:-0.01em;margin-bottom:8px}
.path-tagline{font-size:14px;color:var(--ink-2);line-height:1.45;margin-bottom:16px}
.path-meta{display:flex;flex-direction:column;gap:4px;font-family:var(--mono);font-size:11px;letter-spacing:0.04em;color:var(--muted);font-weight:600}
.path-meta strong{color:var(--ink);font-weight:700}
.path-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:18px;border-top:1px solid var(--line)}
.path-price{display:flex;flex-direction:column;line-height:1.1}
.path-price .was{font-family:var(--mono);font-size:12px;color:var(--muted);text-decoration:line-through;font-weight:600}
.path-price .now{font-family:var(--serif);font-size:24px;font-weight:500;font-style:italic;color:var(--ink);letter-spacing:-0.02em}
.path-cta{font-family:var(--mono);font-size:11px;letter-spacing:0.1em;text-transform:uppercase;font-weight:800;color:var(--ink);white-space:nowrap;border-bottom:2px solid var(--gold);padding-bottom:2px}
@media(max-width:900px){.paths-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.paths-grid{grid-template-columns:1fr}}

/* PATH SECTIONS (core journey + advanced branches) */
.pcompare{padding:80px 0;border-bottom:1px solid var(--line)}
.pcompare.alt{background:var(--paper-2)}
.pcompare-head{margin-bottom:50px;max-width:820px}
.pcompare-head h2{font-size:clamp(36px,5vw,64px);font-weight:300;letter-spacing:-0.04em;line-height:.98}
.pcompare-head h2 em{color:var(--ink);font-style:italic;background:var(--gold);padding:0 8px;border-radius:6px}
.pcompare-head p{font-size:17px;color:var(--ink-2);line-height:1.55;margin-top:14px;max-width:680px}
.pcompare-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.pcc{background:var(--paper);border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.pcc:hover{transform:translateY(-4px);box-shadow:0 20px 40px -10px rgba(31,36,44,.18)}
.pcc-img{aspect-ratio:16/10;overflow:hidden;background:var(--cream);position:relative}
.pcc-img img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.pcc:hover .pcc-img img{transform:scale(1.05)}
.pcc-img::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(31,36,44,.4) 100%)}
.pcc-stamp{position:absolute;top:12px;left:12px;background:rgba(254,248,231,.95);border:1px solid var(--ink);font-family:var(--kr);font-weight:900;font-size:13px;color:var(--ink);padding:4px 8px;border-radius:5px;letter-spacing:-0.02em;z-index:2}
.pcc-step{position:absolute;top:12px;right:12px;font-family:var(--mono);font-size:9px;letter-spacing:0.12em;text-transform:uppercase;font-weight:800;background:var(--ink);color:var(--paper);padding:4px 8px;border-radius:4px;z-index:2}
.pcc-tag{position:absolute;bottom:12px;left:12px;font-family:var(--mono);font-size:9px;letter-spacing:0.14em;text-transform:uppercase;font-weight:800;padding:4px 8px;border-radius:4px;z-index:2;color:var(--ink)}
.pcc-tag.mint{background:var(--mint)}
.pcc-tag.blue{background:var(--blue)}
.pcc-tag.cream{background:var(--cream)}
.pcc-tag.pink{background:var(--pink)}
.pcc-tag.peach{background:var(--peach)}
.pcc-body{padding:20px;display:flex;flex-direction:column;flex:1}
.pcc h3{font-family:var(--serif);font-size:20px;font-weight:600;letter-spacing:-0.02em;margin-bottom:6px}
.pcc-tag-line{font-family:var(--serif);font-size:13px;font-style:italic;color:var(--ink-2);line-height:1.4;margin-bottom:14px;flex:1}
.pcc-meta{font-family:var(--mono);font-size:9px;letter-spacing:0.1em;color:var(--muted);text-transform:uppercase;font-weight:700;display:flex;flex-direction:column;gap:4px;margin-bottom:14px}
.pcc-meta strong{color:var(--ink);font-weight:800}
.pcc-hrdc{display:inline-block;font-family:var(--mono);font-size:8.5px;letter-spacing:0.1em;font-weight:800;background:var(--ink);color:var(--paper);padding:2px 6px;border-radius:3px;text-transform:uppercase}
.pcc-foot{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px dashed var(--line)}
.pcc-price{font-family:var(--serif);font-size:18px;font-weight:600;font-style:italic;letter-spacing:-0.02em;color:var(--ink)}
.pcc-cta{font-family:var(--mono);font-size:10px;letter-spacing:0.12em;color:var(--ink);font-weight:800;text-transform:uppercase}
.journey-note{font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--ink-2);font-weight:700;margin:18px 0 0;display:flex;align-items:center;gap:10px}
.journey-note::before{content:'↳';color:var(--gold-deep);font-size:14px}
@media(max-width:1100px){.pcompare-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:780px){.pcompare-grid{grid-template-columns:1fr}}

/* PROOF marquee */
.proof{overflow:hidden;background:var(--ink);color:var(--paper);border-bottom:1px solid var(--ink-2)}
.proof-track{display:flex;width:max-content;animation:mq 45s linear infinite}
.proof-item{display:flex;align-items:center;gap:12px;padding:22px 0;font-family:var(--mono);font-size:12px;letter-spacing:0.1em;text-transform:uppercase;color:rgba(254,248,231,.7);font-weight:600;white-space:nowrap}
.proof-item .num{font-family:var(--serif);font-size:22px;font-style:italic;font-weight:300;color:var(--gold);letter-spacing:-0.02em}
.proof-item .div{width:6px;height:6px;border-radius:50%;background:rgba(254,248,231,.3);margin:0 34px}

/* CPRF stats */
.cprf{padding:96px 0;border-bottom:1px solid var(--line)}
.cprf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.cprfc{padding:40px 32px;background:var(--paper-2);border:1px solid var(--line);border-radius:18px;text-align:center}
.cprfc .v{font-family:var(--serif);font-size:clamp(48px,6vw,72px);font-weight:300;letter-spacing:-0.04em;line-height:1;margin-bottom:14px}
.cprfc .v em{font-style:italic;color:var(--ink)}
.cprfc .l{font-size:15px;color:var(--ink-2);line-height:1.45}
.cprfc .l em{font-style:normal;font-weight:600;color:var(--ink)}
@media(max-width:780px){.cprf-grid{grid-template-columns:1fr}}

/* HRDC slim */
.hrdc-slim{padding:60px 0;border-bottom:1px solid var(--line);background:var(--cream);color:var(--ink)}
.hrdc-slim-grid{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}
.hrdc-slim h3{font-family:var(--serif);font-size:clamp(24px,3vw,36px);font-weight:300;letter-spacing:-0.03em;line-height:1.2;color:var(--ink)}
.hrdc-slim h3 em{color:var(--paper);font-style:italic;background:var(--ink);padding:0 8px;border-radius:6px}
.hrdc-slim p{font-size:15px;color:var(--ink-2);margin-top:8px;line-height:1.5}
@media(max-width:780px){.hrdc-slim-grid{grid-template-columns:1fr;text-align:center}}

/* FINAL */
.final{padding:120px 0;background:var(--ink);color:var(--paper);text-align:center;position:relative;overflow:hidden}
.final::before{content:'시작';position:absolute;font-family:var(--kr);font-weight:900;font-size:clamp(180px,24vw,340px);color:rgba(252,185,0,.08);top:50%;left:50%;transform:translate(-50%,-50%);line-height:.8;letter-spacing:-0.04em;pointer-events:none}
.final-c{position:relative;z-index:1}
.final-tag{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11px;letter-spacing:0.12em;text-transform:uppercase;font-weight:700;color:rgba(254,248,231,.7);border:1px solid rgba(254,248,231,.2);padding:8px 16px;border-radius:100px;margin-bottom:26px}
.final-tag .kr{font-family:var(--kr);font-weight:900;color:var(--gold)}
.final-c h2{font-size:clamp(48px,8vw,100px);font-weight:300;line-height:.96;letter-spacing:-0.05em;margin-bottom:18px;color:#fff}
.final-c h2 em{color:var(--ink);font-style:italic;background:var(--gold);padding:0 12px;border-radius:8px}
.final-c p{font-size:18px;color:rgba(254,248,231,.78);max-width:540px;margin:0 auto 32px;line-height:1.55}
.final-c p strong{font-weight:600}
.final-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:26px}
.final .btn-ghost{border-color:rgba(254,248,231,.3);color:var(--paper)}
.final .btn-ghost:hover{background:var(--paper);color:var(--ink)}
.final-trust{display:inline-flex;align-items:center;gap:14px;font-family:var(--mono);font-size:11px;letter-spacing:0.08em;color:rgba(254,248,231,.55);text-transform:uppercase;font-weight:600;flex-wrap:wrap;justify-content:center}
.final-trust .check{color:var(--gold);font-weight:800}
.final-trust span:not(:last-child)::after{content:'·';margin-left:14px;color:rgba(254,248,231,.3)}

/* FLOATING CTA */
.float-cta{position:fixed;bottom:24px;right:24px;background:var(--gold);color:var(--ink);padding:16px 22px;border-radius:100px;font-family:var(--mono);font-size:11px;letter-spacing:0.14em;text-transform:uppercase;font-weight:800;box-shadow:0 12px 30px -6px rgba(31,36,44,.3);z-index:100;display:flex;align-items:center;gap:10px;transition:transform .25s,box-shadow .25s;border:2px solid var(--ink)}
.float-cta:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 18px 40px -6px rgba(31,36,44,.4)}
.float-cta .kr{font-family:var(--kr);font-weight:900;font-size:14px;letter-spacing:0}
.float-cta .pulse{width:8px;height:8px;background:var(--ink);border-radius:50%;animation:pulse 1.5s infinite}
@media(max-width:780px){.float-cta{bottom:16px;right:16px;padding:13px 18px;font-size:10px}}

/* FOOTER */
.foot{background:var(--ink);color:var(--paper);padding:80px 0 30px;position:relative;overflow:hidden}
.foot::before{content:'안녕';position:absolute;font-family:var(--kr);font-weight:900;font-size:clamp(180px,28vw,420px);color:rgba(252,185,0,.05);bottom:-80px;right:-40px;line-height:.8;pointer-events:none}
.foot .wrap{position:relative;z-index:1}
.fgrid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:40px;padding-bottom:48px;border-bottom:1px solid rgba(254,248,231,.15);margin-bottom:24px}
.fbrand img{height:36px;margin-bottom:14px;filter:brightness(0) invert(1)}
.fdesc{font-size:13px;color:rgba(254,248,231,.6);max-width:280px;line-height:1.55}
.fcol h5{font-family:var(--mono);font-size:10px;letter-spacing:0.15em;text-transform:uppercase;color:var(--gold);margin-bottom:16px}
.fcol ul{list-style:none}
.fcol li{margin-bottom:9px}
.fcol a{font-size:13px;color:rgba(254,248,231,.78);transition:color .2s}
.fcol a:hover{color:var(--gold)}
.fbase{display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;font-family:var(--mono);font-size:9px;letter-spacing:0.1em;color:rgba(254,248,231,.5);text-transform:uppercase}
@media(max-width:900px){.fgrid{grid-template-columns:1fr 1fr;gap:28px}}

/* === chrome ported from core.css — homepage dequeues core.css === */
/* ISSUE BAR */
/* ─────────────────────────── ISSUE BAR ─────────────────────────── */
.issue{background:var(--ink);color:var(--paper);padding:9px 0;font-family:var(--mono);font-size:10px;letter-spacing:0.12em;text-transform:uppercase}
.issue .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.issue a{color:var(--paper);border-bottom:1px solid var(--paper)}
.issue-tag{background:var(--paper);padding:2px 7px;letter-spacing:0.1em;color:var(--ink);font-weight:700}
/* Mobile: hide the decorative descriptive text after the tag — keep only
   the tag chip + the action link in a tight single row. The descriptive
   copy is a sibling text node of .issue-tag inside the first <div>, so
   we use font-size:0 on the parent and restore it on .issue-tag. */
@media(max-width:768px){
  .issue{padding:7px 0}
  .issue .wrap{gap:8px;flex-wrap:nowrap}
  .issue .wrap>div:first-child{font-size:0;line-height:1;flex-shrink:0}
  .issue .wrap>div:first-child .issue-tag{font-size:10px;line-height:1.4}
  .issue .wrap>div:last-child{font-size:10px;text-align:right}
  .issue .wrap>div:last-child a{white-space:nowrap}
}

/* INPERSON (preserved section) */
.inperson{padding:0;border-bottom:1px solid var(--line);background:var(--ink);color:var(--paper);position:relative;overflow:hidden}
.inperson-grid{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;min-height:520px}
.inperson-img{position:relative;overflow:hidden}
.inperson-img img{width:100%;height:100%;object-fit:cover;display:block}
.inperson-img::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(31,36,44,.85) 100%)}
.inperson-content{padding:80px 60px;display:flex;flex-direction:column;justify-content:center;position:relative}
.inperson-content::after{content:'대면';position:absolute;font-family:var(--kr);font-weight:900;font-size:clamp(180px,22vw,300px);color:rgba(252,185,0,.08);bottom:-60px;right:-40px;line-height:.8;letter-spacing:-0.04em;pointer-events:none}
.inperson-content > *{position:relative;z-index:1}
.inperson .snum{color:var(--gold);margin-bottom:18px}
.inperson .snum::before{background:var(--gold)}
.inperson .snum .kr{color:rgba(254,248,231,.7)}
.inperson h2{font-size:clamp(40px,5.5vw,72px);font-weight:300;line-height:.96;letter-spacing:-0.04em;margin-bottom:18px;color:var(--paper)}
.inperson h2 em{color:var(--ink);font-style:italic;background:var(--gold);padding:0 12px;border-radius:8px}
.inperson .lead{font-size:18px;color:rgba(254,248,231,.78);max-width:480px;line-height:1.55;margin-bottom:24px}
.inperson-feats{margin-bottom:32px;list-style:none;padding:0}
.inperson-feats li{padding:10px 0;border-bottom:1px solid rgba(254,248,231,.12);font-size:14px;color:rgba(254,248,231,.85);display:grid;grid-template-columns:24px 1fr;gap:10px;line-height:1.5}
.inperson-feats li::before{content:'✓';color:var(--gold);font-weight:800;font-size:13px;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;background:rgba(252,185,0,.15);border-radius:50%}
.inperson-acts{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.inperson .btn-ghost{border-color:rgba(254,248,231,.4);color:var(--paper);background:transparent}
.inperson .btn-ghost:hover{background:var(--paper);color:var(--ink)}
.inperson-meta{margin-top:22px;font-family:var(--mono);font-size:10px;letter-spacing:0.12em;text-transform:uppercase;color:rgba(254,248,231,.5);font-weight:600}
.inperson-meta .kr{font-family:var(--kr);font-weight:900;color:var(--gold);font-size:13px;letter-spacing:0;margin-right:4px}
@media(max-width:900px){.inperson-grid{grid-template-columns:1fr}.inperson-img{aspect-ratio:16/9}.inperson-content{padding:60px 32px}}

/* BB-HEADER FULL-BLEED GLUE */
/* =============================================================
   BB-header variant — neutralize BuddyBoss's content wrappers
   so v3.10 full-bleed sections (sphero, sec, cta-final) render
   edge-to-edge under the BB masthead. Activated only on pages
   that opt in via body.v3-10-bb-header.
   ============================================================= */
/* Reserve 76px at the top of the OUTERMOST content wrapper to clear
   BB's fixed sticky header (mirrors the working /membership-plans/
   template's pattern). #content and .site-content are aliases for the
   same outer element. */
body.v3-10-bb-header #content,
body.v3-10-bb-header .site-content {
    padding: 76px 0 0;
    margin: 0;
    max-width: none;
    width: 100%;
}

/* The selector above is broad — it matches ANY #content on the page,
   including unrelated nested elements like the AI Quiz Maker's
   `<div id="content" page="quizzes">` inside the cabinet drawer.
   Reset padding/margin for known nested cases so they don't inherit
   the 76px top push. */
body.v3-10-bb-header .ld-drawer #content,
body.v3-10-bb-header #ubitto-teacher-cabinet #content,
body.v3-10-bb-header .ubitto-attendance-modal #content,
body.v3-10-bb-header .ubitto-learners-modal #content {
    padding: 0;
    margin: 0;
    max-width: none;
    width: auto;
}

/* Nested wrappers — zero padding/margin only; do NOT add another 76px
   top push (would stack on top of the outer rule above and double-offset
   the content). */
body.v3-10-bb-header .site-content > .container,
body.v3-10-bb-header .site-content-grid,
body.v3-10-bb-header .bb-grid.site-content-grid,
body.v3-10-bb-header #primary,
body.v3-10-bb-header .site-main,
body.v3-10-bb-header article.page,
body.v3-10-bb-header .entry-content {
    padding: 0;
    margin: 0;
    max-width: none;
    width: 100%;
}

/* BB's .bb-grid uses display:flex on direct children with negative
   horizontal margins (-10px each side) and 10px child padding to recreate
   gutter spacing inside .site-content's 10px padding. For our full-bleed
   v3.10 sections this needs to be entirely neutralized. */
body.v3-10-bb-header .bb-grid.site-content-grid {
    display: block;
    margin-left: 0;
    margin-right: 0;
}
body.v3-10-bb-header .bb-grid.site-content-grid > * {
    flex: none;
    padding-left: 0;
    padding-right: 0;
}

/* BB also adds 10px horizontal padding to .site-content directly. Strip it
   so v3.10 section backgrounds extend edge-to-edge of the viewport. */
body.v3-10-bb-header .site,
body.v3-10-bb-header #page,
body.v3-10-bb-header .site-content,
body.v3-10-bb-header #content,
body.v3-10-bb-header .site-content > .container {
    padding-left: 0;
    padding-right: 0;
    max-width: none;
    overflow-x: visible;
}

/* Hide BB sidebar / widget area on these pages — v3.10 layouts are
   full-bleed, no sidebar. */
body.v3-10-bb-header .sidebar,
body.v3-10-bb-header .widget-area,
body.v3-10-bb-header #secondary,
body.v3-10-bb-header .bb-share-container {
    display: none;
}
/* Hide WordPress/BB auto-rendered page title above the v3.10 hero. */
body.v3-10-bb-header .bb-content-heading-wrap,
body.v3-10-bb-header .entry-header,
body.v3-10-bb-header .post-thumbnail,
body.v3-10-bb-header > .entry-title{display:none}

.lvsg-rich .lvsg-grid { display: block !important; max-width: 1100px; margin: 0 auto; }
    .lvsg-rich .lvsg-grid > div:first-child { max-width: 760px; margin: 0 auto 56px; text-align: center; }
    .lvsg-rich .lvsg-grid > div:first-child .pull { margin-left: auto; margin-right: auto; max-width: 600px; }
    .lvsg-rich .lvsg-wheel-col { display: grid; grid-template-columns: minmax(280px, 360px) 1fr; gap: 56px; align-items: center; max-width: 980px; margin: 0 auto; }
    .lvsg-rich .lvsg-wheel-wrap { position: relative; width: 100%; max-width: 360px; margin: 0; }
    .lvsg-rich .lvsg-wheel-wrap svg { width: 100%; height: auto; display: block; }
    .lvsg-rich .lvsg-seg { cursor: pointer; transition: opacity .25s ease, filter .25s ease; transform-origin: 200px 200px; }
    .lvsg-rich .lvsg-seg:hover { filter: brightness(1.1); }
    .lvsg-rich .lvsg-seg.dimmed { opacity: .35; }
    .lvsg-rich .lvsg-seg.active { opacity: 1; filter: brightness(1.08) drop-shadow(0 0 6px rgba(31,36,44,.18)); }
    .lvsg-rich .lvsg-label { font-size: 10px; font-weight: 800; fill: #fff; pointer-events: none; text-anchor: middle; text-transform: uppercase; letter-spacing: .5px; font-family: var(--mono); }
    .lvsg-rich .lvsg-wheel-center { position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); text-align: center; pointer-events: none; width: 150px; }
    .lvsg-rich .lvsg-wheel-kr { font-family: var(--mono); font-size: 22px; font-weight: 800; color: var(--ink); letter-spacing: .04em; line-height: 1.15; }
    .lvsg-rich .lvsg-wheel-en { font-size: 11px; font-weight: 700; color: var(--ink-2); margin-top: 4px; text-transform: uppercase; letter-spacing: .12em; font-family: var(--mono); }
    .lvsg-rich .lvsg-wheel-desc { font-size: 10.5px; color: var(--muted); margin-top: 8px; line-height: 1.5; letter-spacing: .04em; }
    .lvsg-rich .lvsg-acc { display: flex; flex-direction: column; gap: 0; }
    .lvsg-rich .lvsg-acc-item { border-bottom: 1px solid var(--line); }
    .lvsg-rich .lvsg-acc-item:first-child { border-top: 1px solid var(--line); }
    .lvsg-rich .lvsg-acc-header { display: flex; align-items: center; gap: 12px; padding: 14px 4px; cursor: pointer; user-select: none; transition: background .15s ease; }
    .lvsg-rich .lvsg-acc-header:hover { background: var(--paper-2); }
    .lvsg-rich .lvsg-acc-dot { width: 12px; height: 12px; border-radius: 50%; flex-shrink: 0; }
    .lvsg-rich .lvsg-acc-name { font-size: 15px; font-weight: 700; color: var(--ink); flex: 1; font-family: var(--serif); letter-spacing: -.01em; }
    .lvsg-rich .lvsg-acc-name-kr { font-family: var(--kr); font-size: 13px; font-weight: 500; color: var(--muted); margin-left: 8px; }
    .lvsg-rich .lvsg-acc-chevron { width: 18px; height: 18px; transition: transform .25s ease; color: var(--muted); flex-shrink: 0; }
    .lvsg-rich .lvsg-acc-item.active .lvsg-acc-chevron { transform: rotate(180deg); }
    .lvsg-rich .lvsg-acc-body { max-height: 0; overflow: hidden; transition: max-height .35s ease, padding .35s ease; padding: 0 4px; }
    .lvsg-rich .lvsg-acc-item.active .lvsg-acc-body { max-height: 240px; padding: 0 4px 14px; }
    .lvsg-rich .lvsg-acc-pills { display: flex; flex-wrap: wrap; gap: 8px; }
    .lvsg-rich .lvsg-pill { display: inline-block; padding: 4px 12px; border-radius: 100px; font-family: var(--mono); font-size: 10.5px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: #fff; line-height: 1.4; }
    @media (max-width: 900px) {
      .lvsg-rich .lvsg-wheel-col { grid-template-columns: 1fr; gap: 24px; }
      .lvsg-rich .lvsg-wheel-wrap { max-width: 320px; margin: 0 auto; }
    }

.lvsg-progress { background: var(--ink); color: var(--paper); padding: 90px 0; border-bottom: 1px solid var(--ink-2); }
    .lvsg-progress .wrap { max-width: 1200px; margin: 0 auto; padding-left: 24px; padding-right: 24px; }
    .lvsg-progress-grid { display: grid; grid-template-columns: 1fr 1.1fr; gap: 64px; align-items: center; }
    .lvsg-progress .snum { color: var(--gold); }
    .lvsg-progress .snum::before { background: var(--gold); }
    .lvsg-progress .snum .kr { color: rgba(254,235,185,.5); }
    .lvsg-progress h2 { font-family: var(--serif); font-size: clamp(32px, 4vw, 44px); font-weight: 300; letter-spacing: -.02em; line-height: 1.1; color: var(--paper); margin: 14px 0 18px; }
    .lvsg-progress h2 em { font-style: italic; background: var(--gold); padding: 0 8px; border-radius: 6px; color: var(--ink); }
    .lvsg-progress .lead { font-size: 16px; line-height: 1.65; color: rgba(254,248,231,.78); margin: 0 0 24px; max-width: 540px; }
    .lvsg-progress .lead strong { color: var(--paper); font-weight: 600; }
    .lvsg-pp { list-style: none; padding: 0; margin: 24px 0 0; }
    .lvsg-pp li { padding: 14px 0; border-bottom: 1px solid rgba(254,248,231,.1); display: flex; gap: 14px; align-items: flex-start; font-size: 15px; color: rgba(254,248,231,.9); }
    .lvsg-pp li:last-child { border-bottom: none; }
    .lvsg-pp li .check { width: 22px; height: 22px; border-radius: 50%; background: rgba(252,185,0,.2); color: var(--gold); display: flex; align-items: center; justify-content: center; font-size: 12px; flex-shrink: 0; margin-top: 1px; font-weight: 800; }
    .lvsg-progress .micro { font-family: var(--mono); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--gold); margin-top: 28px; padding: 10px 14px; background: rgba(252,185,0,.08); border-left: 3px solid var(--gold); border-radius: 4px; font-weight: 700; }
    .lvsg-si-grid { display: flex; flex-direction: column; gap: 16px; }
    .lvsg-si-legend { display: flex; gap: 24px; justify-content: flex-end; margin-bottom: 8px; font-family: var(--mono); font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: rgba(254,248,231,.6); font-weight: 700; }
    .lvsg-si-legend-item { display: flex; align-items: center; gap: 6px; }
    .lvsg-si-swatch { display: inline-block; width: 13px; height: 13px; border-radius: 3px; }
    .lvsg-si-before-swatch { background: rgba(254,248,231,.25); }
    .lvsg-si-after-swatch { background: var(--gold); }
    .lvsg-si-row { display: grid; grid-template-columns: 130px 1fr 60px; align-items: center; gap: 16px; }
    .lvsg-si-label { display: flex; align-items: center; gap: 8px; font-family: var(--serif); font-weight: 600; font-size: 14px; color: var(--paper); white-space: nowrap; }
    .lvsg-si-dot { display: inline-block; width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0; }
    .lvsg-si-bars { display: flex; flex-direction: column; gap: 4px; }
    .lvsg-si-bar-wrap { position: relative; width: 100%; background: rgba(254,248,231,.07); border-radius: 6px; height: 22px; overflow: hidden; }
    .lvsg-si-bar { height: 100%; border-radius: 6px; width: 0; transition: width 1.4s cubic-bezier(.25,.46,.45,.94); }
    .lvsg-si-pct { position: absolute; right: 8px; top: 50%; transform: translateY(-50%); font-family: var(--mono); font-size: 10.5px; font-weight: 700; color: rgba(254,248,231,.55); pointer-events: none; letter-spacing: .04em; }
    .lvsg-si-pct-after { color: var(--paper); }
    .lvsg-si-gain { font-family: var(--mono); font-weight: 800; font-size: 14px; color: #6ee7a8; text-align: right; white-space: nowrap; letter-spacing: .04em; }
    @media (max-width: 900px) {
      .lvsg-progress { padding: 60px 0; }
      .lvsg-progress-grid { grid-template-columns: 1fr; gap: 40px; }
      .lvsg-si-row { grid-template-columns: 1fr 50px; grid-template-rows: auto auto; gap: 6px 12px; }
      .lvsg-si-label { grid-column: 1 / -1; font-size: 13px; }
      .lvsg-si-bars { grid-column: 1; }
      .lvsg-si-gain { font-size: 13px; align-self: center; }
      .lvsg-si-bar-wrap { height: 18px; }
    }
