/* =========================================
   HOME PAGE
========================================= */

.home .site-main{
  width:100%;
}

.home .elementor-section-wrap,
.home .elementor-widget-wrap{
  min-width:0;
}

/* ==========================================
   HOME HERO / LANDING HERO
   SoulTripAdventure
========================================== */

.sta-hero-scope{
  --ink:#ffffff;
  --muted:rgba(255,255,255,.88);
  --gold:#C3A890;
  --rule:#84997D;
  --shadow:0 16px 38px rgba(0,0,0,.18);

  font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",
               system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,
               "Helvetica Neue",Arial,"Noto Sans",sans-serif;
  color:var(--ink);
}

.sta-hero-scope *{
  box-sizing:border-box;
}

.sta-hero-fullbleed{
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}

.sta-hero-pullup{
  margin-top:calc(-1 * var(--staFixedTop, 100px) - 15px);
}

.sta-hero{
  position:relative;
  overflow:hidden;
  border-radius:0 0 26px 26px;
  min-height:clamp(680px, 84vh, 980px);
  isolation:isolate;
  background:transparent;
}

.sta-hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.34);
  z-index:1;
  pointer-events:none;
}

/* Fondo */
#staHero .sta-bg{
  position:absolute !important;
  inset:0 !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
  transform:translateZ(0) scale(1.02) !important;
  opacity:0 !important;
  transition:opacity 900ms ease !important;
  will-change:opacity;
  z-index:0 !important;
  pointer-events:none;
}

#staHero .sta-bg.is-active{
  opacity:1 !important;
}

/* Layout */
.sta-hero__content{
  position:relative;
  z-index:2;
  max-width:1380px;
  margin:0 auto;
  padding:clamp(18px, 3.2vw, 52px);
  padding-top:calc(var(--staFixedTop, 180px) - 20px) !important;
  padding-bottom:28px;
}

.sta-hero__grid{
  display:grid;
  grid-template-columns:minmax(0, 1.02fr) minmax(440px, .98fr);
  gap:clamp(24px, 4vw, 56px);
  align-items:start;
}

.sta-hero__left{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  align-self:start;
  min-width:0;
}

.sta-hero__right{
  display:flex;
  justify-content:flex-end;
  align-items:flex-start;
  align-self:start;
  min-width:0;
  padding-top:clamp(220px, 24vw, 320px);
}

/* Texto */
.sta-hero__kicker{
  margin:0;
  font-size:18px;
  font-weight:500;
  color:#fff;
}

.sta-hero__rule{
  width:160px;
  height:2px;
  background:#84997D;
  opacity:1;
  margin-top:8px;
}

.sta-hero__title{
  margin:18px 0 0;
  font-weight:500;
  letter-spacing:.01em;
  font-size:clamp(34px, 4.8vw, 76px);
  line-height:1.08;
  color:#fff;
  font-family:"Noto Serif TC","PingFang TC","Microsoft JhengHei",serif;
}

.sta-hero__animated{
  margin:12px 0 0 0 !important;
  display:block !important;
  min-height:clamp(38px, 4.5vw, 58px) !important;
  font-size:clamp(22px, 2.8vw, 44px) !important;
  font-weight:300 !important;
  font-style:italic !important;
  line-height:1.15 !important;
  color:rgba(255,255,255,.96) !important;
  overflow:hidden !important;
}

.sta-hero__rotator{
  display:inline-block;
  color:inherit;
  font-size:inherit;
  font-weight:inherit;
  font-style:inherit;
  line-height:inherit;
  white-space:nowrap;
  opacity:1;
  transform:translateY(0);
  will-change:transform, opacity;
  text-shadow:0 1px 2px rgba(0,0,0,.22);
}

.sta-hero__rotator.is-out{
  opacity:0;
  transform:translateY(10px);
  transition:opacity .28s ease, transform .28s ease;
}

.sta-hero__rotator.is-in{
  opacity:1;
  transform:translateY(0);
  transition:opacity .28s ease, transform .28s ease;
}

.sta-hero__intro{
  margin:18px 0 0 0;
  max-width:760px;
  width:100%;
  font-size:clamp(15px, 1.2vw, 18px);
  line-height:1.85;
  color:rgba(255,255,255,.92);
  text-shadow:0 1px 0 rgba(0,0,0,.18);
}

.sta-hero__intro strong{
  color:#fff;
  font-weight:800;
}

.sta-hero__actions{
  margin-top:24px;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

.sta-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.7rem;
  min-width:260px;
  padding:15px 26px;
  border-radius:999px;
  text-decoration:none;
  font-weight:700;
  letter-spacing:.01em;
  background:#fff;
  color:#111;
  border:2px solid #fff;
  transition:background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
}

.sta-btn:hover{
  background:transparent;
  color:#fff;
  border-color:#fff;
  transform:translateY(-1px);
}

/* Reviews */
.sta-reviews{
  position:relative;
  z-index:2;
  width:100%;
  max-width:780px;
  margin:0;
  padding:0;
}

.sta-reviews__shell{
  position:relative;
  isolation:isolate;
  width:100%;
  padding:34px 64px 22px;
  border-radius:28px;
  background:#E4E4E42E;
  backdrop-filter:blur(10px) saturate(118%);
  -webkit-backdrop-filter:blur(10px) saturate(118%);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 14px 36px rgba(0,0,0,.14);
}

.sta-reviews .slider-viewport{
  position:relative;
  z-index:1;
  overflow:hidden;
  border-radius:16px;
}

.sta-reviews .slider-track{
  display:flex;
  position:relative;
  z-index:1;
  gap:0;
  will-change:transform;
  transition:transform 450ms ease;
}

.sta-reviews .review-card{
  flex:0 0 100%;
  min-width:0;
  background:transparent;
  border:none;
  border-radius:0;
  box-shadow:none;
  padding:0;
  text-align:left;
}

.sta-reviews .review-head{
  display:flex;
  align-items:center;
  gap:14px;
  margin-bottom:14px;
}

.sta-reviews .avatar-link{
  text-decoration:none;
  display:block;
  flex:0 0 auto;
}

.sta-reviews .avatar-wrapper{
  width:84px;
  height:84px;
  border-radius:999px;
  overflow:hidden;
  margin:0;
  border:2px solid rgba(255,255,255,.22);
  box-shadow:none;
}

