#tpa-contables.tpa{
  /* Brand */
  --tpac-navy:#1F497D;
  --tpac-indigo:#3F3C71;
  --tpac-blue:#688AE6;
  --tpac-blue-2:#8EA9DB;
  --tpac-mint:#5ED1A8;
  --tpac-cyan:#6EC1E4;
  --tpac-amber:#DF900C;

  /* Neutrals */
  --tpac-ink:#0f172a;
  --tpac-muted:#6b7280;

  /* Surfaces */
  --tpac-line:rgba(15,28,46,.12);
  --tpac-soft:rgba(255,255,255,.14);

  /* Glass */
  --tpac-glass:rgba(255,255,255,.14);
  --tpac-glass-2:rgba(255,255,255,.18);
  --tpac-glass-border:rgba(255,255,255,.18);

  /* Radius */
  --tpac-r:18px;
  --tpac-r-lg:22px;

  /* Shadows */
  --tpac-shadow:0 18px 45px rgba(16,24,40,.12);
  --tpac-shadow-soft:0 12px 28px rgba(16,24,40,.10);
  --tpac-shadow-cta:0 28px 60px rgba(15,37,84,.20);

  /* Layout */
  --tpac-max:1120px;
  --tpac-gutter:22px;

  font-family:"Poppins", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:var(--tpac-ink);
  background:#fff;
}

#tpa-contables.tpa .tpac-wrap{ overflow:hidden; }
#tpa-contables.tpa section[id]{ scroll-margin-top:92px; }

/* =========================
   HERO
   ========================= */
#tpa-contables.tpa .tpac-hero{
  position:relative;
  min-height:700px;
  background-image:var(--hero-bg);
  background-size:cover;
  background-position:center;
  display:flex;
  align-items:center;
}

#tpa-contables.tpa .tpac-hero-overlay{
  position:absolute; inset:0;
  background:
    linear-gradient(135deg, rgba(31,73,125,.84) 0%, rgba(63,60,113,.82) 48%, rgba(142,169,219,.84) 100%);
}

#tpa-contables.tpa .tpac-hero-inner{
  position:relative;
  max-width:var(--tpac-max);
  margin:0 auto;
  padding:4.2rem var(--tpac-gutter);
  width:100%;
}

#tpa-contables.tpa .tpac-hero-content{
  text-align:center;
  color:#fff;
}

#tpa-contables.tpa .tpac-badge{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:7px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.22);
  box-shadow:0 12px 28px rgba(0,0,0,.12);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  font-weight:700;
  letter-spacing:.2px;
  margin-bottom:14px;
}

#tpa-contables.tpa .tpac-badge i{
  color:var(--tpac-amber);
  font-size:1.05rem;
}

#tpa-contables.tpa .tpac-title{
  margin:0 0 14px;
  font-weight:900;
  letter-spacing:-1px;
  line-height:1.03;
  font-size:4.15rem;
  text-shadow:0 14px 35px rgba(0,0,0,.20);
  color: #fff;
}

#tpa-contables.tpa .tpac-title-accent{
  color:var(--tpac-mint);
  text-shadow:0 16px 40px rgba(94,209,168,.22);
}

#tpa-contables.tpa .tpac-subtitle{
  margin:0 auto 18px;
  max-width:860px;
  font-size:1.12rem;
  line-height:1.7;
  color:rgba(255,255,255,.84);
}

#tpa-contables.tpa .tpac-hero-ctas{
  display:flex;
  gap:16px;
  justify-content:center;
  align-items:center;
  margin:22px 0 30px;
  flex-wrap:wrap;
}

#tpa-contables.tpa .tpac-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  border-radius:10px;
  padding:12px 22px;
  min-width:190px;
  text-decoration:none;
  font-weight:800;
  font-size:0.98rem;
  letter-spacing:.15px;
  transition:transform .12s ease, box-shadow .12s ease, background .12s ease, border-color .12s ease, color .12s ease;
  border:1px solid transparent;
  user-select:none;
}

#tpa-contables.tpa .tpac-btn-primary{
  background:var(--tpac-amber);
  color:#fff;
  box-shadow:0 14px 34px rgba(223,144,12,.22);
}

#tpa-contables.tpa .tpac-btn-primary:hover{
  transform:translateY(-1px);
  box-shadow:0 16px 38px rgba(223,144,12,.28);
}

