/*
Template Name: Adopet - Pet Adoption Mobile App Template
Author: Askbootstrap
Author URI: https://themeforest.net/user/askbootstrap
Version: 0.1
*/

/*
- Body
- Scroll Bar
- Custom
- Video Call
- Chat
- Bootstrap Custom
*/
@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200');
@import url('https://fonts.googleapis.com/css2?family=Karla:wght@200;300;400;500;600;700;800&display=swap');

/* Body */
body {
	font-family: 'Karla', sans-serif;
	color: var(--dark);
	font-size: 12px;
}

/* Scroll Bar */
::-webkit-scrollbar-button {
	width: 0;
	height: 0;
	display: none;
}
::-webkit-scrollbar-corner {
	background-color: transparent;
}
::-webkit-scrollbar-thumb {
	height: 6px;
	border: 4px solid transparent;
	background-clip: padding-box;
	-webkit-border-radius: 7px;
	border-radius: 7px;
	background-color: rgba(0, 0, 0, .15);
	-webkit-box-shadow: inset -1px -1px 0 rgba(0, 0, 0, .05), inset 1px 1px 0 rgba(0, 0, 0, .05);
	box-shadow: inset -1px -1px 0 rgba(0, 0, 0, .05), inset 1px 1px 0 rgba(0, 0, 0, .05);
}
::-webkit-scrollbar {
	width: 4px;
	background-color: #ffffff;
}
::-webkit-scrollbar-thumb {
	height: 50px;
	background: hsla(0, 0%, 53.3%, 0.4);
}
.landing-slider.slick-initialized, .top-doctors.slick-initialized, .available-doctor.slick-initialized, .recent-doctors.slick-initialized {
	visibility: visible;
	opacity: 1;  
}
.landing-slider, .top-doctors, .available-doctor, .recent-doctors {
	opacity: 0;
	visibility: hidden;
	transition: opacity 1s ease;
	-webkit-transition: opacity 1s ease;
}

/* Custom */
.text {
	text-wrap: nowrap;
}
.icon-border {
	width: 50px;
	height: 50px;
}
.pet-border {
	width: 70px;
	height: 70px;
}
.cw-30 {
	width: 30px;
}
.w-round {
	width: 50px;
	height: 50px;
}
.otp-text {
	text-align: center;
}
.fs-head h5 {
	font-size: 17px;
}
.fs-littel {
	font-size: 10px;
}
.icon {
	color: #000;
}
.text-btn {
	color: #000;
}
.w-28 {
	width: 20px;
	height: 20px;
}
.icon-up {
	transform: rotate(194deg);
}
.icon-down {
	transform: rotate(366deg);
}
.bg-send {
	transform: rotate(314deg);
}
.rounded-send {
	width: 66px;
	height: 66px;
}
.link {
	transform: rotate(314deg);
}
.w-352 {
	width: 352px;
}
.w-23 {
	width: 23px;
	height: 23px;
}
.bg-white-30 {
	background-color: rgb(255 255 255 / 21%);
    width: 60px;
    height: 60px;
}
#radio-btn {
	width: 25px;
	height: 25px;
}
.cw-60{
	width: 40px;
	min-width: 40px;
	max-width: 40px;
}
.fav-icon {
	width: 47px;
	height: 47px;
	min-width: 47px;
	max-width: 47px;
	min-height: 47px;
	max-height: 47px;
}
.cw-50{
	width: 50px;
}
.display-1 {
	font-size: 175px;
}

