/* 神灯 GEO — Apple-inspired light theme
   只覆盖颜色、材质与阴影；布局、字号、间距与交互均沿用原站。 */

:root {
  color-scheme: light;
  --ink:      #FFFFFF;
  --ink-2:    #F5F5F7;
  --ink-3:    #F2F2F7;
  --ink-4:    #E8E8ED;
  --gold:     #0071E3;
  --gold-l:   #0A6FD8;
  --gold-d:   #0066CC;
  --violet:   #5E5CE6;
  --violet-l: #4945C4;
  --smoke:    rgba(255,255,255,.78);
  --border:   rgba(29,29,31,.10);
  --text:     #1D1D1F;
  --text-2:   #6E6E73;
  --white:    #1D1D1F;
  --shadow:   0 4px 32px rgba(29,29,31,.08);
}

body { background:var(--ink);color:var(--text) }
::selection { background:rgba(0,113,227,.16);color:#1D1D1F }

.lit { background:linear-gradient(90deg,#0057B8,var(--gold));-webkit-background-clip:text;background-clip:text }
.eyebrow,.section-label { color:var(--gold);border-color:rgba(0,113,227,.28);background:rgba(0,113,227,.045) }
.skip { background:var(--gold);color:#fff }

.btn--gold {
  --btn-hover-fill:linear-gradient(115deg,#40A9FF 0%,#147CE5 48%,#005BBB 100%);
  background:linear-gradient(135deg,#147CE5,var(--gold));color:#fff;
}
.btn--gold:hover,.btn--gold:focus-visible { color:#fff }
.btn--ghost {
  --btn-hover-fill:linear-gradient(110deg,#147CE5,var(--gold));
  background:rgba(255,255,255,.72);color:var(--text);border-color:rgba(29,29,31,.13);
}
.btn--ghost:hover,.btn--ghost:focus-visible { color:#fff;border-color:var(--gold) }

/* Navigation */
.nav { background:rgba(255,255,255,.82);border-bottom-color:rgba(29,29,31,.09);box-shadow:0 1px 18px rgba(29,29,31,.035) }
.brand img { filter:drop-shadow(0 4px 10px rgba(0,113,227,.16)) }
.nav__toggle { color:var(--text);background:rgba(255,255,255,.8);border-color:rgba(29,29,31,.11) }
.nav__toggle[aria-expanded="true"] { color:var(--gold);border-color:rgba(0,113,227,.32);background:rgba(0,113,227,.07);box-shadow:0 0 20px rgba(0,113,227,.08) }
.nav__drawer { background:rgba(255,255,255,.98) }
.nav__drawer .drawer__cta { background:var(--gold);color:#fff }

/* Hero */
.hero { background:#FBFBFD }
.hero__backdrop { opacity:.54;filter:saturate(.86) brightness(1.02) contrast(.96) }
.hero::before {
  background:
    linear-gradient(90deg,rgba(251,251,253,.99) 0%,rgba(251,251,253,.96) 31%,rgba(251,251,253,.78) 55%,rgba(251,251,253,.25) 79%,rgba(251,251,253,.72) 100%),
    linear-gradient(0deg,rgba(251,251,253,.98) 0%,transparent 22%,rgba(251,251,253,.64) 100%);
}
.hero::after { background:radial-gradient(circle at 76% 46%,rgba(0,113,227,.11),transparent 31%);mix-blend-mode:normal }
.hero__grid {
  opacity:.18;
  background-image:linear-gradient(rgba(0,113,227,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(0,113,227,.18) 1px,transparent 1px);
}
.hero .eyebrow { color:var(--gold);background:rgba(0,113,227,.05);border-color:rgba(0,113,227,.24);box-shadow:inset 0 0 18px rgba(0,113,227,.025) }
.hero__title { color:#1D1D1F;text-shadow:0 8px 44px rgba(29,29,31,.08) }
.hero__sub { color:#515154 }
.hero__cta .btn--ghost { background:rgba(255,255,255,.68) }
.hero__stats { background:linear-gradient(105deg,rgba(255,255,255,.92),rgba(255,255,255,.62));border-color:rgba(29,29,31,.10);box-shadow:0 20px 60px rgba(29,29,31,.08) }
.hero__stats dt { color:var(--gold) }
.hero__stats dd { color:#6E6E73 }
.hero__visual { filter:drop-shadow(0 32px 60px rgba(29,29,31,.13)) }

.geo-orbit::before { background:radial-gradient(circle,rgba(255,255,255,.82) 0 19%,rgba(0,113,227,.035) 46%,transparent 70%);box-shadow:inset 0 0 70px rgba(0,113,227,.04) }
.geo-orbit__ring { border-color:rgba(0,113,227,.25) }
.geo-orbit__ring::after { background:#2997FF;box-shadow:0 0 15px 3px rgba(0,113,227,.32) }
.geo-orbit__ring--mid { border-color:rgba(29,29,31,.13) }
.geo-orbit__ring--inner { border-color:rgba(94,92,230,.26) }
.geo-orbit__scan { background:conic-gradient(from 20deg,transparent 0 76%,rgba(0,113,227,.03) 83%,rgba(0,113,227,.17) 99.5%,transparent 100%);border-color:rgba(0,113,227,.06) }
.geo-core { border-color:rgba(0,113,227,.22);background:linear-gradient(155deg,rgba(255,255,255,.94),rgba(245,245,247,.76));box-shadow:0 22px 60px rgba(29,29,31,.10) }
.geo-core__halo { border-color:rgba(0,113,227,.18) }
.geo-core img { filter:drop-shadow(0 5px 14px rgba(0,113,227,.25)) }
.geo-core>small { color:#86868B }
.geo-core>strong { color:#3A3A3C }
.geo-core>em { color:var(--gold) }
.geo-node { border-color:rgba(29,29,31,.11);background:rgba(255,255,255,.86);color:#515154;box-shadow:0 10px 30px rgba(29,29,31,.10) }
.geo-node i { background:#2997FF;box-shadow:0 0 9px rgba(0,113,227,.45) }
.geo-pulse { border-color:#2997FF;box-shadow:0 0 12px rgba(0,113,227,.4) }
.geo-pulse::after { border-color:rgba(0,113,227,.42) }
.hero__ticker { background:rgba(255,255,255,.78);border-top-color:rgba(29,29,31,.09) }

/* Light section surfaces */
.shift,.method,.cases,.why,.contact { background:var(--ink-2) }
.shift::before {
  background:radial-gradient(circle at 76% 24%,rgba(0,113,227,.08),transparent 27%),radial-gradient(circle at 14% 78%,rgba(94,92,230,.045),transparent 25%),linear-gradient(115deg,transparent 0 61%,rgba(94,92,230,.035) 61.1% 61.3%,transparent 61.4%);
}
.shift::after { background:repeating-radial-gradient(circle,rgba(0,113,227,.07) 0 1px,transparent 1px 44px) }
.shift__metrics { background:linear-gradient(105deg,rgba(255,255,255,.94),rgba(255,255,255,.7));box-shadow:0 18px 50px rgba(29,29,31,.045) }
.shift-metric:hover { background:rgba(0,113,227,.045) }
.shift-metric__source { color:#86868B }
.shift-metric strong { color:var(--gold) }
.shift-metric p { color:#6E6E73 }
.shift-metric sup { color:rgba(0,113,227,.62) }
.shift__side { background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(255,255,255,.72));box-shadow:0 16px 44px rgba(29,29,31,.045) }
.shift__index { color:rgba(29,29,31,.07) }
.shift__path { border-color:rgba(29,29,31,.09);background:rgba(245,245,247,.84) }
.shift__path span { color:#6E6E73 }
.shift__path i { background:linear-gradient(90deg,rgba(29,29,31,.12),rgba(29,29,31,.28)) }
.shift__path i::after { background:#86868B }
.shift__path--gold { border-color:rgba(0,113,227,.13);background:rgba(0,113,227,.035) }
.shift__path--gold span,.shift__side li b { color:#3A3A3C }
.shift__path--gold i { background:linear-gradient(90deg,rgba(0,113,227,.18),rgba(0,113,227,.56)) }
.shift__path--gold i::after { background:var(--gold);box-shadow:0 0 7px rgba(0,113,227,.35) }
.shift__side--new { border-color:rgba(0,113,227,.24);background:linear-gradient(145deg,rgba(0,113,227,.05),rgba(255,255,255,.88)) }
.shift__badge--gray { background:rgba(29,29,31,.07) }
.shift__badge--gold { background:rgba(0,113,227,.10);color:var(--gold);border-color:rgba(0,113,227,.22) }
.shift__arrow small { color:#86868B }
.shift__bridge { border-color:rgba(29,29,31,.08) }
.shift__bridge span { color:#515154;border-color:rgba(29,29,31,.10);background:rgba(255,255,255,.72) }

/* Cards and content modules */
.svc-card,.case,.why__item { background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(250,250,252,.9));box-shadow:0 14px 42px rgba(29,29,31,.045) }
.svc-card:hover,.why__item:hover { border-color:rgba(0,113,227,.26);background:linear-gradient(145deg,rgba(0,113,227,.035),rgba(255,255,255,.98));box-shadow:0 14px 42px rgba(29,29,31,.045) }
.svc-card__icon,.why__icon { color:var(--gold);border-color:rgba(0,113,227,.2);background:linear-gradient(145deg,rgba(0,113,227,.08),rgba(0,113,227,.018));box-shadow:inset 0 1px rgba(255,255,255,.85),0 10px 28px rgba(29,29,31,.06) }
.svc-card:hover .svc-card__icon,.why__item:hover .why__icon { border-color:rgba(0,113,227,.4);box-shadow:inset 0 1px rgba(255,255,255,.85),0 10px 28px rgba(29,29,31,.06) }
.svc-card__tags li,.case__tag { color:var(--violet-l);background:rgba(94,92,230,.07);border-color:rgba(94,92,230,.16) }

.method::before { background:radial-gradient(circle at 76% 50%,rgba(0,113,227,.07),transparent 28%) }
.steps::before { background:linear-gradient(var(--gold-d),rgba(94,92,230,.22),transparent) }
.step:hover { background:rgba(255,255,255,.66);border-color:rgba(29,29,31,.08) }
.step__num { background:var(--ink-2);color:var(--gold);border-color:rgba(0,113,227,.22);box-shadow:0 0 0 7px var(--ink-2),0 0 24px rgba(0,113,227,.06) }
.method__visual { background:transparent;border:0;box-shadow:none }
.method__visual::before { display:none }
.method__visual::after { display:none }
.method__visual figcaption span { color:var(--gold) }
.method__visual figcaption strong { color:var(--text);text-shadow:none }

.chat { background:#fff;box-shadow:0 24px 64px rgba(29,29,31,.10) }
.chat__bar { background:#F2F2F7 }
.chat__q { background:#F5F5F7 }
.cases::before,.faq::before { background:radial-gradient(circle at 50% 0,rgba(94,92,230,.045),transparent 37%) }
.case:hover { border-color:rgba(0,113,227,.2);box-shadow:0 14px 42px rgba(29,29,31,.045) }
.case__media::after { background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.68) 100%) }
.case__media span { color:rgba(255,255,255,.88) }

.plan { background:rgba(255,255,255,.88);box-shadow:0 14px 42px rgba(29,29,31,.045) }
.plan--featured { border-color:rgba(0,113,227,.3);background:linear-gradient(160deg,rgba(0,113,227,.055),rgba(255,255,255,.92)) }
.plan__flag { background:var(--gold);color:#fff }

.faq::before { background:radial-gradient(circle at 82% 18%,rgba(94,92,230,.045),transparent 30%) }
.faq__item { background:rgba(255,255,255,.86);box-shadow:0 8px 28px rgba(29,29,31,.025) }
.faq__item summary:hover { background:rgba(0,113,227,.025) }
.faq__item summary::after { background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 7l5 5 5-5' stroke='%230071E3' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") }
.faq__item[open] { border-color:rgba(0,113,227,.24);background:rgba(0,113,227,.045);box-shadow:0 16px 40px rgba(29,29,31,.07) }

/* Contact and footer */
.contact::before { opacity:.16;filter:saturate(.72) brightness(1.04) contrast(.92) }
.contact::after { background:linear-gradient(90deg,rgba(245,245,247,.99) 0%,rgba(245,245,247,.93) 43%,rgba(245,245,247,.78) 100%),linear-gradient(0deg,var(--ink-2),transparent 25%,transparent 75%,var(--ink-2)) }
.contact__text { background:linear-gradient(145deg,rgba(255,255,255,.93),rgba(255,255,255,.68));box-shadow:inset 0 1px rgba(255,255,255,.9),0 18px 50px rgba(29,29,31,.055) }
.contact__report { border-color:rgba(0,113,227,.16);background:rgba(0,113,227,.035) }
.contact__report-head small { background:rgba(0,113,227,.09);color:var(--gold) }
.contact__points li b::before { box-shadow:0 0 9px rgba(0,113,227,.42) }
.form { background:rgba(255,255,255,.9);box-shadow:0 28px 80px rgba(29,29,31,.09),inset 0 1px rgba(255,255,255,.9) }
.form__head>b { border-color:rgba(0,113,227,.25);color:var(--gold);background:rgba(0,113,227,.06);box-shadow:inset 0 0 18px rgba(0,113,227,.04) }
.form__row input,.form__row select,.form__row textarea { background:#F5F5F7;border-color:rgba(29,29,31,.11);color:var(--text) }
.form__row select {
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m4 6 4 4 4-4' stroke='%230071E3' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 1rem center;background-size:14px 14px;
}
.form__row input::placeholder,.form__row textarea::placeholder { color:#86868B }
.form__row input:focus,.form__row select:focus,.form__row textarea:focus { border-color:var(--gold);background-color:#fff;box-shadow:0 0 0 3px rgba(0,113,227,.10) }
.form__row select option { background:#fff }
.footer { background:#fff }
.footer__logo:hover img { filter:drop-shadow(0 5px 10px rgba(0,113,227,.18)) }

@media(max-width:768px) {
  .hero__backdrop { opacity:.34 }
  .hero::before { background:linear-gradient(90deg,rgba(251,251,253,.96),rgba(251,251,253,.78)),linear-gradient(0deg,rgba(251,251,253,.98),transparent 42%) }
  .hero__visual { filter:drop-shadow(0 24px 50px rgba(29,29,31,.12)) }
}