#tpa-contables.tpa .tpac-btn-ghost{
  background:rgba(255,255,255,.10);
  color:rgba(255,255,255,.92);
  border-color:rgba(255,255,255,.24);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

#tpa-contables.tpa .tpac-btn-ghost:hover{
  transform:translateY(-1px);
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.28);
}

#tpa-contables.tpa .tpac-metrics{
  margin-top:24px;
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:18px;
}

#tpa-contables.tpa .tpac-metric{
  border-radius:14px;
  padding:26px 14px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 18px 40px rgba(0,0,0,.12);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  text-align:center;
}

#tpa-contables.tpa .tpac-metric-k{
  color:var(--tpac-mint);
  font-weight:800;
  font-size:1.85rem;
  line-height:1.05;
  margin-bottom:6px;
}

#tpa-contables.tpa .tpac-metric-l{
  color:rgba(255,255,255,.78);
  font-size:.95rem;
  font-weight:600;
  line-height:1.25;
}

/* =========================
   SECTIONS BASE
   ========================= */
#tpa-contables.tpa .tpac-sec{
    width: 91%;
  padding:78px 0;
  background:#fff;
  margin: auto;
}

#tpa-contables.tpa .tpac-sec-head{
  max-width:var(--tpac-max);
  margin:0 auto 42px;
  padding:0 var(--tpac-gutter);
  text-align:center;
}

#tpa-contables.tpa .tpac-h2{
  margin:0 0 10px;
  font-size:3.15rem;
  font-weight:900;
  letter-spacing:-.7px;
  line-height:1.08;
}

#tpa-contables.tpa .tpac-h2-dark{ color:var(--tpac-navy); }
#tpa-contables.tpa .tpac-h2-mint{ color:var(--tpac-mint); }

#tpa-contables.tpa .tpac-p{
  margin:0 auto;
  max-width:920px;
  color:var(--tpac-muted);
  font-size:1.12rem;
  line-height:1.65;
}

/* =========================
   SERVICIOS CARDS (HEADER COLOR + BODY WHITE)
   ========================= */
#tpa-contables.tpa .tpac-grid{
  max-width:var(--tpac-max);
  margin:0 auto;
  padding:0 var(--tpac-gutter);
  display:grid;
  gap:22px;
}

#tpa-contables.tpa .tpac-grid-3{
  grid-template-columns:repeat(3, minmax(0, 1fr));
}

#tpa-contables.tpa .tpac-scard{
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(15,28,46,.12);
  box-shadow:0 18px 45px rgba(16,24,40,.10);
  background:#fff;
  min-height:420px;
  display:flex;
  flex-direction:column;
}

#tpa-contables.tpa .tpac-scard-head{
  padding:22px 22px 18px;
  color:#fff;
  min-height:170px;
  position:relative;
}

#tpa-contables.tpa .tpac-scard-ico{
  width:54px;
  height:54px;
  border-radius:12px;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.22);
  display:grid;
  place-items:center;
  margin-bottom:14px;
}

#tpa-contables.tpa .tpac-scard-ico i{
  color:#fff;
  font-size:1.25rem;
}

#tpa-contables.tpa .tpac-scard-title{
  margin:0 0 6px;
  font-weight:900;
  letter-spacing:-.3px;
  font-size:1.55rem;
  line-height:1.08;
  color: #fff;
}

#tpa-contables.tpa .tpac-scard-sub{
  margin:0;
  font-size:.95rem;
  color:rgba(255,255,255,.80);
  font-weight:600;
}

#tpa-contables.tpa .tpac-scard-body{
  background:#fff;
  padding:1rem;
  flex:1;
  display:flex;
  align-items:flex-start;
}

#tpa-contables.tpa .tpac-checklist{
  margin:0;
  padding:0;
  list-style:none;
  width:100%;
}

#tpa-contables.tpa .tpac-checklist li{
  position:relative;
  padding-left:1rem;
  margin:14px 0;
  color:#4b5563;
  font-weight:400;
  font-size:.9rem;
  line-height:1.25;
}

#tpa-contables.tpa .tpac-checklist i{
  color: #5ED1A8;
  padding-right: .5rem;
}

