:root{
  --bg:#000;
  --paper:#fff;
  --accent-red:#c8102e;
  --accent-yellow:#f0c02b;
  --muted:#9a9a9a;
  --max-width:1100px;
  --radius:14px;
}

*{box-sizing:border-box}
html,body{height:100%; margin:0; padding:0;}
body{
  margin:0;
  font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  background:var(--bg);
  color:var(--paper);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  line-height:1.6;
}

.container{max-width:var(--max-width); margin:0 auto; padding:2rem;}

.site-header{
  background:linear-gradient(180deg,#000 0%, #111 100%); 
  border-bottom:1px solid rgba(255,255,255,0.04);
  position:sticky;
  top:0;
  z-index:1000;
}
.header-inner{display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem 2rem;}
.brand{
  font-family:'Cinzel Decorative', serif; 
  letter-spacing:1px; 
  font-size:1.6rem; 
  color:var(--paper); 
  text-decoration:none;
  transition: color 0.3s ease;
}
.brand:hover{color:var(--accent-yellow);}
.main-nav{display:flex; gap:0.5rem; align-items:center;}
.main-nav a{
  color:var(--paper); 
  text-decoration:none; 
  padding:0.5rem 0.75rem;
  transition: all 0.3s ease;
  border-radius:6px;
}
.main-nav a:hover{background:rgba(255,255,255,0.05);}
.main-nav a.active{color:var(--accent-yellow);}
.main-nav a.cta{
  background:var(--accent-red); 
  padding:.5rem 1rem; 
  border-radius:8px; 
  color:#fff;
  font-weight:600;
}
.main-nav a.cta:hover{
  background:linear-gradient(135deg, var(--accent-red), #a00d26);
  transform:translateY(-1px);
  box-shadow:0 4px 12px rgba(200,16,46,0.3);
}

.hero{
  position:relative; 
  min-height:60vh; 
  display:flex; 
  align-items:center; 
  justify-content:center; 
  text-align:center; 
  padding:4rem 2rem; 
  background-image: url('/assets/hero-bg.jpg');
  background-size:cover; 
  background-position:center;
  overflow:hidden;
}
.hero::before{
  content:'';
  position:absolute;
  inset:0;
  background:radial-gradient(ellipse at center, transparent 0%, rgba(0,0,0,0.4) 100%);
  pointer-events:none;
}
.hero .overlay{
  position:absolute; 
  inset:0; 
  background:linear-gradient(180deg, rgba(0,0,0,.4), rgba(0,0,0,.7));
}
.hero-inner{position:relative; z-index:2; color:var(--paper); max-width:900px;}
.headline{
  font-family:'Cinzel Decorative', serif; 
  font-size:3.5rem; 
  margin:0 0 1rem; 
  color:var(--paper);
  text-shadow:2px 2px 8px rgba(0,0,0,0.8);
  letter-spacing:2px;
  max-width:100%;
  word-wrap:break-word;
}
.subtitle-red{
  max-width:800px;
  margin:0 auto 1rem;
  color:var(--accent-red);
  font-size:1.25rem;
  font-weight:700;
  letter-spacing:1px;
  text-shadow:2px 2px 6px rgba(0,0,0,0.9);
}
.lead{
  max-width:700px; 
  margin:0 auto 2rem; 
  color:rgba(255,255,255,0.95);
  font-size:1.15rem;
  line-height:1.8;
}
.hero-cta{display:flex; gap:1rem; justify-content:center; flex-wrap:wrap;}
.btn-primary{
  background:var(--accent-red); 
  color:#fff; 
  padding:.85rem 1.5rem; 
  border-radius:12px; 
  text-decoration:none; 
  display:inline-block; 
  box-shadow:0 6px 18px rgba(200,16,46,.25);
  font-weight:600;
  transition:all 0.3s ease;
  border:none;
  cursor:pointer;
  font-size:1rem;
}
.btn-primary:hover{
  background:linear-gradient(135deg, var(--accent-red), #a00d26);
  transform:translateY(-2px);
  box-shadow:0 8px 24px rgba(200,16,46,.4);
}
.btn-ghost{
  border:2px solid rgba(255,255,255,0.2); 
  color:var(--paper); 
  padding:.75rem 1.25rem; 
  text-decoration:none; 
  border-radius:12px;
  transition:all 0.3s ease;
  display:inline-block;
}
.btn-ghost:hover{
  background:rgba(255,255,255,0.1);
  border-color:rgba(255,255,255,0.4);
}

.guarantee-ribbon{
  position:fixed; 
  top:70px; 
  left:50%; 
  transform:translateX(-50%); 
  background:linear-gradient(90deg,var(--accent-yellow), var(--accent-red)); 
  color:#000; 
  padding:.6rem 1.25rem; 
  border-radius:25px; 
  font-weight:700; 
  z-index:9999; 
  box-shadow:0 6px 18px rgba(0,0,0,.5);
  font-size:0.9rem;
  text-align:center;
}

h2{
  font-family:'Cinzel Decorative', serif;
  font-size:2rem;
  margin:2rem 0 1rem;
  color:var(--accent-yellow);
}

h3{
  font-family:'Cinzel Decorative', serif;
  font-size:1.3rem;
  margin:0 0 0.5rem;
}

.services{margin-top:3rem;}
.cards{
  display:grid; 
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); 
  gap:1.5rem; 
  margin-top:1.5rem;
}
.card{
  background:rgba(255,255,255,0.03); 
  padding:1.5rem; 
  border-radius:12px; 
  border:1px solid rgba(255,255,255,0.06);
  transition:all 0.3s ease;
}
.card:hover{
  background:rgba(255,255,255,0.06);
  border-color:rgba(240,192,43,0.3);
  transform:translateY(-4px);
  box-shadow:0 8px 24px rgba(0,0,0,0.3);
}

.testimonials-videos{margin-top:3rem;}
.video-grid{
  display:flex;
  gap:1.5rem; 
  margin-top:1.5rem;
  justify-content:center;
  flex-wrap:wrap;
}
.video-clip{
  width:100%;
  max-width:380px;
  border-radius:12px; 
  background:#000; 
  border:1px solid rgba(255,255,255,0.08);
  box-shadow:0 4px 16px rgba(0,0,0,0.4);
}
.video-note{
  margin-top:1rem;
  font-size:0.9rem;
  color:var(--muted);
  text-align:center;
}

.process{margin-top:3rem;}
.process-list{
  list-style:decimal; 
  padding-left:2rem;
  font-size:1.1rem;
  line-height:2;
}
.process-list li{margin:0.5rem 0;}

.cta-banner{
  background:linear-gradient(90deg, rgba(200,10,20,0.12), rgba(240,192,43,0.08)); 
  padding:3rem 2rem; 
  margin-top:3rem; 
  border-radius:16px; 
  text-align:center;
  border:1px solid rgba(240,192,43,0.15);
}
.cta-banner h3{
  font-size:1.8rem;
  margin-bottom:1.5rem;
  color:var(--paper);
}

.testimonials-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(300px, 1fr));
  gap:1.5rem;
  margin-top:2rem;
}