/* Video Call */
.video-call {
	background-image: url(../img/call-bg.jpeg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

/* Chat */
.icon-lg {
	width: 38px;
	height: 38px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 25px;
}
.chat-rounded-right {
	border-radius: 19px;
	padding: 10px 15px !important;
	font-size: 13px;
}
.chat-rounded-left {
	border-radius: 19px;
	padding: 10px 15px !important;
	font-size: 13px;
}

/* Bootstrap Custom */
.bg-primary {
	background-color: #7e1f13 !important;
}
.text-primary {
	color: #ac1a0e !important;
}
.btn-lg {
	font-size: 17px;
	padding: 16px 22px;
	font-weight: 600;
}
.btn-primary, .btn-outline-primary:hover {
	background: #ac1a0e;
	border-color: #ac1a0e;
}
.btn-primary:hover, .btn-primary:focus {
	background: #0f0908;
	border-color: #0f0908;
}
.btn-outline-primary {
	background: rgb(172 26 14 / 12%);
	border-color: rgb(172 26 14 / 11%);
	color: #ac1a0e;
}
.main-logo {
	height: 32px;
}
.cw-100 {
	width: 100px;
}
.w-220 {
	width: 200px;
}
.homepage-cate {
	margin-top: -64px;
}
.steps-for .progress {
	height: 7px;
}
.steps-for h6 {
	font-size: 13px;
}
.form-check-input:checked {
	background-color: #6604b5;
	border-color: #6604b5;
}
.btn-outline-secondary {
	border-color: #dee2e6;
}
.btn-check:checked+.btn, .btn.active, .btn.show, .btn:first-child:active, :not(.btn-check)+.btn:active {
	background: #dee2e6;
	color: #000;
	border-color: #d8d8d8;
}
.nav-pills .nav-link.active, .nav-pills .show>.nav-link {
	background-color: #6604b5;
}
.nav-link, .nav-link:hover {
	color: #6604b5;
}
.border-primary {
	border-color: #d8d8d8 !important;
}
.accordion-button:not(.collapsed) {
	background: #e7dcf2;
	color: #6604b5;
}
:focus {
	box-shadow: none !important;
}

/* ---------- Hero (portada) ---------- */
.hero-title{
  color:#fff;
  text-align:center;
  line-height:1.2;       /* más compacto */
  font-weight:700;
  margin-bottom: 12px;   /* menos espacio debajo */
}

.hero-sub{
  color:rgba(255,255,255,.9);
  text-align:center;
  margin-bottom: 20px;
  font-size: clamp(15px, 4.6vw, 20px);  
  /* 👈 ahora subtítulo un poco más chico en celus */
}

/* 🔹 Por defecto: celulares chicos */
.hero-title{ font-size: clamp(26px, 9vw, 36px); }  
.hero-img  { 
  max-width: 95%;        /* 👈 ahora imagen más grande en celus */
  height:auto;
  display:block;
  margin:0 auto 26px;
}

/* 🔹 Celulares grandes (≥576px) */
@media (min-width:576px){
  .hero-title{ font-size: 36px; }
  .hero-sub  { font-size: 20px; }
  .hero-img  { max-width: 320px; }
}

/* 🔹 Tablets (≥768px) */
@media (min-width:768px){
  .hero-title{ font-size: 44px; }
  .hero-sub  { font-size: 22px; }
  .hero-img  { max-width: 380px; }
}

/* 🔹 Desktop (≥992px) */
@media (min-width:992px){
  .hero-title{ font-size: 52px; }
  .hero-sub  { font-size: 24px; }
  .hero-img  { max-width: 440px; }
}

/* 🔹 Pantallas grandes (≥1200px) */
@media (min-width:1200px){
  .hero-title{ font-size: 60px; }
  .hero-sub  { font-size: 26px; }
  .hero-img  { max-width: 500px; }
}

/* --- Confetti (portada) --- */
#splash-confetti{
  position: fixed;
  inset: 0;
  z-index: 0;            /* 👈 cambia 2 → 0 para que quede detrás */
  pointer-events: none;  /* no bloquea clics */
}

.confetti-piece{
  position: absolute;
  top: -10vh;
  background: #fff;         
  border-radius: 6px;       
  opacity: .92;
  will-change: transform, top, left;
  box-shadow: 0 0 10px rgba(255,255,255,.25);
}

/* ===== Ajustes finales Intro ===== */

/* 1) Título – ya forzamos 2 líneas si es largo */
.hero-heading{
  color:#ac1a0e;
  text-transform:uppercase;
  letter-spacing:.5px;
  line-height:1.25;
  margin-bottom:.65rem;
  display:inline-block;
  max-width:22rem;      /* obliga salto en 2 líneas si hace falta */
  text-align:center;
}

/* 2) Subtítulo más grande en cel, sin tocar tablets/desktop */
.hero-sub2{
  color:#2b2b2b;
  opacity:.9;
  font-weight:500;
  line-height:1.5;
  margin:0 auto 1.1rem;
  max-width:28rem;
  font-size:clamp(16px, 4.6vw, 19px);  /* ↑ antes era 14–17 */
}

/* 3) Icono – un poco más grande */
.intro-icon{ 
  width:120px;   /* antes 96px */
  height:auto; 
  display:block; 
  margin:0 auto .85rem; 
}
@media (min-width:576px){ 
  .intro-icon{ width:135px; }  /* antes 110px */
}

/* 4) Botones arriba de las bolitas (como en el mockup) */
.osahan-page-footer{
  position:fixed; left:0; right:0; bottom:64px;
  background:transparent; border:0; z-index:5; padding:0 20px;
}
.osahan-page-footer .btn{ 
  border-radius:999px; 
  height:48px; 
  display:flex;                 /* fuerza centrado del texto */
  align-items:center; 
  justify-content:center;
  text-align:center; 
  font-weight:600;
}

/* Dejo espacio al contenido para que no quede detrás de los botones */
section.bg-white{ padding-bottom:140px; }

/* 5) Indicadores: círculos rojos con degradado y SIEMPRE rojos */
.carousel-indicators{
  position:fixed; left:0; right:0; bottom:18px; margin:0; z-index:2;
}

/* ¡Importante!: sobreescribir Bootstrap (incluye .carousel-dark) */
.carousel.carousel-dark .carousel-indicators [data-bs-target],
.carousel-indicators [data-bs-target]{
  width:11px; height:11px; border-radius:50%;
  border:0 !important; margin:0 6px;
  background-color:rgba(172,26,14,.28) !important; /* base roja */
  opacity:1 !important;  /* Bootstrap pone opacidad: la anulamos */
  transition:transform .28s ease, background-color .28s ease;
}

/* Activo: rojo pleno */
.carousel.carousel-dark .carousel-indicators .active,
.carousel-indicators .active{
  background-color:#ac1a0e !important;
  transform:scale(1.18);
}

/* Degradado visual (las posiciones 2..5 más claras) */
.carousel-indicators [data-bs-target]:nth-child(2){ background-color:rgba(172,26,14,.24) !important; }
.carousel-indicators [data-bs-target]:nth-child(3){ background-color:rgba(172,26,14,.20) !important; }
.carousel-indicators [data-bs-target]:nth-child(4){ background-color:rgba(172,26,14,.16) !important; }
.carousel-indicators [data-bs-target]:nth-child(5){ background-color:rgba(172,26,14,.12) !important; }

#mascotas-opciones {
  flex-direction: column !important;
  align-items: stretch !important;
}

#mascotas-opciones .btn {
  width: 100% !important;
  margin-bottom: 10px;
}

/* Footer icons: tamaño uniforme */
.osahan-page-footer .icon-img {
  width: 26px;      /* elegí el tamaño que quieras (ej. 24px, 28px, 30px) */
  height: 26px;
  object-fit: contain;
  display: inline-block;
  vertical-align: middle;
}