#tpa-contables.tpa .tpac-checklist li::after{
  content:"\f00c";
  font-family:"Font Awesome 5 Free";
  font-weight:900;
  position:absolute;
  left:5px;
  top:4px;
  font-size:.72rem;
  color:#fff;
}

/* Gradients (match screenshot feel) */
#tpa-contables.tpa .tpac-grad-navy   .tpac-scard-head{ background:linear-gradient(135deg, #1F3A8A 0%, #1F497D 55%, #3F3C71 100%); }
#tpa-contables.tpa .tpac-grad-blue   .tpac-scard-head{ background:linear-gradient(135deg, #688AE6 0%, #7E98F0 48%, #8EA9DB 100%); }
#tpa-contables.tpa .tpac-grad-mint   .tpac-scard-head{ background:linear-gradient(135deg, #5ED1A8 0%, #69D8C6 45%, #6EC1E4 100%); }
#tpa-contables.tpa .tpac-grad-gold   .tpac-scard-head{ background:linear-gradient(135deg, #DF900C 0%, #C7A63A 40%, #5ED1A8 100%); }
#tpa-contables.tpa .tpac-grad-indigo .tpac-scard-head{ background:linear-gradient(135deg, #3F3C71 0%, #5660A5 45%, #688AE6 100%); }
#tpa-contables.tpa .tpac-grad-cyan   .tpac-scard-head{ background:linear-gradient(135deg, #6EC1E4 0%, #69D8C6 45%, #5ED1A8 100%); }

/* =========================
   WHY (rounded container with 4 mini cards)
   ========================= */
#tpa-contables.tpa .tpac-why{
  background:#fff;
  padding-top:40px;
}

#tpa-contables.tpa .tpac-why-card{
  max-width:var(--tpac-max);
  margin:0 auto;
  padding:34px var(--tpac-gutter) 40px;
  border-radius:18px;
  border:1px solid rgba(15,28,46,.12);
  box-shadow:0 18px 45px rgba(16,24,40,.08);
  background:#fff;
  text-align:center;
}

#tpa-contables.tpa .tpac-why-title{
  margin:0 0 26px;
  font-size:2.35rem;
  font-weight:900;
  letter-spacing:-.5px;
  color:var(--tpac-navy);
}

#tpa-contables.tpa .tpac-why-mint{ color:var(--tpac-mint); }

#tpa-contables.tpa .tpac-why-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:18px;
}

#tpa-contables.tpa .tpac-why-item{
  border-radius:14px;
  padding:22px 16px;
  background:#fff;
  border:1px solid rgba(15,28,46,.08);
  box-shadow:0 14px 28px rgba(16,24,40,.06);
}

#tpa-contables.tpa .tpac-why-ico{
  width:54px;
  height:54px;
  border-radius:14px;
  margin:0 auto 10px;
  display:grid;
  place-items:center;
  background:#eef2ff;
}

#tpa-contables.tpa .tpac-why-ico i{ font-size:1.25rem; }

#tpa-contables.tpa .tpac-ico-navy{ background:rgba(31,73,125,.10); }
#tpa-contables.tpa .tpac-ico-navy i{ color:var(--tpac-navy); }

#tpa-contables.tpa .tpac-ico-blue{ background:rgba(104,138,230,.12); }
#tpa-contables.tpa .tpac-ico-blue i{ color:var(--tpac-blue); }

#tpa-contables.tpa .tpac-ico-mint{ background:rgba(94,209,168,.14); }
#tpa-contables.tpa .tpac-ico-mint i{ color:var(--tpac-mint); }

#tpa-contables.tpa .tpac-ico-gold{ background:rgba(223,144,12,.14); }
#tpa-contables.tpa .tpac-ico-gold i{ color:var(--tpac-amber); }

#tpa-contables.tpa .tpac-why-k{
  font-weight:900;
  color:#111827;
  margin-bottom:6px;
}

#tpa-contables.tpa .tpac-why-d{
  color:var(--tpac-muted);
  font-weight:600;
  font-size:.95rem;
  line-height:1.25;
}

/* =========================
   CTA (blue gradient card)
   ========================= */
#tpa-contables.tpa .tpac-cta-sec{
  background:#fff;
  padding-top:56px;
  padding-bottom:66px;
}

#tpa-contables.tpa .tpac-cta{
  width: 95%;
  margin:0 auto;
  padding:44px 34px 42px;
  border-radius:18px;
  background:linear-gradient(135deg, #1F497D 0%, #3F3C71 45%, #688AE6 100%);
  box-shadow:var(--tpac-shadow-cta);
  text-align:center;
  color:#fff;
}

