* {
  margin: 0;
  padding: 0;
  font-family: 'poppins', sans-serif;
  box-sizing: border-box;
}

a {
  text-decoration: none;
}

body{
  background-color: #EEF4FF;
  min width: 300px;
}

/* HEADER */

/* NAVIGATION BAR STYLES */
.navigation-bar{
  width: 100%;
}

/* NAVIGATION TOP */
.navigation-top{
  width: 100%;
  background-color: #01015E;
}

.navigation-top-Content{
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  max-width: 1400px;
  min-width: 300px;
  display: flex;
  justify-content: space-between;
  padding-top: 10px;
}

.navigation-top i{
  color: #FFFFFF;
  font-size: 26px;
  padding-top: 4px;
}

.navigation-top i:hover{
  color: #EEF4FF;
}

.navigation-top-left{
  display: flex;
}

.phone, .email{
  display: flex;
}

.phone i, .email i{
  margin-right: 10px;
}

.email{
  margin-left: 20px;
}

.phone p, .email p{
  display: flex;
  align-items: center;
  font-size: 16px;
  color: #FFFFFF;
}



.navigation-top-right{
  display: flex;
  gap: 10px;
}

.navigation-top-right img{
  width: 26px;
}










/* NAVIGATION BOTTOM STYLES */
.navigation-bottom{
  position: sticky;
  top: 0;
  z-index: 1000;
  width: 100%;
  background-color: #FFFFFF;
}

.navigation-bottom-content{
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  max-width: 1400px;
  min-width: 300px;
  display: flex;
  justify-content: space-between;
  padding-top: 14px;
  padding-bottom: 14px;
}


.navigation-bottom-logo{
  padding-top: 12px;
}

.navigation-bottom-logo h1, span{
  font-family: 'Times New Roman', Times, serif;
  font-size: 24px;
}

.navigation-bottom-logo h1{
  color: #01015E;
}

.navigation-bottom-logo h1 span{
  color: #3FA9F5;
}

.navigation-bottom-logo h1 span:hover{
  color: #FF6947;
}

.navigation-bottom-links{
  display: flex;
  padding-top: 1.2%;
}

.navigation-bottom-links li{
  list-style: none;
}

.navigation-bottom-links li a{
  text-decoration: none;
  color: #01015E;
}

.navigation-bottom-links li a:hover{
  color: #3FA9F5;
}


.navigation-bottom-button button{
  width: 180px;
  height: 54px;
  font-size: 15px;
  border: 2px solid #3FA9F5;
  background-color: #3FA9F5;
  border-radius: 5px;
  color: #FFFFFF;
}

.navigation-bottom-button button:hover{
  background-color: #01015E;
  border: 2px solid #01015E;
}


/* LIST BAR */
.list-bar{
  position: relative;
  display: flex;
  width: 48px;
  height: 48px;
  background: #3FA9F5;
  border-radius: 2px;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 20px rgba(1,1,94,0.3);

}

.list-bar i{
  font-size: 30px;
  color: #FFFFFF;
  cursor: pointer;
}

.list-bar i:hover{
  color: #EEF4FF;
}

.drop-down{
  position: absolute;
  top: 100%;          
  left: auto;        
  right: 0;           
  transform: translateX(-100%); 
  background: #FFFFFF;
  min-width: 250px;
  border-radius: 2px;
  box-shadow: 0 12px 30px rgba(0,0,0,0.15);
  display: none;
  z-index: 1000;
}

.drop-down ul{
  margin-top: 5%;
  margin-bottom: 20%;
  display: grid;
}

.drop-down li{
  list-style: none;
  margin-top: 15%;
  margin-left: 15%;
  margin-right: 15%;
  border-bottom: 2px solid #3FA9F5;
}

.drop-down li a{
  text-decoration: none;
  color: #01015E;
  padding-bottom: 2%;
}

.drop-down li a:hover{
  color: #3FA9F5;
}

.list-bar:hover .drop-down{
  display: block;
  left: 0;
}



/* NAVIGATION BAR KEY FRAMES */
@media screen and (max-width: 700px){
    .navigation-top-left{
      display: none;
  }
}


/* BOTTOM */
@media screen and (max-width: 1100px){
    .navigation-bottom-button{
      display: none;
  }
}

@media (min-width: 850px) {
  .list-bar {
    display: none;
  }
}

@media screen and (max-width: 850px){
   .navigation-bottom-links{
      display: none;
  }

@media screen and (max-width: 410px){
    .navigation-bottom-logo h1, span{
      font-size: 19px;
    }

    .navigation-bottom-logo{
      padding-top: 8px;
    }

    .list-bar{
      width: 35px;
      height: 35px;
    }

    .list-bar i{
      font-size: 20px;
    }
  }

}










