.elementor-21 .elementor-element.elementor-element-0b404f8{--display:flex;}.elementor-21 .elementor-element.elementor-element-8547a6b{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-21 .elementor-element.elementor-element-9c77cdb{--display:flex;--justify-content:center;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-21 .elementor-element.elementor-element-3c6d466{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-21 .elementor-element.elementor-element-ea90937{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-21 .elementor-element.elementor-element-0858d5d{--display:flex;--justify-content:center;}.elementor-21 .elementor-element.elementor-element-1d15f0f{--display:flex;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-21 .elementor-element.elementor-element-e6a08f3{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-21 .elementor-element.elementor-element-462af0f{padding:0px 0px 30px 0px;text-align:center;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-21 .elementor-element.elementor-element-9e91b23 .elementor-field-group{padding-right:calc( 9px/2 );padding-left:calc( 9px/2 );margin-bottom:15px;}.elementor-21 .elementor-element.elementor-element-9e91b23 .elementor-form-fields-wrapper{margin-left:calc( -9px/2 );margin-right:calc( -9px/2 );margin-bottom:-15px;}.elementor-21 .elementor-element.elementor-element-9e91b23 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-21 .elementor-element.elementor-element-9e91b23 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-21 .elementor-element.elementor-element-9e91b23 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-21 .elementor-element.elementor-element-9e91b23 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-21 .elementor-element.elementor-element-9e91b23 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-21 .elementor-element.elementor-element-9e91b23 .elementor-field-group > label, .elementor-21 .elementor-element.elementor-element-9e91b23 .elementor-field-subgroup label{color:#1E3A5F;}.elementor-21 .elementor-element.elementor-element-9e91b23 .elementor-field-group > label{font-family:"Poppins", Sans-serif;font-size:14px;font-weight:500;}.elementor-21 .elementor-element.elementor-element-9e91b23 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#F3F8FF;border-color:#02010100;}.elementor-21 .elementor-element.elementor-element-9e91b23 .elementor-field-group .elementor-select-wrapper select{background-color:#F3F8FF;border-color:#02010100;}.elementor-21 .elementor-element.elementor-element-9e91b23 .elementor-field-group .elementor-select-wrapper::before{color:#02010100;}.elementor-21 .elementor-element.elementor-element-9e91b23 .elementor-button{border-style:solid;border-radius:7px 7px 7px 7px;}.elementor-21 .elementor-element.elementor-element-9e91b23 .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-secondary );color:#ffffff;}.elementor-21 .elementor-element.elementor-element-9e91b23 .elementor-button[type="submit"]{background-color:var( --e-global-color-secondary );color:#ffffff;}.elementor-21 .elementor-element.elementor-element-9e91b23 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-21 .elementor-element.elementor-element-9e91b23 .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-secondary );color:#ffffff;}.elementor-21 .elementor-element.elementor-element-9e91b23 .e-form__buttons__wrapper__button-next:hover{background-color:var( --e-global-color-ed422ac );color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-21 .elementor-element.elementor-element-9e91b23 .elementor-button[type="submit"]:hover{background-color:var( --e-global-color-ed422ac );color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-21 .elementor-element.elementor-element-9e91b23 .elementor-button[type="submit"]:hover svg *{fill:var( --e-global-color-secondary );}.elementor-21 .elementor-element.elementor-element-9e91b23 .e-form__buttons__wrapper__button-previous:hover{background-color:var( --e-global-color-ed422ac );color:var( --e-global-color-secondary );}.elementor-21 .elementor-element.elementor-element-9e91b23{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-21 .elementor-element.elementor-element-c0a9c21{--display:flex;--min-height:293px;--border-radius:25px 25px 25px 25px;}.elementor-21 .elementor-element.elementor-element-c0a9c21:not(.elementor-motion-effects-element-type-background), .elementor-21 .elementor-element.elementor-element-c0a9c21 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://eaglesroofing.rafaprueba.com/wp-content/uploads/2026/06/young-business-man-working-her-desk-with-laptop-smartphone-scaled.jpg");background-position:center center;background-size:cover;}@media(max-width:1024px){.elementor-21 .elementor-element.elementor-element-8547a6b{--grid-auto-flow:row;}.elementor-21 .elementor-element.elementor-element-ea90937{--grid-auto-flow:row;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-form .elementor-field-group > label{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-field-type-html{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-button{font-size:var( --e-global-typography-accent-font-size );}.elementor-widget-form .elementor-message{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-size:var( --e-global-typography-accent-font-size );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-size:var( --e-global-typography-accent-font-size );}}@media(max-width:767px){.elementor-21 .elementor-element.elementor-element-8547a6b{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-21 .elementor-element.elementor-element-ea90937{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-form .elementor-field-group > label{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-field-type-html{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .elementor-button{font-size:var( --e-global-typography-accent-font-size );}.elementor-widget-form .elementor-message{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-size:var( --e-global-typography-accent-font-size );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-size:var( --e-global-typography-accent-font-size );}}/* Start custom CSS for html, class: .elementor-element-9771a5c *//* ============================================
   EAGLES ROOFING LLC - GLOBAL STYLES
   ============================================ */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&family=Playfair+Display:wght@700;800&display=swap');

:root {
  /* Colores Principales */
  --primary-dark: #1e3a5f;
  --primary-blue: #2563eb;
  --secondary-light: #60a5fa;
  --accent-cyan: #06b6d4;
  --white: #ffffff;
  --bg-light: #f8fafc;
  --gray-text: #475569;
  --border-color: #e2e8f0;
  
  /* Tipografía */
  --font-display: 'Playfair Display', serif;
  --font-body: 'Poppins', sans-serif;
  
  /* Espaciado */
  --spacing-xs: 0.5rem;
  --spacing-sm: 1rem;
  --spacing-md: 1.5rem;
  --spacing-lg: 2rem;
  --spacing-xl: 3rem;
  --spacing-2xl: 4rem;
  
  /* Sombras */
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 10px 25px rgba(30, 58, 95, 0.15);
  --shadow-xl: 0 20px 40px rgba(30, 58, 95, 0.2);
  
  /* Transiciones */
  --transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: var(--font-body);
  color: var(--primary-dark);
  background-color: var(--white);
  line-height: 1.6;
  overflow-x: hidden;
}

/* ============================================
   TIPOGRAFÍA
   ============================================ */

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-display);
  font-weight: 700;
  line-height: 1.2;
  color: var(--primary-dark);
}

h1 {
  font-size: clamp(2rem, 5vw, 4rem);
  margin-bottom: var(--spacing-lg);
}

h2 {
  font-size: clamp(1.75rem, 4vw, 3rem);
  margin-bottom: var(--spacing-md);
}

h3 {
  font-size: 1.5rem;
  margin-bottom: var(--spacing-sm);
}

p {
  font-size: 1rem;
  color: var(--gray-text);
  margin-bottom: var(--spacing-md);
}

a {
  color: var(--primary-blue);
  text-decoration: none;
  transition: var(--transition);
}

a:hover {
  color: var(--accent-cyan);
}

/* ============================================
   BOTONES
   ============================================ */

.btn {
  display: inline-block;
  padding: var(--spacing-sm) var(--spacing-lg);
  border-radius: 8px;
  font-weight: 600;
  font-size: 1rem;
  cursor: pointer;
  border: none;
  transition: var(--transition);
  text-align: center;
  font-family: var(--font-body);
}

.btn-primary {
  background: linear-gradient(135deg, var(--primary-blue), var(--secondary-light));
  color: var(--white);
  box-shadow: var(--shadow-md);
}

.btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow-lg);
}

.btn-secondary {
  background: transparent;
  color: var(--primary-blue);
  border: 2px solid var(--primary-blue);
}

.btn-secondary:hover {
  background: var(--primary-blue);
  color: var(--white);
}

/* ============================================
   CONTENEDORES
   ============================================ */

.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 var(--spacing-md);
}

.section {
  padding: var(--spacing-2xl) 0;
}

.section.light {
  background-color: var(--bg-light);
}

.section.dark {
  background-color: var(--primary-dark);
  color: var(--white);
}

.section.dark h1,
.section.dark h2,
.section.dark h3 {
  color: var(--white);
}

.section.dark p {
  color: rgba(255, 255, 255, 0.9);
}

/* ============================================
   GRID Y LAYOUTS
   ============================================ */

.grid {
  display: grid;
  gap: var(--spacing-lg);
}

.grid-2 {
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}

.grid-3 {
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

.grid-4 {
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

.flex {
  display: flex;
  gap: var(--spacing-md);
}

.flex-center {
  display: flex;
  align-items: center;
  justify-content: center;
}

.flex-between {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* ============================================
   TARJETAS
   ============================================ */

.card {
  background: var(--white);
  border-radius: 12px;
  padding: var(--spacing-lg);
  box-shadow: var(--shadow-md);
  transition: var(--transition);
  border: 1px solid var(--border-color);
}

.card:hover {
  box-shadow: var(--shadow-lg);
  transform: translateY(-5px);
}

.card-image {
  width: 100%;
  height: 250px;
  object-fit: cover;
  border-radius: 8px;
  margin-bottom: var(--spacing-md);
}

/* ============================================
   ANIMACIONES
   ============================================ */

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes slideInLeft {
  from {
    opacity: 0;
    transform: translateX(-40px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes slideInRight {
  from {
    opacity: 0;
    transform: translateX(40px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes float {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10px);
  }
}

.animate-fade-up {
  animation: fadeInUp 0.6s ease-out;
}

.animate-slide-left {
  animation: slideInLeft 0.6s ease-out;
}

.animate-slide-right {
  animation: slideInRight 0.6s ease-out;
}

/* ============================================
   RESPONSIVE
   ============================================ */

@media (max-width: 768px) {
  :root {
    --spacing-lg: 1.5rem;
    --spacing-xl: 2rem;
    --spacing-2xl: 2.5rem;
  }

  h1 {
    font-size: 2rem;
  }

  h2 {
    font-size: 1.5rem;
  }

  .grid-2,
  .grid-3,
  .grid-4 {
    grid-template-columns: 1fr;
  }

  .container {
    padding: 0 var(--spacing-sm);
  }
}

/* ============================================
   UTILIDADES
   ============================================ */

.text-center {
  text-align: center;
}

.text-white {
  color: var(--white);
}

.mt-1 { margin-top: var(--spacing-sm); }
.mt-2 { margin-top: var(--spacing-md); }
.mt-3 { margin-top: var(--spacing-lg); }
.mt-4 { margin-top: var(--spacing-xl); }

.mb-1 { margin-bottom: var(--spacing-sm); }
.mb-2 { margin-bottom: var(--spacing-md); }
.mb-3 { margin-bottom: var(--spacing-lg); }
.mb-4 { margin-bottom: var(--spacing-xl); }

.py-2 { padding: var(--spacing-md) 0; }
.py-3 { padding: var(--spacing-lg) 0; }
.py-4 { padding: var(--spacing-xl) 0; }

.max-w-600 {
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
}

/* Decoración de líneas */
.divider {
  height: 3px;
  width: 60px;
  background: linear-gradient(90deg, var(--primary-blue), var(--secondary-light));
  margin: var(--spacing-md) 0;
  border-radius: 2px;
}

/* Badge */
.badge {
  display: inline-block;
  background: var(--secondary-light);
  color: var(--white);
  padding: var(--spacing-xs) var(--spacing-sm);
  border-radius: 20px;
  font-size: 0.85rem;
  font-weight: 600;
  margin-bottom: var(--spacing-sm);
}/* End custom CSS */