@charset "UTF-8";
/*
Theme Name: Sahara Hospice Care
Author: Onetikk
Author URI: https://onetikk.org/
Version: 1.1
*/

/*---Contact form 7---*/

span .wpcf7-not-valid { border: 1px solid #b41927 !important; }
span.wpcf7-not-valid-tip { display: none; }
div.wpcf7-validation-errors { background: #ffe2e2; border: 1px solid #b41927; color: #C10000; }
div.wpcf7-response-output { color: #842029; border: 1px solid transparent; background-color: #f8d7da; border-color: #f5c2c7 !important; position: relative; padding: 1rem 1rem !important; margin-bottom: 1rem !important; border-radius: 0.25rem; }
div.wpcf7-validation-errors { display: none !important; }
.wpcf7-spam-blocked { background: #e2e2e2; border: 1px solid #bcbcbc !important; color: #383838; }
.wpcf7-mail-sent-ng { background: #fcf8e3; border: 1px solid #ac9163 !important; color: #8a6d3b; }
.wpcf7-mail-sent-ok { background: #dff0d8; border: 1px solid #3c763d !important; color: #3c763d; }
span .wpcf7-checkbox.wpcf7-not-valid{ border: none !important; }
span .wpcf7-checkbox.wpcf7-not-valid input { border: 1px solid #b41927 !important; }

/*---Contact form 7---*/

/*----------------
404 Page Start
------------------*/

.error-box{ text-align:center; position:relative; width:100%; height:100%; margin:100px auto; text-align:center; max-height: 500px; }
.error-box-text{ z-index:999; position:relative; top:-470px; }
.error-box-text h1{ font-size:175px; color:#d3282a; line-height:1; }
.error-box-text h3{ font-size:40px; color:#111; }
.error-box-text h4{ font-size:20px; color:#333; margin-top:20px; }
.back-box{ z-index:-999999; background:#f9f9f9; position:relative; top:50px; padding:50px; }
.error-box h2{ color:rgba(204,204,204,.2); font-size:250px; font-weight:600; letter-spacing:10px; text-transform:uppercase; line-height: 1.3; }
.error-box-text .dark-button { background: #111; color: #fff; font-size: 11px; font-weight: 500; border-radius: 50px; padding: 10px 15px 10px 15px; -webkit-transition-duration: .3s; transition-duration: .3s; text-decoration: none; margin-top: 30px; }
.error-box-text .dark-button:hover { color: #fff; background: #d3282a; }
.error-box-text .button-md { display: inline-block; font-size: 14px; font-weight: 500; padding: 13px 25px 13px 25px; }

/*----------------
404 Page End
------------------*/

/*----------------
Thank you Page Start
------------------*/

.count-back-box { width: 100%; height: 100%; min-height: 80vh; padding: 100px 0px; text-align: center; position: relative; background-position: center; background-size: cover; background-repeat: no-repeat; }
.count-back-box:before{ position: absolute; content: ""; width: 100%; height: 100%; background: rgba(255, 255, 255, 0.8); top: 0; left: 0;}
.thankyou-box { margin: auto; }
.thankyou-icons { position: relative; text-align: center; }
.count-back-box-text { text-align: center; margin: 30px auto 0 auto; }
.count-back-box-text h3 { color: #111; font-size: 1.5rem; font-weight: 400; line-height: 6;}
.count-back-box-text h6 { color: #777; font-size: 18px; font-weight: 400; margin-top: 10px; }
.thankyou-page{ min-height: calc(100vh - 600px); }


/*----------------
Thank you Page End
------------------*/




/* ==========================================
   HOME BANNER – COMPLETE & RESPONSIVE SET
   Includes: Headings + Subtext + Button
   Target: #rev_slider_5_1
   ========================================== */


/* Normalize */
html { -webkit-text-size-adjust:100%; text-size-adjust:100%; }

/* Layout & wrapping */
#rev_slider_5_1 .tp-caption { white-space: normal !important; }
#rev_slider_5_1 .rs-stack {
  max-width: min(92vw, 1200px);
  text-shadow: 0 3px 10px rgba(0,0,0,.25);
}

/* Top line */
#rev_slider_5_1 .rs-top{
  font-size: clamp(12px,1.4vw,18px) !important;
  line-height: 1.3 !important;
  margin: 0 0 10px !important;
  font-weight: 600;
  color:#fff;
}

/* Headline (desktop/tablet base) */
#rev_slider_5_1_wrapper .tp-caption h1.rs-headline,
#rev_slider_5_1 .tp-caption h1.rs-headline{
  font-size: clamp(32px,4.4vw,64px) !important;
  line-height: 1.15 !important;
  margin: 6px 0 10px !important;
  letter-spacing:.2px;
  color:#fff;
}

/* Sub text */
#rev_slider_5_1 .rs-sub{
  font-size: clamp(14px,1.8vw,20px) !important;
  line-height: 1.45 !important;
  max-width: 65ch;
  color:#fff;
}

/* --- BUTTON --- */
.rs-btn-wrap{ margin-top:24px; display:block; }

/* Strong override so theme link resets can't strip bg */
#rev_slider_5_1_wrapper .tp-caption a.rs-btn,
#rev_slider_5_1 .tp-caption a.rs-btn,
#rev_slider_5_1 .rs-stack a.rs-btn,
a.rs-btn{
  display:inline-block !important;
  padding:12px 30px !important;
  background-color:#026638 !important;
  color:#fff !important;
  font-weight:600 !important;
  border-radius:6px !important;
  text-decoration:none !important;
  line-height:1.2 !important;
  position:relative !important;
  z-index:99 !important;
  font-size:16px !important;
  transition:all .3s ease !important;
}
#rev_slider_5_1 .tp-caption a.rs-btn:hover,
a.rs-btn:hover{ background-color:#01864d !important; color:#fff !important; }

/* If your theme has a generic "make slider links transparent" rule, exclude the button */
#rev_slider_5_1 .tp-caption a:not(.rs-btn){ background: inherit !important; }

/* Remove decorative pseudo-elements some themes add */
a.rs-btn::before, a.rs-btn::after{ content:none !important; }

/* --- Tablet --- */
@media (max-width: 991px){
  #rev_slider_5_1 .rs-top{ font-size:14px !important; }
  #rev_slider_5_1 .rs-headline{ font-size: clamp(22px,5.2vw,38px) !important; }
  #rev_slider_5_1 .rs-sub{ font-size:15px !important; }
  a.rs-btn{ font-size:15px !important; padding:10px 26px !important; }
}

/* --- Mobile (overrides span-level styles if any) --- */
@media (max-width: 600px){
  #rev_slider_5_1 .rs-top{ font-size:12px !important; margin-bottom:16px !important; }

  /* Force the headline size on the element and its children */
  #rev_slider_5_1_wrapper .tp-caption h1.rs-headline,
  #rev_slider_5_1_wrapper .tp-caption h1.rs-headline *,
  #rev_slider_5_1 .tp-caption h1.rs-headline,
  #rev_slider_5_1 .tp-caption h1.rs-headline *{
    font-size:20px !important;
    line-height:1.25 !important;
    letter-spacing:0 !important;
    white-space:normal !important;
  }

  #rev_slider_5_1 .rs-sub,
  #rev_slider_5_1 .rs-sub *{
    font-size:14px !important;
    line-height:1.45 !important;
  }

  a.rs-btn{ font-size:14px !important; padding:10px 24px !important; border-radius:5px !important; }
  .rs-btn-wrap{ margin-top:18px !important; }
}

/* --- Very small phones --- */
@media (max-width:480px){
  #rev_slider_5_1_wrapper .tp-caption h1.rs-headline,
  #rev_slider_5_1_wrapper .tp-caption h1.rs-headline *{
    font-size:18px !important;
  }
  a.rs-btn{ font-size:13px !important; padding:9px 20px !important; }
}


/* Testimonials */
.testimonials-section .testimonial-card{
  background:#fff;
  border-radius:12px;
  padding:24px 22px;
  box-shadow:0 6px 24px rgba(0,0,0,.06);
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.testimonials-section .testimonial-body{
  font-size:16px;
  line-height:1.6;
  color:#2b2b2b;
  margin-bottom:18px;
}
.testimonials-section .testimonial-footer img{ flex:0 0 auto; }
.testimonials-section .rating .stars{
  letter-spacing:.12em;
  font-size:14px;
}
.testimonials-section .rating .muted{ color:#d8d8d8; }
@media (max-width: 767px){
  .testimonials-section .testimonial-body{ font-size:15px; }
}