.sta-reviews .avatar{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.sta-reviews .review-meta{
  min-width:0;
}

.sta-reviews .review-name{
  margin:0;
  color:#fff;
  font-family:"Italiana","Times New Roman",serif;
  font-size:clamp(26px, 2vw, 40px);
  line-height:1;
  font-weight:400;
}

.sta-reviews .review-role{
  margin:8px 0 0;
  color:rgba(255,255,255,.94);
  font-size:clamp(14px, 1vw, 18px);
  line-height:1.2;
  font-weight:600;
}

.sta-reviews .review-text{
  margin:0 0 16px;
  max-width:none;
  color:#fff;
  font-size:clamp(15px, 1.02vw, 17px);
  line-height:1.7;
}

.sta-reviews .review-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:11px 18px;
  border-radius:999px;
  text-decoration:none;
  font-weight:700;
  background:#fff;
  color:#111;
  border:2px solid #fff;
  transition:background .15s ease, color .15s ease, border-color .15s ease, transform .15s ease;
}

.sta-reviews .review-link:hover{
  background:transparent;
  color:#fff;
  border-color:#fff;
  transform:translateY(-1px);
}

.sta-reviews .nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:42px;
  height:42px;
  border:none;
  background:transparent;
  color:#fff;
  font-size:40px;
  line-height:1;
  cursor:pointer;
  opacity:.9;
  padding:0;
  z-index:3;
}

.sta-reviews .nav:hover{
  opacity:1;
}

.sta-reviews .nav.prev{
  left:14px;
}

.sta-reviews .nav.next{
  right:14px;
}

.sta-reviews .slider-dots{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:10px;
  margin-top:16px;
}

.sta-reviews .dot{
  width:9px;
  height:9px;
  border-radius:999px;
  border:none;
  padding:0;
  background:rgba(255,255,255,.42);
  cursor:pointer;
}

.sta-reviews .dot.is-active{
  background:#fff;
}

/* TABLET */
@media (max-width:1024px){
  .sta-hero{
    min-height:auto;
  }

  .sta-hero__grid{
    grid-template-columns:1fr;
    gap:34px;
  }

  .sta-hero__right{
    justify-content:stretch;
    align-items:stretch;
    padding-top:0;
  }

  .sta-reviews{
    max-width:none;
  }

  .sta-reviews__shell{
    padding:30px 54px 20px;
  }

  .sta-reviews .review-card{
    flex-basis:50%;
    padding-right:11px;
    padding-left:11px;
  }

  .sta-reviews .slider-track{
    margin-left:-11px;
    margin-right:-11px;
  }
}

/* MOBILE */
@media (max-width:767px){
  .sta-hero{
    border-radius:0 0 22px 22px;
    min-height:auto;
  }

  .sta-hero__content{
    padding:18px 16px 24px;
    padding-top:calc(var(--staFixedTop, 110px) + 8px) !important;
  }

  .sta-hero__title{
    font-size:clamp(28px, 8vw, 42px);
    line-height:1.2;
  }

  .sta-hero__animated{
    min-height:44px !important;
    font-size:clamp(20px, 6.5vw, 30px) !important;
  }

  .sta-hero__rotator{
    white-space:normal;
  }

  .sta-hero__intro{
    font-size:14px;
    line-height:1.8;
  }

  .sta-btn{
    min-width:0;
    width:min(100%, 300px);
    padding:14px 22px;
  }

  .sta-reviews__shell{
    padding:22px 18px 18px;
    border-radius:22px;
  }

  .sta-reviews .review-card{
    flex-basis:100%;
    padding-left:0;
    padding-right:0;
  }

  .sta-reviews .slider-track{
    margin-left:0;
    margin-right:0;
  }

  .sta-reviews .review-name{
    font-size:clamp(22px, 7vw, 30px);
  }

  .sta-reviews .review-text{
    font-size:15px;
    line-height:1.65;
  }

  .sta-reviews .nav{
    display:none;
  }

  .sta-reviews .avatar-wrapper{
    width:72px;
    height:72px;
  }
}

@media (prefers-reduced-motion: reduce){
  #staHero .sta-bg{
    transition:none !important;
  }

  .sta-hero__rotator{
    transition:none !important;
    transform:none !important;
  }

  .sta-reviews .slider-track{
    transition:none !important;
  }
}
/* Flechas slider reviews home */
.sta-reviews .nav{
  position:absolute;
  top:0;
  bottom:0;
  transform:none;
  width:72px;
  height:auto;
  box-sizing:border-box;
  padding:0;
  margin:0;
  border:0;
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  appearance:none;
  -webkit-appearance:none;
  cursor:pointer;
  z-index:20;

  display:flex;
  align-items:center;
  justify-content:center;
}

.sta-reviews .nav::before{
  content:"";
  position:relative;
  z-index:1;
  display:block;
  width:14px;
  height:14px;
  border-top:3px solid #fff;
  border-right:3px solid #fff;
  box-sizing:border-box;
}

.sta-reviews .nav.prev::before{
  transform:rotate(-135deg);
  margin-left:4px;
}

.sta-reviews .nav.next::before{
  transform:rotate(45deg);
  margin-right:4px;
}

.sta-reviews .nav::after{
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  width:56px;
  height:56px;
  transform:translate(-50%, -50%);
  border:2px solid rgba(255,255,255,.95);
  border-radius:50%;
  background:transparent;
  box-sizing:border-box;
  pointer-events:none;
}

.sta-reviews .nav:hover,
.sta-reviews .nav:focus{
  outline:none;
}

.sta-reviews .nav:hover::after,
.sta-reviews .nav:focus::after{
  background:rgba(255,255,255,.14);
  border-color:#fff;
}

.sta-reviews .nav:focus-visible{
  box-shadow:0 0 0 3px rgba(255,255,255,.18) !important;
}

.sta-reviews .nav.prev{ left:0; }
.sta-reviews .nav.next{ right:0; }

/* touch fix */
.sta-reviews .nav{
  touch-action:manipulation;
  pointer-events:auto;
  -webkit-tap-highlight-color:transparent;
}

.sta-reviews .slider-viewport{
  pointer-events:auto;
}