/* HERO SECTION STYLE*/
.hero {
    width: 100%;
    background-image: linear-gradient(rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.50)),url(hero\ \(3\).jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    height: 100vh;
}

.hero-content {
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    max-width: 1400px;
    min-width: 300px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    padding-top: 14vh;
}

.hero-text h1, .hero-text span {
    font-size: 45px;
    line-height: 1;
    color: #01015E;
    font-family: 'Times New Roman', Times, serif;
}

.hero-text .blue {
    color:  #FF6947;
    font-size: 50px;
}

.hero-buttons {
    margin-top: 40px;
}


.btn-outline {
    width: 180px;
    height: 54px;
    font-size: 15px;
    border: 2px solid #3FA9F5;
    background-color: #3FA9F5;
    border-radius: 5px;
    color: #FFFFFF;
    padding: 16px 30px;
}

.btn-outline:hover{
  background-color: #FF6947;
  border: 2px solid #FF6947;
}
 









/* INFO STYLES */
.info {
  width: 100%;
  position: absolute;
  top: 96vh;
}

.container-info-boxes {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  max-width: 1400px;
  min-width: 300px;
  display: flex;
  gap: 20px;
}

.box {
  background: #FFFFFF;
  padding: 40px;
  width: 100%;
  border-radius: 6px;
}

.box h3 {
  margin-bottom: 10px;
}

.btn-small {
  display: inline-block;
  margin-top: 10px;
  background: #3FA9F5;
  color: #FFFFFF;
  padding: 10px 30px;
  border-radius: 5px;
  text-decoration: none;
}

.btn-small:hover{
    background-color: #FF6947;
}



/* INFO KEYFRAMES */
@media screen and (max-width: 1090px){
  .info{
    width: 100%;
    position: ;
  }
  .container-info-boxes{
    flex-wrap: wrap;
    justify-content: center;
  }
}










/* ABOUT REVIEW SECTION */
.about {
  background: #EEF4FF;
  width: 100%;
}

.about-content {
  max-width: 1090px;
  margin: auto;
  display: flex;
  gap: 40px;
  align-items: stretch;
  flex-wrap: wrap;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  max-width: 1400px;
  min-width: 300px;
  padding-top: 160px;
  padding-bottom: 80px;
}

/* LEFT SIDE */
.about-left {
  flex: 1 1 500px;
  background: #FFFFFF;
  padding: 40px;
  border-radius: 16px;

  box-shadow: 0 10px 30px rgba(1, 1, 94, 0.1);
}

.about-left h2 {
  color: #01015E;
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 40px;
}

.about-left p {
  color: #444;
  line-height: 1.6;
  margin-bottom: 40px;
  font-size: 17px;
}

/* PATIENT REVIEW */
.patient-review {
  background: #EEF4FF;
  padding: 24px;
  border-radius: 12px;
  border-left: 4px solid #01015E;
}

.patient-review h3 {
  color: #01015E;
  margin-bottom: 10px;
  font-size: 20px;
}

.patient-review p {
  margin: 0 0 8px;
  line-height: 1.5;
}

.patient-review span {
  font-size: 14px;
  color: #666;
}

/* RIGHT SIDE IMAGE */
.about-right {
  flex: 1 1 500px;
  border-radius: 16px;
  overflow: hidden;
}

.about-right img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}







/* ABOUT KEYFRAMES */
@media (max-width: 1090px) {
  .about {
    margin-top: 450px;
  }
}

@media (max-width: 768px) {
  .about-content {
    gap: 24px;
  }

  .about-left,
  .about-right {
    flex: 1 1 100%;
  }

  .about-right {
    height: 260px;
  }

  .about-left {
    padding: 28px;
  }
}











/* SERVICES REVIEW SECTION */
.services {
  width: 100%;
  background-color: #FFFFFF;
  padding-top: 10px;
  padding-bottom: 30px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  max-width: 1400px;
  min-width: 300px;
}

.services-title {
  text-align: center;
  font-size: 35px;
  margin-top: 40px;
  margin-bottom: 5px;
  color: #10276F;
}

.services-title-text{
  text-align: center;
  margin-bottom: 30px;
  font-size: 26px;
  color: #10276F;
}

.services-content{
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  max-width: 1400px;
  min-width: 300px;
}

.services-slider {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}

.services-slider::-webkit-scrollbar {
  display: none;
}

.service-card {
  min-width: 300px;
  scroll-snap-align: start;
  background-color: #D7E8EE;
  padding: 24px;
  border-radius: 6px;
  text-align: left;
  border-left: 5px solid #2181CB;
  box-shadow: 0 3px 10px rgba(0,0,0,0.09);
}

.service-icon img {
  width: 52px;
  height: 52px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 40px;
  margin-top: 30px;
  margin-bottom: 10px;
}

.service-card h3 {
  font-size: 22px;
  margin-bottom: 16px;
  color: #10276F;
}