#tpa-contables.tpa .tpac-cta-ico{
  width:58px;
  height:58px;
  border-radius:16px;
  background:rgba(94,209,168,.22);
  border:1px solid rgba(255,255,255,.18);
  display:grid;
  place-items:center;
  margin:0 auto 12px;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

#tpa-contables.tpa .tpac-cta-ico i{
  font-size:1.65rem;
  color:var(--tpac-mint);
}

#tpa-contables.tpa .tpac-cta-title{
  margin:0 0 10px;
  font-weight:900;
  letter-spacing:-.5px;
  font-size:2.25rem;
  line-height:1.12;
  color: #fff;
}

#tpa-contables.tpa .tpac-cta-sub{
  margin:0 auto 18px;
  max-width:860px;
  color:rgba(255,255,255,.86);
  font-weight:600;
}

#tpa-contables.tpa .tpac-cta-actions{
  display:flex;
  gap:14px;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
  margin-top:8px;
}

#tpa-contables.tpa .tpac-cta-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:12px 22px;
  border-radius:10px;
  text-decoration:none;
  font-weight:900;
  border:1px solid transparent;
  transition:transform .12s ease, box-shadow .12s ease, background .12s ease, border-color .12s ease;
  min-width:220px;
}

#tpa-contables.tpa .tpac-cta-btn-primary{
  background:var(--tpac-mint);
  color:#fff;
  box-shadow:0 14px 34px rgba(94,209,168,.22);
}

#tpa-contables.tpa .tpac-cta-btn-primary:hover{
  transform:translateY(-1px);
  box-shadow:0 16px 38px rgba(94,209,168,.28);
}

#tpa-contables.tpa .tpac-cta-btn-ghost{
  background:rgba(255,255,255,.10);
  color:rgba(255,255,255,.92);
  border-color:rgba(255,255,255,.26);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

#tpa-contables.tpa .tpac-cta-btn-ghost:hover{
  transform:translateY(-1px);
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.30);
}

/* =========================
   FORM SECTION (dark gradient)
   ========================= */
#tpa-contables.tpa .tpac-form{
  background:linear-gradient(135deg, #1F497D 0%, #3F3C71 55%, #1F497D 100%);
  padding:86px 0 78px;
}

#tpa-contables.tpa .tpac-form-head{
  max-width:var(--tpac-max);
  margin:0 auto 28px;
  padding:0 var(--tpac-gutter);
  text-align:center;
}

#tpa-contables.tpa .tpac-form-title{
  margin:0 0 10px;
  color:#fff;
  font-weight:900;
  letter-spacing:-.8px;
  font-size:3.1rem;
  line-height:1.05;
}

#tpa-contables.tpa .tpac-form-mint{ color:var(--tpac-mint); }

#tpa-contables.tpa .tpac-form-sub{
  margin:0 auto;
  max-width:860px;
  color:rgba(255,255,255,.82);
  font-weight:600;
  line-height:1.55;
}

#tpa-contables.tpa .tpac-form-inner{
  max-width:var(--tpac-max);
  margin:0 auto;
  padding:0 var(--tpac-gutter);
}

#tpa-contables.tpa .tpac-form-card{
  max-width:860px;
  margin:28px auto 0;
  padding:28px 28px 22px;
  border-radius:22px;
  background:rgba(120,120,160,.22);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 20px 46px rgba(0,0,0,.16);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}

#tpa-contables.tpa .tpac-form-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}

#tpa-contables.tpa .tpac-field{ margin-bottom:14px; }
#tpa-contables.tpa .tpac-label{
  display:block;
  margin-bottom:7px;
  color:#fff;
  font-weight:700;
  font-size:.92rem;
}

#tpa-contables.tpa .tpac-label i{ margin-right:7px; opacity:.92; }

#tpa-contables.tpa .tpac-input{
  width:100%;
  border-radius:6px;
  border:1px solid rgba(255,255,255,.55);
  background:rgba(255,255,255,.12);
  color:rgba(255,255,255,.92);
  padding:10px 14px;
  outline:none;
  font-size:1rem;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  transition:border-color .12s ease, background .12s ease;
}