.sta-reviews .review-card,
.sta-reviews .review-card *{
  pointer-events:auto;
}

@media (min-width:768px) and (max-width:1024px){
  .sta-reviews__shell{
    padding-left:72px;
    padding-right:72px;
  }

  .sta-reviews .nav{
    display:none;
  }
}

@media (max-width:767px){
  .sta-reviews .nav{
    display:none;
  }
}

/* Dot animation */
.sta-reviews .dot{
  transition:width .35s ease, background .35s ease, opacity .35s ease;
}

.sta-reviews .dot.is-active{
  width:24px;
}
/*bienvenida*/
html{
  scroll-behavior:auto !important;
}

html.sta-home-intro-lock,
html.sta-home-intro-lock body{
  overflow:hidden !important;
}

html,
body{
  margin:0 !important;
  padding:0 !important;
  overflow-x:hidden !important;
}

:root{
  --sta-real-vh: 100vh;
  --sta-admin-offset: 0px;
}

/* =========================
   CONTENEDOR PRINCIPAL
========================= */
.sta-home-intro{
  position:fixed !important;
  inset:0 !important;
  width:100vw !important;
  height:calc(var(--sta-real-vh, 100vh) - var(--sta-admin-offset, 0px)) !important;
  min-width:100vw !important;
  min-height:100vh !important;
  overflow:hidden !important;
  isolation:isolate;
  z-index:99999 !important;

  opacity:1;
  visibility:visible;
  transform:translateY(0);
  transition:
    transform 1.05s cubic-bezier(.22,1,.36,1),
    opacity .55s ease,
    visibility .55s ease;

  background-color:#0f1411 !important;
  background-image:url("/wp-content/uploads/2026/03/home-header.webp") !important;
  background-size:cover !important;
  background-position:center center !important;
  background-repeat:no-repeat !important;
}

.sta-home-intro.is-revealing{
  transform:translateY(-100%);
  opacity:1;
  visibility:visible;
  pointer-events:none;
}

.sta-home-intro.is-hidden{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}

/* =========================
   OVERLAY
========================= */
.sta-home-intro__overlay{
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  background:
    radial-gradient(1100px 620px at 50% 35%,
      rgba(0,0,0,.18),
      rgba(0,0,0,.60)
    );
}

/* =========================
   CONTENIDO
========================= */
.sta-home-intro__inner{
  position:relative !important;
  z-index:2 !important;
  width:min(100%, 1200px) !important;
  margin:0 auto !important;
  padding:100px 28px 18px !important;
  text-align:center !important;
  color:#fff;
  font-family:"Poppins","Noto Sans TC","PingFang TC","Microsoft JhengHei",
               system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,
               "Helvetica Neue",Arial,"Noto Sans",sans-serif;
}

.sta-home-intro__kicker{
  margin:0 0 10px 0;
  font-size:clamp(14px,1.4vw,18px);
  letter-spacing:.10em;
  opacity:.92;
}

.sta-home-intro__title{
  margin:0 0 10px 0;
  font-weight:800;
  letter-spacing:.02em;
  font-size:clamp(36px,6.2vw,70px);
  line-height:1.02;
}

.sta-home-intro__sub{
  margin:0;
  font-size:clamp(16px,1.9vw,22px);
  opacity:.95;
  line-height:1.45;
  max-width:900px;
  margin-inline:auto;
}

/* =========================
   FLECHA CHEVRON ABAJO
========================= */
.sta-home-intro__down{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:32px;
  text-decoration:none !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  padding:10px;
  color:#C3A890;
  opacity:.92;
  transition:transform .18s ease, opacity .18s ease, filter .18s ease;
}

.sta-home-intro__down:hover,
.sta-home-intro__down:focus{
  opacity:1;
  transform:translateY(2px) scale(1.04);
}

.sta-home-intro__downIcon{
  width:36px;
  height:36px;
  display:block;
  box-sizing:border-box;
  border-right:7px solid #C3A890;
  border-bottom:7px solid #C3A890;
  transform:rotate(45deg);
  animation:staChevronJump 1.6s ease-in-out infinite;
}

@keyframes staChevronJump{
  0%, 100%{
    transform:rotate(45deg) translateY(0);
    opacity:.9;
  }
  20%{
    transform:rotate(45deg) translateY(6px);
    opacity:1;
  }
  40%{
    transform:rotate(45deg) translateY(0);
    opacity:.95;
  }
  60%{
    transform:rotate(45deg) translateY(4px);
    opacity:1;
  }
  80%{
    transform:rotate(45deg) translateY(0);
    opacity:.92;
  }
}

@media (max-width:767px){
  .sta-home-intro__down{
    margin-top:28px;
  }

  .sta-home-intro__downIcon{
    width:30px;
    height:30px;
    border-right-width:6px;
    border-bottom-width:6px;
  }
}

/* =========================
   ADMIN BAR
========================= */
html.admin-bar .sta-home-intro{
  top:32px !important;
  height:calc(var(--sta-real-vh, 100vh) - 32px) !important;
}

/* =========================
   MÓVIL
========================= */
@media (max-width: 767px){
  .sta-home-intro{
    background-image:url("/wp-content/uploads/2026/03/movil.webp") !important;
    background-size:cover !important;
    background-position:center center !important;
    background-repeat:no-repeat !important;
  }

  .sta-home-intro__overlay{
    background:rgba(0,0,0,.34) !important;
  }

  .sta-home-intro__inner{
    padding:84px 20px 18px !important;
  }

  .sta-home-intro__title{
    font-size:clamp(30px, 8.2vw, 46px);
    line-height:1.08;
  }

  .sta-home-intro__sub{
    font-size:clamp(15px, 4.2vw, 18px);
    line-height:1.5;
  }

  .sta-home-intro__downIcon{
    font-size:42px;
  }
}

@media (max-width:782px){
  html.admin-bar .sta-home-intro{
    top:46px !important;
    height:calc(var(--sta-real-vh, 100vh) - 46px) !important;
  }
}

/* =========================
   REDUCE MOTION
========================= */
@media (prefers-reduced-motion: reduce){
  .sta-home-intro,
  .sta-home-intro__down{
    transition:none !important;
  }

  .sta-home-intro__downIcon{
    animation:none;
  }
}
/* =========================
   HOME INTRO TEXT FIX
========================= */