.testimonial-card{
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(255,255,255,0.1);
  border-radius:14px;
  padding:1.5rem;
  transition:transform 0.2s, box-shadow 0.2s;
}

.testimonial-card:hover{
  transform:translateY(-3px);
  box-shadow:0 8px 20px rgba(200,16,46,0.2);
}

.testimonial-header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:1rem;
}

.stars{
  font-size:1.1rem;
  letter-spacing:2px;
}

.verified-badge{
  background:rgba(76,175,80,0.2);
  color:#4caf50;
  font-size:0.8rem;
  padding:0.3rem 0.6rem;
  border-radius:20px;
  font-weight:600;
}

.testimonial-text{
  line-height:1.6;
  margin-bottom:1rem;
  color:rgba(255,255,255,0.9);
  font-style:italic;
}

.testimonial-footer{
  font-size:0.9rem;
  color:rgba(255,255,255,0.6);
  border-top:1px solid rgba(255,255,255,0.1);
  padding-top:0.75rem;
}

.testimonial-footer strong{
  color:var(--accent-gold);
}

.testimonial-footer .date{
  color:rgba(255,255,255,0.5);
}

.star-rating{
  display:flex;
  gap:0.5rem;
  font-size:2rem;
  margin:1rem 0;
  direction:ltr;
}

.star-rating .star{
  cursor:pointer;
  color:rgba(255,255,255,0.2);
  transition:color 0.2s;
  user-select:none;
}

.star-rating .star.active{
  color:var(--accent-gold);
}

