/* Comentario en español: estilos principales y paleta minimalista */
:root{
  --brand:#001f3f; /* color principal proporcionado */
  --accent:#0b3b66; /* tono cercano para acentos */
  --muted:#f5f7fa;  /* fondo claro */
  --text:#0b1b2b;   /* texto oscuro */
  --white:#ffffff;
  --radius:8px;
  --max-width:1100px;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
}

*{box-sizing:border-box}
body{
  margin:0;
  color:var(--text);
  background:var(--muted);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  line-height:1.5;
}

/* Contenedor centrado */
.container{
  max-width:var(--max-width);
  margin:0 auto;
  padding:1rem;
}

/* Header */
.site-header{
  background:var(--white);
  border-bottom:1px solid rgba(0,0,0,0.06);
  position:sticky;
  top:0;
  z-index:20;
}
.header-inner{
  display:flex;
  align-items:center;
  gap:1rem;
}
.logo{
  height:56px;
  width:auto;
}
.brand{flex:1}
.company-name{
  margin:0;
  font-size:1.1rem;
  color:var(--brand);
}
.slogan{
  margin:0;
  font-size:0.85rem;
  color:rgba(0,0,0,0.6);
}
.contact .phone{
  display:inline-block;
  margin-left:0.5rem;
  color:var(--brand);
  text-decoration:none;
  font-weight:600;
}

/* Hero / Slider */
.hero{
  background:linear-gradient(180deg, rgba(0,0,0,0.02), transparent);
  padding:0;
}
.slider{
  position:relative;
  height:420px;
  overflow:hidden;
  border-bottom:1px solid rgba(0,0,0,0.06);
}
.slide{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
  transition:opacity 600ms ease;
  opacity:0;
  display:flex;
  align-items:flex-end;
  padding:2rem;
}
.slide-text{
  background:linear-gradient(180deg, rgba(0,0,0,0.0), rgba(0,0,0,0.45));
  color:var(--white);
  padding:1rem;
  border-radius:6px;
  max-width:60%;
}
.slide-text h2{margin:0 0 0.25rem 0}
.slide-text p{margin:0;font-size:0.95rem}

/* Slider buttons */
.slider-btn{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  background:rgba(0,0,0,0.35);
  color:var(--white);
  border:0;
  width:44px;
  height:44px;
  border-radius:50%;
  cursor:pointer;
  font-size:1.6rem;
  display:flex;
  align-items:center;
  justify-content:center;
}
.slider-btn.prev{left:12px}
.slider-btn.next{right:12px}

/* CTA */
.cta{
  display:flex;
  justify-content:center;
  padding:1.25rem;
  background:var(--white);
}
.btn-primary{
  background:var(--brand);
  color:var(--white);
  padding:0.9rem 1.25rem;
  border-radius:6px;
  text-decoration:none;
  font-weight:700;
  letter-spacing:0.6px;
}

/* Main content */
.main-content{
  display:flex;
  gap:2rem;
  padding:2rem 1rem;
  flex-wrap:wrap;
}
.about, .coverage{
  flex:1 1 300px;
  background:var(--white);
  padding:1rem;
  border-radius:8px;
}

/* Form */
.form-section{padding:2rem 1rem}
.form-wrapper{
  background:var(--white);
  padding:1.25rem;
  border-radius:8px;
}
.form-wrapper form{
  display:grid;
  gap:0.75rem;
}
.form-wrapper label{font-weight:600;font-size:0.9rem}
.form-wrapper input[type="text"],
.form-wrapper input[type="email"],
.form-wrapper select,
.form-wrapper textarea{
  padding:0.6rem;
  border:1px solid rgba(0,0,0,0.08);
  border-radius:6px;
  font-size:0.95rem;
}
.form-wrapper button.btn-primary{width:fit-content;border:none;cursor:pointer}

/* Footer */
.site-footer{
  padding:1rem;
  text-align:center;
  font-size:0.9rem;
  color:rgba(0,0,0,0.6);
}

/* Responsive */
@media (max-width:720px){
  .slide-text{max-width:100%}
  .header-inner{flex-direction:column;align-items:flex-start;gap:0.5rem}
  .slider{height:300px}
}

/* ========================= */
/* Estilo corporativo: About Us + Service Area */
/* ========================= */

.info-section {
  max-width: 750px;
  margin: 0 auto;
  text-align: center;
  padding: 50px 20px;
  background: var(--white);
  border-radius: 10px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.05);
  border: 1px solid rgba(0,0,0,0.06);
}

/* Título principal */
.info-section h3 {
  font-size: 1.9rem;
  margin-bottom: 20px;
  color: var(--brand);
  font-weight: 700;
  letter-spacing: 0.5px;
}

/* Subtítulos (Tennessee / Georgia) */
.info-section h4 {
  font-size: 1.15rem;
  margin-top: 30px;
  margin-bottom: 8px;
  color: var(--accent);
  font-weight: 600;
}

/* Párrafos */
.info-section p {
  font-size: 1rem;
  line-height: 1.7;
  color: var(--text);
  margin-bottom: 20px;
}

/* Listas de ciudades */
.service-list {
  font-size: 1rem;
  color: #333;
  margin-bottom: 25px;
}

/* Línea divisoria elegante */
.info-section h3 + p {
  border-top: 1px solid rgba(0,0,0,0.08);
  padding-top: 25px;
}

.info-section h3:nth-of-type(2) {
  margin-top: 40px;
  padding-top: 30px;
  border-top: 1px solid rgba(0,0,0,0.08);
}

/* Botón secundario corporativo */
.btn-secondary {
  background: var(--white);
  color: var(--brand);
  padding: 0.8rem 1.2rem;
  border-radius: 6px;
  text-decoration: none;
  font-weight: 600;
  border: 1px solid var(--brand);
  margin-left: 0.75rem;
  display: inline-block;
}

.btn-secondary:hover {
  background: var(--brand);
  color: var(--white);
}