.sta-home-intro,
.sta-home-intro__inner{
  color:#fff !important;
}

.sta-home-intro__kicker{
  color:rgba(255,255,255,.92) !important;
  font-family:"Poppins","Noto Sans TC","PingFang TC","Microsoft JhengHei",
               system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,
               "Helvetica Neue",Arial,"Noto Sans",sans-serif !important;
  font-weight:500 !important;
  letter-spacing:.10em !important;
  text-shadow:0 2px 10px rgba(0,0,0,.28) !important;
}

.sta-home-intro__title{
  color:#fff !important;
  font-family:"Poppins","Noto Sans TC","PingFang TC","Microsoft JhengHei",
               system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,
               "Helvetica Neue",Arial,"Noto Sans",sans-serif !important;
  font-weight:800 !important;
  text-shadow:0 4px 18px rgba(0,0,0,.32) !important;
}

.sta-home-intro__sub{
  color:rgba(255,255,255,.96) !important;
  font-family:"Poppins","Noto Sans TC","PingFang TC","Microsoft JhengHei",
               system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,
               "Helvetica Neue",Arial,"Noto Sans",sans-serif !important;
  font-weight:500 !important;
  text-shadow:0 2px 12px rgba(0,0,0,.30) !important;
}

.sta-home-intro__down{
  color:#C3A890 !important;
}

.sta-home-intro__downIcon{
  border-right-color:#C3A890 !important;
  border-bottom-color:#C3A890 !important;
}

/* evitar que Elementor/tema meta colores a enlaces o textos */
.sta-home-intro a,
.sta-home-intro p,
.sta-home-intro div{
  color:inherit;
}

/* chino simplificado: usar fuentes SC para evitar mezcla de glifos/pesos */
html[lang="zh-CN"] .sta-home-intro__kicker,
html[lang="zh-CN"] .sta-home-intro__title,
html[lang="zh-CN"] .sta-home-intro__sub{
  font-family:var(--sta-font-zh-cn-sans) !important;
  font-synthesis:none;
}

html[lang="zh-CN"] .sta-home-intro__title{
  font-weight:700 !important;
  letter-spacing:0 !important;
  line-height:1.08 !important;
}

html[lang="zh-CN"] .sta-home-intro__sub{
  letter-spacing:0 !important;
}

/* móvil: más contraste */
@media (max-width:767px){
  .sta-home-intro__overlay{
    background:
      linear-gradient(to bottom,
        rgba(0,0,0,.30) 0%,
        rgba(0,0,0,.40) 45%,
        rgba(0,0,0,.52) 100%) !important;
  }

  .sta-home-intro__kicker{
    color:rgba(255,255,255,.90) !important;
    font-size:14px !important;
  }

  .sta-home-intro__title{
    color:#fff !important;
    font-size:clamp(30px, 8.2vw, 46px) !important;
    line-height:1.08 !important;
    text-shadow:0 4px 20px rgba(0,0,0,.38) !important;
  }

  .sta-home-intro__sub{
    color:rgba(255,255,255,.95) !important;
    font-size:clamp(15px, 4.2vw, 18px) !important;
    line-height:1.5 !important;
    text-shadow:0 2px 14px rgba(0,0,0,.34) !important;
  }
}
/* =========================
   BLOQUE: Título sección
   ========================= */
.sta-title-block{
  width:100%;
  max-width:1200px;
  margin:0 auto;
  padding:clamp(14px, 2.2vw, 26px) clamp(14px, 3vw, 28px);
  text-align:center;
}

.sta-title-block .sta-title{
  margin:0;
  font-family:"Italiana", "Noto Sans TC", "PingFang TC", "Microsoft JhengHei",
               system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
               "Helvetica Neue", Arial, "Noto Sans", sans-serif;
  font-weight:500;
  color:#C3A890;
  font-size:clamp(32px, 4.2vw, 60px);
  line-height:1.08;
  letter-spacing:.02em;
}

html[lang="zh-CN"] .sta-title-block .sta-title{
  font-family:var(--sta-font-zh-cn-sans) !important;
  font-weight:700 !important;
  letter-spacing:0 !important;
  font-synthesis:none;
}

@media (max-width:380px){
  .sta-title-block .sta-title{
    font-size:clamp(28px, 8vw, 34px);
  }
}
/* =========================
   BLOQUE: Servicios
   ========================= */
.sta-services{
  --sta-gold:#C3A890;
  --sta-ink:#1f2937;
  --sta-muted:rgba(31,41,55,.72);
  --sta-card:#fff;
  --sta-shadow:0 14px 28px rgba(0,0,0,.12);
  --sta-radius:18px;

  max-width:1120px;
  margin:0 auto;
  padding:clamp(14px, 2.6vw, 26px) clamp(14px, 3vw, 28px);
}

.sta-services__grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:clamp(14px, 2vw, 22px);
  align-items:stretch;
}

.sta-service{
  display:flex;
  flex-direction:column;
  align-items:center;
  height:100%;
  background:var(--sta-card) !important;
  border:1px solid rgba(0,0,0,.04);
  border-radius:var(--sta-radius);
  box-shadow:var(--sta-shadow) !important;
  padding:26px 22px 22px;
  text-align:center;
  text-decoration:none !important;
  color:inherit !important;
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease,
    background-color .22s ease;
  cursor:pointer;
}

.sta-service:hover,
.sta-service:focus-visible{
  transform:translateY(-6px);
  box-shadow:0 18px 34px rgba(0,0,0,.16) !important;
  border-color:rgba(195,168,144,.28);
  text-decoration:none;
  color:inherit;
}

.sta-service__icon{
  width:86px;
  height:86px;
  margin:0 auto 14px;
  border-radius:18px;
  background:rgba(195,168,144,.18);
  color:var(--sta-gold);
  display:grid;
  place-items:center;
  flex:0 0 auto;
  transition:
    color .22s ease,
    opacity .22s ease,
    transform .22s ease;
}

.sta-service__icon svg{
  width:54px;
  height:54px;
  display:block;
}

.sta-service__icon svg,
.sta-service__icon svg *{
  fill:currentColor !important;
  stroke:currentColor !important;
}

