/* 语义化样式（试点：faq.html）
   由工具类组合合并生成；JS 动态类与组合选择器依赖类不并入，仍由原 CSS 控制。
   必须最后加载以复现原层叠结果。 */

/* FAQ 卡片是 <div class="faq-item"><h3><button class="faq-q-btn">
   放进 .rt-body 正文时会吃到 richtext.css 的 :where(.rt-body) h3:not([class])
   { margin: 20px 0 0 } → 卡片顶部凭空多出 20px，按钮 16px 内边距之下再叠 20px，
   上下明显不对称。卡片内不需要标题外边距。 */
.faq-item > h3 { margin: 0; }

.faq-q-btn{
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
  text-align: left;
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 600;
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
@media (min-width: 768px) {
  .faq-q-btn {
    gap: 1rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
    font-size: 1rem;
    line-height: 1.5rem;
  }
}.faq-q-btn:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
}.faq-filter{
  flex-shrink: 0;
  white-space: nowrap;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  min-height: 44px;
  border-radius: calc(var(--radius) - 2px);
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 500;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
}
@media (min-width: 768px) {
  .faq-filter {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    min-height: 0px;
  }
}.faq-filter:hover{
  --tw-border-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(10 107 100 / var(--tw-text-opacity, 1));
}.form-input{
  width: 100%;
  border-radius: calc(var(--radius) - 2px);
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  outline: transparent solid 2px;
  outline-offset: 2px;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
  background-color: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.25);
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}.form-input:focus{
  --tw-border-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
}.form-input::placeholder{
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
}.faq-filter-bar{
  margin-left: -1rem;
  margin-right: -1rem;
  padding-left: 1rem;
  padding-right: 1rem;
  display: flex;
  gap: 0.625rem;
  overflow-x: auto;
  scrollbar-width: none;
  padding-bottom: 0.25rem;
  margin-bottom: 2rem;
}.faq-filter-bar::-webkit-scrollbar{
  display: none;
}
@media (min-width: 768px) {
  .faq-filter-bar {
    margin-left: 0px;
    margin-right: 0px;
    padding-left: 0px;
    padding-right: 0px;
    flex-wrap: wrap;
    overflow: visible;
    margin-bottom: 2.5rem;
  }
}.faq-filter-on{
  flex-shrink: 0;
  white-space: nowrap;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  min-height: 44px;
  border-radius: calc(var(--radius) - 2px);
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 500;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
  --tw-bg-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}
@media (min-width: 768px) {
  .faq-filter-on {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    min-height: 0px;
  }
}.pager-num-on{
  width: 2.75rem;
  height: 2.75rem;
  border-radius: calc(var(--radius) - 2px);
  font-size: 0.875rem;
  line-height: 1.25rem;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
  display: flex;
  align-items: center;
  justify-content: center;
  --tw-bg-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}
@media (min-width: 768px) {
  .pager-num-on {
    width: 2.5rem;
    height: 2.5rem;
  }
}.captcha-img{
  position: relative;
  height: auto;
  width: 130px;
  flex-shrink: 0;
  cursor: pointer;
  overflow: hidden;
  border-radius: calc(var(--radius) - 2px);
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
  border-color: rgba(255, 255, 255, 0.25);
  background-color: rgba(255, 255, 255, 0.95);
}.captcha-img:hover{
  border-color: rgba(10, 107, 100, 0.6);
}.captcha-img:active{
  --tw-scale-x: 0.98;
  --tw-scale-y: 0.98;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}.search-input{
  width: 100%;
  border-radius: calc(var(--radius) - 2px);
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 2.75rem;
  padding-right: 1rem;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  outline: transparent solid 2px;
  outline-offset: 2px;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}