.service-card p {
  font-size: 18px;
  line-height: 1.5;
  color: #475569;
  margin-bottom: 30px;
}

.call-to-action{
  display: flex;
  justify-content: space-between;
  padding-top: 30px;
}

.call-to-action-btn button{
    width: 200px;
    height: 54px;
    font-size: 15px;
    border: 2px solid #3FA9F5;
    background-color: #3FA9F5;
    border-radius: 5px;
    color: #FFFFFF;
}

.call-to-action-btn button:hover{
  background-color: #FF6947;
  border: #FF6947;
}

.swipe-hint{
  font-size: 18px;
  font-weight: 500;
  color: #FF6947;
  margin-top: 15px;
}

.swipe-hint:hover{
  color: #01015E;
}



/* SERVICES KEY FRAMES */
@media (max-width: 700px) {
  .swipe-hint{
  font-size: 100%;
}

.call-to-action-btn button{
    width: 100%;
}
}

@media (max-width: 450px) {
  .swipe-hint{
  font-size: 12px;
}

.call-to-action-btn button{
    width: 150px;
    height: 50px;
    font-size: 12px;
  
}
}








/* WHY CHOOSE US STYLES */
.why-choose-us {
    width: 100%;
    text-align: center;
    padding-top: 70px;
    padding-bottom: 70px;
}

.why-choose-us .container{
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    max-width: 1400px;
    min-width: 300px;
}

.why-choose-us h2 {
  font-size: 2.2rem;
  margin-bottom: 10px;
  color: #10276F;
}

.why-choose-us .intro {
  font-size: 1.1rem;
  margin-bottom: 50px;
  color: #555;
  max-width: 650px;
  margin-left: auto;
  margin-right: auto;
}

.reasons {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 30px;
}

.reason {
  background: #D7E8EE;
  padding: 30px 20px;
  border: 1px solid #eee;
  border-radius: 14px;
  transition: 0.3s ease;
}

.reason img {
  width: 55px;
  margin-bottom: 20px;
}

.reason h3 {
  font-size: 1.25rem;
  margin-bottom: 12px;
  color: #10276F;
}

.reason p {
  font-size: 1rem;
  color: #666;
  line-height: 1.5;
}

.reason:hover {
  transform: translateY(-8px);
  box-shadow: 0 10px 25px rgba(0,0,0,0.08);
}










/* CONTACT US REVIEW SECTION */
.contact {
  padding: clamp(60px, 8vw, 100px) 20px;
  background-color: #f7f9fc;
  font-family: 'Segoe UI', sans-serif;
  width: 100%;
}

.contact-content{
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  max-width: 1400px;
  min-width: 300px;
  display: flex;
  gap: clamp(20px, 4vw, 40px);
  align-items: stretch;
  flex-wrap: wrap; 
}

/* ===== SHARED CARD STYLE ===== */
.card {
  flex: 1 1 420px; 
  min-width: 320px;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
  padding: clamp(22px, 3vw, 36px);
  border-radius: 22px;
  box-shadow: 0 25px 45px rgba(0, 0, 0, 0.08);
  display: flex;
  flex-direction: column;
}

/* ===== LEFT CARD ===== */
.contact-info h2 {
  font-size: clamp(24px, 3vw, 32px);
  margin-bottom: 12px;
  color: #0f172a;
}

.contact-info .intro {
  font-size: clamp(14px, 1.6vw, 16px);
  line-height: 1.7;
  color: #475569;
  margin-bottom: clamp(18px, 3vw, 26px);
}

.contact-details {
  display: flex;
  flex-direction: column;
  gap: clamp(14px, 2vw, 18px);
}

.detail-item {
  display: flex;
  gap: 14px;
  align-items: flex-start;
}

.detail-item .icon {
  width: clamp(40px, 5vw, 44px);
  height: clamp(40px, 5vw, 44px);
  background-color: #eaf3ff;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
}

.detail-item strong {
  font-size: 14px;
  color: #0f172a;
}

.detail-item p {
  font-size: 14px;
  color: #475569;
}

/* ===== RIGHT CARD ===== */
.contact-form h3 {
  font-size: clamp(18px, 2.4vw, 22px);
  margin-bottom: clamp(14px, 2vw, 20px);
  color: #0f172a;
}

.form-group {
  margin-bottom: 16px;
}

.form-group input, .form-group textarea {
  width: 100%;
  padding: clamp(12px, 2vw, 14px) clamp(14px, 2vw, 16px);
  border-radius: 14px;
  border: 1px solid #cbd5e1;
  font-size: clamp(14px, 1.8vw, 15px);
  outline: none;
}

.form-group input::placeholder,
.form-group textarea::placeholder {
  font-size: clamp(13px, 1.6vw, 14px);
  color: #94a3b8;
}

.form-group input:focus,
.form-group textarea:focus {
  border-color: #3b82f6;
}