#tpa-contables.tpa .tpac-input::placeholder{ color:rgba(255,255,255,.70); }

#tpa-contables.tpa .tpac-input:focus{
  border-color:var(--tpac-mint);
  background:rgba(255,255,255,.14);
}

#tpa-contables.tpa select.tpac-input{
  appearance:none;
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(255,255,255,.78) 50%),
    linear-gradient(135deg, rgba(255,255,255,.78) 50%, transparent 50%);
  background-position:calc(100% - 18px) 50%, calc(100% - 12px) 50%;
  background-size:6px 6px, 6px 6px;
  background-repeat:no-repeat;
  padding-right:34px;
}

#tpa-contables.tpa .tpac-textarea{
  resize:vertical;
  min-height:120px;
}

#tpa-contables.tpa .tpac-submit{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  width:340px;
  max-width:100%;
  margin:18px auto 8px;
  padding:12px 16px;
  border-radius:10px;
  border:1px solid transparent;
  background:var(--tpac-mint);
  color:#fff;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 14px 34px rgba(94,209,168,.22);
  transition:transform .12s ease, box-shadow .12s ease;
}

#tpa-contables.tpa .tpac-submit:hover{
  transform:translateY(-1px);
  box-shadow:0 16px 38px rgba(94,209,168,.28);
}

#tpa-contables.tpa .tpac-privacy{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  color:rgba(255,255,255,.75);
  font-weight:600;
  font-size:.88rem;
  margin-top:10px;
}

#tpa-contables.tpa .tpac-privacy i{ opacity:.9; }

/* Contact cards under form */
#tpa-contables.tpa .tpac-contact-cards{
  max-width:860px;
  margin:24px auto 0;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}

#tpa-contables.tpa .tpac-contact{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:10px;
  padding:18px 16px;
  border-radius:18px;
  text-decoration:none;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 16px 34px rgba(0,0,0,.10);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  transition:transform .14s ease, background .14s ease, border-color .14s ease;
}

#tpa-contables.tpa .tpac-contact:hover{
  transform:translateY(-1px);
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.18);
}

#tpa-contables.tpa .tpac-contact-ico{
  width:50px;
  height:50px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.14);
}

#tpa-contables.tpa .tpac-contact-ico i{
  font-size:1.85rem;
  color:var(--tpac-mint);
}

#tpa-contables.tpa .tpac-contact-t{
  color:rgba(255,255,255,.95);
  font-weight:900;
  font-size:1rem;
  margin-top:2px;
}

#tpa-contables.tpa .tpac-contact-d{
  color:rgba(255,255,255,.78);
  font-weight:700;
  font-size:.95rem;
}

/* =========================
   RESPONSIVE
   ========================= */
@media (max-width:1100px){
  #tpa-contables.tpa .tpac-title{ font-size:3.6rem; }
}

@media (max-width:980px){
  #tpa-contables.tpa .tpac-metrics{ grid-template-columns:repeat(2, minmax(0,1fr)); }
  #tpa-contables.tpa .tpac-grid-3{ grid-template-columns:repeat(2, minmax(0,1fr)); }
  #tpa-contables.tpa .tpac-why-grid{ grid-template-columns:repeat(2, minmax(0,1fr)); }
}

@media (max-width:680px){
  #tpa-contables.tpa .tpac-hero{ min-height:640px; }
  #tpa-contables.tpa .tpac-hero-inner{ padding:3.4rem var(--tpac-gutter); }
  #tpa-contables.tpa .tpac-title{ font-size:3.05rem; }
  #tpa-contables.tpa .tpac-subtitle{ font-size:1.03rem; }
  #tpa-contables.tpa .tpac-btn{ min-width:170px; }
  #tpa-contables.tpa .tpac-metrics{ grid-template-columns:1fr; }
  #tpa-contables.tpa .tpac-grid-3{ grid-template-columns:1fr; }
  #tpa-contables.tpa .tpac-why-grid{ grid-template-columns:1fr; }
  #tpa-contables.tpa .tpac-form-row{ grid-template-columns:1fr; }
  #tpa-contables.tpa .tpac-contact-cards{ grid-template-columns:1fr; }
  #tpa-contables.tpa .tpac-cta{ padding:38px 18px; }
  #tpa-contables.tpa .tpac-cta-title{ font-size:1.9rem; }
}