@media (min-width: 768px) {
  .search-input {
    font-size: 1rem;
    line-height: 1.5rem;
  }
}.search-input:focus{
  --tw-border-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
}.faq-body{
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
  display: grid;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  gap: 2rem;
}
@media (min-width: 640px) {
  .faq-body {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .faq-body {
    max-width: 768px;
    padding-top: 3.5rem;
    padding-bottom: 3.5rem;
    gap: 2.5rem;
  }
}
@media (min-width: 1024px) {
  .faq-body {
    max-width: 1024px;
    grid-template-columns: repeat(3, minmax(0px, 1fr));
  }
}
@media (min-width: 1280px) {
  .faq-body {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .faq-body {
    max-width: 1536px;
  }
}.faq-group-title{
  font-size: 1.125rem;
  line-height: 1.75rem;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  border-left-width: 4px;
  padding-left: 0.75rem;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .faq-group-title {
    font-size: 1.5rem;
    line-height: 2rem;
    padding-left: 1rem;
    margin-bottom: 1.25rem;
  }
}.btn-outline-light{
  border-color: rgba(255, 255, 255, 0.6);
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  padding-left: 2rem;
  padding-right: 2rem;
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
  border-radius: calc(var(--radius) - 2px);
  font-weight: 600;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
  width: 100%;
}.btn-outline-light:hover{
  background-color: rgba(255, 255, 255, 0.15);
}
@media (min-width: 640px) {
  .btn-outline-light {
    width: auto;
  }
}.cta-phone{
  position: relative;
  margin-top: 0.5rem;
  display: block;
  font-size: 1.25rem;
  line-height: 1.75rem;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  word-break: break-all;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}.cta-phone::before{
  content: "";
  position: absolute;
  inset: -14px -4px;
}
@media (min-width: 768px) {
  .cta-phone {
    font-size: 1.5rem;
    line-height: 2rem;
  }
}.cta-phone:hover{
  color: rgba(255, 255, 255, 0.8);
}.captcha-tip{
  position: absolute;
  bottom: 0.125rem;
  right: 0.25rem;
  display: flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 10px;
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
  opacity: 0.7;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}.cta-actions{
  margin-top: 1.5rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
}
@media (min-width: 768px) {
  .cta-actions {
    margin-top: 1.75rem;
    gap: 1rem;
  }
}
@media (min-width: 640px) {
  .cta-actions {
    flex-direction: row;
  }
}.btn-solid-light{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-left: 2rem;
  padding-right: 2rem;
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
  border-radius: calc(var(--radius) - 2px);
  font-weight: 600;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
  width: 100%;
}.btn-solid-light:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(228 242 240 / var(--tw-bg-opacity, 1));
}
@media (min-width: 640px) {
  .btn-solid-light {
    width: auto;
  }
}.btn-primary{
  width: 100%;
  --tw-bg-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  font-weight: 600;
  padding-top: 0.875rem;
  padding-bottom: 0.875rem;
  border-radius: calc(var(--radius) - 2px);
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}.btn-primary:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(7 84 79 / var(--tw-bg-opacity, 1));
}.btn-primary:disabled{
  opacity: 0.6;
}.faq-answer{
  padding-left: 2.25rem;
  padding-right: 1rem;
  padding-bottom: 1rem;
  font-size: 0.875rem;
  line-height: 1.75rem;
}
@media (min-width: 768px) {
  .faq-answer {
    padding-left: 2.75rem;
    padding-right: 1.25rem;
    padding-bottom: 1.25rem;
  }
}.hero-sub{
  margin-top: 0.75rem;
  font-size: 0.875rem;
  line-height: 1.75rem;
  color: rgba(255, 255, 255, 0.85);
  max-width: 42rem;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .hero-sub {
    margin-top: 1rem;
    font-size: 1rem;
    line-height: 1.5rem;
  }
}.hero-title{
  font-size: 1.5rem;
  line-height: 1.375;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  text-wrap: balance;
}
@media (min-width: 640px) {
  .hero-title {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }
}
@media (min-width: 768px) {
  .hero-title {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}.cta-card{
  margin-top: 2.5rem;
  --tw-bg-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  padding: 1.5rem;
  text-align: center;
}
@media (min-width: 768px) {
  .cta-card {
    margin-top: 3.5rem;
    padding: 2.5rem;
  }
}.side-card{
  --tw-bg-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  padding: 1.5rem;
  text-align: center;
}
@media (min-width: 768px) {
  .side-card {
    padding: 1.75rem;
  }
}
@media (min-width: 1024px) {
  .side-card {
    position: sticky;
    top: 6rem;
  }
}.side-form{
  margin-top: 1.25rem;
  padding-top: 1.25rem;
  border-top-width: 1px;
  border-color: rgba(255, 255, 255, 0.1);
  text-align: left;
}
@media (min-width: 768px) {
  .side-form {
    margin-top: 1.5rem;
    padding-top: 1.5rem;
  }
}.hero-band{
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
  --tw-gradient-from: #07544F var(--tw-gradient-from-position);
  --tw-gradient-to: #07544F var(--tw-gradient-to-position);
  --tw-gradient-stops: var(--tw-gradient-from), #0A6B64 var(--tw-gradient-via-position), var(--tw-gradient-to);
  padding-top: 2.75rem;
  padding-bottom: 2.75rem;
}
@media (min-width: 768px) {
  .hero-band {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}.hero-rule{
  width: 3rem;
  height: 3px;
  background-color: rgba(255, 255, 255, 0.7);
  margin-left: auto;
  margin-right: auto;
  margin-top: 0.75rem;
}
@media (min-width: 768px) {
  .hero-rule {
    margin-top: 1rem;
  }
}.faq-toolbar{
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-bottom: 1.5rem;
}
@media (min-width: 640px) {
  .faq-toolbar {
    flex-direction: row;
  }
}.search-icon{
  position: absolute;
  left: 1rem;
  top: 50%;
  --tw-translate-y: -50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  font-size: 0.875rem;
  line-height: 1.25rem;
}.cta-title{
  font-size: 1.25rem;
  line-height: 1.375;
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}
@media (min-width: 768px) {
  .cta-title {
    font-size: 1.5rem;
    line-height: 2rem;
  }
}.faq-q-inner{
  display: flex;
  align-items: flex-start;
  gap: 0.625rem;
}
@media (min-width: 768px) {
  .faq-q-inner {
    gap: 0.75rem;
  }
}.faq-item{
  border-radius: var(--radius);
  overflow: hidden;
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}.faq-arrow{
  --tw-text-opacity: 1;
  color: rgb(10 107 100 / var(--tw-text-opacity, 1));
  font-size: 0.75rem;
  line-height: 1rem;
  flex-shrink: 0;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
  animation-duration: 300ms;
}.faq-panel{
  display: grid;
  transition-property: all;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-duration: 300ms;
  animation-duration: 300ms;
  animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
}.hero-inner{
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  text-align: center;
}
@media (min-width: 640px) {
  .hero-inner {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .hero-inner {
    max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .hero-inner {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .hero-inner {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .hero-inner {
    max-width: 1536px;
  }
}.cta-desc{
  margin-top: 0.75rem;
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  line-height: 1.75rem;
}.faq-q-mark{
  font-size: 0.875rem;
  line-height: 1.25rem;
  font-weight: 700;
  margin-top: 0.125rem;
}.reveal-box{
  transition-property: all;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-duration: 500ms;
  animation-duration: 500ms;
  animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
}.icon-base{
  display: inline;
  margin-right: 0.5rem;
  font-size: 1rem;
  line-height: 1.5rem;
}.side-note{
  margin-top: 0.5rem;
  font-size: 0.75rem;
  line-height: 1rem;
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
}.side-title{
  font-weight: 700;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  margin-bottom: 0.25rem;
}.side-hint{
  font-size: 0.75rem;
  line-height: 1rem;
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
  margin-bottom: 1rem;
}.form-grid{
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
}.form-row{
  display: flex;
  align-items: stretch;
  gap: 0.75rem;
}.form-tip{
  font-size: 0.75rem;
  line-height: 1rem;
  text-align: center;
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
}/* ===== 自动语义类（sem_apply.py 生成，请勿手改） ===== */
.reveal-item{
  animation-duration: 500ms;
  animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-duration: 500ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}.icon-row{
  align-items: flex-start;
  display: flex;
  gap: 0.5rem;
}.ic-xs{
  flex-shrink: 0;
  font-size: 0.75rem;
  line-height: 1rem;
  margin-top: 0.125rem;
}.tag-pill{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: 9999px;
  font-size: 0.75rem;
  line-height: 1rem;
  padding-bottom: 0.375rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.375rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.tag-pill:hover{
  --tw-border-opacity: 1;
  --tw-text-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  color: rgb(10 107 100 / var(--tw-text-opacity, 1));
}.bullet{
  align-items: center;
  color: rgba(10, 107, 100, 0.6);
  display: flex;
  flex-shrink: 0;
  height: 1.25rem;
  justify-content: center;
  width: 0.625rem;
}.item-row{
  align-items: flex-start;
  display: flex;
  font-size: 0.875rem;
  gap: 0.5rem;
  line-height: 1.25rem;
}.reveal-fill{
  animation-duration: 500ms;
  animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
  height: 100%;
  transition-duration: 500ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}.card-title{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-weight: 700;
}.item-card{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  display: flex;
  gap: 0.75rem;
  padding-bottom: 0.875rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.875rem;
}.bullet-lg{
  align-items: center;
  display: flex;
  flex-shrink: 0;
  height: 1.75rem;
  justify-content: center;
  width: 0.75rem;
}.text-body{
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  line-height: 1.75rem;
  min-width: 0px;
}
@media (min-width: 768px) {
  .text-body {
    font-size: 15px;
  }
}.col-fill{
  flex: 1 1 0%;
  min-width: 0px;
}.note-xs{
  display: block;
  font-size: 11px;
  margin-top: 0.125rem;
}.def-key{
  --tw-text-opacity: 1;
  align-items: center;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 0.75rem;
  font-weight: 700;
  gap: 0.375rem;
  line-height: 1rem;
}.wrap{
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  width: 100%;
}
@media (min-width: 640px) {
  .wrap {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .wrap {
    max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .wrap {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .wrap {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .wrap {
    max-width: 1536px;
  }
}.tag-pill-sm{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: 9999px;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 11px;
  padding-bottom: 0.25rem;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  padding-top: 0.25rem;
}.meta-txt{
  display: flex;
  font-size: 11px;
  gap: 0.375rem;
  line-height: 1.25rem;
}.grid-2col{
  display: grid;
  gap: 0.5rem;
  grid-template-columns: 76px 1fr;
  padding-bottom: 0.875rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.875rem;
}
@media (min-width: 768px) {
  .grid-2col {
    grid-template-columns: 92px 1fr;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}.card-title-lg{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5rem;
}
@media (min-width: 768px) {
  .card-title-lg {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}.input-field{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  line-height: 1.25rem;
  outline: transparent solid 2px;
  outline-offset: 2px;
  padding-bottom: 0.75rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.75rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%;
}.input-field:focus{
  --tw-border-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
}.sec-intro{
  font-size: 0.875rem;
  line-height: 1.75rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0.75rem;
  max-width: 42rem;
  text-wrap: pretty;
}
@media (min-width: 768px) {
  .sec-intro {
    font-size: 1rem;
    line-height: 1.5rem;
    margin-top: 1rem;
  }
}.sec-title{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.375;
  text-wrap: balance;
}
@media (min-width: 640px) {
  .sec-title {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }
}
@media (min-width: 768px) {
  .sec-title {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}.title-rule{
  --tw-bg-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  height: 3px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0.75rem;
  width: 3rem;
}
@media (min-width: 768px) {
  .title-rule {
    margin-top: 1rem;
  }
}.sec-head{
  margin-bottom: 2rem;
  text-align: center;
}
@media (min-width: 768px) {
  .sec-head {
    margin-bottom: 3rem;
  }
}.row-between{
  align-items: baseline;
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
}.def-val{
  font-size: 13px;
  line-height: 1.5rem;
}.case-link{
  --tw-bg-opacity: 1;
  align-items: center;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
  padding-bottom: 0.75rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.75rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.case-link:hover{
  --tw-border-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
}.case-link-tt{
  --tw-text-opacity: 1;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  display: block;
  font-size: 13px;
  line-height: 1.5rem;
  overflow: hidden;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.cover-img{
  animation-duration: 500ms;
  height: 100%;
  object-fit: cover;
  transition-duration: 500ms;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%;
}.ic-md{
  flex-shrink: 0;
  font-size: 11px;
}.li-row{
  --tw-text-opacity: 1;
  align-items: flex-start;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 0.875rem;
  gap: 0.5rem;
  line-height: 1.5rem;
}.price-cur{
  display: block;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1rem;
  margin-top: 0.25rem;
}
@media (min-width: 640px) {
  .price-cur {
    display: inline;
    margin-left: 0.25rem;
    margin-top: 0px;
  }
}
@media (min-width: 768px) {
  .price-cur {
    font-size: 0.875rem;
    line-height: 1.25rem;
  }
}.price-card{
  --tw-bg-opacity: 1;
  animation-duration: 300ms;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  height: 100%;
  padding: 1.25rem;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.price-card:hover{
  --tw-translate-y: -0.375rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
@media (min-width: 768px) {
  .price-card {
    padding: 1.75rem;
  }
}.sec-title-bar{
  --tw-text-opacity: 1;
  border-left-width: 4px;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.75rem;
  padding-left: 0.75rem;
}
@media (min-width: 768px) {
  .sec-title-bar {
    font-size: 1.5rem;
    line-height: 2rem;
    padding-left: 1rem;
  }
}.price-num{
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.25;
  margin-top: 0.75rem;
}
@media (min-width: 768px) {
  .price-num {
    font-size: 1.875rem;
    line-height: 2.25rem;
    margin-top: 1rem;
  }
}.price-desc{
  border-top-width: 1px;
  font-size: 0.75rem;
  line-height: 1.5rem;
  margin-top: 1rem;
  padding-top: 1rem;
}
@media (min-width: 768px) {
  .price-desc {
    margin-top: 1.25rem;
  }
}.list-body{
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  line-height: 1.25rem;
  margin-top: 1rem;
}
@media (min-width: 768px) {
  .list-body {
    margin-top: 1.25rem;
  }
}.card-title-md{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.75rem;
  margin-top: 1rem;
}.price-unit{
  flex-shrink: 0;
  font-size: 0.75rem;
  line-height: 1rem;
}.note-2xs{
  align-items: center;
  display: inline-flex;
  font-size: 0.75rem;
  gap: 0.375rem;
  line-height: 1rem;
  margin-top: 0.5rem;
}.label-flex{
  align-items: center;
  display: flex;
  gap: 0.75rem;
}.tx-sm{
  font-size: 0.875rem;
  line-height: 1.75rem;
  margin-top: 0.625rem;
}.btn-row{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  display: flex;
  flex-direction: column;
  font-size: 0.875rem;
  gap: 0.375rem;
  line-height: 1.25rem;
  padding-bottom: 0.75rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.75rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-row:hover{
  --tw-bg-opacity: 1;
  --tw-border-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  color: rgb(10 107 100 / var(--tw-text-opacity, 1));
}.area-chip{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: 9999px;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: inline-block;
  font-size: 12px;
  padding-bottom: 0.25rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.25rem;
  position: relative;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.area-chip::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.area-chip:hover{
  --tw-bg-opacity: 1;
  --tw-border-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  color: rgb(10 107 100 / var(--tw-text-opacity, 1));
}.svc-link{
  --tw-text-opacity: 1;
  align-items: flex-start;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 0.875rem;
  gap: 0.5rem;
  line-height: 1.25rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.svc-link:hover{
  --tw-text-opacity: 1;
  color: rgb(10 107 100 / var(--tw-text-opacity, 1));
}.meta-lbl{
  --tw-text-opacity: 1;
  align-items: center;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: flex;
  font-weight: 600;
  gap: 0.5rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.biz-chip{
  align-items: center;
  display: flex;
  gap: 0.5rem;
  justify-content: space-between;
}.thumb{
  --tw-bg-opacity: 1;
  aspect-ratio: 16 / 9;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  overflow: hidden;
}.label{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-weight: 700;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.text-note{
  font-size: 0.875rem;
  line-height: 1.5rem;
  margin-top: 0.5rem;
}.btn{
  position: relative;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.btn:hover{
  --tw-text-opacity: 1;
  color: rgb(10 107 100 / var(--tw-text-opacity, 1));
}.ic-sm-mt{
  flex-shrink: 0;
  font-size: 10px;
  margin-top: 0.25rem;
}.ic-md-2{
  --tw-translate-x: -0.25rem;
  font-size: 11px;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  transition-duration: 150ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.ic-xs-2{
  flex-shrink: 0;
  font-size: 0.75rem;
  line-height: 1rem;
}.grid-4col{
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-top: 1.25rem;
}
@media (min-width: 640px) {
  .grid-4col {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}
/* 客户评价的条数不固定（quyu_page.html 的 $AREA_REVIEW：新市区 3 条、其余区 1 条），
   2 列网格碰上奇数个子项会在右下角留一个空洞。让「最后一张 + 奇数位」跨满整行补齐：
   1 个 → 铺满；3 个 → 第 3 张铺满第二行；2 个 → 不受影响。
   ⚠️ 只限定 .quote-card：同页「服务案例」也用 .grid-4col，但案例卡是竖向卡片
   （.btn-row-2 + 顶部大图），跨满整行会把缩略图拉伸到 819×320，喧宾夺主。
   ⚠️ 必须限定 ≥640px：窄屏是 1 列，span 2 会撑出隐性轨道导致横向溢出。 */
@media (min-width: 640px) {
  .grid-4col > .quote-card:last-child:nth-child(odd) {
    grid-column: span 2;
  }
}.icon-rot{
  animation-duration: 300ms;
  font-size: 11px;
  transition-duration: 300ms;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.rank-num{
  --tw-bg-opacity: 1;
  align-items: center;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: 0.25rem;
  display: flex;
  flex-shrink: 0;
  font-size: 11px;
  font-weight: 700;
  height: 1.25rem;
  justify-content: center;
  margin-top: 0.125rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 1.25rem;
}.case-card-tt{
  --tw-text-opacity: 1;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: -webkit-box;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.5rem;
  margin-top: 0.375rem;
  overflow: hidden;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  margin: 0;}.rank-tt{
  --tw-text-opacity: 1;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  display: block;
  font-size: 13px;
  line-height: 1.5rem;
  overflow: hidden;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.defkey{
  align-items: center;
  display: flex;
  font-size: 11px;
  font-weight: 600;
  gap: 0.375rem;
}.wrap-center{
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  text-align: center;
  width: 100%;
}
@media (min-width: 640px) {
  .wrap-center {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .wrap-center {
    max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .wrap-center {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .wrap-center {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .wrap-center {
    max-width: 1536px;
  }
}.ic-mt-2{
  --tw-text-opacity: 1;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
  flex-shrink: 0;
  margin-top: 0.125rem;
}.def-text{
  font-size: 13px;
  line-height: 1.5rem;
  margin-top: 0.25rem;
}.cell{
  padding-bottom: 1rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 1rem;
  vertical-align: top;
}.btn-flex{
  display: flex;
  gap: 0.75rem;
}.box-pad{
  padding-bottom: 0.75rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.75rem;
}.ic-mt{
  flex-shrink: 0;
  margin-top: 0.25rem;
}.label-sm{
  font-size: 0.875rem;
  line-height: 1.25rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-row-2{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition-duration: 150ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-row-2:hover{
  --tw-border-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
}.meta-ic-txt{
  align-items: center;
  border-top-width: 1px;
  display: inline-flex;
  font-size: 12px;
  gap: 0.375rem;
  margin-top: 0.875rem;
  padding-top: 0.75rem;
}.case-card-desc{
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  flex: 1 1 0%;
  font-size: 12px;
  line-height: 1.5rem;
  margin-top: 0.75rem;
  overflow: hidden;
}.case-card-meta{
  display: flex;
  flex: 1 1 0%;
  flex-direction: column;
  padding: 1rem;
}
@media (min-width: 768px) {
  .case-card-meta {
    padding: 1.25rem;
  }
}.quote-box{
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  line-height: 1.75rem;
  margin-top: 0.75rem;
}.li-ic{
  align-items: center;
  display: flex;
  gap: 0.625rem;
}.ic-md-3{
  color: rgba(255, 255, 255, 0.7);
  font-size: 11px;
}.row-c{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  align-items: center;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: 9999px;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 1.125rem;
  font-weight: 700;
  height: 3.5rem;
  justify-content: center;
  line-height: 1.75rem;
  margin-left: auto;
  margin-right: auto;
  width: 3.5rem;
}.btn-ic{
  align-items: center;
  animation-duration: 200ms;
  border-radius: 0.75rem;
  display: flex;
  gap: 0.5rem;
  height: 2rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  transition-duration: 200ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%;
}.btn-ic-lbl{
  --tw-bg-opacity: 1;
  animation-duration: 300ms;
  background-color: rgb(203 213 225 / var(--tw-bg-opacity, 1));
  border-radius: 9999px;
  display: block;
  flex-shrink: 0;
  height: 3px;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 0.625rem;
}.card-pad-lg{
  animation-duration: 300ms;
  border-radius: var(--radius);
  height: 100%;
  padding: 1.25rem;
  text-align: center;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.card-pad-lg:hover{
  --tw-translate-y: -0.375rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
@media (min-width: 768px) {
  .card-pad-lg {
    padding: 2rem;
  }
}.step-lbl{
  animation-duration: 300ms;
  font-size: 11px;
  line-height: 1;
  max-width: 0px;
  overflow: hidden;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  white-space: nowrap;
}.sec-grad{
  --tw-gradient-from: #07544F var(--tw-gradient-from-position);
  --tw-gradient-stops: var(--tw-gradient-from), #0A6B64 var(--tw-gradient-via-position), var(--tw-gradient-to);
  --tw-gradient-to: #07544F var(--tw-gradient-to-position);
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
  padding-bottom: 2.75rem;
  padding-top: 2.75rem;
}
@media (min-width: 768px) {
  .sec-grad {
    padding-bottom: 5rem;
    padding-top: 5rem;
  }
}.card-col-lg{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  height: 100%;
  padding: 1.5rem;
  position: relative;
}
@media (min-width: 768px) {
  .card-col-lg {
    padding: 2rem;
  }
}.card-tt-lg{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  /* 原本是 display:flex（无任何 flex 子项需求），会让 <h3> 里的文字变成 flex item，
     从而脱离父级 .card-pad-lg 的 text-align:center → 图标和描述居中、标题却左对齐。
     这些卡片（核心优势 8 张）标题都是纯文字，恢复块级即可跟随居中。 */
  display: block;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5rem;
  /* 原来写的是 margin-top:0.75rem 紧跟 margin:0，后者把前者清零 →
     移动端图标与标题间距变成 0（桌面靠 @media 里的 margin-top:1rem 侥幸正确）。 */
  margin-top: 0.75rem;
  margin-bottom: 0;}
@media (min-width: 768px) {
  .card-tt-lg {
    font-size: 1.125rem;
    line-height: 1.75rem;
    margin-top: 1rem;
  }
}.quote-card{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  height: 100%;
  padding: 1.25rem;
}
@media (min-width: 768px) {
  .quote-card {
    padding: 1.5rem;
  }
}
/* 评价卡的引号图标：模板写的是 <i class="ic-shield-check">（没带颜色类，
   而全站其他图标都带 text-brand），于是继承了正文墨色 #0A0A0A，
   在一堆品牌绿图标里显得突兀。字形其实是「一对引号」（见 icons 字形对照），
   纯装饰用途，用品牌绿 25% 淡化，不抢正文。 */
.quote-card > i {
  color: rgb(10 107 100 / 0.25);
}.stat-num{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 2.25rem;
}
@media (min-width: 640px) {
  .stat-num {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}
@media (min-width: 768px) {
  .stat-num {
    font-size: 3rem;
    line-height: 1;
  }
}.meta-lbl-2{
  align-items: center;
  display: flex;
  gap: 0.375rem;
  margin-top: 0.375rem;
}.quote-cite-3{
  border-top-width: 1px;
  font-size: 0.75rem;
  line-height: 1rem;
  margin-top: 1rem;
  padding-top: 1rem;
}.quote-box-2{
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  font-size: 15px;
  line-height: 2rem;
  margin-top: 1rem;
}.tx-xs{
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  line-height: 1rem;
  margin-bottom: 0.75rem;
}.tx-mt{
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  line-height: 1.25rem;
  margin-top: 0.5rem;
}.note-sm{
  font-size: 0.875rem;
  line-height: 1.5rem;
  margin-top: 0.625rem;
}.card-tt{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-weight: 700;
  margin-top: 1rem;
}.quote-cite{
  border-top-width: 1px;
  margin-top: 1.5rem;
  padding-top: 1.25rem;
}.sec-white{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-bottom: 3rem;
  padding-top: 3rem;
}
@media (min-width: 768px) {
  .sec-white {
    padding-bottom: 5rem;
    padding-top: 5rem;
  }
}.step-box{
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  position: relative;
  text-align: center;
}.ic-md-center{
  font-size: 1.5rem;
  line-height: 2rem;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .ic-md-center {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }
}.ic-lg{
  color: rgba(10, 107, 100, 0.3);
  font-size: 1.875rem;
  line-height: 2.25rem;
}.tx-mt-xs{
  font-size: 0.75rem;
  line-height: 1rem;
  margin-top: 0.25rem;
}.input{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  flex: 1 1 0%;
  font-size: 0.875rem;
  line-height: 1.25rem;
  min-width: 0px;
  outline: transparent solid 2px;
  outline-offset: 2px;
  padding-bottom: 0.75rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.75rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%;
}.input:focus{
  --tw-border-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
}.btn-captcha{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  cursor: pointer;
  flex-shrink: 0;
  height: auto;
  overflow: hidden;
  position: relative;
  transition-duration: 150ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 130px;
}.btn-captcha:hover{
  border-color: rgba(10, 107, 100, 0.6);
}.btn-captcha:active{
  --tw-scale-x: 0.98;
  --tw-scale-y: 0.98;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}.badge-muted{
  --tw-text-opacity: 1;
  align-items: center;
  bottom: 0.125rem;
  color: rgb(100 116 139 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 10px;
  gap: 0.25rem;
  opacity: 0.7;
  position: absolute;
  right: 0.25rem;
  transition-duration: 150ms;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-arrow{
  align-items: center;
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.5rem;
  line-height: 1.25rem;
  margin-top: 1rem;
  position: relative;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-arrow::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.btn-arrow:hover{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
}.btn-submit{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  font-weight: 600;
  padding-bottom: 0.875rem;
  padding-top: 0.875rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%;
}.btn-submit:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(7 84 79 / var(--tw-bg-opacity, 1));
}.btn-submit:disabled{
  opacity: 0.6;
}.row-start-pad{
  align-items: flex-start;
  background-color: rgba(228, 242, 240, 0.5);
  border-bottom-width: 1px;
  display: flex;
  gap: 0.75rem;
  padding-bottom: 1rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 1rem;
}
@media (min-width: 768px) {
  .row-start-pad {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}.hero-intro{
  color: rgba(255, 255, 255, 0.85);
  font-size: 0.875rem;
  line-height: 1.75rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0.75rem;
  max-width: 42rem;
}
@media (min-width: 768px) {
  .hero-intro {
    font-size: 1rem;
    line-height: 1.5rem;
    margin-top: 1rem;
  }
}.chip{
  --tw-text-opacity: 1;
  background-color: rgba(255, 255, 255, 0.15);
  border-radius: 9999px;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  font-size: 11px;
  padding-bottom: 0.375rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.375rem;
}
@media (min-width: 768px) {
  .chip {
    font-size: 0.75rem;
    line-height: 1rem;
  }
}.tt-light{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.375;
  text-wrap: balance;
}
@media (min-width: 640px) {
  .tt-light {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }
}
@media (min-width: 768px) {
  .tt-light {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}.hero-box{
  background-color: rgba(255, 255, 255, 0.7);
  height: 3px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0.75rem;
  width: 3rem;
}
@media (min-width: 768px) {
  .hero-box {
    margin-top: 1rem;
  }
}.li-row-2{
  --tw-text-opacity: 1;
  align-items: flex-start;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 0.875rem;
  gap: 0.625rem;
  line-height: 1.25rem;
}.li-start{
  align-items: flex-start;
  display: flex;
  gap: 0.75rem;
}.row-tight{
  align-items: stretch;
  display: flex;
  gap: 0.75rem;
}.ic-captcha{
  height: 100%;
  width: 100%;
}.form-note{
  font-size: 0.75rem;
  line-height: 1rem;
  text-align: center;
}.ic-xs-3{
  font-size: 0.75rem;
  line-height: 1rem;
  transition-duration: 150ms;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-q{
  --tw-text-opacity: 1;
  align-items: center;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.75rem;
  justify-content: space-between;
  line-height: 1.25rem;
  padding-bottom: 0.875rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.875rem;
  text-align: left;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%;
}.btn-q:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
}
@media (min-width: 768px) {
  .btn-q {
    font-size: 1rem;
    gap: 1rem;
    line-height: 1.5rem;
    padding-bottom: 1rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    padding-top: 1rem;
  }
}.btn-ic-sm{
  --tw-bg-opacity: 1;
  align-items: center;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-color: rgba(10, 107, 100, 0.4);
  border-radius: calc(var(--radius) - 2px);
  display: inline-flex;
  flex-shrink: 0;
  font-size: 12px;
  font-weight: 600;
  gap: 0.375rem;
  margin-top: 0.5rem;
  padding-bottom: 0.375rem;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  padding-top: 0.375rem;
  position: relative;
}.btn-ic-sm::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.btn-ic-sm:hover{
  --tw-bg-opacity: 1;
  --tw-border-opacity: 1;
  background-color: rgb(228 242 240 / var(--tw-bg-opacity, 1));
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
}.btn-ic-sm:active{
  --tw-scale-x: 0.96;
  --tw-scale-y: 0.96;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}.btn-ic-pad{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  align-items: center;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: 9999px;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: inline-flex;
  font-size: 12px;
  font-weight: 600;
  min-height: 44px;
  padding-bottom: 0.375rem;
  padding-left: 0.875rem;
  padding-right: 0.875rem;
  padding-top: 0.375rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-ic-pad:hover{
  --tw-bg-opacity: 1;
  --tw-border-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  color: rgb(10 107 100 / var(--tw-text-opacity, 1));
}
@media (min-width: 768px) {
  .btn-ic-pad {
    min-height: 0px;
  }
}.btn-pad{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  flex-shrink: 0;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.25rem;
  min-height: 44px;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.5rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  white-space: nowrap;
}.btn-pad:hover{
  --tw-border-opacity: 1;
  --tw-text-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  color: rgb(10 107 100 / var(--tw-text-opacity, 1));
}
@media (min-width: 768px) {
  .btn-pad {
    min-height: 0px;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
}
  }
/* 百科分类切换标签：替代每处 14 个 Tailwind 工具类 + 条件类拼接 */
.bk-tab-row{
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-bottom: 1rem;
}
.bk-tab{
  border: 1px solid #d8dee4;
  border-radius: 0.375rem;
  background-color: #fff;
  color: #08483f;
  flex-shrink: 0;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.25rem;
  min-height: 2.75rem;
  padding: 0.5rem 1rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  white-space: nowrap;
}
.bk-tab:hover{
  border-color: #0A6B64;
  color: #0A6B64;
}
.bk-tab-on{
  background-color: #0A6B64;
  border-color: #0A6B64;
  color: #fff;
}
.bk-tab-on:hover{
  border-color: #0A6B64;
  color: #fff;
}
@media (min-width: 768px) {
  .bk-tab {
    min-height: 0;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}.bkcat-link{
  --tw-text-opacity: 1;
  align-items: center;
  border-radius: calc(var(--radius) - 2px);
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 0.875rem;
  gap: 0.5rem;
  justify-content: space-between;
  line-height: 1.25rem;
  padding-bottom: 0.5rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.5rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%;
}.bkcat-link:hover{
  --tw-text-opacity: 1;
  background-color: rgba(255, 255, 255, 0.1);
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}.btn-tile-lg{
  --tw-bg-opacity: 1;
  animation-duration: 300ms;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  border-top-color: transparent;
  border-top-width: 4px;
  display: block;
  height: 100%;
  padding: 1.5rem;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-tile-lg:hover{
  --tw-border-opacity: 1;
  --tw-translate-y: -0.375rem;
  border-top-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
@media (min-width: 768px) {
  .btn-tile-lg {
    padding: 2rem;
  }
}.btn-tile{
  --tw-bg-opacity: 1;
  animation-duration: 300ms;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 1.25rem;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-tile:hover{
  --tw-border-opacity: 1;
  --tw-translate-y: -0.375rem;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
@media (min-width: 768px) {
  .btn-tile {
    padding: 1.5rem;
  }
}.btn-start-pad{
  --tw-bg-opacity: 1;
  align-items: flex-start;
  animation-duration: 300ms;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  display: flex;
  gap: 1rem;
  height: 100%;
  padding: 1.25rem;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-start-pad:hover{
  --tw-border-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
}
@media (min-width: 768px) {
  .btn-start-pad {
    padding: 1.5rem;
  }
}.card-pad-lg-2{
  --tw-bg-opacity: 1;
  --tw-border-opacity: 1;
  animation-duration: 300ms;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  border-top-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  border-top-width: 4px;
  height: 100%;
  padding: 1.5rem;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.card-pad-lg-2:hover{
  --tw-translate-y: -0.375rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
@media (min-width: 768px) {
  .card-pad-lg-2 {
    padding: 2rem;
  }
}.row-between-pad{
  align-items: center;
  border-top-width: 1px;
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: space-between;
  margin-top: auto;
  padding-bottom: 0.875rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.875rem;
}
@media (min-width: 768px) {
  .row-between-pad {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}.tt-lg{
  --tw-text-opacity: 1;
  align-items: center;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: flex;
  flex-wrap: wrap;
  font-size: 1.125rem;
  font-weight: 700;
  gap: 0.5rem;
  line-height: 1.75rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.tt-base{
  --tw-text-opacity: 1;
  align-items: center;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: flex;
  flex-wrap: wrap;
  font-size: 1rem;
  font-weight: 700;
  gap: 0.5rem;
  line-height: 1.75rem;
}
@media (min-width: 768px) {
  .tt-base {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}.btn-start-pad-2{
  --tw-bg-opacity: 1;
  align-items: flex-start;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  display: flex;
  gap: 0.875rem;
  padding: 1rem;
  transition-duration: 150ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-start-pad-2:hover{
  --tw-border-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
}
@media (min-width: 768px) {
  .btn-start-pad-2 {
    padding: 1.25rem;
  }
}.svc-card{
  --tw-bg-opacity: 1;
  animation-duration: 300ms;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  height: 100%;
  padding: 1.25rem;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.svc-card:hover{
  --tw-border-opacity: 1;
  --tw-translate-y: -0.375rem;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
@media (min-width: 768px) {
  .svc-card {
    padding: 1.5rem;
  }
}.btn-arrow-4{
  align-items: center;
  color: rgba(255, 255, 255, 0.85);
  display: inline-flex;
  min-height: 44px;
  text-underline-offset: 2px;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-arrow-4:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  text-decoration-line: underline;
}
@media (min-width: 768px) {
  .btn-arrow-4 {
    min-height: 0px;
  }
}.btn-detail{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  font-weight: 600;
  padding-bottom: 0.75rem;
  padding-left: 1.75rem;
  padding-right: 1.75rem;
  padding-top: 0.75rem;
  text-align: center;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-detail:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(7 84 79 / var(--tw-bg-opacity, 1));
}.meta-lbl-3{
  --tw-bg-opacity: 1;
  align-items: center;
  background-color: rgb(228 242 240 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  display: flex;
  flex-shrink: 0;
  height: 2.5rem;
  justify-content: center;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 2.5rem;
}.col-overflow-hidden{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  scroll-margin-top: 6rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-arrow-3{
  align-items: center;
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.375rem;
  line-height: 1.25rem;
  margin-top: 1.25rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-arrow-3:hover{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
}.label-sm-iflex{
  --tw-text-opacity: 1;
  align-items: center;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.375rem;
  line-height: 1.25rem;
  margin-top: 1.25rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.link-sm{
  align-items: center;
  border-top-width: 1px;
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.5rem;
  line-height: 1.25rem;
  margin-top: 1.25rem;
  padding-top: 1rem;
}.col-mt{
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-top: 1.5rem;
}
@media (min-width: 640px) {
  .col-mt {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1rem;
  }
}
@media (min-width: 768px) {
  .col-mt {
    margin-top: 1.75rem;
  }
}.tx-lead{
  font-size: 0.875rem;
  line-height: 1.75rem;
  padding-bottom: 1rem;
  padding-left: 2.25rem;
  padding-right: 1rem;
}
@media (min-width: 768px) {
  .tx-lead {
    padding-bottom: 1.25rem;
    padding-left: 2.75rem;
    padding-right: 1.25rem;
  }
}.card-col{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 1.5rem;
  position: relative;
}
@media (min-width: 768px) {
  .card-col {
    padding: 1.75rem;
  }
}.btn-arrow-2{
  align-items: center;
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.5rem;
  line-height: 1.25rem;
  position: relative;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-arrow-2::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.btn-arrow-2:hover{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
}.bullet-sm{
  --tw-bg-opacity: 1;
  align-items: center;
  background-color: rgb(228 242 240 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  display: flex;
  flex-shrink: 0;
  height: 2.25rem;
  justify-content: center;
  width: 2.25rem;
}.btn-consult{
  border-radius: calc(var(--radius) - 2px);
  font-weight: 600;
  padding-bottom: 0.75rem;
  padding-left: 1.75rem;
  padding-right: 1.75rem;
  padding-top: 0.75rem;
  text-align: center;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-consult:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(228 242 240 / var(--tw-bg-opacity, 1));
}.tx-12{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 12px;
  font-weight: 600;
  gap: 0.375rem;
  line-height: 1.25rem;
}.bullet-xs{
  align-items: center;
  display: flex;
  flex-shrink: 0;
  height: 1.25rem;
  justify-content: center;
  width: 0.75rem;
}.bullet-sm-c{
  align-items: center;
  display: flex;
  flex-shrink: 0;
  height: 1.75rem;
  justify-content: center;
  width: 1rem;
}.box-absolute{
  background-color: rgba(10, 107, 100, 0.4);
  height: 2px;
  position: absolute;
  top: 1.75rem;
  width: calc(100% - 72px);
}
@media (min-width: 768px) {
  .box-absolute {
    display: block;
  }
}.def-value{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 13px;
  font-weight: 600;
  line-height: 1.25rem;
  margin-top: 0.25rem;
  word-break: break-all;
}.tt-md{
  --tw-text-opacity: 1;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: -webkit-box;
  font-weight: 700;
  line-height: 1.5rem;
  margin-top: 0.5rem;
  overflow: hidden;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  margin: 0;}.svc-intro{
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  font-size: 15px;
  line-height: 2rem;
  margin-top: 0.75rem;
}
@media (min-width: 768px) {
  .svc-intro {
    font-size: 1rem;
    line-height: 1.5rem;
    margin-top: 1rem;
  }
}.grid-2col-mt{
  display: grid;
  gap: 0.625rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-top: 1rem;
}
@media (min-width: 640px) {
  .grid-2col-mt {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}
@media (min-width: 768px) {
  .grid-2col-mt {
    margin-top: 1.25rem;
  }
}.title-xl-lsnug-dark{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.375;
}
@media (min-width: 640px) {
  .title-xl-lsnug-dark {
    font-size: 1.5rem;
    line-height: 2rem;
  }
}
@media (min-width: 768px) {
  .title-xl-lsnug-dark {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }
}.tx-12-mt-2{
  display: flex;
  font-size: 12px;
  gap: 0.375rem;
  line-height: 1.25rem;
  margin-top: 0.25rem;
}.case-card-desc-2{
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  display: block;
  font-size: 12px;
  line-height: 1.5rem;
  margin-top: 0.375rem;
  overflow: hidden;
}.rank-tt-2{
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  display: block;
  font-size: 13px;
  line-height: 1.5rem;
  margin-top: 0.375rem;
  overflow: hidden;
}.tx-12-mt{
  display: flex;
  font-size: 12px;
  gap: 0.375rem;
  line-height: 1.25rem;
  margin-top: 0.375rem;
}.quote-box-3{
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  flex: 1 1 0%;
  font-size: 15px;
  line-height: 2rem;
  margin-top: 1rem;
}.cell-surface{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  margin-top: 1rem;
  padding-bottom: 0.75rem;
  padding-left: 0.875rem;
  padding-right: 0.875rem;
  padding-top: 0.75rem;
}.btn-full{
  --tw-bg-opacity: 1;
  aspect-ratio: 16 / 10;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  display: block;
  overflow: hidden;
  position: relative;
}.ic-img{
  animation-duration: 500ms;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  transition-duration: 500ms;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%;
}.card-white{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  padding: 1.25rem;
}
@media (min-width: 768px) {
  .card-white {
    padding: 1.5rem;
  }
}.faq-q-inner-2{
  align-items: flex-start;
  display: flex;
  gap: 0.625rem;
}
@media (min-width: 768px) {
  .faq-q-inner-2 {
    gap: 0.75rem;
  }
}.title-base-dark{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5rem;
  margin-bottom: 1rem;
}.label-xs-iflex{
  align-items: center;
  display: inline-flex;
  font-size: 0.75rem;
  gap: 0.375rem;
  line-height: 1rem;
}.defval-dark{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-weight: 600;
  margin-top: 0.25rem;
  overflow-wrap: break-word;
}.list-flex-2{
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.625rem;
}.note-sm-3{
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  font-size: 0.875rem;
  line-height: 1.5rem;
  margin-top: 0.75rem;
  overflow: hidden;
}.tx-sm-mt{
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  line-height: 1.75rem;
  margin-top: 0.875rem;
}.list-flex{
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 1rem;
}.cell-surface-2{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  padding-bottom: 0.625rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.625rem;
}.card-tt-2{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.75rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-full-2{
  border-radius: var(--radius);
  display: block;
  overflow: hidden;
}.note-sm-2{
  font-size: 0.875rem;
  line-height: 1.5rem;
  margin-top: 0.75rem;
}.tx-12-mt-3{
  font-size: 12px;
  line-height: 1.5rem;
  margin-top: 1rem;
}.quote-cite-2{
  border-top-width: 1px;
  margin-top: 1.5rem;
  padding-top: 1.25rem;
}.bkcat-num{
  --tw-numeric-spacing: tabular-nums;
  color: rgba(255, 255, 255, 0.85);
  font-size: 11px;
  font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
}.ic-3xl{
  font-size: 1.875rem;
  line-height: 2.25rem;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .ic-3xl {
    margin-bottom: 1.25rem;
  }
}.faq-q-mark-2{
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.25rem;
  margin-top: 0.125rem;
}.ic-xl-mt{
  flex-shrink: 0;
  font-size: 1.25rem;
  line-height: 1.75rem;
  margin-top: 0.125rem;
}.tx-xs-2{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1rem;
}.label-xs{
  font-size: 0.75rem;
  line-height: 1rem;
  margin-left: 0.5rem;
}.area-meta{
  font-size: 12px;
  margin-top: 0.25rem;
}.tx-13{
  font-size: 13px;
  margin-top: 0.25rem;
}.tx-mt-xs-2{
  font-size: 0.75rem;
  line-height: 1rem;
  margin-top: 0.25rem;
}.box-inner{
  padding: 1.25rem;
}
@media (min-width: 768px) {
  .box-inner {
    padding: 1.5rem;
  }
}.ic-3xl-2{
  color: rgba(10, 107, 100, 0.3);
  font-size: 1.875rem;
  line-height: 2.25rem;
}.area-case-num{
  --tw-numeric-spacing: tabular-nums;
  font-size: 11px;
  font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
}.def-text-flush{
  font-size: 13px;
  line-height: 1.5rem;
}.ic-2xl{
  flex-shrink: 0;
  font-size: 1.5rem;
  line-height: 2rem;
}.badge-glass{
  --tw-text-opacity: 1;
  align-items: center;
  background-color: rgba(255, 255, 255, 0.9);
  border-radius: 0.25rem;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: inline-flex;
  font-size: 0.75rem;
  gap: 0.25rem;
  line-height: 1rem;
  padding-bottom: 0.375rem;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  padding-top: 0.375rem;
  position: absolute;
  right: 0.75rem;
  top: 0.75rem;
}.btn-filter{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: 9999px;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  flex-shrink: 0;
  font-size: 0.875rem;
  line-height: 1.25rem;
  min-height: 44px;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.5rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  white-space: nowrap;
}.btn-filter:hover{
  --tw-border-opacity: 1;
  border-color: rgb(7 84 79 / var(--tw-border-opacity, 1));
}
@media (min-width: 768px) {
  .btn-filter {
    min-height: 0px;
  }
}.case-card-col{
  --tw-bg-opacity: 1;
  animation-duration: 300ms;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.case-card-col:hover{
  --tw-border-opacity: 1;
  --tw-translate-y: -0.375rem;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}.area-link{
  align-items: center;
  border-radius: calc(var(--radius) - 2px);
  display: flex;
  gap: 0.5rem;
  justify-content: space-between;
  min-height: 44px;
  padding-bottom: 0.5rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.5rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.area-link:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
}.badge-light{
  --tw-text-opacity: 1;
  background-color: rgba(10, 107, 100, 0.9);
  border-radius: 0.25rem;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  font-size: 0.75rem;
  left: 0.75rem;
  line-height: 1rem;
  padding-bottom: 0.375rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.375rem;
  position: absolute;
  top: 0.75rem;
}.bkcat-link-2{
  align-items: center;
  border-radius: calc(var(--radius) - 2px);
  display: flex;
  gap: 0.5rem;
  justify-content: space-between;
  padding-bottom: 0.5rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.5rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.bkcat-link-2:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
}.case-meta-row{
  align-items: flex-start;
  border-bottom-width: 1px;
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
  padding-bottom: 0.75rem;
}.case-meta-row:last-child{
  border-width: 0px;
  padding-bottom: 0px;
}.btn-arrow-5{
  align-items: center;
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.375rem;
  line-height: 1.25rem;
  position: relative;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-arrow-5::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.btn-arrow-5:hover{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
}.feat-tt{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(7 84 79 / var(--tw-bg-opacity, 1));
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.25rem;
  padding-bottom: 0.625rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.625rem;
}.title-sm-dark{
  --tw-text-opacity: 1;
  align-items: center;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 0.875rem;
  font-weight: 700;
  gap: 0.5rem;
  line-height: 1.25rem;
}.grid-trio{
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
}
@media (min-width: 768px) {
  .grid-trio {
    gap: 1.5rem;
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}
@media (min-width: 1024px) {
  .grid-trio {
    grid-template-columns: repeat(3, minmax(0px, 1fr));
  }
}.row-between-c{
  align-items: center;
  border-top-width: 1px;
  display: flex;
  justify-content: space-between;
  margin-top: 1.25rem;
  padding-top: 1rem;
}.col{
  display: flex;
  flex: 1 1 0%;
  flex-direction: column;
  padding: 1.25rem;
}
@media (min-width: 768px) {
  .col {
    padding: 1.5rem;
  }
}.def-term{
  align-items: center;
  display: flex;
  font-size: 11px;
  font-weight: 600;
  gap: 0.375rem;
}.img-cover-anim{
  animation-duration: 500ms;
  height: 100%;
  object-fit: cover;
  transition-duration: 500ms;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%;
}.cell-strong{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-weight: 600;
  padding-bottom: 1rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 1rem;
  vertical-align: top;
}.cell-ink{
  --tw-text-opacity: 1;
  background-color: rgba(228, 242, 240, 0.4);
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  padding-bottom: 1rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 1rem;
  vertical-align: top;
}.frame{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  overflow: hidden;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.reveal-fast{
  animation-duration: 300ms;
  animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
  display: grid;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}.def-text-dark{
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  font-size: 13px;
  line-height: 1.5rem;
  margin-top: 0.25rem;
}.case-card-txt{
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  font-size: 0.875rem;
  line-height: 1.5rem;
  margin-top: 0.75rem;
  overflow: hidden;
}.crumb-link{
  flex-shrink: 0;
  position: relative;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.crumb-link::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.crumb-link:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}.ic-xs-4{
  animation-duration: 300ms;
  flex-shrink: 0;
  font-size: 0.75rem;
  line-height: 1rem;
  transition-duration: 300ms;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.box-pad-2{
  background-color: rgba(228, 242, 240, 0.4);
  padding-bottom: 0.75rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.75rem;
}.col-2col{
  align-items: center;
  display: flex;
  flex-direction: column;
}.case-card-tt-2{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-weight: 700;
  line-height: 1.5rem;
}.frm-grid{
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
}.tx-xs-mt{
  font-size: 0.75rem;
  line-height: 1.5rem;
  margin-top: 0.75rem;
}.frame-card{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  overflow: hidden;
}.defval-ink{
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  font-weight: 500;
  text-align: right;
}.ic-mt-3{
  flex-shrink: 0;
  margin-top: 0.125rem;
}.case-card-biz{
  font-size: 0.75rem;
  line-height: 1rem;
  margin-top: 0.5rem;
}.bkcat-num-2{
  --tw-numeric-spacing: tabular-nums;
  font-size: 11px;
  font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
}.ic-mt-4{
  flex-shrink: 0;
  margin-top: 0.125rem;
}.li-start-pad{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  align-items: flex-start;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 0.875rem;
  gap: 0.625rem;
  line-height: 1.5rem;
  padding-bottom: 0.875rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.875rem;
}
@media (min-width: 768px) {
  .li-start-pad {
    padding-bottom: 1rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    padding-top: 1rem;
  }
}.btn-cta-2{
  --tw-text-opacity: 1;
  border-color: rgba(255, 255, 255, 0.6);
  border-radius: calc(var(--radius) - 2px);
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  font-weight: 600;
  padding-bottom: 0.875rem;
  padding-left: 2.5rem;
  padding-right: 2.5rem;
  padding-top: 0.875rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%;
}.btn-cta-2:hover{
  background-color: rgba(255, 255, 255, 0.15);
}
@media (min-width: 640px) {
  .btn-cta-2 {
    width: auto;
  }
}
@media (min-width: 768px) {
  .btn-cta-2 {
    padding-bottom: 1rem;
    padding-top: 1rem;
  }
}.btn-cta{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  font-weight: 600;
  padding-bottom: 0.875rem;
  padding-left: 2.5rem;
  padding-right: 2.5rem;
  padding-top: 0.875rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%;
}.btn-cta:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(228 242 240 / var(--tw-bg-opacity, 1));
}
@media (min-width: 640px) {
  .btn-cta {
    width: auto;
  }
}
@media (min-width: 768px) {
  .btn-cta {
    padding-bottom: 1rem;
    padding-top: 1rem;
  }
}.contact-lbl{
  --tw-bg-opacity: 1;
  align-items: center;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  display: flex;
  flex-shrink: 0;
  height: 2.5rem;
  justify-content: center;
  width: 2.5rem;
}
@media (min-width: 768px) {
  .contact-lbl {
    height: 2.75rem;
    width: 2.75rem;
  }
}.tl-date{
  --tw-bg-opacity: 1;
  --tw-ring-color: rgb(10 107 100 / 0.2);
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: 9999px;
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  flex-shrink: 0;
  height: 0.875rem;
  margin-top: 0.375rem;
  width: 0.875rem;
}
@media (min-width: 768px) {
  .tl-date {
    height: 1rem;
    width: 1rem;
  }
}.badge-light-2{
  --tw-text-opacity: 1;
  background-color: rgba(10, 107, 100, 0.9);
  border-radius: 0.25rem;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  font-size: 0.75rem;
  left: 0.75rem;
  line-height: 1rem;
  padding-bottom: 0.375rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.375rem;
  position: absolute;
  top: 0.75rem;
}.card-row{
  --tw-bg-opacity: 1;
  align-items: center;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  display: flex;
  flex: 1 1 0%;
  gap: 0.75rem;
  padding: 1rem;
}
@media (min-width: 768px) {
  .card-row {
    gap: 1rem;
    padding: 1.5rem;
  }
}.adv-card{
  --tw-bg-opacity: 1;
  animation-duration: 300ms;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  height: 100%;
  padding: 1.25rem;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.adv-card:hover{
  --tw-translate-y: -0.375rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
@media (min-width: 768px) {
  .adv-card {
    padding: 1.75rem;
  }
}.office-card{
  --tw-bg-opacity: 1;
  --tw-border-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  border-top-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  border-top-width: 4px;
  height: 100%;
  padding: 1.5rem;
}.price-note{
  --tw-bg-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: 9999px;
  flex-shrink: 0;
  height: 0.375rem;
  margin-top: 0.5rem;
  width: 0.375rem;
}.cta-head{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.375;
}
@media (min-width: 640px) {
  .cta-head {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }
}
@media (min-width: 768px) {
  .cta-head {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}.li-ic-2{
  --tw-text-opacity: 1;
  align-items: center;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 0.875rem;
  gap: 0.5rem;
  line-height: 1.25rem;
}.li-row-3{
  --tw-text-opacity: 1;
  align-items: flex-start;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 0.875rem;
  gap: 0.5rem;
  line-height: 1.25rem;
}.flow-grid{
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
}
@media (min-width: 768px) {
  .flow-grid {
    gap: 1.5rem;
    grid-template-columns: repeat(3, minmax(0px, 1fr));
  }
}.tx-sm-mt-2{
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  line-height: 1.75rem;
  margin-top: 0.375rem;
}
@media (min-width: 768px) {
  .tx-sm-mt-2 {
    font-size: 1rem;
    line-height: 1.5rem;
  }
}.card-tt-lg-2{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5rem;
}
@media (min-width: 768px) {
  .card-tt-lg-2 {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}.tl-txt{
  background-color: rgba(10, 107, 100, 0.3);
  flex: 1 1 0%;
  margin-bottom: 0.25rem;
  margin-top: 0.25rem;
  width: 2px;
}
@media (min-width: 768px) {
  .sec-white {
    padding-bottom: 5rem;
    padding-top: 5rem;
  }
}.row-base{
  display: flex;
  gap: 1rem;
}
@media (min-width: 768px) {
  .row-base {
    gap: 1.25rem;
  }
}.list-mt{
  border-top-width: 1px;
  margin-top: 1rem;
  padding-top: 1rem;
}.box-pad-b{
  min-width: 0px;
  padding-bottom: 2rem;
}
@media (min-width: 768px) {
  .box-pad-b {
    padding-bottom: 2.5rem;
  }
}.sec-surface{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  padding-bottom: 3rem;
  padding-top: 3rem;
}
@media (min-width: 768px) {
  .sec-surface {
    padding-bottom: 5rem;
    padding-top: 5rem;
  }
}.sec-surface-lg{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  padding-bottom: 3.5rem;
  padding-top: 3.5rem;
}
@media (min-width: 768px) {
  .sec-surface-lg {
    padding-bottom: 6rem;
    padding-top: 6rem;
  }
}.sec-white-lg{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-bottom: 3.5rem;
  padding-top: 3.5rem;
}
@media (min-width: 768px) {
  .sec-white-lg {
    padding-bottom: 6rem;
    padding-top: 6rem;
  }
}.adv-lbl{
  flex-shrink: 0;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.25rem;
}.area-name{
  font-size: 11px;
  margin-left: 0.25rem;
}.area-name-2{
  font-size: 11px;
  margin-left: 0.25rem;
}.crumb-sep{
  flex-shrink: 0;
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}.crumb-ic{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  flex-shrink: 0;
}.btn-msg{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  align-items: center;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.5rem;
  justify-content: center;
  line-height: 1.25rem;
  margin-top: 1.25rem;
  min-height: 44px;
  padding-bottom: 0.625rem;
  padding-top: 0.625rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-msg:hover{
  background-color: rgba(10, 107, 100, 0.1);
}
@media (min-width: 768px) {
  .btn-msg {
    min-height: 0px;
  }
}.btn-full-3{
  --tw-bg-opacity: 1;
  animation-duration: 300ms;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  display: block;
  height: 100%;
  overflow: hidden;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-full-3:hover{
  --tw-translate-y: -0.375rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}.btn-quote{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.25rem;
  min-height: 44px;
  padding-bottom: 0.625rem;
  padding-top: 0.625rem;
}.btn-quote:active{
  opacity: 0.85;
}.cta-intro{
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  line-height: 1.75rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1rem;
  max-width: 42rem;
}
@media (min-width: 768px) {
  .cta-intro {
    font-size: 1rem;
    line-height: 1.5rem;
    margin-top: 1.25rem;
  }
}.bullet-light{
  align-items: center;
  color: rgba(255, 255, 255, 0.7);
  display: flex;
  flex-shrink: 0;
  height: 1.5rem;
  justify-content: center;
  width: 0.75rem;
}.grid-2col-2{
  display: grid;
  gap: 0.5rem;
  grid-template-columns: 76px 1fr;
  padding-bottom: 0.875rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.875rem;
}
@media (min-width: 768px) {
  .grid-2col-2 {
    grid-template-columns: 112px 1fr;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}.btn-full-4{
  animation-duration: 300ms;
  border-radius: var(--radius);
  display: block;
  height: 100%;
  overflow: hidden;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-full-4:hover{
  --tw-translate-y: -0.375rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}.area-card{
  --tw-bg-opacity: 1;
  --tw-border-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  border-top-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  border-top-width: 4px;
  height: 100%;
  padding: 1.5rem;
}
@media (min-width: 768px) {
  .area-card {
    padding: 1.75rem;
  }
}.cta-col{
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  justify-content: center;
  margin-top: 2.25rem;
}
@media (min-width: 640px) {
  .cta-col {
    flex-direction: row;
  }
}.card-grad{
  --tw-gradient-from: #07544F var(--tw-gradient-from-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
  --tw-gradient-to: #0A6B64 var(--tw-gradient-to-position);
  --tw-text-opacity: 1;
  background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));
  border-radius: var(--radius);
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  padding: 1.25rem;
}
@media (min-width: 768px) {
  .card-grad {
    padding: 1.5rem;
  }
}.card-pad-lg-3{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  height: 100%;
  padding: 1.5rem;
  text-align: center;
}
@media (min-width: 768px) {
  .card-pad-lg-3 {
    padding: 2rem;
  }
}.grid-duo{
  align-items: center;
  display: grid;
  gap: 1.5rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
}
@media (min-width: 768px) {
  .grid-duo {
    gap: 2.5rem;
  }
}
@media (min-width: 1024px) {
  .grid-duo {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}.grid-2col-img{
  align-items: center;
  display: grid;
  gap: 1.5rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
}
@media (min-width: 768px) {
  .grid-2col-img {
    gap: 2.5rem;
  }
}
@media (min-width: 1024px) {
  .grid-2col-img {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
  /* zigzag：偶数块把图片换到右列、文字换到左列 */
  .grid-2col-img > *:first-child {
    order: 2;
  }
}.contact-txt{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.5rem;
  margin-top: 0.25rem;
}
@media (min-width: 768px) {
  .contact-txt {
    font-size: 1rem;
    line-height: 1.5rem;
  }
}.side-quote{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  padding: 1.25rem;
  scroll-margin-top: 6rem;
}
@media (min-width: 768px) {
  .side-quote {
    padding: 1.5rem;
  }
}.title-dark{
  --tw-text-opacity: 1;
  align-items: center;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: flex;
  font-weight: 700;
  gap: 0.5rem;
}.meta-ic-txt-2{
  align-items: center;
  display: inline-flex;
  font-size: 0.75rem;
  gap: 0.375rem;
  line-height: 1rem;
  margin-top: 1rem;
}.grid-3col-mt{
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-top: 1.25rem;
}
@media (min-width: 640px) {
  .grid-3col-mt {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}.btn-tel{
  font-weight: 600;
  position: relative;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  word-break: break-all;
}.btn-tel::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.btn-tel:hover{
  color: rgba(255, 255, 255, 0.8);
}.reveal-lead{
  animation-duration: 500ms;
  animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
  margin-top: 2.5rem;
  text-align: center;
  transition-duration: 500ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}.tt-rule-2{
  --tw-bg-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  height: 3px;
  margin-top: 0.75rem;
  width: 3rem;
}
@media (min-width: 768px) {
  .tt-rule-2 {
    margin-top: 1rem;
  }
}.cta-box{
  background-color: rgba(255, 255, 255, 0.7);
  height: 3px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1.25rem;
  width: 3rem;
}.side-quote-tt{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5rem;
  margin-bottom: 0.25rem;
}.text-note-sm{
  color: rgba(255, 255, 255, 0.8);
  font-size: 13px;
  line-height: 1.5rem;
  margin-top: 0.375rem;
}.note-sm-4{
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  font-size: 0.875rem;
  line-height: 1.5rem;
  margin-top: 0.5rem;
  overflow: hidden;
}.note-sm-5{
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  font-size: 0.875rem;
  line-height: 1.5rem;
  margin-top: 0.75rem;
  overflow: hidden;
}.box-relative{
  --tw-bg-opacity: 1;
  aspect-ratio: 16 / 10;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  overflow: hidden;
  position: relative;
}.tx-lead-2{
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  font-size: 15px;
  line-height: 2rem;
}
@media (min-width: 768px) {
  .tx-lead-2 {
    font-size: 1rem;
    line-height: 1.5rem;
  }
}
@media (min-width: 768px) {
  .sec-surface {
    padding-bottom: 5rem;
    padding-top: 5rem;
  }
}.title-base{
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5rem;
}
@media (min-width: 768px) {
  .title-base {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}.box{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-bottom-width: 1px;
}
@media (min-width: 1024px) {
  .box {
    display: none;
  }
}.addr-txt{
  color: rgba(255, 255, 255, 0.85);
  line-height: 1.5rem;
  min-width: 0px;
}.text{
  color: var(--el-text-color-secondary);
  font-size: 14px;
  line-height: 1.5;
  margin: 0 0 8px;
}.row-compact{
  display: flex;
  gap: 0.625rem;
}.art-box{
  min-width: 0px;
}
@media (min-width: 1024px) {
  .art-box {
    grid-column: span 2 / span 2;
  }
}.list-mt-2{
  font-size: 13px;
  margin-top: 1.25rem;
}.ic-lg-center{
  font-size: 1.875rem;
  line-height: 2.25rem;
  margin-left: auto;
  margin-right: auto;
}.side-quote-txt{
  font-size: 0.75rem;
  line-height: 1rem;
  margin-bottom: 1rem;
}.btn-ghost{
  --tw-text-opacity: 1;
  align-items: center;
  border-radius: calc(var(--radius) - 2px);
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 13px;
  font-weight: 600;
  gap: 0.5rem;
  justify-content: center;
  margin-top: 1rem;
  min-height: 44px;
  padding-bottom: 0.5rem;
  padding-top: 0.5rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-ghost:hover{
  --tw-border-opacity: 1;
  --tw-text-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  color: rgb(10 107 100 / var(--tw-text-opacity, 1));
}
@media (min-width: 768px) {
  .btn-ghost {
    min-height: 0px;
  }
}.btn-page{
  --tw-text-opacity: 1;
  align-items: center;
  border-radius: calc(var(--radius) - 2px);
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: inline-flex;
  font-size: 0.875rem;
  gap: 0.375rem;
  height: 2.75rem;
  line-height: 1.25rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-page:hover{
  --tw-border-opacity: 1;
  --tw-text-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  color: rgb(10 107 100 / var(--tw-text-opacity, 1));
}.btn-page:disabled{
  opacity: 0.4;
}
@media (min-width: 768px) {
  .btn-page {
    height: 2.5rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }
}.input-box{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  line-height: 1.25rem;
  min-height: 6rem;
  outline: transparent solid 2px;
  outline-offset: 2px;
  padding-bottom: 0.75rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.75rem;
  resize: vertical;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%;
}.input-box:focus{
  --tw-border-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
}.filter-row{
  display: flex;
  gap: 0.625rem;
  margin-left: -1rem;
  margin-right: -1rem;
  overflow-x: auto;
  padding-bottom: 0.25rem;
  padding-left: 1rem;
  padding-right: 1rem;
  scrollbar-width: none;
}.filter-row::-webkit-scrollbar{
  display: none;
}
@media (min-width: 768px) {
  .filter-row {
    flex-wrap: wrap;
    margin-left: 0px;
    margin-right: 0px;
    overflow: visible;
    padding-left: 0px;
    padding-right: 0px;
  }
}.btn-more{
  --tw-text-opacity: 1;
  align-items: center;
  border-radius: calc(var(--radius) - 2px);
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: inline-flex;
  font-weight: 600;
  gap: 0.5rem;
  padding-bottom: 0.75rem;
  padding-left: 2rem;
  padding-right: 2rem;
  padding-top: 0.75rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-more:hover{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}.page-grid-2{
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 2.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 2.5rem;
  width: 100%;
}
@media (min-width: 640px) {
  .page-grid-2 {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .page-grid-2 {
    max-width: 768px;
    padding-bottom: 3.5rem;
    padding-top: 3.5rem;
  }
}
@media (min-width: 1024px) {
  .page-grid-2 {
    gap: 2.5rem;
    grid-template-columns: repeat(3, minmax(0px, 1fr));
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .page-grid-2 {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .page-grid-2 {
    max-width: 1536px;
  }
}.page-grid{
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 2.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 2.5rem;
  width: 100%;
}
@media (min-width: 640px) {
  .page-grid {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .page-grid {
    gap: 2.5rem;
    max-width: 768px;
    padding-bottom: 3.5rem;
    padding-top: 3.5rem;
  }
}
@media (min-width: 1024px) {
  .page-grid {
    grid-template-columns: repeat(3, minmax(0px, 1fr));
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .page-grid {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .page-grid {
    max-width: 1536px;
  }
}.nav-ic{
  --tw-text-opacity: 1;
  align-items: center;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 11px;
  margin-bottom: 1rem;
  overflow-x: auto;
  padding-bottom: 0.25rem;
  scrollbar-width: none;
  white-space: nowrap;
}.nav-ic::-webkit-scrollbar{
  display: none;
}
@media (min-width: 768px) {
  .nav-ic {
    font-size: 0.875rem;
    line-height: 1.25rem;
  }
}.btn-quote-2{
  align-items: center;
  border-radius: calc(var(--radius) - 2px);
  display: flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.5rem;
  justify-content: center;
  line-height: 1.25rem;
  min-height: 44px;
  padding-bottom: 0.625rem;
  padding-top: 0.625rem;
}.btn-quote-2:active{
  opacity: 0.8;
}.grid-2col-gap{
  align-items: center;
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  width: 100%;
}
@media (min-width: 640px) {
  .grid-2col-gap {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .grid-2col-gap {
    gap: 3rem;
    max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .grid-2col-gap {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .grid-2col-gap {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .grid-2col-gap {
    max-width: 1536px;
  }
}.btn-start-pad-3{
  --tw-bg-opacity: 1;
  align-items: flex-start;
  animation-duration: 300ms;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  display: flex;
  gap: 1rem;
  padding: 1rem;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-start-pad-3:hover{
  --tw-border-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
}.bullet-md{
  --tw-bg-opacity: 1;
  align-items: center;
  background-color: rgb(228 242 240 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  display: flex;
  flex-shrink: 0;
  height: 2.5rem;
  justify-content: center;
  width: 2.5rem;
}.nav-row{
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
  justify-content: center;
  margin-top: 2.5rem;
}
@media (min-width: 768px) {
  .nav-row {
    gap: 0.5rem;
  }
}.btn-arrow-6{
  align-items: center;
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.375rem;
  line-height: 1.25rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-arrow-6:hover{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
}.title-lg-dark{
  --tw-text-opacity: 1;
  border-left-width: 4px;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.75rem;
  padding-left: 0.75rem;
}
@media (min-width: 768px) {
  .title-lg-dark {
    font-size: 1.25rem;
    line-height: 1.75rem;
    padding-left: 1rem;
  }
}.title-xl-lsnug-light{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.375;
  text-wrap: balance;
}
@media (min-width: 640px) {
  .title-xl-lsnug-light {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }
}
@media (min-width: 768px) {
  .title-xl-lsnug-light {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}.tx-13-mt{
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
  font-size: 13px;
  line-height: 1.5rem;
  margin-top: 0.375rem;
}
@media (min-width: 768px) {
  .tx-13-mt {
    font-size: 1rem;
    line-height: 1.5rem;
    margin-top: 0.5rem;
  }
}.tx-lead-3{
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  font-size: 15px;
  line-height: 2rem;
  margin-top: 1.25rem;
}
@media (min-width: 768px) {
  .tx-lead-3 {
    font-size: 1rem;
    line-height: 1.5rem;
    margin-top: 1.5rem;
  }
}.card-white-xl{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  margin-top: 2rem;
  padding: 1.25rem;
}
@media (min-width: 768px) {
  .card-white-xl {
    margin-top: 2.5rem;
    padding: 2rem;
  }
}.area-stat{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: 0.25rem;
  font-size: 11px;
  font-weight: 600;
  padding-bottom: 0.125rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.125rem;
}.office-name{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: 0.25rem;
  font-size: 11px;
  font-weight: 600;
  padding-bottom: 0.125rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.125rem;
}.lbl-block{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: block;
  font-weight: 600;
  line-height: 1.5rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.row-between-2{
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: space-between;
}.lbl-block-clamp{
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  display: block;
  font-size: 0.875rem;
  line-height: 1.5rem;
  margin-top: 0.25rem;
  overflow: hidden;
}.label-xs-flex{
  align-items: center;
  display: flex;
  font-size: 0.75rem;
  gap: 0.375rem;
  line-height: 1rem;
  margin-top: 0.5rem;
}.tt-dark{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.375;
}
@media (min-width: 768px) {
  .tt-dark {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }
}.svc-cell{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  padding: 1.25rem;
}
@media (min-width: 768px) {
  .svc-cell {
    padding: 1.5rem;
  }
}.wrap-pad-sm{
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 1rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 1rem;
  width: 100%;
}
@media (min-width: 640px) {
  .wrap-pad-sm {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .wrap-pad-sm {
    max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .wrap-pad-sm {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .wrap-pad-sm {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .wrap-pad-sm {
    max-width: 1536px;
  }
}.page-num{
  align-items: center;
  display: flex;
  gap: 0.375rem;
}
@media (min-width: 768px) {
  .page-num {
    gap: 0.5rem;
  }
}.tt-base-2{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5rem;
  margin-bottom: 0.75rem;
}.tt-lg-2{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.75rem;
  margin-bottom: 0.25rem;
}.frm-grid-2{
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
}
@media (min-width: 768px) {
  .frm-grid-2 {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}.deflist{
  display: grid;
  gap: 0.625rem;
  grid-template-columns: repeat(3, minmax(0px, 1fr));
  text-align: center;
}.grid-2col-btn{
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0px, 1fr));
  margin-top: 0.75rem;
}.card-sm{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  padding: 1rem;
}
@media (min-width: 768px) {
  .card-sm {
    padding: 1.25rem;
  }
}.cell-head{
  font-weight: 600;
  padding-bottom: 1rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 1rem;
  text-align: left;
}.area-case-num-2{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.25rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.sec-brand{
  --tw-bg-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  padding-bottom: 3rem;
  padding-top: 3rem;
}
@media (min-width: 768px) {
  .sec-brand {
    padding-bottom: 5rem;
    padding-top: 5rem;
  }
}.case-info-card{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  padding: 1.5rem;
}.list-inline{
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}.ic-xs-5{
  display: inline;
  font-size: 0.75rem;
  line-height: 1rem;
  margin-right: 0.5rem;
}.area-name-3{
  font-size: 11px;
  font-weight: 400;
  margin-left: 0.25rem;
}.note-tiny{
  font-size: 13px;
  line-height: 1.5rem;
  margin-top: 0.625rem;
}.tx-12-mt-4{
  font-size: 12px;
  line-height: 1.5rem;
  margin-top: 0.75rem;
}.sec-intro-2{
  font-size: 0.875rem;
  line-height: 1.75rem;
  margin-top: 1rem;
}.crumb-link-2{
  position: relative;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.crumb-link-2::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.crumb-link-2:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}.tx-12-2{
  font-size: 12px;
  line-height: 1.5rem;
  margin-bottom: 1rem;
}.ic-rot{
  animation-duration: 300ms;
  font-size: 0.75rem;
  line-height: 1rem;
  transition-duration: 300ms;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}/* 链接末尾箭头：原写法 ic-arrow-right + ic-rot + group-hover:translate-x-1 三合一。
   字形码点与 .ic-arrow-right 相同（\e002），字号跟随 ic-rot（12px）。 */
.ic-arrow-link{
  font-size: 0.75rem;
  line-height: 1rem;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 300ms;
}
.ic-arrow-link::before{
  content: "\e002";
}
.btn-arrow-6:hover .ic-arrow-link{
  --tw-translate-x: 0.25rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}.img-cover{
  height: 100%;
  object-fit: cover;
  width: 100%;
}.art-card{
  min-width: 0px;
}
@media (min-width: 1024px) {
  .art-card {
    grid-column: span 2 / span 2;
  }
}.icp-txt{
  font-weight: 400;
  margin-left: 0.25rem;
}.tx-12-3{
  font-size: 12px;
  line-height: 1.5rem;
}.tx-xs-3{
  font-size: 0.75rem;
  line-height: 1rem;
  margin-bottom: 1.25rem;
}.btn-ic-sm-2{
  --tw-bg-opacity: 1;
  align-items: center;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-color: rgba(10, 107, 100, 0.4);
  border-radius: calc(var(--radius) - 2px);
  display: inline-flex;
  flex-shrink: 0;
  font-size: 11px;
  font-weight: 600;
  gap: 0.375rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.25rem;
  position: relative;
}.btn-ic-sm-2::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.btn-ic-sm-2:hover{
  --tw-bg-opacity: 1;
  --tw-border-opacity: 1;
  background-color: rgb(228 242 240 / var(--tw-bg-opacity, 1));
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
}.btn-ic-sm-2:active{
  --tw-scale-x: 0.96;
  --tw-scale-y: 0.96;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
@media (min-width: 640px) {
  .btn-ic-sm-2 {
    font-size: 12px;
    padding-bottom: 0.375rem;
    padding-left: 0.625rem;
    padding-right: 0.625rem;
    padding-top: 0.375rem;
  }
}.row-3{
  --tw-scroll-snap-strictness: mandatory;
  display: flex;
  gap: 1rem;
  margin-left: -1rem;
  margin-right: -1rem;
  margin-top: 1.25rem;
  overflow-x: auto;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  scroll-snap-type: x var(--tw-scroll-snap-strictness);
  scrollbar-width: none;
}.row-3::-webkit-scrollbar{
  display: none;
}
@media (min-width: 768px) {
  .row-3 {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: repeat(3, minmax(0px, 1fr));
    margin-left: 0px;
    margin-right: 0px;
    overflow: visible;
    padding-left: 0px;
    padding-right: 0px;
    scroll-snap-type: none;
  }
}.btn-cta-lg-3{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  align-items: center;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.5rem;
  justify-content: center;
  line-height: 1.25rem;
  min-height: 44px;
  padding-bottom: 0.625rem;
  padding-left: 2rem;
  padding-right: 2rem;
  padding-top: 0.625rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-cta-lg-3:hover{
  --tw-border-opacity: 1;
  --tw-text-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  color: rgb(10 107 100 / var(--tw-text-opacity, 1));
}
@media (min-width: 768px) {
  .btn-cta-lg-3 {
    min-height: 0px;
  }
}.btn-ic-sm-3{
  --tw-bg-opacity: 1;
  align-items: center;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-color: rgba(10, 107, 100, 0.4);
  border-radius: calc(var(--radius) - 2px);
  border-width: 1px;
  display: inline-flex;
  flex-shrink: 0;
  font-size: 12px;
  font-weight: 600;
  gap: 0.375rem;
  margin-top: 0.125rem;
  padding-bottom: 0.375rem;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  padding-top: 0.375rem;
  position: relative;
  transition-property: color, background-color, border-color, transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
}.btn-ic-sm-3::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.btn-ic-sm-3:hover{
  --tw-bg-opacity: 1;
  --tw-border-opacity: 1;
  background-color: rgb(228 242 240 / var(--tw-bg-opacity, 1));
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
}.btn-ic-sm-3:active{
  --tw-scale-x: 0.96;
  --tw-scale-y: 0.96;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}.btn-q-2{
  --tw-text-opacity: 1;
  align-items: center;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.75rem;
  justify-content: space-between;
  line-height: 1.25rem;
  padding-bottom: 0.875rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.875rem;
  text-align: left;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%;
}.btn-q-2:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
}
@media (min-width: 768px) {
  .btn-q-2 {
    font-size: 1rem;
    line-height: 1.5rem;
    padding-bottom: 1rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    padding-top: 1rem;
  }
}.btn-ic-pad-2{
  --tw-backdrop-blur: blur(4px);
  --tw-text-opacity: 1;
  align-items: center;
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
  background-color: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.3);
  border-radius: 9999px;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  display: inline-flex;
  font-size: 0.875rem;
  gap: 0.5rem;
  line-height: 1.25rem;
  min-height: 44px;
  padding-bottom: 0.5rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 0.5rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-ic-pad-2:hover{
  background-color: rgba(255, 255, 255, 0.2);
}
@media (min-width: 768px) {
  .btn-ic-pad-2 {
    min-height: 0px;
  }
}.btn-quote-lg-2{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  align-items: center;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.5rem;
  justify-content: center;
  line-height: 1.25rem;
  min-height: 44px;
  padding-bottom: 0.625rem;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  padding-top: 0.625rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-quote-lg-2:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(7 84 79 / var(--tw-bg-opacity, 1));
}
@media (min-width: 768px) {
  .btn-quote-lg-2 {
    min-height: 0px;
  }
}.btn-msg-2{
  --tw-text-opacity: 1;
  align-items: center;
  border-radius: calc(var(--radius) - 2px);
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.5rem;
  justify-content: center;
  line-height: 1.25rem;
  margin-top: 1rem;
  min-height: 44px;
  padding-bottom: 0.625rem;
  padding-top: 0.625rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-msg-2:hover{
  --tw-border-opacity: 1;
  --tw-text-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  color: rgb(10 107 100 / var(--tw-text-opacity, 1));
}
@media (min-width: 768px) {
  .btn-msg-2 {
    min-height: 0px;
  }
}.cell-soft{
  background-color: rgba(228, 242, 240, 0.6);
  border-color: rgba(10, 107, 100, 0.2);
  border-radius: var(--radius);
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-top: 1.25rem;
  padding-bottom: 1rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 1rem;
}
@media (min-width: 640px) {
  .cell-soft {
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1rem;
  }
}
@media (min-width: 768px) {
  .cell-soft {
    padding-bottom: 1.25rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-top: 1.25rem;
  }
}.btn-more-4{
  --tw-text-opacity: 1;
  align-items: center;
  border-radius: calc(var(--radius) - 2px);
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.5rem;
  justify-content: center;
  line-height: 1.25rem;
  margin-top: 1.25rem;
  min-height: 44px;
  padding-bottom: 0.625rem;
  padding-top: 0.625rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-more-4:hover{
  --tw-border-opacity: 1;
  --tw-text-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  color: rgb(10 107 100 / var(--tw-text-opacity, 1));
}
@media (min-width: 768px) {
  .btn-more-4 {
    min-height: 0px;
  }
}.badge-grad{
  --tw-gradient-from: rgb(7 84 79 / 0.8) var(--tw-gradient-from-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
  --tw-gradient-to: transparent var(--tw-gradient-to-position);
  --tw-text-opacity: 1;
  background-image: linear-gradient(to top, var(--tw-gradient-stops));
  bottom: 0px;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  font-size: 0.75rem;
  font-weight: 500;
  left: 0px;
  line-height: 1rem;
  padding-bottom: 0.75rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 2rem;
  position: absolute;
  right: 0px;
  text-align: left;
  transition-duration: 150ms;
  transition-property: opacity;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.case-quote-card{
  align-items: center;
  background-color: rgba(228, 242, 240, 0.6);
  border-color: rgba(10, 107, 100, 0.2);
  border-radius: var(--radius);
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  justify-content: center;
  margin-top: 1.5rem;
  padding-bottom: 1rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 1rem;
  text-align: center;
}
@media (min-width: 640px) {
  .case-quote-card {
    flex-direction: row;
    gap: 0.75rem;
  }
}.row-2{
  display: flex;
  gap: 0.625rem;
  margin-bottom: 1.5rem;
  margin-left: -1rem;
  margin-right: -1rem;
  overflow-x: auto;
  padding-bottom: 0.25rem;
  padding-left: 1rem;
  padding-right: 1rem;
  scrollbar-width: none;
}.row-2::-webkit-scrollbar{
  display: none;
}
@media (min-width: 768px) {
  .row-2 {
    flex-wrap: wrap;
    margin-bottom: 2rem;
    margin-left: 0px;
    margin-right: 0px;
    overflow: visible;
    padding-left: 0px;
    padding-right: 0px;
  }
}.btn-ic-pad-3{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  align-items: center;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: 9999px;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: inline-flex;
  font-size: 12px;
  min-height: 44px;
  padding-bottom: 0.375rem;
  padding-left: 0.875rem;
  padding-right: 0.875rem;
  padding-top: 0.375rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-ic-pad-3:hover{
  --tw-border-opacity: 1;
  --tw-text-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  color: rgb(10 107 100 / var(--tw-text-opacity, 1));
}
@media (min-width: 768px) {
  .btn-ic-pad-3 {
    min-height: 0px;
  }
}.btn-filter-2{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  flex-shrink: 0;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.25rem;
  min-height: 44px;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.5rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  white-space: nowrap;
}
@media (min-width: 768px) {
  .btn-filter-2 {
    min-height: 0px;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}.btn-page-3{
  --tw-text-opacity: 1;
  align-items: center;
  border-radius: calc(var(--radius) - 2px);
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 0.875rem;
  height: 2.75rem;
  justify-content: center;
  line-height: 1.25rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 2.75rem;
}.btn-page-3:hover{
  --tw-border-opacity: 1;
  --tw-text-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  color: rgb(10 107 100 / var(--tw-text-opacity, 1));
}
@media (min-width: 768px) {
  .btn-page-3 {
    height: 2.5rem;
    width: 2.5rem;
  }
}.meta-lbl-4{
  --tw-ring-color: rgb(255 255 255 / 0.25);
  --tw-ring-inset: inset;
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  align-items: center;
  background-color: rgba(255, 255, 255, 0.15);
  border-radius: 0.75rem;
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);
  display: flex;
  flex-shrink: 0;
  height: 2.75rem;
  justify-content: center;
  width: 2.75rem;
}
@media (min-width: 768px) {
  .meta-lbl-4 {
    height: 3rem;
    width: 3rem;
  }
}
/* hero 左上角的玻璃徽标（44/48px 半透明白底 + 白色内描边）里放的是定位图标，
   但模板只写了 <i class="ic-location-dot">，既没带颜色类也没带字号类：
   → 颜色靠继承拿到正文墨色 #0A0A0A，字号走 icons.css 的默认 `:where()` 10px，
   在 48px 的深绿底方块里几乎看不见。这里补白色 + 20px（约方块的 42%）。
   `:where()` 特异性为 0，所以这条 (0,1,1) 能稳稳压住默认字号。 */
.meta-lbl-4 > i {
  color: #fff;
  font-size: 20px;
}.badge-glass-2{
  --tw-text-opacity: 1;
  align-items: center;
  background-color: rgba(255, 255, 255, 0.9);
  border-radius: 0.25rem;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: inline-flex;
  font-size: 0.75rem;
  gap: 0.25rem;
  line-height: 1rem;
  padding-bottom: 0.375rem;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  padding-top: 0.375rem;
  position: absolute;
  right: 0.75rem;
  top: 0.75rem;
}.nav-ic-2{
  --tw-text-opacity: 1;
  align-items: center;
  color: rgb(203 213 225 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 11px;
  gap: 0.5rem;
  margin-left: -0.25rem;
  margin-right: -0.25rem;
  overflow-x: auto;
  padding-bottom: 0.25rem;
  padding-left: 0.25rem;
  padding-right: 0.25rem;
  scrollbar-width: none;
  white-space: nowrap;
}.nav-ic-2::-webkit-scrollbar{
  display: none;
}
@media (min-width: 768px) {
  .nav-ic-2 {
    font-size: 0.75rem;
    line-height: 1rem;
  }
}.btn-cta-3{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  display: inline-block;
  font-weight: 600;
  padding-bottom: 0.875rem;
  padding-left: 2.5rem;
  padding-right: 2.5rem;
  padding-top: 0.875rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%;
}.btn-cta-3:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(7 84 79 / var(--tw-bg-opacity, 1));
}
@media (min-width: 640px) {
  .btn-cta-3 {
    width: auto;
  }
}
@media (min-width: 768px) {
  .btn-cta-3 {
    padding-bottom: 1rem;
    padding-top: 1rem;
  }
}.btn-quote-lg{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  align-items: center;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  display: inline-flex;
  font-weight: 600;
  gap: 0.5rem;
  justify-content: center;
  padding-bottom: 0.75rem;
  padding-left: 1.75rem;
  padding-right: 1.75rem;
  padding-top: 0.75rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-quote-lg:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(7 84 79 / var(--tw-bg-opacity, 1));
}.btn-cta-lg-5{
  --tw-text-opacity: 1;
  align-items: center;
  border-color: rgba(255, 255, 255, 0.6);
  border-radius: calc(var(--radius) - 2px);
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  display: inline-flex;
  font-weight: 600;
  gap: 0.5rem;
  justify-content: center;
  padding-bottom: 0.875rem;
  padding-left: 2rem;
  padding-right: 2rem;
  padding-top: 0.875rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-cta-lg-5:hover{
  background-color: rgba(255, 255, 255, 0.15);
}.btn-filter-3{
  --tw-bg-opacity: 1;
  --tw-border-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(7 84 79 / var(--tw-bg-opacity, 1));
  border-color: rgb(7 84 79 / var(--tw-border-opacity, 1));
  border-radius: 9999px;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  flex-shrink: 0;
  font-size: 0.875rem;
  line-height: 1.25rem;
  min-height: 44px;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.5rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  white-space: nowrap;
}
@media (min-width: 768px) {
  .btn-filter-3 {
    min-height: 0px;
  }
}.btn-page-2{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  align-items: center;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 0.875rem;
  height: 2.75rem;
  justify-content: center;
  line-height: 1.25rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 2.75rem;
}
@media (min-width: 768px) {
  .btn-page-2 {
    height: 2.5rem;
    width: 2.5rem;
  }
}.btn-msg-3{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  align-items: center;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.5rem;
  justify-content: center;
  line-height: 1.25rem;
  padding-bottom: 0.75rem;
  padding-top: 0.75rem;
}.btn-msg-3:active{
  opacity: 0.85;
}.btn-ic-pad-4{
  --tw-gradient-from: #07544F var(--tw-gradient-from-position);
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to);
  --tw-gradient-to: #0A6B64 var(--tw-gradient-to-position);
  --tw-text-opacity: 1;
  align-items: center;
  background-image: linear-gradient(to bottom right, var(--tw-gradient-stops));
  border-radius: var(--radius);
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  display: flex;
  gap: 1rem;
  padding: 1.25rem;
  transition-duration: 150ms;
  transition-property: box-shadow;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
@media (min-width: 768px) {
  .btn-ic-pad-4 {
    padding: 1.5rem;
  }
}.case-link-4{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  flex-shrink: 0;
  max-width: 300px;
  overflow: hidden;
  scroll-snap-align: start;
  transition-duration: 150ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 78vw;
}.case-link-4:hover{
  --tw-border-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
}
@media (min-width: 768px) {
  .case-link-4 {
    max-width: none;
    width: auto;
  }
}.btn-more-2{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  align-items: center;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  display: inline-flex;
  font-weight: 600;
  gap: 0.5rem;
  padding-bottom: 0.75rem;
  padding-left: 2rem;
  padding-right: 2rem;
  padding-top: 0.75rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-more-2:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(7 84 79 / var(--tw-bg-opacity, 1));
}.btn-cta-lg-4{
  --tw-bg-opacity: 1;
  align-items: center;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  display: inline-flex;
  font-weight: 600;
  gap: 0.5rem;
  justify-content: center;
  padding-bottom: 0.875rem;
  padding-left: 2rem;
  padding-right: 2rem;
  padding-top: 0.875rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-cta-lg-4:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(228 242 240 / var(--tw-bg-opacity, 1));
}.btn-tel-5{
  --tw-text-opacity: 1;
  border-radius: calc(var(--radius) - 2px);
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.25rem;
  min-height: 44px;
  padding-bottom: 0.625rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 0.625rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-tel-5:hover{
  --tw-border-opacity: 1;
  --tw-text-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  color: rgb(10 107 100 / var(--tw-text-opacity, 1));
}
@media (min-width: 768px) {
  .btn-tel-5 {
    min-height: 0px;
  }
}.rank-num-2{
  --tw-bg-opacity: 1;
  align-items: center;
  background-color: rgb(228 242 240 / var(--tw-bg-opacity, 1));
  border-radius: 0.25rem;
  display: flex;
  flex-shrink: 0;
  font-size: 11px;
  font-weight: 700;
  height: 1.5rem;
  justify-content: center;
  margin-top: 0.125rem;
  width: 1.5rem;
}.svc-lbl{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  align-items: center;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: 9999px;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  display: flex;
  flex-shrink: 0;
  font-size: 0.875rem;
  font-weight: 700;
  height: 2.25rem;
  justify-content: center;
  line-height: 1.25rem;
  width: 2.25rem;
}.grid-2col-gap-2{
  column-gap: 1rem;
  display: grid;
  grid-template-columns: repeat(2, minmax(0px, 1fr));
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  row-gap: 1.75rem;
  text-align: center;
  width: 100%;
}
@media (min-width: 640px) {
  .grid-2col-gap-2 {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .grid-2col-gap-2 {
    gap: 2rem;
    grid-template-columns: repeat(4, minmax(0px, 1fr));
    max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .grid-2col-gap-2 {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .grid-2col-gap-2 {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .grid-2col-gap-2 {
    max-width: 1536px;
  }
}.grid-2col-gap-4{
  column-gap: 1rem;
  display: grid;
  grid-template-columns: repeat(2, minmax(0px, 1fr));
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  row-gap: 2rem;
  text-align: center;
  width: 100%;
}
@media (min-width: 640px) {
  .grid-2col-gap-4 {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .grid-2col-gap-4 {
    gap: 2rem;
    grid-template-columns: repeat(4, minmax(0px, 1fr));
    max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .grid-2col-gap-4 {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .grid-2col-gap-4 {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .grid-2col-gap-4 {
    max-width: 1536px;
  }
}.page-grid-3{
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 2rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 2rem;
  width: 100%;
}
@media (min-width: 640px) {
  .page-grid-3 {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .page-grid-3 {
    max-width: 768px;
    padding-bottom: 3rem;
    padding-top: 3rem;
  }
}
@media (min-width: 1024px) {
  .page-grid-3 {
    gap: 2.5rem;
    grid-template-columns: repeat(3, minmax(0px, 1fr));
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .page-grid-3 {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .page-grid-3 {
    max-width: 1536px;
  }
}.btn-list{
  --tw-bg-opacity: 1;
  animation-duration: 300ms;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  display: flex;
  gap: 1rem;
  padding: 0.875rem;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-list:hover{
  --tw-border-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
}
@media (min-width: 768px) {
  .btn-list {
    gap: 1.25rem;
    padding: 1.25rem;
  }
}.btn-ic-2{
  align-items: center;
  animation-duration: 200ms;
  background-color: rgba(10, 107, 100, 0.1);
  border-radius: 0.75rem;
  display: flex;
  gap: 0.5rem;
  height: 2rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  transition-duration: 200ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%;
}.area-link-2{
  align-items: center;
  background-color: rgba(10, 107, 100, 0.1);
  border-radius: calc(var(--radius) - 2px);
  display: flex;
  gap: 0.5rem;
  justify-content: space-between;
  min-height: 44px;
  padding-bottom: 0.5rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.5rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.case-h1{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.375;
  margin-top: 1rem;
  max-width: 48rem;
  text-wrap: balance;
}
@media (min-width: 640px) {
  .case-h1 {
    font-size: 1.5rem;
    line-height: 2rem;
  }
}
@media (min-width: 768px) {
  .case-h1 {
    font-size: 2.25rem;
    line-height: 2.5rem;
    margin-top: 1.25rem;
  }
}.btn-more-3{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  display: inline-block;
  font-weight: 600;
  margin-top: 2rem;
  padding-bottom: 0.75rem;
  padding-left: 2rem;
  padding-right: 2rem;
  padding-top: 0.75rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-more-3:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(7 84 79 / var(--tw-bg-opacity, 1));
}.btn-tel-2{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.25rem;
  margin-top: 0.25rem;
  position: relative;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  word-break: break-all;
}.btn-tel-2::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.btn-tel-2:hover{
  --tw-text-opacity: 1;
  color: rgb(10 107 100 / var(--tw-text-opacity, 1));
}
@media (min-width: 768px) {
  .btn-tel-2 {
    font-size: 1rem;
    line-height: 1.5rem;
  }
}.hero-bg-abs{
  border-radius: var(--radius);
  border-width: 2px;
  bottom: -0.75rem;
  height: 100%;
  position: absolute;
  right: -0.75rem;
  width: 100%;
}
@media (min-width: 768px) {
  .hero-bg-abs {
    bottom: -1rem;
    right: -1rem;
  }
}.col-stack{
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  width: 100%;
}
@media (min-width: 640px) {
  .col-stack {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .col-stack {
    align-items: center;
    flex-direction: row;
    gap: 2rem;
    max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .col-stack {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .col-stack {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .col-stack {
    max-width: 1536px;
  }
}.grid-2col-img-2{
  align-items: center;
  display: grid;
  gap: 2.5rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  width: 100%;
}
@media (min-width: 640px) {
  .grid-2col-img-2 {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .grid-2col-img-2 {
    gap: 3rem;
    max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .grid-2col-img-2 {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .grid-2col-img-2 {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .grid-2col-img-2 {
    max-width: 1536px;
  }
}.li-start-pad-2{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  align-items: flex-start;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 0.875rem;
  gap: 0.625rem;
  line-height: 1.25rem;
  padding-bottom: 0.75rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.75rem;
}.btn-quote-3{
  align-items: center;
  border-radius: calc(var(--radius) - 2px);
  display: flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.5rem;
  justify-content: center;
  line-height: 1.25rem;
  min-height: 44px;
  padding-bottom: 0.625rem;
  padding-top: 0.625rem;
}.bkcat-link-3{
  align-items: center;
  background-color: rgba(10, 107, 100, 0.1);
  border-radius: calc(var(--radius) - 2px);
  display: flex;
  gap: 0.5rem;
  justify-content: space-between;
  padding-bottom: 0.5rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.5rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.case-card-col-2{
  --tw-bg-opacity: 1;
  animation-duration: 300ms;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.case-card-col-2:hover{
  --tw-translate-y: -0.375rem;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}.nav{
  --tw-translate-x: -0.75rem;
  --tw-translate-y: -50%;
  animation-duration: 500ms;
  left: 0.75rem;
  position: fixed;
  top: 50%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  transition-duration: 500ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 40;
}
@media (min-width: 1380px) {
  .nav {
    display: block;
  }
}.cell-surface-3{
  --tw-bg-opacity: 1;
  align-items: center;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
  padding-bottom: 0.75rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.75rem;
}
@media (min-width: 1024px) {
  .cell-surface-3 {
    display: none;
  }
}.title-ltight-light{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  font-size: 30px;
  font-weight: 700;
  line-height: 1.25;
  margin-top: 1rem;
  text-wrap: balance;
}
@media (min-width: 640px) {
  .title-ltight-light {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}
@media (min-width: 768px) {
  .title-ltight-light {
    font-size: 3.75rem;
    line-height: 1;
    margin-top: 1.25rem;
  }
}.quote-col{
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-top: 1.25rem;
}
@media (min-width: 640px) {
  .quote-col {
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1rem;
  }
}
@media (min-width: 768px) {
  .quote-col {
    margin-top: 1.5rem;
  }
}.cell-surface-4{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-color: rgba(18, 58, 92, 0.15);
  border-radius: var(--radius);
  margin-top: 1.25rem;
  padding-bottom: 1rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 1rem;
}
@media (min-width: 768px) {
  .cell-surface-4 {
    margin-top: 1.5rem;
    padding-bottom: 1.25rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    padding-top: 1.25rem;
  }
}.hero-txt{
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  line-height: 1.75rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1.25rem;
  max-width: 42rem;
}
@media (min-width: 640px) {
  .hero-txt {
    font-size: 1rem;
    line-height: 1.5rem;
  }
}
@media (min-width: 768px) {
  .hero-txt {
    font-size: 1.125rem;
    line-height: 1.75rem;
    margin-top: 1.5rem;
  }
}.hero-col{
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  justify-content: center;
  margin-top: 2rem;
}
@media (min-width: 640px) {
  .hero-col {
    flex-direction: row;
  }
}
@media (min-width: 768px) {
  .hero-col {
    gap: 1rem;
    margin-top: 2.5rem;
  }
}.link-sm-2{
  --tw-text-opacity: 1;
  align-items: center;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.375rem;
  line-height: 1.25rem;
  margin-top: auto;
  padding-top: 0.5rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.step-lbl-2{
  --tw-text-opacity: 1;
  animation-duration: 300ms;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  max-width: 0px;
  overflow: hidden;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  white-space: nowrap;
}.btn-arrow-8{
  align-items: center;
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.5rem;
  line-height: 1.25rem;
  margin-top: 0.75rem;
  position: relative;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-arrow-8::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.btn-arrow-8:hover{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
}.btn-arrow-7{
  align-items: center;
  display: inline-flex;
  font-size: 13px;
  font-weight: 600;
  gap: 0.375rem;
  margin-top: 0.875rem;
  position: relative;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-arrow-7::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.btn-arrow-7:hover{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
}.btn-cta-lg{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  font-weight: 600;
  padding-bottom: 0.75rem;
  padding-left: 2rem;
  padding-right: 2rem;
  padding-top: 0.75rem;
  text-align: center;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-cta-lg:hover{
  --tw-bg-opacity: 1;
  background-color: rgb(7 84 79 / var(--tw-bg-opacity, 1));
}.btn-cta-lg-2{
  --tw-text-opacity: 1;
  border-radius: calc(var(--radius) - 2px);
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-weight: 600;
  padding-bottom: 0.75rem;
  padding-left: 2rem;
  padding-right: 2rem;
  padding-top: 0.75rem;
  text-align: center;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-cta-lg-2:hover{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}.title-xl-dark{
  --tw-text-opacity: 1;
  border-left-width: 4px;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.75rem;
  margin-bottom: 1.25rem;
  padding-left: 0.75rem;
}
@media (min-width: 768px) {
  .title-xl-dark {
    font-size: 1.5rem;
    line-height: 2rem;
    margin-bottom: 1.5rem;
    padding-left: 1rem;
  }
}.btn-ic-lbl-2{
  --tw-bg-opacity: 1;
  animation-duration: 300ms;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: 9999px;
  display: block;
  flex-shrink: 0;
  height: 3px;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  width: 1.5rem;
}.hero-kicker-2{
  color: rgba(255, 255, 255, 0.9);
  display: block;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.75rem;
  margin-top: 0.625rem;
}
@media (min-width: 640px) {
  .hero-kicker-2 {
    font-size: 1.5rem;
    line-height: 2rem;
  }
}
@media (min-width: 768px) {
  .hero-kicker-2 {
    font-size: 2.25rem;
    line-height: 2.5rem;
    margin-top: 0.75rem;
  }
}.grid-2col-img-3{
  display: grid;
  gap: 2.5rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  width: 100%;
}
@media (min-width: 640px) {
  .grid-2col-img-3 {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .grid-2col-img-3 {
    gap: 3rem;
    max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .grid-2col-img-3 {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .grid-2col-img-3 {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .grid-2col-img-3 {
    max-width: 1536px;
  }
}.grid-2col-gap-3{
  display: grid;
  gap: 1.5rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  width: 100%;
}
@media (min-width: 640px) {
  .grid-2col-gap-3 {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .grid-2col-gap-3 {
    gap: 2.5rem;
    max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .grid-2col-gap-3 {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .grid-2col-gap-3 {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .grid-2col-gap-3 {
    max-width: 1536px;
  }
}.grid-4col-mt-2{
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-top: 2rem;
}
@media (min-width: 640px) {
  .grid-4col-mt-2 {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}
@media (min-width: 768px) {
  .grid-4col-mt-2 {
    gap: 1.5rem;
    margin-top: 3rem;
  }
}
@media (min-width: 1024px) {
  .grid-4col-mt-2 {
    grid-template-columns: repeat(3, minmax(0px, 1fr));
  }
}.grid-3col-2{
  column-gap: 1rem;
  display: grid;
  grid-template-columns: repeat(2, minmax(0px, 1fr));
  row-gap: 2rem;
}
@media (min-width: 768px) {
  .grid-3col-2 {
    column-gap: 1rem;
    grid-template-columns: repeat(4, minmax(0px, 1fr));
    row-gap: 2.5rem;
  }
}
@media (min-width: 1024px) {
  .grid-3col-2 {
    gap: 1.5rem;
  }
}.item-tile{
  --tw-bg-opacity: 1;
  animation-duration: 300ms;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  height: 100%;
  padding: 1rem;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.item-tile:hover{
  --tw-border-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
}
@media (min-width: 768px) {
  .item-tile {
    padding: 1.25rem;
  }
}.tt-md-2{
  --tw-text-opacity: 1;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: -webkit-box;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.5rem;
  margin-top: 0.5rem;
  overflow: hidden;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  margin: 0;
}
@media (min-width: 768px) {
  .tt-md-2 {
    font-size: 1rem;
    line-height: 1.5rem;
  }
}.tx-13-mt-2{
  color: rgba(255, 255, 255, 0.8);
  font-size: 13px;
  line-height: 1.5rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0.75rem;
  max-width: 48rem;
}
@media (min-width: 768px) {
  .tx-13-mt-2 {
    font-size: 0.875rem;
    line-height: 1.25rem;
    margin-top: 1rem;
  }
}.cta-col-2{
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-top: 1.5rem;
}
@media (min-width: 640px) {
  .cta-col-2 {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1rem;
  }
}
@media (min-width: 768px) {
  .cta-col-2 {
    margin-top: 2rem;
  }
}.grid-4col-mt-3{
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-top: 2rem;
}
@media (min-width: 768px) {
  .grid-4col-mt-3 {
    gap: 1.5rem;
    grid-template-columns: repeat(2, minmax(0px, 1fr));
    margin-top: 2.5rem;
  }
}
@media (min-width: 1024px) {
  .grid-4col-mt-3 {
    grid-template-columns: repeat(3, minmax(0px, 1fr));
  }
}.section-brand-relative{
  --tw-bg-opacity: 1;
  align-items: center;
  background-color: rgb(7 84 79 / var(--tw-bg-opacity, 1));
  display: flex;
  justify-content: center;
  min-height: 520px;
  overflow: hidden;
  position: relative;
}
@media (min-width: 768px) {
  .section-brand-relative {
    min-height: 640px;
  }
}.btn-hero{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  margin-left: 0.375rem;
  position: relative;
  text-decoration-color: rgba(255, 255, 255, 0.5);
  text-decoration-line: underline;
  text-underline-offset: 2px;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-hero::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.btn-hero:hover{
  text-decoration-color: rgb(255, 255, 255);
}.btn-full-5{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  display: block;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 2rem;
  margin-top: 0.5rem;
  position: relative;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-full-5::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.btn-full-5:hover{
  color: rgba(255, 255, 255, 0.8);
}.btn-arrow-10{
  align-items: center;
  color: rgba(255, 255, 255, 0.85);
  display: inline-flex;
  gap: 0.375rem;
  margin-top: 0.625rem;
  position: relative;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-arrow-10::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.btn-arrow-10:hover{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}.tt-xl{
  --tw-text-opacity: 1;
  border-left-width: 4px;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.75rem;
  margin-bottom: 0.75rem;
  padding-left: 0.75rem;
}
@media (min-width: 768px) {
  .tt-xl {
    font-size: 1.5rem;
    line-height: 2rem;
    padding-left: 1rem;
  }
}.box-overflow-hidden{
  --tw-bg-opacity: 1;
  aspect-ratio: 16 / 10;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  display: block;
  flex-shrink: 0;
  overflow: hidden;
  width: 6rem;
}
@media (min-width: 640px) {
  .box-overflow-hidden {
    width: 9rem;
  }
}
@media (min-width: 768px) {
  .box-overflow-hidden {
    width: 11rem;
  }
}.about-bg-abs{
  border-radius: var(--radius);
  border-width: 2px;
  height: 100%;
  left: -1rem;
  position: absolute;
  top: -1rem;
  width: 100%;
}.grid-3col-gap{
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0px, 1fr));
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 0.875rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.875rem;
  width: 100%;
}
@media (min-width: 640px) {
  .grid-3col-gap {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .grid-3col-gap {
    max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .grid-3col-gap {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .grid-3col-gap {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .grid-3col-gap {
    max-width: 1536px;
  }
}.cta-col-3{
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  gap: 0.75rem;
}
@media (min-width: 640px) {
  .cta-col-3 {
    flex-direction: row;
  }
}
@media (min-width: 768px) {
  .cta-col-3 {
    flex-direction: column;
  }
}
@media (min-width: 1024px) {
  .cta-col-3 {
    flex-direction: row;
  }
}.tt-sm-2{
  --tw-text-opacity: 1;
  align-items: center;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 0.875rem;
  font-weight: 700;
  gap: 0.5rem;
  line-height: 1.25rem;
}
@media (min-width: 768px) {
  .tt-sm-2 {
    font-size: 1rem;
    line-height: 1.5rem;
  }
}.li-start-pad-3{
  --tw-bg-opacity: 1;
  align-items: flex-start;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  display: flex;
  gap: 0.75rem;
  padding-bottom: 0.875rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.875rem;
}.grid-3col-mt-5{
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-top: 0.75rem;
}
@media (min-width: 768px) {
  .grid-3col-mt-5 {
    gap: 1rem;
    grid-template-columns: repeat(2, minmax(0px, 1fr));
    margin-top: 1rem;
  }
}.sec-intro-3{
  --tw-text-opacity: 1;
  color: rgb(203 213 225 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  line-height: 1.75rem;
  margin-top: 0.75rem;
  max-width: 42rem;
}
@media (min-width: 768px) {
  .sec-intro-3 {
    font-size: 1rem;
    line-height: 1.5rem;
    margin-top: 1rem;
  }
}.def-group{
  display: grid;
  font-size: 13px;
  gap: 1rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-top: 0.875rem;
}
@media (min-width: 768px) {
  .def-group {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}
@media (min-width: 1280px) {
  .def-group {
    grid-template-columns: repeat(3, minmax(0px, 1fr));
  }
}.grid-3col-mt-6{
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-top: 1rem;
}
@media (min-width: 640px) {
  .grid-3col-mt-6 {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}
@media (min-width: 768px) {
  .grid-3col-mt-6 {
    gap: 1rem;
    margin-top: 1.25rem;
  }
}.quote-cite-4{
  border-color: rgba(255, 255, 255, 0.15);
  border-top-width: 1px;
  font-size: 0.75rem;
  line-height: 1.5rem;
  margin-top: 1rem;
  padding-top: 1rem;
  text-align: left;
}.adv-cell{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  margin-top: 1.25rem;
  padding-bottom: 1rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 1rem;
}
@media (min-width: 768px) {
  .adv-cell {
    margin-top: 1.5rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}.hero-kicker{
  color: rgba(255, 255, 255, 0.85);
  font-size: 0.75rem;
  letter-spacing: 0.2em;
  line-height: 1rem;
  margin-top: 1.25rem;
}
@media (min-width: 768px) {
  .hero-kicker {
    font-size: 0.875rem;
    letter-spacing: 0.3em;
    line-height: 1.25rem;
    margin-top: 1.5rem;
  }
}.ic-img-3{
  aspect-ratio: 16 / 9;
  border-radius: var(--radius);
  margin-top: 1.25rem;
  object-fit: cover;
  width: 100%;
}
@media (min-width: 768px) {
  .ic-img-3 {
    aspect-ratio: 16 / 8;
    margin-top: 1.5rem;
  }
}.empty-card{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  font-size: 0.875rem;
  line-height: 1.75rem;
  margin-top: 1.25rem;
  padding-bottom: 1.5rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 1.5rem;
}.wrap-hero{
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 4rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 4rem;
  position: relative;
  text-align: center;
  width: 100%;
}
@media (min-width: 640px) {
  .wrap-hero {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .wrap-hero {
    max-width: 768px;
    padding-bottom: 6rem;
    padding-top: 6rem;
  }
}
@media (min-width: 1024px) {
  .wrap-hero {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .wrap-hero {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .wrap-hero {
    max-width: 1536px;
  }
}.btn-arrow-9{
  --tw-text-opacity: 1;
  align-items: center;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 600;
  gap: 0.5rem;
  line-height: 1.25rem;
  position: relative;
}.btn-arrow-9::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.btn-tel-3{
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.5rem;
  position: relative;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  word-break: break-all;
}.btn-tel-3::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.btn-tel-3:hover{
  color: rgba(255, 255, 255, 0.8);
}
@media (min-width: 768px) {
  .btn-tel-3 {
    font-size: 1.125rem;
    line-height: 1.75rem;
  }
}.hero-bg-abs-2{
  --tw-gradient-from: rgb(7 84 79 / 0.85) var(--tw-gradient-from-position);
  --tw-gradient-stops: var(--tw-gradient-from), rgb(10 107 100 / 0.75) var(--tw-gradient-via-position), var(--tw-gradient-to);
  --tw-gradient-to: rgb(7 84 79 / 0.95) var(--tw-gradient-to-position);
  background-image: linear-gradient(to bottom, var(--tw-gradient-stops));
  inset: 0px;
  position: absolute;
}.img-cover-bg{
  height: 100%;
  inset: 0px;
  object-fit: cover;
  opacity: 0.25;
  position: absolute;
  width: 100%;
}.sec-grad-md{
  --tw-gradient-from: #07544F var(--tw-gradient-from-position);
  --tw-gradient-stops: var(--tw-gradient-from), #0A6B64 var(--tw-gradient-via-position), var(--tw-gradient-to);
  --tw-gradient-to: #17A398 var(--tw-gradient-to-position);
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
  padding-bottom: 2.5rem;
  padding-top: 2.5rem;
}
@media (min-width: 768px) {
  .sec-grad-md {
    padding-bottom: 4rem;
    padding-top: 4rem;
  }
}.grid-4col-4{
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
}
@media (min-width: 768px) {
  .grid-4col-4 {
    gap: 1.5rem;
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}
@media (min-width: 1024px) {
  .grid-4col-4 {
    grid-template-columns: repeat(3, minmax(0px, 1fr));
  }
}.bullet-md-3{
  align-items: center;
  display: flex;
  flex-shrink: 0;
  height: 1.5rem;
  justify-content: center;
  width: 0.75rem;
}.bullet-md-2{
  align-items: center;
  display: flex;
  flex-shrink: 0;
  height: 1.5rem;
  justify-content: center;
  width: 1rem;
}.li-start-2{
  --tw-text-opacity: 1;
  align-items: flex-start;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 13px;
  gap: 0.5rem;
  line-height: 1.5rem;
}.trust-tt{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5rem;
  margin-bottom: 1rem;
}
@media (min-width: 768px) {
  .trust-tt {
    font-size: 1.125rem;
    line-height: 1.75rem;
    margin-bottom: 1.25rem;
  }
}.grid-4col-3{
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
}
@media (min-width: 768px) {
  .grid-4col-3 {
    gap: 1.5rem;
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}
@media (min-width: 1024px) {
  .grid-4col-3 {
    grid-template-columns: repeat(4, minmax(0px, 1fr));
  }
}.grid-4col-6{
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
}
@media (min-width: 640px) {
  .grid-4col-6 {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}
@media (min-width: 768px) {
  .grid-4col-6 {
    gap: 1.25rem;
  }
}
@media (min-width: 1024px) {
  .grid-4col-6 {
    grid-template-columns: repeat(3, minmax(0px, 1fr));
  }
}.grid-4col-5{
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
}
@media (min-width: 640px) {
  .grid-4col-5 {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}
@media (min-width: 768px) {
  .grid-4col-5 {
    gap: 1.5rem;
  }
}
@media (min-width: 1024px) {
  .grid-4col-5 {
    grid-template-columns: repeat(3, minmax(0px, 1fr));
  }
}.grid-4col-2{
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
}
@media (min-width: 640px) {
  .grid-4col-2 {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}
@media (min-width: 768px) {
  .grid-4col-2 {
    gap: 1.5rem;
  }
}
@media (min-width: 1024px) {
  .grid-4col-2 {
    grid-template-columns: repeat(4, minmax(0px, 1fr));
  }
}.grid-quad{
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0px, 1fr));
}
@media (min-width: 768px) {
  .grid-quad {
    gap: 1.5rem;
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}
@media (min-width: 1024px) {
  .grid-quad {
    grid-template-columns: repeat(4, minmax(0px, 1fr));
  }
}.cmp-box{
  border-radius: var(--radius);
  margin-top: 2.5rem;
  overflow-x: auto;
  scrollbar-width: none;
}.cmp-box::-webkit-scrollbar{
  display: none;
}
@media (min-width: 768px) {
  .cmp-box {
    display: block;
    margin-top: 3rem;
  }
}.tx-13-mt-3{
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  display: flex;
  font-size: 13px;
  gap: 0.375rem;
  line-height: 1.5rem;
  margin-top: 0.375rem;
}.tx-sm-mt-4{
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  line-height: 1.75rem;
  margin-top: 0.75rem;
  max-width: 42rem;
}
@media (min-width: 768px) {
  .tx-sm-mt-4 {
    font-size: 1rem;
    line-height: 1.5rem;
  }
}.tx-xs-mt-2{
  align-items: flex-start;
  display: flex;
  font-size: 0.75rem;
  gap: 0.5rem;
  line-height: 1.5rem;
  margin-top: 1rem;
}.price-note-list{
  display: grid;
  font-size: 0.875rem;
  gap: 1rem;
  line-height: 1.75rem;
  margin-top: 1rem;
}
@media (min-width: 768px) {
  .price-note-list {
    grid-template-columns: repeat(3, minmax(0px, 1fr));
  }
}.tx-lead-5{
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  font-size: 15px;
  line-height: 2rem;
  margin-top: 1rem;
}
@media (min-width: 768px) {
  .tx-lead-5 {
    font-size: 1rem;
    line-height: 1.5rem;
    margin-top: 1.25rem;
  }
}.cta-form-txt-2{
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  line-height: 1.75rem;
  margin-top: 1rem;
}
@media (min-width: 768px) {
  .cta-form-txt-2 {
    font-size: 1rem;
    line-height: 1.5rem;
    margin-top: 1.25rem;
  }
}.office-note-2{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  margin-top: 1rem;
  padding-bottom: 0.875rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.875rem;
}
@media (min-width: 768px) {
  .office-note-2 {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}.grid-3col-mt-4{
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-top: 1.25rem;
}
@media (min-width: 640px) {
  .grid-3col-mt-4 {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}
@media (min-width: 768px) {
  .grid-3col-mt-4 {
    gap: 1rem;
  }
}.grid-3col-mt-2{
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-top: 1.25rem;
}
@media (min-width: 640px) {
  .grid-3col-mt-2 {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}
@media (min-width: 768px) {
  .grid-3col-mt-2 {
    margin-top: 1.5rem;
  }
}.about-intro{
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  font-size: 15px;
  line-height: 2rem;
  margin-top: 1.25rem;
}
@media (min-width: 768px) {
  .about-intro {
    font-size: 1rem;
    line-height: 1.5rem;
    margin-top: 1.5rem;
  }
}.row-c-2{
  align-items: center;
  border-top-width: 1px;
  display: flex;
  justify-content: space-between;
  margin-top: 1.25rem;
  padding-top: 1rem;
}.list-grid{
  display: grid;
  gap: 0.75rem;
  margin-top: 1.5rem;
}
@media (min-width: 768px) {
  .list-grid {
    gap: 1rem;
    grid-template-columns: repeat(3, minmax(0px, 1fr));
    margin-top: 2rem;
  }
}.grid-4col-mt{
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-top: 2rem;
}
@media (min-width: 768px) {
  .grid-4col-mt {
    gap: 1.5rem;
  }
}
@media (min-width: 1024px) {
  .grid-4col-mt {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}.tx-lead-6{
  font-size: 0.875rem;
  line-height: 1.75rem;
  padding-bottom: 1rem;
  padding-left: 1rem;
  padding-right: 1rem;
}
@media (min-width: 768px) {
  .tx-lead-6 {
    padding-bottom: 1.25rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}.cell-pad-sm{
  --tw-backdrop-blur: blur(4px);
  backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
  background-color: rgba(255, 255, 255, 0.85);
  border-color: rgba(226, 232, 240, 0.8);
  border-radius: 1rem;
  padding-bottom: 0.5rem;
  padding-left: 0.375rem;
  padding-right: 0.375rem;
  padding-top: 0.5rem;
}.btn-msg-4{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-weight: 600;
  margin-left: 0.25rem;
  position: relative;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-msg-4::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.btn-msg-4:hover{
  --tw-text-opacity: 1;
  color: rgb(10 107 100 / var(--tw-text-opacity, 1));
}.about-tt{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.375;
}
@media (min-width: 640px) {
  .about-tt {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }
}
@media (min-width: 768px) {
  .about-tt {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}.tx-lead-4{
  font-size: 0.875rem;
  line-height: 1.5rem;
  margin-bottom: 1.25rem;
  padding-left: 0.75rem;
}
@media (min-width: 768px) {
  .tx-lead-4 {
    margin-bottom: 1.5rem;
    padding-left: 1rem;
  }
}.tt-xl-2{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.375;
}
@media (min-width: 640px) {
  .tt-xl-2 {
    font-size: 1.5rem;
    line-height: 2rem;
  }
}
@media (min-width: 768px) {
  .tt-xl-2 {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }
}.reveal-tail{
  animation-duration: 500ms;
  animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
  margin-top: 2rem;
  text-align: center;
  transition-duration: 500ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}
@media (min-width: 768px) {
  .reveal-tail {
    margin-top: 3rem;
  }
}.card-brand-lg{
  --tw-bg-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  padding: 1.5rem;
  text-align: center;
}
@media (min-width: 768px) {
  .card-brand-lg {
    padding: 1.75rem;
  }
}.art-desc{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: 0.25rem;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  padding-bottom: 0.25rem;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  padding-top: 0.25rem;
}.contact-form-card{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  height: 100%;
  padding: 1.25rem;
}
@media (min-width: 768px) {
  .contact-form-card {
    padding: 2.5rem;
  }
}.card-white-lg{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  padding: 1.25rem;
  scroll-margin-top: 6rem;
}
@media (min-width: 768px) {
  .card-white-lg {
    padding: 1.75rem;
  }
}.frm-card{
  --tw-bg-opacity: 1;
  --tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  padding: 1.25rem;
}
@media (min-width: 768px) {
  .frm-card {
    padding: 2rem;
  }
}.wrap-pad-lg{
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 2.5rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 2.5rem;
  width: 100%;
}
@media (min-width: 640px) {
  .wrap-pad-lg {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .wrap-pad-lg {
    max-width: 768px;
    padding-bottom: 3rem;
    padding-top: 3rem;
  }
}
@media (min-width: 1024px) {
  .wrap-pad-lg {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .wrap-pad-lg {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .wrap-pad-lg {
    max-width: 1536px;
  }
}.row-ic-3{
  align-items: center;
  column-gap: 1.25rem;
  display: flex;
  flex-wrap: wrap;
  row-gap: 0.75rem;
}.contact-col{
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  height: 100%;
}
@media (min-width: 768px) {
  .contact-col {
    gap: 1rem;
  }
}.grid-2col-3{
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
}
@media (min-width: 640px) {
  .grid-2col-3 {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}
@media (min-width: 1024px) {
  .grid-2col-3 {
    grid-template-columns: repeat(3, minmax(0px, 1fr));
  }
}.grid-3col-mt-7{
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-top: 1rem;
}
@media (min-width: 640px) {
  .grid-3col-mt-7 {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}.grid-3col-3{
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
}
@media (min-width: 640px) {
  .grid-3col-3 {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}
@media (min-width: 1024px) {
  .grid-3col-3 {
    grid-template-columns: repeat(3, minmax(0px, 1fr));
  }
}.map-box{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  height: 280px;
  overflow: hidden;
}
@media (min-width: 768px) {
  .map-box {
    height: 420px;
  }
}.case-card-desc-3{
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  color: rgba(255, 255, 255, 0.8);
  display: block;
  font-size: 12px;
  margin-top: 0.25rem;
  overflow: hidden;
}.tx-sm-mt-3{
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  font-size: 0.875rem;
  line-height: 1.5rem;
  margin-top: 0.375rem;
  overflow: hidden;
}
@media (min-width: 640px) {
  .tx-sm-mt-3 {
    display: block;
  }
}.list-flex-6{
  column-gap: 0.625rem;
  display: flex;
  flex-wrap: wrap;
  margin-top: 0.5rem;
  row-gap: 0.5rem;
}.grid-4col-mt-4{
  display: grid;
  gap: 1rem;
  margin-top: 1.25rem;
}
@media (min-width: 768px) {
  .grid-4col-mt-4 {
    gap: 1.25rem;
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}.row-wrap{
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 1.25rem;
}
@media (min-width: 768px) {
  .row-wrap {
    margin-top: 1.5rem;
  }
}.list-flex-3{
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: center;
  margin-top: 1.5rem;
}.grid-3col-mt-3{
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-top: 1.5rem;
}
@media (min-width: 640px) {
  .grid-3col-mt-3 {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}.list-mt-4{
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  line-height: 1.25rem;
  margin-top: 1.5rem;
}
@media (min-width: 768px) {
  .list-mt-4 {
    font-size: 1rem;
    line-height: 1.5rem;
    margin-top: 2rem;
  }
}.office-note{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  margin-top: 1.5rem;
  padding-bottom: 1rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 1rem;
}.sec-brand-cover{
  --tw-bg-opacity: 1;
  background-color: rgb(7 84 79 / var(--tw-bg-opacity, 1));
  overflow: hidden;
  padding-bottom: 2.75rem;
  padding-top: 2.75rem;
  position: relative;
}
@media (min-width: 768px) {
  .sec-brand-cover {
    padding-bottom: 5rem;
    padding-top: 5rem;
  }
}.icon-relative{
  aspect-ratio: 3 / 2;
  border-radius: var(--radius);
  object-fit: cover;
  position: relative;
  width: 100%;
}.about-img{
  aspect-ratio: 4 / 3;
  border-radius: var(--radius);
  object-fit: cover;
  position: relative;
  width: 100%;
}.btn-quote-4{
  font-weight: 600;
  margin-left: 0.25rem;
  position: relative;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.btn-quote-4::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.btn-quote-4:hover{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
}.case-link-2{
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.25rem;
  position: relative;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.case-link-2::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.case-link-2:hover{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
}.tt-bar{
  --tw-text-opacity: 1;
  border-left-width: 4px;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 2rem;
  padding-left: 1rem;
}.cell-head-brand{
  --tw-bg-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  font-weight: 600;
  padding-bottom: 1rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 1rem;
  text-align: left;
}.cell-head-fixed{
  font-weight: 600;
  padding-bottom: 1rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  padding-top: 1rem;
  text-align: left;
  width: 8rem;
}.license-num{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  line-height: 1.25rem;
  word-break: break-all;
}.tt-sm{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.5rem;
}
@media (min-width: 768px) {
  .tt-sm {
    font-size: 1rem;
    line-height: 1.5rem;
  }
}.cta-form-box{
  background-color: rgba(255, 255, 255, 0.7);
  height: 3px;
  margin-top: 0.75rem;
  width: 3rem;
}
@media (min-width: 768px) {
  .cta-form-box {
    margin-top: 1rem;
  }
}.frame-hover{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  overflow: hidden;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.sec-surface-tight{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-top-width: 1px;
  padding-bottom: 1.75rem;
  padding-top: 1.75rem;
}
@media (min-width: 768px) {
  .sec-surface-tight {
    padding-bottom: 2.25rem;
    padding-top: 2.25rem;
  }
}.list-flex-4{
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}.row-ic-4{
  align-items: center;
  display: flex;
  gap: 0.75rem;
}
@media (min-width: 768px) {
  .row-ic-4 {
    gap: 1rem;
  }
}.row-ic-2{
  align-items: center;
  display: flex;
  font-size: 0.75rem;
  gap: 0.75rem;
  line-height: 1rem;
}.row-start-2{
  align-items: flex-start;
  display: flex;
  gap: 0.75rem;
}
@media (min-width: 768px) {
  .row-start-2 {
    gap: 1rem;
  }
}.col-fill-stack{
  display: flex;
  flex: 1 1 0%;
  flex-direction: column;
  min-width: 0px;
}.card-tt-3{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-weight: 700;
  line-height: 1.5rem;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.title-base-light{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5rem;
  margin-bottom: 1rem;
}.reveal-grid{
  animation-duration: 300ms;
  animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
  display: grid;
  transition-duration: 300ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}.side-hotline{
  align-self: flex-start;
  min-width: 0px;
}
@media (min-width: 1024px) {
  .side-hotline {
    position: sticky;
    top: 6rem;
  }
}.case-card-tt-3{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-weight: 700;
  line-height: 1.5rem;
  margin-top: 0.5rem;
}.tx-sm-mt-5{
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  line-height: 1.75rem;
  margin-top: 0.625rem;
}.sec-intro-4{
  font-size: 0.875rem;
  line-height: 1.75rem;
  margin-top: 0.75rem;
}
@media (min-width: 768px) {
  .sec-intro-4 {
    margin-top: 1rem;
  }
}.note-xs-3{
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  display: -webkit-box;
  font-size: 0.875rem;
  line-height: 1.5rem;
  margin-top: 0.75rem;
  overflow: hidden;
}.tx-xs-mt-3{
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  line-height: 1rem;
  margin-top: 0.875rem;
}.list-flex-5{
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 1.25rem;
}.row-4{
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 1.25rem;
}.cmp-note-txt{
  font-size: 0.75rem;
  line-height: 1.5rem;
  margin-top: 1.25rem;
}
@media (min-width: 768px) {
  .cmp-note-txt {
    margin-top: 1.5rem;
  }
}.frame-spaced{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  margin-top: 1.25rem;
  overflow: hidden;
}.case-card-col-3{
  display: flex;
  flex: 1 1 0%;
  flex-direction: column;
  padding: 1.5rem;
}.wrap-relative{
  margin-left: auto;
  margin-right: auto;
  padding-left: 1rem;
  padding-right: 1rem;
  position: relative;
  width: 100%;
}
@media (min-width: 640px) {
  .wrap-relative {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .wrap-relative {
    max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .wrap-relative {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .wrap-relative {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .wrap-relative {
    max-width: 1536px;
  }
}.ic-img-2{
  aspect-ratio: 3 / 2;
  border-radius: var(--radius);
  object-fit: cover;
  width: 100%;
}.svc-link-2{
  align-items: flex-start;
  display: flex;
  gap: 0.625rem;
  position: relative;
}.svc-link-2::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.case-link-3{
  font-size: 0.875rem;
  line-height: 1.25rem;
  position: relative;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.case-link-3::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.case-link-3:hover{
  --tw-text-opacity: 1;
  color: rgb(10 107 100 / var(--tw-text-opacity, 1));
}.case-card-tt-4{
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  display: -webkit-box;
  font-size: 13px;
  line-height: 1.5rem;
  overflow: hidden;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.ic-xs-6{
  animation-duration: 300ms;
  flex-shrink: 0;
  font-size: 0.75rem;
  line-height: 1rem;
  transition-duration: 300ms;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.note-tiny-4{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.5rem;
}.sec-title-sm{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.75rem;
}
@media (min-width: 768px) {
  .sec-title-sm {
    font-size: 1.5rem;
    line-height: 2rem;
  }
}.ic-mt-6{
  color: rgba(255, 255, 255, 0.9);
  flex-shrink: 0;
  height: 2.75rem;
  width: 2.75rem;
}.tbl-compare{
  border-collapse: collapse;
  font-size: 0.875rem;
  line-height: 1.25rem;
  min-width: 720px;
  width: 100%;
}.case-hero-bg{
  inset: 0px;
  opacity: 0.15;
  position: absolute;
}.case-hero-img{
  --tw-bg-opacity: 1;
  aspect-ratio: 16 / 10;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  overflow: hidden;
}.sec-brand-sm{
  --tw-bg-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  padding-bottom: 2.5rem;
  padding-top: 2.5rem;
}
@media (min-width: 768px) {
  .sec-brand-sm {
    padding-bottom: 3rem;
    padding-top: 3rem;
  }
}.sec-brand-md{
  --tw-bg-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  padding-bottom: 3rem;
  padding-top: 3rem;
}
@media (min-width: 768px) {
  .sec-brand-md {
    padding-bottom: 4rem;
    padding-top: 4rem;
  }
}.card-brand{
  --tw-bg-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  padding: 1.5rem;
}.side-cta{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  padding: 1.75rem;
}.label-block-truncate{
  display: block;
  font-weight: 700;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}.note-tiny-2{
  color: rgba(255, 255, 255, 0.85);
  display: block;
  font-size: 11px;
}.btn-cta-full{
  display: block;
  height: 100%;
  width: 100%;
}.reveal-fade{
  animation-duration: 500ms;
  animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-duration: 500ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}
@media (min-width: 640px) {
  .wrap {
    max-width: 640px;
  }
}
@media (min-width: 768px) {
  .wrap {
    max-width: 768px;
  }
}
@media (min-width: 1024px) {
  .wrap {
    max-width: 1024px;
  }
}
@media (min-width: 1280px) {
  .wrap {
    max-width: 1280px;
  }
}
@media (min-width: 1536px) {
  .wrap {
    max-width: 1536px;
  }
}.row-start-3{
  align-items: flex-start;
  display: flex;
  gap: 0.625rem;
}.ic-base{
  display: inline;
  font-size: 1rem;
  line-height: 1.5rem;
  margin-right: 0.5rem;
}.ic-sm-mt-4{
  flex-shrink: 0;
  font-size: 0.875rem;
  line-height: 1.25rem;
  margin-top: 0.25rem;
}.tx-12-mt-7{
  font-size: 12px;
  line-height: 1.5rem;
  margin-top: 0.375rem;
}.tx-12-mt-5{
  font-size: 12px;
  line-height: 1.5rem;
  margin-top: 0.5rem;
}.note-tiny-3{
  font-size: 13px;
  line-height: 1.5rem;
  margin-top: 0.5rem;
}.tx-mt-xs-3{
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
  font-size: 0.75rem;
  line-height: 1rem;
  margin-top: 0.5rem;
}.tx-12-mt-6{
  font-size: 12px;
  line-height: 1.5rem;
  margin-top: 1.25rem;
}.cta-intro-2{
  font-size: 0.875rem;
  line-height: 1.75rem;
  margin-top: 1.25rem;
}.pager-txt{
  font-size: 0.875rem;
  line-height: 1.25rem;
  margin-top: 2rem;
  text-align: center;
}.sec-white-btm{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  padding-bottom: 3rem;
}
@media (min-width: 768px) {
  .sec-white-btm {
    padding-bottom: 5rem;
  }
}
@media (min-width: 768px) {
  .sec-brand {
    padding-bottom: 5rem;
    padding-top: 5rem;
  }
}.sec-brand-lg{
  --tw-bg-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  padding-bottom: 3.5rem;
  padding-top: 3.5rem;
}
@media (min-width: 768px) {
  .sec-brand-lg {
    padding-bottom: 6rem;
    padding-top: 6rem;
  }
}.btn-tel-4{
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.25rem;
  position: relative;
}.btn-tel-4::before{
  content: "";
  inset: -14px -4px;
  position: absolute;
}.ic-sm-mt-3{
  flex-shrink: 0;
  font-size: 10px;
  margin-top: 0.25rem;
}.ic-mt-7{
  flex-shrink: 0;
  font-size: 9px;
  margin-top: 0.375rem;
}.ic-sm-mt-2{
  flex-shrink: 0;
  font-size: 10px;
  margin-top: 0.375rem;
}.ic-rot-2{
  animation-duration: 300ms;
  font-size: 0.75rem;
  line-height: 1rem;
  transition-duration: 300ms;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.lbl-sm{
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  line-height: 1.5rem;
}.ic-mt-5{
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  flex-shrink: 0;
  margin-top: 0.25rem;
}.ic-xs-7{
  color: rgba(255, 255, 255, 0.7);
  font-size: 0.75rem;
  line-height: 1rem;
  transition-duration: 150ms;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}.section{
  --tw-bg-opacity: 1;
  background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1));
  padding-bottom: 3rem;
  padding-top: 3rem;
}.cmp-cell{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(7 84 79 / var(--tw-bg-opacity, 1));
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}.frame-clip{
  border-radius: var(--radius);
  overflow: hidden;
}.cat-box{
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 8px;
}.show-box{
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}.search-box{
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 16px;
}.row-inline{
  display: flex;
  gap: 1rem;
}.pager-count{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-weight: 600;
}.ic-xs-9{
  display: inline;
  font-size: 0.75rem;
  line-height: 1rem;
}.box-mx-auto{
  margin-left: auto;
  margin-right: auto;
  max-width: 48rem;
}.filter-box{
  margin-bottom: 2rem;
}
@media (min-width: 768px) {
  .filter-box {
    margin-bottom: 2.5rem;
  }
}.cmp-note{
  margin-top: 2rem;
}
@media (min-width: 768px) {
  .cmp-note {
    display: none;
  }
}.tx-sm-mt-7{
  font-size: 0.875rem;
  line-height: 1.25rem;
  margin-top: 0.75rem;
}.quyu-box{
  margin-top: 1rem;
}
@media (min-width: 768px) {
  .quyu-box {
    margin-top: 1.25rem;
  }
}.list-mt-3{
  flex: 1 1 0%;
  margin-top: 1rem;
}.frm-box{
  margin-top: 1.25rem;
}
@media (min-width: 768px) {
  .frm-box {
    margin-top: 1.5rem;
  }
}.tx-sm-mt-6{
  font-size: 0.875rem;
  line-height: 1.25rem;
  margin-top: 1.25rem;
}.quyu-cta-box{
  margin-top: 2rem;
  text-align: center;
}.faq-box-2{
  margin-left: auto;
  margin-right: auto;
  max-width: 48rem;
}.bkcat-num-3{
  --tw-numeric-spacing: tabular-nums;
  font-size: 11px;
  font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
}.ic-xs-8{
  --tw-text-opacity: 1;
  color: rgb(18 58 92 / var(--tw-text-opacity, 1));
  font-size: 0.75rem;
  line-height: 1rem;
}.tx-sm-2{
  --tw-text-opacity: 1;
  color: rgb(226 232 240 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  line-height: 1.25rem;
}.quote-note{
  font-size: 0.875rem;
  line-height: 1.5rem;
}/* ===== 百科文章外壳语义类（sem_baike.py 生成） ===== */
.bk-lead{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-bottom-right-radius: calc(var(--radius) - 2px);
  border-left-width: 4px;
  border-top-right-radius: calc(var(--radius) - 2px);
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  font-size: 15px;
  line-height: 2rem;
  margin-top: 1.5rem;
  padding-bottom: 1rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 1rem;
}
@media (min-width: 768px) {
  .bk-lead {
    font-size: 1rem;
    line-height: 1.5rem;
    margin-top: 2rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}.bk-meta{
  align-items: center;
  column-gap: 1rem;
  display: flex;
  flex-wrap: wrap;
  font-size: 0.75rem;
  line-height: 1rem;
  margin-top: 0.75rem;
  row-gap: 0.5rem;
}
@media (min-width: 768px) {
  .bk-meta {
    font-size: 0.875rem;
    line-height: 1.25rem;
    margin-top: 1rem;
  }
}.bk-facts{
  --tw-bg-opacity: 1;
  background-color: rgb(227 233 240 / var(--tw-bg-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(2, minmax(0px, 1fr));
  margin-top: 1.25rem;
  overflow: hidden;
}
@media (min-width: 768px) {
  .bk-facts {
    grid-template-columns: repeat(4, minmax(0px, 1fr));
    margin-top: 1.5rem;
  }
}.bk-tag{
  --tw-bg-opacity: 1;
  --tw-text-opacity: 1;
  align-items: center;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  border-radius: 0.25rem;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: inline-flex;
  gap: 0.375rem;
  padding-bottom: 0.25rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.25rem;
}.bk-h1{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 22px;
  font-weight: 700;
  line-height: 1.375;
  text-wrap: balance;
}
@media (min-width: 640px) {
  .bk-h1 {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }
}
@media (min-width: 768px) {
  .bk-h1 {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}.bk-cover{
  aspect-ratio: 16 / 9;
  border-radius: var(--radius);
  margin-top: 1.5rem;
  object-fit: cover;
  width: 100%;
}
@media (min-width: 768px) {
  .bk-cover {
    aspect-ratio: 16 / 8;
    margin-top: 2rem;
}
  }
/* 百科正文目录卡：边框已内收（原模板用 border border-line 工具类） */
.bk-toc{
  --tw-border-opacity: 1;
  border: 1px solid rgb(227 233 240 / var(--tw-border-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  background-color: #fff;
}
.bk-toc-btn{
  align-items: center;
  display: flex;
  gap: 0.5rem;
  padding-bottom: 0.75rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.75rem;
  text-align: left;
  width: 100%;
}.bk-pn-title{
  --tw-text-opacity: 1;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  display: block;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.25rem;
  margin-top: 0.375rem;
  overflow: hidden;
  transition-duration: 150ms;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
.bk-pn-title:hover{
  color: #0A6B64;
}.bk-pn{
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
  margin-top: 1.25rem;
}
@media (min-width: 640px) {
  .bk-pn {
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}
@media (min-width: 768px) {
  .bk-pn {
    margin-top: 1.5rem;
  }
}/* 上/下篇导航卡：-r 为右对齐态 */
.bk-pn-card,
.bk-pn-card-r{
  --tw-border-opacity: 1;
  border: 1px solid rgb(227 233 240 / var(--tw-border-opacity, 1));
  border-radius: calc(var(--radius) - 2px);
  box-shadow: 0 0 0 0 rgba(10, 107, 100, 0);
  padding: 0.875rem 1rem;
  transition-duration: 150ms;
  transition-property: border-color, box-shadow;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
.bk-pn-card-r{
  text-align: right;
}
.bk-pn-card:hover,
.bk-pn-card-r:hover{
  --tw-border-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  box-shadow: 0 6px 20px rgba(10, 107, 100, 0.1);
}
.bk-pn-dir-next{
  text-align: right;
}.bk-toc-more{
  align-items: center;
  display: flex;
  gap: 0.5rem;
  margin-left: auto;
  min-width: 0px;
}.bk-card{
  --tw-bg-opacity: 1;
  --tw-border-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border: 1px solid rgb(227 233 240 / var(--tw-border-opacity, 1));
  border-radius: var(--radius);
  margin-top: 2.5rem;
  overflow: hidden;
}
@media (min-width: 768px) {
  .bk-card {
    margin-top: 3rem;
  }
}.bk-card-bar{
  --tw-gradient-from: #0A6B64 var(--tw-gradient-from-position);
  --tw-gradient-stops: var(--tw-gradient-from), #07544F var(--tw-gradient-via-position), var(--tw-gradient-to);
  --tw-gradient-to: #123A5C var(--tw-gradient-to-position);
  background-image: linear-gradient(to right, var(--tw-gradient-stops));
  height: 0.375rem;
}.bk-cell{
  --tw-bg-opacity: 1;
  background-color: rgb(244 247 250 / var(--tw-bg-opacity, 1));
  padding-bottom: 0.875rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  padding-top: 0.875rem;
}
@media (min-width: 768px) {
  .bk-cell {
    padding-bottom: 1rem;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-top: 1rem;
  }
}.bk-cell-val{
  --tw-text-opacity: 1;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: -webkit-box;
  font-size: 0.875rem;
  font-weight: 600;
  line-height: 1.25rem;
  margin-top: 0.375rem;
  overflow: hidden;
}.bk-toc-name{
  font-size: 11px;
  max-width: 45vw;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (min-width: 640px) {
  .bk-toc-name {
    display: block;
  }
}.bk-quote-ic{
  color: rgba(10, 107, 100, 0.4);
  flex-shrink: 0;
  font-size: 1.125rem;
  line-height: 1.75rem;
  margin-top: 0.25rem;
}.bk-cell-k{
  align-items: center;
  display: flex;
  font-size: 11px;
  gap: 0.375rem;
}.bk-ic{
  align-items: center;
  display: inline-flex;
  gap: 0.375rem;
}.bk-toc{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  overflow: hidden;
}.bk-toc-t{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.25rem;
}.bk-toc-n{
  --tw-numeric-spacing: tabular-nums;
  flex-shrink: 0;
  font-size: 11px;
  font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);
}.bk-note{
  align-items: flex-start;
  display: flex;
  gap: 0.75rem;
}.bk-note-t{
  --tw-text-opacity: 1;
  color: rgb(31 41 55 / var(--tw-text-opacity, 1));
  font-size: 15px;
  line-height: 2rem;
}.bk-toc-wrap{
  margin-top: 1.25rem;
}
@media (min-width: 768px) {
  .bk-toc-wrap {
    display: none;
  }
}.bk-toc-ic{
  flex-shrink: 0;
  font-size: 0.75rem;
  line-height: 1rem;
}.bk-arrow{
  font-size: 10px;
  transition-duration: 150ms;
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}/* 百科正文目录列表（由 main.js 的 initToc() 从正文 h2/h3 生成，模板无此结构）
   注意：.bk-toc-wrap 在 >=768px 由 CSS 隐藏，故本组样式当前只在窄屏生效 */
.bk-toc-list{
  border-top: 1px solid rgb(227 233 240);
  max-height: 60vh;
  overflow-y: auto;
  padding: 0.5rem 0.25rem 0.75rem;
}
.bk-toc-li{
  list-style: none;
}
.bk-toc-a{
  color: rgb(31 41 55 / 0.8);
  display: block;
  font-size: 0.875rem;
  line-height: 1.75rem;
  padding: 0.125rem 0.75rem;
  text-decoration: none;
  transition-property: color;
  transition-duration: 150ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
.bk-toc-a:hover{
  color: #0A6B64;
}
.bk-toc-li-3 .bk-toc-a{
  font-size: 0.8125rem;
  color: rgb(107 114 128);
  padding-left: 1.75rem;
}
.bk-card-pad{
  padding: 1.25rem;
}
@media (min-width: 768px) {
  .bk-card-pad {
    padding: 1.75rem;
  }
}/* ===== 案例正文语义类（clean_case_body.py 生成） ===== */
.case-sec{
  animation-duration: 500ms;
  animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
  transition-duration: 500ms;
  transition-property: all;
  transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
  /* 案例正文由内容层输出，自带 opacity-0 / translate-y-8 初始态，
     而 reveal.js 只处理 reveal-* 类，不会揭示 .case-sec → 正文整块不可见。
     这里直接置为可见（semantic.css 在 origin.css 之后，同特异性后者胜）。 */
  opacity: 1;
  transform: none;
}
/* 恢复案例正文的鼠标事件（FAQ 折叠按钮全靠这条）。
   内容层输出的 class 是 "case-sec opacity-0 translate-y-8"，opacity-0 只是初始态标记；
   但 origin.css 有一条
     .opacity-0:not([class*="animate-"]):not([class*="group-hover"])
                :not([class*="opacity-100"]):not([class*="pointer-events-none"])
                { pointer-events: none; }
   特异性 0,5,0 —— 上面 .case-sec（0,1,0）的 opacity:1 救回了视觉，却压不住这条，
   结果整块正文「看得见但点不了」，9 个案例详情页的常见问题按钮全部失效。
   这里用同等特异性（1 类 + 4 属性）写在 origin.css 之后，后加载者胜，恢复可点击。 */
.case-sec:not([class*="animate-"]):not([class*="group-hover"]):not([class*="opacity-100"]):not([class*="pointer-events-none"]) {
  pointer-events: auto;
}.case-h2{
  --tw-border-opacity: 1;
  --tw-text-opacity: 1;
  border-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
  border-left-width: 4px;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.75rem;
  padding-left: 0.75rem;
}
@media (min-width: 768px) {
  .case-h2 {
    font-size: 1.25rem;
    line-height: 1.75rem;
    padding-left: 1rem;
  }
}.case-cols{
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(1, minmax(0px, 1fr));
}
@media (min-width: 768px) {
  .case-cols {
    gap: 1.5rem;
    grid-template-columns: repeat(2, minmax(0px, 1fr));
  }
}.case-card{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1));
  border-radius: var(--radius);
  padding: 1.25rem;
}
@media (min-width: 768px) {
  .case-card {
    padding: 1.5rem;
  }
}.case-card-title{
  --tw-text-opacity: 1;
  align-items: center;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  display: flex;
  font-weight: 700;
  gap: 0.5rem;
}.case-h2-plain{
  --tw-text-opacity: 1;
  color: rgb(7 84 79 / var(--tw-text-opacity, 1));
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.75rem;
}
@media (min-width: 768px) {
  .case-h2-plain {
    font-size: 1.25rem;
    line-height: 1.75rem;
  }
}

/* ===== 组合吸收追加 ===== */
/* tag-pill <= border border-line */
.tag-pill { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* tag-pill-sm <= border border-line */
.tag-pill-sm { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* input-field <= border border-line */
.input-field { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* area-chip <= border border-line */
.area-chip { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* btn-row <= border border-line */
.btn-row { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* btn-captcha <= border border-line */
.btn-captcha { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* faq-filter <= border border-line */
.faq-filter { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* card-white <= border border-line */
.card-white { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* btn-ic-pad <= border border-line */
.btn-ic-pad { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* btn-pad <= border border-line */
.btn-pad { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* btn-filter <= border border-line */
.btn-filter { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* frame-card <= border border-line */
.frame-card { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* li-start-pad <= border border-line */
.li-start-pad { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* case-link <= border border-line */
.case-link { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* btn-consult <= border border-brand text-brand */
.btn-consult { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
/* frame <= border border-line hover:border-brand/50 */
.frame { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
.frame:hover { border-color: rgba(10, 107, 100, 0.5); }
/* price-desc <= border-line text-sub */
.price-desc { --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); --tw-text-opacity: 1; color: rgb(100 108 121 / var(--tw-text-opacity, 1)); }
/* meta-ic-txt <= border-line text-brand */
.meta-ic-txt { --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
/* row-start-pad <= border-line */
.row-start-pad { --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* row-between-pad <= border-line */
.row-between-pad { --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* row-between-c <= border-line */
.row-between-c { --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* link-sm <= border-line text-brand */
.link-sm { --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
/* case-meta-row <= border-line */
.case-meta-row { --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* list-mt <= border-line space-y-2 */
.list-mt { --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
.list-mt> :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.5rem * var(--tw-space-y-reverse)); }
/* sec-title-bar <= border-brand */
.sec-title-bar { --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); }
/* case-card-desc-2 <= text-sub */
.case-card-desc-2 { --tw-text-opacity: 1; color: rgb(100 108 121 / var(--tw-text-opacity, 1)); }
/* price-card <= border border-line hover:shadow-[0_12px_32px_rgba(10,107,100,0.18)] */
.price-card { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
.price-card:hover { --tw-shadow: 0 12px 32px rgba(10,107,100,0.18); --tw-shadow-colored: 0 12px 32px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
/* card-pad-lg <= border border-line hover:shadow-[0_12px_32px_rgba(10,107,100,0.18)] */
.card-pad-lg { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
.card-pad-lg:hover { --tw-shadow: 0 12px 32px rgba(10,107,100,0.18); --tw-shadow-colored: 0 12px 32px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
/* card-pad-lg-2 <= hover:shadow-[0_12px_32px_rgba(10,107,100,0.18)] */
.card-pad-lg-2:hover { --tw-shadow: 0 12px 32px rgba(10,107,100,0.18); --tw-shadow-colored: 0 12px 32px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
/* btn-tile <= border border-line hover:shadow-[0_12px_32px_rgba(10,107,100,0.18)] */
.btn-tile { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
.btn-tile:hover { --tw-shadow: 0 12px 32px rgba(10,107,100,0.18); --tw-shadow-colored: 0 12px 32px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
/* btn-tile-lg <= hover:shadow-[0_12px_32px_rgba(10,107,100,0.18)] */
.btn-tile-lg:hover { --tw-shadow: 0 12px 32px rgba(10,107,100,0.18); --tw-shadow-colored: 0 12px 32px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
/* case-card-col <= border border-line hover:shadow-[0_12px_32px_rgba(10,107,100,0.18)] */
.case-card-col { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
.case-card-col:hover { --tw-shadow: 0 12px 32px rgba(10,107,100,0.18); --tw-shadow-colored: 0 12px 32px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
/* adv-card <= border border-line hover:shadow-[0_12px_32px_rgba(10,107,100,0.18)] */
.adv-card { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
.adv-card:hover { --tw-shadow: 0 12px 32px rgba(10,107,100,0.18); --tw-shadow-colored: 0 12px 32px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
/* svc-card <= border border-line hover:shadow-[0_12px_32px_rgba(10,107,100,0.18)] */
.svc-card { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
.svc-card:hover { --tw-shadow: 0 12px 32px rgba(10,107,100,0.18); --tw-shadow-colored: 0 12px 32px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
/* btn-row-2 <= border border-line hover:shadow-[0_10px_28px_rgba(10,107,100,0.14)] */
.btn-row-2 { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
.btn-row-2:hover { --tw-shadow: 0 10px 28px rgba(10,107,100,0.14); --tw-shadow-colored: 0 10px 28px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
/* btn-start-pad <= border border-line hover:shadow-[0_10px_28px_rgba(10,107,100,0.14)] */
.btn-start-pad { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
.btn-start-pad:hover { --tw-shadow: 0 10px 28px rgba(10,107,100,0.14); --tw-shadow-colored: 0 10px 28px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
/* btn-start-pad-2 <= border border-line hover:shadow-[0_10px_28px_rgba(10,107,100,0.14)] */
.btn-start-pad-2 { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
.btn-start-pad-2:hover { --tw-shadow: 0 10px 28px rgba(10,107,100,0.14); --tw-shadow-colored: 0 10px 28px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
/* box-absolute <= left-[calc(50%+36px)] */
.box-absolute { left: calc(50% + 36px); }
/* btn-ic-sm <= border transition-[color,background-color,border-color,transform] text-brand */
.btn-ic-sm { border-width: 1px; transition-property: color, background-color, border-color, transform; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
/* NEW ft-link <= inline-flex min-h-[44px] items-center gap-2 py-1 md:min-h-0 md:py-0 text-slate-300 hover:text-white transition-colors */
.ft-link { display: inline-flex; min-height: 44px; align-items: center; gap: 0.5rem; padding-top: 0.25rem; padding-bottom: 0.25rem; --tw-text-opacity: 1; color: rgb(203 213 225 / var(--tw-text-opacity, 1)); transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.ft-link:hover { --tw-text-opacity: 1; color: rgb(255 255 255 / var(--tw-text-opacity, 1)); }
@media (min-width: 768px) { .ft-link { min-height: 0px; } }
@media (min-width: 768px) { .ft-link { padding-top: 0px; padding-bottom: 0px; } }
/* NEW dot-hover <= w-1 h-1 rounded-full bg-brand-light/70 transition-transform duration-300 group-hover:scale-150 */
.dot-hover { width: 0.25rem; height: 0.25rem; border-radius: 9999px; background-color: rgba(23, 163, 152, 0.7); transition-property: transform; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; transition-duration: 300ms; animation-duration: 300ms; }
.group:hover .dot-hover { --tw-scale-x: 1.5; --tw-scale-y: 1.5; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
/* NEW stack-md <= space-y-5 md:space-y-6 min-w-0 */
.stack-md> :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(1.25rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1.25rem * var(--tw-space-y-reverse)); }
.stack-md { min-width: 0px; }
@media (min-width: 768px) { .stack-md> :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(1.5rem * var(--tw-space-y-reverse)); } }
/* NEW ft-h <= text-white font-semibold mb-4 text-sm tracking-[0.14em] flex items-center gap-2 */
.ft-h { --tw-text-opacity: 1; color: rgb(255 255 255 / var(--tw-text-opacity, 1)); font-weight: 600; margin-bottom: 1rem; font-size: 0.875rem; line-height: 1.25rem; letter-spacing: 0.14em; display: flex; align-items: center; gap: 0.5rem; }
/* NEW ft-rule <= w-5 h-[2px] bg-brand-light */
.ft-rule { width: 1.25rem; height: 2px; --tw-bg-opacity: 1; background-color: rgb(23 163 152 / var(--tw-bg-opacity, 1)); }
/* NEW card-arrow <= text-brand group-hover:text-white transition-colors */
.card-arrow { --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.group:hover .card-arrow { --tw-text-opacity: 1; color: rgb(255 255 255 / var(--tw-text-opacity, 1)); }

/* ===== 组合吸收追加 ===== */
/* case-link-tt <= group-hover:text-brand */
.group:hover .case-link-tt { --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
/* meta-lbl <= group-hover:text-brand */
.group:hover .meta-lbl { --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
/* label <= group-hover:text-brand */
.group:hover .label { --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
/* rank-tt <= group-hover:text-brand */
.group:hover .rank-tt { --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
/* case-card-tt <= group-hover:text-brand */
.group:hover .case-card-tt { --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
/* label-sm <= group-hover:text-brand */
.group:hover .label-sm { --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
/* card-tt-2 <= group-hover:text-brand */
.group:hover .card-tt-2 { --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
/* label-sm-iflex <= group-hover:text-brand */
.group:hover .label-sm-iflex { --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
/* tt-md <= group-hover:text-brand */
.group:hover .tt-md { --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
/* tt-lg <= group-hover:text-brand */
.group:hover .tt-lg { --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
/* area-name-2 <= group-hover:text-brand */
.group:hover .area-name-2 { --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
/* rank-num <= text-brand group-hover:bg-brand group-hover:text-white */
.rank-num { --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
.group:hover .rank-num { --tw-bg-opacity: 1; background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1)); --tw-text-opacity: 1; color: rgb(255 255 255 / var(--tw-text-opacity, 1)); }
/* meta-lbl-3 <= group-hover:bg-brand */
.group:hover .meta-lbl-3 { --tw-bg-opacity: 1; background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1)); }
/* cover-img <= group-hover:scale-105 */
.group:hover .cover-img { --tw-scale-x: 1.05; --tw-scale-y: 1.05; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
/* ic-img <= group-hover:scale-105 */
.group:hover .ic-img { --tw-scale-x: 1.05; --tw-scale-y: 1.05; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
/* img-cover-anim <= group-hover:scale-105 */
.group:hover .img-cover-anim { --tw-scale-x: 1.05; --tw-scale-y: 1.05; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
/* icon-rot <= group-hover:translate-x-1 */
.group:hover .icon-rot { --tw-translate-x: 0.25rem; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
/* ic-xs-3 <= group-hover:translate-x-1 */
.group:hover .ic-xs-3 { --tw-translate-x: 0.25rem; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
/* line-clamp-1 <= group-hover:underline */
.group:hover .line-clamp-1 { text-decoration-line: underline; }
/* ic-md-2 <= text-brand group-hover:opacity-100 group-hover:translate-x-0 */
.ic-md-2 { --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
.group:hover .ic-md-2 { opacity: 1; --tw-translate-x: 0px; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
/* btn-ic-lbl <= group-hover:w-4 group-hover:bg-brand/60 */
.group:hover .btn-ic-lbl { width: 1rem; background-color: rgba(10, 107, 100, 0.6); }
/* badge-muted <= group-hover:opacity-100 group-focus-visible:opacity-100 group-active:opacity-100 */
.group:hover .badge-muted { opacity: 1; }
.group:focus-visible .badge-muted { opacity: 1; }
.group:active .badge-muted { opacity: 1; }

/* ===== 组合吸收追加 ===== */
/* btn-full-3 <= border border-line hover:shadow-[0_12px_32px_rgba(10,107,100,0.18)] */
.btn-full-3 { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
.btn-full-3:hover { --tw-shadow: 0 12px 32px rgba(10,107,100,0.18); --tw-shadow-colored: 0 12px 32px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
/* btn-full-4 <= border border-line hover:shadow-[0_12px_32px_rgba(10,107,100,0.18)] */
.btn-full-4 { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
.btn-full-4:hover { --tw-shadow: 0 12px 32px rgba(10,107,100,0.18); --tw-shadow-colored: 0 12px 32px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
/* btn-start-pad-3 <= border border-line hover:shadow-[0_8px_24px_rgba(10,107,100,0.12)] */
.btn-start-pad-3 { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
.btn-start-pad-3:hover { --tw-shadow: 0 8px 24px rgba(10,107,100,0.12); --tw-shadow-colored: 0 8px 24px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
/* btn-list <= border border-line hover:shadow-[0_8px_24px_rgba(10,107,100,0.12)] */
.btn-list { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
.btn-list:hover { --tw-shadow: 0 8px 24px rgba(10,107,100,0.12); --tw-shadow-colored: 0 8px 24px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
/* 卡片悬停时标题与阅读链接转品牌色（原用 group + group-hover: 工具类） */
.btn-list:hover .tt-md-2,
.btn-list:hover .link-sm-2 {
  color: #0A6B64;
}
/* btn-quote-2 <= border border-brand text-brand */
.btn-quote-2 { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
/* card-grad <= shadow-[0_10px_30px_rgba(10,107,100,0.22)] */
.card-grad { --tw-shadow: 0 10px 30px rgba(10,107,100,0.22); --tw-shadow-colored: 0 10px 30px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }

/* ===== 组合吸收追加 ===== */
/* step-lbl <= group-hover/nav:max-w-[8rem] group-hover/nav:opacity-100 text-sub */
.step-lbl { --tw-text-opacity: 1; color: rgb(100 108 121 / var(--tw-text-opacity, 1)); }
.group\/nav:hover .step-lbl { max-width: 8rem; opacity: 1; }
/* step-lbl-2 <= group-hover/nav:max-w-[8rem] group-hover/nav:opacity-100 */
.group\/nav:hover .step-lbl-2 { max-width: 8rem; opacity: 1; }
/* col-overflow-hidden <= border border-line hover:border-brand/50 */
.col-overflow-hidden { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
.col-overflow-hidden:hover { border-color: rgba(10, 107, 100, 0.5); }
/* case-info-card <= border border-line */
.case-info-card { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* office-note <= border border-line */
.office-note { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* contact-form-card <= border border-line */
.contact-form-card { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* search-input <= border border-line */
.search-input { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* office-card <= border border-line */
.office-card { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* 复刻 office-card 原有 border 声明，保持原样 */
.office-card { border-top-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); border-top-width: 4px }
/* card-pad-lg-2 <= border border-line */
.card-pad-lg-2 { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* 复刻 card-pad-lg-2 原有 border 声明，保持原样 */
.card-pad-lg-2 { border-top-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); border-top-width: 4px }
/* card-pad-lg-3 <= border border-line */
.card-pad-lg-3 { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* card-white-xl <= border border-line */
.card-white-xl { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* btn-tile-lg <= border border-line */
.btn-tile-lg { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
/* 复刻 btn-tile-lg 原有 border 声明，保持原样 */
.btn-tile-lg { border-top-color: transparent; border-top-width: 4px }
/* btn-cta-lg-2 <= border border-brand */
.btn-cta-lg-2 { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); }
.btn-cta-lg-2:hover { --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); }
.btn-cta-lg-2 { --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); }
/* btn-filter-2 <= border border-brand */
.btn-filter-2 { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); }
.btn-filter-2:hover { --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); }
.btn-filter-2 { --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); }
/* btn-page-2 <= border border-brand */
.btn-page-2 { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); }
.btn-page-2:hover { --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); }
.btn-page-2 { --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); }
/* faq-filter-on <= border border-brand */
.faq-filter-on { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); }
.faq-filter-on:hover { --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); }
.faq-filter-on { --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); }
/* pager-num-on <= border border-brand */
.pager-num-on { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); }
.pager-num-on:hover { --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); }
.pager-num-on { --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); }
/* btn-quote-3 <= border border-brand text-brand */
.btn-quote-3 { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
.btn-quote-3:hover { --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
.btn-quote-3 { --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); }
/* case-link-4 <= border border-line hover:shadow-[0_10px_28px_rgba(10,107,100,0.14)] */
.case-link-4 { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
.case-link-4:hover { --tw-shadow: 0 10px 28px rgba(10,107,100,0.14); --tw-shadow-colored: 0 10px 28px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
/* case-card-col-2 <= border border-line hover:shadow-[0_12px_32px_rgba(10,107,100,0.18)] */
.case-card-col-2 { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
.case-card-col-2:hover { --tw-shadow: 0 12px 32px rgba(10,107,100,0.18); --tw-shadow-colored: 0 12px 32px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
/* item-tile <= border border-line hover:shadow-[0_8px_24px_rgba(10,107,100,0.12)] */
.item-tile { border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); }
.item-tile:hover { --tw-shadow: 0 8px 24px rgba(10,107,100,0.12); --tw-shadow-colored: 0 8px 24px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
/* btn-ic-pad-4 <= shadow-[0_10px_30px_rgba(10,107,100,0.22)] hover:shadow-[0_14px_36px_rgba(10,107,100,0.3)] */
.btn-ic-pad-4 { --tw-shadow: 0 10px 30px rgba(10,107,100,0.22); --tw-shadow-colored: 0 10px 30px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
.btn-ic-pad-4:hover { --tw-shadow: 0 14px 36px rgba(10,107,100,0.3); --tw-shadow-colored: 0 14px 36px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
/* case-card-tt-4 <= text-sub group-hover:text-brand */
.case-card-tt-4 { --tw-text-opacity: 1; color: rgb(100 108 121 / var(--tw-text-opacity, 1)); }
.group:hover .case-card-tt-4 { --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
/* badge-grad <= group-hover:opacity-100 */
.group:hover .badge-grad { opacity: 1; }
/* captcha-tip <= group-hover:opacity-100 group-focus-visible:opacity-100 group-active:opacity-100 */
.group:hover .captcha-tip { opacity: 1; }
.group:focus-visible .captcha-tip { opacity: 1; }
.group:active .captcha-tip { opacity: 1; }
/* cell-pad-sm <= shadow-[0_8px_28px_rgba(10,107,100,0.10)] */
.cell-pad-sm { --tw-shadow: 0 8px 28px rgba(10,107,100,0.10); --tw-shadow-colored: 0 8px 28px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); }
/* btn-ic-sm-2 <= border transition-[color,background-color,border-color,transform] text-brand */
.btn-ic-sm-2 { border-width: 1px; transition-property: color, background-color, border-color, transform; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
.btn-ic-sm-2:hover { --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
/* 复刻 btn-ic-sm-2 原有 border 声明，保持原样 */
.btn-ic-sm-2 { border-color: rgba(10, 107, 100, 0.4) }
/* form-input <= border */
.form-input { border-width: 1px; }
/* 复刻 form-input 原有 border 声明，保持原样 */
.form-input { border-color: rgba(255, 255, 255, 0.25) }
/* list-stack <= space-y-1.5 md:space-y-2.5 text-sm */
.list-stack> :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0.375rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.375rem * var(--tw-space-y-reverse)); }
.list-stack { font-size: 0.875rem; line-height: 1.25rem; }
@media (min-width: 768px) { .list-stack> :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(0.625rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(0.625rem * var(--tw-space-y-reverse)); } }
/* art-box <= space-y-10 md:space-y-12 */
.art-box> :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(2.5rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(2.5rem * var(--tw-space-y-reverse)); }
@media (min-width: 768px) { .art-box> :not([hidden]) ~ :not([hidden]) { --tw-space-y-reverse: 0; margin-top: calc(3rem * calc(1 - var(--tw-space-y-reverse))); margin-bottom: calc(3rem * var(--tw-space-y-reverse)); } }
/* meta-note <= text-brand-light mt-1 shrink-0 */
.meta-note { --tw-text-opacity: 1; color: rgb(23 163 152 / var(--tw-text-opacity, 1)); margin-top: 0.25rem; flex-shrink: 0; }
/* meta-note-sm <= text-brand-light mt-0.5 shrink-0 */
.meta-note-sm { --tw-text-opacity: 1; color: rgb(23 163 152 / var(--tw-text-opacity, 1)); margin-top: 0.125rem; flex-shrink: 0; }

/* ===== 入场错峰：模板写 --d:Nms，此处统一消费 ===== */
.reveal-item { transition-delay: var(--d, 0ms); }
.reveal-fill { transition-delay: var(--d, 0ms); }
.reveal-box { transition-delay: var(--d, 0ms); }
.reveal-lead { transition-delay: var(--d, 0ms); }
.reveal-tail { transition-delay: var(--d, 0ms); }

/* ===== 组合吸收追加 ===== */
/* NEW ft-rule-grad <= h-1 bg-gradient-to-r from-brand-light via-brand to-brand-dark */
.ft-rule-grad { height: 0.25rem; background-image: linear-gradient(to right, var(--tw-gradient-stops)); --tw-gradient-from: #17A398 var(--tw-gradient-from-position); --tw-gradient-to: rgb(23 163 152 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); --tw-gradient-to: rgb(10 107 100 / 0)  var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), #0A6B64 var(--tw-gradient-via-position), var(--tw-gradient-to); --tw-gradient-to: #07544F var(--tw-gradient-to-position); }
/* NEW ft-grid <= container mx-auto px-4 py-10 md:py-14 grid grid-cols-1 md:grid-cols-2 lg:grid-cols-12 gap-x-6 gap-y-8 md:gap-y-10 */
.ft-grid { width: 100%; margin-left: auto; margin-right: auto; padding-left: 1rem; padding-right: 1rem; padding-top: 2.5rem; padding-bottom: 2.5rem; display: grid; grid-template-columns: repeat(1, minmax(0px, 1fr)); column-gap: 1.5rem; row-gap: 2rem; }
@media (min-width: 640px) { .ft-grid { max-width: 640px; } }
@media (min-width: 768px) { .ft-grid { max-width: 768px; } }
@media (min-width: 1024px) { .ft-grid { max-width: 1024px; } }
@media (min-width: 1280px) { .ft-grid { max-width: 1280px; } }
@media (min-width: 1536px) { .ft-grid { max-width: 1536px; } }
@media (min-width: 768px) { .ft-grid { padding-top: 3.5rem; padding-bottom: 3.5rem; } }
@media (min-width: 768px) { .ft-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); } }
@media (min-width: 1024px) { .ft-grid { grid-template-columns: repeat(12, minmax(0px, 1fr)); } }
@media (min-width: 768px) { .ft-grid { row-gap: 2.5rem; } }
/* NEW ft-col-badge <= w-10 h-10 rounded-xl bg-gradient-to-br from-brand-light to-brand flex items-center justify-center ring-1 ring-inset ring-white/20 */
.ft-col-badge { width: 2.5rem; height: 2.5rem; border-radius: 0.75rem; background-image: linear-gradient(to bottom right, var(--tw-gradient-stops)); --tw-gradient-from: #17A398 var(--tw-gradient-from-position); --tw-gradient-to: rgb(23 163 152 / 0) var(--tw-gradient-to-position); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to); --tw-gradient-to: #0A6B64 var(--tw-gradient-to-position); display: flex; align-items: center; justify-content: center; --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-inset: inset; --tw-ring-color: rgb(255 255 255 / 0.2); }
.ft-col-badge { --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); }
/* NEW ft-col-title <= block text-lg font-bold text-white tracking-[0.06em] */
.ft-col-title { display: block; font-size: 1.125rem; line-height: 1.75rem; font-weight: 700; --tw-text-opacity: 1; color: rgb(255 255 255 / var(--tw-text-opacity, 1)); letter-spacing: 0.06em; }
.ft-col-title:hover { --tw-text-opacity: 1; color: rgb(255 255 255 / var(--tw-text-opacity, 1)); }
/* NEW ft-col-en <= block text-[10px] text-white/75 tracking-[0.22em] uppercase */
.ft-col-en { display: block; font-size: 10px; color: rgba(255, 255, 255, 0.75); letter-spacing: 0.22em; text-transform: uppercase; }
/* NEW ft-note <= mt-3 flex w-full items-start gap-2 rounded-md bg-white/5 px-3 py-2 text-[12px] leading-5 text-slate-200 ring-1 ring-inset ring-white/10 */
.ft-note { margin-top: 0.75rem; display: flex; width: 100%; align-items: flex-start; gap: 0.5rem; border-radius: calc(var(--radius) - 2px); background-color: rgba(255, 255, 255, 0.05); padding-left: 0.75rem; padding-right: 0.75rem; padding-top: 0.5rem; padding-bottom: 0.5rem; font-size: 12px; line-height: 1.25rem; --tw-text-opacity: 1; color: rgb(226 232 240 / var(--tw-text-opacity, 1)); --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); --tw-ring-inset: inset; --tw-ring-color: rgb(255 255 255 / 0.1); }
.ft-note { --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color); --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color); box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000); }
/* NEW ft-col-side <= md:col-span-2 lg:col-span-3 lg:pl-8 lg:border-l lg:border-white/10 */
@media (min-width: 768px) { .ft-col-side { grid-column: span 2 / span 2; } }
@media (min-width: 1024px) { .ft-col-side { grid-column: span 3 / span 3; } }
@media (min-width: 1024px) { .ft-col-side { padding-left: 2rem; } }
@media (min-width: 1024px) { .ft-col-side { border-left-width: 1px; } }
@media (min-width: 1024px) { .ft-col-side { border-color: rgba(255, 255, 255, 0.1); } }
/* NEW ft-col-link <= inline-flex items-center gap-2 text-xl md:text-2xl font-bold text-white hover:text-white/80 transition-colors */
.ft-col-link { display: inline-flex; align-items: center; gap: 0.5rem; font-size: 1.25rem; line-height: 1.75rem; font-weight: 700; --tw-text-opacity: 1; color: rgb(255 255 255 / var(--tw-text-opacity, 1)); transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.ft-col-link:hover { --tw-text-opacity: 1; color: rgb(255 255 255 / var(--tw-text-opacity, 1)); color: rgba(255, 255, 255, 0.8); }
@media (min-width: 768px) { .ft-col-link { font-size: 1.5rem; line-height: 2rem; } }
/* NEW ft-btn-top <= mt-6 inline-flex min-h-[44px] md:min-h-0 items-center gap-2 bg-white text-brand-dark hover:bg-brand-soft px-6 py-2.5 rounded-md text-sm font-semibold shadow-[0_8px_20px_-10px_rgba(0,0,0,0.6)] transition-colors */
.ft-btn-top { margin-top: 1.5rem; display: inline-flex; min-height: 44px; align-items: center; gap: 0.5rem; --tw-bg-opacity: 1; background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)); --tw-text-opacity: 1; color: rgb(7 84 79 / var(--tw-text-opacity, 1)); padding-left: 1.5rem; padding-right: 1.5rem; padding-top: 0.625rem; padding-bottom: 0.625rem; border-radius: calc(var(--radius) - 2px); font-size: 0.875rem; line-height: 1.25rem; font-weight: 600; --tw-shadow: 0 8px 20px -10px rgba(0,0,0,0.6); --tw-shadow-colored: 0 8px 20px -10px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.ft-btn-top:hover { --tw-bg-opacity: 1; background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)); --tw-text-opacity: 1; color: rgb(7 84 79 / var(--tw-text-opacity, 1)); --tw-bg-opacity: 1; background-color: rgb(228 242 240 / var(--tw-bg-opacity, 1)); }
@media (min-width: 768px) { .ft-btn-top { min-height: 0px; } }
/* NEW ft-btn-arrow <= text-xs transition-transform duration-300 group-hover:translate-x-1 */
.ft-btn-arrow { font-size: 0.75rem; line-height: 1rem; transition-property: transform; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; transition-duration: 300ms; animation-duration: 300ms; }
.group:hover .ft-btn-arrow { --tw-translate-x: 0.25rem; transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); }
/* NEW ft-copy <= container mx-auto px-4 text-center text-xs text-slate-300 leading-6 */
.ft-copy { width: 100%; margin-left: auto; margin-right: auto; padding-left: 1rem; padding-right: 1rem; text-align: center; font-size: 0.75rem; line-height: 1rem; --tw-text-opacity: 1; color: rgb(203 213 225 / var(--tw-text-opacity, 1)); line-height: 1.5rem; }
@media (min-width: 640px) { .ft-copy { max-width: 640px; } }
@media (min-width: 768px) { .ft-copy { max-width: 768px; } }
@media (min-width: 1024px) { .ft-copy { max-width: 1024px; } }
@media (min-width: 1280px) { .ft-copy { max-width: 1280px; } }
@media (min-width: 1536px) { .ft-copy { max-width: 1536px; } }
/* NEW ft-meta <= mt-1.5 flex flex-wrap items-center justify-center gap-x-3 gap-y-1 */
.ft-meta { margin-top: 0.375rem; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; column-gap: 0.75rem; row-gap: 0.25rem; }
/* NEW ft-float <= fixed right-3 md:right-6 bottom-20 md:bottom-8 z-40 flex flex-col items-end gap-2.5 md:gap-3 transition-all duration-500 */
.ft-float { position: fixed; right: 0.75rem; bottom: 5rem; z-index: 40; display: flex; flex-direction: column; align-items: flex-end; gap: 0.625rem; transition-property: all; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; transition-property: all; transition-timing-function: cubic-bezier(.4, 0, .2, 1); transition-duration: 500ms; animation-duration: 500ms; }
@media (min-width: 768px) { .ft-float { right: 1.5rem; } }
@media (min-width: 768px) { .ft-float { bottom: 2rem; } }
@media (min-width: 768px) { .ft-float { gap: 0.75rem; } }
/* NEW ft-float-btn <= flex items-center gap-2.5 bg-brand text-white pl-4 pr-2.5 py-2.5 md:pl-4 md:pr-3 md:py-3 rounded-full shadow-[0_10px_28px_-10px_rgba(10,107,100,0.8)] hover:bg-brand-dark transition-colors */
.ft-float-btn { display: flex; align-items: center; gap: 0.625rem; --tw-bg-opacity: 1; background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1)); --tw-text-opacity: 1; color: rgb(255 255 255 / var(--tw-text-opacity, 1)); padding-left: 1rem; padding-right: 0.625rem; padding-top: 0.625rem; padding-bottom: 0.625rem; border-radius: 9999px; --tw-shadow: 0 10px 28px -10px rgba(10,107,100,0.8); --tw-shadow-colored: 0 10px 28px -10px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.ft-float-btn:hover { --tw-bg-opacity: 1; background-color: rgb(10 107 100 / var(--tw-bg-opacity, 1)); --tw-text-opacity: 1; color: rgb(255 255 255 / var(--tw-text-opacity, 1)); --tw-bg-opacity: 1; background-color: rgb(7 84 79 / var(--tw-bg-opacity, 1)); }
@media (min-width: 768px) { .ft-float-btn { padding-left: 1rem; } }
@media (min-width: 768px) { .ft-float-btn { padding-right: 0.75rem; } }
@media (min-width: 768px) { .ft-float-btn { padding-top: 0.75rem; padding-bottom: 0.75rem; } }
/* NEW ft-float-ic <= w-9 h-9 rounded-full bg-white/15 flex items-center justify-center */
.ft-float-ic { width: 2.25rem; height: 2.25rem; border-radius: 9999px; background-color: rgba(255, 255, 255, 0.15); display: flex; align-items: center; justify-content: center; }
.ft-float-ic:hover { background-color: rgba(255, 255, 255, 0.15); }
/* NEW ft-float-tip <= absolute right-full mr-3 whitespace-nowrap bg-white border border-line rounded-md px-4 py-3 text-sm text-ink shadow-lg transition-opacity group-hover:opacity-100 */
.ft-float-tip { position: absolute; right: 100%; margin-right: 0.75rem; white-space: nowrap; --tw-bg-opacity: 1; background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)); border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); border-radius: calc(var(--radius) - 2px); padding-left: 1rem; padding-right: 1rem; padding-top: 0.75rem; padding-bottom: 0.75rem; font-size: 0.875rem; line-height: 1.25rem; --tw-text-opacity: 1; color: rgb(31 41 55 / var(--tw-text-opacity, 1)); --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1); --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); transition-property: opacity; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.ft-float-tip:hover { --tw-bg-opacity: 1; background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)); }
.group:hover .ft-float-tip { opacity: 1; }
/* NEW ft-social-btn <= w-11 h-11 md:w-12 md:h-12 rounded-full bg-white border border-line text-brand flex items-center justify-center shadow-md cursor-pointer hover:border-brand transition-colors */
.ft-social-btn { width: 2.75rem; height: 2.75rem; border-radius: 9999px; --tw-bg-opacity: 1; background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)); border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); display: flex; align-items: center; justify-content: center; --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1); --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); cursor: pointer; transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.ft-social-btn:hover { --tw-bg-opacity: 1; background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)); --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); }
@media (min-width: 768px) { .ft-social-btn { width: 3rem; } }
@media (min-width: 768px) { .ft-social-btn { height: 3rem; } }
/* NEW ft-social-btn-2 <= w-11 h-11 md:w-12 md:h-12 rounded-full bg-white border border-line text-brand-dark flex items-center justify-center shadow-md hover:border-brand hover:text-brand transition-colors */
.ft-social-btn-2 { width: 2.75rem; height: 2.75rem; border-radius: 9999px; --tw-bg-opacity: 1; background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)); border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); --tw-text-opacity: 1; color: rgb(7 84 79 / var(--tw-text-opacity, 1)); display: flex; align-items: center; justify-content: center; --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1); --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.ft-social-btn-2:hover { --tw-bg-opacity: 1; background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)); --tw-text-opacity: 1; color: rgb(7 84 79 / var(--tw-text-opacity, 1)); --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
@media (min-width: 768px) { .ft-social-btn-2 { width: 3rem; } }
@media (min-width: 768px) { .ft-social-btn-2 { height: 3rem; } }
/* NEW ft-social-btn-3 <= w-11 h-11 md:w-12 md:h-12 rounded-full bg-white border border-line text-brand-dark flex items-center justify-center shadow-md hover:border-brand hover:text-brand transition-all duration-300 */
.ft-social-btn-3 { width: 2.75rem; height: 2.75rem; border-radius: 9999px; --tw-bg-opacity: 1; background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)); border-width: 1px; --tw-border-opacity: 1; border-color: rgb(227 233 240 / var(--tw-border-opacity, 1)); --tw-text-opacity: 1; color: rgb(7 84 79 / var(--tw-text-opacity, 1)); display: flex; align-items: center; justify-content: center; --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1); --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color); box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); transition-property: all; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; transition-property: all; transition-timing-function: cubic-bezier(.4, 0, .2, 1); transition-duration: 300ms; animation-duration: 300ms; }
.ft-social-btn-3:hover { --tw-bg-opacity: 1; background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1)); --tw-text-opacity: 1; color: rgb(7 84 79 / var(--tw-text-opacity, 1)); --tw-border-opacity: 1; border-color: rgb(10 107 100 / var(--tw-border-opacity, 1)); --tw-text-opacity: 1; color: rgb(10 107 100 / var(--tw-text-opacity, 1)); }
@media (min-width: 768px) { .ft-social-btn-3 { width: 3rem; } }
@media (min-width: 768px) { .ft-social-btn-3 { height: 3rem; } }

/* ===== 入场揭示：初始态收进语义类 ===== */
   模板里不再写 opacity-0 / translate-y-8；reveal.js 揭示时加 .is-in
.reveal-item, .reveal-fill, .reveal-box, .reveal-lead, .reveal-tail, .reveal-fade {
  opacity: 0;
  transform: translateY(2rem);
  transition-property: all;
}
.reveal-item.is-in, .reveal-fill.is-in, .reveal-box.is-in, .reveal-lead.is-in, .reveal-tail.is-in, .reveal-fade.is-in {
  opacity: 1;
  transform: none;
}

/* min-w-0 语义化 */
.shrink-ok { min-width: 0px; }

/* min-w-0 语义化 */
.shrink-ok { min-width: 0px; }

/* min-w-0 语义化 */
.shrink-ok { min-width: 0px; }

/* ===== 服务内容说明 / 材料要求 / 业务分类周期（补齐 Ftable 缺失列）===== */
/* 服务内容卡片：外层用了 .shrink-0（flex-shrink:0）会拒绝收缩，
   长文本在窄屏会撑破容器 → 这里给内部元素补 min-width:0 + 断词 */
.svc-name {
    display: block;
    min-width: 0;
    font-size: 15px;
    font-weight: 600;
    line-height: 21px;
    color: #1F2937;
    overflow-wrap: anywhere;
}
.svc-note {
    display: block;
    min-width: 0;
    margin-top: 3px;
    font-size: 13.5px;
    line-height: 21px;
    color: #5A6B7B;
    overflow-wrap: anywhere;
}
.mat-note { display: block; margin-top: 5px; font-size: 13px; line-height: 1.6; color: #5A6B7B; }
.biz-time {
    display: inline-block;
    margin-top: 6px;
    font-size: 12.5px;
    line-height: 1.5;
    color: #07544F;
    background: #F2F8F7;
    border-radius: 999px;
    padding: 2px 10px;
}

/* ===== 适合哪些人办理：推荐理由行（图标与文字垂直居中）===== */
.shri-note {
    display: flex;
    align-items: center;      /* 图标与文字真正居中，不靠行高凑 */
    gap: 6px;
    margin-top: 10px;
    font-size: 14px;
    line-height: 20px;       /* 与「服务内容」区的 svc-name 同规格 */
    color: #1F2937;
}
.shri-note > i {
    font-size: 13px;
    line-height: 1;
}
.shri-note > span {
    min-width: 0;
}

/* ===== 为什么选择我们：卖点卡片（无图标，左边框线区分）===== */
.usp-item {
    padding: 14px 16px 14px 18px;
    background: #FAFCFC;
    border: 1px solid #E3E9F0;
    border-left: 3px solid #0A6B64;
    border-radius: 4px 12px 12px 4px;
}
.usp-body { min-width: 0; }
.usp-tt {
    display: block;
    font-size: 15px;
    font-weight: 600;
    line-height: 20px;
    color: #1F2937;
}
.usp-tx {
    display: block;
    margin-top: 5px;
    font-size: 13.5px;
    line-height: 21px;
    color: #5A6B7B;
}
@media (max-width: 640px) {
    .usp-item { padding: 13px 14px 13px 16px; }
}

/* ===== 纯网格容器（无左右 padding，用于让各区块左边线对齐）===== */
.grid-2col-plain {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0.75rem;
    margin-top: 1rem;
}
.grid-3col-plain {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0.75rem;
    margin-top: 1rem;
}
@media (min-width: 640px) {
    .grid-2col-plain { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .grid-3col-plain { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1024px) {
    .grid-3col-plain { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
/* ===== 价格表（栏目字段 jiage 驱动；行分隔线风格）===== */
.fee-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) max-content;
    gap: 2px 18px;
    padding: 12px 0;
    border-bottom: 1px solid #E3E9F0;
    align-items: baseline;
}
.fee-row:last-child { border-bottom: 0; }
.fee-name { font-size: 15px; font-weight: 600; color: #1F2937; min-width: 0; }
.fee-val {
    font-size: 17px;
    font-weight: 700;
    white-space: nowrap;
    justify-self: end;
    color: #0A6B64;
}
/* 描述 + 备注 同行排列 */
.fee-detail {
    grid-column: 1 / -1;
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 4px 10px;
    min-width: 0;
}
.fee-desc {
    font-size: 13.5px;
    line-height: 20px;
    color: #5A6B7B;
    min-width: 0;
}
.fee-note {
    flex-shrink: 0;
    font-size: 12.5px;
    line-height: 18px;
    color: #07544F;
    background: #F2F8F7;
    border-radius: 999px;
    padding: 1px 9px;
}
@media (max-width: 640px) { .fee-val { font-size: 16px; } }

/* ===== 办理流程（栏目字段 bllc 驱动）：名称+时长同行、竖线拉通 ===== */
.flow-list {
    list-style: none;
    margin: 1.25rem 0 0;
    padding: 0;
}
.flow-list > li {
    display: flex;
    gap: 16px;
    align-items: stretch;      /* 关键：让竖线列能拉满整行高度 */
}
.flow-axis {
    flex: 0 0 36px;
    display: flex;
    flex-direction: column;
    align-items: center;
    align-self: stretch;   /* 关键：拉满整行高度，竖线才能连通 */
}
.flow-no {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #0A6B64;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
}
/* 竖线：拉通整行高度，最后一步不画 */
.flow-line {
    flex: 1 1 auto;
    width: 2px;
    background: rgba(10, 107, 100, 0.28);
}
.flow-list > li:last-child .flow-line { background: transparent; }
.flow-body {
    flex: 1 1 auto;
    min-width: 0;
    padding-bottom: 18px;
}
.flow-list > li:last-child .flow-body { padding-bottom: 0; }
.step-head { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.step-name { font-size: 16px; font-weight: 600; color: #1F2937; line-height: 22px; }
.step-time {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    flex-shrink: 0;
    font-size: 12.5px;
    line-height: 18px;
    color: #07544F;
    background: #F2F8F7;
    border-radius: 999px;
    padding: 2px 10px;
    white-space: nowrap;
}
.step-time > i { font-size: 12px; line-height: 1; }
.step-desc {
    display: block;
    margin-top: 4px;
    font-size: 13.5px;
    line-height: 21px;
    color: #5A6B7B;
}
@media (max-width: 640px) {
    .flow-list > li { gap: 12px; }
    .flow-axis { flex-basis: 30px; }
    .flow-no { width: 30px; height: 30px; font-size: 13px; }
    .step-name { font-size: 15px; }
}

/* ===== 标题内嵌图标：统一 16px（压过 icons.css 各图形类 10/14/30px 的默认字号）===== */
:root .title-dark > i[class^="ic-"],
:root .title-dark > i[class*=" ic-"],
:root .card-tt-3 > i[class^="ic-"],
:root .sec-title-bar > i[class^="ic-"] {
    font-size: 16px;
    line-height: 1;
    vertical-align: -2px;
}

/* ===== 周期区下方「事实卡」（zhouqi 富文本转卡片）===== */
.fact-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 0.75rem;
    margin-top: 1rem;
}
@media (min-width: 900px) {
    .fact-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.fact-card {
    padding: 16px 18px;
    background: #FAFCFC;
    border: 1px solid #E3E9F0;
    border-radius: 10px;
}
.fact-tt {
    display: block;
    margin-bottom: 6px;
    font-size: 15px;
    font-weight: 600;
    line-height: 21px;
    color: #0A6B64;
}
.fact-tx {
    display: block;
    font-size: 13.5px;
    line-height: 22px;
    color: #5A6B7B;
}
.fact-list { margin: 0; padding: 0; list-style: none; }
.fact-list > li {
    position: relative;
    padding-left: 15px;
    font-size: 13.5px;
    line-height: 22px;
    color: #5A6B7B;
}
.fact-list > li + li { margin-top: 4px; }
.fact-list > li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 9px;
    width: 5px;
    height: 5px;
    border-radius: 999px;
    background: #0A6B64;
    opacity: .55;
}

/* ===== 所需材料（栏目字段 sucai 驱动）：卡片样式 ===== */
.mat-row {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 14px 16px;
    background: #FAFCFC;
    border: 1px solid #E3E9F0;
    border-radius: 10px;
}
.mat-row > i {
    flex-shrink: 0;
    width: 15px;
    height: 15px;
    margin-top: 3px;
    font-size: 14px;
    line-height: 1;
    color: #0A6B64;
}
.mat-main { min-width: 0; }
.mat-title {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 0 7px;
    font-size: 13.5px;
    font-weight: 600;
    line-height: 20px;
    color: #1F2937;
}
.mat-title > span:first-child { min-width: 0; overflow-wrap: anywhere; }
.mat-tag {
    display: inline-block;
    flex-shrink: 0;
    font-size: 11.5px;
    line-height: 17px;
    font-weight: 500;
    color: #07544F;
    background: #E3F1EF;
    border-radius: 999px;
    padding: 1px 9px;
    white-space: nowrap;
    vertical-align: 1px;
}
.mat-tag.optional {
    color: #6B7280;
    background: #EEF1F4;
}
.mat-note {
    display: block;
    margin-top: 5px;
    font-size: 13px;
    line-height: 20px;
    color: #5A6B7B;
}
@media (max-width: 640px) {
    .mat-row { padding: 12px 13px; }
}

/* ===== 侧栏业务卡片：当前页高亮（业务详情页 /baike/ 与 /fwxm/ 共用）===== */
.bkcat-link-2.current,
.bkcat-link-3.current {
    background-color: #F2F8F7;
    box-shadow: inset 3px 0 0 #0A6B64;
}
.bkcat-link-2.current .label-sm,
.bkcat-link-3.current .label-sm { font-weight: 600; }
/* 深色卡片（.card-brand）里的栏目列表：未选中项必须用浅色。
   原来直接挂 text-sub（#646C79）在深绿 #0A6B64 上，对比度只有 1.6:1，几乎不可读。 */
.card-brand .bkcat-link-2:not(.current) .label-sm {
    color: rgba(255, 255, 255, 0.88);
}
.card-brand .bkcat-link-2:not(.current) .bkcat-num-2 {
    color: rgba(255, 255, 255, 0.78);
}
/* hover 底色变成近白 #F4F7FA，文字须翻回深色，否则白字白底 */
.card-brand .bkcat-link-2:not(.current):hover .label-sm,
.card-brand .bkcat-link-2:not(.current):hover .bkcat-num-2 {
    color: #0A6B64;
}

/* ===== 常见问题列表容器（卡片间距）===== */
.faq-list {
    display: flex;
    flex-direction: column;
    gap: 12px;                /* 卡片间距 */
    margin-top: 20px;
}
.faq-list > .frame-clip {
    padding: 0;                /* 去掉 frame-clip 自带内边距，改由 btn/p 控制 */
}
.faq-list .btn-q-2 {
    width: 100%;
    padding: 14px 18px;
    gap: 12px;
    text-align: left;
}
.faq-list .btn-q-2 > i { margin-left: auto; flex-shrink: 0; }
.faq-list > .frame-clip > p {
    padding: 0 18px 16px;
    font-size: 14px;
    line-height: 24px;
}
@media (max-width: 640px) {
    .faq-list { gap: 10px; margin-top: 16px; }
    .faq-list .btn-q-2 { padding: 12px 14px; font-size: 15px; line-height: 22px; }
    .faq-list > .frame-clip > p { padding: 0 14px 14px; font-size: 13.5px; line-height: 22px; }
}

/* ===== 服务内容卡片：允许内部文字收缩（外层 .shrink-0 的 flex-shrink:0 会撑破窄屏）===== */
.li-start-pad-2 > .shrink-0 {
    flex-shrink: 1;
    min-width: 0;
}h6.case-card-tt{ display: -webkit-box; }

/* ===== 批1：吸收 `border` + `border-line`（2026-10-19 按实测 computed 值写四边 longhand，避免简写覆盖长写；已排除 .faq-item，其边框色由 main.js 切换） ===== */
.input,
.input-box,
.cmp-box,
.btn-ic-pad-3,
.svc-cell,
.li-start-pad-3,
.btn-tel-5,
.frame-clip,
.card-white-lg,
.btn-cta-lg-3,
.side-quote,
.card-sm,
.frame-spaced,
.office-note-2,
.btn-msg-2,
.map-box,
.adv-cell,
.btn-ghost,
.side-cta,
.btn-page,
.btn-page-3,
.btn-more-4,
.empty-card {
  border-style: solid;
  border-width: 1px;
  border-color: rgb(227 233 240 / var(--tw-border-opacity, 1));
}
.area-card {
  border-style: solid;
  border-width: 1px;
  border-top-width: 4px;
  border-color: rgb(227 233 240 / var(--tw-border-opacity, 1));
  border-top-color: rgb(10 107 100 / var(--tw-border-opacity, 1));
}
/* 业务页 hero 标题前的大图标：小屏 30px，md(768px) 以上 36px；白色、不收缩 */
.svc-hero-ic {
  font-size: 1.875rem;
  line-height: 1;
  --tw-text-opacity: 1;
  color: rgb(255 255 255 / var(--tw-text-opacity, 1));
  flex-shrink: 0;
}
@media (min-width: 768px) {
  .svc-hero-ic {
    font-size: 2.25rem;
  }
}
/* 首页侧栏浮动导航：超宽屏贴左 1.5rem。
   原写法是 Tailwind 的 2xl:left-6，但该类未被生成（origin.css 里缺失），
   导致 1536px 以上仍停在 .nav 的 0.75rem。改用语义类在本文件兜住。 */
@media (min-width: 1536px) {
  .nav {
    left: 1.5rem;
  }
}

/* 图标与文字垂直对齐（2026-10-21）
   .item-row 是 align-items:flex-start；文字行盒 14px/20px，图标盒只有 1em(12px)+line-height:1
   → 顶端对齐后图标视觉中心比文字高 4px（实测 36/36 条均为 4px）。
   把图标盒撑到与行高同高（1.25rem = 20px）即可让字形居中，且保留 flex-start
   （将来文字换行时图标仍贴第一行，不会跑到整段中间）。
   特异性：.item-row > i[class^="ic-"] = 0,2,1 > icons.css 的 i[class^="ic-"] = 0,1,1，故不受加载顺序影响。 */
.item-row > i[class^="ic-"]{
  height: 1.25rem;
  line-height: 1.25rem;
}
/* 2026-10-22 图标字形 baseline 校正：siteicon 字形墨迹中心比同字号正文低约 1.58px
   (6x 放大墨迹实测, eye/clock 一致)。仅作用于 .row-ic-2; 全站仅 baike_blog.html 文章行 meta 使用 */
.row-ic-2 i[class^="ic-"]{
  display: inline-block;
  transform: translateY(-1.58px);
}

/* ===== 分页条（{$pages} 原生输出 ul.pagination） ===== */
.nav-row .pagination{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (min-width: 768px) {
  .nav-row .pagination {
    gap: 0.5rem;
  }
}
.nav-row .pagination > li{
  display: flex;
}
.nav-row .pagination > li > a{
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 2.75rem;
  height: 2.75rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  border: 1px solid rgb(0 0 0 / 0.1);
  border-radius: calc(var(--radius) - 2px);
  color: rgb(7 84 79);
  font-size: 0.875rem;
  line-height: 1.25rem;
  text-decoration: none;
  transition-property: color, background-color, border-color;
  transition-duration: 150ms;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
.nav-row .pagination > li > a:hover{
  border-color: rgb(10 107 100);
  color: rgb(10 107 100);
}
.nav-row .pagination > li.active > a{
  background-color: rgb(10 107 100);
  border-color: rgb(10 107 100);
  color: #fff;
}
.nav-row .pagination > li.pager-count > span{
  display: flex;
  align-items: center;
  height: 2.75rem;
  padding-left: 0.25rem;
  padding-right: 0.5rem;
  color: rgb(7 84 79);
  font-size: 0.875rem;
  font-weight: 600;
}
@media (min-width: 768px) {
  .nav-row .pagination > li > a {
    height: 2.5rem;
    min-width: 2.5rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .nav-row .pagination > li.pager-count > span {
    height: 2.5rem;
  }
}

/* ===== 首页业务价格卡（2026-10-24 新增） ===== */
.price-card {
  height: 100%;
}
.price-card .icon-row {
  gap: .375rem;
}
.price-card .icon-row .price-val {
  margin-left: auto;
  padding-left: .5rem;
  color: rgb(10 107 100);
  font-weight: 500;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  flex-shrink: 0;
  font-size: .8125rem;
}
/* ===== FAQ 区块宽度对齐页面主体（2026-10-24） ===== */
.sec-white-lg .faq-box-2 {
  max-width: 64rem;
}

/* ===== 区域详情页「本区办理知识」卡片（1/2/3 列自适应，移动端单列） ===== */
.kb-grid{display:grid;gap:.75rem;grid-template-columns:repeat(1,minmax(0,1fr));margin-top:1.25rem}
@media (min-width:640px){.kb-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.875rem}}
@media (min-width:1024px){.kb-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}}
.kb-card{display:flex;flex-direction:column;min-width:0;align-self:stretch;padding:1rem 1.125rem;background:rgb(244 247 250);border:1px solid rgba(18,58,92,.15);border-radius:.75rem;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
@media (hover:hover){
  .kb-card:hover{border-color:rgba(10,107,100,.4);box-shadow:0 10px 22px -14px rgba(18,58,92,.35);transform:translateY(-2px)}
  .kb-card:hover .kb-card-more i{transform:translateX(3px)}
}
.kb-card-hd{display:flex;align-items:flex-start;gap:.5rem;min-width:0}
.kb-card-hd>i{flex-shrink:0;margin-top:.15rem;font-size:.875rem;line-height:1.5}
.kb-card-tt{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-width:0;overflow-wrap:anywhere;margin:0;font-size:.9375rem;font-weight:600;line-height:1.5;color:rgb(7 84 79)}
.kb-card-tt a{color:inherit;text-decoration:none}
.kb-card-tx{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;flex:1 1 auto;min-width:0;overflow-wrap:anywhere;margin:.5rem 0 0;font-size:.8125rem;line-height:1.7;color:rgb(100 108 121)}
.kb-card-more{display:inline-flex;align-items:center;gap:.3rem;margin-top:.75rem;font-size:.75rem;font-weight:600;color:rgb(10 107 100);text-decoration:none}
.kb-card-more i{transition:transform .2s ease}
@media (max-width:639px){
  .kb-card{padding:.875rem 1rem}
  .kb-card-tx{-webkit-line-clamp:4}
}

/* ===== 区域详情页「本区办理知识」卡片底部（发布时间 + 阅读全文） ===== */
.kb-card-ft{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-width:0;margin-top:.75rem;padding-top:.625rem;border-top:1px solid rgba(18,58,92,.08)}
.kb-card-date{display:inline-flex;align-items:center;gap:.3rem;min-width:0;font-size:.6875rem;line-height:1.4;color:rgb(122 130 142);white-space:nowrap;font-variant-numeric:tabular-nums}
.kb-card-date i{flex-shrink:0;font-size:.546875rem;line-height:1;color:rgb(10 107 100)}
.kb-card-ft .kb-card-more{margin-top:0;flex-shrink:0}
@media (max-width:639px){
  .kb-card-ft{margin-top:.625rem;padding-top:.5rem}
}

/* ===== 区域详情页「费用与周期」表格 ===== */
.geo-table-wrap{margin-top:1rem;overflow-x:auto;-webkit-overflow-scrolling:touch;background:#fff;border:1px solid rgba(18,58,92,.12);border-radius:.75rem}
.geo-table{width:100%;min-width:30rem;border-collapse:collapse;font-size:.8125rem;line-height:1.65}
.geo-table th{background:rgb(244 247 250);color:rgb(7 84 79);font-weight:600;text-align:left;white-space:nowrap;padding:.625rem .875rem;border-bottom:1px solid rgba(18,58,92,.12)}
.geo-table td{padding:.625rem .875rem;border-bottom:1px solid rgba(18,58,92,.08);vertical-align:top}
.geo-table tbody tr:last-child td{border-bottom:0}
.geo-table .geo-td-k{color:rgb(33 41 51);font-weight:500;white-space:nowrap}
.geo-table .geo-td-v{color:rgb(10 107 100);font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}
@media (max-width:639px){.geo-table{min-width:0;font-size:.6875rem;line-height:1.55}.geo-table th,.geo-table td{padding:.5rem .4375rem}.geo-table th,.geo-table .geo-td-v{white-space:normal}.geo-table .geo-td-k{white-space:nowrap}}

/* 案例要点 case_points：原内联 SVG 改为字体图标（数据体积减 87%），图标与文字基线对齐 */
.case-points li::before{content:"\e00b";font-family:'siteicon';font-size:12px;line-height:1;color:rgb(10 107 100);flex-shrink:0;margin-top:.25rem}

/* 案例「办理提示」列表：单列、警示三角（与办理难点同一视觉语言，但不做卡片底） */
.tips-list{margin-top:18px;display:grid;gap:14px}
.tips-list>li{position:relative;padding-left:24px;line-height:1.8}
.tips-list>li::before{content:"";position:absolute;left:4px;top:.66em;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:9px solid rgb(10 107 100)}

/* 案例页「百科文章」卡片：日期与浏览数的间距对齐首页 meta 行（12px） */
.label-xs-flex.meta-eye{gap:.75rem}

/* 案例页百科卡 meta 行：siteicon 墨迹偏下 1.58px，与首页 row-ic-2 同款光学修正 */
.label-xs-flex.meta-eye i[class^="ic-"]{display:inline-block;transform:translateY(-1.58px)}

/* 区域页知识卡：日期后的浏览数，与日期同字号同色，图标数字居中对齐 */
.kb-card-views{display:inline-flex;align-items:center;gap:.3rem}

/* 区域页知识卡图标：siteicon 墨迹在 8.75px 字号下偏低 0.68px（实测），补光学修正 */
.kb-card-date i{display:inline-block;transform:translateY(-.68px)}

/* 关于我们/首页/业务页「承诺清单」图标首行对齐：
   容器 align-items:flex-start，文字行高 24px、图标 12px → 需下移 (24-12)/2=6px；
   原先 .ic-mt 只有 4px（差 2px）、.li-row 完全没有（差 6px） */
.li-row > i:first-child,
.li-start-pad > i:first-child{margin-top:.375rem}

/* 图标行垂直对齐补齐（实测值）：容器 align-items:flex-start 时
   margin-top 应 = (文字行高 − 图标 12px)/2，以下几处原值偏小 */
.li-row-3 > i:first-child{margin-top:.25rem}        /* 14/20 原 2px  → 4px */
.li-start > i:first-child{margin-top:.4375rem}      /* 16/24 原 4px  → 7px */
.li-start-pad-2 > i:first-child{margin-top:.28125rem} /* 14/20 原 2px → 4.5px */
.li-start-2 > i:first-child{margin-top:.46875rem}   /* 13/24 原 6px  → 7.5px */
p.ft-note > i:first-child{margin-top:.28125rem}     /* 12/20 原 2px  → 4.5px */

/* 导航栏 logo 图标：白色天际线剪影 PNG 叠在原有渐变方块上（44×44，2px 内边距由图片自带） */
.hd-logo-mark .hd-logo-img{display:block;flex:0 0 auto;width:100%;height:100%;border-radius:.75rem;background-color:transparent}  /* origin.css:907 给所有 img 设了 #F4F7FA 占位底，会盖住方块渐变 → 必须置透明 */

/* 页脚品牌图标：与导航栏同款天际线剪影（同样需清掉 origin.css 给 img 的 #F4F7FA 占位底） */
.ft-col-badge .ft-logo-img{display:block;width:100%;height:100%;border-radius:.75rem;background-color:transparent}
