/* ===== 상가 버전 추가 스타일 ===== */
.lprice.ok{color:var(--ink);font-size:20px}
.fit{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:12px 0 14px}
.fit>span{font-size:12.5px;color:var(--ink3);font-weight:600;margin-right:2px}
.fit em{font-style:normal;font-size:12.5px;font-weight:700;padding:3px 9px;border-radius:999px;background:var(--amber-soft);color:var(--amber)}
.legal{grid-template-columns:auto minmax(0,1fr) auto minmax(0,1fr)}
.legal dd{color:var(--ink2)}
.more-card{display:flex;flex-direction:column;justify-content:space-between;gap:24px;padding:28px;background:var(--mint);border-style:dashed}
.more-card h3{font-size:22px;font-weight:800;margin:4px 0 10px}

.hero-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:48px}
.hero-strip figure{margin:0;position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:4/3;background:var(--bg2)}
.hero-strip img{width:100%;height:100%;object-fit:cover;display:block}
.hero-strip figcaption{position:absolute;left:10px;bottom:10px;background:rgba(255,255,255,.94);border-radius:6px;padding:3px 10px;font-size:12.5px;font-weight:700;color:var(--ink2)}

.logo-img{height:30px;width:auto;display:block}

/* analysis */
.an-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.an-top select{height:44px;border:1px solid var(--line);border-radius:10px;padding:0 14px;font:600 15px var(--font);background:#fff;color:var(--ink);min-width:0;max-width:100%}
.an-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.an-h{font-size:19px;font-weight:800;margin:0 0 18px}
.vbars{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;align-items:end;height:190px}
.vcol{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:6px;min-width:0}
.vcol i{display:block;width:100%;max-width:44px;background:var(--pine-soft);border-radius:8px 8px 3px 3px;transition:height .4s var(--ease)}
.vcol.top i{background:var(--pine)}
.vcol em{font-style:normal;font-size:12.5px;font-weight:700;color:var(--ink3)}
.vcol.top em{color:var(--pine)}
.vcol span{font-size:12.5px;color:var(--ink3)}
.hbars{display:grid;gap:12px}
.hrow{display:grid;grid-template-columns:44px minmax(0,1fr) 40px;gap:12px;align-items:center;font-size:14px}
.hrow .bar{height:10px}
.hrow .bar i{transition:width .4s var(--ease)}
.hrow em{font-style:normal;font-size:12.5px;font-weight:700;color:var(--ink3);text-align:right}
.mix{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;align-items:center}
.donut{width:150px;height:150px;border-radius:50%;display:grid;place-items:center;position:relative}
.donut::after{content:"";position:absolute;inset:26px;border-radius:50%;background:#fff}
.donut span{position:relative;z-index:1;text-align:center;font-size:12.5px;color:var(--ink3);font-weight:600;line-height:1.3}
.donut span b{display:block;font-size:22px;color:var(--ink);font-weight:800}
.legend{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.legend li{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:10px;align-items:center;font-size:14.5px}
.legend i{width:12px;height:12px;border-radius:3px}
.legend b{font-weight:700}
.an-sum .sum{display:grid;gap:18px}
.an-sum .sum span{display:block;font-size:12.5px;color:var(--ink3);font-weight:600;margin-bottom:3px}
.an-sum .sum b{font-size:19px;font-weight:800}
.an-sum .sum p{font-size:15.5px;color:var(--ink2)}

/* lead mode */
#v-mode{display:grid;grid-template-columns:1fr 1fr;width:100%}
#v-mode button{height:44px;border-radius:10px}
[data-for][hidden]{display:none!important}

@media (max-width:940px){
  .an-grid{grid-template-columns:minmax(0,1fr)}
  .hero-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
}
@media (max-width:560px){
  .hero-strip{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .hero-strip figure:nth-child(3){display:none}
  .mix{grid-template-columns:minmax(0,1fr);justify-items:center}
  .legend{width:100%}
  .vbars{height:160px;gap:6px}
  .legal{grid-template-columns:auto minmax(0,1fr)}
  #v-mode button{font-size:13px;padding:0 6px}
}

.demo-tag{position:absolute;right:10px;top:10px;background:var(--amber);color:#fff;font-size:11px;font-weight:800;border-radius:4px;padding:2px 7px}
.lthumb{position:relative}

.logo-full{height:40px;width:auto;display:block}
footer .logo-full{height:46px}
.side .logo-full{height:34px}
@media (max-width:560px){.logo-full{height:32px}}

/* 블로그 가이드 카드 */
.guides{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.guide{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;transition:border-color .2s,transform .2s var(--ease);min-width:0}
.guide:hover{border-color:var(--pine);transform:translateY(-2px)}
.guide b{font-size:15.5px;line-height:1.4;color:var(--ink)}
.guide em{font-style:normal;font-size:12.5px;color:var(--pine);font-weight:700;margin-top:auto}
.gtag{align-self:flex-start;font-size:11.5px;font-weight:700;background:var(--pine-soft);color:var(--pine);border-radius:999px;padding:2px 9px}
@media (max-width:940px){.guides{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.guides{grid-template-columns:minmax(0,1fr)}}

/* ===== 실시간 상담 슬라이딩 띠 ===== */
.live{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.live-in{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px;align-items:center;height:72px}
.live-head{display:flex;align-items:center;gap:8px;white-space:nowrap}
.live-head b{font-size:15.5px;font-weight:800}
.live-sub{font-size:12.5px;color:var(--ink3);padding-left:10px;border-left:1px solid var(--line)}
.live-dot{width:9px;height:9px;border-radius:50%;background:#E5484D;box-shadow:0 0 0 0 rgba(229,72,77,.5);animation:livePulse 1.8s infinite}
@keyframes livePulse{70%{box-shadow:0 0 0 8px rgba(229,72,77,0)}100%{box-shadow:0 0 0 0 rgba(229,72,77,0)}}
.live-track{overflow:hidden;position:relative;height:40px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
.live-row{display:flex;gap:10px;width:max-content;height:100%;align-items:center;animation:liveSlide var(--dur,40s) linear infinite}
.live-track:hover .live-row,.live-track:focus-within .live-row{animation-play-state:paused}
@keyframes liveSlide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.live-item{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 14px 0 6px;border-radius:999px;background:var(--bg2);font-size:14px;color:var(--ink2);white-space:nowrap}
.live-item .lb{display:inline-grid;place-items:center;height:24px;padding:0 9px;border-radius:999px;font-size:12px;font-weight:800;color:#fff;background:var(--pine)}
.live-item .lb.find{background:var(--amber)}
.live-item b{color:var(--ink);font-weight:700}
.live-item .t{font-size:12.5px;color:var(--ink4)}
.live-item .ok{font-size:12px;font-weight:700;color:#1E7A45}
@media (max-width:940px){.live-in{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto 40px;height:auto;padding-top:12px;padding-bottom:12px;gap:8px 12px}.live-track{grid-column:1/-1;grid-row:2}.live-cta{grid-column:2;grid-row:1}}
@media (max-width:560px){.live-sub{display:none}.live-item{font-size:13px}}
@media (prefers-reduced-motion:reduce){.live-row{animation:none}.live-track{overflow-x:auto}}

/* ===== 오시는 길 · 사진 4장 + 리뷰 ===== */
.office:has(.op4){grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:36px}
.office-photos.op4{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);grid-template-rows:1fr 1fr;height:500px}
.office-photos.op4 figure.big{grid-row:1/3;grid-column:1}
.office-photos.op4 figure:nth-child(2){grid-column:2/4}
.office-photos.op4 figure img{transition:transform .5s var(--ease)}
.office-photos.op4 figure:hover img{transform:scale(1.03)}
.reviews{margin-top:36px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px 26px}
.rv-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px}
.rv-head b{font-size:16px;font-weight:800}
.rv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.rv-grid blockquote{margin:0;background:var(--bg2);border-radius:14px;padding:18px 18px 16px;font-size:14.5px;line-height:1.75;color:var(--ink2);position:relative}
.rv-grid blockquote::before{content:"★★★★★";display:block;color:var(--amber);font-size:12px;letter-spacing:2px;margin-bottom:6px}
@media (max-width:940px){.office:has(.op4){grid-template-columns:minmax(0,1fr)}.office-photos.op4{height:440px}.rv-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){.office-photos.op4{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:1.4fr 1fr 1fr;height:520px}.office-photos.op4 figure.big{grid-row:1;grid-column:1/3}.office-photos.op4 figure:nth-child(2){grid-column:1/3}.office-photos.op4 figure:nth-child(2){grid-row:2}.office-photos.op4 figure:nth-child(3){grid-column:1;grid-row:3}.office-photos.op4 figure:nth-child(4){grid-column:2;grid-row:3}.reviews{padding:18px}}

/* ===== 막대 그래프 · 쭉 올라가는 모션 ===== */
.vcol i{position:relative;overflow:hidden;transition:height 1.1s cubic-bezier(.22,1.25,.36,1) !important;box-shadow:0 6px 14px -8px rgba(44,90,133,.45)}
.vcol i::after{content:"";position:absolute;left:0;right:0;top:0;height:40%;background:linear-gradient(180deg,rgba(255,255,255,.45),rgba(255,255,255,0));pointer-events:none}
.vcol.top i{background:linear-gradient(180deg,#3C74A8,var(--pine))}
.vcol.top i::before{content:"";position:absolute;left:-60%;top:0;bottom:0;width:50%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-18deg);animation:barShine 2.6s 1.2s ease-in-out infinite}
@keyframes barShine{0%{left:-60%}45%,100%{left:130%}}
.vcol em{font-variant-numeric:tabular-nums;transition:color .3s}
.hrow .bar i{transition:width 1s cubic-bezier(.22,1.2,.36,1) !important}
@media (prefers-reduced-motion:reduce){.vcol i,.hrow .bar i{transition:none !important}.vcol.top i::before{animation:none}}