.sta-service__title{
  margin:6px 0 10px;
  font-weight:800;
  letter-spacing:.02em;
  color:var(--sta-gold);
  font-size:22px;
  transition:
    color .22s ease,
    opacity .22s ease,
    transform .22s ease;
}

.sta-service__text{
  margin:0;
  color:var(--sta-muted);
  line-height:1.85;
  font-size:15.5px;
  transition:
    color .22s ease,
    opacity .22s ease,
    transform .22s ease;
}

.sta-service__text strong{
  color:var(--sta-ink);
  font-weight:800;
}

.sta-service:hover .sta-service__icon,
.sta-service:focus-visible .sta-service__icon{
  transform:scale(1.04);
}

.sta-service:hover .sta-service__title,
.sta-service:focus-visible .sta-service__title,
.sta-service:hover .sta-service__text strong,
.sta-service:focus-visible .sta-service__text strong{
  color:#3D7031;
}

.sta-service:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(61,112,49,.18);
}

@media (max-width:980px){
  .sta-services__grid{
    grid-template-columns:1fr;
  }

  .sta-service{
    text-align:center;
  }

  .sta-service__icon{
    margin:0 auto 14px !important;
  }
}

/* =========================
   BLOQUE: Gallery intro
   ========================= */
.sta-home-gallery-intro{
  max-width:900px;
  margin:0 auto 18px;
  padding:0 16px;
  text-align:center;
}

.sta-home-gallery-title{
  margin:0 0 12px;
  font-family:"Italiana","Times New Roman",serif;
  font-size:clamp(28px, 3.6vw, 52px);
  line-height:1.18;
  font-weight:400;
  letter-spacing:0.4px;
  color:#C3A890;
}

.sta-home-gallery-text{
  margin:0;
  max-width:760px;
  font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",
               system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,
               "Helvetica Neue",Arial,"Noto Sans",sans-serif;
  font-size:clamp(15px, 1.35vw, 18px);
  line-height:1.75;
  color:rgba(0,0,0,.72);
}

@media (max-width:768px){
  .sta-home-gallery-intro{
    margin-bottom:14px;
    padding:0 14px;
  }
  .sta-home-gallery-title{
    line-height:1.24;
    letter-spacing:0.2px;
  }
  .sta-home-gallery-text{
    line-height:1.7;
  }
}

/* =========================
   BLOQUE: HOME Marquee 
   ========================= */
#staHomeMarquee.sta-home-slider{
  width:100vw;
  position:relative;
  left:50%;
  margin-left:-50vw;
  overflow:hidden;
  padding:36px 0;
}

#staHomeMarquee .sta-home-viewport{
  width:100%;
  overflow:hidden;
}

#staHomeMarquee .sta-home-track{
  display:flex;
  align-items:center;
  gap:16px;
  width:max-content;
  will-change:transform;
}

#staHomeMarquee .sta-home-slide{
  flex:0 0 380px;
  height:220px;
}

#staHomeMarquee .sta-home-slide .frame{
  height:100%;
  border-radius:12px;
  overflow:hidden;
  border:1px solid var(--sta-gold, #C3A890);
  background:#fff;
}

#staHomeMarquee img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

@media (max-width:768px){
  #staHomeMarquee.sta-home-slider{ padding:28px 0; }
  #staHomeMarquee .sta-home-slide{
    flex-basis:78vw;
    height:200px;
  }
}

/* =========================
   BLOQUE: Cultural + Cards
   ========================= */
.section-heading{
  margin:0;
  font-family:"Italiana","Times New Roman",serif;
  font-weight:400;
  font-size:clamp(32px, 4vw, 60px);
  line-height:1.12;
  letter-spacing:.02em;
  color:#C3A890;
}

.sta-cultural-block .section-text{
  font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",
               system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,
               "Helvetica Neue",Arial,"Noto Sans",sans-serif;
  font-size:clamp(15px, 1.25vw, 18px);
  line-height:1.85;
  color:rgba(0,0,0,.72);
}

.sta-cultural-block .section-text strong{
  color:rgba(0,0,0,.88);
  font-weight:800;
}

.sta-cultural-block .section-subtitle{
  margin:18px 0 0;
  font-family:"Italiana","Times New Roman",serif;
  font-weight:400;
  font-size:clamp(28px, 3.4vw, 56px);
  line-height:1.12;
  letter-spacing:.02em;
  color:rgba(195,168,144,.92);
}

.sta-img-card{
  display:block;
  width:100%;
  border-radius:14px;
  overflow:hidden;
  text-decoration:none;
  background:#fff;
  border:1px solid rgba(195,168,144,.35);
  box-shadow:0 6px 20px rgba(0,0,0,.06);
  transition:transform .25s ease, box-shadow .25s ease;
}

.sta-img-card:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 28px rgba(0,0,0,.10);
}

.sta-img-card img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.sta-img-card--small{ aspect-ratio:16 / 9; }
.sta-img-card--tall{ aspect-ratio:4 / 5.1; }

.sta-img-card--madrid{
  width:min(300px, 100%);
  margin-left:auto;
}

.sta-img-wrap-right{
  display:flex;
  justify-content:flex-end;
  width:100%;
}

.sta-img-card__caption{
  padding:10px 12px;
  font-size:14px;
  line-height:1.4;
  color:#5f6a63;
  background:#fff;
}

@media (min-width:1200px){
  .sta-img-card--madrid{
    width:min(320px, 100%);
  }
}

@media (max-width:768px){
  .sta-img-wrap-right{
    justify-content:center;
  }
  .sta-img-card--madrid{
    width:min(360px, 100%);
    margin-left:0;
  }
  .sta-cultural-block .section-subtitle{
    margin-top:14px;
    line-height:1.18;
  }
}

/* ===== Bloques superiores ===== */
.section-subtitle{
  margin:0 0 10px 0;
  text-align:center;
  color:#ffffff;
  font-family:"Italiana", "Times New Roman", serif;
  font-size:clamp(20px, 2.2vw, 34px);
  line-height:1.15;
  font-weight:400;
  letter-spacing:0.5px;
  text-shadow:0 1px 8px rgba(0,0,0,.18);
}

