:root { --nex-sg-ink:#13261f; --nex-sg-muted:#64736c; --nex-sg-line:#d8e2dc; --nex-sg-paper:#f5f3ec; --nex-sg-white:#fff; --nex-sg-green:#0d604a; --nex-sg-lime:#b7d23f; --nex-sg-dark:#082d25; --nex-sg-sun:#f4b63d; --nex-sg-shadow:0 18px 50px rgba(8,45,37,.12); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--nex-sg-ink); background:var(--nex-sg-white); font-family:"Pretendard","Noto Sans KR",Arial,sans-serif; line-height:1.65; }
body.nex-sg-menu-open { overflow:hidden; }
img { display:block; max-width:100%; }
a { color:inherit; }
button,input,select,textarea { font:inherit; }
.nex-sg-skip { position:fixed; left:1rem; top:-5rem; z-index:100; padding:.7rem 1rem; color:white; background:var(--nex-sg-dark); }
.nex-sg-skip:focus { top:1rem; }
.nex-sg-shell { width:min(1180px,calc(100% - 48px)); margin-inline:auto; }
.nex-sg-header { position:sticky; top:0; z-index:30; color:white; background:rgba(8,45,37,.96); border-bottom:1px solid rgba(255,255,255,.12); }
.nex-sg-header-row { min-height:76px; display:flex; align-items:center; gap:2rem; }
.nex-sg-brand { display:flex; align-items:center; gap:.7rem; text-decoration:none; font-weight:850; letter-spacing:.06em; }
.nex-sg-brand span:last-child,.nex-sg-nav a,.nex-sg-header .nex-sg-button { white-space:nowrap; }
.nex-sg-header .nex-sg-brand span:last-child { font-size:.82rem; }
.nex-sg-brand-mark { width:34px; aspect-ratio:1; border:8px solid var(--nex-sg-lime); border-right-color:var(--nex-sg-sun); border-radius:50%; }
.nex-sg-nav { margin-left:auto; display:flex; align-items:center; gap:.2rem; }
.nex-sg-nav a { padding:.65rem .8rem; text-decoration:none; font-size:.92rem; border-radius:999px; }
.nex-sg-nav a:hover,.nex-sg-nav a[aria-current="page"] { color:var(--nex-sg-dark); background:var(--nex-sg-lime); }
.nex-sg-button { display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:.75rem 1.1rem; border:0; border-radius:999px; font-weight:800; text-decoration:none; cursor:pointer; color:var(--nex-sg-dark); background:var(--nex-sg-lime); }
.nex-sg-button-dark { color:white; background:var(--nex-sg-green); }
.nex-sg-menu-toggle { display:none; margin-left:auto; width:46px; height:46px; border:1px solid rgba(255,255,255,.3); border-radius:50%; color:white; background:transparent; font-size:1.25rem; }
.nex-sg-hero { min-height:680px; display:grid; align-items:end; color:white; background-color:var(--nex-sg-dark); background-image:linear-gradient(90deg,rgba(4,30,24,.92),rgba(4,30,24,.25)),var(--nex-sg-hero-image); background-size:cover; background-position:var(--nex-sg-hero-position,center); }
.nex-sg-hero-content { max-width:760px; padding:140px 0 96px; }
.nex-sg-eyebrow { margin:0 0 1rem; text-transform:uppercase; letter-spacing:.18em; font-size:.78rem; font-weight:850; color:var(--nex-sg-lime); }
.nex-sg-hero h1,.nex-sg-page-hero h1 { margin:.1em 0 .35em; font-size:clamp(3rem,7vw,6.5rem); line-height:.93; letter-spacing:-.055em; }
.nex-sg-hero p { max-width:620px; font-size:1.15rem; color:#e2eee8; }
.nex-sg-actions { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:2rem; }
.nex-sg-link { display:inline-flex; min-height:46px; align-items:center; font-weight:800; text-underline-offset:.25em; }
.nex-sg-hero .nex-sg-link { color:white; }
.nex-sg-section { padding:96px 0; }
.nex-sg-section-soft { background:var(--nex-sg-paper); }
.nex-sg-section-dark { color:white; background:var(--nex-sg-dark); }
.nex-sg-heading-row { display:flex; justify-content:space-between; align-items:end; gap:2rem; margin-bottom:2rem; }
.nex-sg-heading-row h2,.nex-sg-section h2 { margin:0; font-size:clamp(2rem,4vw,3.5rem); line-height:1.05; letter-spacing:-.045em; }
.nex-sg-lead { max-width:720px; color:var(--nex-sg-muted); font-size:1.08rem; }
.nex-sg-section-dark .nex-sg-lead { color:#b9cbc3; }
.nex-sg-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.2rem; }
.nex-sg-grid-4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.nex-sg-grid-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.nex-sg-card { overflow:hidden; border:1px solid var(--nex-sg-line); border-radius:22px; background:white; box-shadow:0 1px 0 rgba(8,45,37,.03); }
.nex-sg-card-body { padding:1.35rem; }
.nex-sg-card h3 { margin:.15rem 0 .55rem; font-size:1.35rem; line-height:1.2; }
.nex-sg-card p { margin:.4rem 0; color:var(--nex-sg-muted); }
.nex-sg-media { overflow:hidden; position:relative; background:#e9eee8; aspect-ratio:4/3; }
.nex-sg-media img { width:100%; height:100%; object-fit:var(--nex-sg-fit,contain); object-position:var(--nex-sg-position,center); }
.nex-sg-media-label { position:absolute; left:.8rem; bottom:.8rem; padding:.3rem .55rem; border-radius:999px; color:white; background:rgba(8,45,37,.8); font-size:.7rem; letter-spacing:.08em; }
.nex-sg-tag { display:inline-flex; padding:.3rem .6rem; border-radius:999px; color:var(--nex-sg-green); background:#e7f0eb; font-size:.75rem; font-weight:800; }
.nex-sg-specs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.45rem; margin:1rem 0; }
.nex-sg-specs div { padding:.65rem; border-radius:10px; background:var(--nex-sg-paper); }
.nex-sg-specs dt { color:var(--nex-sg-muted); font-size:.72rem; }
.nex-sg-specs dd { margin:0; font-weight:800; }
.nex-sg-page-hero { padding:92px 0 64px; color:white; background:var(--nex-sg-dark); }
.nex-sg-page-hero h1 { max-width:950px; font-size:clamp(2.8rem,6vw,5.4rem); }
.nex-sg-page-hero p { max-width:700px; color:#cfe0d8; }
.nex-sg-breadcrumbs { margin-bottom:1.5rem; color:#a9c3b7; font-size:.85rem; }
.nex-sg-filter { display:flex; flex-wrap:wrap; gap:.6rem; margin:1.5rem 0 2.5rem; }
.nex-sg-filter button { min-height:42px; padding:.5rem .9rem; border:1px solid var(--nex-sg-line); border-radius:999px; background:white; cursor:pointer; }
.nex-sg-filter button[aria-pressed="true"] { color:white; border-color:var(--nex-sg-green); background:var(--nex-sg-green); }
.nex-sg-detail { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr); gap:3rem; align-items:start; }
.nex-sg-gallery-main { border-radius:28px; background:var(--nex-sg-paper); aspect-ratio:4/3; overflow:hidden; }
.nex-sg-gallery-main img { width:100%; height:100%; object-fit:contain; }
.nex-sg-thumbs { display:grid; grid-template-columns:repeat(4,1fr); gap:.7rem; margin-top:.8rem; }
.nex-sg-thumbs button { padding:0; border:2px solid transparent; border-radius:12px; overflow:hidden; background:var(--nex-sg-paper); cursor:pointer; }
.nex-sg-thumbs button[aria-current="true"] { border-color:var(--nex-sg-green); }
.nex-sg-thumbs img { width:100%; aspect-ratio:1; object-fit:contain; }
.nex-sg-detail-copy h1 { font-size:clamp(2.2rem,4vw,4.5rem); line-height:.98; letter-spacing:-.05em; }
.nex-sg-notice { padding:1rem; border-left:4px solid var(--nex-sg-sun); background:#fff8e8; }
.nex-sg-detail-copy .nex-sg-notice + .nex-sg-notice { margin-top:.75rem; }
.nex-sg-source { color:var(--nex-sg-muted); font-size:.78rem; }
.nex-sg-spacer { margin-top:2rem; }
.nex-sg-table-wrap { overflow-x:auto; border:1px solid var(--nex-sg-line); border-radius:18px; }
.nex-sg-table { width:100%; min-width:680px; border-collapse:collapse; }
.nex-sg-table th,.nex-sg-table td { padding:1rem; text-align:left; border-bottom:1px solid var(--nex-sg-line); }
.nex-sg-table th { background:var(--nex-sg-paper); }
.nex-sg-feature-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.nex-sg-feature { padding:1.5rem; border-top:1px solid var(--nex-sg-line); }
.nex-sg-feature strong { display:block; margin-bottom:.35rem; font-size:1.15rem; }
.nex-sg-process { counter-reset:nex-sg-step; display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; }
.nex-sg-process article { padding:1.4rem; border-radius:18px; color:white; background:#164d40; }
.nex-sg-process article::before { counter-increment:nex-sg-step; content:"0" counter(nex-sg-step); display:block; margin-bottom:2rem; color:var(--nex-sg-lime); font-weight:900; }
.nex-sg-empty { padding:2rem; border:1px dashed #aebdb5; border-radius:18px; color:var(--nex-sg-muted); background:#f8faf8; }
.nex-sg-download { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem 0; border-bottom:1px solid var(--nex-sg-line); }
.nex-sg-quote { padding:80px 0; color:white; background:linear-gradient(135deg,var(--nex-sg-green),var(--nex-sg-dark)); }
.nex-sg-quote-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:3rem; }
.nex-sg-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.nex-sg-field { display:grid; gap:.35rem; }
.nex-sg-field-full { grid-column:1/-1; }
.nex-sg-field input,.nex-sg-field select,.nex-sg-field textarea { width:100%; min-height:48px; padding:.75rem; border:1px solid #a9c3b7; border-radius:10px; background:white; }
.nex-sg-field textarea { min-height:120px; resize:vertical; }
.nex-sg-form-note { grid-column:1/-1; margin:0; color:#c9ddd4; font-size:.85rem; }
.nex-sg-form-status { grid-column:1/-1; min-height:1.5rem; color:#ffe6ad; font-weight:700; }
.nex-sg-footer { padding:60px 0 28px; color:#d5e3dc; background:#061d18; }
.nex-sg-footer-grid { display:grid; grid-template-columns:1.4fr repeat(3,1fr); gap:2rem; }
.nex-sg-footer h2,.nex-sg-footer h3 { color:white; }
.nex-sg-footer a { display:block; margin:.45rem 0; color:#d5e3dc; text-decoration:none; }
.nex-sg-footer-bottom { margin-top:2.5rem; padding-top:1.2rem; border-top:1px solid rgba(255,255,255,.15); color:#91aaa0; font-size:.8rem; }
.nex-sg-mobile-panel { display:none; }
.nex-sg-kicker { font-size:clamp(1.4rem,2.5vw,2.2rem); font-weight:800; line-height:1.25; }
.nex-sg-two-col { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:center; }
.nex-sg-contact-list { list-style:none; padding:0; }
.nex-sg-contact-list li { padding:.8rem 0; border-bottom:1px solid var(--nex-sg-line); }
@media (max-width:1000px) {
  .nex-sg-nav,.nex-sg-header .nex-sg-button { display:none; }
  .nex-sg-menu-toggle { display:block; }
  .nex-sg-mobile-panel { position:fixed; inset:76px 0 auto; max-height:calc(100vh - 76px); overflow:auto; padding:1rem 24px 2rem; color:white; background:var(--nex-sg-dark); border-top:1px solid rgba(255,255,255,.15); }
  .nex-sg-mobile-panel[data-open="true"] { display:block; }
  .nex-sg-mobile-panel a { display:block; padding:1rem 0; border-bottom:1px solid rgba(255,255,255,.14); text-decoration:none; font-weight:800; }
  .nex-sg-grid-4,.nex-sg-grid-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .nex-sg-detail,.nex-sg-quote-grid { grid-template-columns:1fr; }
  .nex-sg-footer-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:640px) {
  .nex-sg-shell { width:min(100% - 32px,1180px); }
  .nex-sg-header-row { min-height:68px; }
  .nex-sg-mobile-panel { inset:68px 0 auto; max-height:calc(100vh - 68px); }
  .nex-sg-hero { min-height:690px; background-position:65% center; }
  .nex-sg-hero-content { padding:100px 0 64px; }
  .nex-sg-hero h1 { font-size:clamp(2.8rem,13.5vw,3.8rem); overflow-wrap:anywhere; }
  .nex-sg-section { padding:68px 0; }
  .nex-sg-heading-row { display:block; }
  .nex-sg-grid,.nex-sg-grid-4,.nex-sg-feature-list,.nex-sg-process,.nex-sg-two-col { grid-template-columns:1fr; }
  .nex-sg-form { grid-template-columns:1fr; }
  .nex-sg-field-full { grid-column:auto; }
  .nex-sg-footer-grid { grid-template-columns:1fr; }
  .nex-sg-page-hero { padding:68px 0 48px; }
}
