/* NEXTGROW WITH AI — service pages (v2.8) */
.svc-hero{position:relative;padding:calc(var(--header-h) + clamp(48px,7vw,104px)) 0 clamp(56px,6vw,88px);background:radial-gradient(120% 90% at 85% 0%,#16243a 0%,var(--ink) 60%);border-bottom:1px solid var(--line)}
.svc-hero .crumb{font-size:12px;letter-spacing:.08em;color:var(--text-mute);margin:0 0 22px}
.svc-hero .crumb a{text-decoration:none;color:var(--text-dim)}
.svc-hero h1{font-size:clamp(2rem,3.6vw,3.4rem);line-height:1.1;font-weight:700;letter-spacing:-.02em;margin:0 0 22px;max-width:18em}
.svc-hero h1 .soft{display:block;color:rgba(244,246,248,.56);font-weight:600}
.svc-hero .lead{margin:0 0 30px;max-width:40em}
.svc-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);margin:0 0 34px;max-width:860px}
.svc-facts div{background:var(--ink-2);padding:18px 20px}
.svc-facts b{display:block;font-size:clamp(1.15rem,1.6vw,1.45rem);color:var(--text);margin-bottom:4px}
.svc-facts span{font-size:13px;color:var(--text-mute)}
.svc-sec{padding-block:clamp(60px,7vw,100px)}
.svc-sec.light{background:var(--paper);color:var(--dark)}
.svc-sec.alt{background:var(--ink-2)}
.svc-sec h2{font-size:clamp(1.6rem,2.6vw,2.4rem);line-height:1.15;letter-spacing:-.02em;margin:0 0 14px}
.svc-sec .lead{margin:0 0 36px;max-width:42em}
.svc-two{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.svc-kind{border:1px solid rgba(11,17,25,.14);border-radius:var(--radius);background:#fff;overflow:hidden;display:flex;flex-direction:column}
.svc-kind img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:50% 25%}
.svc-kind .b{padding:22px 24px 26px}
.svc-kind h3{margin:0 0 8px;font-size:1.3rem}
.svc-kind p{margin:0 0 12px;color:var(--dark-dim)}
.svc-kind ul{margin:0;padding-left:1.1em;color:var(--dark-dim)}
.svc-kind .from{display:inline-block;margin-top:14px;font-weight:700;color:var(--dark)}
.price-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.price{border:1px solid var(--line);border-radius:var(--radius);background:var(--ink-3);padding:26px 24px;display:flex;flex-direction:column}
.price.pick{border-color:var(--accent)}
.price .tier{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-mute);margin:0 0 10px}
.price .amt{font-size:clamp(1.5rem,2.2vw,2rem);font-weight:700;margin:0 0 4px;color:var(--text)}
.price .amt small{font-size:.55em;font-weight:600;color:var(--text-dim)}
.price .sub{font-size:14px;color:var(--text-dim);margin:0 0 18px}
.price dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:8px 14px;font-size:14px}
.price dt{color:var(--text-mute)}
.price dd{margin:0;color:var(--text-dim)}
.plist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.pitem{display:grid;grid-template-columns:1fr auto;gap:6px 18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--ink-3);padding:20px 22px}
.pitem h3{margin:0;font-size:1.05rem}
.pitem .amt{font-weight:700;font-size:1.1rem;white-space:nowrap;text-align:right}
.pitem p{grid-column:1/-1;margin:0;font-size:14px;color:var(--text-dim)}
.pitem .meta{grid-column:1/-1;font-size:12.5px;color:var(--text-mute)}
.svc-note{font-size:13.5px;color:var(--text-mute);margin:22px 0 0;max-width:60em}
.light .svc-note{color:var(--dark-mute)}
.flow3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 0 30px;padding:0;list-style:none;counter-reset:f}
.flow3 li{background:#fff;border:1px solid rgba(11,17,25,.12);border-radius:var(--radius);padding:22px}
.flow3 li b{display:block;font-size:1.05rem;margin-bottom:6px}
.flow3 li span{font-size:12px;letter-spacing:.14em;color:var(--dark-mute)}
.flow3 li p{margin:6px 0 0;color:var(--dark-dim);font-size:14.5px}
.terms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 28px;margin:0;padding:0;list-style:none}
.terms li{padding:12px 0;border-top:1px solid rgba(11,17,25,.12);font-size:15px;color:var(--dark-dim)}
.terms li b{color:var(--dark)}
.gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.gallery figure{margin:0;background:#05080c;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line)}
.gallery img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.gallery figcaption{font-size:12.5px;color:var(--text-dim);padding:10px 12px}
.gallery figcaption b{color:var(--text);font-weight:600}
.faq{margin:0;max-width:900px}
.faq details{border-top:1px solid rgba(11,17,25,.14);padding:16px 0}
.faq summary{cursor:pointer;font-weight:600;font-size:1.02rem;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"+";display:inline-block;width:1.4em;color:var(--dark-mute)}
.faq details[open] summary::before{content:"–"}
.faq p{margin:10px 0 0 1.4em;color:var(--dark-dim)}
.ask{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:start}
.ask .ways{display:grid;gap:12px}
.ask .way{border:1px solid var(--line);border-radius:var(--radius);background:var(--ink-3);padding:18px 20px;text-decoration:none;display:block}
.ask .way b{display:block;font-size:1.05rem;color:var(--text)}
.ask .way span{font-size:13.5px;color:var(--text-dim)}
.nolist{margin:0;padding:0;list-style:none}
.promise{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.promise div{border:1px solid rgba(11,17,25,.12);border-radius:var(--radius);background:#fff;padding:22px}
.promise h3{margin:0 0 8px;font-size:1.05rem}
.promise p{margin:0;color:var(--dark-dim);font-size:14.5px}
.work-thumb.link{display:block;position:relative;text-decoration:none}
@media (max-width:1024px){
  .price-grid{grid-template-columns:1fr}
  .gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ask{grid-template-columns:1fr}
}
@media (max-width:760px){
  .svc-two,.plist,.flow3,.terms,.promise{grid-template-columns:1fr}
  .svc-facts{grid-template-columns:1fr}
}

/* v2.8 2차 — 배경 이미지 히어로, 사업부 바로가기 */
.svc-hero.has-bg{background:var(--ink);overflow:hidden;isolation:isolate}
.svc-hero .bg{position:absolute;inset:0;z-index:-1}
.svc-hero .bg img{width:100%;height:100%;object-fit:cover;object-position:70% 50%}
.svc-hero .bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,11,17,.96) 0%,rgba(7,11,17,.84) 36%,rgba(7,11,17,.35) 70%,rgba(7,11,17,.55) 100%),linear-gradient(0deg,rgba(7,11,17,.85) 0%,rgba(7,11,17,0) 35%)}
.svc-hero.has-bg .svc-facts div{background:rgba(11,17,26,.82);backdrop-filter:blur(6px)}
.gate-sec{padding-block:clamp(56px,6vw,88px);background:var(--ink);border-top:1px solid var(--line)}
.gate-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px;flex-wrap:wrap}
.gate-head h2{margin:0;font-size:clamp(1.5rem,2.4vw,2.2rem);letter-spacing:-.02em}
.gate-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.gate{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:clamp(340px,34vw,460px);border-radius:var(--radius);overflow:hidden;text-decoration:none;border:1px solid var(--line);isolation:isolate}
.gate picture{position:absolute;inset:0;z-index:-1}
.gate img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.gate:hover img{transform:scale(1.035)}
.gate::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(5,8,12,.95) 0%,rgba(5,8,12,.7) 38%,rgba(5,8,12,.1) 75%)}
.gate .in{padding:clamp(22px,2.6vw,34px)}
.gate .k{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 10px}
.gate h3{margin:0 0 8px;font-size:clamp(1.4rem,2.1vw,1.9rem);letter-spacing:-.02em}
.gate p{margin:0 0 16px;color:var(--text-dim);max-width:30em}
.gate .go{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.gate .go svg{width:16px;height:16px}
.hero-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
@media (max-width:760px){.gate-grid{grid-template-columns:1fr}.gate{min-height:320px}}
.hero-rail{display:none}
@media (min-width:1181px){.philo .philo-visual{left:47%}.philo .philo-visual img{object-position:30% 50%}}

/* v2.8 3차 — 메인 철학·OS·가는 길·진화 기록 */
.m-sec{padding-block:clamp(72px,8vw,120px)}
.m-sec.light{background:var(--paper);color:var(--dark)}
.m-sec.deep{background:linear-gradient(180deg,var(--ink) 0%,#0c1522 100%)}
.m-sec h2{font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.15;letter-spacing:-.02em;margin:0 0 18px;max-width:22em}
.m-sec .lead{margin:0 0 40px;max-width:44em}
.roles{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:28px}
.role{border-radius:var(--radius);padding:28px 28px 24px;background:#fff;border:1px solid rgba(11,17,25,.12)}
.role.ai{background:#0f1a2a;color:var(--text);border-color:#0f1a2a}
.role h3{margin:0 0 14px;font-size:1.25rem}.role .k{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--dark-mute);margin:0 0 6px}
.role.ai .k{color:var(--accent)}
.role ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}
.role li{padding-left:14px;position:relative;font-size:15px}.role li::before{content:"";position:absolute;left:0;top:.7em;width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.5}
.quote-line{font-size:clamp(1.15rem,1.8vw,1.5rem);font-weight:700;margin:8px 0 0}
.stages{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin:0 0 28px;padding:0;list-style:none;position:relative}
.stages li{padding:26px 20px 24px;border-top:3px solid rgba(255,255,255,.14);position:relative}
.stages li:nth-child(1){border-color:#3a4a63}.stages li:nth-child(2){border-color:#4f6a8f}.stages li:nth-child(3){border-color:#6c8fbf}.stages li:nth-child(4){border-color:#9ab7df}.stages li:nth-child(5){border-color:var(--accent)}
.stages .n{font-size:12px;letter-spacing:.14em;color:var(--text-mute)}
.stages b{display:block;font-size:1.3rem;margin:6px 0 6px}
.stages p{margin:0;font-size:14.5px;color:var(--text-dim)}
.stage-note{font-size:15px;color:var(--text-dim);max-width:52em;border-left:3px solid var(--accent);padding-left:16px;margin:0}
.os-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:22px;align-items:start}
.shot{position:relative;margin:0;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line)}
.shot img{width:100%;height:auto}
.shot .tag{position:absolute;top:14px;left:14px;background:rgba(7,11,17,.82);color:#fff;font-size:12.5px;font-weight:700;letter-spacing:.06em;padding:6px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.3)}
.shot figcaption{font-size:13px;color:var(--text-mute);padding:10px 2px 0;background:none}
.cycle{display:flex;flex-wrap:wrap;gap:8px 10px;margin:0 0 26px;padding:0;list-style:none;align-items:center}
.cycle li{background:#122036;border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-weight:600;font-size:14.5px}
.cycle li.arr{background:none;border:0;padding:0;color:var(--text-mute)}
.os-side p{color:var(--text-dim);margin:0 0 14px}
.path{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:0;padding:0;list-style:none}
.path li{background:#fff;border:1px solid rgba(11,17,25,.12);border-radius:var(--radius);padding:26px}
.path .st{display:inline-block;font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;margin-bottom:12px}
.path .now{background:#e3f4ea;color:#0b6b3a}.path .plan{background:#eef2f8;color:#1e3a66}
.path b{display:block;font-size:1.2rem;margin-bottom:6px}.path p{margin:0;color:var(--dark-dim);font-size:15px}
.plan-band{margin:0 0 30px}
.plan-band .shot .tag{background:rgba(245,198,60,.95);color:#111;border-color:transparent}
.plan-line{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:22px 0 0;font-size:15px;color:var(--text-dim)}
.plan-line .pl{background:rgba(245,198,60,.14);color:var(--accent);border:1px solid rgba(245,198,60,.4);font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px}
.plan-line span.a{border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:14px}
.evo{margin:0;padding:0;list-style:none;border-left:2px solid var(--line);max-width:760px}
.evo li{position:relative;padding:0 0 22px 24px}
.evo li::before{content:"";position:absolute;left:-7px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--accent)}
.evo time{display:block;font-size:13px;color:var(--text-mute);letter-spacing:.06em}
.evo b{font-size:1.05rem}
.evo p{margin:4px 0 0;color:var(--text-dim);font-size:14.5px}
.results{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.proc-shot{margin-top:28px}
.proc-shot .shot{border-color:rgba(11,17,25,.14)}
.proc-shot figcaption{color:var(--dark-mute)}
.report-prev{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:980px}
.report-prev figure{margin:0;background:#fff;border:1px solid rgba(11,17,25,.14);border-radius:var(--radius);overflow:hidden;box-shadow:0 18px 40px rgba(11,17,25,.12)}
.report-prev img{width:100%;height:auto;display:block}
.report-prev figcaption{font-size:13px;color:var(--dark-mute);padding:10px 14px}
.order{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:0;padding:0;list-style:none}
.order li{border:1px solid var(--line);border-radius:var(--radius);background:var(--ink-3);padding:18px}
.order .n{font-size:12px;color:var(--accent);letter-spacing:.12em}
.order b{display:block;font-size:1.1rem;margin:4px 0}.order p{margin:0;font-size:14px;color:var(--text-dim)}
@media (max-width:1024px){.stages,.order{grid-template-columns:1fr 1fr}.os-grid{grid-template-columns:1fr}.hero-copy>.hero-links{display:none}}
@media (max-width:760px){.roles,.path,.results,.report-prev{grid-template-columns:1fr}.role ul{grid-template-columns:1fr}.stages,.order{grid-template-columns:1fr}}
