:root{
    --brand-red:#D5383D;
    --text-dark:#333333;
    --topbar-bg:#ffffff;
    --navbar-bg:#f5f5f5;
  }
 
  body{
    font-family:'Montserrat', sans-serif;
    margin:0;
  }
 .top-bar{
  position: sticky;
  top: 0;
  z-index: 1031;
  transition: box-shadow .2s ease;
}
.top-bar.is-sticky{
  /*box-shadow: 0 4px 14px rgba(0,0,0,0.12);*/
}

.main-nav{
  position: sticky;
  top: var(--topbar-height, 0px); /* stacks directly below the top bar */
  z-index: 1030;
  transition: box-shadow .2s ease;
}
.main-nav.is-sticky{
  box-shadow: 0 4px 14px rgba(0,0,0,0.12);
}
  /* ===== TOP BAR ===== */
  .top-bar{
    background:var(--topbar-bg);
    border-bottom:1px solid #e5e5e5;
    padding:10px 30px;
    font-size:14px;
  }
  .footer-top{
      padding:0px 65px;
  }
  .top-bar .contact-info a{
    color:var(--text-dark);
    text-decoration:none;
    margin-right:24px;
    font-weight:500;
    white-space:nowrap;
  }
  .top-bar .contact-info i{
    color:var(--brand-red);
    margin-right:6px;
  }
  .lang-switch{
    display:flex;
    align-items:center;
    gap:6px;
    margin-right:20px;
  }
  .lang-switch a{
    display:flex;
    align-items:center;
    gap:4px;
    color: #d5383d !important;
    font-size: 16px !important;
    text-decoration:none;
    font-weight:600;
  }
  .lang-switch img{
    width:20px;
    height:14px;
    object-fit:cover;
    border-radius:2px;
  }
  .btn-send-case{
    background:var(--brand-red);
    color:#fff;
    border:none;
    text-transform: uppercase;
    border-radius:30px;
    padding:6px 20px;
    font-weight:700;
    font-size:13px;
    letter-spacing:.5px;
    text-decoration:none;
    white-space:nowrap;
        min-width: 232px;
      text-align:center;
         border: 2px solid var(--brand-red);
  }
  .btn-send-case:hover{
    background:#fff;
    color:var(--brand-red);
    letter-spacing: 2px;
  }
 
  /* ===== MAIN NAV ===== */
  .navtop {
      padding: 1px 20px;
  }
  .main-nav{
    background:var(--navbar-bg);
    padding: 1px 50px;
  }
  
  .logo-wrap{
    display:flex;
    align-items:center;
    gap:10px;
  }
  /* Constrain the logo image so it can never distort/overflow the nav row.
     Swap max-height to whatever fits your actual logo file. */
  .logo-wrap .logo{
    max-height:61px;
    width:auto;
    display:block;
  }
  .logo-wrap .tooth-icon{
    color:var(--text-dark);
    font-size:34px;
    line-height:1;
  }
  .logo-text{
    line-height:1.1;
  }
  .logo-text .name{
    font-size:22px;
    font-weight:700;
    color:var(--text-dark);
  }
  .logo-text .name span{
    color:var(--brand-red);
  }
  .logo-text .sub{
    font-family:'Dosis', sans-serif;
    font-size:11px;
    letter-spacing:2px;
    color:var(--text-dark);
    font-weight:600;
  }
 
  .main-nav .navbar-nav{
    flex-wrap:nowrap; /* keep all top-level items on one line above the collapse breakpoint */
  }
  .main-nav .navbar-nav .nav-link{
    color:#222222;
    font-weight:600;
    font-size:14px;
    margin:0 14px;
    padding:8px 0;
    white-space:nowrap; /* stops "News and Events" from breaking onto 3 lines */
  }
  .main-nav .navbar-nav .nav-link:hover,
  .main-nav .navbar-nav .nav-link.active,
  .main-nav .navbar-nav .show > .nav-link{
    color:var(--brand-red);
  }
 
  /* Force dropdowns to sit directly under their own toggle using plain CSS
     instead of Bootstrap's Popper auto-positioning, which can misplace the
     menu under a neighboring item in a flex/nowrap navbar. */
  .main-nav .nav-item.dropdown{
    position:relative;
  }
  .main-nav .dropdown-menu{
    position:absolute;
    top:100%;
    left:0;
    right:auto;
    margin-top:0;
    border-radius:0;
    border:none;
    border-top:3px solid var(--brand-red);
    box-shadow:0 6px 18px rgba(0,0,0,0.12);
    min-width:200px;
    padding:10px 0;
  }
  .main-nav .dropdown-item{
    color:var(--text-dark);
    font-weight:600;
    padding:10px 20px;
    font-size: 14px !important;
  }
  .main-nav .dropdown-item:hover,
  .main-nav .dropdown-item:focus{
    background:#f5f5f5;
    color:var(--brand-red);
  }
  .main-nav .dropdown-item.active,
  .main-nav .dropdown-item:active{
    background:#f5f5f5;
    color:var(--brand-red);
  }
 
 
  /* ===== FOOTER ===== */
  .site-footer{
    background: var(--navbar-bg);
    padding:60px 0 50px;
  }
  .site-footer .footer-logo img{
    max-height:100px;
    width:auto;
  }
  .site-footer .footer-about{
    color:#000;
    font-size:14px;
    line-height:1.7;
    margin-top:20px;
    max-width:340px;
  }
  .site-footer h5{
    font-size:16px;
    font-weight:700;
    color:var(--text-dark);
    margin-bottom:18px;
  }
  .site-footer ul{
    list-style:none;
    padding:0;
    margin:0;
  }
  .site-footer ul li{
    margin-bottom:12px;
  }
  .site-footer ul li a{
        color: #000;
    text-decoration: none;
    font-size: 14px;
    font-weight: 400;
  }
  .site-footer ul li a:hover{
    color:var(--brand-red);
  }
  .site-footer .contact-block p{
    color:#000;
    font-size:14px;
    margin-bottom:10px;
  }
  .site-footer .contact-block i{
    color:var(--brand-red);
    width:18px;
    margin-right:6px;
  }
  .back-to-top-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:44px;
    height:44px;
    border:1px solid var(--brand-red);
    color:var(--brand-red);
    background:transparent;
     cursor:pointer;
    transition:background .2s ease, color .2s ease;
    text-decoration:none;
    
    position: fixed; right: 25px; bottom: 85px;

  }
  .back-to-top-btn:hover{
    background:var(--brand-red);
    color:#fff;
  }
  .footer-bottom{
    background:var(--brand-red);
    color:#fff;
    text-align:center;
    font-size:14px;
    padding:16px 0;
  }
 
    /* ===== HERO / BANNER SECTION ===== */
  .ss-hero{
    position:relative;
    width:100%;
    min-height:520px;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom: -65px;
  }
 
  .ss-hero video{
    position:absolute;
    top:50%;
    left:50%;
    min-width:100%;
    min-height:100%;
    width:auto;
    height:auto;
    transform:translate(-50%, -50%);
    object-fit:cover;
    z-index:0;
  }
 
  /* Dark blue overlay on top of the video */
  .ss-hero::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    background:linear-gradient(180deg, rgba(4,10,40,0.55), rgba(4,10,40,0.75));
    z-index:1;
  }
 
  .ss-hero-content{
    position:relative;
    z-index:2;
    text-align:center;
    color:#fff;
    padding:40px 20px;
    max-width:760px;
  }
 
  .ss-hero-eyebrow{
    display:block;
    font-size:13px;
    font-weight:700;
    letter-spacing:3px;
    color:#fff;
    margin-bottom:22px;
    text-transform:uppercase;
  }
 
  .ss-hero-content h1{
    font-size:34px;
    font-weight:700;
    line-height:1.35;
    color:#fff;
    margin:0 0 32px;
  }
 .ss-hero-content h1 {
    font-weight: 700;
    font-size: 44px;
    line-height: 1.2em;
}
  .ss-btn{
    display:inline-block;
    background:var(--brand-red);
    color:#fff;
    font-size:14px;
    font-weight:700;
    letter-spacing:1px;
    text-decoration:none;
    text-transform:uppercase;
       padding:10px 20px;
    border-radius:30px;
    transition:background .2s ease;
    min-width: 232px;
    border: 2px solid var(--brand-red);
  }
 
  .ss-btn:hover{
    background:#fff;
    color:var(--brand-red);
     letter-spacing: 2px;
    
  }
 
  .features-section{
    background:linear-gradient(#2b2b2b 0 4px, #f0f0f0 15px 74%);
    padding:0 0 60px;
  }
 
  .features-carousel-wrap{
    max-width:1200px;
    margin:0 auto;
    padding:0 20px;
  }
 
  /* ===== FEATURE CARD ===== */
  .feature-card{
    background:#fff;
    text-align:center;
    padding:60px 30px 0;
    margin:0 12px 40px;
    border-bottom:4px solid var(--brand-red);
    box-shadow:0 10px 30px rgba(0,0,0,0.08);
    min-height:340px;
  }
 
  .feature-icon{
    width:80px;
    height:80px;
    padding:20px;
    border-radius:50%;
    background:#fff;
    box-shadow:0 4px 14px rgba(0,0,0,0.15);
    display:flex;
    align-items:center;
    justify-content:center;
    margin:-90px auto 22px;
    font-size:24px;
    color:var(--brand-red);
  }
 
  .feature-card h3{
    font-size:19px;
    font-weight:700;
    color:var(--text-dark);
    margin:0 0 16px;
  }
 
  .feature-card p{
    font-size:14px;
    line-height:1.8;
    color:#000;
    padding-bottom:30px;
  }
  #featuresCarousel.owl-carousel .owl-stage-outer{
  overflow-x: hidden;   /* keep horizontal clipping so slides still animate correctly */
  overflow-y: hidden;  /* let the icon circles poke above the stage without being cut */
  padding-top: 40px;    /* extra breathing room so nothing crowds the section above */
}
#featuresCarousel .item{
  padding-top: 10px;
}
.feature-icon img{
  width:58px;
  height:58px;
  object-fit:contain;
}
 
  /* ===== OWL DOTS ===== */
  .owl-theme .owl-dots .owl-dot span{
    width:10px;
    height:10px;
    margin:20px 5px;
    background:#d6d6d6;
  }
  .owl-theme .owl-dots .owl-dot.active span,
  .owl-theme .owl-dots .owl-dot:hover span{
    background:#555;
  }
  .owl-theme .owl-nav{
    display:none; /* arrows hidden to match screenshot (dots-only pagination) */
  }
 
   .about-section{
    background:var(--section-bg);
    padding:70px 0;
  }
 
  .about-wrap{
    max-width:1200px;
    margin:0 auto;
    padding:0 20px;
    display:flex;
    align-items:flex-start;
    gap:60px;
  }
 
  .about-image{
    flex:0 0 42%;
    max-width:42%;
  }
 
  .about-image img{
    width:100%;
    height:auto;
    display:block;
  }
 
  .about-content{
    flex:1;
    padding-top:6px;
  }
 
  .about-eyebrow{
    display:block;
    font-size:13px;
    font-weight:700;
    letter-spacing:2.5px;
    color:var(--brand-red);
    text-transform:uppercase;
    margin-bottom:14px;
  }
 
  .about-content h2{
    font-size:32px;
    font-weight:700;
    color:var(--text-dark);
    margin:0 0 22px;
  }
 
  .about-content h2 .dot{
    color:var(--brand-red);
  }
 
  .about-content p{
    font-size:14.5px;
    line-height:1.9;
    color:#444;
    margin:0 0 20px;
  }
 
  .about-btn{
     display:inline-block;
    background:var(--brand-red);
    color:#fff;
    font-size:14px;
    font-weight:700;
    letter-spacing:1px;
    text-decoration:none;
    text-transform:uppercase;
    padding:10px 20px;
    border-radius:30px;
    transition:background .2s ease;
    min-width: 232px;
    border: 2px solid var(--brand-red);
  }
 
  .about-btn:hover{
    background:#fff;
    color: var(--brand-red);
    letter-spacing:2px;
  }
  
  .products-section{
    background:#ffffff;
    padding:70px 0;
    text-align:center;
  }
 
  .products-section h2{
    font-size:26px;
    font-weight:700;
    color:var(--text-dark);
    margin:0 0 60px;
  }
 
  .products-section h2 .dot{
    color:var(--brand-red);
  }
 
  .products-wrap{
    max-width:1200px;
    margin:0 auto;
    padding:0 20px;
  }
 
  .products-grid{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:40px;
  }
 
  .product-item{
    flex:1 1 220px;
    max-width:240px;
  }
 
  .product-item .product-img-wrap{
    position:relative;
    margin:0 auto 24px;
  }
 
  /* Soft radial glow behind the image, hidden by default and faded in on hover */
  .product-item .product-img-wrap::before{
    content:"";
    position:absolute;
    top:50%;
    left:50%;
    width:85%;
    height:85%;
    transform:translate(-50%, -50%);
    background:radial-gradient(circle, rgba(0,0,0,0.18) 0%, rgba(0,0,0,0) 70%);
    opacity:0;
    transition:opacity .3s ease;
    z-index:0;
    pointer-events:none;
  }
 
  .product-item:hover .product-img-wrap::before{
    opacity:1;
  }
 
  .product-item img{
    position:relative;
    width:100%;
    max-width:220px;
    height:180px;
    object-fit:contain;
    display:block;
    margin:0 auto;
    background:#fff;
    z-index:1;
    transition:transform .3s ease;
  }
 
  .product-item:hover img{
    box-shadow: 0 20px 40px rgba(0,0,0,0.18);
  transform: scale(1.03);
  }
 
  .product-item span{
    display:block;
    font-size:14px;
    font-weight:700;
    letter-spacing:1px;
    color:var(--text-dark);
    text-transform:uppercase;
  }
 
  /* ===== DARK HEADLINE BANNER ===== */
  .promo-hero{
    position:relative;
    background-image: url("https://solitairesmile.com/public/assets/images/About_footer_banner.jpeg");
    background-size:cover;
    background-position:center;
    padding:60px 20px 140px;
    text-align:center;
  }
 
  .promo-hero::before{
    content:"";
    position:absolute;
    inset:0;
    background:rgba(20,20,20,0.55);
    z-index:0;
  }
 
  .promo-hero-inner{
    position:relative;
    z-index:1;
    max-width:700px;
    margin:0 auto;
  }
 
  .promo-hero h2{
    color:#fff;
    font-size:22px;
    font-weight:700;
    line-height:1.5;
    margin:0 0 28px;
  }
 
  .promo-hero-btn{
    display:inline-block;
    background:#fff;
    color:var(--brand-red);
    font-size:12px;
    font-weight:700;
    letter-spacing:1px;
    text-decoration:none;
    text-transform:uppercase;
    padding:14px 36px;
    border-radius:30px;
    transition:background .2s ease, color .2s ease;
     min-width: 232px;
    border: 2px solid var(--brand-red);
  }
 
  .promo-hero-btn:hover{
    background:var(--brand-red);
    color:#fff;
    letter-spacing:2px;
  }
 
   
  /* ===== PROMO CARDS (overlap up into the hero) ===== */
  .promo-cards-section{
    background:#fff;
    padding:0 0 60px;
  }
 
  .promo-cards-wrap{
    max-width:1150px;
    margin:0 auto;
    padding:0 20px;
  }
 
  .promo-cards-grid{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:24px;
    margin-top:-130px; /* pulls the cards up over the dark hero section */
    position:relative;
    z-index:2;
  }
 
  /* Each card is a single clickable link with the full design baked into
     one background image (matches the Divi box_three pattern) */
  .box_three{
    display:block;
    flex:1 1 300px;
    max-width:340px;
    height:370px;
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    box-shadow:0 10px 30px rgba(0,0,0,0.15);
    transition:transform .25s ease, box-shadow .25s ease;
  }
 
  .box_three:hover{
    transform:translateY(-4px);
    box-shadow:0 16px 36px rgba(0,0,0,0.22);
  }
 
  .first_box_1{
    background-image:url('https://solitairesmile.com/public/assets/images/2ndimg.jpeg');
  }
 
  .sec_box_1{
    background-image:url('https://solitairesmile.com/public/assets/images/covid_img.jpeg');
  }
 
  .third_box_1{
    background-image:url('https://solitairesmile.com/public/assets/images/1stimg.jpeg');
  }
 
  .contact-section{
    display:flex;
    flex-wrap:wrap;
    min-height:100vh;
  }
 
  /* ===== LEFT: FORM PANEL ===== */
  .contact-form-panel{
    flex:1 1 480px;
    max-width:600px;
    background:var(--dark-maroon);
    position:relative;
  }
 
  .contact-eyebrow-bar{
    background:#3e1012;
    text-align:center;
    padding:10px 0;
  }
 
  .contact-eyebrow-bar span{
    color:#fff;
    font-size:12px;
    font-weight:700;
    letter-spacing:2px;
    text-transform:uppercase;
  }
 
  .contact-form-inner{
    padding:30px 40px 50px;
    background: #3e1012;
  }
 
  .contact-form-inner h2{
    color:#fff;
    font-size:24px;
    font-weight:700;
    margin:0 0 30px;
  }
 
  .contact-form-inner h2 .dot{
    color:var(--brand-red);
  }
 
  .form-field{ 
    margin-bottom:22px; 
  } 
 
  .form-field label{
    display:block;
    color:#fff;
    font-size:12px;
    font-weight:600;
    margin-bottom:8px;
  }
 
  .form-field input,
  .form-field textarea{
    width:100%;
    background:transparent;
    border:none;
    border-bottom:1px solid rgba(255,255,255,0.35);
    color:#fff;
    font-family:'Montserrat', sans-serif;
    font-size:14px;
    padding:4px 0 8px;
    outline:none;
    box-sizing:border-box;
  }
 
  .form-field textarea{
    resize:vertical;
    min-height:40px;
  }
 
  .form-field input::placeholder,
  .form-field textarea::placeholder{
    color:rgba(255,255,255,0.4);
  }
 
  .form-field input:focus,
  .form-field textarea:focus{
    border-bottom-color:var(--brand-red);
  }
 
  .form-row-3{
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    gap:20px;
  }
 
  /* ===== CAPTCHA ===== */
  .alert-floating{
  position:fixed;
  top:24px;
  right:24px;
  z-index:2000;
  max-width:340px;
  background:#fff;
  border-left:4px solid #c0392b;
  box-shadow:0 10px 30px rgba(0,0,0,0.25);
  padding:16px 40px 16px 18px;
  font-size:13px;
  color:#333;
  animation:alertSlideIn .3s ease forwards;
}

