.elementor-5 .elementor-element.elementor-element-dd12dfa{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5 .elementor-element.elementor-element-0bbee09{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-5 .elementor-element.elementor-element-72b1eca{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5 .elementor-element.elementor-element-0314115{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-5 .elementor-element.elementor-element-706ed9f{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.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-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-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-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-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-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-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-weight:var( --e-global-typography-accent-font-weight );}.elementor-5 .elementor-element.elementor-element-a3b9481{width:var( --container-widget-width, 100% );max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--container-widget-width:100%;--container-widget-flex-grow:0;--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-5 .elementor-element.elementor-element-a3b9481 .elementor-field-group{padding-right:calc( 0px/2 );padding-left:calc( 0px/2 );margin-bottom:20px;}.elementor-5 .elementor-element.elementor-element-a3b9481 .elementor-form-fields-wrapper{margin-left:calc( -0px/2 );margin-right:calc( -0px/2 );margin-bottom:-20px;}.elementor-5 .elementor-element.elementor-element-a3b9481 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-5 .elementor-element.elementor-element-a3b9481 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-5 .elementor-element.elementor-element-a3b9481 .elementor-labels-inline .elementor-field-group > label{padding-left:10px;}body:not(.rtl) .elementor-5 .elementor-element.elementor-element-a3b9481 .elementor-labels-inline .elementor-field-group > label{padding-right:10px;}body .elementor-5 .elementor-element.elementor-element-a3b9481 .elementor-labels-above .elementor-field-group > label{padding-bottom:10px;}.elementor-5 .elementor-element.elementor-element-a3b9481 .elementor-field-type-html{padding-bottom:11px;}.elementor-5 .elementor-element.elementor-element-a3b9481 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-5 .elementor-element.elementor-element-a3b9481 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-5 .elementor-element.elementor-element-a3b9481 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-5 .elementor-element.elementor-element-a3b9481 .elementor-button[type="submit"]{color:#ffffff;}.elementor-5 .elementor-element.elementor-element-a3b9481 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-5 .elementor-element.elementor-element-a3b9481 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-5 .elementor-element.elementor-element-a3b9481 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-5 .elementor-element.elementor-element-a3b9481 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-5 .elementor-element.elementor-element-a3b9481 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-5 .elementor-element.elementor-element-a3b9481 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-5 .elementor-element.elementor-element-6ab93f2{--display:flex;}.elementor-5 .elementor-element.elementor-element-6ab93f2.e-con{--flex-grow:0;--flex-shrink:0;}@media(min-width:768px){.elementor-5 .elementor-element.elementor-element-706ed9f{--width:100%;}.elementor-5 .elementor-element.elementor-element-6ab93f2{--width:100%;}}@media(max-width:767px){.elementor-5 .elementor-element.elementor-element-72b1eca{--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-5 .elementor-element.elementor-element-0314115{--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-5 .elementor-element.elementor-element-6ab93f2{--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}/* Start custom CSS for form, class: .elementor-element-a3b9481 *//* ========================================
   ELEMENTOR PRO FORM - STEAD STYLING
   Add class "stead-contact-form" to form widget
======================================== */

/* Form Container */
.stead-contact-form {
    background-color: transparent !important;
}

/* Form Grid Layout - 2 columns with spacing */
.stead-contact-form .elementor-form {
    display: grid !important;
   
    gap: 24px 20px !important; /* 24px vertical, 20px horizontal */
}


/* Alternative: If grid gap doesn't work, use margin */
.stead-contact-form .elementor-form-fields-wrapper {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 24px 20px !important;
}

.stead-contact-form .elementor-field-group.elementor-col-50 {
    width: calc(50% - 10px) !important;
    margin-bottom: 0 !important;
}

.stead-contact-form .elementor-field-group.elementor-col-100 {
    width: 100% !important;
    margin-bottom: 0 !important;
}

/* Labels */
.stead-contact-form .elementor-field-label {
    font-family: 'Source Sans 3', 'Segoe UI', sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #1a1a1a !important;
    margin-bottom: 8px !important;
    display: block !important;
}

/* Input Fields, Select, Textarea */
.stead-contact-form .elementor-field {
    padding: 14px 16px !important;
    font-family: 'Source Sans 3', 'Segoe UI', sans-serif !important;
    font-size: 15px !important;
    border: 1px solid #cbbda8 !important;
    border-radius: 4px !important;
    background-color: #ffffff !important;
    color: #1a1a1a !important;
    transition: border-color 0.3s ease, box-shadow 0.3s ease !important;
    width: 100% !important;
    line-height: 1.5 !important;
    margin-top: 0 !important;
}

/* Input Focus State */
.stead-contact-form .elementor-field:focus {
    outline: none !important;
    border-color: #2f504f !important;
    box-shadow: 0 0 0 3px rgba(47, 80, 79, 0.1) !important;
}

/* Placeholder Text */
.stead-contact-form .elementor-field::placeholder {
    color: #999999 !important;
    opacity: 1 !important;
}

/* Textarea Specific */
.stead-contact-form textarea.elementor-field {
    min-height: 120px !important;
    resize: vertical !important;
}

/* Select Dropdown */
.stead-contact-form select.elementor-field {
    appearance: none !important;
    -webkit-appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%232f504f' d='M6 8L1 3h10z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 16px center !important;
    padding-right: 40px !important;
}



/* Submit Button */
.stead-contact-form .elementor-button {
    width: 100% !important;
    padding: 16px 32px !important;
    font-family: 'Source Sans 3', 'Segoe UI', sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    background-color: #2f504f !important;
    color: #ffffff !important;
    border: 2px solid #2f504f !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
}

/* Submit Button Hover */
.stead-contact-form .elementor-button:hover,
.stead-contact-form .elementor-button:focus {
    background-color: #243d3c !important;
    border-color: #243d3c !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(47, 80, 79, 0.3) !important;
}


/* Required Asterisk */
.stead-contact-form .elementor-mark-required .elementor-field-label:after {
    color: #2f504f !important;
}

/* Responsive - Stack on Mobile */
@media (max-width: 768px) {
  
    
    .stead-contact-form .elementor-field-group.elementor-col-50 {
        width: 100% !important;
    }
}

/* ========================================
   SELECT DROPDOWN - COMPLETE FIX
   Removes Elementor default styling
======================================== */

/* Remove Elementor's select wrapper arrow */
.stead-contact-form .elementor-select-wrapper::before,
.stead-contact-form .elementor-select-wrapper::after,
.stead-contact-form .elementor-field-type-select .select-caret-down-wrapper,
.stead-contact-form .elementor-select-wrapper .select-caret-down-wrapper,
.stead-contact-form .select-caret-down-wrapper {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
}

/* Hide any SVG arrow Elementor adds */
.stead-contact-form .elementor-select-wrapper svg,
.stead-contact-form .elementor-field-type-select svg {
    display: none !important;
}

/* Reset the select wrapper */
.stead-contact-form .elementor-select-wrapper {
    position: relative !important;
    display: block !important;
    background: none !important;
    border: none !important;

}

/* The actual select field */
.stead-contact-form select.elementor-field,
.stead-contact-form .elementor-field-textual.elementor-field-type-select,
.stead-contact-form .elementor-select-wrapper select {
    padding: 14px 44px 14px 16px !important;
    height: 52px !important;
    min-height: 52px !important;
    max-height: 52px !important;
    font-family: 'Source Sans 3', 'Segoe UI', sans-serif !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
    border: 1px solid #cbbda8 !important;
    border-radius: 4px !important;
    background-color: #ffffff !important;
    color: #1a1a1a !important;
    width: 100% !important;
    cursor: pointer !important;
    
    /* Remove default appearance */
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    
    /* Custom arrow */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%232f504f' d='M6 8L1 3h10z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 16px center !important;
    background-size: 12px !important;
}

/* Make sure input fields match height */
.stead-contact-form input.elementor-field,
.stead-contact-form .elementor-field-textual {
    height: 52px !important;
    min-height: 52px !important;
}

/* Focus state for select */
.stead-contact-form select.elementor-field:focus {
    outline: none !important;
    border-color: #2f504f !important;
    box-shadow: 0 0 0 3px rgba(47, 80, 79, 0.1) !important;
}

/* Make select field 100% width */
.stead-contact-form .elementor-field-type-select,
.stead-contact-form .elementor-field-group-best_time,
.stead-contact-form .elementor-select-wrapper,
.stead-contact-form select.elementor-field {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 100% !important;
    display: block !important;
}

/* Ensure the field group takes full width */
.stead-contact-form .elementor-field-group.elementor-col-100 {
    width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
}


/* ========================================
   SELECT FIELD - REMOVE EXTRA SPACING
======================================== */

/* Remove padding from select field group */
.stead-contact-form .elementor-field-type-select {
    padding: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* Remove padding from select wrapper */
.stead-contact-form .elementor-field.elementor-select-wrapper,
.stead-contact-form .elementor-select-wrapper.remove-before {
    padding: 0 !important;
    margin: 0 !important;
}

/* Make sure select aligns with other fields */
.stead-contact-form .elementor-field-group.elementor-field-type-select {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}/* End custom CSS */
/* Start custom CSS *//*
=============================================
STEAD & ASSOCIATES - WORDPRESS-PROOF CSS
=============================================
All styles include !important to prevent
WordPress/Elementor theme overrides.

Paste this into:
- Elementor → Site Settings → Custom CSS
- OR Appearance → Customize → Additional CSS
- OR WPCode plugin as CSS snippet
=============================================
*/

/* ========================================
   CSS VARIABLES - BRAND COLORS
======================================== */
:root {
    --primary-green: #2f504f !important;
    --secondary-cream: #efeae1 !important;
    --tertiary-tan: #cbbda8 !important;
    --white: #ffffff !important;
    --dark-text: #1a1a1a !important;
    --medium-gray: #666666 !important;
    --light-gray: #f8f6f2 !important;
    --gold-accent: #c9a227 !important;
    
    --font-heading: 'Playfair Display', Georgia, serif !important;
    --font-body: 'Source Sans 3', 'Segoe UI', sans-serif !important;
    
    --section-padding: 100px 0 !important;
    --container-width: 1200px !important;
}

/* ========================================
   RESET & BASE STYLES
======================================== */
html {
    scroll-behavior: smooth !important;
}

.stead-page {
    font-family: var(--font-body) !important;
    font-size: 16px !important;
    line-height: 1.7 !important;
    color: var(--dark-text) !important;
    background-color: var(--secondary-cream) !important;
}

.container {
    max-width: var(--container-width) !important;
    margin: 0 auto !important;
    padding: 0 24px !important;
    width: 100% !important;
}

/* ========================================
   TYPOGRAPHY - OVERRIDE WORDPRESS
======================================== */
h1, h2, h3, h4, h5, h6,
.stead-page h1,
.stead-page h2,
.stead-page h3,
.stead-page h4,
.stead-page h5,
.stead-page h6,
.elementor-widget-heading .elementor-heading-title,
.elementor h1,
.elementor h2,
.elementor h3 {
    font-family: var(--font-heading) !important;
    font-weight: 500 !important;
    color: var(--primary-green) !important;
    line-height: 1.3 !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
}

h1,
.stead-page h1 {
    font-size: clamp(2.5rem, 5vw, 3.5rem) !important;
}

h2,
.stead-page h2 {
    font-size: clamp(2rem, 4vw, 2.75rem) !important;
}

h3,
.stead-page h3 {
    font-size: clamp(1.25rem, 2.5vw, 1.5rem) !important;
}

p,
.stead-page p,
.elementor-widget-text-editor p {
    color: var(--medium-gray) !important;
    margin-bottom: 1rem !important;
    font-family: var(--font-body) !important;
    font-size: 16px !important;
    line-height: 1.7 !important;
}

a,
.stead-page a {
    text-decoration: none !important;
    color: inherit !important;
    transition: all 0.3s ease !important;
}

/* Override WordPress link colors */
a:hover,
a:focus,
a:active,
.stead-page a:hover,
.stead-page a:focus,
.stead-page a:active {
    color: var(--primary-green) !important;
    text-decoration: none !important;
}

img,
.stead-page img {
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
}

ul,
.stead-page ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* ========================================
   BUTTONS - FULL OVERRIDE
======================================== */
.btn,
.stead-page .btn,
a.btn,
button.btn,
.elementor-button,
.elementor-widget-button .elementor-button {
    display: inline-block !important;
    padding: 14px 32px !important;
    font-family: var(--font-body) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    border: 2px solid transparent !important;
    text-decoration: none !important;
    text-align: center !important;
    line-height: 1.5 !important;
}

.btn-primary,
.stead-page .btn-primary,
a.btn-primary,
button.btn-primary {
    background-color: var(--primary-green) !important;
    color: var(--white) !important;
    border-color: var(--primary-green) !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary:visited,
.stead-page .btn-primary:hover,
.stead-page .btn-primary:focus,
.stead-page .btn-primary:active,
a.btn-primary:hover,
a.btn-primary:focus,
a.btn-primary:active,
a.btn-primary:visited {
    background-color: #243d3c !important;
    border-color: #243d3c !important;
    color: var(--white) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(47, 80, 79, 0.3) !important;
    text-decoration: none !important;
}

.btn-outline,
.stead-page .btn-outline,
a.btn-outline,
button.btn-outline {
    background-color: transparent !important;
    color: var(--primary-green) !important;
    border-color: var(--primary-green) !important;
}

.btn-outline:hover,
.btn-outline:focus,
.btn-outline:active,
.stead-page .btn-outline:hover,
.stead-page .btn-outline:focus,
a.btn-outline:hover,
a.btn-outline:focus,
a.btn-outline:active {
    background-color: var(--primary-green) !important;
    color: var(--white) !important;
    text-decoration: none !important;
}

/* ========================================
   HERO SECTION
======================================== */
.hero {
    padding: 80px 0 60px !important;
    background-color: #efeae1 !important;
    overflow: visible !important;
}

.hero .container {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 40px !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 24px !important;
    overflow: visible !important;
}

.hero-content {
    flex: 1 1 500px !important;
    max-width: 600px !important;
}

.hero-image {
    flex: 1 1 400px !important;
    position: relative !important;
    z-index: 1 !important;
}

.hero h1 {
    font-family: 'Playfair Display', Georgia, serif !important;
    font-size: clamp(2rem, 4vw, 3rem) !important;
    color: #2f504f !important;
    line-height: 1.2 !important;
    margin-bottom: 20px !important;
}

.hero-text {
    font-size: 17px !important;
    color: #666666 !important;
    line-height: 1.7 !important;
    margin-bottom: 28px !important;
}

.hero-badges {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    margin-bottom: 20px !important;
}

.badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: #ffffff !important;
    padding: 8px 14px !important;
    border-radius: 20px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #2f504f !important;
}

.badge svg {
    width: 14px !important;
    height: 14px !important;
    fill: #c9a227 !important;
}

.hero-buttons {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
}

.hero-image img {
    width: 100% !important;
    border-radius: 8px !important;
    box-shadow: 0 15px 40px rgba(47, 80, 79, 0.15) !important;
}

/* Hero Image Decorative Border */
.hero-image::before {
    content: '' !important;
    position: absolute !important;
    top: -20px !important;
    right: -20px !important;
    width: 100% !important;
    height: 100% !important;
    border: 3px solid #cbbda8 !important;
    border-radius: 8px !important;
    z-index: -1 !important;
    pointer-events: none !important;
    display: block !important;
}

/* ========================================
   SECTION HEADERS
======================================== */
.section-header,
.stead-page .section-header {
    text-align: center !important;
    margin-bottom: 60px !important;
}

.section-header h2 {
    position: relative !important;
    display: inline-block !important;
}

.section-header h2::after {
    content: '' !important;
    position: absolute !important;
    bottom: -12px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 60px !important;
    height: 3px !important;
    background-color: var(--tertiary-tan) !important;
}

/* ========================================
   BUILT FOR SECTION
======================================== */
.built-for,
.stead-page .built-for {
    padding: var(--section-padding) !important;
    background-color: var(--white) !important;
}

.built-for-grid,
.stead-page .built-for-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 60px !important;
    padding: 20px;
}

.built-for-card h3 {
    margin-bottom: 20px !important;
    font-size: 1.25rem !important;
}

.built-for-card p {
    font-size: 16px !important;
    line-height: 1.8 !important;
    margin-bottom: 16px !important;
}

/* ========================================
   SERVICES SECTION
======================================== */
.services,
.stead-page .services {
    padding: var(--section-padding) !important;
    background-color: var(--secondary-cream) !important;
}

.services-grid,
.stead-page .services-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 40px !important;
    margin-bottom: 40px !important;
}

.service-card,
.stead-page .service-card {
    background-color: var(--white) !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05) !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.service-card:hover {
    transform: translateY(-8px) !important;
    box-shadow: 0 12px 40px rgba(47, 80, 79, 0.12) !important;
}

.service-card-image,
.stead-page .service-card-image {
    height: 240px !important;
    overflow: hidden !important;
}

.service-card-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.5s ease !important;
}

.service-card:hover .service-card-image img {
    transform: scale(1.05) !important;
}

.service-card-content,
.stead-page .service-card-content {
    padding: 32px !important;
}

.service-card h3 {
    margin-bottom: 20px !important;
}

.service-card ul {
    margin-bottom: 0 !important;
}

.service-card li {
    position: relative !important;
    padding-left: 24px !important;
    margin-bottom: 12px !important;
    color: var(--medium-gray) !important;
    list-style: none !important;
}

.service-card li::before {
    content: '•' !important;
    position: absolute !important;
    left: 0 !important;
    color: var(--primary-green) !important;
    font-weight: bold !important;
}

.services-note,
.stead-page .services-note {
    text-align: center !important;
    font-style: italic !important;
    color: var(--medium-gray) !important;
    margin-bottom: 32px !important;
}

.services .btn {
    display: block !important;
    width: fit-content !important;
    margin: 0 auto !important;
}

/* ========================================
   HOW IT WORKS SECTION
======================================== */
.how-it-works,
.stead-page .how-it-works {
    padding: var(--section-padding) !important;
    background-color: var(--white) !important;
}

.steps-grid,
.stead-page .steps-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 40px !important;
}

.step,
.stead-page .step {
    text-align: center !important;
    padding: 40px 24px !important;
}

.step-number,
.stead-page .step-number {
    font-family: var(--font-heading) !important;
    font-size: 5rem !important;
    font-weight: 400 !important;
    color: transparent !important;
    -webkit-text-stroke: 2px var(--tertiary-tan) !important;
    line-height: 1 !important;
    margin-bottom: 24px !important;
}

.step h3 {
    margin-bottom: 16px !important;
}

.step p {
    font-size: 15px !important;
}

/* ========================================
   WHY STEAD SECTION
======================================== */
.why-stead,
.stead-page .why-stead {
    padding: var(--section-padding) !important;
    background-color: var(--secondary-cream) !important;
}

.features-grid,
.stead-page .features-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 40px !important;
}

.feature,
.stead-page .feature {
    display: flex !important;
    gap: 20px !important;
    padding: 24px !important;
    background-color: var(--white) !important;
    border-radius: 8px !important;
    transition: box-shadow 0.3s ease !important;
}

.feature:hover {
    box-shadow: 0 8px 30px rgba(47, 80, 79, 0.08) !important;
}

.feature-icon,
.stead-page .feature-icon {
    width: 56px !important;
    height: 56px !important;
    min-width: 56px !important;
    background-color: var(--secondary-cream) !important;
    border-radius: 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.feature-icon svg {
    width: 28px !important;
    height: 28px !important;
    stroke: var(--primary-green) !important;
    fill: none !important;
    stroke-width: 1.5 !important;
}

.feature-content h3 {
    font-size: 1.1rem !important;
    margin-bottom: 8px !important;
}

.feature-content p {
    font-size: 14px !important;
    margin-bottom: 0 !important;
}

/* ========================================
   REVIEWS SECTION
======================================== */
.reviews,
.stead-page .reviews {
    padding: var(--section-padding) !important;
    background-color: var(--white) !important;
}

.reviews-grid,
.stead-page .reviews-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 32px !important;
}

.review-card,
.stead-page .review-card {
    padding: 32px !important;
    background-color: var(--secondary-cream) !important;
    border-radius: 8px !important;
    text-align: center !important;
}

.stars,
.stead-page .stars {
    display: flex !important;
    justify-content: center !important;
    gap: 4px !important;
    margin-bottom: 20px !important;
}

.stars svg {
    width: 20px !important;
    height: 20px !important;
    fill: var(--gold-accent) !important;
}

.review-card blockquote {
    font-family: var(--font-heading) !important;
    font-style: italic !important;
    font-size: 16px !important;
    color: var(--dark-text) !important;
    line-height: 1.7 !important;
    margin-bottom: 20px !important;
    border: none !important;
    padding: 0 !important;
    background: none !important;
}

.review-card cite {
    font-style: normal !important;
    font-weight: 600 !important;
    color: var(--primary-green) !important;
    font-size: 14px !important;
}

/* ========================================
   FAQ SECTION
======================================== */
.faq,
.stead-page .faq {
    padding: var(--section-padding) !important;
    background-color: var(--secondary-cream) !important;
}

.faq-list,
.stead-page .faq-list {
    max-width: 800px !important;
    margin: 0 auto !important;
}

.faq-item,
.stead-page .faq-item {
    border-bottom: 1px solid var(--tertiary-tan) !important;
}

.faq-question,
.stead-page .faq-question {
    width: 100% !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 24px 0 !important;
    background: none !important;
    border: none !important;
    cursor: pointer !important;
    font-family: var(--font-body) !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    color: var(--dark-text) !important;
    text-align: left !important;
    transition: color 0.3s ease !important;
}

.faq-question:hover {
    color: var(--primary-green) !important;
}

.faq-question svg {
    width: 24px !important;
    height: 24px !important;
    stroke: var(--primary-green) !important;
    stroke-width: 2 !important;
    fill: none !important;
    transition: transform 0.3s ease !important;
}

.faq-item.active .faq-question svg {
    transform: rotate(45deg) !important;
}

.faq-answer,
.stead-page .faq-answer {
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 0.3s ease, padding 0.3s ease !important;
}

.faq-item.active .faq-answer {
    max-height: 200px !important;
    padding-bottom: 24px !important;
}

.faq-answer p {
    font-size: 15px !important;
}

/* ========================================
   ABOUT SECTION
======================================== */
.about,
.stead-page .about {
    padding: var(--section-padding) !important;
    background-color: var(--white) !important;
}

.about .container {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 80px !important;
    align-items: center !important;
}

.about-image,
.stead-page .about-image {
    position: relative !important;
}

.about-image img {
    border-radius: 8px !important;
    box-shadow: 0 20px 60px rgba(47, 80, 79, 0.15) !important;
}

.about-image::before {
    content: '' !important;
    position: absolute !important;
    bottom: -20px !important;
    left: -20px !important;
    width: 100% !important;
    height: 100% !important;
    background-color: var(--tertiary-tan) !important;
    border-radius: 8px !important;
    z-index: -1 !important;
}

.about-content h2 {
    margin-bottom: 24px !important;
}

.about-content > p {
    margin-bottom: 24px !important;
}

.credentials-list,
.stead-page .credentials-list {
    margin-top: 32px !important;
}

.credentials-list li {
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
    margin-bottom: 12px !important;
    font-size: 15px !important;
    color: var(--dark-text) !important;
    list-style: none !important;
    padding-left: 0 !important;
}

.credentials-list li::before {
    display: none !important;
}

.credentials-list svg {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    stroke: var(--primary-green) !important;
    stroke-width: 2.5 !important;
    fill: none !important;
    margin-top: 2px !important;
}

/* ========================================
   CONTACT SECTION
======================================== */
.contact,
.stead-page .contact {
    padding: var(--section-padding) !important;
    background-color: var(--secondary-cream) !important;
}

.contact .container {
    display: grid !important;
    grid-template-columns: 1.2fr 1fr !important;
    gap: 60px !important;
}

.contact-form-wrapper h2 {
    margin-bottom: 8px !important;
}

.contact-form-wrapper > p {
    margin-bottom: 32px !important;
}

.contact-form,
.stead-page .contact-form {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 20px !important;
}

.form-group,
.stead-page .form-group {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

.form-group.full-width {
    grid-column: 1 / -1 !important;
}

.form-group label {
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--dark-text) !important;
}

.form-group input,
.form-group select,
.form-group textarea,
.stead-page input,
.stead-page select,
.stead-page textarea {
    padding: 14px 16px !important;
    font-family: var(--font-body) !important;
    font-size: 15px !important;
    border: 1px solid var(--tertiary-tan) !important;
    border-radius: 4px !important;
    background-color: var(--white) !important;
    transition: border-color 0.3s ease, box-shadow 0.3s ease !important;
    width: 100% !important;
    color: var(--dark-text) !important;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus,
.stead-page input:focus,
.stead-page select:focus,
.stead-page textarea:focus {
    outline: none !important;
    border-color: var(--primary-green) !important;
    box-shadow: 0 0 0 3px rgba(47, 80, 79, 0.1) !important;
}

.form-group textarea {
    resize: vertical !important;
    min-height: 120px !important;
}

.contact-form .btn {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    padding: 16px !important;
    font-size: 15px !important;
}

.contact-info,
.stead-page .contact-info {
    padding: 40px !important;
    background-color: var(--white) !important;
    border-radius: 8px !important;
    height: fit-content !important;
}

.contact-info h3 {
    margin-bottom: 24px !important;
}

.contact-info address {
    font-style: normal !important;
    margin-bottom: 24px !important;
}

.contact-info p {
    margin-bottom: 8px !important;
}

.contact-info .phone {
    font-weight: 600 !important;
    color: var(--primary-green) !important;
    font-size: 18px !important;
}

.contact-info .phone a {
    color: var(--primary-green) !important;
}

.contact-info .phone a:hover {
    color: #243d3c !important;
}

.contact-map,
.stead-page .contact-map {
    margin-top: 24px !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    height: 160px !important;
    background-color: var(--secondary-cream) !important;
}

.contact-map img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

/* ========================================
   FOOTER
======================================== */
.footer,
.stead-page .footer {
    padding: 40px 0 !important;
    background-color: var(--primary-green) !important;
    text-align: center !important;
}

.footer p {
    color: var(--white) !important;
    margin-bottom: 4px !important;
    font-size: 14px !important;
}

.footer .firm-name {
    font-family: var(--font-heading) !important;
    font-size: 18px !important;
    margin-bottom: 8px !important;
    color: var(--white) !important;
}

/* ========================================
   RESPONSIVE - TABLET (below 1024px)
   Single columns for all grids
======================================== */
@media (max-width: 1024px) {
    
    /* Hero Section */
    .hero .container {
        flex-direction: column !important;
        text-align: center !important;
    }
    
    .hero-content {
        max-width: 100% !important;
    }
    
    .hero-badges {
        justify-content: center !important;
    }
    
    .hero-buttons {
        justify-content: center !important;
    }
    
    .hero-image {
        display: none !important;
    }
    
    .hero-image::before {
        display: none !important;
    }
    
    /* Built For Section - Single Column */
    .built-for-grid,
    .stead-page .built-for-grid {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
    }
    
    /* Services Section - Single Column */
    .services-grid,
    .stead-page .services-grid {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }
    
    /* How It Works - Single Column */
    .steps-grid,
    .stead-page .steps-grid {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }
    
    /* Why Stead Features - Single Column */
    .features-grid,
    .stead-page .features-grid {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }
    
    /* Reviews - Single Column */
    .reviews-grid,
    .stead-page .reviews-grid {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
        max-width: 500px !important;
        margin: 0 auto !important;
    }
    
    /* About Section - Single Column */
    .about .container {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
    }
    
    .about-image {
        order: -1 !important;
        max-width: 500px !important;
        margin: 0 auto !important;
    }
    
    .about-image::before {
        display: none !important;
    }
    
    /* Contact Section - Single Column */
    .contact .container {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
    }
    
    /* Contact Form - Single Column */
    .contact-form,
    .stead-page .contact-form {
        grid-template-columns: 1fr !important;
    }
    
    .form-group.full-width {
        grid-column: 1 !important;
    }
    
    /* Section padding reduction */
    .built-for,
    .stead-page .built-for,
    .services,
    .stead-page .services,
    .how-it-works,
    .stead-page .how-it-works,
    .why-stead,
    .stead-page .why-stead,
    .reviews,
    .stead-page .reviews,
    .faq,
    .stead-page .faq,
    .about,
    .stead-page .about,
    .contact,
    .stead-page .contact {
        padding: 60px 0 !important;
    }
}

/* ========================================
   RESPONSIVE - MOBILE (below 768px)
   Additional mobile-specific adjustments
======================================== */
@media (max-width: 767px) {
    
    /* Hero adjustments */
    .hero {
        padding: 60px 0 40px !important;
    }
    
    .hero h1 {
        font-size: 1.75rem !important;
    }
    
    .hero-text {
        font-size: 15px !important;
    }
    
    .hero-buttons {
        flex-direction: column !important;
        width: 100% !important;
    }
    
    .hero-buttons .btn {
        width: 100% !important;
        text-align: center !important;
    }
    
    /* Typography adjustments */
    h1, 
    .stead-page h1 {
        font-size: 1.75rem !important;
    }
    
    h2, 
    .stead-page h2 {
        font-size: 1.5rem !important;
    }
    
    h3, 
    .stead-page h3 {
        font-size: 1.15rem !important;
    }
    
    /* Section padding */
    .built-for,
    .stead-page .built-for,
    .services,
    .stead-page .services,
    .how-it-works,
    .stead-page .how-it-works,
    .why-stead,
    .stead-page .why-stead,
    .reviews,
    .stead-page .reviews,
    .faq,
    .stead-page .faq,
    .about,
    .stead-page .about,
    .contact,
    .stead-page .contact {
        padding: 50px 0 !important;
    }
    
    /* Step numbers smaller */
    .step-number,
    .stead-page .step-number {
        font-size: 3.5rem !important;
    }
    
    /* Feature cards stack */
    .feature,
    .stead-page .feature {
        flex-direction: column !important;
        text-align: center !important;
    }
    
    .feature-icon,
    .stead-page .feature-icon {
        margin: 0 auto 16px !important;
    }
    
    /* Contact info */
    .contact-info,
    .stead-page .contact-info {
        padding: 24px !important;
    }
    
    /* Section header spacing */
    .section-header,
    .stead-page .section-header {
        margin-bottom: 40px !important;
    }
}/* End custom CSS */