.rating-label{
  display:block;
  margin-bottom:0.5rem;
  font-weight:600;
  color:var(--accent-gold);
}

.site-footer{
  position:relative;
  border-top:2px solid rgba(200,16,46,0.3); 
  padding:5rem 0 3rem; 
  margin-top:4rem;
  background-image:url('/assets/footer-bg.jpg');
  background-size:cover;
  background-position:center;
  overflow:hidden;
}
.site-footer::before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,0.65), rgba(0,0,0,0.55));
  z-index:1;
}
.footer-inner{
  position:relative;
  z-index:2;
  display:flex; 
  justify-content:space-between; 
  align-items:flex-start;
  gap:3rem;
  padding:0 2rem;
  max-width:1100px;
  margin:0 auto;
}
.footer-left{
  flex:1;
}
.footer-left strong{
  font-family:'Cinzel Decorative', serif;
  font-size:1.6rem;
  display:block;
  margin-bottom:1rem;
  color:var(--accent-yellow);
  text-shadow:2px 2px 4px rgba(0,0,0,0.8);
}
.footer-left p{
  font-size:1.05rem;
  line-height:1.8;
  color:rgba(255,255,255,0.9);
}
.footer-right{
  flex:1;
}
.footer-right p{
  margin:0.75rem 0;
  font-size:1.05rem;
}
.footer-right a{
  color:var(--accent-yellow);
  text-decoration:none;
  transition:color 0.3s ease;
  font-weight:600;
}
.footer-right a:hover{
  color:var(--paper);
  text-decoration:underline;
}

.whatsapp-float{
  position:fixed; 
  right:20px; 
  bottom:20px; 
  background:linear-gradient(135deg,#25D366,#128C7E);
  color:#fff; 
  padding:.75rem 1rem; 
  border-radius:50px; 
  display:flex; 
  gap:.65rem; 
  align-items:center; 
  text-decoration:none; 
  z-index:10000; 
  box-shadow:0 6px 24px rgba(37,211,102,.4);
  transition:all 0.3s ease;
}
.whatsapp-float:hover{
  transform:translateY(-3px);
  box-shadow:0 8px 32px rgba(37,211,102,.5);
}
.whatsapp-float .wa-label{font-weight:700; font-size:0.95rem;}

.faq-list{margin-top:2rem; max-width:800px;}
.faq-list details{
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.06);
  border-radius:12px;
  margin-bottom:1rem;
  overflow:hidden;
  transition:all 0.3s ease;
}
.faq-list details:hover{
  border-color:rgba(240,192,43,0.2);
}
.faq-list details[open]{
  background:rgba(255,255,255,0.05);
  border-color:rgba(240,192,43,0.3);
}
.faq-list summary{
  padding:1.25rem 1.5rem;
  cursor:pointer;
  font-weight:600;
  font-size:1.1rem;
  list-style:none;
  transition:all 0.3s ease;
  color:var(--accent-yellow);
}
.faq-list summary:hover{
  background:rgba(255,255,255,0.05);
}
.faq-list summary::-webkit-details-marker{display:none;}
.faq-list summary::before{
  content:'▸';
  display:inline-block;
  margin-right:0.75rem;
  transition:transform 0.3s ease;
}
.faq-list details[open] summary::before{
  transform:rotate(90deg);
}
.faq-body{
  padding:0 1.5rem 1.5rem 3rem;
  color:rgba(255,255,255,0.85);
  line-height:1.7;
}

.google-reviews, .local-testimonials, .submit-testimonial{
  margin-top:3rem;
}

.testimonial-form, .contact-form{
  max-width:600px;
  margin-top:1.5rem;
}
.testimonial-form label, .contact-form label{
  display:block;
  margin-bottom:1.25rem;
  font-weight:500;
}
.testimonial-form input, .testimonial-form textarea,
.contact-form input, .contact-form textarea{
  width:100%;
  padding:0.85rem;
  margin-top:0.5rem;
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(255,255,255,0.1);
  border-radius:8px;
  color:var(--paper);
  font-family:inherit;
  font-size:1rem;
  transition:all 0.3s ease;
}
.testimonial-form input:focus, .testimonial-form textarea:focus,
.contact-form input:focus, .contact-form textarea:focus{
  outline:none;
  border-color:var(--accent-yellow);
  background:rgba(255,255,255,0.08);
}
.testimonial-form textarea, .contact-form textarea{
  resize:vertical;
  min-height:120px;
}

