body[data-gaon-project='true'] .case__study__media__text__text2 { min-height: 220px; }
body[data-gaon-project='true'] .case__study__media__text__text__text2 p { max-width: 45em; }

.gaon-scene {
  --gaon-fresh: #78cf20;
  --gaon-leaf: #9bd90c;
  --gaon-sun: #ffc30c;
  --gaon-fruit: #ff870c;
  --gaon-ink: #211d1f;
  background: #f3f5e9;
  color: var(--gaon-ink);
  font-family: sf-pro-display, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;
  isolation: isolate;
  overflow: hidden;
  padding: 0;
  position: relative;
}
.gaon-scene img { display: block; }
.gaon-scene-head,
.gaon-hero-copy,
.gaon-harvest header {
  left: 4.2%;
  position: absolute;
  top: 6.5%;
  z-index: 8;
}
.gaon-scene-head > span,
.gaon-hero-copy > span,
.gaon-harvest header > span,
.gaon-delivery-copy > span {
  display: block;
  font-size: clamp(8px, .72vw, 13px);
  letter-spacing: .16em;
  margin-bottom: 14px;
}
.gaon-scene-head > strong,
.gaon-hero-copy > strong,
.gaon-harvest header > strong,
.gaon-delivery-copy > strong {
  display: block;
  font-size: clamp(24px, 3.05vw, 52px);
  font-weight: 420;
  letter-spacing: -.055em;
  line-height: 1.03;
  word-break: keep-all;
}

.gaon-hero { background: #e7edcf; color: #18331d; }
.gaon-hero-copy strong { font-size: clamp(30px, 4vw, 68px); }
.gaon-gather-stage { height: 86%; position: absolute; right: 3%; top: 7%; width: 54%; }
.gaon-gather-stage:before {
  background: radial-gradient(circle, rgba(255,255,248,.86), rgba(255,255,248,.2) 54%, transparent 72%);
  content: '';
  height: 94%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%,-50%);
  width: 94%;
}
.gaon-gather-stage .crop {
  animation: gaonGather 10s cubic-bezier(.58,.02,.2,1) 1 both;
  border: 3px solid rgba(255,255,255,.78);
  border-radius: 50%;
  box-shadow: 0 16px 40px rgba(0,0,0,.24);
  height: 19%;
  left: 50%;
  overflow: hidden;
  position: absolute;
  top: 46%;
  width: 19%;
  z-index: 3;
}
.gaon-gather-stage .crop:after {
  animation: gaonCropOrange 10s ease-in-out 1 both;
  background: var(--gaon-fruit);
  content: '';
  inset: 0;
  opacity: 0;
  position: absolute;
}
.gaon-gather-stage .crop img { height: 100%; object-fit: cover; width: 100%; }
.crop-strawberry { --sx: -16vw; --sy: -11vw; }
.crop-tomato { --sx: 15vw; --sy: -9vw; }
.crop-mushroom { --sx: 12vw; --sy: 11vw; }
.crop-leaf { --sx: -14vw; --sy: 12vw; }
.gaon-seed {
  animation: gaonSeed 10s ease-in-out 1 both;
  background: var(--gaon-fruit);
  border-radius: 50%;
  box-shadow: 0 0 0 12px rgba(255,195,12,.08);
  height: 7.5%;
  left: 50%;
  position: absolute;
  top: 46%;
  transform: translate(-50%,-50%);
  width: 7.5%;
  z-index: 5;
}
.gaon-embrace { display: none; }
.gaon-embrace-left { border-radius: 0 0 0 100%; left: 22%; transform: rotate(14deg); transform-origin: right bottom; }
.gaon-embrace-right { border-radius: 0 0 100% 0; right: 22%; transform: rotate(-14deg); transform-origin: left bottom; }
body[data-gaon-project='true'] .gaon-hero-logo {
  animation: gaonLogoReveal 10s ease-in-out 1 both;
  height: 66%;
  left: 50%;
  object-fit: contain;
  opacity: 0;
  position: absolute;
  top: 51%;
  transform: translate(-50%,-50%) scale(.86);
  width: 64%;
  z-index: 6;
}
.gaon-hero-sequence { align-items: center; bottom: 6.5%; display: flex; font-size: 8px; gap: 12px; left: 4.2%; letter-spacing: .14em; position: absolute; z-index: 8; }
.gaon-hero-sequence i { background: currentColor; height: 1px; opacity: .42; width: 28px; }

