/* Glow Pacifier public visual refresh v2: visual layer only. */
:root{
  --color-blue:#2563EB;
  --color-purple:#7C3AED;
  --gradient:linear-gradient(135deg,#2563EB 0%,#7C3AED 100%);
  --gradient-soft:linear-gradient(135deg,rgba(37,99,235,.10) 0%,rgba(124,58,237,.10) 100%);
  --text:#0F172A;
  --text-2:#475569;
  --muted:#94A3B8;
  --border:#E2E8F0;
  --border-soft:#EEF2F7;
  --bg:#F8FAFC;
  --bg-soft:#F1F5F9;
  --bg-info:#EFF6FF;
  --bg-success:#ECFDF5;
  --success:#22C55E;
  --warning:#F59E0B;
  --r-sm:8px;
  --r-md:12px;
  --r-lg:16px;
  --r-xl:20px;
  --r-2xl:24px;
  --shadow-md:0 4px 12px rgba(15,23,42,.05),0 1px 3px rgba(15,23,42,.04);
  --shadow-lg:0 8px 24px rgba(15,23,42,.06);
  --primary:var(--text);
  --accent:var(--color-blue);
  --accent-hover:#1D4ED8;
  --accent-light:var(--bg-info);
  --purple:var(--color-purple);
  --purple-light:#F5F3FF;
  --green:#22C55E;
  --green-light:var(--bg-success);
  --bg-light:var(--bg);
  --bg-alt:var(--bg-soft);
  --text-dark:var(--text);
  --text-body:var(--text-2);
  --text-muted:var(--muted);
  --radius-sm:var(--r-sm);
  --radius:var(--r-md);
  --radius-lg:var(--r-lg);
  --radius-xl:var(--r-2xl);
}

html,body{
  color:var(--text-2);
  font-family:'Inter','Noto Sans SC',-apple-system,BlinkMacSystemFont,sans-serif;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

h1,h2,h3,h4,h5,h6{
  color:var(--text);
  letter-spacing:0;
}

.nav{
  border-bottom:1px solid var(--border-soft);
  background:rgba(255,255,255,.92);
  box-shadow:0 1px 0 rgba(15,23,42,.02);
}

.nav-links a{
  color:var(--text-2);
  border-radius:var(--r-sm);
  font-size:.875rem;
  font-weight:600;
  position:relative;
}

.nav-links a:hover{
  color:var(--text);
  background:var(--bg);
}

.nav-links a.active{
  color:var(--color-blue);
  background:transparent;
}

.nav-links a.active::after{
  content:"";
  position:absolute;
  left:12px;
  right:12px;
  bottom:2px;
  height:2px;
  border-radius:999px;
  background:var(--gradient);
}

.nav-links a.nav-cta,
.nav-cta{
  background:var(--gradient)!important;
  color:#fff!important;
  border-radius:var(--r-md)!important;
  box-shadow:0 4px 14px rgba(124,58,237,.22)!important;
}

.nav-links a.nav-cta::after{display:none!important}

.mobile-menu-btn{
  border-radius:var(--r-md);
  color:var(--text);
}

.mobile-menu-btn:hover{
  background:var(--bg);
}

.btn,
.btn-primary,
.btn-secondary,
.btn-ghost,
.btn-submit,
.pbtn{
  border-radius:var(--r-md)!important;
  box-shadow:none;
}

.btn-primary,
.btn-submit,
.pricing-card.featured .btn,
.pricing-card.featured .btn-primary{
  background:var(--gradient)!important;
  color:#fff!important;
  border:0!important;
  box-shadow:0 4px 14px rgba(124,58,237,.24)!important;
}

.btn-primary:hover,
.btn-submit:hover{
  transform:translateY(-1px);
  box-shadow:0 8px 22px rgba(124,58,237,.26)!important;
}

.btn-secondary,
.btn-ghost{
  background:#fff!important;
  border:1px solid var(--border)!important;
  color:var(--text)!important;
}

.btn-secondary:hover,
.btn-ghost:hover{
  background:var(--bg-info)!important;
  border-color:var(--color-blue)!important;
  color:var(--color-blue)!important;
}

.hero,
.page-hero{
  background:linear-gradient(180deg,#F8FAFC 0%,#FFFFFF 100%)!important;
}

.hero-stat .num,
.pricing-card .price,
.stat-number,
.num{
  background:var(--gradient);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent!important;
}

.hero h1{
  background:transparent!important;
  background-image:none!important;
  -webkit-background-clip:border-box!important;
  background-clip:border-box!important;
  color:#0F172A!important;
  -webkit-text-fill-color:#0F172A!important;
}

.section-label{
  background:var(--gradient-soft)!important;
  color:var(--color-blue)!important;
  border:1px solid rgba(37,99,235,.12);
  border-radius:999px;
}

.card,
.pricing-card,
.testimonial-card,
.contact-sidebar,
.wechat-qr,
.service-feature,
.faq-item,
.blog-card,
.article-card{
  background:#fff!important;
  border:1px solid var(--border)!important;
  border-radius:var(--r-xl)!important;
  box-shadow:var(--shadow-md)!important;
}

.card:hover,
.pricing-card:hover,
.testimonial-card:hover,
.blog-card:hover,
.article-card:hover{
  border-color:#D5DCE5!important;
  box-shadow:var(--shadow-lg)!important;
}

.card::before{background:var(--gradient)!important}

.seo-faq .container{
  max-width:1040px!important;
  overflow:hidden;
}

.seo-faq .section-title{
  width:min(100%, 760px)!important;
  max-width:calc(100vw - 48px)!important;
  margin:0 auto 32px!important;
  text-align:center!important;
  font-size:clamp(2rem, 3.2vw, 3rem)!important;
  overflow-wrap:break-word!important;
  text-wrap:balance;
  line-height:1.12!important;
}

.seo-faq .faq-list{
  width:100%!important;
  max-width:900px!important;
  margin:0 auto!important;
}

.seo-faq .faq-item{
  overflow:hidden;
  box-sizing:border-box;
}

.seo-faq .faq-question{
  gap:18px!important;
  padding:22px 24px!important;
  line-height:1.35!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
  box-sizing:border-box;
}

.seo-faq .faq-question .plus{
  margin-left:auto;
}

.seo-faq .faq-answer{
  max-width:100%!important;
  padding:0 24px 24px!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  box-sizing:border-box;
}

@media (max-width:768px){
  .seo-faq .section-title{
    max-width:100%!important;
    font-size:clamp(1.75rem, 7vw, 2.25rem)!important;
  }

  .seo-faq .faq-question{
    padding:18px 18px!important;
    font-size:.98rem!important;
    align-items:flex-start!important;
  }
}

.card-icon,
.contact-info-icon,
.big-icon{
  width:52px!important;
  height:52px!important;
  border-radius:14px!important;
  background:var(--gradient-soft)!important;
  color:var(--color-blue)!important;
  display:grid!important;
  place-items:center!important;
  font-size:0!important;
  line-height:1!important;
  flex-shrink:0;
}

.pricing-card.featured .card-icon,
.pricing-card.featured .gp-icon-tile{
  background:var(--gradient)!important;
  color:#fff!important;
}

.ico-tile,
.gp-icon-tile{
  width:52px;
  height:52px;
  border-radius:14px;
  background:var(--gradient-soft);
  color:var(--color-blue);
  display:grid;
  place-items:center;
  flex-shrink:0;
}

.gp-icon-number{
  display:block;
  font-size:1rem;
  font-weight:800;
  line-height:1;
  color:currentColor;
}

.ico-tile svg,
.gp-icon-tile svg,
.card-icon svg,
.contact-info-icon svg,
.big-icon svg{
  width:26px;
  height:26px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.ico,
.gp-inline-icon{
  width:1em;
  height:1em;
  margin-right:.38em;
  vertical-align:-.14em;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.pricing-card,
.pricing-card.featured,
.pricing-card.feat,
.pricing-card.recommended,
.pricing-cards > .card{
  position:relative;
  border:0!important;
  border-radius:var(--r-2xl)!important;
  padding:44px 38px!important;
  transform:none!important;
  display:flex!important;
  flex-direction:column;
  align-items:center;
  text-align:center;
  overflow:hidden;
}

.pricing-card:hover,
.pricing-card.featured:hover,
.pricing-card.feat:hover,
.pricing-card.recommended:hover,
.pricing-cards > .card:hover{
  transform:translateY(-2px)!important;
}

.pricing-card::before,
.pricing-card.featured::before,
.pricing-card.feat::before,
.pricing-card.recommended::before,
.pricing-cards > .card::before{
  content:none!important;
  display:none!important;
}

.pricing-card::after,
.pricing-cards > .card::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:var(--r-2xl);
  padding:1.5px;
  background:var(--gradient);
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
}

.pricing-card h3,
.pricing-card .price,
.pricing-card > p,
.pricing-cards > .card h3,
.pricing-cards > .card > p{
  width:100%;
  max-width:330px;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center;
}

.pricing-card ul,
.pricing-cards > .card ul{
  width:100%;
  max-width:330px;
  margin:24px auto 28px!important;
  padding-left:0!important;
  text-align:center!important;
}

.pricing-card ul li,
.pricing-cards > .card ul li{
  display:flex!important;
  align-items:flex-start;
  justify-content:center;
  gap:10px;
  padding-left:0!important;
  text-align:center!important;
}

.pricing-card ul li::before,
.pricing-cards > .card ul li::before{
  position:static!important;
  flex:0 0 auto;
  margin:0.2em 0 0!important;
  transform:none!important;
}

.pricing-cards > .card .check{
  display:inline-flex;
  flex:0 0 auto;
  margin:0.05em 0 0!important;
}

.pricing-card .btn,
.pricing-card .btn-primary,
.pricing-cards > .card .btn,
.pricing-cards > .card .btn-primary{
  width:100%!important;
  max-width:330px;
  margin-top:auto;
  align-self:center;
  justify-content:center!important;
}

.pricing-card ul li::before,
.pricing-cards > .card ul li::before{
  background-color:var(--bg-success)!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2322C55E' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6L9 17l-5-5'/%3E%3C/svg%3E")!important;
}

.form-input,
input,
select,
textarea{
  border-color:var(--border)!important;
  border-radius:var(--r-md)!important;
}

.form-input:focus,
input:focus,
select:focus,
textarea:focus{
  border-color:var(--color-blue)!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.12)!important;
}

.language-switch,
.gp-lang-switch-en{
  border-color:rgba(37,99,235,.18)!important;
  color:var(--color-blue)!important;
  border-radius:999px!important;
  box-shadow:var(--shadow-md)!important;
}

@media(max-width:768px){
  .nav-links.open{
    background:#fff!important;
    border-bottom:1px solid var(--border)!important;
    box-shadow:var(--shadow-lg)!important;
  }
}