.contact-page{max-width:1000px; margin:0 auto; padding:2rem;}
.contact-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:3rem;
  margin-top:2rem;
}
.contact-info{
  background:rgba(255,255,255,0.03);
  padding:2rem;
  border-radius:12px;
  border:1px solid rgba(255,255,255,0.06);
}
.contact-info h2{margin-top:0; font-size:1.5rem;}
.contact-info p{margin:1rem 0;}
.contact-info a{
  color:var(--accent-yellow);
  text-decoration:none;
  transition:color 0.3s ease;
}
.contact-info a:hover{color:var(--paper);}

.muted{color:var(--muted);}
.small{font-size:.9rem;}

.no-js-note{
  background:rgba(200,16,46,0.2);
  padding:1rem;
  text-align:center;
  border:1px solid rgba(200,16,46,0.4);
  border-radius:8px;
  margin:2rem;
}

@media (max-width:900px){
  .container{padding:1.5rem;}
  .header-inner{padding:1rem; flex-direction:column; align-items:flex-start;}
  .main-nav{margin-top:0.5rem; flex-wrap:wrap; gap:0.5rem;}
  .headline{
    font-size:2.5rem;
    letter-spacing:1px;
    word-wrap:break-word;
  }
  .hero{min-height:50vh; padding:3rem 1.5rem;}
  .guarantee-ribbon{
    top:60px;
    font-size:0.8rem;
    padding:0.5rem 1rem;
  }
  .footer-inner{flex-direction:column; padding:0 1.5rem;}
  .contact-grid{grid-template-columns:1fr; gap:2rem;}
  .cards{grid-template-columns:1fr;}
  .video-grid{grid-template-columns:1fr;}
  
  .section-title-red{
    font-size:1.6rem;
    letter-spacing:1px;
    line-height:1.3;
  }
  
  h2{
    font-size:1.6rem;
    line-height:1.3;
  }
}

@media (max-width:768px){
  .site-title, .brand{
    font-size:1.3rem;
    letter-spacing:1px;
  }
  
  .main-nav a{
    font-size:0.9rem;
    padding:0.4rem 0.8rem;
  }
  
  .headline{
    font-size:2rem;
    letter-spacing:0.5px;
  }
  
  .subtitle-red{
    font-size:1.1rem;
    line-height:1.4;
  }
  
  .lead{
    font-size:1rem;
    line-height:1.6;
  }
  
  .btn-primary, .btn-outline-gold{
    font-size:0.95rem;
    padding:0.75rem 1.2rem;
  }
}

@media (max-width:600px){
  *{
    word-wrap:break-word;
    overflow-wrap:break-word;
  }
  
  body{
    overflow-x:hidden;
  }
  
  .container{
    padding:1rem;
    max-width:100%;
  }
  
  .site-header{
    padding:0.75rem 0;
  }
  
  .site-title, .brand{
    font-size:1.1rem;
    letter-spacing:0.5px;
    line-height:1.3;
    max-width:200px;
  }
  
  .header-inner{
    padding:0.75rem;
    gap:0.75rem;
  }
  
  .main-nav{
    gap:0.4rem;
    width:100%;
  }
  
  .main-nav a{
    font-size:0.85rem;
    padding:0.4rem 0.7rem;
  }
  
  .main-nav a.cta{
    font-size:0.85rem;
    padding:0.5rem 1rem;
  }
  
  .hero{
    min-height:auto;
    padding:2.5rem 1rem;
  }
  
  .headline{
    font-size:1.4rem;
    letter-spacing:0px;
    line-height:1.2;
    margin-bottom:0.75rem;
    word-break:break-word;
    hyphens:auto;
    max-width:100%;
  }
  
  .subtitle-red{
    font-size:0.95rem;
    letter-spacing:0.5px;
    line-height:1.4;
    max-width:100%;
  }
  
  .lead{
    font-size:0.95rem;
    line-height:1.6;
    margin-bottom:1.5rem;
  }
  
  .hero-cta{
    flex-direction:column;
    align-items:stretch;
    gap:0.75rem;
  }
  
  .btn-primary, .btn-outline-gold, .btn-ghost{
    text-align:center;
    font-size:0.9rem;
    padding:0.75rem 1rem;
    white-space:normal;
    line-height:1.3;
  }
  
  .guarantee-ribbon{
    position:relative;
    top:0;
    left:0;
    transform:none;
    margin:1rem auto;
    width:fit-content;
    max-width:90%;
    font-size:0.75rem;
  }
  
  .section-dark{
    padding:2rem 1rem;
    margin-top:2rem;
  }
  
  .section-title-red{
    font-size:1.3rem;
    letter-spacing:0.5px;
    line-height:1.3;
    margin-bottom:1.5rem;
  }
  
  .content-centered .intro-text{
    font-size:0.95rem;
    line-height:1.7;
    margin-bottom:1.5rem;
  }
  
  h2{
    font-size:1.4rem;
    line-height:1.3;
    margin:1.5rem 0 1rem;
  }
  
  h3{
    font-size:1.1rem;
    line-height:1.3;
  }
  
  .card{
    padding:1.25rem;
  }
  
  .card h3{
    font-size:1.1rem;
  }
}