.alert-floating.alert-success-floating{
  border-left-color:#4caf50;
}

.alert-floating ul{
  margin:0;
  padding-left:18px;
}

.alert-floating li{
  margin-bottom:4px;
}

.alert-floating li:last-child{
  margin-bottom:0;
}

.alert-close-btn{
  position:absolute;
  top:10px;
  right:12px;
  background:none;
  border:none;
  font-size:16px;
  line-height:1;
  color:#999;
  cursor:pointer;
  padding:0;
}

.alert-close-btn:hover{
  color:#333;
}

@keyframes alertSlideIn{
  from{ transform:translateX(30px); opacity:0; }
  to{ transform:translateX(0); opacity:1; }
}
 
  .captcha-field{
    margin-bottom:26px;
  
  }
   .captcha-field-row{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
}
.captcha-box{
  flex:0 0 auto; /* stays its natural size */
}
.captcha-answer{
  flex:1 1 180px; /* grows to fill remaining space, up to max-width:260px */
}
 
  .captcha-box{
    display:flex;
    align-items:center;
    gap:10px;
    background:#e9e9e9;
    padding:10px;
    max-width:260px;
    margin-bottom:10px;
  }
 
  .captcha-canvas-wrap{
    background:#fff;
    border:1px solid #ccc;
    padding:4px 8px;
  }
 
  #captchaCanvas{
    display:block;
  }
 
  .captcha-refresh-btn{
    background:none;
    border:none;
    cursor:pointer;
    color:#555;
    font-size:16px;
    padding:4px;
  }
 
  .captcha-answer{
    max-width:260px;
    background:#fff;
    border:1px solid #ccc;
    padding:8px 30px;
    font-size:13px;
    box-sizing:border-box;
    color:#333;
  }
 
  .captcha-error{
    color:#ffb3ab;
    font-size:12px;
    margin-top:8px;
    display:none;
  }
 
  .captcha-error.show{
    display:block;
  }
 
  /* ===== SUBMIT BUTTON ===== */
  .contact-submit-btn{
    display:block;
    width:100%;
    background:var(--brand-red);
    color:#fff;
    border:none;
    font-size:13px;
    font-weight:700;
    letter-spacing:1px;
    padding:15px;
    cursor:pointer;
    transition:background .2s ease;
    text-transform: uppercase;
    border-radius: 30px;
  }
 
  .contact-submit-btn:hover{
    background:#fff;
     color:var(--brand-red);
     border: 2px solid var(--brand-red);
     letter-spacing:2px;
  }
 
  /* ===== RIGHT: IMAGE PANEL ===== */
  .contact-image-panel{
    flex:1 1 400px;
    background-image:url('https://solitairesmile.com/public/assets/images/Contact-Us-bg-img.png');
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    position:relative;
    min-height:400px;
  }
 
  .contact-back-to-top{
    position:absolute;
    bottom:30px;
    right:30px;
    width:44px;
    height:44px;
    background:#fff;
    border:1px solid var(--brand-red);
    color:var(--brand-red);
    display:flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
  }
 
  .newsletter-bar{
    background:var(--brand-red);
    padding:26px 40px;
  }
 
  .newsletter-wrap{
    max-width:800px;
    margin:0 auto;
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:24px;
  }
 
  .newsletter-icon{
    flex:0 0 auto;
    font-size:34px;
    color:#fff;
  }
 
  .newsletter-text{
    flex:0 0 auto;
  }
 
  .newsletter-text h3{
    color:#fff;
    font-size:20px;
    font-weight:700;
    margin:0 0 6px;
  }
 
  .newsletter-text p{
    color:#fff;
    font-size:14px;
    font-weight:600;
    line-height:1.4;
    margin:0;
  }
 
  .newsletter-form{
    flex:1 1 380px;
    max-width:520px;
    margin-left:auto;
    display:flex;
    background:#fff;
    padding:6px;
  }
 
  .newsletter-form input[type="email"]{
    flex:1;
    border:none;
    outline:none;
    font-family:'Montserrat', sans-serif;
    font-size:14px;
    color:#333;
    padding:12px 16px;
  }
 
  .newsletter-form input[type="email"]::placeholder{
    color:#999;
  }
 
  .newsletter-form button{
    flex:0 0 auto;
    background:#1a1a1a;
    color:#fff;
    border:none;
    font-family:'Montserrat', sans-serif;
    font-size:14px;
    font-weight:600;
    padding:12px 28px;
    cursor:pointer;
    transition:background .2s ease;
    white-space:nowrap;
  }
 
  .newsletter-form button:hover{
    background:#000;
  }
 
  
 
  /* ===== SECTION 1: HERO BANNER ===== */
  .thankyou-hero{
    position:relative;
    background-image:url('https://solitairesmile.com/public/assets/images/01.png');
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    min-height:280px;
    display:flex;
    align-items:center;
    justify-content:center;
  }
 
  .thankyou-hero::before{
    content:"";
    position:absolute;
    inset:0;
   }
 
  .thankyou-hero h1{
    position:relative;
    z-index:1;
    color:#fff;
    font-size:32px;
    font-weight:800;
    letter-spacing:2px;
    text-transform:uppercase;
    margin:0;
    text-shadow:0 2px 12px rgba(0,0,0,0.25);
  }
 
  /* ===== SECTION 2: CONFIRMATION MESSAGE ===== */
  .thankyou-message{
    background:#fff;
    text-align:center;
    padding:90px 20px;
  }
 
  .thankyou-message .msg-icon{
    font-size:52px;
    color:var(--brand-red);
    margin-bottom:24px;
  }
 
  .thankyou-message h2{
    font-size:30px;
    font-weight:700;
    color:var(--text-dark);
    margin:0 0 18px;
  }
 
  .thankyou-message h2 .dot{
    color:var(--brand-red);
  }
 
  .thankyou-message p{
    font-size:15px;
    color:#555;
    max-width:520px;
    margin:0 auto 34px;
    line-height:1.7;
  }
 
  .thankyou-btn{
    display:inline-block;
    background:var(--brand-red);
    color:#fff;
    font-size:13px;
    font-weight:700;
    letter-spacing:1px;
    text-decoration:none;
    text-transform:uppercase;
    padding:16px 44px;
    border-radius:30px;
    transition:background .2s ease;
  }
 
  .thankyou-btn:hover{
    background:#a53225;
    color:#fff;
  }
 
 
 
  /* Open dropdown on hover (desktop / pointer devices), in addition to click */
    @media (max-width: 991px){
         .newsletter-wrap{
      justify-content:center;
      text-align:center;
    }
    .newsletter-text{
      text-align:center;
    }
    .newsletter-form{
      margin-left:0;
      flex:1 1 100%;
      max-width:100%;
    }
         .contact-section{
      flex-direction:column;
    }
    .contact-form-panel{
      max-width:100%;
    }
    .contact-image-panel{
      min-height:260px;
    }
    .form-row-3{
      grid-template-columns:1fr;
      gap:22px;
    }
    .about-wrap{
      flex-direction:column;
      gap:36px;
    }
    .about-image{
      flex:1 1 100%;
      max-width:100%;
    }
    .about-content h2{
      font-size:28px;
    }
  }
  @media (hover:hover) and (min-width: 992px){
    .main-nav .nav-item.dropdown:hover > .dropdown-menu{
      display:block;
    }
    .main-nav .nav-item.dropdown:hover > .nav-link{
      color:var(--brand-red);
    }
  }
 
  .navbar-toggler{
    border:none;
    padding:4px 8px;
  }
  .navbar-toggler:focus{
    box-shadow:none;
  }
 
  /* Mobile top bar adjustments */
  @media (max-width: 767px){
       .box_three{
      max-width:100%;
      width:100%;
      height:320px;
    }
      .promo-hero{
      padding:50px 20px 200px;
    }
    .promo-hero h2{
      font-size:18px;
    }
    .promo-cards-grid{
      margin-top:-170px;
      flex-direction:column;
      align-items:center;
    }
      
      .main-nav {
        padding: 14px 0px;
      }
      .top-bar {
             padding: 0px 30px;
      }
    .top-bar .contact-info{
      display:flex;
       gap: 40px;
      margin-bottom:10px;
    }
    .top-bar .contact-info a{
      margin-right:0;
      font-size:13px;
    }
    .top-bar-row{
      flex-wrap:wrap;
      row-gap:10px;
    }
    .top-bar .right-controls{
      width:100%;
      justify-content:space-between;
    }
    .btn-send-case{
      padding:8px 18px;
      font-size:12px;
    }
    .logo-text .name{
      font-size:18px;
    }
    .logo-wrap .tooth-icon{
      font-size:26px;
    }
    
    /*footer*/
    .site-footer{
      padding:40px 0 30px;
      text-align:left;
    }
    .site-footer .col-footer{
      margin-bottom:30px;
    }
    .site-footer .footer-about{
      max-width:100%;
    }
    /*end footer*/
    
     .ss-hero{
      min-height:420px;
    }
    .ss-hero-content h1{
      font-size:24px;
      margin-bottom:26px;
    }
    .ss-hero-eyebrow{
      font-size:11px;
      letter-spacing:2px;
      margin-bottom:16px;
    }
    .ss-btn{
      padding:14px 34px;
      font-size:13px;
    }
    .products-section{
      padding:50px 0;
    }
    .products-section h2{
      font-size:22px;
      margin-bottom:40px;
    }
    .products-grid{
      gap:30px 20px;
    }
    .product-item{
      flex:1 1 42%;
      max-width:45%;
    }
    .product-item img{
      height:130px;
    }
     .promo-hero{
      padding:50px 20px 200px;
    }
    .promo-hero h2{
      font-size:18px;
    }
    .promo-cards-grid{
      margin-top:-170px;
      flex-direction:column;
      align-items:center;
    }
    .promo-card{
      max-width:100%;
      width:100%;
    }
  }
 
  @media (min-width: 768px) and (max-width: 991px){
    .main-nav .navbar-nav .nav-link{
      margin:0 8px;
      font-size:14px;
    }
  }
   /* ===== RESPONSIVE ===== */
  @media (max-width: 600px){
    .thankyou-hero{
      min-height:200px;
    }
    .thankyou-hero h1{
      font-size:22px;
      letter-spacing:1px;
    }
    .thankyou-message{
      padding:60px 20px;
    }
    .thankyou-message h2{
      font-size:24px;
    }
    .thankyou-btn{
      width:100%;
      text-align:center;
      padding:16px 20px;
    }
  }
  
  @media (max-width: 576px){
    .about-section{
      padding:50px 0;
    }
    .about-content h2{
      font-size:24px;
    }
    .about-btn{
      width:100%;
      text-align:center;
      padding:16px 20px;
    }
  } 
  @media (max-width: 500px){
    .newsletter-bar{
      padding:24px 20px;
    }
    .newsletter-form{
      flex-direction:column;
      gap:8px;
      background:transparent;
      padding:0;
    }
    .newsletter-form input[type="email"]{
      background:#fff;
      width:100%;
      box-sizing:border-box;
    }
    .newsletter-form button{
      width:100%;
    }
  }
   @media (max-width: 480px){
        .alert-floating{
    top:16px;
    right:16px;
    left:16px;
    max-width:none;
  }
    .contact-form-inner{
      padding:24px 22px 40px;
    }
    .ss-hero{
      min-height:360px;
    }
    .ss-hero-content h1{
      font-size:20px;
    }
     .product-item{
      flex:1 1 100%;
      max-width:260px;
    }
  }