.section-title{
  margin:0 0 28px 0;
  text-align:center;
  color:#ffffff;
  font-family:"Noto Serif TC", "PingFang TC", "Microsoft JhengHei", serif;
  font-size:clamp(28px, 4vw, 56px);
  line-height:1.2;
  font-weight:500;
  text-shadow:0 2px 10px rgba(0,0,0,.25);
}

/* ===== Caja glass ===== */
.sta-glass-section{
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  padding:0 16px;
  overflow-x:clip;
}

.sta-glass-copy{
  width:100%;
  max-width:980px;
  margin:0 auto;
  padding:clamp(20px, 3vw, 42px);
  border-radius:20px;
  background:linear-gradient(135deg, rgba(20,24,22,.46), rgba(20,24,22,.28));
  backdrop-filter:blur(10px) saturate(120%);
  -webkit-backdrop-filter:blur(10px) saturate(120%);
  border:1px solid rgba(232,227,213,.26);
  box-shadow:0 10px 30px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.12);
  text-align:center;
}

.sta-glass-copy .agency-heading{
  color:#ffffff !important;
  text-shadow:0 2px 12px rgba(0,0,0,0.35);
  margin:0 0 16px 0;
  text-align:center !important;
  font-family:'Noto Sans TC','PingFang TC','Microsoft JhengHei',
               system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,
               'Helvetica Neue',Arial,'Noto Sans',sans-serif;
  font-size:clamp(24px, 3vw, 34px);
  line-height:1.3;
  font-weight:700;
}
.sta-glass-copy .agency-text{
  margin:0 0 14px 0;
  color:#F3EFE7 !important;
  text-shadow:0 1px 8px rgba(0,0,0,0.28);
  text-align:center !important;
  font-family:'Noto Sans TC','PingFang TC','Microsoft JhengHei',
               system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,
               'Helvetica Neue',Arial,'Noto Sans',sans-serif;
  font-size:clamp(15px, 1.2vw, 19px);
  line-height:1.8;
}
.sta-glass-copy .agency-highlight{
  margin:10px 0 0 0;
  color:#ffffff !important;
  text-shadow:0 2px 10px rgba(0,0,0,0.32);
  text-align:center !important;
  font-family:'Noto Sans TC','PingFang TC','Microsoft JhengHei',
               system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,
               'Helvetica Neue',Arial,'Noto Sans',sans-serif;
  font-size:clamp(18px, 1.6vw, 26px);
  line-height:1.55;
}
.sta-glass-copy strong{
  color:#fff;
  font-weight:700;
}

@media (max-width:1024px){
  .sta-glass-copy{
    max-width:none;
    border-radius:16px;
    padding:clamp(16px, 4vw, 26px);
  }
}

@media (max-width:1024px){
  .elementor .sta-glass-copy{
    box-sizing:border-box;
  }
}

/* =========================
   Schools intro
   ========================= */
.sta-schools-intro{
  max-width:980px;
  margin:0 auto 28px;
  padding:6px 16px 0;
  text-align:center;
}

.sta-schools-title{
  margin:0 0 12px;
  color:#C3A890;
  font-family:"Noto Serif TC", "PingFang TC", "Microsoft JhengHei", serif;
  font-size:clamp(24px, 2.8vw, 38px);
  line-height:1.18;
  font-weight:600;
  letter-spacing:0.2px;
}

.sta-schools-text{
  margin:0 auto;
  max-width:820px;
  color:rgba(0,0,0,.72);
  font-family:'Noto Sans TC','PingFang TC','Microsoft JhengHei',
               system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,
               'Helvetica Neue',Arial,'Noto Sans',sans-serif;
  font-size:clamp(14px, 1.15vw, 17px);
  line-height:1.75;
}

@media (max-width:768px){
  .sta-schools-intro{
    margin-bottom:18px;
    padding:4px 14px 0;
  }

  .sta-schools-title{
    font-size:clamp(22px, 6vw, 30px);
    line-height:1.22;
    margin-bottom:8px;
  }

  .sta-schools-text{
    line-height:1.7;
  }
}

/* =========================
   Contact head
   ========================= */
.sta-contact-head{
  max-width:900px;
  margin:0 auto 20px;
  padding:0 16px;
  text-align:center;
}

.sta-contact-title{
  margin:0 0 10px;
  color:#C3A890;
  font-family:"Noto Serif TC", "PingFang TC", "Microsoft JhengHei", serif;
  font-size:clamp(24px, 3vw, 40px);
  line-height:1.2;
  font-weight:600;
}

.sta-contact-intro{
  margin:0 auto;
  max-width:760px;
  color:rgba(0,0,0,.72);
  font-family:'Noto Sans TC','PingFang TC','Microsoft JhengHei',
               system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,
               'Helvetica Neue',Arial,'Noto Sans',sans-serif;
  font-size:clamp(14px, 1.1vw, 17px);
  line-height:1.75;
}

@media (max-width:768px){
  .sta-contact-head{
    margin-bottom:14px;
    padding:0 14px;
  }
  .sta-contact-title{
    font-size:clamp(22px, 6vw, 30px);
    margin-bottom:8px;
  }
  .sta-contact-intro{
    line-height:1.7;
  }
}

/* =========================
   FAQ + WHY
   ========================= */
.sta-home-faq-why{
  max-width:1140px;
  margin:0 auto;
  padding:20px 16px 10px;
}

.sta-faq-title,
.sta-why-title{
  margin:0 0 10px;
  color:#C3A890;
  text-align:center;
  font-family:"Noto Serif TC","PingFang TC","Microsoft JhengHei",serif;
  font-size:clamp(24px, 2.8vw, 38px);
  line-height:1.18;
  font-weight:600;
}

.sta-faq-intro,
.sta-why-intro{
  max-width:820px;
  margin:0 auto 18px;
  text-align:center;
  color:rgba(0,0,0,.72);
  font-family:'Noto Sans TC','PingFang TC','Microsoft JhengHei',
               system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  font-size:clamp(14px, 1.05vw, 17px);
  line-height:1.75;
}

.sta-faq-wrap{ margin-bottom:34px; }

.sta-faq-list{
  max-width:900px;
  margin:0 auto;
  display:grid;
  gap:10px;
}