@media (max-width:400px){
  .site-title, .brand{
    font-size:0.95rem;
    max-width:180px;
  }
  
  .main-nav a{
    font-size:0.75rem;
    padding:0.35rem 0.6rem;
  }
  
  .headline{
    font-size:1.2rem;
    word-break:break-word;
    hyphens:auto;
  }
  
  .subtitle-red{
    font-size:0.85rem;
  }
  
  .lead{
    font-size:0.85rem;
  }
  
  .btn-primary, .btn-outline-gold{
    font-size:0.85rem;
    padding:0.7rem 0.9rem;
  }
  
  .section-title-red{
    font-size:1.1rem;
  }
  
  .content-centered .intro-text{
    font-size:0.85rem;
    line-height:1.6;
  }
}

.btn-outline-gold{
  border:2px solid var(--accent-yellow); 
  color:var(--accent-yellow); 
  padding:.75rem 1.25rem; 
  text-decoration:none; 
  border-radius:12px;
  transition:all 0.3s ease;
  display:inline-block;
  font-weight:600;
  background:transparent;
}
.btn-outline-gold:hover{
  background:var(--accent-yellow);
  color:#000;
  transform:translateY(-2px);
  box-shadow:0 6px 18px rgba(240,192,43,.4);
}

.phone-float{
  position:fixed; 
  left:20px; 
  bottom:20px; 
  background:var(--accent-red);
  color:#fff; 
  padding:.75rem 1rem; 
  border-radius:50px; 
  display:flex; 
  gap:.65rem; 
  align-items:center; 
  text-decoration:none; 
  z-index:10000; 
  box-shadow:0 6px 24px rgba(200,16,46,.5);
  transition:all 0.3s ease;
}
.phone-float:hover{
  transform:translateY(-3px);
  box-shadow:0 8px 32px rgba(200,16,46,.6);
}
.phone-float .phone-label{font-weight:700; font-size:0.95rem;}

.section-dark{
  background:rgba(10,10,10,0.6);
  padding:3rem 2rem;
  margin-top:3rem;
  border-top:1px solid rgba(255,255,255,0.08);
}

.section-title-red{
  font-family:'Cinzel Decorative', serif;
  font-size:2rem;
  margin:0 0 2rem;
  color:var(--accent-red);
  text-align:center;
  letter-spacing:2px;
  text-transform:uppercase;
}

.two-columns{
  display:grid;
  grid-template-columns:1.2fr 1fr;
  gap:3rem;
  margin-top:2rem;
}

.content-column h3{
  color:var(--accent-yellow);
  margin-top:2rem;
  margin-bottom:1rem;
}

.benefit-list{
  list-style:none;
  padding:0;
  margin:1.5rem 0;
}

.benefit-list li{
  padding:0.75rem 0;
  padding-left:2rem;
  position:relative;
  line-height:1.8;
}

.benefit-list li::before{
  content:'✓';
  position:absolute;
  left:0;
  color:var(--accent-yellow);
  font-weight:bold;
  font-size:1.2rem;
}

.testimonial-highlight{
  background:rgba(255,255,255,0.03);
  padding:2rem;
  border-radius:12px;
  border:1px solid rgba(240,192,43,0.2);
}

.testimonial-highlight h3{
  margin-top:0;
  color:var(--accent-yellow);
}

