﻿
    input::-webkit-outer-spin-button,
    input::-webkit-inner-spin-button {
      -webkit-appearance: none;
      margin: 0;
    }

    input[type="number"] {
      -moz-appearance: textfield;
    }
    .hp_points {
    position: relative;
    z-index: 1;
    margin-top: 10px;
    display: grid;
    gap: 10px;
}
.hp_point {
    display: flex;
    gap: 10px;
    align-items: center;
    color: #333;
    font-size: 14px;
    line-height: 1.45;
}
.hp_point_icon {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(238, 148, 8, .14);
    color: #ee9408;
    flex: 0 0 34px;
}
.hp_point_icon {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(238, 148, 8, .14);
    color: #ee9408;
    flex: 0 0 34px;
}
  
  
    /* ===== NEW Banner Design (Screenshot Style) ===== */
.eye-hero-bg {
  position: relative;
  min-height: 560px;
  overflow: hidden;

  background-image: url("/vasan/images/laptop_view_banner.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.eye-hero-inner {
  position: relative;
  z-index: 1;
  min-height: 560px;
  display: flex;
  align-items: center;
  padding: 40px 16px;
}

/* âœ… Mobile image hidden on desktop */
.eye-hero-mobile-img {
  display: none;
}

/* Left Card */
.eye-hero-card {
  width: min(640px, 95%);
  margin-left: 6%;
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(8px);
  border: 1px solid #eef2ff;
  border-radius: 22px;
  padding: 28px 28px 20px;
  box-shadow: 0 18px 50px rgba(16, 24, 40, 0.10);
}

.eye-pill {
  display: inline-block;
  font-weight: 800;
  font-size: 13px;
  letter-spacing: 0.8px;
  padding: 10px 14px;
  border-radius: 999px;
  background: #fde8c8;
  border: 1px solid rgba(247, 147, 26, 0.35);
  color: #1b1f2a;
  text-transform: uppercase;
}

.eye-title {
  margin: 14px 0 14px;
  font-size: 46px;
  line-height: 1.05;
  font-weight: 900;
  color: #0b4db6;
}

.eye-points {
  list-style: none;
  padding: 0;
  margin: 0 0 18px;
}

.eye-points li {
  display: flex;
  gap: 10px;
  align-items: center;
  font-size: 16px;
  font-weight: 700;
  color: #2a3240;
  margin-bottom: 10px;
}

.eye-points i {
  font-size: 20px;
  color: #f7931a;
}

/* Inputs */
.eye-input {
  height: 52px;
  border-radius: 14px;
  border: 1px solid #e7ecff;
  padding: 12px 14px;
  font-weight: 700;
}

.eye-input:focus {
  border-color: #0b4db6;
  box-shadow: 0 0 0 0.2rem rgba(11, 77, 182, 0.12);
}

/* Buttons */
.eye-btn-primary {
  height: 52px;
  border-radius: 14px;
  background: #f7931a;
  border: 1px solid #f7931a;
  color: #fff;
  font-weight: 900;
}

.eye-btn-primary:hover {
  background: #ea8611;
  border-color: #ea8611;
  color: #fff;
}

.eye-btn-secondary {
  height: 52px;
  border-radius: 14px;
  background: #fdeed9;
  border: 1px solid rgba(247, 147, 26, 0.45);
  color: #1b1f2a;
  font-weight: 900;
}

.eye-btn-secondary i {
  margin-right: 8px;
}

.eye-safe {
  margin: 12px 0 0;
  font-size: 13px;
  font-weight: 800;
  color: #5a6475;
}

.eye-safe i {
  color: #f7931a;
  margin-right: 8px;
}

/* Shapes */
.eye-shape {
  position: absolute;
  border-radius: 999px;
  opacity: 0.35;
  pointer-events: none;
  z-index: 0;
}

.eye-shape-1 {
  width: 280px;
  height: 280px;
  left: -90px;
  top: -90px;
  background: #fde8c8;
}

.eye-shape-2 {
  width: 220px;
  height: 220px;
  right: -70px;
  top: 40px;
  background: #cfe0ff;
}

.eye-shape-3 {
  width: 260px;
  height: 260px;
  left: 38%;
  bottom: -140px;
  background: #fde8c8;
}

/* âœ… Responsive (Mobile / Tablet) */
@media (max-width: 991px) {
  /* remove desktop bg */
  .eye-hero-bg {
    background-image: none !important;
    min-height: auto;
    padding-bottom: 18px;
  }

  /* stack image + card */
  .eye-hero-inner {
    min-height: auto;
    padding: 12px;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }

  /* show mobile banner image */
  .eye-hero-mobile-img {
    display: block;
    width: 100%;
    border-radius: 16px;
    overflow: hidden;
  }

  .eye-hero-mobile-img img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 16px;

    /* âœ… if you want fixed hero height on mobile, uncomment below */
    /* height: 220px;
    object-fit: cover; */
  }

  /* card full width */
  .eye-hero-card {
    width: 100%;
    margin: 0;
    padding: 18px 16px 14px;
    border-radius: 18px;
  }

  .eye-title {
    font-size: 32px;
  }

  /* optional: hide shapes on mobile */
  .eye-shape {
    display: none;
  }
}





    .doc_card {
      background: #fff;
      padding: 20px;
      border-radius: 10px;
      box-shadow: 0px 0px 10px #80808047;
      max-width: 300px;
      margin: 0 auto 20px;
    }

    .doc_card h4 {
      font-weight: 600;

      font-size: 18px;
      line-height: 22px;
      /* text-transform: uppercase; */
    }

    .doc_card p {
      line-height: 26px;
      margin: 16px 0px;
      font-size: 15px;
      font-family: "glacial-indifference";
    }

    .doc-call-button {
      background: #f98d24;
      color: #fff;
      padding: 5px 20px;
      border-radius: 5px;
      width: 100%;
      margin-bottom: 10px;
      border: 1px solid #f98d24;
    }

    .doc_card img {
      border-radius: 50%;
      margin-bottom: 10px;
      height: 200px;
      width: 200px;
      object-fit: cover;
      object-position: top;
    }


    .about_retina {
      background-color: #ffffff;
    }

    .about_title {
    font-size: 32px;
    font-weight: 800;
    color: #034ea0;
    margin-bottom: 25px;
}

    .about_retina p {
      font-size: 16px;
      line-height: 1.7;
      color: #333333;
      /* neutral dark gray */
      margin-bottom: 10px;
    }

    /* Stats */
    .about_stats {
      margin-top: 20px;
    }

    .stat_item {
      margin-right: 40px;
      margin-bottom: 10px;
    }

    .stat_item h3 {
      font-size: 24px;
      font-weight: 700;
      color: #ee9408;
      /* theme color for numbers */
      margin-bottom: 2px;
    }

    .stat_item p {
      margin: 0;
      font-size: 14px;
      color: #555555;
      /* lighter gray */
    }

    /* Button in theme color */
    .about_btn {
      background-color: #ee9408;
      color: #ffffff;
      padding: 12px 28px;
      border-radius: 6px;
      font-weight: 600;
      border: none;
    }

    .about_btn:hover,
    .about_btn:focus {
      background-color: #d67f02;
      color: #ffffff;
    }

    /* Image */
    .about_img {
      max-width: 100%;
    }

    /* Wrapper */
    .faq_section_wrap {
      padding: 60px 0;
      background-color: #ffffff;
      /* page bg only */
    }

    /* Heading */
    .section-title {
      font-size: 32px;
      font-weight: 700;
      color: #ee9408;
    }

    /* Make accordion area transparent, no box bg */
    .faq_front {
      background: transparent;
      box-shadow: none;
    }

    /* Individual items: only thin border between rows, no card box look */
    .faq_front .card {
      border: none;
      border-radius: 0;
      margin-bottom: 0;
      box-shadow: none;
    }

    .faq_front .card-header {
      background-color: transparent;
      border-bottom: 1px solid #f0f0f0;
      padding: 0;
    }

    .faq_front .card:last-child .card-header {
      border-bottom: none;
    }

    .faq_btn {
      width: 100%;
      text-align: left;
      padding: 18px 22px;
      font-size: 15px;
      font-weight: 600;
      color: #000;
      text-decoration: none;
      display: flex;
      align-items: center;
      justify-content: space-between;
    }

    .faq_btn:hover,
    .faq_btn:focus {
      color: #ee9408;
      text-decoration: none;
    }

    .faq_icon {
      font-size: 14px;
      color: #ee9408;
      margin-left: 12px;
    }

    .faq_front .card-body {
      padding: 14px 22px 18px;
      font-size: 14px;
      color: #444;
      border-bottom: 1px solid #f0f0f0;
    }

    /* Overlapping images like reference */
    .faq_images_stack {
      position: relative;
      width: 100%;
      max-width: 480px;
      /* adjust to taste */
      margin-left: auto;
    }

    .faq_img {
      width: 100%;
      border-radius: 10px;
      box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
    }

    .faq_img_top {
      position: relative;
      z-index: 1;
    }

    .faq_img_bottom {
      position: absolute;
      left: 100px;
      top: 94%;
      transform: translateY(-10%);
      z-index: 2;
    }

    .faq_images_wrap img {
      border-radius: 20px;
    }

    /* Responsive â€“ stack images vertically on small screens */
    @media (max-width: 991.98px) {
      .faq_section {
        flex-direction: column;
      }

      .faq_images_stack {
        margin: 30px auto 0;
      }

      .faq_img_bottom {
        position: static;
        transform: none;
        margin-top: 20px;
      }
    }

    .testimonial_section {
      padding: 60px 0;
      background-color: #ef991329;
      /* light background like reference */
    }

    .testi_title {
      font-size: 32px;
      font-weight: 700;
      color: #ee9408;
    }

    /* Left rating card */
    .rating_box {
      background-color: #ffffff;
      border-radius: 14px;
      padding: 24px 22px;
      box-shadow: 0 12px 35px rgba(0, 0, 0, 0.08);
    }

    .rating_logo {
      display: flex;
      align-items: center;
      margin-bottom: 16px;
    }

    .rating_store_icon {
      width: 52px;
      height: 52px;
      border-radius: 50%;
      background-color: rgba(238, 148, 8, 0.12);
      color: #ee9408;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      font-size: 24px;
      margin-right: 12px;
    }

    .rating_name {
      font-size: 18px;
      font-weight: 700;
      margin-bottom: 2px;
    }

    .rating_label {
      margin: 0;
      font-size: 14px;
      color: #666;
    }

    .rating_value {
      display: flex;
      align-items: center;
      margin-bottom: 4px;
    }

    .rating_score {
      font-size: 32px;
      font-weight: 700;
      margin-right: 8px;
    }

    .rating_stars i {
      color: #ffb400;
      font-size: 16px;
    }

    .rating_meta {
      font-size: 13px;
      color: #777;
      margin-bottom: 8px;
    }

    .rating_powered {
      display: flex;
      align-items: center;
      font-size: 12px;
      color: #888;
      margin-bottom: 14px;
    }

    .rating_google_logo {
      height: 22px;
      margin-left: 6px;
    }

    .rating_btn {
      display: inline-block;
      padding: 10px 18px;
      border-radius: 20px;
      background-color: #ee9408;
      color: #fff;
      font-size: 13px;
      font-weight: 600;
      border: none;
    }

    .rating_btn:hover,
    .rating_btn:focus {
      color: #fff;
      background-color: #d67f02;
    }

    /* Right review cards */
    .testi_slider .testi_card {
      background-color: #ffffff;
      border-radius: 16px;
      padding: 18px 16px;
      box-shadow: 0 12px 35px rgba(0, 0, 0, 0.06);
      display: flex;
      flex-direction: column;
      margin: 0px 10px;
      min-height: 250px;

    }

    .testi_header .star i {
      color: #ffb400;
      font-size: 14px;
    }

    .testi_text {
      margin-top: 10px;
      font-size: 14px;
      line-height: 1.7;
      color: #444;
    }

    /* Dots from Owl (optional refine) */
    .testi_slider .owl-dots {
      margin-top: 18px;
      text-align: center;
    }

    .testi_slider .owl-dot span {
      width: 8px;
      height: 8px;
      margin: 3px;
      background: #d2dde4;
      border-radius: 50%;
    }

    .testi_slider .owl-dot.active span {
      background: #ee9408;
    }

    /* Make all testimonial cards same height on desktop */
    .testi_slider .row>[class^="col-"] {
      display: flex;
    }

    .testi_card {
      background-color: #ffffff;
      border-radius: 16px;
      padding: 18px 16px;
      box-shadow: 0 12px 35px rgba(0, 0, 0, 0.06);
      display: flex;
      flex-direction: column;
      height: 100%;
    }

    .testi_text {
      margin-top: 8px;
      font-size: 14px;
      line-height: 1.7;
      color: #444;
    }

    /* On smaller screens, let cards auto-height and single-column */
    @media (max-width: 767.98px) {
      .testi_slider .row>[class^="col-"] {
        display: block;
        margin-bottom: 16px;
      }

      .top_header .btn-sm {
        font-size: 14px;
        padding: 10px;
        min-width: 140px;
      }
    }


    @media (max-width: 767.98px) {
      .testi_title {
        font-size: 26px;
      }

      .rating_box {
        margin-bottom: 24px;
      }
    }

    section.laser_work_section.py-5 {
      background: #ef99131c;
    }

    .color-brown {
    color: #f98d24;
    font-size: 30px;
    font-weight: 800;
}
.commen-heading , .headingsize {
    font-size: 30px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    margin-bottom: 28px !important;
    color: #034ea0 !important;
}
.laser_title{
   font-size: 30px !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    margin-bottom: 28px !important;
    color: #034ea0 !important;
}

    .tsa_footer {
      background-color: #ef991329;
      /* light tinted bg as provided */
      color: #222222;
      padding: 50px 0 0;
      margin-top: 40px;
    }

    .footer_logo img {
      max-width: 160px;
    }

    .footer_heading {
      font-weight: 600;
      font-size: 15px;
      margin-bottom: 4px;
      color: #222222;
    }

    .footer_phone a {
      color: #222222;
      font-size: 18px;
      font-weight: 700;
      text-decoration: none;
    }

    .footer_text {
      font-size: 14px;
      color: #444444;
    }

    .footer_text a {
      color: #222222;
      text-decoration: none;
    }

    /* Appointment form card */
    .footer_form_box {
      background-color: #ffffff;
      border-radius: 14px;
      padding: 22px 20px;
      box-shadow: 0 10px 25px rgba(0, 0, 0, 0.06);
      color: #222222;
    }

    .footer_form_title {
      font-size: 20px;
      font-weight: 700;
      text-align: center;
      margin-bottom: 15px;
      color: #222222;
    }

    .footer_input {
      font-size: 14px;
      border-radius: 8px;
      border: 1px solid #d8d8d8;
    }

    .footer_input:focus {
      border-color: #ee9408;
      box-shadow: 0 0 0 0.15rem rgba(238, 148, 8, 0.25);
    }

    /* Submit button with theme color */
    .footer_submit_btn {
      background-color: #ee9408;
      border-radius: 30px;
      border: none;
      color: #ffffff;
      font-weight: 600;
      padding: 10px 18px;
      font-size: 14px;
    }

    .footer_submit_btn:hover,
    .footer_submit_btn:focus {
      background-color: #d67f02;
      color: #ffffff;
    }

    /* Map */
    .footer_map_wrap iframe {
      border-radius: 14px;
      box-shadow: 0 10px 25px rgba(0, 0, 0, 0.18);
    }

    /* Bottom bar */
    .footer_bottom {
      background: #ee9408;
      /* as provided */
      margin-top: 30px;
      padding: 12px 0;
    }

    .footer_copy {
      font-size: 13px;
      color: #ffffff;
      margin-bottom: 0;
    }

    .footer_bottom_link {
      font-size: 13px;
      color: #ffffff;
      text-decoration: none;
      font-weight: 600;
    }

    .footer_bottom_link:hover {
      text-decoration: underline;
    }

    .footer_sep {
      margin: 0 8px;
      color: #ffe9c0;
    }

    /* Responsive */
    @media (max-width: 767.98px) {
      .tsa_footer {
        padding-top: 35px;
      }

      .footer_form_box {
        margin-top: 20px;
      }

      .footer_bottom {
        text-align: center;
      }
    }

    .btn-top .btn-sm {
      background: #ee9408 !important;
      color: #000 !important;
      font-weight: bold;
      border: 1px solid black;
      box-shadow: 0px 0px 10px #808080a6;
    }

    .btn-sm {
      font-size: 20px;
      background: #ee9408 !important;
      color: #000 !important;
      font-weight: bold;
      border: 1px solid black;
      box-shadow: 0px 0px 10px #808080a6;
    }

    @media(max-width:576px) {
      button.btn.homebannerbtn {
        padding: 10px 20px;
        font-size: 15px;
      }

      .hp_caption h1 {
        font-size: 34px;
      }

      .hp_caption .text h3 {

        font-size: 22px;

      }

      .about_title {
        font-size: 24px;
      }
    }

    .modal-close-btn {
      position: absolute;
      top: 10px;
      right: 15px;
      font-size: 32px;
      font-weight: 300;
      background: none;
      border: none;
      color: #000;
      line-height: 1;
      opacity: 0.8;
    }

    .modal-close-btn:hover {
      opacity: 1;
    }
  