.sta-faq-list details{
  background:#fff;
  border:1px solid rgba(195,168,144,.28);
  border-radius:12px;
  overflow:hidden;
}

.sta-faq-list summary{
  cursor:pointer;
  list-style:none;
  padding:14px 16px;
  font-weight:700;
  color:#1f2a20;
  font-family:'Noto Sans TC','PingFang TC','Microsoft JhengHei',
               system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  font-size:15px;
  line-height:1.5;
  position:relative;
  padding-right:42px;
}

.sta-faq-list summary::-webkit-details-marker{ display:none; }

.sta-faq-list summary::after{
  content:"+";
  position:absolute;
  right:16px;
  top:50%;
  transform:translateY(-50%);
  color:#C3A890;
  font-size:20px;
  line-height:1;
  font-weight:700;
}

.sta-faq-list details[open] summary::after{
  content:"−";
}

.sta-faq-list details p{
  margin:0;
  padding:0 16px 14px;
  color:rgba(0,0,0,.78);
  font-family:'Noto Sans TC','PingFang TC','Microsoft JhengHei',
               system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  font-size:14px;
  line-height:1.8;
}

.sta-why-wrap{ margin-bottom:8px; }

.sta-why-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:14px;
  margin-top:4px;
}

.sta-why-card{
  background:#fff;
  border:1px solid rgba(195,168,144,.28);
  border-radius:14px;
  padding:16px;
  box-shadow:0 6px 18px rgba(0,0,0,.04);
}

.sta-why-card h3{
  margin:0 0 8px;
  color:#1f2a20;
  font-family:'Noto Sans TC','PingFang TC','Microsoft JhengHei',
               system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  font-size:17px;
  line-height:1.35;
  font-weight:700;
}

.sta-why-card p{
  margin:0;
  color:rgba(0,0,0,.75);
  font-family:'Noto Sans TC','PingFang TC','Microsoft JhengHei',
               system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  font-size:14px;
  line-height:1.75;
}

@media (max-width:768px){
  .sta-home-faq-why{
    padding:12px 14px 4px;
  }

  .sta-faq-wrap{
    margin-bottom:26px;
  }

  .sta-faq-intro,
  .sta-why-intro{
    margin-bottom:14px;
    line-height:1.7;
  }

  .sta-faq-list summary{
    font-size:14px;
    padding:13px 14px;
    padding-right:38px;
  }

  .sta-faq-list summary::after{
    right:14px;
    font-size:18px;
  }

  .sta-faq-list details p{
    padding:0 14px 13px;
    font-size:13px;
    line-height:1.75;
  }

  .sta-why-grid{
    grid-template-columns:1fr;
    gap:12px;
  }

  .sta-why-card{
    padding:14px;
  }

  .sta-why-card h3{
    font-size:16px;
  }

  .sta-why-card p{
    font-size:13px;
    line-height:1.7;
  }
}

/* =========================
   STA Timeline — limpio y unificado
   ========================= */
:root{
  --sta-green:#3D7031;
  --sta-line:#d9d9d9;
  --sta-ink:#111;
  --sta-muted:rgba(0,0,0,.72);
}

.sta-cptl{
  max-width:1100px;
  margin:0 auto;
  padding:26px 16px 40px;
  font-family:"Noto Sans TC","PingFang TC","Microsoft JhengHei",
              system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:var(--sta-ink);
}

.sta-cptl__title{
  display:block;
  width:min(100%, 980px);
  text-align:center;
  margin:0 auto 14px;
  font-weight:800;
  font-size:clamp(24px,3.2vw,44px);
}
.sta-cptl__hr{
  height:1px;
  background:var(--sta-green);
  border:0;
  margin:0 auto 26px;
  width:min(980px,92vw);
}

#staCPTimeline{
  position:relative;
  margin:10px auto 0;
  padding:0 20px;
}
#staCPTimeline::before{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:50%;
  transform:translateX(-50%);
  width:4px;
  background:var(--sta-line);
  border-radius:4px;
}

.sta-cptl__item{
  position:relative;
  margin-bottom:56px;
}
.sta-cptl__item::after{
  content:"";
  display:block;
  clear:both;
}

.sta-cptl__icon{
  background:var(--sta-green);
  width:50px;
  height:50px;
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%);
  border-radius:10px;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 10px 20px rgba(0,0,0,.08);
  z-index:3;
}
.sta-cptl__icon svg{
  width:24px;
  height:24px;
  fill:#fff;
  display:block;
}

.sta-cptl__content{
  width:45%;
  background:#fff;
  padding:22px 22px 18px;
  border-radius:10px;
  box-shadow:0 3px 0 rgba(0,0,0,.08);
  position:relative;
  z-index:2;
  transition:transform .2s ease, box-shadow .2s ease;
}

.sta-cptl__step{
  display:inline-block;
  font-weight:800;
  letter-spacing:.02em;
  color:var(--sta-green);
  font-size:14px;
  margin:0 0 8px;
  background:rgba(61,112,49,.10);
  border:1px solid rgba(61,112,49,.22);
  padding:6px 10px;
  border-radius:999px;
}

.sta-cptl__content h3{
  margin:0 0 10px;
  font-size:clamp(18px,2.1vw,24px);
  font-weight:900;
  color:#111;
}
.sta-cptl__content p{
  margin:0;
  color:var(--sta-muted);
  line-height:1.85;
  font-size:clamp(14px,1.25vw,16px);
}

.sta-cptl__rule{
  height:3px;
  background:var(--sta-green);
  margin-top:18px;
  width:100%;
}

.sta-cptl__content::before{
  content:"";
  position:absolute;
  top:20px;
  width:0;
  height:0;
  border-top:8px solid transparent;
  border-bottom:8px solid transparent;
}

/* Desktop */
.sta-cptl__item.is-left .sta-cptl__content{
  float:left;
  text-align:right;
}
.sta-cptl__item.is-left .sta-cptl__content::before{
  right:-8px;
  border-left:8px solid var(--sta-green);
}

.sta-cptl__item.is-right .sta-cptl__content{
  float:right;
  text-align:left;
}
.sta-cptl__item.is-right .sta-cptl__content::before{
  left:-8px;
  border-right:8px solid var(--sta-green);
}