/* Google Reviews Widget */
.google-reviews-widget{
  background:rgba(255,255,255,0.05);
  border:2px solid rgba(240,192,43,0.3);
  border-radius:14px;
  padding:2rem;
  margin:3rem auto;
  max-width:500px;
  text-align:center;
}

.google-reviews-badge{
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:1rem;
  font-size:1.1rem;
}

.google-rating{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:1rem;
  margin:1rem 0;
}

.rating-stars{
  font-size:1.5rem;
  letter-spacing:2px;
}

.rating-number{
  font-size:2.5rem;
  font-weight:700;
  color:var(--accent-yellow);
}

.google-review-count{
  font-size:0.95rem;
  color:rgba(255,255,255,0.7);
}

/* Google Reviews List */
.google-reviews-list{
  margin:3rem 0;
}

.google-review-item{
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(240,192,43,0.2);
  border-radius:12px;
  padding:1.5rem;
  margin-bottom:1.5rem;
  transition:all 0.3s ease;
}

.google-review-item:hover{
  background:rgba(255,255,255,0.05);
  border-color:rgba(240,192,43,0.4);
  transform:translateY(-2px);
}

.google-review-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:1rem;
}

.google-review-author{
  display:flex;
  align-items:center;
  gap:0.75rem;
}

.google-review-author-photo{
  width:40px;
  height:40px;
  border-radius:50%;
  object-fit:cover;
  border:2px solid rgba(240,192,43,0.3);
}

.google-review-author-name{
  font-weight:600;
  color:var(--accent-yellow);
}

.google-review-rating{
  color:gold;
  font-size:1.1rem;
}

.google-review-text{
  line-height:1.7;
  color:rgba(255,255,255,0.9);
  font-style:italic;
  margin-bottom:0.75rem;
}

.google-review-time{
  font-size:0.85rem;
  color:rgba(255,255,255,0.5);
}

.testimonial-card{
  background:rgba(0,0,0,0.4);
  padding:1.5rem;
  border-radius:10px;
  margin-bottom:1.5rem;
  border-left:3px solid var(--accent-yellow);
}

.testimonial-text{
  font-style:italic;
  line-height:1.7;
  margin-bottom:1rem;
  color:rgba(255,255,255,0.9);
}

.testimonial-author{
  color:var(--accent-yellow);
  font-weight:600;
  margin-bottom:0.5rem;
}

.rating{
  color:var(--accent-yellow);
  font-size:1.1rem;
}

.card-link{
  display:inline-block;
  margin-top:0.75rem;
  color:var(--accent-yellow);
  text-decoration:none;
  font-weight:600;
  transition:all 0.3s ease;
}

.card-link:hover{
  color:var(--paper);
  transform:translateX(5px);
}

.about-section{
  background:linear-gradient(135deg, rgba(200,16,46,0.08), rgba(240,192,43,0.05));
  padding:4rem 2rem;
  margin-top:3rem;
  border-top:2px solid rgba(240,192,43,0.3);
  border-bottom:2px solid rgba(240,192,43,0.3);
}

.about-content{
  max-width:900px;
  margin:0 auto;
}

.intro-text{
  font-size:1.2rem;
  line-height:1.8;
  margin-bottom:1.5rem;
  color:rgba(255,255,255,0.95);
}

.content-centered{
  max-width:900px;
  margin:0 auto;
  text-align:center;
}

.content-centered .intro-text{
  font-size:1.1rem;
  line-height:1.9;
  margin-bottom:2rem;
  color:rgba(255,255,255,0.9);
}

.content-centered .intro-text strong{
  color:var(--accent-yellow);
  font-weight:600;
}

.guarantee-box{
  background:rgba(0,0,0,0.5);
  border:2px solid var(--accent-yellow);
  border-radius:12px;
  padding:2rem;
  margin-top:2rem;
  text-align:center;
}

.guarantee-box h3{
  color:var(--accent-yellow);
  margin-top:0;
}

@media (max-width:900px){
  .two-columns{
    grid-template-columns:1fr;
    gap:2rem;
  }
  
  .phone-float{
    left:10px;
    bottom:90px;
    padding:0.6rem 0.8rem;
  }
  
  .phone-float .phone-label{
    display:none;
  }
  
  .whatsapp-float{
    right:10px;
    bottom:10px;
  }
}

.services-page{
  min-height:100vh;
}