button {
  margin-top: auto;
  padding: clamp(12px, 2vw, 14px);
  border: none;
  border-radius: 10px;
  background-color: #3b82f6;
  color: #ffffff;
  font-size: clamp(14px, 1.8vw, 15px);
  font-weight: 600;
  cursor: pointer;
  transition: 0.3s;
}

button:hover {
  background-color: #FF6947;
}

/* ===== MOBILE ===== */
@media (max-width: 420px) {
  .contact-container {
    flex-direction: column;
  }

  .contact-info,
  .contact-form {
    min-width: 100%;
  }

  .contact-info h2,
  .contact-info .intro {
    text-align: center;
  }

  .detail-item {
    justify-content: ;
  }

  .contact-form button{
    width: ;
  }
  .contact-form h3 {
    text-align: center;
  }
}











/* Map */
.map iframe {
  width: 100%;
  height: 500px;
  border: 0;
  border-radius: 10px;
}










/* FOOTER SECTION STYLE */
.footer {
  background: #01015e; /* deep dental blue */
  color: #fff;
  padding: 50px 20px 20px;
  width: 100%;
}

.footer-container {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 30px;
    max-width: 1200px;
    margin: 0 auto;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
    max-width: 1400px;
    min-width: 300px;
}

.footer-about,
.footer-links,
.footer-contact {
  flex: 1;
  min-width: 250px;
}

.footer h2, .footer h3 {
  margin-bottom: 15px;
  color: #fff;
}

.footer p {
  font-size: 0.95rem;
  margin-bottom: 10px;
  color: #ddd;
}

.footer-links ul {
  list-style: none;
  padding: 0;
}

.footer-links ul li {
  margin-bottom: 10px;
}

.footer-links a {
  text-decoration: none;
  color: #ddd;
  transition: color 0.3s;
}

.footer-links a:hover {
  color: #FF6947;
}

.footer-icon{
  display: flex;
  gap: 15px;
}

.footer-icon i{
  font-size: 24px;
  color: #FFFFFF;
}

.footer-icon i:hover{
  color: #FF6947;
}

.footer-bottom {
  text-align: center;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  margin-top: 30px;
  font-size: 0.9rem;
  color: #bbb;
}

/* Responsive */
@media (max-width: 768px) {
  .footer-container {
    flex-direction: column;
    text-align: center;
  }

  .footer-icon{
    display: block;
  }

  .footer-socials {
    margin-top: 10px;
  }
}

































/* APPOINTMENT PAGE CSS */
.appointment-hero {
    width: 100%;
    background-image: linear-gradient(rgba(0, 0, 0, 0.0), rgba(0, 0, 0, 0.50)),url(hero\ \(10\).jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    height: 40vh;
}

.appointment-container-hero-content {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    max-width: 1400px;
    min-width: 300px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 16vh;

}

.appointment-hero-text h1 {
    font-size: 50px;
    color: #01015E;
}

.appointment-hero-text .blue {
    color: #3FA9F5;
    font-size: 45px;
}







/* APPOINTMENT SECTION */
.appointment {
  width: 100%;
  background: #EEF4FF;
  padding-top: 60px;
  padding-bottom: 60px;

}

.appointment-form {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  max-width: 1400px;
  min-width: 300px;
}

/* CONTACT BOX */
.contact-info {
  background: #ffffff;
  padding: 40px;
  border-radius: 14px;
  box-shadow: 0 10px 25px rgba(0,0,0,0.08);
  margin-bottom: 25px;
}

/* APPOINTMENT BOX */
.appointment-info {
  background: #f6f9ff; /* subtle contrast */
  padding: 30px;
  border-radius: 14px;
  border: 1px solid #dfe6ff;
  margin-bottom: 30px;
}

.contact-info h3,
.appointment-info h3 {
  color: #01015E;
  margin-bottom: 20px;
}

.contact-info input,
.contact-info select,
.appointment-info input,
.appointment-info select,
.appointment-info textarea {
  width: 100%;
  padding: 12px 14px;
  margin-bottom: 15px;
  border-radius: 8px;
  border: 1px solid #dcdcdc;
  font-size: 14px;
}

.contact-info input:focus,
.contact-info select:focus,
.appointment-info input:focus,
.appointment-info select:focus,
.appointment-info textarea:focus {
  outline: none;
  border-color: #01015E;
}

/* FULL WIDTH BUTTON */
.appointment-btn {
  width: 100%;
  padding: 16px;
  background: #01015E;
  color: #ffffff;
  border: none;
  border-radius: 12px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: 0.3s ease;
}

.appointment-btn:hover {
  background: #FF6947;
}



/* APPOINTMENT FRAMES */
@media (max-width: 500px) {
  .appointment-hero-text h1 {
    font-size: 40px;
    color: #FF6947;
}
}