.gaon-harvest > img { height: 100%; object-fit: cover; object-position: center 54%; width: 100%; }
.gaon-photo-shade { background: linear-gradient(90deg, rgba(25,34,20,.8), rgba(25,34,20,.15) 57%, transparent); inset: 0; position: absolute; z-index: 2; }
.gaon-harvest header { color: white; }
.gaon-harvest > p { bottom: 5%; color: white; font-size: 8px; left: 4.2%; letter-spacing: .14em; position: absolute; z-index: 8; }

.gaon-beginnings { background: #eeecdf; }
.gaon-beginnings .gaon-scene-head { width: 27%; }
.gaon-beginnings .gaon-scene-head > strong { font-size: clamp(22px,2.55vw,43px); }
.gaon-sketches { bottom: 7%; display: grid; gap: 1.5%; grid-template-columns: 1fr 1fr; left: 35%; position: absolute; right: 4%; top: 7%; }
.gaon-sketches figure { background: #fbfaf3; border: 1px solid rgba(33,29,31,.12); overflow: hidden; position: relative; }
/* 손스케치는 문서다. cover 로 채우면 좌우 손글씨가 잘려 읽을 수 없다. */
.gaon-sketches img { box-sizing: border-box; filter: contrast(1.05) grayscale(.25); height: 100%; object-fit: contain; padding: 6px; width: 100%; }
.gaon-sketches figcaption { background: rgba(251,250,243,.94); bottom: 0; font-size: 7px; left: 0; letter-spacing: .12em; padding: 10px 12px; position: absolute; }
.gaon-name-axis { align-items: center; bottom: 7%; display: flex; font-size: clamp(14px,1.2vw,20px); gap: 12px; left: 4.2%; position: absolute; width: 26%; }
.gaon-name-axis i { background: var(--gaon-ink); height: 1px; opacity: .4; flex: 1; }

.gaon-two-names { background: #faf8ef; }
.gaon-pair { bottom: 6%; display: grid; gap: 1.5%; grid-template-columns: 1fr 1fr; left: 4%; position: absolute; right: 4%; top: 29%; }
.gaon-pair article { align-items: center; background: white; border: 1px solid rgba(33,29,31,.1); display: flex; flex-flow: column; justify-content: center; position: relative; }
.gaon-pair article > span { font-size: 7px; left: 16px; letter-spacing: .13em; position: absolute; top: 14px; }
.gaon-pair article img { height: 49%; object-fit: contain; width: 48%; }
.gaon-pair-product img { height: 56% !important; width: 57% !important; }
.gaon-pair article p { bottom: 14px; font-size: clamp(9px,.85vw,14px); left: 16px; position: absolute; }

.gaon-embrace-scene { background: #163a20; color: white; }
.gaon-embrace-diagram { height: 74%; position: absolute; right: 2%; top: 16%; width: 57%; }
.gaon-embrace-diagram:before { background: #f1f3e5; border-radius: 48% 52% 46% 54%; content: ''; inset: 10% 14% 7%; opacity: .98; position: absolute; transform: rotate(-2deg); }
.gaon-embrace-diagram:after {
  animation: gaonDiagramSeed 10s ease-in-out 1 both;
  background: var(--gaon-fruit);
  border-radius: 50%;
  content: '';
  height: 8%;
  left: 50%;
  opacity: 0;
  position: absolute;
  top: 44%;
  transform: translate(-50%,-50%) scale(.2);
  width: 8%;
  z-index: 4;
}
.gaon-embrace-diagram > img { height: 68%; left: 50%; object-fit: contain; opacity: 0; position: absolute; top: 52%; transform: translate(-50%,-50%); width: 60%; }
.gaon-embrace-diagram > .gaon-farmer-form { animation: gaonFarmerReveal 10s ease-in-out 1 both; z-index: 5; }
.gaon-embrace-diagram > .gaon-final-mark { animation: gaonDiagramLogo 10s ease-in-out 1 both; z-index: 6; }
.produce-dot { animation: gaonDots 10s cubic-bezier(.5,.02,.2,1) 1 both; border: 2px solid white; border-radius: 50%; height: 15%; left: 50%; overflow: hidden; position: absolute; top: 44%; width: 15%; z-index: 2; }
.produce-dot:after { animation: gaonDotOrange 10s ease-in-out 1 both; background: var(--gaon-fruit); content: ''; inset: 0; opacity: 0; position: absolute; }
.produce-dot img { height: 100%; object-fit: cover; width: 100%; }
.dot-one { --sx: -15vw; --sy: -9vw; }
.dot-two { --sx: 15vw; --sy: -8vw; }
.dot-three { --sx: -12vw; --sy: 11vw; }
.diagram-arm { display: none; }
.arm-left { border-left: 16px solid var(--gaon-fresh); border-radius: 0 0 0 100%; left: 20%; transform-origin: right bottom; }
.arm-right { border-radius: 0 0 100% 0; border-right: 16px solid var(--gaon-fresh); right: 20%; transform-origin: left bottom; }
.gaon-motion-steps { bottom: 7%; left: 4.2%; list-style: none; position: absolute; width: 34%; z-index: 7; }
.gaon-motion-steps li { border-top: 1px solid rgba(255,255,255,.35); display: grid; font-size: clamp(10px,.9vw,15px); gap: 10px; grid-template-columns: 38px 1fr; padding: 13px 0; }
.gaon-motion-steps b { font-size: 8px; font-weight: 400; letter-spacing: .12em; }

.gaon-anatomy { background: #f5f6ea; }
.gaon-anatomy-stage { height: 70%; left: 34%; position: absolute; top: 22%; width: 62%; }
.gaon-anatomy-stage > img { height: 76%; left: 50%; object-fit: contain; position: absolute; top: 50%; transform: translate(-50%,-50%); width: 48%; z-index: 2; }
.gaon-anatomy-stage .note { color: #4c7d19; font-size: clamp(11px,.67vw,11px); letter-spacing: .1em; position: absolute; z-index: 5; }
.gaon-anatomy-stage .note:after { background: currentColor; content: ''; height: 1px; position: absolute; top: 50%; width: 85px; }
.gaon-anatomy-stage .produce { left: 1%; top: 17%; }
.gaon-anatomy-stage .produce:after, .gaon-anatomy-stage .heart:after { left: calc(100% + 12px); }
.gaon-anatomy-stage .farmer { right: 1%; top: 31%; }
.gaon-anatomy-stage .farmer:after, .gaon-anatomy-stage .center:after { right: calc(100% + 12px); }
.gaon-anatomy-stage .heart { bottom: 12%; left: 5%; }
.gaon-anatomy-stage .center { bottom: 17%; right: 2%; }

.gaon-palette { background: #f0f1e6; }
.gaon-palette > img { height: 63%; object-fit: contain; position: absolute; right: 7%; top: 23%; width: 35%; }
.gaon-swatches { bottom: 7%; display: grid; grid-template-columns: 1fr 1fr; left: 4.2%; position: absolute; width: 52%; }
.gaon-swatches article { color: white; display: flex; flex-flow: column; min-height: 116px; justify-content: space-between; padding: 14px; row-gap: 2px; }
.gaon-swatches .fresh { background: var(--gaon-fresh); color: #183119; }
.gaon-swatches .leaf { background: var(--gaon-leaf); color: #183119; }
.gaon-swatches .sun { background: var(--gaon-sun); color: #3d2c05; }
.gaon-swatches .fruit { background: var(--gaon-fruit); }
.gaon-swatches span { font-size: 7px; letter-spacing: .12em; }
.gaon-swatches em { font-size: 7px; font-style: normal; letter-spacing: .04em; opacity: .8; }
.gaon-swatches strong { font-size: clamp(13px,1.35vw,23px); font-weight: 430; line-height: 1.12; }

.gaon-produce { background: #17231a; color: white; }
.gaon-produce-grid { bottom: 4%; display: grid; gap: 1%; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: 1fr 1fr; left: 38%; position: absolute; right: 3%; top: 5%; }
.gaon-produce-grid figure { min-height: 0; overflow: hidden; position: relative; }
.gaon-produce-grid figure.wide { grid-row: 1 / 3; }
.gaon-produce-grid figure:last-child { grid-column: 2 / 4; }
.gaon-produce-grid img { height: 100%; object-fit: cover; transition: transform .7s ease; width: 100%; }
.gaon-produce-grid figcaption { background: rgba(20,25,20,.76); bottom: 0; font-size: 7px; left: 0; letter-spacing: .12em; padding: 8px 10px; position: absolute; }

.gaon-package { background: #f7f5eb; }
.gaon-package-stage { align-items: center; bottom: 5%; display: flex; justify-content: center; left: 20%; position: absolute; right: 2%; top: 18%; }
.gaon-package-stage img { height: 88%; object-fit: contain; width: 94%; }
.gaon-package-stage span { bottom: 2%; color: rgb(78, 122, 16); font-size: 11px; letter-spacing: .12em; position: absolute; right: 2%; text-align: right; }

.gaon-delivery { background: white; }
/* 매뉴얼 페이지는 문서다. cover 로는 머리말 번호와 차량 하단이 잘린다. */
.gaon-delivery > img { height: 100%; object-fit: contain; object-position: center; width: 100%; }
.gaon-delivery:after { background: linear-gradient(90deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.88) 30%, transparent 58%); content: ''; inset: 0; position: absolute; z-index: 2; }
.gaon-delivery-copy { left: 4.2%; position: absolute; top: 9%; width: 35%; z-index: 6; }
.gaon-delivery-copy p { color: rgb(88, 128, 23); font-size: 11px; letter-spacing: .08em; margin-top: 28px; }
.gaon-route-line { bottom: 10%; height: 2px; left: 4.2%; overflow: hidden; position: absolute; width: 30%; z-index: 6; }
.gaon-route-line:before { background: rgba(33,29,31,.18); content: ''; inset: 0; position: absolute; }
.gaon-route-line i { animation: gaonRoute 4.2s ease-in-out infinite; background: var(--gaon-fresh); height: 100%; left: 0; position: absolute; width: 42%; }

.gaon-manual { background: #234a28; color: white; }
.gaon-manual-rail { align-items: flex-end; bottom: 6%; display: grid; gap: 1.1%; grid-template-columns: repeat(5,1fr); left: 3%; position: absolute; right: 3%; top: 30%; }
.gaon-manual-rail img { background: white; box-shadow: 0 18px 34px rgba(0,0,0,.22); height: 92%; object-fit: contain; width: 100%; }
.gaon-manual-rail img:nth-child(2) { height: 84%; }
.gaon-manual-rail img:nth-child(3) { height: 100%; }
.gaon-manual-rail img:nth-child(4) { height: 88%; }
.gaon-manual-rail img:nth-child(5) { height: 80%; }

.gaon-closing { align-items: center; background: #e7edcf; color: #18331d; display: flex; flex-flow: column; justify-content: center; text-align: center; }
.gaon-closing > span { font-size: 8px; left: 4.2%; letter-spacing: .14em; position: absolute; top: 6%; }
.gaon-closing-mark { height: 35%; position: relative; width: 42%; }
.gaon-closing-mark img { filter: drop-shadow(0 20px 30px rgba(0,0,0,.2)); height: 100%; object-fit: contain; position: relative; width: 100%; z-index: 2; }
.gaon-closing-mark i { animation: gaonClosing 5.5s ease-in-out infinite; background: radial-gradient(circle, rgba(151,218,22,.24), rgba(255,195,12,.12) 36%, transparent 68%); height: 210%; left: 50%; position: absolute; top: 48%; transform: translate(-50%,-50%); width: 110%; }
.gaon-closing > strong { font-size: clamp(21px,2.7vw,46px); font-weight: 420; letter-spacing: -.045em; line-height: 1.08; margin-top: 2.5%; word-break: keep-all; }
.gaon-closing > p { bottom: 6%; font-size: 8px; letter-spacing: .14em; position: absolute; }

body[data-gaon-project='true'] .case__study__info__left { display: grid; gap: var(--pd2); grid-column: 1 / 2; grid-template-columns: 1fr 1fr; }
body[data-gaon-project='true'] .case__study__info__project__information { grid-column: 1 / -1; }
body[data-gaon-project='true'] .case__study__info__right { display: flex; flex-flow: column; grid-column: 2 / -1; row-gap: var(--pd2); }
body[data-gaon-project='true'] .case__study__info h2 { color: var(--color-gray50); margin-bottom: 8px; }
body[data-gaon-project='true'] .case__study__info h2:not(:first-child) { margin-top: 32px; }
body[data-gaon-project='true'] .case__study__info p:not(:last-child) { margin-bottom: 12px; }

@keyframes gaonGather {
  0%, 7.04% { opacity: 0; transform: translate(calc(-50% + var(--sx)),calc(-50% + var(--sy))) scale(.45); }
  14.08% { opacity: 1; transform: translate(calc(-50% + var(--sx)),calc(-50% + var(--sy))) scale(1); }
  40.48% { opacity: 1; transform: translate(-50%,-50%) scale(.62); }
  47.52% { opacity: 1; transform: translate(-50%,-50%) scale(.06); }
  51.04%, 100% { opacity: 0; transform: translate(-50%,-50%) scale(.02); }
}
@keyframes gaonCropOrange { 0%, 26.4% { opacity: 0; } 38.72%, 49.28% { opacity: 1; } 52.8%, 100% { opacity: 0; } }
@keyframes gaonSeed {
  0%, 35.2% { opacity: 0; transform: translate(-50%,-50%) scale(.15); }
  43.12% { opacity: 1; transform: translate(-50%,-50%) scale(.55); }
  50.16%, 60.72% { opacity: 1; transform: translate(-50%,-50%) scale(1.25); }
  66.88%, 100% { opacity: 0; transform: translate(-50%,-50%) scale(.8); }
}
@keyframes gaonEmbrace {
  0%, 37% { opacity: 0; scale: .3; }
  51%, 67% { opacity: .86; scale: 1; }
  79%, 100% { opacity: 0; scale: 1.05; }
}
@keyframes gaonLogoReveal {
  0%, 56.32% { opacity: 0; transform: translate(-50%,-50%) scale(.86); }
  63.36%, 100% { opacity: 1; transform: translate(-50%,-50%) scale(1); }
}
@keyframes gaonDots {
  0%, 8% { opacity: 0; transform: translate(calc(-50% + var(--sx)),calc(-50% + var(--sy))) scale(.4); }
  16% { opacity: 1; transform: translate(calc(-50% + var(--sx)),calc(-50% + var(--sy))) scale(1); }
  37.6% { opacity: 1; transform: translate(-50%,-50%) scale(.58); }
  44.8% { opacity: 1; transform: translate(-50%,-50%) scale(.05); }
  48%, 100% { opacity: 0; transform: translate(-50%,-50%) scale(.02); }
}
@keyframes gaonDotOrange { 0%, 24.8% { opacity: 0; } 36%, 46.4% { opacity: 1; } 49.6%, 100% { opacity: 0; } }
@keyframes gaonDiagramSeed { 0%, 32.8% { opacity: 0; transform: translate(-50%,-50%) scale(.2); } 40% { opacity: 1; transform: translate(-50%,-50%) scale(.55); } 46.4%, 55.2% { opacity: 1; transform: translate(-50%,-50%) scale(1.25); } 60.8%, 100% { opacity: 0; transform: translate(-50%,-50%) scale(.75); } }
@keyframes gaonFarmerReveal { 0%, 46.4% { opacity: 0; transform: translate(-50%,-50%) scale(.76); } 53.6%, 64% { opacity: 1; transform: translate(-50%,-50%) scale(1); } 70.4%, 100% { opacity: 0; transform: translate(-50%,-50%) scale(1.01); } }
@keyframes gaonDiagramLogo { 0%, 61.6% { opacity: 0; transform: translate(-50%,-50%) scale(.94); } 67.2%, 100% { opacity: 1; transform: translate(-50%,-50%) scale(1); } }
@keyframes gaonRoute { 0% { transform: translateX(-105%); } 48%, 62% { transform: translateX(240%); } 100% { transform: translateX(240%); } }
@keyframes gaonClosing { 0%,100% { opacity: .45; scale: .85; } 50% { opacity: 1; scale: 1.08; } }

@media (max-width: 767px) {
  body[data-gaon-project='true'] .case__study__media__text__text2 { min-height: 0; }
  .gaon-scene-head, .gaon-hero-copy, .gaon-harvest header { left: 6%; top: 6%; }
  .gaon-scene-head > strong, .gaon-hero-copy > strong, .gaon-harvest header > strong, .gaon-delivery-copy > strong { font-size: clamp(20px,7.4vw,31px); }
  .gaon-hero-copy { max-width: 58%; z-index: 10; }
  .gaon-gather-stage { opacity: .84; right: -9%; width: 62%; }
  /* 무대는 작물이 화면 밖으로 나가도록 right:-9% 로 물려 있다.
     승인 마크까지 함께 잘리므로 마크만 안쪽으로 당긴다(오른쪽 8px 여유). */
  body[data-gaon-project='true'] .gaon-hero-logo { left: 32%; width: 82%; }
  .gaon-hero-sequence { left: 6%; }
  .gaon-harvest > img { object-position: 61% center; }
  .gaon-photo-shade { background: linear-gradient(90deg, rgba(25,34,20,.84), rgba(25,34,20,.25) 72%, transparent); }
  .gaon-sketches { bottom: 5%; gap: 2%; left: 6%; right: 6%; top: 48%; }
  .gaon-beginnings .gaon-scene-head { width: 88%; }
  .gaon-beginnings .gaon-scene-head > strong { font-size: 20px; line-height: .98; max-width: 12em; }
  .gaon-name-axis { display: none; }
  .gaon-two-names .gaon-scene-head > strong { font-size: 20px; line-height: .98; max-width: 12em; }
  .gaon-pair { left: 5%; right: 5%; top: 47%; }
  .gaon-pair article img { width: 62%; }
  .gaon-pair-product img { width: 75% !important; }
  .gaon-pair article p { display: none; }
  .gaon-embrace-scene .gaon-scene-head > strong { font-size: 20px; line-height: .98; max-width: 11em; }
  .gaon-embrace-diagram { opacity: .7; right: -13%; width: 64%; }
  .gaon-motion-steps { left: 6%; width: 44%; }
  .gaon-anatomy-stage { left: 8%; top: 35%; width: 84%; }
  .gaon-anatomy-stage > img { width: 54%; }
  .gaon-anatomy-stage .note:after { width: 32px; }
  .gaon-palette .gaon-scene-head > strong { font-size: 19px; line-height: .98; max-width: 11em; }
  .gaon-palette > img { height: 54%; opacity: .88; right: -1%; top: 42%; width: 43%; }
  .gaon-swatches { bottom: 4%; left: 6%; width: 54%; }
  .gaon-swatches article { min-height: 66px; height: auto; padding: 8px; }
  .gaon-produce .gaon-scene-head > strong { font-size: 20px; line-height: 1; max-width: 10em; }
  .gaon-produce-grid { left: 41%; }
  .gaon-package .gaon-scene-head > strong { font-size: 20px; line-height: .98; max-width: 12em; }
  .gaon-package-stage { left: 8%; right: 1%; top: 47%; }
  .gaon-delivery-copy { left: 6%; top: 8%; width: 48%; }
  .gaon-delivery:after { background: linear-gradient(90deg, rgba(255,255,255,.98), rgba(255,255,255,.83) 48%, transparent 78%); }
  .gaon-manual .gaon-scene-head > strong { font-size: 20px; line-height: .98; max-width: 14em; }
  .gaon-manual-rail { gap: 1.2%; grid-template-columns: repeat(3,1fr); top: 47%; }
  .gaon-manual-rail img:nth-child(n+4) { display: none; }
  .gaon-closing-mark { width: 55%; }
  .gaon-closing > strong { font-size: clamp(19px,6.2vw,28px); max-width: 80%; }
}

@media (prefers-reduced-motion: reduce) {
  .gaon-scene *, .gaon-scene *:before, .gaon-scene *:after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
  .gaon-hero-logo, .gaon-embrace-diagram > .gaon-final-mark { opacity: 1; transform: translate(-50%,-50%) scale(1); }
  .gaon-embrace-diagram > .gaon-farmer-form { opacity: 0; }
}

/* 좁은 폭에서는 격자 칸이 49px 까지 좁아져 캡션이 칸을 넘친다(375·767·768px 에서 확인).
   figure 가 overflow:hidden 이라 넘친 글자가 조용히 사라져 「STRAWBERRY」가 「STRAWBER」로 읽혔다.
   자간과 안쪽 여백만 줄여 칸 안에 들인다 — 글자 크기는 그대로다. */
@media (max-width: 1000px) {
  .gaon-produce-grid figcaption { letter-spacing: 0; padding: 6px 2px; }
}

/* === 그림 자리 예약 (CLS) — 자동 생성. 없으면 지연 로딩 때 아래가 밀린다 === */
img[src$="/gaon-case-assets/manual-22-r2.jpg"],
img[src$="/gaon-case-assets/manual-04.jpg"],
img[src$="/gaon-case-assets/manual-10.jpg"],
img[src$="/gaon-case-assets/manual-25.jpg"] { aspect-ratio: 70/51; }
img[src$="/gaon-case-assets/gaonchae-logo-exact-r2.png"],
img[src$="/gaon-case-assets/gaonchae-farmer-embrace-r2.png"] { aspect-ratio: 1984/1635; }
img[src$="/gaon-case-assets/strawberry-r2.jpg"],
img[src$="/gaon-case-assets/tomato-r2.jpg"] { aspect-ratio: 309/463; }
img[src$="/gaon-case-assets/naming-sketch-01-r2a.jpg"],
img[src$="/gaon-case-assets/naming-sketch-02-r2.jpg"] { aspect-ratio: 1280/1809; }
img[src$="/gaon-case-assets/mushroom-r2.jpg"] { aspect-ratio: 1260/841; }
img[src$="/gaon-case-assets/leaf-harvest-r2.jpg"] { aspect-ratio: 3/2; }
img[src$="/gaon-case-assets/harvest-full-r2.webp"] { aspect-ratio: 4272/2851; }
img[src$="/gaon-case-assets/gaongil-logo-exact-r2.png"] { aspect-ratio: 928/960; }
img[src$="/gaon-case-assets/produce-field-r2.jpg"] { aspect-ratio: 1240/827; }
img[src$="/gaon-case-assets/tomato-package-r2.jpg"] { aspect-ratio: 1100/367; }