.services-hero{
  background:linear-gradient(135deg, rgba(200,16,46,0.85), rgba(139,0,0,0.9));
  padding:4rem 2rem 3rem;
  text-align:center;
  border-bottom:3px solid var(--accent-yellow);
}

.services-hero h1{
  font-size:3rem;
  margin:1.5rem 0 1rem;
  letter-spacing:2px;
}

.services-subtitle{
  font-size:1.3rem;
  color:rgba(255,255,255,0.9);
  margin-top:1rem;
}

.back-link{
  display:inline-block;
  color:var(--accent-yellow);
  text-decoration:none;
  font-size:1rem;
  font-weight:600;
  transition:all 0.3s ease;
  margin-bottom:1rem;
}

.back-link:hover{
  color:var(--paper);
  transform:translateX(-5px);
}

.services-intro{
  padding:3rem 2rem;
  text-align:center;
}

.services-intro h2{
  color:var(--accent-red);
  font-size:2rem;
  margin-bottom:1.5rem;
  letter-spacing:1px;
}

.services-grid-section{
  padding:2rem 0 4rem;
}

.services-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));
  gap:2rem;
  margin-top:2rem;
}

.service-card{
  background:rgba(0,0,0,0.6);
  border:1px solid rgba(255,255,255,0.1);
  border-radius:14px;
  padding:2rem 1.5rem;
  text-align:center;
  transition:all 0.3s ease;
  display:flex;
  flex-direction:column;
  gap:1rem;
}

.service-card:hover{
  background:rgba(20,20,20,0.8);
  border-color:var(--accent-yellow);
  transform:translateY(-5px);
  box-shadow:0 12px 32px rgba(240,192,43,0.2);
}

.service-card.featured{
  border:2px solid var(--accent-yellow);
  background:rgba(240,192,43,0.05);
}

.service-icon{
  font-size:3rem;
  margin:0 auto;
  width:70px;
  height:70px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,0.05);
  border-radius:50%;
}

.service-card h3{
  font-size:1.4rem;
  margin:0.5rem 0;
  color:var(--paper);
}

.service-description{
  font-size:1rem;
  line-height:1.6;
  color:rgba(255,255,255,0.85);
  flex:1;
  margin:0;
}

.service-duration{
  font-size:0.95rem;
  color:var(--accent-yellow);
  font-weight:600;
  margin:0.5rem 0;
}

.btn-whatsapp{
  display:block;
  background:var(--accent-yellow);
  color:#000;
  padding:0.9rem 1.5rem;
  border-radius:50px;
  font-weight:700;
  font-size:0.95rem;
  text-decoration:none;
  text-align:center;
  transition:all 0.3s ease;
  border:2px solid var(--accent-yellow);
  letter-spacing:0.5px;
}

.btn-whatsapp:hover{
  background:#000;
  color:var(--accent-yellow);
  transform:scale(1.05);
  box-shadow:0 8px 20px rgba(240,192,43,0.4);
}

.service-rating{
  font-size:0.85rem;
  color:rgba(255,255,255,0.7);
  margin-top:0.5rem;
}

/* Explore More Services Section */
.explore-more-section{
  margin:5rem auto 4rem;
  text-align:center;
}

.mystical-divider{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:1rem;
  margin:3rem 0;
  opacity:0.8;
}

.divider-line{
  height:1px;
  width:80px;
  background:linear-gradient(90deg, transparent, rgba(240,192,43,0.5), transparent);
}

.divider-star{
  font-size:1.5rem;
  animation:twinkle 3s ease-in-out infinite;
}

@keyframes twinkle{
  0%, 100%{ opacity:1; transform:scale(1); }
  50%{ opacity:0.5; transform:scale(1.2); }
}

.explore-more-content{
  padding:3rem 2rem;
  background:radial-gradient(circle at center, rgba(200,16,46,0.1), transparent);
  border-radius:20px;
  position:relative;
}

.explore-title{
  font-family:'Cinzel Decorative', serif;
  font-size:2rem;
  color:var(--accent-yellow);
  margin:0 0 1rem;
  letter-spacing:2px;
  text-shadow:0 0 20px rgba(240,192,43,0.3);
}

.explore-subtitle{
  font-size:1.1rem;
  color:rgba(255,255,255,0.9);
  margin:0 auto 2.5rem;
  max-width:600px;
  line-height:1.7;
}

