/* 다움테크놀로지: 탐색, 제품 정보, 문의 동선 */
html{scroll-padding-top:calc(var(--hd-h) + 20px)}
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.skip-link{position:fixed;top:12px;left:20px;z-index:1100;background:var(--brand);color:white;padding:12px 20px;transform:translateY(-180%)}
.skip-link:focus{transform:none}
.hd{background:rgba(255,255,255,.96);border-color:var(--line)}
.nav{gap:24px}
.nav a{min-height:44px;display:flex;align-items:center}
.nav a[aria-current="location"]{color:var(--brand);border-color:var(--brand)}
.logo{flex-shrink:0}.logo i{flex-shrink:0}
.hero{padding-top:132px}
.hero-t{grid-template-columns:1.3fr 1fr;gap:44px;align-items:center}
.hero h1{font-size:clamp(32px,4.2vw,58px);line-height:1.2}
.hero-title .lbl{margin-bottom:18px;font-size:11px}
.hero-r p{font-size:16px}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.action{min-height:48px;display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:11px 17px;border:1px solid var(--line);font-size:14px;font-weight:750}
.action.primary{background:var(--brand);border-color:var(--brand);color:white}
.action:hover{background:var(--mist)}.action.primary:hover{background:var(--ink)}
.hero-v{aspect-ratio:2.8}
.hero-v .tag span{opacity:.85}
.stats div{padding:23px 24px}
.stats b{font-size:30px}
.biz,.cap,.prod,.mfg{padding:88px 0}
.biz-h{margin-bottom:32px}
.quote{padding:56px 0}
.proc{padding:88px 0}
.proc .lbl,.step i{color:#66cd98}
.step:hover{padding-left:0}
.bento{grid-auto-rows:170px;margin-top:32px}
.bt{padding:22px}
.bt b{font-size:28px}
.prod-h p{max-width:410px;color:var(--ink-2)}
.prod-g{grid-template-columns:1fr 1fr;gap:18px}
.pc{background:#fff;min-width:0}
.pc:hover{transform:none;box-shadow:none}
.pc.featured{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;background:var(--mist)}
.pc.featured figure{position:relative;aspect-ratio:auto;min-height:420px}
.pc.featured img{position:absolute;inset:0;object-position:center 10%}
.pc.featured>div{padding:36px;align-self:center}
.pc .mono{font-size:11px;letter-spacing:.12em}
.pc h3{font-size:23px;line-height:1.3;margin:10px 0 14px;font-weight:800}
.pc.featured h3{font-size:40px}
.pc h3 small{display:block;font-size:21px;margin-top:5px}
.pc p{color:var(--ink-2);font-size:15px}
.product-tags{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0}
.product-tags li{border:1px solid #ccd9d0;background:white;padding:4px 10px;font-size:12px;font-weight:650}
.pc .product-note{font-size:13px;margin-bottom:12px}
.text-link{display:inline-flex;align-items:center;gap:20px;min-height:44px;color:var(--brand);font-size:14px;font-weight:750;text-decoration:underline;text-underline-offset:5px}
.text-link span{color:inherit}
.text-link.secondary{margin-left:20px;color:var(--ink-2)}
.pc.compact>div{padding:28px 30px}
.pc.compact .text-link{margin-top:16px}
.pc .status{float:right;border:1px solid var(--line);padding:3px 9px;font-size:12px;font-weight:650;color:var(--ink-2);background:var(--mist)}
.mstep,.mstep.one{grid-template-columns:1fr 1fr;margin-bottom:20px}
.mhead{grid-column:1;grid-row:1/3;align-items:flex-start;padding:30px;gap:16px}
.mhead br{display:none}
.mhead b{margin-bottom:10px;display:block}
.mhead i{background:var(--mist);min-width:36px;height:36px;display:grid;place-items:center}
.mstep figure{grid-column:2;aspect-ratio:2.4}
.mstep.one .mhead{grid-row:auto}
.mstep.one figure{aspect-ratio:1.85}
.mstep img{object-position:center 40%}
@media (min-width:901px){
  .mfg .wrap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
  .mfg-h{grid-column:1/-1;margin-bottom:14px}
  .mstep,.mstep.one{grid-template-columns:1fr;margin:0;align-content:start}
  .mhead,.mstep.one .mhead{grid-column:1;grid-row:auto;padding:24px;min-height:190px;flex-direction:column;gap:12px}
  .mhead b{font-size:17px;margin-bottom:6px}.mhead span{font-size:14px}
  .mstep figure{grid-column:1;aspect-ratio:2.4}
  .mstep.one figure{aspect-ratio:1.2}
}
.ct{padding:72px 0}
.ct-b{display:grid;gap:12px}
.ct-b a{min-height:56px;padding:15px 24px;text-align:center}
.ct-b a.o{font-size:14px}
.ct-b a.o span{display:block;font-size:14px;font-weight:500}
.ct-b a:hover{background:var(--mist);color:var(--brand)}
.location{grid-column:1/-1;border-top:1px solid #ffffff40;padding-top:32px;display:flex;justify-content:space-between;align-items:center;gap:24px;scroll-margin-top:20px}
.location h3{font-size:18px;margin-bottom:6px}
.location address{font-style:normal;font-size:16px}
.location p{margin-top:6px;font-size:14px}
.location-actions{display:flex;flex-wrap:wrap;gap:10px;max-width:300px}
.location-actions a,.location-actions button{border:1px solid #ffffff70;min-height:44px;padding:10px 16px;font-size:14px;font-weight:650;display:inline-flex;align-items:center;gap:20px}
.location-actions a:hover,.location-actions button:hover{background:#ffffff18}
.copy-status{flex-basis:100%;font-size:13px;min-height:22px}
.ft{grid-template-columns:2.1fr repeat(4,1fr);gap:24px}
.ft .logo{font-size:16px}
.ft dt,.cp{color:rgba(255,255,255,.66)}
.ft dd{min-width:0;overflow-wrap:anywhere}
.ft li a{display:inline-block;min-height:36px;padding:5px 0}
.burger[aria-expanded="true"] span{box-shadow:none;transform:rotate(45deg)}
.burger[aria-expanded="true"] span::after{content:"";display:block;width:22px;height:2px;background:var(--ink);transform:rotate(90deg)}
/* JS 없이도 본문과 사진을 읽을 수 있도록 기본 표시. */
html:not(.reveal-ready) .rv{opacity:1;transform:none}
html:not(.reveal-ready) .rv-img>img:not(.x){clip-path:none;opacity:1;transform:none}
[data-motion] .rv.in{transform:none}
@media (max-width:980px){
  .nav{max-height:calc(100dvh - 150px);overflow-y:auto;box-shadow:0 18px 30px #0d1f1814}
  .nav a[aria-current="location"]{background:var(--mist);box-shadow:inset 3px 0 var(--brand)}
  html:not(.reveal-ready) .hd{position:relative}
  html:not(.reveal-ready) .hd .wrap{height:auto;flex-wrap:wrap;padding-top:16px;padding-bottom:16px}
  html:not(.reveal-ready) .nav{position:static;display:flex;flex-direction:row;flex-wrap:wrap;flex-basis:100%;margin-top:12px;box-shadow:none}
  html:not(.reveal-ready) .nav a{padding:10px 12px}
  html:not(.reveal-ready) .burger{display:none}
}
@media (max-width:900px){
  .hero{padding-top:112px}.hero-t{grid-template-columns:1fr;gap:22px}
  .hero h1{font-size:clamp(32px,6vw,48px)}
  .hero-r p{max-width:560px}.hero-r b{display:none}
  .hero-v{aspect-ratio:1.9}
  .hero-actions{margin-top:20px}
  .biz,.cap,.prod,.mfg,.proc{padding:64px 0}
  .bento{grid-auto-rows:170px}.bt.h2{grid-row:span 2}
  .pc.featured>div{padding:26px}.pc.featured figure{min-height:340px}
  .pc.featured h3{font-size:34px}.text-link.secondary{margin-left:0;margin-right:20px}
  .ft{grid-template-columns:1fr 1fr}
  .ct .wrap{gap:28px}.ct-b{grid-template-columns:1fr 1fr}
  .ct-b a{display:flex;flex-direction:column;justify-content:center;padding:14px}
  .location{align-items:flex-start}
}
@media (max-width:700px){
  :root{--hd-h:68px}.hd .wrap{height:68px}.nav{top:68px}
  .hero{padding-top:100px}.hero-title .lbl{margin-bottom:12px}
  .hero-t{gap:16px;margin-bottom:24px}.hero-r p{font-size:15px;line-height:1.75}
  .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.action{gap:8px;padding:11px 13px}
  .hero-v{aspect-ratio:1.5}.hero-v .tag{padding:10px 14px;gap:2px;flex-direction:column;font-size:12px}
  .stats div{padding:20px 16px}.stats b{font-size:26px}.stats b+span{font-size:12px}.stats b small{font-size:12px}
  .biz-h{margin-bottom:26px}.biz-c{padding:24px}.quote{padding:42px 0}
  .prod-g{grid-template-columns:1fr}.pc.featured{grid-template-columns:1fr}
  .pc.featured figure{aspect-ratio:1.15;min-height:0}.pc.featured>div,.pc.compact>div{padding:24px}
  .pc.featured h3{font-size:36px}.text-link.secondary{margin-left:16px;margin-right:0}
  .mfg-h{margin-bottom:26px}.mstep,.mstep.one{grid-template-columns:1fr 1fr}
  .mhead,.mstep.one .mhead{grid-column:1/-1;grid-row:auto;padding:22px;flex-direction:row;gap:12px}
  .mhead b{font-size:17px}.mhead span{font-size:14px}
  .mstep figure{grid-column:auto;aspect-ratio:1}.mstep.one figure{grid-column:1/-1;aspect-ratio:1.35}
  .ct{padding:56px 0}.ct-b{grid-template-columns:1fr}.ct-b a.o span{display:inline}
  .location{flex-direction:column;gap:20px}.location address{font-size:15px}
  .ft{padding:28px 0;gap:26px}.ft li a{min-height:44px;padding:8px 0}
  footer .giant{margin-bottom:22px;font-size:15vw}
  .mbar a{min-height:56px;padding:14px 10px}
  body:has(.mbar){padding-bottom:calc(56px + env(safe-area-inset-bottom))}
  html{scroll-padding-bottom:calc(72px + env(safe-area-inset-bottom))}
}
@media (max-width:520px){.bento{grid-auto-rows:auto}.bt.h2{grid-row:auto}.bt.img{min-height:260px}.bt{min-height:145px}.bt b{font-size:26px}}
/* 시각 디자인 — 깊은 녹색, 기계 사진, 여백의 대비 */
:root{--mist:#f3f5f0;--line:#dce3da;--brand:#19583e;--ink:#102b21;--ink-2:#526359}
h2{font-weight:750;letter-spacing:-.045em}
.lbl{font-size:11px;letter-spacing:.16em;display:flex;align-items:center;gap:10px}
.lbl::before{content:"";width:6px;height:6px;background:currentColor;flex:none}
.hd .cta,.action,.ct-b a{border-radius:4px}
.hd .cta:hover{background:var(--ink)}
.hero{padding-top:104px;background:linear-gradient(#fff 75%,var(--mist) 75%)}
.hero>.wrap{display:grid;grid-template-columns:1fr 1fr}
.hero-t{grid-column:1;grid-row:1;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:26px;margin:0;padding:48px 42px;background:#103f2e;color:#fff;position:relative;border-radius:6px 0 0 0}
.hero-title .lbl{color:#b7dcba;font-size:10px;margin-bottom:28px}
.hero h1{font-size:clamp(34px,3.25vw,47px);font-weight:750;line-height:1.3;letter-spacing:-.045em}
.hero h1 .hl{color:#c4e7ad;font-weight:750}
.hero-r b{display:none}
.hero-r p{color:#d4e1d8;font-size:15px;line-height:1.85;max-width:410px}
.hero-actions{margin-top:26px;gap:10px}
.hero .action{min-height:48px;font-size:14px;border-color:#6a8c79;color:#fff;padding:12px 16px;gap:20px}
.hero .action.primary{background:#d5edbc;border-color:#d5edbc;color:#123d2b}
.hero .action:hover{background:#285740}.hero .action.primary:hover{background:#e6f6d6}
.hero-v{grid-column:2;grid-row:1;aspect-ratio:auto;min-height:530px;border-radius:0 6px 0 0;background:#173f30}
.hero-v img{object-position:60% center}
.hero-v::after{display:none}
.hero-v .tag{inset:auto 0 0;background:linear-gradient(transparent,#0b2018e8);padding:65px 26px 24px;gap:6px;flex-direction:column;font-size:14px}
.hero-v .tag span{font-size:12px;opacity:1;color:#d4e1d8}
.stats{grid-column:1/-1;background:#fff;border-radius:0 0 6px 6px}
.stats div{padding:26px 28px}.stats b{font-size:29px;font-weight:750;letter-spacing:-.04em}
.stats b+span{font-size:13px;font-weight:500}
.biz{background:var(--mist);padding-top:90px}
.biz-h p{font-size:15.5px;line-height:1.9}
.biz-g{border:0;background:transparent;gap:18px;align-items:stretch}
.biz-c{position:relative;padding:30px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:5px}
.biz-icon{width:44px;height:44px;color:var(--brand);margin-bottom:28px}
.biz-c .n{margin-bottom:14px;gap:0}
.biz-c .n i{position:absolute;right:28px;top:30px;color:#617165;font-size:12px;font-weight:500}
.biz-c h3{font-size:21px;font-weight:750}
.biz-c p{font-size:14.5px;line-height:1.85;margin-bottom:24px}
.biz-c ul{margin-top:auto;padding-top:0}
.biz-c li{border:0;background:var(--mist);border-radius:3px;font-weight:500;font-size:12px;padding:5px 9px}
.quote{background:#fff;border:0;padding:64px 0}
.quote .wrap{max-width:900px}
.quote .lbl{justify-content:center;margin-bottom:22px}
.quote blockquote{font-weight:600;font-size:clamp(19px,2vw,25px);line-height:1.8;letter-spacing:-.025em}
.quote cite{margin-top:22px;font-size:13px;font-weight:500}
.proc{background:#102e23;padding:88px 0}
.proc .wrap{grid-template-columns:1fr 1.2fr;gap:80px}
.proc h2{font-size:clamp(28px,3.2vw,39px)}
.proc p.lead{font-size:15px;line-height:1.85;color:#bacdc1}
.tech-detail{margin-top:30px;max-width:380px;overflow:hidden;border-radius:4px;background:#1b392c}
.tech-detail img{width:100%;height:220px;object-fit:cover;object-position:center 33%}
.tech-detail figcaption{display:flex;justify-content:space-between;gap:12px;padding:12px 15px;font-size:11px;color:#d2dfd6}
.tech-detail figcaption span:last-child{color:#a8c7b4}
.step{grid-template-columns:38px 1fr;gap:20px;padding:24px 0;align-items:start}
.step i{display:grid;place-items:center;width:32px;height:32px;border:1px solid #648470;border-radius:50%;font-size:11px;color:#c5e6af}
.step b{font-size:18px;font-weight:700;margin-bottom:8px}
.step span{font-size:14px;color:#bacdc1;line-height:1.85}
.cap{background:var(--mist)}
.bt{border-radius:5px}.bt b{font-weight:750;font-size:27px}
.bt .mono{font-size:10px;letter-spacing:.16em}
.bt.img div{background:linear-gradient(transparent,#0b2018f0);padding:55px 24px 22px}
.bt.img div span{color:#d3ded7;font-size:13px}
.rnd{border-radius:5px;overflow:hidden}
.rnd .r{padding:24px 28px}.rnd .r b{font-weight:700}
.pc{border-radius:5px;overflow:hidden}
.pc.featured{background:#edf2e8;border-color:#d3dfcb}
.pc.featured>div{padding:40px}
.pc.featured h3{font-size:46px;font-weight:750;letter-spacing:-.04em}
.pc h3 small{font-size:20px;font-weight:650}
.product-tags li{border:0;border-radius:3px;background:#fff;padding:5px 10px;font-weight:500}
.pc.compact{border-top:3px solid #73966c}
.pc.compact:last-child{border-top-color:#a7b4a0}
.pc .status{border-radius:3px}
.text-link{text-decoration:none;border-bottom:1px solid #a8bca6;gap:18px;font-size:14px;min-height:40px}
.text-link:hover{border-color:var(--brand);color:var(--ink)}
.mstep{border-radius:5px;overflow:hidden}
.mhead i{background:#e6eede;border-radius:3px;color:var(--brand)}
.mhead b{font-weight:700}
.ct{background:#1a4b35}
.ct h2{font-size:clamp(28px,3vw,40px);line-height:1.35;font-weight:700}
.ct-b a{font-size:17px;font-weight:700}
.ct-b a.o{font-size:13px}.ct-b a.o span{font-size:15px}
.location-actions a,.location-actions button{border-radius:4px}
footer{background:#10281f}
footer .giant{color:#6f8b79;-webkit-text-stroke:0;font-weight:650;font-size:clamp(44px,11vw,158px);letter-spacing:-.065em;line-height:1}
.ft{border-top-color:#385144;border-bottom-color:#385144}
.ft h4{font-size:10px;letter-spacing:.12em;color:#b5c8a9}
@media (max-width:1100px) and (min-width:901px){
  .hero-t{padding:38px 30px}.hero h1{font-size:36px}.hero .action{gap:12px;padding:11px 12px;font-size:13px}
  .proc .wrap{gap:44px}.pc.featured>div{padding:30px}
}
@media (max-width:900px){
  .hero{padding-top:96px}.hero>.wrap{grid-template-columns:1fr 1fr}
  .hero-t{padding:34px 26px;gap:20px}.hero h1{font-size:34px}
  .hero-title .lbl{margin-bottom:20px}.hero-r p{font-size:14px}
  .hero-actions{flex-direction:column;margin-top:22px}
  .hero-v{min-height:540px}.stats div{padding:22px 24px}
  .biz{padding:64px 0}.biz-g{gap:14px}.biz-c{padding:26px}.biz-icon{margin-bottom:20px}
  .biz-c p{margin-bottom:18px}.quote{padding:48px 0}
  .proc{padding:64px 0}.proc .wrap{grid-template-columns:1fr;gap:34px}
  .proc-l{display:grid;grid-template-columns:1fr 1fr;column-gap:32px;align-items:start}
  .proc-l .lbl,.proc-l h2,.proc-l .lead{grid-column:1}
  .tech-detail{grid-column:2;grid-row:1/4;margin:0;max-width:none;align-self:center}
  .tech-detail img{height:220px}
  .pc.featured>div{padding:28px}.pc.featured h3{font-size:38px}
}
@media (max-width:700px){
  .hero{padding-top:84px}.hero>.wrap{grid-template-columns:1fr}
  .hero-t{grid-column:1;grid-row:1;padding:32px 24px;border-radius:5px 5px 0 0;gap:22px}
  .hero h1{font-size:clamp(29px,7.8vw,42px);line-height:1.3}
  .hero-title .lbl{font-size:9px;margin-bottom:20px;letter-spacing:.12em}
  .hero-r p{font-size:14px;line-height:1.8}
  .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:22px}
  .hero .action{font-size:13px;padding:11px 12px;gap:8px}
  .hero-v{grid-column:1;grid-row:2;aspect-ratio:1.6;min-height:0;border-radius:0}
  .hero-v img{object-position:center}
  .hero-v .tag{padding:44px 18px 16px;font-size:12px}.hero-v .tag span{font-size:11px}
  .stats div{padding:20px 16px}.stats b{font-size:26px}.stats b+span{font-size:12px}
  .biz{padding-top:56px}.biz-h{gap:20px}.biz-h p{font-size:14.5px;line-height:1.9}
  .biz-c h3{font-size:20px}.quote blockquote{font-size:19px;line-height:1.8}
  .proc-l{display:block}.tech-detail{margin-top:26px;max-width:440px}
  .tech-detail img{height:190px}.tech-detail figcaption{font-size:10px}
  .step{grid-template-columns:32px 1fr;gap:16px}.step b{font-size:17px}
  .rnd .r{padding:22px}.bt b{font-size:26px}
  .pc.featured>div{padding:26px 24px}.pc.featured h3{font-size:38px}
  .pc.compact>div{padding:24px}
  .ct h2{font-size:28px}.ct-b a{font-size:16px}
  footer .giant{font-size:13.8vw;margin-bottom:24px}
}
@media (max-width:360px){
  .hero-t{padding:28px 18px}.hero .action{padding:10px 8px;font-size:12px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  [data-motion] .rv,[data-motion] .split .w>span{opacity:1;transform:none}
  [data-motion] .rv-img>img:not(.x){clip-path:none;opacity:1;transform:none}
}

/* ── 자료 도착 대기 자리 ────────────────────────────────────────────
   로고 · 특허 등록번호 · FU500 사양 · 재배기계 사진이 오면
   index.html 의 해당 주석만 풀고 값을 채우면 된다.
   해당 마크업이 아직 없으므로 현재 화면에는 영향이 없다.
   자료 현황은 docs/SITE-NOTES.md 「아직 반영 못 한 것」 참조. */

/* 로고 — .logo 의 <i> 를 <img> 로 바꾸면 적용된다.
   푸터는 어두운 배경이라 흰색·단색 버전을 따로 쓴다. */
.logo img{height:28px;width:auto;max-width:190px;object-fit:contain;flex-shrink:0;display:block}
.ft .logo img{height:26px;max-width:170px}

/* 특허 등록번호 — #cap 의 .bento 와 .rnd 사이에 들어간다. */
.patents{background:#fff;border:1px solid var(--line);border-radius:5px;padding:26px 28px;margin-top:14px}
.patents .p-h{margin-bottom:20px}
.patents .p-h .mono{color:var(--brand);font-size:10px;letter-spacing:.16em;display:block;margin-bottom:7px}
.patents .p-h b{font-size:21px;font-weight:750;letter-spacing:-.03em}
.patents ul{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;list-style:none;margin:0;padding:0}
.patents li{border-top:2px solid #73966c;padding-top:13px}
.patents li b{display:block;font-size:15px;font-weight:700;line-height:1.45;margin-bottom:6px}
.patents li span{font-size:13px;color:var(--ink-2);font-variant-numeric:tabular-nums}

/* FU500 사양 — .product-note 를 이 목록으로 바꾼다. */
.spec{display:grid;grid-template-columns:auto 1fr;gap:8px 18px;margin:18px 0 16px;font-size:14px}
.spec dt{color:var(--ink-2);font-weight:600}
.spec dd{margin:0;font-weight:650;font-variant-numeric:tabular-nums}

/* 재배기계 사진 — .pc.compact 에 <figure> 를 넣으면 적용된다.
   사진이 한쪽에만 있으면 옆 카드가 빈 채로 늘어나므로,
   :has() 로 정렬을 풀고 가공기계 쪽에는 figure.soon 을 함께 넣는다. */
.pc.compact figure{aspect-ratio:4/3}
.pc figure.soon{background:var(--mist);color:#546e63;font-size:13px;font-weight:650;letter-spacing:.02em}
.prod-g:has(.pc.compact figure){align-items:start}

@media (max-width:768px){
  .patents{padding:22px 24px}.patents ul{grid-template-columns:1fr;gap:14px}
}
@media (max-width:520px){
  .logo img{height:24px;max-width:150px}
  .spec{gap:6px 14px;font-size:13.5px}
}
