/* 江西首页重做：赣鄱山水 × 景德镇青花 × AI 信号 */
:root {
  --gan-paper: #f4efe3;
  --gan-paper-deep: #e9dfcc;
  --gan-ink: #14202b;
  --gan-blue: #0c3f75;
  --gan-blue-deep: #082b55;
  --gan-blue-soft: #397aa3;
  --gan-lake: #75aeb0;
  --gan-red: #b5402e;
  --gan-gold: #d9ad59;
}

.site-header {
  background: rgb(8 43 85 / .96);
  border-bottom-color: rgb(255 255 255 / .1);
  box-shadow: none;
}
.site-header .btn-header { color: #fff8e9; background: var(--gan-red); }
.site-header .site-nav a::after { background: #d8b66f; }
.site-header .site-nav a.active,
.site-header .site-nav a:hover,
.site-header .hotline { color: #f0ce83; }
.site-header .mobile-nav { background: #082b55; }

.gan-home {
  color: var(--gan-ink);
  background: var(--gan-paper);
  overflow: clip;
}
.gan-home h1,
.gan-home h2,
.gan-home h3 { font-family: "Noto Sans SC", sans-serif; letter-spacing: -.055em; }
.gan-home a { text-decoration: none; }
.gan-home button { font: inherit; }

.gan-chapter {
  display: inline-flex;
  align-items: center;
  gap: .7rem;
  color: var(--gan-red);
  font-size: .62rem;
  font-weight: 800;
  letter-spacing: .15em;
  text-transform: uppercase;
}
.gan-chapter::before { content: ""; width: 1.8rem; height: 1px; background: currentColor; }
.gan-chapter.light { color: #e6c77f; }

/* ── Hero ── */
.gan-hero {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: calc(100svh - var(--header-h));
  overflow: hidden;
  isolation: isolate;
  background:
    linear-gradient(90deg, rgb(244 239 227 / .98) 0%, rgb(244 239 227 / .94) 48%, rgb(233 223 204 / .78) 100%);
}
.gan-grain {
  position: absolute;
  z-index: -1;
  inset: 0;
  opacity: .26;
  background-image:
    radial-gradient(circle at 15% 20%, rgb(12 63 117 / .16) 0 1px, transparent 1.5px),
    radial-gradient(circle at 75% 65%, rgb(181 64 46 / .13) 0 1px, transparent 1.5px);
  background-size: 22px 22px, 31px 31px;
  mix-blend-mode: multiply;
}
.gan-horizon {
  position: absolute;
  z-index: -2;
  inset: auto -10% -15% 28%;
  height: 72%;
  opacity: .17;
  background:
    repeating-radial-gradient(ellipse at 55% 100%, transparent 0 43px, #0c3f75 44px 45px, transparent 46px 76px);
  transform: rotate(-6deg);
}
.gan-ghost {
  position: absolute;
  z-index: -1;
  left: -.06em;
  bottom: -.32em;
  color: transparent;
  -webkit-text-stroke: 1px rgb(12 63 117 / .11);
  font-family: "Noto Sans SC", sans-serif;
  font-size: clamp(18rem, 44vw, 47rem);
  font-weight: 900;
  line-height: 1;
  pointer-events: none;
}
.gan-hero-layout {
  display: grid;
  flex: 1;
  gap: 3.8rem;
  align-items: center;
  padding-block: clamp(4rem, 8vw, 7.2rem) 2rem;
}
.gan-copy { position: relative; z-index: 5; }
.gan-edition { display: flex; align-items: center; gap: .8rem; color: #5e6b70; font-size: .63rem; font-weight: 800; letter-spacing: .13em; }
.gan-edition i { width: 3rem; height: 1px; background: #98a2a2; }
.gan-copy h1 { max-width: 8.7ch; margin-top: 1.6rem; font-size: clamp(3.25rem, 13.7vw, 5.7rem); line-height: .99; }
.gan-copy h1 span { display: block; color: var(--gan-ink); font-weight: 800; }
.gan-copy h1 strong { display: block; margin-top: .1em; color: var(--gan-blue); font-weight: 900; }
.gan-copy h1 strong::after { content: ""; display: block; width: 2.8ch; height: .12em; margin-top: .13em; background: var(--gan-red); transform: rotate(-1.2deg); }
.gan-lead { max-width: 42rem; margin-top: 1.65rem; color: #55636a; font-size: .96rem; line-height: 1.9; }
.gan-lead strong { color: var(--gan-blue); font-weight: 800; }
.gan-actions { display: flex; flex-wrap: wrap; gap: .8rem 1.35rem; align-items: center; margin-top: 2rem; }
.gan-primary {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  width: min(100%, 20rem);
  min-height: 3.55rem;
  padding: .35rem .42rem .35rem 1.2rem;
  color: #fffaf0;
  background: var(--gan-red);
  box-shadow: .55rem .55rem 0 rgb(12 63 117 / .13);
  font-size: .83rem;
  font-weight: 800;
  transition: transform .2s, box-shadow .2s;
}
.gan-primary b,
.gan-submit b { display: grid; place-items: center; width: 2.7rem; aspect-ratio: 1; border-radius: 50%; color: var(--gan-red); background: #fff5df; font-size: 1rem; }
.gan-primary:hover { transform: translate(-2px, -2px); box-shadow: .75rem .75rem 0 rgb(12 63 117 / .16); }
.gan-secondary { display: inline-flex; align-items: center; gap: .55rem; padding: .85rem .25rem; color: var(--gan-blue); border-bottom: 1px solid rgb(12 63 117 / .35); font-size: .8rem; font-weight: 800; }
.gan-secondary span { transition: transform .2s; }.gan-secondary:hover span { transform: translateX(4px); }
.gan-local-proof { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin-top: 2.35rem; color: #58676d; font-size: .65rem; font-weight: 800; letter-spacing: .08em; }
.gan-local-proof i { width: .22rem; height: .22rem; border-radius: 50%; background: var(--gan-red); }

.gan-landscape { position: relative; z-index: 3; width: min(100%, 35rem); aspect-ratio: 1 / 1.1; margin-inline: auto; perspective: 1200px; }
.gan-plate-shadow { position: absolute; inset: 19% 8% 12% 8%; border-radius: 50%; background: rgb(17 43 65 / .22); filter: blur(34px); transform: translateY(10%); }
.gan-plate {
  position: absolute;
  inset: 4% 5% 15%;
  border-radius: 50%;
  filter: drop-shadow(0 1.3rem 1.2rem rgb(24 48 65 / .16));
  transform: rotateX(var(--gan-rx, 0deg)) rotateY(var(--gan-ry, 0deg));
  transition: transform .16s ease-out;
}
.gan-plate::before {
  content: "";
  position: absolute;
  z-index: 4;
  inset: 6%;
  border-radius: 50%;
  opacity: .32;
  background:
    linear-gradient(64deg, transparent 49.5%, rgb(12 63 117 / .18) 50%, transparent 50.5%) 13% 17% / 28% 32% no-repeat,
    linear-gradient(118deg, transparent 49.5%, rgb(12 63 117 / .14) 50%, transparent 50.5%) 66% 18% / 24% 28% no-repeat,
    linear-gradient(22deg, transparent 49.5%, rgb(12 63 117 / .13) 50%, transparent 50.5%) 42% 65% / 27% 31% no-repeat;
  pointer-events: none;
}
.gan-art { width: 100%; height: 100%; overflow: visible; animation: ganBreathe 8s ease-in-out infinite alternate; }
.gan-cloud { stroke-dasharray: 18 15; animation: ganCloud 14s linear infinite; }
.gan-cloud.cloud-b { animation-direction: reverse; animation-duration: 18s; }
.gan-water path { stroke-width: 3; stroke-dasharray: 90 26; animation: ganWater 8s linear infinite; }
.gan-water path:nth-child(2) { animation-delay: -2s; }.gan-water path:nth-child(3) { animation-delay: -4s; }.gan-water path:nth-child(4) { animation-delay: -6s; }
.gan-mountain { filter: url(#inkBleed); }
.gan-pavilion { transform-origin: 447px 341px; animation: ganPavilion 6s ease-in-out infinite alternate; }
.gan-plate-center {
  position: absolute;
  z-index: 6;
  left: 50%;
  bottom: 22%;
  display: grid;
  min-width: 12rem;
  padding: .75rem 1rem;
  border-left: 3px solid var(--gan-red);
  background: rgb(248 244 234 / .9);
  box-shadow: 0 .8rem 2rem rgb(14 49 78 / .12);
  backdrop-filter: blur(8px);
  transform: translateX(-50%);
}
.gan-plate-center span { color: var(--gan-red); font-size: .52rem; font-weight: 800; letter-spacing: .12em; }
.gan-plate-center strong { color: var(--gan-blue); font-size: 1.15rem; }.gan-plate-center small { color: #607078; font-size: .62rem; }

.gan-node { position: absolute; z-index: 10; display: flex; align-items: center; gap: .35rem; padding: .32rem .52rem; border: 1px solid rgb(12 63 117 / .22); border-radius: 99px; color: #52646e; background: rgb(246 242 232 / .88); box-shadow: 0 .5rem 1.4rem rgb(14 43 68 / .08); font-size: .58rem; font-weight: 800; transition: .22s; }
.gan-node i { width: .38rem; aspect-ratio: 1; border-radius: 50%; background: var(--gan-blue-soft); box-shadow: 0 0 0 4px rgb(57 122 163 / .1); }
.gan-node:hover,
.gan-node.is-active { color: #fff9ec; border-color: var(--gan-red); background: var(--gan-red); transform: translateY(-3px); }
.gan-node.is-active i { background: #f0d694; box-shadow: 0 0 0 5px rgb(240 214 148 / .15); }
.gan-node.n-nanchang { left: 1%; top: 24%; }.gan-node.n-jiujiang { right: 5%; top: 14%; }.gan-node.n-jingdezhen { right: 0; top: 47%; }.gan-node.n-ganzhou { left: 4%; bottom: 29%; }.gan-node.n-shangrao { right: 8%; bottom: 27%; }

.gan-ai-answer {
  position: absolute;
  z-index: 12;
  left: 8%;
  right: 5%;
  bottom: 0;
  padding: .9rem 1rem;
  color: #eaf3f2;
  border-top: 3px solid #75aeb0;
  background: #082b55;
  box-shadow: 0 1.2rem 2.8rem rgb(8 43 85 / .22);
}
.gan-ai-top { display: flex; justify-content: space-between; gap: 1rem; color: #8ebac2; font-size: .48rem; font-weight: 800; letter-spacing: .11em; }
.gan-ai-top span { display: flex; align-items: center; gap: .35rem; }.gan-ai-top i { width: .33rem; aspect-ratio: 1; border-radius: 50%; background: #78d2b4; box-shadow: 0 0 0 4px rgb(120 210 180 / .1); animation: ganPulse 1.8s infinite; }.gan-ai-top b { color: #e3bd70; }
.gan-ai-answer p { min-height: 2.6em; margin-top: .55rem; color: #fff9ed; font-size: .72rem; font-weight: 700; line-height: 1.5; transition: opacity .22s, transform .22s; }
.gan-ai-answer p.is-changing { opacity: 0; transform: translateY(6px); }
.gan-answer-line { display: grid; gap: .28rem; margin-top: .55rem; }.gan-answer-line span { display: block; height: 2px; background: linear-gradient(90deg, #72acb3, rgb(114 172 179 / .1)); animation: ganAnswer 2.5s ease-in-out infinite alternate; }.gan-answer-line span:nth-child(2) { width: 82%; animation-delay: -.8s; }.gan-answer-line span:nth-child(3) { width: 63%; animation-delay: -1.6s; }
.gan-ai-answer small { display: block; margin-top: .5rem; color: #7e9da8; font-size: .48rem; }
.gan-hero-foot { display: flex; justify-content: space-between; gap: 1rem; align-items: center; padding-block: 1rem 1.5rem; border-top: 1px solid rgb(12 63 117 / .18); color: #6b7578; font-size: .65rem; }
.gan-hero-foot a { display: none; color: var(--gan-blue); font-weight: 800; }.gan-hero-foot b { color: var(--gan-red); }

/* ── Questions ── */
.gan-questions { position: relative; padding-block: clamp(3.4rem, 5vw, 4.5rem); background: #fffaf0; }
.gan-question-layout { display: grid; gap: clamp(2.5rem, 5.5vw, 5rem); }
.gan-question-intro h2 { max-width: 14ch; margin-top: .8rem; font-size: clamp(2rem, 3.1vw, 3.1rem); line-height: 1.14; }
.gan-question-intro p { max-width: 55ch; margin-top: 1rem; color: #66747a; font-size: .95rem; line-height: 1.8; }
.gan-question-list { border-top: 1px solid #c9c3b6; }
.gan-question-row {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: .25rem 1rem;
  align-items: center;
  padding: 1rem .2rem;
  border-bottom: 1px solid #c9c3b6;
  cursor: pointer;
  transition: padding .25s, background .25s;
}
.gan-question-row > span { grid-column: 1; color: var(--gan-red); font-size: .58rem; font-weight: 800; letter-spacing: .1em; }
.gan-question-row h3 { grid-column: 1; font-size: 1.16rem; line-height: 1.38; }.gan-question-row p { grid-column: 1; color: #748086; font-size: .8rem; line-height: 1.72; }
.gan-question-row > b { grid-column: 2; grid-row: 1 / 4; display: grid; place-items: center; width: 2.3rem; aspect-ratio: 1; border: 1px solid #b9b4a9; border-radius: 50%; color: var(--gan-blue); font-size: 1.15rem; transition: .25s; }
.gan-question-row:hover,
.gan-question-row.is-active { padding-inline: 1rem; background: var(--gan-paper); }
.gan-question-row.is-active > b { color: #fff8e9; border-color: var(--gan-red); background: var(--gan-red); transform: rotate(45deg); }

/* ── Translation ── */
.gan-translation { padding-block: clamp(3.4rem, 5vw, 4.5rem); color: #f8f3e9; background: var(--gan-blue-deep); }
.gan-section-head { display: grid; gap: 1rem; }
.gan-section-head h2 { max-width: 16ch; font-size: clamp(2rem, 3.1vw, 3.1rem); line-height: 1.14; }
.gan-translation-flow { display: grid; gap: 1rem; margin-top: clamp(2rem, 3vw, 2.65rem); }
.gan-translation-flow > i { display: none; }
.gan-translation-flow article { position: relative; min-height: 18rem; padding: 1.25rem; border-top: 1px solid rgb(255 255 255 / .24); border-bottom: 1px solid rgb(255 255 255 / .12); overflow: hidden; }
.gan-translation-flow article::before { content: ""; position: absolute; inset: auto 0 0; height: 0; background: var(--gan-paper); transition: height .35s ease; }
.gan-translation-flow article:hover::before { height: 100%; }
.gan-translation-flow article > *:not(.gan-big-char) { position: relative; z-index: 2; }
.gan-big-char { position: absolute; right: -.02em; bottom: -.27em; color: transparent; -webkit-text-stroke: 1px rgb(255 255 255 / .12); font-size: 10.5rem; font-weight: 900; line-height: 1; transition: color .35s, -webkit-text-stroke .35s; }
.gan-translation-flow article:hover .gan-big-char { color: rgb(12 63 117 / .08); -webkit-text-stroke-color: transparent; }
.gan-translation-flow article > span { color: #ddbd78; font-size: .58rem; font-weight: 800; letter-spacing: .11em; }
.gan-translation-flow h3 { max-width: 14ch; margin-top: 3.8rem; font-size: 1.16rem; line-height: 1.5; }.gan-translation-flow p { margin-top: .65rem; color: #98abb7; font-size: .8rem; line-height: 1.72; }
.gan-translation-flow article:hover h3 { color: var(--gan-blue); }.gan-translation-flow article:hover p { color: #65737a; }.gan-translation-flow article:hover > span { color: var(--gan-red); }

/* ── Method trail ── */
.gan-method { position: relative; padding-block: clamp(5rem, 10vw, 9rem); overflow: hidden; background: #e9dfcc; }
.gan-method-sky { position: absolute; inset: 0 0 auto; height: 55%; opacity: .2; background: radial-gradient(ellipse at 70% 100%, #6893a7 0, transparent 62%); }
.gan-method-head { position: relative; display: grid; gap: 1.5rem; }
.gan-method-head h2 { max-width: 14ch; margin-top: 1.1rem; color: var(--gan-blue); font-size: clamp(2.3rem, 8vw, 4.6rem); line-height: 1.08; }
.gan-method-head p { max-width: 35rem; color: #5f6e74; }
.gan-trail { position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: .65rem; margin-top: 3.2rem; }
.gan-trail::before { content: ""; position: absolute; z-index: 0; left: 50%; top: 4%; bottom: 4%; width: 1px; border-left: 1px dashed rgb(12 63 117 / .25); }
.gan-trail li { position: relative; z-index: 1; min-height: 9rem; display: flex; flex-direction: column; justify-content: flex-end; padding: 1rem; border: 1px solid rgb(12 63 117 / .2); background: rgb(248 244 234 / .72); transition: transform .25s, background .25s; }
.gan-trail li:nth-child(even) { transform: translateY(1.5rem); }
.gan-trail li:hover { color: #fff8e9; background: var(--gan-blue); transform: translateY(-.3rem); }.gan-trail li:nth-child(even):hover { transform: translateY(1.2rem); }
.gan-trail li span { position: absolute; left: 1rem; top: .9rem; color: var(--gan-red); font-size: .58rem; font-weight: 900; }
.gan-trail li strong { color: var(--gan-blue); font-size: 1.6rem; }.gan-trail li small { margin-top: .22rem; color: #6c7a7e; font-size: .62rem; }
.gan-trail li:hover span { color: #e8c77d; }.gan-trail li:hover strong, .gan-trail li:hover small { color: inherit; }
.gan-trail li.summit { color: #fff8e9; background: var(--gan-red); border-color: var(--gan-red); }.gan-trail li.summit strong, .gan-trail li.summit small { color: inherit; }.gan-trail li.summit span { color: #f2d489; }
.gan-method-link { margin-top: 4rem; text-align: center; }.gan-method-link a { display: inline-flex; align-items: center; gap: .8rem; padding-bottom: .35rem; color: var(--gan-blue); border-bottom: 1px solid currentColor; font-size: .78rem; font-weight: 800; }.gan-method-link b { color: var(--gan-red); }

/* ── Contact ── */
.gan-contact { position: relative; padding-block: clamp(3.4rem, 5vw, 4.5rem); overflow: hidden; color: #f8f3e9; border-top: 1px solid rgb(143 195 201 / .34); background: #0c3f75; }
.gan-contact::before { content: ""; position: absolute; inset: 0; opacity: .2; background: repeating-radial-gradient(circle at 85% 35%, transparent 0 38px, #75aeb0 39px 40px, transparent 41px 67px); }
.gan-contact-mark { position: absolute; right: -.12em; bottom: -.38em; color: transparent; -webkit-text-stroke: 1px rgb(255 255 255 / .08); font-size: min(48vw, 38rem); font-weight: 900; line-height: 1; }
.gan-contact-layout { position: relative; display: grid; gap: clamp(2.5rem, 5.5vw, 5rem); }
.gan-contact-copy h2 { max-width: 11ch; margin-top: .8rem; font-size: clamp(2rem, 3.1vw, 3.1rem); line-height: 1.14; }.gan-contact-copy > p { max-width: 55ch; margin-top: 1rem; color: #b3c5ce; font-size: .94rem; line-height: 1.8; }
.gan-diagnosis-points { display: grid; gap: .62rem; margin-top: 1.35rem; }.gan-diagnosis-points span { display: flex; align-items: center; gap: .7rem; color: #d0dde1; font-size: .82rem; }.gan-diagnosis-points b { color: #e1bd70; font-size: .58rem; }
.gan-phone { display: grid; margin-top: 1.45rem; }.gan-phone small { color: #91a8b5; font-size: .6rem; letter-spacing: .11em; }.gan-phone strong { color: #e5c477; font-size: 1.35rem; }
.gan-form-wrap { padding: 1.35rem; border: 1px solid rgb(255 255 255 / .18); background: rgb(3 25 51 / .36); backdrop-filter: blur(12px); }
.gan-form-title { display: flex; justify-content: space-between; align-items: center; padding-bottom: 1rem; border-bottom: 1px solid rgb(255 255 255 / .13); }.gan-form-title span { font-size: 1.15rem; font-weight: 800; }.gan-form-title b { color: #7695a6; font-size: .58rem; letter-spacing: .12em; }
.gan-form-wrap form { display: grid; gap: .9rem; margin-top: 1.2rem; }.gan-form-wrap label { display: grid; gap: .42rem; }.gan-form-wrap label > span { color: #b8c8cf; font-size: .68rem; }
.gan-form-wrap input { width: 100%; height: 3rem; padding-inline: .95rem; border: 1px solid rgb(255 255 255 / .14); border-radius: 0; outline: 0; color: #fff8ea; background: rgb(0 0 0 / .13); transition: border .2s, background .2s; }.gan-form-wrap input::placeholder { color: #6f8794; }.gan-form-wrap input:focus { border-color: #7db6bc; background: rgb(0 0 0 / .24); }
.gan-submit { display: flex; justify-content: space-between; align-items: center; min-height: 3.2rem; padding: .3rem .38rem .3rem 1rem; border: 0; color: #fff9eb; background: var(--gan-red); font-size: .8rem; font-weight: 800; }.gan-submit:disabled { opacity: .65; cursor: wait; }.gan-submit b { width: 2.4rem; }
.gan-form-wrap .form-status { min-height: 1rem; margin: 0; padding: 0; border: 0; background: none; font-size: .7rem; }.gan-form-wrap .form-status.err { color: #ff9d89; }.gan-form-wrap .form-status.ok { color: #82dfb9; }
.gan-form-wrap .form-privacy,
.gan-form-wrap .form-noscript { color: #718997; font-size: .59rem; line-height: 1.6; }

@keyframes ganBreathe { to { transform: translateY(-6px) rotate(.4deg); } }
@keyframes ganCloud { to { stroke-dashoffset: -160; } }
@keyframes ganWater { to { stroke-dashoffset: -232; } }
@keyframes ganPavilion { to { transform: translate(447px, 335px); } }
@keyframes ganPulse { 70% { box-shadow: 0 0 0 9px rgb(120 210 180 / 0); } }
@keyframes ganAnswer { from { opacity: .25; transform: scaleX(.55); transform-origin: left; } to { opacity: .9; transform: scaleX(1); transform-origin: left; } }
@keyframes ganShimmer { to { background-position: -200% 0; } }

@media (min-width: 720px) {
  .gan-hero-layout { grid-template-columns: .98fr 1.02fr; gap: 1.5rem; padding-block: clamp(2.75rem, 5.5vw, 4.75rem) 1rem; }
  .gan-copy h1 { font-size: clamp(4.1rem, 5.45vw, 5.85rem); }
  .gan-landscape { width: min(100%, 40.5rem); aspect-ratio: 1; }
  .gan-node { padding: .38rem .62rem; font-size: .62rem; }
  .gan-ai-answer { left: 5%; right: -1%; padding: 1rem 1.1rem; }.gan-ai-answer p { font-size: .8rem; }
  .gan-hero-foot a { display: inline-flex; gap: .55rem; }
  .gan-question-layout { grid-template-columns: .85fr 1.15fr; gap: clamp(3rem, 8vw, 8rem); align-items: start; }
  .gan-question-intro { position: sticky; top: calc(var(--header-h) + 2rem); }
  .gan-question-row { grid-template-columns: 6rem 1fr 2.5rem; gap: .4rem 1rem; min-height: 6rem; }
  .gan-question-row > span { grid-column: 1; grid-row: 1 / 3; }.gan-question-row h3 { grid-column: 2; grid-row: 1; font-size: 1.16rem; }.gan-question-row p { grid-column: 2; grid-row: 2; }.gan-question-row > b { grid-column: 3; grid-row: 1 / 3; }
  .gan-section-head { grid-template-columns: .5fr 1fr; align-items: start; }
  .gan-translation-flow { grid-template-columns: 1fr auto 1fr auto 1fr; align-items: center; gap: 0; }.gan-translation-flow > i { display: block; position: relative; z-index: 3; width: 2.8rem; color: #e4c273; text-align: center; font-style: normal; }.gan-translation-flow article { min-height: 20.5rem; padding: 1.25rem; }
  .gan-method-head { grid-template-columns: 1fr .55fr; align-items: end; }.gan-method-head p { padding-bottom: .5rem; }
  .gan-trail { grid-template-columns: repeat(5, 1fr); gap: 0; border-left: 1px solid rgb(12 63 117 / .2); border-top: 1px solid rgb(12 63 117 / .2); }.gan-trail::before { left: 0; right: 0; top: 50%; bottom: auto; width: auto; height: 1px; border: 0; border-top: 1px dashed rgb(12 63 117 / .28); }.gan-trail li { min-height: 11rem; border-left: 0; border-top: 0; }.gan-trail li:nth-child(even) { transform: none; }.gan-trail li:nth-child(even):hover { transform: translateY(-.3rem); }
  .gan-contact-layout { grid-template-columns: 1fr .72fr; gap: clamp(3rem, 8vw, 8rem); align-items: center; }.gan-form-wrap { padding: 2rem; }
}

@media (min-width: 1100px) {
  .gan-hero-layout { grid-template-columns: .92fr 1.08fr; gap: 2rem; }
  .gan-copy { padding-left: 1.1rem; }
  .gan-landscape { width: min(100%, 43rem); }
  .gan-plate { inset: 0 3% 12%; }
  .gan-ai-answer { left: 3%; right: 0; bottom: 1%; }
  .gan-node.n-nanchang { left: 0; top: 20%; }.gan-node.n-jiujiang { right: 4%; top: 11%; }.gan-node.n-jingdezhen { right: -1%; top: 44%; }.gan-node.n-ganzhou { left: 1%; bottom: 31%; }.gan-node.n-shangrao { right: 6%; bottom: 29%; }
}

@media (min-width: 1100px) and (max-height: 980px) {
  .gan-hero-layout { padding-block: clamp(2rem, 4.5vh, 2.75rem) .65rem; }
  .gan-copy h1 { margin-top: 1.25rem; font-size: clamp(4.45rem, 4.8vw, 5.7rem); line-height: .97; }
  .gan-lead { margin-top: 1.25rem; line-height: 1.78; }
  .gan-actions { margin-top: 1.5rem; }
  .gan-local-proof { margin-top: 1.65rem; }
  .gan-landscape { width: min(100%, 35rem); }
  .gan-hero-foot { padding-block: .55rem .7rem; }
}

@media (max-width: 719px) {
  .gan-edition { align-items: flex-start; flex-direction: column; gap: .45rem; }.gan-edition i { display: none; }
  .gan-landscape { margin-top: -1rem; }
  .gan-plate { inset: 3% 1% 17%; }
  .gan-plate-center { bottom: 28%; }
  .gan-node.n-nanchang { left: 0; top: 20%; }.gan-node.n-jiujiang { right: 1%; top: 11%; }.gan-node.n-jingdezhen { right: -1%; top: 43%; }.gan-node.n-ganzhou { left: 0; bottom: 38%; }.gan-node.n-shangrao { right: 4%; bottom: 36%; }
  .gan-ai-answer { left: 2%; right: 2%; }
  .gan-hero-foot { display: block; }
  .gan-translation-flow article { min-height: 15rem; }.gan-translation-flow h3 { margin-top: 3rem; }
}

@media (prefers-reduced-motion: reduce) {
  .gan-art,
  .gan-cloud,
  .gan-water path,
  .gan-pavilion,
  .gan-ai-top i,
  .gan-answer-line span { animation: none !important; }
  .gan-plate { transform: none !important; }
}