.btn-explore-more{
  display:inline-flex;
  align-items:center;
  gap:1rem;
  padding:1.2rem 3rem;
  background:linear-gradient(135deg, var(--accent-red), #a00d26, var(--accent-red));
  background-size:200% 100%;
  color:#fff;
  font-size:1.1rem;
  font-weight:700;
  letter-spacing:1.5px;
  text-decoration:none;
  border-radius:50px;
  border:2px solid var(--accent-yellow);
  box-shadow:0 8px 30px rgba(200,16,46,0.4), 0 0 40px rgba(240,192,43,0.2);
  transition:all 0.4s ease;
  position:relative;
  overflow:hidden;
}

.btn-explore-more::before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, transparent, rgba(255,255,255,0.1), transparent);
  transform:translateX(-100%);
  transition:transform 0.6s ease;
}

.btn-explore-more:hover::before{
  transform:translateX(100%);
}

.btn-explore-more:hover{
  background-position:100% 0;
  transform:translateY(-5px) scale(1.05);
  box-shadow:0 12px 40px rgba(200,16,46,0.6), 0 0 60px rgba(240,192,43,0.4);
  border-color:#fff;
}

.btn-explore-more .btn-icon{
  font-size:1.3rem;
  animation:pulse 2s ease-in-out infinite;
}

@keyframes pulse{
  0%, 100%{ transform:scale(1); }
  50%{ transform:scale(1.2); }
}

.btn-explore-more .btn-text{
  position:relative;
  z-index:1;
}

.explore-note{
  margin-top:1.5rem;
  font-size:0.95rem;
  color:rgba(255,255,255,0.6);
  font-style:italic;
}

@media (max-width:768px){
  .services-hero h1{
    font-size:2.2rem;
    letter-spacing:1px;
  }
  
  .services-subtitle{
    font-size:1.15rem;
  }
  
  .services-intro h2{
    font-size:1.6rem;
  }
  
  .service-card{
    padding:1.5rem 1.2rem;
  }
  
  .service-card h3{
    font-size:1.2rem;
    line-height:1.3;
  }
  
  .service-description{
    font-size:0.95rem;
    line-height:1.5;
  }
  
  .btn-whatsapp{
    font-size:0.85rem;
    padding:0.8rem 1.2rem;
    letter-spacing:0.3px;
  }
}

@media (max-width:600px){
  .subtitle-red{
    font-size:1rem;
  }
  
  .about-section, .section-dark{
    padding:2rem 1rem;
  }
  
  .testimonial-highlight{
    padding:1.5rem;
  }
  
  .services-hero{
    padding:3rem 1.5rem 2.5rem;
  }
  
  .services-hero h1{
    font-size:1.8rem;
    letter-spacing:0.5px;
    word-break:break-word;
  }
  
  .services-subtitle{
    font-size:1rem;
    line-height:1.5;
  }
  
  .services-intro{
    padding:2rem 1.5rem;
  }
  
  .services-intro h2{
    font-size:1.4rem;
    line-height:1.3;
  }
  
  .intro-text{
    font-size:1rem;
  }
  
  .services-grid{
    grid-template-columns:1fr;
    gap:1.5rem;
    padding:0 1rem;
  }
  
  .service-card{
    padding:1.5rem 1rem;
    gap:0.8rem;
  }
  
  .service-icon{
    font-size:2.5rem;
    width:60px;
    height:60px;
  }
  
  .service-card h3{
    font-size:1.1rem;
    line-height:1.3;
    word-wrap:break-word;
  }
  
  .service-description{
    font-size:0.9rem;
    line-height:1.5;
  }
  
  .service-duration{
    font-size:0.85rem;
  }
  
  .btn-whatsapp{
    font-size:0.8rem;
    padding:0.75rem 1rem;
    letter-spacing:0.2px;
    line-height:1.3;
    word-wrap:break-word;
  }
  
  .service-rating{
    font-size:0.75rem;
  }
  
  .back-link{
    font-size:0.9rem;
  }
}

@media (max-width:400px){
  .services-hero h1{
    font-size:1.5rem;
  }
  
  .services-subtitle{
    font-size:0.9rem;
  }
  
  .service-card h3{
    font-size:1rem;
  }
  
  .service-description{
    font-size:0.85rem;
  }
  
  .btn-whatsapp{
    font-size:0.75rem;
    padding:0.7rem 0.9rem;
  }
}