/* Animaciones */
.sta-cptl__icon.is-hidden,
.sta-cptl__content.is-hidden{
  visibility:hidden;
}

.sta-cptl__icon.animate-it{
  visibility:visible;
  animation:bounce-1 .6s;
}
.sta-cptl__content.animate-it{
  visibility:visible;
  animation:bounce-2 .6s;
}

@media (min-width:769px){
  .sta-cptl__item.is-right .sta-cptl__content.animate-it{
    animation:bounce-2-inverse .6s;
  }
}

@keyframes bounce-1{
  0%{ opacity:0; transform:translateX(-50%) scale(.5); }
  60%{ opacity:1; transform:translateX(-50%) scale(1.15); }
  100%{ transform:translateX(-50%) scale(1); }
}
@keyframes bounce-2{
  0%{ opacity:0; transform:translateX(-90px); }
  60%{ opacity:1; transform:translateX(18px); }
  100%{ transform:translateX(0); }
}
@keyframes bounce-2-inverse{
  0%{ opacity:0; transform:translateX(90px); }
  60%{ opacity:1; transform:translateX(-18px); }
  100%{ transform:translateX(0); }
}

/* Tablet + móvil */
@media (max-width:1024px){
  #staCPTL{
    --sta-line-x:24px;
    --sta-icon-size:50px;
    --sta-card-gap:16px;
  }

  #staCPTimeline{
    padding:0;
  }

  #staCPTimeline::before{
    left:var(--sta-line-x);
    transform:none;
  }

  .sta-cptl__item{
    margin-bottom:40px;
  }

  .sta-cptl__item::after{
    content:none;
  }

  .sta-cptl__icon{
    left:calc(var(--sta-line-x) - (var(--sta-icon-size) / 2));
    top:0;
    width:var(--sta-icon-size);
    height:var(--sta-icon-size);
    transform:none;
  }

  .sta-cptl__content{
    width:auto;
    float:none !important;
    display:block;
    margin-left:calc(var(--sta-line-x) + (var(--sta-icon-size) / 2) + var(--sta-card-gap));
    margin-right:0;
    text-align:left !important;
    padding:20px 18px 16px;
    transform:none !important;
  }

  .sta-cptl__item.is-left .sta-cptl__content,
  .sta-cptl__item.is-right .sta-cptl__content{
    text-align:left !important;
  }

  .sta-cptl__item.is-left .sta-cptl__content::before,
  .sta-cptl__item.is-right .sta-cptl__content::before,
  .sta-cptl__content::before{
    left:-8px !important;
    right:auto !important;
    border-left:0 !important;
    border-right:8px solid var(--sta-green) !important;
  }

  .sta-cptl__content.animate-it{
    animation:bounce-2-inverse .6s;
  }
}

@media (max-width:520px){
  #staCPTL{
    --sta-line-x:22px;
    --sta-icon-size:48px;
    --sta-card-gap:14px;
  }

  .sta-cptl__content{
    padding:18px 16px 14px;
  }

  .sta-cptl__content h3{
    font-size:clamp(17px, 5vw, 22px);
  }

  .sta-cptl__content p{
    font-size:15px;
    line-height:1.8;
  }
}

.sta-duo-btns{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  margin:0 auto;
}

.sta-duo-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:clamp(180px, 22vw, 300px);
  padding:14px 22px;
  border-radius:10px;
  text-decoration:none !important;
  font-weight:800;
  letter-spacing:.02em;
  border:2px solid rgba(195,168,144,.85);
  color:#E8E3D5 !important;
  background:rgba(61,112,49,.35);
  transition:background .15s ease, color .15s ease, border-color .15s ease, transform .15s ease;
}

.sta-duo-btn:hover,
.sta-duo-btn:focus{
  background:#C3A890;
  color:#1F2A20 !important;
  border-color:#C3A890;
  transform:translateY(-1px);
}

@media (max-width:520px){
  .sta-duo-btn{
    width:min(92vw, 360px);
  }
}

/* =========================
   STA Contact (WPForms + Lottie)
   ========================= */

/* =========================
   ZH-CN TYPOGRAPHY SAFEGUARD
========================= */
html[lang="zh-CN"] body.home .elementor-widget-heading .elementor-heading-title,
html[lang="zh-CN"] body.home .sta-home-gallery-title,
html[lang="zh-CN"] body.home .section-heading,
html[lang="zh-CN"] body.home .sta-cultural-block .section-subtitle,
html[lang="zh-CN"] body.home .section-subtitle,
html[lang="zh-CN"] body.home .section-title,
html[lang="zh-CN"] body.home .sta-schools-title,
html[lang="zh-CN"] body.home .sta-contact-title,
html[lang="zh-CN"] body.home .sta-faq-title,
html[lang="zh-CN"] body.home .sta-why-title,
html[lang="zh-CN"] body.home .sta-cptl__title,
html[lang="zh-CN"] body.home .sta-cptl__content h3{
  font-family:var(--sta-font-zh-cn-sans) !important;
  font-weight:700 !important;
  letter-spacing:0 !important;
  font-synthesis:none;
}

html[lang="zh-CN"] body.home .sta-home-gallery-text,
html[lang="zh-CN"] body.home .sta-cultural-block .section-text,
html[lang="zh-CN"] body.home .sta-glass-copy .agency-heading,
html[lang="zh-CN"] body.home .sta-glass-copy .agency-text,
html[lang="zh-CN"] body.home .sta-glass-copy .agency-highlight,
html[lang="zh-CN"] body.home .sta-schools-text,
html[lang="zh-CN"] body.home .sta-contact-intro,
html[lang="zh-CN"] body.home .sta-faq-intro,
html[lang="zh-CN"] body.home .sta-why-intro,
html[lang="zh-CN"] body.home .sta-faq-list summary,
html[lang="zh-CN"] body.home .sta-faq-list details p,
html[lang="zh-CN"] body.home .sta-why-card h3,
html[lang="zh-CN"] body.home .sta-why-card p,
html[lang="zh-CN"] body.home .sta-cptl,
html[lang="zh-CN"] body.home .sta-cptl__step,
html[lang="zh-CN"] body.home .sta-duo-btn{
  font-family:var(--sta-font-zh-cn-sans) !important;
  letter-spacing:0 !important;
  font-synthesis:none;
}

