
:root{
  --tkm-cyan:#20c2fb;
  --tkm-blue:#0b2a91;
  --tkm-red:#e31c25;
  --tkm-white:#ffffff;
  --tkm-text:#16445b;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:"Nunito",sans-serif;
  color:var(--tkm-text);
  background:#fff;
}
.hero{
  min-height:82vh;
  display:flex;
  align-items:center;
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(rgba(4,69,101,.22),rgba(4,69,101,.32)),
    url("../img/fondo2022.png") center/cover no-repeat;
}
.hero-overlay{
  width:100%;
  padding:5rem 0 7rem;
}
.logo-wrap{
  width:min(720px,92%);
  margin:0 auto 1.5rem;
  text-align:center;
}
.logo-wrap img{
  width:100%;
  max-height:390px;
  object-fit:contain;
  filter:drop-shadow(0 18px 35px rgba(0,0,0,.18));
}
.welcome-card{
  width:min(860px,92%);
  margin:0 auto;
  padding:2rem;
  border-radius:28px;
  background:rgba(255,255,255,.94);
  box-shadow:0 25px 70px rgba(0,68,102,.24);
  backdrop-filter:blur(8px);
}
.eyebrow{
  display:inline-block;
  color:var(--tkm-blue);
  font-size:.82rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.welcome-card h1{
  margin:.55rem 0 .9rem;
  font-family:"Poppins",sans-serif;
  font-size:clamp(2rem,5vw,3.4rem);
  font-weight:800;
  color:#083f5d;
  line-height:1.1;
}
.welcome-card p{
  max-width:700px;
  margin:0 auto;
  font-size:1.08rem;
  line-height:1.7;
  color:#526d7b;
}
.branch-title{
  margin:1.8rem 0 1rem;
  font-weight:900;
  color:#0b2a91;
}
.branch-btn{
  display:flex;
  min-height:58px;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  font-weight:900;
  color:#fff;
  background:linear-gradient(135deg,#0caee8,#20c2fb);
  box-shadow:0 12px 28px rgba(0,164,224,.25);
  transition:.25s ease;
}
.branch-btn:hover{
  color:#fff;
  transform:translateY(-3px);
  box-shadow:0 18px 35px rgba(0,164,224,.34);
}
.service-note{
  margin-top:1.8rem;
  padding:1rem 1.25rem;
  border-radius:18px;
  background:#eefaff;
  color:#0c4b67;
  font-weight:800;
}
.payment-note{
  margin-top:.7rem;
  font-size:.9rem!important;
  color:#6f828c!important;
}
.pets-strip{
  background:#fff;
  overflow:hidden;
}
.pets-strip img{
  width:100%;
  display:block;
  object-fit:cover;
}
.footer{
  background:var(--tkm-cyan);
  color:#fff;
  padding:2rem 1rem;
  text-align:center;
}
.footer strong{
  display:block;
  font-size:1.05rem;
  letter-spacing:.03em;
}
.footer span{
  display:block;
  margin-top:.35rem;
  font-size:.95rem;
  opacity:.95;
}
.reveal{
  opacity:0;
  transform:translateY(24px);
  transition:.7s ease;
}
.reveal.visible{
  opacity:1;
  transform:none;
}
@media(max-width:767px){
  .hero{min-height:auto}
  .hero-overlay{padding:2.5rem 0 4rem}
  .welcome-card{padding:1.35rem}
  .logo-wrap img{max-height:265px}
  .pets-strip img{
    min-height:210px;
    object-position:center;
  }
}
