/* ==========================================================
   BRAND COLOR VARIABLES
   #DF4924  → primary  (orange-red)
   #e9e9e9  → dark     (warm charcoal)
   #ffffff  → white
========================================================== */
:root {
    --color-primary      : #DF4924;   /* brand orange-red        */
    --color-primary-dark : #c23d1a;   /* hover / darker shade    */
    --color-primary-light: #f2633d;   /* lighter tint            */
    --color-dark         : #e9e9e9;   /* warm charcoal           */
    --color-dark-deep    : #3a3836;   /* deeper charcoal variant */
    --color-white        : #ffffff;   /* pure white              */
    --color-topbar-bg    : #e9e9e9;   /* topbar uses dark color  */
    --color-nav-bg       : #ffffff;   /* navbar background white */
    --header-nav-height  : 82px;
    --font-base          : 'DM Sans', sans-serif;
}


:root {
    --red: #df4924;
    --red-dark: #c23d1e;
    --red-light: #f5f0ee;
    --gray: #000000;
    --gray-dark: #2c2b2a;
    --gray-mid: #000000;
    --gray-light: #9b9896;
    --gray-pale: #e9e9e9;
    --border: #e8e6e4;
    --white: #ffffff;
    --black: #000000;
}

*,
*::before,
*::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    overflow-x: hidden;
    scroll-behavior: smooth;
}

body {
    margin: 0;
    padding: 0;
    font-family: "DM Sans", sans-serif;
    background-color: #fff;
    overflow-x: hidden;
    max-width: 100%;
}
a {
    text-decoration: none !important;
}


/* ==========================================================
   HEADER  (parent: .header)
========================================================== */
.header {
    position : sticky;
    top      : 0;
    z-index  : 1000;
    width    : 100%;
}

.header-main .main-menu ul li.has-dropdown > a::after {
    content: "\f078"; /* FontAwesome down arrow */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    margin-left: 6px;
    font-size: 18px;
    transition: 0.3s;
}

.header-main .main-menu ul li:hover > a::after {
    transform: rotate(180deg);
}

/* Default hidden */
.header-main .main-menu ul li .dropdown {
    display: none;
}

/* Show when open class added */
.header-main .main-menu ul li.open .dropdown {
    display: block;
    position: relative;
    box-shadow: none;
}


/* ----------------------------------------------------------
   HEADER > TOP-BAR   (.header__topbar)
   Background: #e9e9e9  |  Text/icons: #ffffff
   Accent icon / hover:  #DF4924
---------------------------------------------------------- */
.header-top-section {
    background-color: #DF4924;
    padding: 0px 0px;
    position: relative;
}

@media (max-width: 1199px) {
    .header-top-section {
        display: none;
    }
}

@media (max-width: 1899px) {
    .header-top-section::before {
        display: none;
    }
}

.header-top-section.top-style-2 {
    position: relative;
}

.header-top-section.top-style-2::before {
    display: none;
}

.header-top-section.top-style-2::after {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    content: "";
    background-color: var(--theme);
    width: 16%;
}

@media (max-width: 1899px) {
    .header-top-section.top-style-2::after {
        display: none;
    }
}

.header-top-section.top-style-3::before {
    display: none;
}

.header-top-section .container-fluid {
    padding: 0 130px;
}

@media (max-width: 1399px) {
    .header-top-section .container-fluid {
        padding: 0 50px;
    }
}

.header-top-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 0px;
}

.header-top-wrapper .contact-list {
    display: flex;
    align-items: center;
    gap: 25px;
    margin-bottom: 0px;
}

.header-top-wrapper .contact-list li {
    font-size: 18px;
    color: var(--text-2);
}

.header-top-wrapper .contact-list li a{
    color: #FFFFFF;
    text-decoration: none;
    font-size: 16px;
    font-weight: 500;
}

.header-top-wrapper .contact-list li{
    list-style: none;
}

.header-top-wrapper .contact-list li i {
    color: #fff;
    margin-left: 0px !important;
    font-size: 16px;
}

.header-top-wrapper .top-right {
    display: flex;
    align-items: center;
    gap: 10px;
}

.header-top-wrapper .top-right .social-icon {
    gap: 15px;
}

.header-top-wrapper .top-right .social-icon span {
    color: var(--white);
    font-weight: 500;
}

.header-top-wrapper .top-right .social-icon a {
    color: var(--white);
}

.header-top-wrapper .top-right .flag-wrap {
    position: relative;
    width: 160px;
}

.header-top-wrapper .top-right .flag-wrap .nice-select {
    padding: 0 0 0 60px;
    background: transparent;
    border: none;
    text-align: center;
    margin: 0 auto;
    position: relative;
    z-index: 999;
    border: none !important;
    padding-bottom: 0 !important;
}

.header-top-wrapper .top-right .flag-wrap .nice-select::after {
    right: 23px;
    border-bottom: 2px solid transparent;
    border-right: 2px solid transparent;
    width: 10px;
    height: 10px;
    top: 15px;
    border-bottom: 2px solid transparent;
    border-color: var(--theme);
    border-right: 2px solid theme-color;
}

.header-top-wrapper .top-right .flag-wrap .nice-select span {
    font-size: 16px;
    font-weight: 500;
    text-transform: capitalize;
    color: var(--white);
}

.header-top-wrapper .top-right .flag-wrap .flag {
    position: absolute;
    top: 0;
    left: 15px;
    z-index: 1;
}

@media (max-width: 767px) {
    .header-top-wrapper .top-right .flag-wrap .flag {
        display: none;
    }
}

.header-top-wrapper .top-right .flag-wrap .flag img {
    width: 100%;
    height: 100%;
    border: 4px solid var(--white);
    border-radius: 50%;
}

.header-top-wrapper.style-2 {
    margin-left: 250px;
}

@media (max-width: 1899px) {
    .header-top-wrapper.style-2 {
        margin-left: 0;
    }
}

.header-section-2 {
    position: relative;
}

.header-section-2::before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    content: "";
    background-color: var(--theme);
    width: 16%;
}

@media (max-width: 1899px) {
    .header-section-2::before {
        display: none;
    }
}

.header-main {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 5px 0;
}

.header-main .main-menu ul {
    margin-bottom: 0;
}

.header-main .main-menu ul li {
    position: relative;
    list-style: none;
    display: inline-block;
    margin-inline-end: 30px;
}

.header-main .main-menu ul li:last-child {
    margin-inline-end: 0;
}

.header-main .main-menu ul li a {
    display: inline-block;
    font-size: 16px;
    font-weight: 600;
    color: var(--header);
    padding: 20px 0;
    text-align: left;
    position: relative;
    text-transform: capitalize;
    transition: all 0.4s ease-in-out;
    text-decoration: none;
}


/* Add arrow for dropdown items */
.header-main .main-menu ul li.has-dropdown>a::after {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    margin-left: 8px;
    background-size: contain;
    background: url("../images/down-arrow.png") no-repeat center center;
    background-size: contain;
    transition: transform 0.3s ease;
}

/* Rotate arrow when hovered */
.header-main .main-menu ul li.has-dropdown:hover>a::after {
    transform: rotate(180deg);
}

.header-main .main-menu ul li .dropdown a {
    padding: 10px 15px;
}

.header-main .main-menu ul .dropdown li {
    margin-inline-end: unset;
}

/* Rotate arrow when open */
.header-main .main-menu ul li.has-dropdown.open>a::after {
    transform: rotate(180deg);
}

/* Dropdown menu hidden by default */
.header-main .main-menu ul li .dropdown {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 200px;
    background: #fff;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15);
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all 0.3s ease;
    z-index: 999;
}

.header-main .main-menu ul li.has-dropdown:hover .dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    display: block;
    padding-left: 0;
}


/* Show dropdown when parent has class "open" */
.header-main .main-menu ul li.open .dropdown {
    display: block;
}


.header-main .main-menu ul li a:hover {
    color: #DF4924 !important;
}

.header-main .main-menu ul li .submenu {
    position: absolute;
    top: 100%;
    inset-inline-start: 0;
    min-width: 240px;
    background: var(--white);
    z-index: 99999;
    visibility: hidden;
    opacity: 0;
    transform-origin: top center;
    color: var(--header);
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.2);
    transform: translateY(10px);
    transition: all 0.4s ease-in-out;
}

.header-main .main-menu ul li .submenu li {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
}

.header-main .main-menu ul li .submenu li a {
    position: relative;
    z-index: 11;
    font-size: 16px;
    font-weight: 600;
    color: var(--header);
    padding: 0 25px;
    padding-bottom: 11px;
    padding-top: 11px;
    width: 100%;
    border-bottom: 1px solid #eeeeee;
}

.header-main .main-menu ul li .submenu li:last-child a {
    border: none;
}

.header-main .main-menu ul li .submenu li .submenu {
    inset-inline-start: 100%;
    top: 0;
    visibility: hidden;
    opacity: 0;
}

.header-main .main-menu ul li .submenu li:hover>a {
    background: #009a4e;
    color: var(--white) !important;
}

.header-main .main-menu ul li .submenu li:hover>a::after {
    color: var(--theme2);
}

.header-main .main-menu ul li .submenu li:hover>.submenu {
    -webkit-transform: translateY(1);
    -moz-transform: translateY(1);
    -ms-transform: translateY(1);
    -o-transform: translateY(1);
    transform: translateY(1);
    visibility: visible;
    opacity: 1;
}

.header-main .main-menu ul li .submenu li.has-dropdown>a::after {
    position: absolute;
    top: 50%;
    inset-inline-end: 25px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    color: var(--theme);
}

.header-main .main-menu ul li .has-homemenu {
    width: 1000px;
    padding: 30px 30px 10px 30px;
    opacity: 0;
    left: -250px;
    visibility: hidden;
    padding: 30px 30px 10px 30px;
}

.header-main .main-menu ul li .has-homemenu .homemenu-items {
    display: flex;
    align-items: center;
    gap: 30px;
    justify-content: space-between;
}

@media (max-width: 1199px) {
    .header-main .main-menu ul li .has-homemenu .homemenu-items {
        flex-wrap: wrap;
    }
}

.header-main .main-menu ul li .has-homemenu .homemenu-items .homemenu {
    position: relative;
}

.header-main .main-menu ul li .has-homemenu .homemenu-items .homemenu .homemenu-thumb {
    position: relative;
}

.header-main .main-menu ul li .has-homemenu .homemenu-items .homemenu .homemenu-thumb .demo-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 60%;
    gap: 10px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s ease-in-out;
    margin-top: 20px;
}

.header-main .main-menu ul li .has-homemenu .homemenu-items .homemenu .homemenu-thumb .demo-button .theme-btn {
    padding: 14px 20px;
    color: var(--white) !important;
    width: initial;
    font-size: 18px;
    text-align: center;
}

.header-main .main-menu ul li .has-homemenu .homemenu-items .homemenu .homemenu-thumb .demo-button .theme-btn:hover {
    color: var(--white) !important;
}

.header-main .main-menu ul li .has-homemenu .homemenu-items .homemenu .homemenu-thumb::before {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(91, 155, 55, 0)), to(#5B9B37));
    background: linear-gradient(to bottom, rgba(91, 155, 55, 0) 0%, #5B9B37 100%);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    overflow: hidden;
    opacity: 0;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    content: "";
}

.header-main .main-menu ul li .has-homemenu .homemenu-items .homemenu .homemenu-thumb:hover::before {
    visibility: visible;
    opacity: 1;
}

.header-main .main-menu ul li .has-homemenu .homemenu-items .homemenu .homemenu-thumb:hover .demo-button {
    opacity: 1;
    visibility: visible;
    margin-top: 0;
}

.header-main .main-menu ul li .has-homemenu .homemenu-items .homemenu .homemenu-thumb:hover .homemenu-btn {
    opacity: 1;
    visibility: visible;
    bottom: 50%;
    transform: translateY(50%);
}

.header-main .main-menu ul li .has-homemenu .homemenu-items .homemenu .homemenu-thumb img {
    width: 100%;
}

.header-main .main-menu ul li .has-homemenu .homemenu-items .homemenu .homemenu-title {
    text-align: center;
    margin: 15px auto;
    display: inline-block;
    font-size: 16px;
}

.header-main .main-menu ul li:hover>a {
    color: var(--theme2);
}

.header-main .main-menu ul li:hover>a::after {
    color: var(--theme);
}

.header-main .main-menu ul li:hover>.submenu {
    visibility: visible;
    opacity: 1;
    transform: translateY(0px);
}

.header-main .sidebar__toggle {
    cursor: pointer;
    font-size: 20px;
}

.header-1 {
    position: relative;
}


@media (max-width: 1899px) {
    .header-1::before {
        display: none !important;
    }
}

.header-1 .container-fluid {
    padding: 0 80px;
    /* background-color: #fff; */
}

@media (max-width: 1399px) {
    .header-1 .container-fluid {
        padding: 0 50px;
    }
}

@media (max-width: 1199px) {
    .header-1 .container-fluid {
        padding: 0 15px;
    }
}

@media (max-width: 575px) {
    .header-1 .container-fluid {
        padding: 0 10px;
    }
}

@media screen and (max-width: 1025px) {
    .header-1 .header-main .main-menu ul li {
        margin-inline-end: 25px;
    }
}

.header-1 .header-main .main-menu ul li .has-homemenu {
    left: -400px;
}

@media (max-width: 1600px) {
    .header-1 .header-main .main-menu ul li .has-homemenu {
        left: -300px;
    }
}

.header-1 .header-main .header-right {
    /*    gap: 50px;*/
}

@media (max-width: 1199px) {
    .header-1 .header-main .header-right {
        gap: 25px;
    }
}

.header-1 .header-main .header-right .search-icon {
    color: var(--header);
}

.header-1 .header-main .header-right .header-button {
    margin-right: 50px;
}

.header-1 .header-main .header-right .header-button .theme-btn {
    padding: 15px 20px;
}

.header__actions {
    display: inline-flex;
    align-items: center;
    gap: 20px;
}

.header__actions-phone {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
}

.header__actions-phone-icon {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #DF4924;
    font-size: 16px;
    flex-shrink: 0;
    box-shadow: 0 4px 14px rgba(223,73,36,.35);
    animation: phoneRing 2.8s infinite;
}


.header__actions-phone-icon i{
    transform: rotate(90deg);
}

@keyframes phoneRing {
    0%,50%,100% {
        transform: rotate(0);
    }
    10%          {
        transform: rotate(-18deg);
    }
    20%          {
        transform: rotate(18deg);
    }
    30%          {
        transform: rotate(-12deg);
    }
    40%          {
        transform: rotate(12deg);
    }
}

.header__actions-phone-number {
    font-size: 26px;
    font-weight: 700;
    color: #fff;
    white-space: nowrap;
}

.header__actions-quote {
    display: inline-flex;
    align-items: center;
    background: #DF4924;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    padding: 11px 22px;
    border-radius: 12px;
    white-space: nowrap;
    text-decoration: none;
    box-shadow: 0 4px 16px rgba(223,73,36,.35);
    transition: background .25s, transform .2s;
}

.header__actions-quote:hover {
    background: #DF4924;
    transform: translateY(-2px);
}

@media (max-width: 1899px) {
    .header-1 .header-main .header-right .header-button {
        margin-right: 0;
    }
}

@media (max-width: 1600px) {
    .header-1 .header-main .header-right .header-button {
        display: none;
    }
}

.header-1 .header-main .header-right .header__hamburger {
    margin-right: -70px;
    display: none !important;
}

@media (max-width: 1899px) {
    .header-1 .header-main .header-right .header__hamburger {
        margin-right: 0;
    }
}

.header-1 .header-main .header-right .header__hamburger .sidebar__toggle {
    font-size: 24px;
    color: var(--white);
}

@media (max-width: 1899px) {
    .header-1 .header-main .header-right .header__hamburger .sidebar__toggle {
        color: var(--theme);
    }
}

.header-2 .container-fluid {
    padding: 0 100px;
}

@media (max-width: 1899px) {
    .header-2 .container-fluid {
        padding: 0 50px;
    }
}

@media (max-width: 1399px) {
    .header-2 .container-fluid {
        padding: 0 40px;
    }
}

@media (max-width: 1199px) {
    .header-2 .container-fluid {
        padding: 0 30px;
    }
}

.header-2 .header-left {
    display: flex;
    align-items: center;
    gap: 50px;
}

.header-2 .header-right {
    gap: 40px;
}

.header-2 .header-right .icon-items {
    display: flex;
    align-items: center;
    gap: 10px;
}

@media (max-width: 1399px) {
    .header-2 .header-right .icon-items {
        display: none;
    }
}

@media (max-width: 1199px) {
    .header-2 .header-right .header-button {
        display: none;
    }
}

.header-3 {
    position: relative;
}

.header-3::before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    content: "";
    background-color: var(--theme);
    left: 72%;
}

@media (max-width: 1600px) {
    .header-3::before {
        display: none;
    }
}

.header-3 .plane-shape {
    position: absolute;
    bottom: 0;
    left: 0;
    display: none;
}

@media (max-width: 1899px) {
    .header-3 .plane-shape {
        display: none;
    }
}

@media screen and (max-width: 1025px) {
    .header-3 .header-main .main-menu ul li {
        margin-inline-end: 25px;
    }
}

.header-3 .header-main .main-menu ul li .has-homemenu {
    left: -400px;
}

@media (max-width: 1600px) {
    .header-3 .header-main .main-menu ul li .has-homemenu {
        left: -300px;
    }
}

@media screen and (max-width: 1025px) {
    .header-3 .header-main .main-menu ul li .has-homemenu {
        left: -350px;
    }
}

.header-3 .header-main .header-right {
    gap: 50px;
}

@media (max-width: 1199px) {
    .header-3 .header-main .header-right {
        gap: 25px;
    }
}

.header-3 .header-main .header-right .search-icon {
    color: var(--header);
}

.header-3 .header-main .header-right .header-button {
    margin-left: 60px;
    position: relative;
}

.header-3 .header-main .header-right .header-button::before {
    width: 0px;
    height: 0px;
    border-top: 65px solid var(--theme);
    border-right: 65px solid transparent;
    content: "";
    left: -68px;
    position: absolute;
    bottom: -2%;
    transform: rotate(-45deg);
    z-index: 9;
    overflow: hidden;
}

@media (max-width: 1600px) {
    .header-3 .header-main .header-right .header-button::before {
        display: none;
    }
}

.header-3 .header-main .header-right .header-button .theme-btn {
    padding: 22px 30px;
}

@media (max-width: 1899px) {
    .header-3 .header-main .header-right .header-button .theme-btn {
        background-color: var(--theme) !important;
        color: var(--white);
    }
}

@media (max-width: 1899px) {
    .header-3 .header-main .header-right .header-button {
        margin-left: 0;
    }
}

@media (max-width: 1199px) {
    .header-3 .header-main .header-right .header-button {
        display: none;
    }
}

.header-4 .container-fluid {
    padding: 0 250px;
}

@media (max-width: 1899px) {
    .header-4 .container-fluid {
        padding: 0 50px;
    }
}

@media (max-width: 1399px) {
    .header-4 .container-fluid {
        padding: 0 40px;
    }
}

@media (max-width: 1199px) {
    .header-4 .container-fluid {
        padding: 0 30px;
    }
}

.header-4 .header-left {
    display: flex;
    align-items: center;
    gap: 50px;
}

.header-4 .header-right {
    gap: 40px;
}

.header-4 .header-right .icon-items {
    display: flex;
    align-items: center;
    gap: 10px;
}

@media (max-width: 1399px) {
    .header-4 .header-right .icon-items {
        display: none;
    }
}

@media (max-width: 1199px) {
    .header-4 .header-right .header-button {
        display: none;
    }
}

.header-top-section-22 {
    background-color: var(--header);
    padding: 10px 0;
}

@media (max-width: 1199px) {
    .header-top-section-22 {
        display: none;
    }
}

.header-top-section-22 .container-fluid {
    padding: 0 100px;
}

@media (max-width: 1899px) {
    .header-top-section-22 .container-fluid {
        padding: 0 50px;
    }
}

@media (max-width: 1399px) {
    .header-top-section-22 .container-fluid {
        padding: 0 40px;
    }
}

@media (max-width: 1199px) {
    .header-top-section-22 .container-fluid {
        padding: 0 30px;
    }
}

.header-top-section-4 {
    background-color: var(--theme);
    padding: 10px 0;
}

@media (max-width: 1199px) {
    .header-top-section-4 {
        display: none;
    }
}

.header-top-section-4 .container-fluid {
    padding: 0 250px;
}

@media (max-width: 1899px) {
    .header-top-section-4 .container-fluid {
        padding: 0 50px;
    }
}

@media (max-width: 1399px) {
    .header-top-section-4 .container-fluid {
        padding: 0 40px;
    }
}

@media (max-width: 1199px) {
    .header-top-section-4 .container-fluid {
        padding: 0 30px;
    }
}

.header-top-section-4 .contact-list li {
    color: var(--white);
}

.header-top-section-4 .contact-list li a {
    color: #009a4e;
}

.header-shape {
    position: absolute;
    top: 0px;
    left: -40px;
    width: 20%;
    height: 100%;
    background-color: #f7f4f4;
    -webkit-transform: skew(-30deg);
    -khtml-transform: skew(-30deg);
    -moz-transform: skew(-30deg);
    -ms-transform: skew(-30deg);
    -o-transform: skew(-30deg);
    transform: skew(-30deg);
    z-index: 99;
}

.header-top-section,
.header-top-section .container-fluid,
.logo,
.contact-info {
    position: relative;
    /* z-index: 2; */
}

@media (max-width: 1199px) {
    .header-shape {
        display: none;
    }
}

.header-top-wrapper .top-left .by-default-logo {
    position: absolute;
    top: 35%;
    z-index: 9999999 !important;
}

.by-default-logo {
    display: block;
}

.scroll-logo {
    display: none;
}

/*.header-1.sticky .by-default-logo {
    display: none;
}*/

.header-1.sticky .scroll-logo {
    display: none;
}



/* ==========================================================
   HOME BANNER  (parent: .home-banner)
========================================================== */
.home-banner {
    position   : relative;
    width      : 100%;
    margin: 100px 0px;
    height: 100vh;
    overflow   : hidden;
}


/* ----------------------------------------------------------
   HOME BANNER > SLIDE   (.home-banner__slide)
---------------------------------------------------------- */
.home-banner__slide {
    position    : absolute;
    inset       : 0;
    opacity     : 0;
    display     : flex;
    align-items : center;
    transition  : opacity .85s ease;
}
.home-banner__slide.is-active {
    opacity: 1;
}

/* Background image layer */
.home-banner__slide-bg {
    position            : absolute;
    inset               : 0;
    background-size     : cover;
    background-position : center top;
    z-index             : 0;
    transform           : scale(1);
    transition          : transform 8s ease;
}
.home-banner__slide.is-active .home-banner__slide-bg {
    transform: scale(1.06);
}

/* Dark overlay — charcoal tinted */
.home-banner__slide-overlay {
    position   : absolute;
    inset      : 0;
    background : #000000a6;
    z-index    : 1;
}

/* Per-slide background images */
.home-banner__slide--1 .home-banner__slide-bg {
    background-image: url('../images/banner2.jpg');
}
.home-banner__slide--2 .home-banner__slide-bg {
    background-image: url('../images/banner2.jpg');
}
.home-banner__slide--3 .home-banner__slide-bg {
    background-image: url('../images/banner2.jpg');
}


/* ----------------------------------------------------------
   HOME BANNER > SLIDE > CONTENT WRAPPER
   Uses Bootstrap container inside for text alignment
---------------------------------------------------------- */
.home-banner__slide-container {
    position  : relative;
    z-index   : 2;
    width     : 100%;
}

/* Content box (max-width + padding) */
.home-banner__slide-content {
    max-width : 640px;
    padding   : 0 15px;
}

/* Badge — border: #ffffff | text: #ffffff | bg: subtle white */
.home-banner__slide-badge {
    display         : inline-block;
    border          : 1.5px solid rgba(255,255,255,.50);
    border-radius   : 30px;
    padding         : 7px 20px;
    font-size       : 19px;
    color           : var(--color-white);      /* #ffffff */
    margin-bottom   : 22px;
    letter-spacing  : .5px;
    backdrop-filter : blur(6px);
    background      : rgba(255,255,255,.10);
    opacity         : 0;
    transform       : translateY(25px);
    transition      : opacity .6s .10s, transform .6s .10s;
}

/* Title — #ffffff with accent #DF4924 */
.home-banner__slide-title {
    font-size      : 61px;
    font-weight    : 500;
    color          : var(--color-white);       /* #ffffff */
    line-height    : 1.12;
    margin-bottom  : 20px;
    letter-spacing : -1px;
    opacity        : 0;
    transform      : translateY(25px);
    transition     : opacity .6s .26s, transform .6s .26s;
}

.home-banner__slide-title-accent {
    color      : var(--color-primary);         /* #DF4924 */
    font-style : normal;
}

/* Description — rgba white */
.home-banner__slide-desc {
    font-size     : 18px;
    color         : #fff;
    line-height   : 1.78;
    margin-bottom : 34px;
    max-width     : 520px;
    opacity       : 0;
    transform     : translateY(25px);
    transition    : opacity .6s .42s, transform .6s .42s;
}

/* CTA Button — bg: #DF4924  |  text: #ffffff */
.home-banner__slide-btn {
    display       : inline-flex;
    align-items   : center;
    gap           : 10px;
    background    : var(--color-primary);      /* #DF4924 */
    color         : var(--color-white);        /* #ffffff */
    font-size     : 16px;
    font-weight   : 600;
    padding       : 13px 30px;
    border-radius : 6px;
    box-shadow    : 0 6px 24px rgba(223,73,36,.45);
    letter-spacing: .3px;
    text-decoration: none;
    opacity       : 0;
    transform     : translateY(25px);
    transition    : opacity .6s .58s, transform .6s .58s,
        background .25s, box-shadow .25s;
}
.home-banner__slide-btn:hover {
    background : var(--color-primary-dark);
    transform  : translateY(-2px);
    box-shadow : 0 10px 32px rgba(223,73,36,.52);
    color      : var(--color-white);
}

.home-banner__slide-btn-icon {
    font-size: 18px;
}

/* Animate in when slide becomes active */
.home-banner__slide.is-active .home-banner__slide-badge,
.home-banner__slide.is-active .home-banner__slide-title,
.home-banner__slide.is-active .home-banner__slide-desc,
.home-banner__slide.is-active .home-banner__slide-btn {
    opacity   : 1;
    transform : translateY(0);
}


/* ----------------------------------------------------------
   HOME BANNER > ARROW   (.home-banner__arrow)
   Hover: bg #DF4924 | border #DF4924 | icon #ffffff
---------------------------------------------------------- */
.home-banner__arrow {
    position        : absolute;
    top             : 50%;
    transform       : translateY(-50%);
    z-index         : 10;
    width           : 50px;
    height          : 50px;
    background      : rgba(255,255,255,.12);
    border          : 1.5px solid rgba(255,255,255,.40);
    border-radius   : 50%;
    color           : var(--color-white);      /* #ffffff */
    font-size       : 18px;
    display         : flex;
    align-items     : center;
    justify-content : center;
    cursor          : pointer;
    backdrop-filter : blur(6px);
    transition      : background .25s, border-color .25s, transform .25s;
}
.home-banner__arrow:hover {
    background   : var(--color-primary);       /* #DF4924 */
    border-color : var(--color-primary);
    transform    : translateY(-50%) scale(1.08);
}
.home-banner__arrow--prev {
    left : 22px;
}
.home-banner__arrow--next {
    right: 22px;
}


/* ----------------------------------------------------------
   HOME BANNER > DOTS   (.home-banner__dots)
   Active dot: #DF4924  |  Inactive: rgba white
---------------------------------------------------------- */
.home-banner__dots {
    position  : absolute;
    bottom    : 28px;
    left      : 50%;
    transform : translateX(-50%);
    display   : flex;
    gap       : 10px;
    z-index   : 10;
}

.home-banner__dot {
    width         : 10px;
    height        : 10px;
    background    : rgba(255,255,255,.40);
    border        : 1.5px solid rgba(255,255,255,.55);
    border-radius : 50%;
    cursor        : pointer;
    transition    : background .3s, transform .3s, border-color .3s;
}
.home-banner__dot.is-active {
    background   : var(--color-primary);       /* #DF4924 */
    border-color : var(--color-primary);
    transform    : scale(1.30);
}

.header-logo img{
}

/* ==========================================================
   RESPONSIVE BREAKPOINTS
========================================================== */

/* Tablet  ≤ 991px */
@media (max-width: 1199px) {
    .header__nav             {
        display: none;
    }
    .header__actions         {
        display: none;
    }
    .header__hamburger       {
        display: flex;
    }
    .header__mobile-menu     {
        display: block;
    }

    .header__logo {
        min-width : auto;
        clip-path : none;
        padding   : 0 20px;
    }
    .header__logo-triangle {
        display: none;
    }
}

/* Mobile  ≤ 576px */
@media (max-width: 576px) {
    :root {
        --header-nav-height: 66px;
    }

    .header__topbar-email-text  {
        display: none;
    }
    .header__topbar-social      {
        gap: 12px;
    }

    .header__logo               {
        padding: 0 12px;
    }
    .header__logo-brand-top,
    .header__logo-brand-bottom  {
        font-size: 17px;
    }
    .header__logo-tagline       {
        display: none;
    }

    .home-banner__slide-badge   {
        font-size: 11px;
        padding: 5px 14px;
    }
    .home-banner__slide-desc    {
        font-size: 18px;
    }
    .home-banner__slide-btn     {
        font-size: 18px;
        padding: 10px 22px;
    }
    .home-banner__arrow         {
        width: 38px;
        height: 38px;
        font-size: 18px;
    }
    .home-banner__arrow--prev   {
        left: 10px;
    }
    .home-banner__arrow--next   {
        right: 10px;
    }
}


/* ==========================================================
   CONTACT SECTION  (parent: .contact-section)
   Colors:
     Left card bg        : #ffffff
     Card border-right   : #DF4924
     Submit btn bg       : #DF4924 | text : #ffffff
     Right info bg       : #ffffff
     Badge bg            : #DF4924 | text : #ffffff
     Heading / text      : #e9e9e9
     Phone icon bg       : #DF4924 | icon : #ffffff
========================================================== */
.contact-section {
    position   : relative;
    background : #e9e9e9;              /* overlap the banner bottom     */
    padding: 80px 0px;
    z-index    : 10;
}

/* Bootstrap container row replacement */
.contact-section__row {
    display               : grid;
    grid-template-columns : 1fr 1fr;
    min-height            : 480px;
    border-radius         : 18px;
    box-shadow            : 0 16px 60px rgba(88, 84, 82, .14);
}


/* ----------------------------------------------------------
   CONTACT SECTION > FORM CARD   (.contact-section__form-card)
   Background    : #ffffff
   Right border  : #DF4924 curved bracket effect
---------------------------------------------------------- */
.contact-section__form-card {
    background    : #ffffff;   /* #ffffff */
    padding       : 54px 52px 54px 52px;
    position      : relative;
    /* Curved red border on right side only */
    border-right  : 3px solid var(--color-primary); /* #DF4924 */
    border-radius : 18px 80px 80px 18px / 18px 60px 60px 18px;
    z-index       : 2;
}

/* Form card heading */
.contact-section__form-card-title {
    font-size     : 28px;
    font-weight   : 500;
    color         : #000;    /* #e9e9e9 */
    margin-bottom : 36px;
    letter-spacing: -.3px;
    line-height   : 1.2;
    text-align: center;
}


/* ----------------------------------------------------------
   CONTACT SECTION > FORM   (.contact-section__form)
---------------------------------------------------------- */
.contact-section__form {
    display        : flex;
    flex-direction : column;
    gap            : 0;
}

/* Individual field wrapper */
.contact-section__form-group {
    margin-bottom : 20px;
    position      : relative;
}

/* Text input */
.contact-section__form-input {
    width         : 100%;
    padding       : 14px 18px;
    font-size     : 14px;
    font-family   : var(--font-base);
    color         : var(--color-dark);    /* #e9e9e9 */
    background    : var(--color-white);   /* #ffffff */
    border        : 1.5px solid #e0dedd;
    border-radius : 8px;
    outline       : none;
    transition    : border-color .25s, box-shadow .25s;
}
.contact-section__form-input::placeholder {
    color     : #b0adab;
    font-size : 14px;
}
.contact-section__form-input:focus {
    border-color : var(--color-primary);  /* #DF4924 */
    box-shadow   : 0 0 0 3px rgba(223, 73, 36, .12);
}
.contact-section__form-input.is-invalid {
    border-color : #e74c3c;
    box-shadow   : 0 0 0 3px rgba(231, 76, 60, .12);
}

/* Inline error message */
.contact-section__form-error {
    display    : none;
    font-size  : 12px;
    color      : #e74c3c;
    margin-top : 5px;
    padding-left: 4px;
}
.contact-section__form-error.is-visible {
    display : block;
}

/* Submit row */
.contact-section__form-footer {
    margin-top : 8px;
    text-align : center;
}

/* Submit button — bg : #DF4924 | text : #ffffff */
.contact-section__form-submit {
    background     : var(--color-primary);   /* #DF4924 */
    color          : var(--color-white);     /* #ffffff */
    font-size      : 16px;
    font-weight    : 700;
    font-family    : var(--font-base);
    padding        : 13px 52px;
    border         : none;
    border-radius  : 8px;
    cursor         : pointer;
    letter-spacing : .3px;
    box-shadow     : 0 5px 18px rgba(223, 73, 36, .38);
    transition     : background .25s, transform .2s, box-shadow .25s;
}
.contact-section__form-submit:hover {
    background : var(--color-primary-dark);
    transform  : translateY(-2px);
    box-shadow : 0 8px 24px rgba(223, 73, 36, .46);
}
.contact-section__form-submit:active {
    transform : translateY(0);
}

/* Success message (hidden by default) */
.contact-section__form-success {
    display      : none;
    margin-top   : 18px;
    padding      : 12px 18px;
    background   : rgba(223, 73, 36, .08);
    border       : 1.5px solid var(--color-primary);
    border-radius: 8px;
    font-size    : 14px;
    font-weight  : 600;
    color        : var(--color-primary);   /* #DF4924 */
    text-align   : center;
}
.contact-section__form-success.is-visible {
    display : block;
}
.contact-section__form-success i {
    margin-right : 6px;
}


/* ----------------------------------------------------------
   CONTACT SECTION > INFO   (.contact-section__info)
   Background : #ffffff
   Badge bg   : #DF4924 | text : #ffffff
   Heading    : #e9e9e9
   Phone icon : #DF4924
---------------------------------------------------------- */
.contact-section__info {
    background : var(--color-white);       /* #ffffff */
    padding    : 54px 50px 54px 56px;
    position   : relative;
}

/* Watermark logo — decorative, bottom-right */
.contact-section__info-watermark {
    position       : absolute;
    bottom         : 30px;
    right          : -60px;
    width          : 200px;
    height         : 200px;
    pointer-events : none;
    user-select    : none;
}

/* Badge pill — bg : #DF4924 | text : #ffffff */
.contact-section__info-badge {
    display        : inline-block;
    background     : var(--color-primary); /* #DF4924 */
    color          : var(--color-white);   /* #ffffff */
    font-size      : 16px;
    font-weight    : 500;
    letter-spacing : 1px;
    text-transform : uppercase;
    padding        : 7px 18px;
    border-radius  : 30px;
    margin-bottom  : 22px;
}

/* Info heading */
.contact-section__info-title {
    font-size     : 30px;
    font-weight   : 500;
    color         : var(--color-primary);     /* #e9e9e9 */
    line-height   : 1.22;
    margin-bottom : 18px;
    letter-spacing: -.3px;
}

/* Info description */
.contact-section__info-desc {
    font-size     : 15px;
    color         : #000;
    line-height   : 1.80;
    font-weight: 500;
    margin-bottom : 36px;
    max-width     : 420px;
}

/* Phone row — icon bg : #DF4924 | icon : #ffffff */
.contact-section__info-phone {
    display     : flex;
    align-items : center;
    gap         : 16px;
    text-decoration: none;
}

.contact-section__info-phone-icon {
    width           : 52px;
    height          : 52px;
    background      : var(--color-primary); /* #DF4924 */
    border-radius   : 50%;
    display         : flex;
    align-items     : center;
    justify-content : center;
    color           : var(--color-white);   /* #ffffff */
    font-size       : 20px;
    flex-shrink     : 0;
    box-shadow      : 0 6px 20px rgba(223, 73, 36, .35);
    animation       : phoneRing 2.8s infinite;
    transition      : transform .25s;
}

.contact-section__info-phone-icon i{
    transform: rotate(90deg);
}

.contact-section__info-phone:hover .contact-section__info-phone-icon {
    transform : scale(1.08);
}

.contact-section__info-phone-number {
    font-size   : 22px;
    font-weight : 600;
    color       : #000;       /* #e9e9e9 */
    letter-spacing: -.3px;
    transition  : color .25s;
}
.contact-section__info-phone:hover .contact-section__info-phone-number {
    color : var(--color-primary);          /* #DF4924 */
}


/* ----------------------------------------------------------
   CONTACT SECTION — Responsive
---------------------------------------------------------- */
/* Tablet ≤ 991px — stack side by side with less padding */
@media (max-width: 1199px) {
    .contact-section__form-card {
        padding: 44px 36px;
    }
    .contact-section__info      {
        padding: 44px 36px;
    }
    .contact-section__info-title{
        font-size: 24px;
    }
    .contact-section__form-card-title {
        font-size: 24px;
    }
}

/* Tablet ≤ 768px — single column stack */
@media (max-width: 768px) {
    .contact-section          {
        margin-top: 0;
        padding-bottom: 40px;
    }

    .contact-section__row {
        grid-template-columns : 1fr;
        border-radius         : 12px;
    }

    .contact-section__form-card {
        padding       : 40px 28px;
        border-right  : none;
        border-bottom : 3px solid var(--color-primary); /* #DF4924 */
        border-radius : 12px 12px 0 0;
    }

    .contact-section__info {
        padding       : 40px 28px 50px;
        border-radius : 0 0 12px 12px;
    }

    .contact-section__info-phone-number {
        font-size: 18px;
    }
}

/* Mobile ≤ 480px */
@media (max-width: 480px) {
    .contact-section__form-card       {
        padding: 32px 20px;
    }
    .contact-section__info            {
        padding: 32px 20px 44px;
    }
    .contact-section__form-card-title {
        font-size: 22px;
    }
    .contact-section__info-title      {
        font-size: 21px;
    }
    .contact-section__form-submit     {
        padding: 12px 36px;
        width: 100%;
    }
}


/* ==========================================================
   STATS COUNTER SECTION  (parent: .stats-section)
   Full-width dark background with 4 stat items + dividers
   Colors:
     Overlay bg      : rgba(#e9e9e9 deep) dark
     Icon circle bg  : #ffffff
     Icon color      : #DF4924
     Counter number  : #ffffff
     Label           : #ffffff
     Divider         : rgba(#ffffff, .20)
========================================================== */
.stats-section {
    position   : relative;
    width      : 100%;
    padding    : 60px 0;
    overflow   : hidden;
    /* Background: workers on rooftop / solar panels */
    background-image    : url('../images/bg-counter.png');
    background-size     : cover;
    background-position : center center;
    background-attachment: fixed;
}

/* Dark overlay using brand dark color #e9e9e9 */
.stats-section__overlay {
    position   : absolute;
    inset      : 0;
    background : linear-gradient(
        90deg,
        rgba(30, 28, 27, .88) 0%,
        rgba(40, 38, 36, .82) 100%
        );
    z-index    : 0;
}

/* Container sits above overlay */
.stats-section > .container {
    position : relative;
    z-index  : 1;
}


/* ----------------------------------------------------------
   STATS SECTION > ROW   (.stats-section__row)
   4 items in a single horizontal row
---------------------------------------------------------- */
.stats-section__row {
    display     : flex;
    align-items : center;
    justify-content : space-between;
    gap         : 0;
}


/* ----------------------------------------------------------
   STATS SECTION > ITEM   (.stats-section__item)
   Icon circle + number + label stacked
---------------------------------------------------------- */
.stats-section__item {
    flex            : 1;
    display         : flex;
    align-items     : center;
    gap             : 0;
    flex-direction  : column;
    align-items     : flex-start;
    padding         : 10px 40px;
}

/* White circle icon */
.stats-section__item-icon {
    width           : 72px;
    height          : 72px;
    background      : var(--color-white);   /* #ffffff */
    border-radius   : 50%;
    display         : flex;
    align-items     : center;
    justify-content : center;
    margin-bottom   : 20px;
    flex-shrink     : 0;
    box-shadow      : 0 4px 20px rgba(0,0,0,.25);
    transition      : transform .3s, box-shadow .3s;
}
.stats-section__item:hover .stats-section__item-icon {
    transform  : translateY(-4px);
    box-shadow : 0 8px 28px rgba(0,0,0,.35);
}

.stats-section__item-icon i {
    font-size : 28px;
    color     : var(--color-primary);       /* #DF4924 */
}

/* Body: number + label */
.stats-section__item-body {
    display        : flex;
    flex-direction : column;
    gap            : 4px;
}

/* Number row */
.stats-section__item-number {
    display     : flex;
    align-items : baseline;
    gap         : 2px;
    line-height : 1;
}

.stats-section__counter {
    font-family    : "DM Sans", sans-serif;
    font-size      : clamp(44px, 5vw, 64px);
    font-weight    : 800;
    color          : var(--color-white);    /* #ffffff */
    letter-spacing : -2px;
    line-height    : 1;
}

/* Suffix k / % */
.stats-section__item-suffix {
    font-family : "DM Sans", sans-serif;
    font-size   : clamp(38px, 4.5vw, 58px);
    font-weight : 800;
    color       : var(--color-white);       /* #ffffff */
    line-height : 1;
    letter-spacing: -1px;
}

/* Label */
.stats-section__item-label {
    font-size   : 14px;
    font-weight : 500;
    color       : var(--color-white);       /* #ffffff */
    margin      : 8px 0 0;
    letter-spacing: .3px;
    white-space : nowrap;
}


/* ----------------------------------------------------------
   STATS SECTION > DIVIDER   (.stats-section__divider)
   Thin vertical line between items
---------------------------------------------------------- */
.stats-section__divider {
    width      : 1px;
    height     : 100px;
    background : rgba(255, 255, 255, .22);
    flex-shrink: 0;
}


/* ----------------------------------------------------------
   STATS SECTION — Responsive
---------------------------------------------------------- */
/* Tablet ≤ 991px */
@media (max-width: 1199px) {
    .stats-section__item  {
        padding: 10px 24px;
    }
    .stats-section__counter {
        font-size: 46px;
    }
    .stats-section__item-suffix {
        font-size: 40px;
    }
}

/* Tablet ≤ 768px — 2x2 grid */
@media (max-width: 768px) {
    .stats-section {
        background-attachment: scroll;
        padding: 50px 0;
    }

    .stats-section__row {
        flex-wrap       : wrap;
        justify-content : center;
        gap             : 0;
    }

    .stats-section__item {
        flex       : 0 0 50%;
        max-width  : 50%;
        padding    : 30px 28px;
        align-items: flex-start;
    }

    .stats-section__divider {
        display : none;
    }

    /* Add bottom border between rows */
    .stats-section__item:nth-child(-n+4) {
        border-bottom : 1px solid rgba(255,255,255,.12);
    }
}

/* Mobile ≤ 480px — single column */
@media (max-width: 480px) {
    .stats-section__item {
        flex      : 0 0 100%;
        max-width : 100%;
        padding   : 24px 20px;
        flex-direction : row;
        align-items    : center;
        gap            : 20px;
    }

    .stats-section__item-icon {
        margin-bottom: 0;
        width: 58px;
        height: 58px;
    }
    .stats-section__item-icon i {
        font-size: 22px;
    }
    .stats-section__counter  {
        font-size: 40px;
    }
    .stats-section__item-suffix {
        font-size: 36px;
    }
}


.cta-banner {
    position   : relative;
    width      : 100%;
    overflow   : hidden;
    display    : flex;
    align-items: center;
    padding    : 100px 0;
}

/* Sky background image */
.cta-banner__bg {
    position            : absolute;
    inset               : 0;
    background-image    : url('../images/bg-call-to-action-roofer.jpg');
    background-size     : cover;
    background-position : center center;
    z-index             : 0;
    /* Very light overlay to keep text readable */
    filter              : brightness(1.08) saturate(.85);
}
.cta-banner__bg::after {
    content    : '';
    position   : absolute;
    inset      : 0;
    background : rgba(235, 240, 248, .55);
}

/* Container above bg */
.cta-banner > .container {
    position : relative;
    z-index  : 3;
}


/* ----------------------------------------------------------
   CTA BANNER > DECO HOUSE   (.cta-banner__deco-house)
   Top-left, partially clipped, tilted
---------------------------------------------------------- */
.cta-banner__deco-house {
    position   : absolute;
    top        : 30px;
    left       :0;
    z-index    : 2;
    pointer-events: none;
    /* Slight tilt matching screenshot */
    transform  : rotate(-6deg) translateX(-20px);
    filter     : drop-shadow(0 12px 30px rgba(0,0,0,.18));
    display: none;
    /*animation: solarFloat 4s ease-in-out infinite;*/
}

.cta-banner__deco-house-img {
    width: 275px;
    object-fit   : cover;
    border-radius: 12px;
}


/* ----------------------------------------------------------
   CTA BANNER > DECO SOLAR   (.cta-banner__deco-solar)
   Bottom-right with continuous floating animation
---------------------------------------------------------- */
.cta-banner__deco-solar {
    position      : absolute;
    bottom        : 0;
    right         : 40px;
    z-index       : 2;
    pointer-events: none;
    /* Floating animation */
    /*animation     : solarFloat 4s ease-in-out infinite;*/
    filter        : drop-shadow(0 16px 36px rgba(0,0,0,.22));
    display: none;
}

.cta-banner__deco-solar-img {
    width        : 100%;
    height       : 280px;
    object-fit   : cover;
    border-radius: 16px;
    /* Clip to show bottom panel shape */
}

/* Float up-down animation */
@keyframes solarFloat {
    0%   {
        transform: translateX(0px);
    }
    50%  {
        transform: translateX(-40px);
    }
    100% {
        transform: translateX(0px);
    }
}


/* ----------------------------------------------------------
   CTA BANNER > CONTENT   (.cta-banner__content)
   Centered text block
---------------------------------------------------------- */
.cta-banner__content {
    text-align : center;
    /*max-width  : 680px;*/
    margin     : 0 auto;
    padding    : 0 20px;
}

/* Heading */
.cta-banner__content-title {
    font-size      : 31px;
    font-weight    : 500;
    color          : #DF4924;    /* #e9e9e9 */
    line-height    : 1.18;
    margin-bottom  : 20px;
    letter-spacing : -.5px;
}

/* Sub-description */
.cta-banner__content-desc {
    font-size     : 16px;
    color         : #000;
    line-height   : 1.72;
    margin-bottom : 36px;
    /*max-width     : 540px;*/
    margin-left   : auto;
    margin-right  : auto;
}

.cta-banner__content-desc strong {
    color       : var(--color-primary);       /* #e9e9e9 */
    font-weight : 700;
}

/* Request a Quote button — bg : #DF4924 | text : #ffffff */
.cta-banner__content-btn {
    display        : inline-flex;
    align-items    : center;
    justify-content: center;
    background     : var(--color-primary); /* #DF4924 */
    color          : var(--color-white);   /* #ffffff */
    font-size      : 16px;
    font-weight    : 700;
    padding        : 15px 44px;
    border-radius  : 12px;
    letter-spacing : .3px;
    box-shadow     : 0 6px 22px rgba(223, 73, 36, .42);
    transition     : background .25s, transform .2s, box-shadow .25s;
    text-decoration: none;
}
.cta-banner__content-btn:hover {
    background : var(--color-primary-dark);
    transform  : translateY(-3px);
    box-shadow : 0 10px 30px rgba(223, 73, 36, .50);
    color      : var(--color-white);
}
.cta-banner__content-btn:active {
    transform : translateY(0);
}


/* ----------------------------------------------------------
   CTA BANNER — Responsive
---------------------------------------------------------- */
/* Tablet ≤ 991px */
@media (max-width: 1199px) {
    .cta-banner__deco-house {
        width: 240px;
    }
    .cta-banner__deco-house-img {
        height: 220px;
    }
    .cta-banner__deco-solar {
        width: 240px;
        right: 10px;
    }
    .cta-banner__deco-solar-img {
        height: 100% !important;
        width: 100%;
    }
}

/* Tablet ≤ 768px */
@media (max-width: 768px) {
    .cta-banner {
        padding: 60px 0;
        min-height: 300px;
    }
    .cta-banner__deco-house {
        width: 180px;
        top: -20px;
        left: -20px;
    }
    .cta-banner__deco-house-img {
        height: 170px;
    }
    .cta-banner__deco-solar {
        width: 190px;
        right: 0;
        bottom: -10px;
    }
    .cta-banner__deco-solar-img {
        height: 170px;
    }
}

/* Mobile ≤ 576px */
@media (max-width: 576px) {
    .cta-banner {
        padding: 70px 0;
    }
    .cta-banner__deco-house {
        width: 140px;
    }
    .cta-banner__deco-house-img {
        height: 130px;
    }
    .cta-banner__deco-solar {
        width: 150px;
        bottom: 0;
    }
    .cta-banner__deco-solar-img {
        height: 130px;
    }
    .cta-banner__content-title  {
        font-size: 26px;
    }
    .cta-banner__content-desc   {
        font-size: 18px;
    }
    .cta-banner__content-btn    {
        padding: 13px 32px;
        font-size: 18px;
    }
}

/* ── NEW: Keyframe Animations ONLY (added on top) ───────── */

@keyframes cardGlow {
    0%, 100% {
        box-shadow  : 0 6px 28px rgba(88, 84, 82, .08);
        border-color: #DF4924;
    }
    50% {
        box-shadow  : 0 0 0 4px rgba(223, 73, 36, .18),
            0 8px 36px rgba(223, 73, 36, .32);
        border-color: #ff6a00;
    }
}

@keyframes btnBlink {
    0%, 100% {
        background: transparent;
        color     : #DF4924;
        box-shadow: none;
    }
    50% {
        background: #DF4924;
        color     : #fff;
        box-shadow: 0 0 14px rgba(223, 73, 36, .55),
            0 0 28px rgba(223, 73, 36, .28);
    }
}

@keyframes cardFloatIn {
    from {
        opacity  : 0;
        transform: translateY(40px) scale(.96);
    }
    to {
        opacity  : 1;
        transform: translateY(0) scale(1);
    }
}

/* ───────────────────────────────────────────────────────── */
/* YOUR ORIGINAL CSS — UNCHANGED BELOW THIS LINE            */
/* ───────────────────────────────────────────────────────── */

.pricing-section {
    padding: 80px 0 100px;
    background: #ffffff;
    position: relative;
    overflow: hidden;
}

/* TOP LEFT CIRCLE */
.pricing-section::before {
    content: "";
    position: absolute;
    top: -100px;
    left: -100px;
    width: 550px;
    height: 550px;
    background: #ff6a00; /* orange */
    border-radius: 50%;
    opacity: 0.1;
    z-index: -1;
}

/* BOTTOM RIGHT CIRCLE */
.pricing-section::after {
    content: "";
    position: absolute;
    bottom: -120px;
    right: -120px;
    width: 550px;
    height: 550px;
    background: #000000; /* black */
    border-radius: 50%;
    opacity: 0.1;
    z-index: -1;
}

/* Section header */
.pricing-section__header {
    text-align    : center;
    margin-bottom : 56px;
}

.pricing-section__header-badge {
    display        : inline-block;
    background     : var(--color-primary);
    color          : var(--color-white);
    font-size      : 16px;
    font-weight    : 500;
    letter-spacing : 1.2px;
    text-transform : uppercase;
    padding        : 7px 20px;
    border-radius  : 30px;
    margin-bottom  : 16px;
}

.pricing-section__header-title {
    font-size      : 30px;
    font-weight    : 500;
    color          : #fff;
    margin-bottom  : 14px;
    letter-spacing : -.4px;
}

.pricing-section__header-desc {
    font-size  : 16px;
    color      : #000;
    max-width  : 520px;
    margin     : 0 auto;
    line-height: 1.72;
}

/* Cards row */
.pricing-section__row {
    display               : grid;
    grid-template-columns : repeat(3, 1fr);
    gap                   : 28px;
    align-items           : start;
}

/* ==========================================================
   PRICING CARD
========================================================== */
.pricing-card {
    border-radius : 12px;
    overflow      : hidden;
    background    : var(--color-white);
    border        : 1.5px solid #DF4924;
    box-shadow    : 0 6px 28px rgba(88, 84, 82, .08);
    transition    : transform .4s cubic-bezier(.4,0,.2,1),
        box-shadow .4s,
        background .4s,
        border-color .4s;
    position      : relative;

    /* NEW: float-in entrance + continuous glow */
    animation: cardFloatIn .6s ease both,
        cardGlow    2.8s ease-in-out infinite;
}

/* NEW: stagger glow offset per card */
.pricing-card:nth-child(1) {
    animation-delay: 0s,   0s;
}
.pricing-card:nth-child(2) {
    animation-delay: .15s, .9s;
}
.pricing-card:nth-child(3) {
    animation-delay: .3s,  1.8s;
}

/* Hover state — pause animation, lift card */
.pricing-card:not(.pricing-card--active):hover {
    animation    : none; /* NEW: stop glow on hover */
    transform    : translateY(-8px);
    box-shadow   : 0 20px 56px rgba(223, 73, 36, .22);
    border-color : var(--color-primary);
    background   : var(--color-white);
}

/* PRICING CARD > HEADER */
.pricing-card__header {
    position  : relative;
    padding   : 36px 32px 60px;
    text-align: center;
    overflow  : hidden;
    background: var(--color-primary);
}

.pricing-card__header-bg {
    position            : absolute;
    inset               : 0;
    background-image    : url('https://images.unsplash.com/photo-1508514177221-188b1cf16e9d?w=800&q=70');
    background-size     : cover;
    background-position : center;
    opacity             : 0;
    transition          : opacity .4s;
    z-index             : 0;
}
.pricing-card--active .pricing-card__header-bg,
.pricing-card:not(.pricing-card--active):hover .pricing-card__header-bg {
    opacity : .28;
}

.pricing-card__header-content {
    position : relative;
    z-index  : 1;
}

.pricing-card__plan-name {
    font-size     : 20px;
    font-weight   : 700;
    color         : var(--color-white);
    margin-bottom : 12px;
    letter-spacing: .2px;
}

.pricing-card__price-row {
    display        : flex;
    align-items    : center;
    justify-content: center;
    gap            : 4px;
    margin-bottom  : 14px;
}

.pricing-card__price-currency {
    font-size   : 28px;
    font-weight : 800;
    color       : var(--color-white);
    margin-top  : 10px;
    line-height : 1;
}

.pricing-card__price-amount {
    font-size   : 31px;
    font-weight : 600;
    color       : var(--color-white);
    line-height : 1;
}

.pricing-card__price-period {
    font-size   : 13px;
    font-weight : 700;
    color       : rgba(255,255,255,.85);
    line-height : 1.3;
}

.pricing-card__header-desc {
    font-size  : 18px;
    color      : #fff;
    line-height: 1.65;
    font-weight: 600;
    max-width  : 240px;
    margin     : 0 auto;
    position   : relative;
    z-index    : 1;
}

/* PRICING CARD > HEADER CHEVRON */
.pricing-card__header-chevron {
    position : absolute;
    bottom   : -1px;
    left     : 0;
    width    : 100%;
    height   : 44px;
    z-index  : 2;
    overflow : hidden;
}
.pricing-card__header-chevron::before,
.pricing-card__header-chevron::after {
    content  : '';
    position : absolute;
    bottom   : 0;
    width    : 50%;
    height   : 100%;
}
.pricing-card__header-chevron::before {
    left      : 0;
    background: var(--color-white);
    clip-path : polygon(0 100%, 100% 100%, 100% 0);
    transition: background .4s;
}
.pricing-card__header-chevron::after {
    right     : 0;
    background: var(--color-white);
    clip-path : polygon(0 0, 100% 100%, 0 100%);
    transition: background .4s;
}
.pricing-card--active .pricing-card__header-chevron::before,
.pricing-card--active .pricing-card__header-chevron::after {
    background: rgba(255,255,255,.18);
}
.pricing-card:not(.pricing-card--active):hover .pricing-card__header-chevron::before,
.pricing-card:not(.pricing-card--active):hover .pricing-card__header-chevron::after {
    background: var(--color-white);
}

/* PRICING CARD > BODY */
.pricing-card__body {
    padding   : 12px 32px 36px;
    background: var(--color-white);
    transition: background .4s;
    position  : relative;
    height    : 420px;
    overflow  : hidden;
}
.pricing-card--active .pricing-card__body {
    background: var(--color-primary);
    position  : relative;
}
.pricing-card--active .pricing-card__body::before {
    content            : '';
    position           : absolute;
    inset              : 0;
    background-image   : url('https://images.unsplash.com/photo-1508514177221-188b1cf16e9d?w=800&q=60');
    background-size    : cover;
    background-position: center bottom;
    opacity            : .22;
    z-index            : 0;
}
.pricing-card:not(.pricing-card--active):hover .pricing-card__body {
    background: var(--color-white);
}

/* PRICING CARD > FEATURES LIST */
.pricing-card__features {
    list-style    : none;
    padding       : 0;
    margin        : 24px 0 32px;
    display       : flex;
    flex-direction: column;
    gap           : 20px;
    position      : relative;
    z-index       : 1;
}

.pricing-card__feature-item {
    display    : flex;
    align-items: flex-start;
    gap        : 12px;
    font-size  : 14.5px;
    font-weight: 600;
    color      : #000;
    line-height: 1.55;
    transition : color .4s;
}
.pricing-card--active .pricing-card__feature-item {
    color: var(--color-white);
}

.pricing-card__feature-icon {
    color      : var(--color-primary);
    font-size  : 14px;
    flex-shrink: 0;
    margin-top : 2px;
    transition : color .4s;
}

/* PRICING CARD > FOOTER */
.pricing-card__footer {
    text-align: center;
    position  : relative;
    z-index   : 1;
}

/* Solid button */
.pricing-card__btn--solid {
    display        : inline-flex;
    align-items    : center;
    justify-content: center;
    background     : var(--color-white);
    color          : var(--color-primary);
    font-size      : 14.5px;
    font-weight    : 700;
    padding        : 14px 46px;
    border-radius  : 50px;
    border         : 2px solid var(--color-white);
    transition     : background .25s, color .25s, transform .2s, box-shadow .25s;
    box-shadow     : 0 4px 18px rgba(0,0,0,.18);
    letter-spacing : .2px;
}
.pricing-card__btn--solid:hover {
    background  : var(--color-primary);
    color       : var(--color-white);
    transform   : translateY(-2px);
    box-shadow  : 0 8px 24px rgba(223,73,36,.40);
    border-color: var(--color-primary);
}

/* Outline button — NEW: blinking animation added */
.pricing-card__btn--outline {
    display        : inline-flex;
    align-items    : center;
    justify-content: center;
    background     : transparent;
    color          : var(--color-primary);
    font-size      : 16px;
    font-weight    : 700;
    padding        : 14px 46px;
    border-radius  : 12px;
    border         : 2px solid var(--color-primary);
    letter-spacing : .2px;
    text-decoration: none;

    /* NEW: blink animation */
    animation: btnBlink 1.6s ease-in-out infinite;
}
.pricing-card__btn--outline:hover {
    animation   : none; /* NEW: stop blink on hover */
    background  : var(--color-primary);
    color       : var(--color-white);
    transform   : translateY(-2px);
    box-shadow  : 0 8px 24px rgba(223,73,36,.38);
    border-color: var(--color-primary);
    transition  : background .25s, color .25s, transform .2s, box-shadow .25s;
}

/* TABS — YOUR ORIGINAL CODE UNTOUCHED */
.pricing-tabs {
    display        : flex;
    justify-content: center;
    gap            : 20px;
    margin-bottom  : 40px;
}

.pricing-tab {
    padding      : 12px 28px;
    border       : 2px solid #DF4924;
    background   : transparent;
    color        : #DF4924;
    border-radius: 12px;
    cursor       : pointer;
    font-weight  : 600;
}

.pricing-tab.active {
    background: #DF4924;
    color     : #fff;
}

.pricing-tab-content {
    display: none;
}

.pricing-tab-content.active {
    display: grid;
}

/* ----------------------------------------------------------
   RESPONSIVE — YOUR ORIGINAL BREAKPOINTS UNTOUCHED
---------------------------------------------------------- */
@media (max-width: 1199px) {
    .pricing-section__row {
        gap: 20px;
    }
    .pricing-card__header {
        padding: 28px 22px 56px;
    }
    .pricing-card__body {
        padding: 10px 22px 30px;
    }
    .pricing-card__price-amount {
        font-size: 54px;
    }
}

@media (max-width: 768px) {
    .pricing-section {
        padding: 60px 0 70px;
    }
    .pricing-section__row {
        grid-template-columns: 1fr;
        max-width: 460px;
        margin: 0 auto;
    }
}

@media (max-width: 480px) {
    .pricing-card__header {
        padding: 24px 18px 52px;
    }
    .pricing-card__body {
        padding: 8px 18px 28px;
    }
    .pricing-card__price-amount {
        font-size: 29px;
    }
    .pricing-card__btn--solid,
    .pricing-card__btn--outline {
        padding  : 12px 36px;
        font-size: 18px;
    }
    .avitrupt-heading, .solar-header h2, .avitrupt-testimonial-header h2 {
        font-size: 29px;
    }
}


/* Clients Slider */
.clients-slider {
    width: 100%;
    overflow: hidden;
    padding: 40px 0;
    background: var(--color-primary);
}

.clients-slider .pricing-section__header-title{
    text-align: center;
    margin-bottom: 50px;
}

/* Wrapper */
.clients-slider__wrapper {
    width: 100%;
    overflow: hidden;
}

/* Track */
.clients-slider__track {
    display: flex;
    align-items: center;
    transition: transform 0.5s linear;
}

/* Item */
.clients-slider__item {
    min-width: 200px;
    margin: 0 20px;
    flex-shrink: 0;
}

.clients-slider__item img {
    width: 100%;
    height: auto;
    object-fit: contain;
    transition: 0.3s;
    filter: brightness(0) invert(1);
}
.clients-slider__item img:hover{
    filter: none;
}

/* Responsive */
@media (max-width: 768px) {
    .clients-slider__item {
        min-width: 140px;
        margin: 0 10px;
    }
}

.testimonials-section {
    position   : relative;
    padding    : 80px 0 70px;
    overflow   : hidden;
}

/* Salmon background layer */
.testimonials-section__bg {
    position   : absolute;
    inset      : 0;
    background : #e8705a;   /* salmon — lightened #DF4924 */
    z-index    : 0;
}
/* Subtle radial light spot in center */
.testimonials-section__bg::after {
    content    : '';
    position   : absolute;
    inset      : 0;
    background : radial-gradient(ellipse 70% 60% at 50% 50%,
        rgba(255,255,255,.10) 0%,
        transparent 70%);
}

.testimonials-section > .container {
    position : relative;
    z-index  : 1;
    overflow: hidden;
}


/* ----------------------------------------------------------
   TESTIMONIALS SECTION > ROW   (.testimonials-section__row)
   50/50 two-column layout
---------------------------------------------------------- */
.testimonials-section__row {
    display               : grid;
    grid-template-columns : 1fr 1fr;
    gap                   : 60px;
    align-items           : center;
    overflow: hidden;
}


/* ----------------------------------------------------------
   TESTIMONIALS SECTION > LEFT   (.testimonials-section__left)
   Circular person image + oversized quote mark
---------------------------------------------------------- */
.testimonials-section__left {
    position : relative;
    display  : flex;
    align-items : center;
    justify-content : center;
}

/* Giant quote mark top-right of image */
.testimonials-section__quote-mark {
    position  : absolute;
    top       : -10px;
    right     : 30px;
    font-size : 90px;
    color     : var(--color-primary);     /* #DF4924 */
    line-height: 1;
    z-index   : 2;
    filter    : drop-shadow(0 4px 8px rgba(0,0,0,.15));
}

/* Circular image wrapper */
.testimonials-section__person-wrap {
    width         : 600px;
    overflow      : hidden;
    flex-shrink   : 0;
    position      : relative;
    z-index       : 1;
}

.testimonials-section__person-img {
    width      : 100%;
    height     : 100%;
    object-fit : cover;
    object-position: center top;
}

@media (min-width: 1200px) and (max-width: 1500px) {
    .testimonials-section__person-wrap {
        width: 450px;
        overflow: hidden;
    }
}



/* ----------------------------------------------------------
   TESTIMONIALS SECTION > RIGHT   (.testimonials-section__right)
   Holds the Owl Carousel + Owl dots
---------------------------------------------------------- */
.testimonials-section__right {
    display        : flex;
    flex-direction : column;
    overflow       : hidden;   /* ← critical: clips adjacent owl items */
    width          : 100%;
}


.testimonials-section__owl.owl-carousel {
    overflow : hidden;         /* ← clips the owl stage */
    width    : 100%;
}

.testimonials-section__owl .owl-stage-outer {
    overflow : hidden;         /* ← Owl's own stage must not overflow */
}



/* ── Owl Carousel root override ─────────────────────────── */
.testimonials-section__owl {
    width : 100%;
}

/* Each Owl item = one slide = 2 stacked cards */
.testimonials-section__slide {
    display        : flex;
    flex-direction : column;
    gap            : 20px;
    padding        : 4px 2px 8px;
    width          : 100%;
    box-sizing     : border-box;
}

/* ── Owl Carousel dot overrides ─────────────────────────── */
/* Container */
.testimonials-section__owl.owl-carousel .owl-dots {
    display         : flex;
    justify-content : center;
    align-items     : center;
    gap             : 8px;
    margin-top      : 28px;
}

/* Each dot */
.testimonials-section__owl.owl-carousel .owl-dot span {
    display          : block;
    width            : 10px;
    height           : 10px;
    border-radius    : 6px;
    background       : rgba(255, 255, 255, .40);
    border           : none;
    margin           : 0;
    transition       : background .3s, width .35s cubic-bezier(.4,0,.2,1);
}

/* Active dot — wide pill */
.testimonials-section__owl.owl-carousel .owl-dot.active span {
    background   : var(--color-white);   /* #ffffff */
    width        : 28px;
    border-radius: 6px;
}

/* Hover dot */
.testimonials-section__owl.owl-carousel .owl-dot:hover span {
    background : rgba(255, 255, 255, .75);
}

/* Hide Owl nav arrows (design uses dots only) */
.testimonials-section__owl.owl-carousel .owl-nav {
    display: none;
}


/* ==========================================================
   TESTIMONIALS CARD  (parent: .testimonials-card)
========================================================== */
.testimonials-card {
    border-radius : 16px;
    padding       : 28px 30px;
    transition    : transform .3s, box-shadow .3s;
    width         : 100%;           /* ← full width, remove max-width */
    max-width     : 100%;
    box-sizing    : border-box;
}
.testimonials-card:hover {
    transform  : translateX(4px);
    box-shadow : 0 12px 36px rgba(0,0,0,.18);
}

/* Dark card — deep terracotta */
.testimonials-card--dark {
    background : #8B3A2A;
}

/* Light card — ice blue */
.testimonials-card--light {
    background : #EAF1FB;
}


/* ----------------------------------------------------------
   TESTIMONIALS CARD > HEADER   (.testimonials-card__header)
   Avatar circle + name + role in a flex row
---------------------------------------------------------- */
.testimonials-card__header {
    display     : flex;
    align-items : center;
    gap         : 16px;
    margin-bottom: 18px;
}

/* Avatar circle wrapper (for badge positioning) */
.testimonials-card__avatar-wrap {
    position    : relative;
    flex-shrink : 0;
}

.testimonials-card__avatar-img {
    width         : 60px !important;
    height        : 60px !important;
    border-radius : 50%;
    object-fit    : cover;
    border        : 2px solid rgba(255,255,255,.30);
    display       : block;
}

/* Orange quote badge on avatar */
.testimonials-card__avatar-badge {
    position        : absolute;
    bottom          : -4px;
    right           : -4px;
    width           : 22px;
    height          : 22px;
    background      : var(--color-primary);  /* #DF4924 */
    border-radius   : 50%;
    display         : flex;
    align-items     : center;
    justify-content : center;
    color           : var(--color-white);    /* #ffffff */
    font-size       : 9px;
    border          : 2px solid var(--color-white);
}

/* Meta: name + role */
.testimonials-card__meta {
    display        : flex;
    flex-direction : column;
    gap            : 3px;
}

.testimonials-card__meta-name {
    font-size   : 16px;
    font-weight : 700;
    color       : var(--color-white);        /* #ffffff — both card types */
    line-height : 1.2;
}
/* Override for light card */
.testimonials-card--light .testimonials-card__meta-name {
    color : var(--color-dark);               /* #e9e9e9 */
}

.testimonials-card__meta-role {
    font-size   : 13px;
    font-weight : 500;
    color       : rgba(255,255,255,.75);
}
/* Accent role (light card) */
.testimonials-card__meta-role--accent {
    color : var(--color-primary);            /* #DF4924 */
}


/* ----------------------------------------------------------
   TESTIMONIALS CARD > TEXT   (.testimonials-card__text)
---------------------------------------------------------- */
.testimonials-card__text {
    font-size     : 14.5px;
    font-weight   : 600;
    line-height   : 1.72;
    margin-bottom : 18px;
    color         : rgba(255,255,255,.90);   /* dark card */
}
.testimonials-card--light .testimonials-card__text {
    color : #000;               /* #e9e9e9 */
}


/* ----------------------------------------------------------
   TESTIMONIALS CARD > RATING   (.testimonials-card__rating)
---------------------------------------------------------- */
.testimonials-card__rating {
    display     : flex;
    align-items : center;
    gap         : 8px;
}

.testimonials-card__rating-label {
    font-size   : 14px;
    font-weight : 700;
    color       : var(--color-white);        /* #ffffff dark card */
}
.testimonials-card__rating-label--dark {
    color : #000;               /* #e9e9e9 light card */
}

.testimonials-card__stars {
    display : flex;
    gap     : 3px;
}
.testimonials-card__stars i {
    font-size : 15px;
    color     : #f5a623;                     /* amber star */
}


.testimonials-title{
    text-align: center;
    color: #fff;
    margin-bottom: 30px;
}


/* ----------------------------------------------------------
   TESTIMONIALS SECTION — Responsive
---------------------------------------------------------- */
/* Tablet ≤ 991px */
@media (max-width: 1199px) {
    .testimonials-section__row           {
        gap: 36px;
    }
    .testimonials-section__person-wrap   {
        width: 320px;
        height: 320px;
    }
    .testimonials-section__quote-mark    {
        font-size: 68px;
        right: 10px;
    }
}

/* Tablet ≤ 768px — stack vertically */
@media (max-width: 768px) {
    .testimonials-section                {
        padding: 60px 0 56px;
    }
    .testimonials-section__row           {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .testimonials-section__left          {
        justify-content: center;
    }
    .testimonials-section__person-wrap   {
        width: 280px;
        height: 280px;
    }
    .testimonials-section__quote-mark    {
        font-size: 58px;
        right: 20px;
        top: -5px;
    }
}

/* Mobile ≤ 480px */
@media (max-width: 480px) {
    .testimonials-section__person-wrap   {
        width: 220px;
        height: 220px;
    }
    .testimonials-section__quote-mark    {
        font-size: 48px;
        right: 10px;
    }
    .testimonials-card                   {
        padding: 22px 20px;
    }
    .testimonials-card__avatar-img       {
        width: 50px;
        height: 50px;
    }
    .testimonials-card__meta-name        {
        font-size: 14.5px;
    }
    .testimonials-card__text             {
        font-size: 13.5px;
    }
}

.gallery-section {
    padding    : 80px 0 90px;
    background : var(--color-white);   /* #ffffff */
}


/* ----------------------------------------------------------
   GALLERY SECTION > HEADER   (.gallery-section__header)
   Centered badge + heading
---------------------------------------------------------- */
.gallery-section__header {
    text-align    : center;
    margin-bottom : 52px;
}

/* Badge pill */
.gallery-section__header-badge {
    display        : inline-block;
    background     : var(--color-primary);  /* #DF4924 */
    color          : var(--color-white);    /* #ffffff */
    font-size      : 16px;
    font-weight    : 500;
    letter-spacing : 1.5px;
    text-transform : uppercase;
    padding        : 8px 22px;
    border-radius  : 30px;
    margin-bottom  : 18px;
}

/* Main heading */
.gallery-section__header-title {
    font-size      : 30px;
    font-weight    : 500;
    color          : var(--color-primary);  /* #e9e9e9 */
    letter-spacing : -.4px;
    line-height    : 1.2;
    margin         : 0;
}


/* ----------------------------------------------------------
   GALLERY SECTION > GRID   (.gallery-section__grid)
   3 columns × 2 rows — equal-height cells
---------------------------------------------------------- */
.gallery-section__grid {
    display               : grid;
    grid-template-columns : repeat(3, 1fr);
    gap                   : 18px;
}


/* ----------------------------------------------------------
   GALLERY SECTION > ITEM   (.gallery-section__item)
   Each cell: rounded corners, overflow hidden for zoom
---------------------------------------------------------- */
.gallery-section__item {
    border-radius : 10px;
    overflow      : hidden;
}

/* Anchor wrapper (Fancybox target) */
.gallery-section__item-link {
    display : block;
    width   : 100%;
    height  : 100%;
}

/* Image + overlay wrapper — sets the overflow clip */
.gallery-section__item-img-wrap {
    position      : relative;
    width         : 100%;
    overflow      : hidden;
    border-radius : 10px;
    /* Fixed height for all rows */
    height        : 260px;
}

/* The actual photo */
.gallery-section__item-img {
    width      : 100%;
    height     : 100%;
    object-fit : cover;
    display    : block;
    transition : transform .5s cubic-bezier(.4,0,.2,1);
}

/* Zoom image on hover */
.gallery-section__item-link:hover .gallery-section__item-img {
    transform : scale(1.08);
}


/* ----------------------------------------------------------
   GALLERY SECTION > OVERLAY   (.gallery-section__item-overlay)
   Orange tinted overlay + zoom icon — visible on hover
---------------------------------------------------------- */
.gallery-section__item-overlay {
    position        : absolute;
    inset           : 0;
    background      : rgba(223, 73, 36, .72);   /* #DF4924 tinted */
    display         : flex;
    align-items     : center;
    justify-content : center;
    opacity         : 0;
    transition      : opacity .35s ease;
    border-radius   : 10px;
}

/* Show overlay on hover */
.gallery-section__item-link:hover .gallery-section__item-overlay {
    opacity : 1;
}

/* Zoom icon circle */
.gallery-section__item-zoom {
    width           : 54px;
    height          : 54px;
    background      : var(--color-white);       /* #ffffff */
    border-radius   : 50%;
    display         : flex;
    align-items     : center;
    justify-content : center;
    color           : var(--color-primary);     /* #DF4924 */
    font-size       : 20px;
    transform       : scale(.6);
    transition      : transform .35s cubic-bezier(.34,1.56,.64,1);
    box-shadow      : 0 6px 20px rgba(0,0,0,.18);
}

/* Pop zoom icon in on hover */
.gallery-section__item-link:hover .gallery-section__item-zoom {
    transform : scale(1);
}


/* ----------------------------------------------------------
   GALLERY SECTION — Fancybox custom overrides
   Match brand colors inside the lightbox toolbar
---------------------------------------------------------- */
.fancybox-button {
    background : rgba(223, 73, 36, .80) !important;  /* #DF4924 */
}
.fancybox-button:hover {
    background : var(--color-primary) !important;
}
.fancybox-progress {
    background : var(--color-primary) !important;     /* #DF4924 progress bar */
}
.fancybox-caption {
    background : linear-gradient(transparent, rgba(58,56,54,.85)) !important;
    font-family: "DM Sans", sans-serif;
    font-size  : 15px;
    font-weight: 600;
    padding    : 30px 20px 20px !important;
}


/* ----------------------------------------------------------
   GALLERY SECTION — Responsive
---------------------------------------------------------- */
/* Large laptop ≤ 1366px */
@media (max-width: 1366px) {
    .gallery-section__item-img-wrap {
        height: 230px;
    }
}

/* Tablet ≤ 991px — 2 columns */
@media (max-width: 1199px) {
    .gallery-section            {
        padding: 60px 0 70px;
    }
    .gallery-section__grid      {
        grid-template-columns: repeat(2, 1fr);
        gap: 14px;
    }
    .gallery-section__item-img-wrap {
        height: 220px;
    }
}

/* Tablet ≤ 768px */
@media (max-width: 768px) {
    .gallery-section__header     {
        margin-bottom: 36px;
    }
    .gallery-section__item-img-wrap {
        height: 200px;
    }
}

/* Mobile ≤ 576px — 1 column */
@media (max-width: 576px) {
    .gallery-section              {
        padding: 50px 0 60px;
    }
    .gallery-section__grid        {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    .gallery-section__item-img-wrap {
        height: 220px;
    }
    .gallery-section__header-title  {
        font-size: 26px;
    }
}

.cta-strip {
    background : linear-gradient(
        105deg,
        #DF4924 0%,
        #c93c1c 50%,
        #b83415 100%
        );
    padding    : 52px 0;
    position   : relative;
    overflow   : hidden;
}

/* Subtle dot-texture overlay for depth */
.cta-strip::before {
    content    : '';
    position   : absolute;
    inset      : 0;
    background : radial-gradient(
        circle at 80% 50%,
        rgba(255,255,255,.06) 0%,
        transparent 60%
        );
    pointer-events: none;
}

/* Inner flex row */
.cta-strip__inner {
    display         : flex;
    align-items     : center;
    justify-content : space-between;
    gap             : 40px;
    position        : relative;
    z-index         : 1;
}


/* ----------------------------------------------------------
   CTA STRIP > TEXT   (.cta-strip__text)
   Bold white paragraph — left side
---------------------------------------------------------- */
.cta-strip__text {
    font-size      : clamp(18px, 2.2vw, 26px);
    font-weight    : 500;
    color          : var(--color-white);    /* #ffffff */
    line-height    : 1.48;
    max-width      : 520px;
    margin         : 0;
    letter-spacing : -.2px;
}


/* ----------------------------------------------------------
   CTA STRIP > PHONE PILL   (.cta-strip__phone)
   Rounded pill with icon circle + number — right side
---------------------------------------------------------- */
.cta-strip__phone {
    display         : flex;
    align-items     : center;
    gap             : 0;
    background      : rgba(255, 255, 255, .15);
    border          : 2px solid rgba(255, 255, 255, .60);
    border-radius   : 50px;
    padding         : 6px 28px 6px 6px;
    flex-shrink     : 0;
    transition      : background .25s, border-color .25s, transform .2s;
    text-decoration : none;
    color: #fff;
}
.cta-strip__phone:hover {
    background   : rgba(255, 255, 255, .25);
    border-color : var(--color-white);
    transform    : translateY(-2px);
}

/* White circle with phone icon */
.cta-strip__phone-icon {
    width           : 46px;
    height          : 46px;
    background      : var(--color-white);   /* #ffffff */
    border-radius   : 50%;
    display         : flex;
    align-items     : center;
    justify-content : center;
    flex-shrink     : 0;
    margin-right    : 16px;
    box-shadow      : 0 3px 12px rgba(0,0,0,.18);
}
.cta-strip__phone-icon i {
    font-size  : 18px;
    color      : var(--color-primary);
    transform : rotate(90deg);
}

/* Phone number text */
.cta-strip__phone-number {
    font-size   : 18px;
    font-weight : 700;
    color       : var(--color-white);       /* #ffffff */
    letter-spacing: .3px;
    white-space : nowrap;
}


/* ----------------------------------------------------------
   CTA STRIP — Responsive
---------------------------------------------------------- */
/* Tablet ≤ 991px */
@media (max-width: 1199px) {
    .cta-strip            {
        padding: 44px 0;
    }
    .cta-strip__text      {
        font-size: 20px;
        max-width: 400px;
    }
    .cta-strip__phone-number {
        font-size: 16px;
    }
}

/* Tablet ≤ 768px — stack vertically */
@media (max-width: 768px) {
    .cta-strip            {
        padding: 40px 0;
    }
    .cta-strip__inner     {
        flex-direction: column;
        align-items: flex-start;
        gap: 28px;
    }
    .cta-strip__text      {
        font-size: 18px;
        max-width: 100%;
    }
}

/* Mobile ≤ 480px */
@media (max-width: 480px) {
    .cta-strip            {
        padding: 36px 0;
    }
    .cta-strip__text      {
        font-size: 16px;
    }
    .cta-strip__phone     {
        padding: 5px 20px 5px 5px;
    }
    .cta-strip__phone-icon {
        width: 40px;
        height: 40px;
        margin-right: 12px;
    }
    .cta-strip__phone-icon i {
        font-size: 16px;
    }
    .cta-strip__phone-number {
        font-size: 18px;
    }
}

.site-footer {
    position   : relative;
    background : var(--color-white);   /* #ffffff */
    overflow   : hidden;
}


/* All footer content sits above the bg */
.site-footer__main,
.site-footer__bottom {
    position : relative;
    z-index  : 1;
}


/* ----------------------------------------------------------
   SITE FOOTER > MAIN   (.site-footer__main)
   Top padding for the 4-column grid
---------------------------------------------------------- */
.site-footer__main {
    padding: 70px 0 100px;
    /*background-image: url('../images/footer-image.jpg');*/
    background-size: contain;
    background-position: bottom left;
    background-repeat: no-repeat;
    /*    position: relative;
        z-index: 1;*/
    background-color: #f7f4f4;
}


/* 4-column grid */
.site-footer__row {
    display               : grid;
    grid-template-columns : 1.4fr 1fr 1fr 1.3fr 1fr;
    gap                   : 10px;
    align-items           : start;
}


/* ----------------------------------------------------------
   SITE FOOTER > COL — shared
---------------------------------------------------------- */
.site-footer__col-title {
    font-size     : 18px;
    font-weight   : 500;
    color         : #000;     /* #e9e9e9 */
    margin-bottom : 24px;
    position      : relative;
    padding-bottom: 0;
}


/* ----------------------------------------------------------
   SITE FOOTER > COL 1 — BRAND  (.site-footer__col--brand)
---------------------------------------------------------- */

/* Logo flex row */
.site-footer__logo {
    display     : flex;
    align-items : center;
    gap         : 10px;
    margin-bottom: 20px;
    cursor      : pointer;
}

.site-footer__logo-icon {
    flex-shrink: 0;
}

.site-footer__logo-text {
    line-height: 1.1;
}

.site-footer__logo-brand-top {
    display        : block;
    font-size      : 20px;
    font-weight    : 800;
    letter-spacing : 1px;
    color          : var(--color-dark);    /* #e9e9e9 */
}
.site-footer__logo-brand-bottom {
    display     : block;
    font-size   : 20px;
    font-weight : 800;
    color       : var(--color-primary);    /* #DF4924 */
}
.site-footer__logo-tagline {
    display        : block;
    font-size      : 8px;
    color          : #aaa;
    letter-spacing : .5px;
    margin-top     : 2px;
}

/* Brand description */
.site-footer__brand-desc {
    font-size     : 16px;
    color         : #000;
    line-height   : 1.72;
    font-weight: 500;
    margin-bottom : 26px;
    max-width     : 280px;
}

/* Social icons row */
.site-footer__social {
    display : flex;
    gap     : 10px;
}

.site-footer__social-link {
    width           : 36px;
    height          : 36px;
    border          : 1.5px solid #DF4924;
    border-radius   : 50%;
    display         : flex;
    align-items     : center;
    justify-content : center;
    color           : #DF4924;   /* #e9e9e9 */
    text-decoration: none;
    font-size       : 13px;
    transition      : background .25s, border-color .25s, color .25s, transform .2s;
}
.site-footer__social-link:hover {
    background   : var(--color-primary);   /* #DF4924 */
    border-color : var(--color-primary);
    color        : var(--color-white);     /* #ffffff */
    transform    : translateY(-2px);
}


/* ----------------------------------------------------------
   SITE FOOTER > COLS 2 & 3 — LINK LISTS
   (.site-footer__col--links / .site-footer__col--services)
---------------------------------------------------------- */
.site-footer__link-list {
    list-style : none;
    padding    : 0;
    margin     : 0;
    display    : flex;
    flex-direction: column;
    gap        : 12px;
}

.site-footer__link-item {
    display : block;
}

.site-footer__link {
    display     : flex;
    align-items : center;
    gap         : 8px;
    font-size   : 14.5px;
    font-weight : 500;
    color       : #000;       /* #e9e9e9 */
    transition  : color .22s, gap .22s;
    text-decoration: none;
}
.site-footer__link:hover {
    color : var(--color-primary);          /* #DF4924 */
    gap   : 12px;
}

/* Chevron arrow icon — always #DF4924 */
.site-footer__link-icon {
    font-size  : 11px;
    color      : var(--color-primary);     /* #DF4924 */
    flex-shrink: 0;
    transition : transform .22s;
}
.site-footer__link:hover .site-footer__link-icon {
    transform : translateX(3px);
}


/* ----------------------------------------------------------
   SITE FOOTER > COL 4 — CONTACT  (.site-footer__col--contact)
---------------------------------------------------------- */
.site-footer__contact-list {
    display        : flex;
    flex-direction : column;
    gap            : 0;
}

/* Each contact row */
.site-footer__contact-item {
    display     : flex;
    align-items : center;
    gap         : 16px;
    padding     : 10px 0;
    color       : inherit;
    transition  : color .22s;
    text-decoration: none;
}
a.site-footer__contact-item:hover .site-footer__contact-text {
    color : var(--color-primary);          /* #DF4924 */
}
a.site-footer__contact-item:hover .site-footer__contact-icon-wrap {
    border-color : var(--color-primary);
}
a.site-footer__contact-item:hover .site-footer__contact-icon {
    color : var(--color-primary);
}

/* Circular icon border */
.site-footer__contact-icon-wrap {
    width           : 42px;
    height          : 42px;
    border          : 1.5px solid #000;
    border-radius   : 50%;
    display         : flex;
    align-items     : center;
    justify-content : center;
    flex-shrink     : 0;
    transition      : border-color .22s;
}

.site-footer__contact-icon {
    font-size  : 15px;
    color      : #000;        /* #e9e9e9 */
    transition : color .22s;
}

.site-footer__contact-text {
    font-size   : 14px;
    font-weight : 600;
    color       : #000;       /* #e9e9e9 */
    line-height : 1.58;
}

/* Thin horizontal divider between contact items */
.site-footer__contact-divider {
    height     : 1px;
    background : #e8e5e3;
    width      : 100%;
}


/* ----------------------------------------------------------
   SITE FOOTER > BOTTOM BAR   (.site-footer__bottom)
   Copyright left | Terms/Privacy right
---------------------------------------------------------- */
.site-footer__bottom {
    border-top : 1px solid #e8e5e3;
    padding: 30px 0 120px 0;
    background : var(--color-white);       /* #ffffff */
}

.site-footer__bottom-inner {
    display         : flex;
    align-items     : center;
    justify-content : space-between;
    gap             : 20px;
    flex-wrap       : wrap;
}

.site-footer__bottom-copy {
    font-size  : 14px;
    color      : #000;
    margin     : 0;
    line-height: 1.5;
}

.site-footer__bottom-link {
    color      : var(--color-primary);        /* #e9e9e9 */
    font-weight: 600;
    transition : color .22s;
    text-decoration: none;
}
/* Legal links */
.site-footer__bottom-legal {
    display     : flex;
    align-items : center;
    gap         : 12px;
}

.site-footer__bottom-legal-sep {
    color     : #c0bcb9;
    font-size : 13px;
}

.site-footer__bottom-legal-link {
    font-size  : 13.5px;
    color      : var(--color-primary);        /* #e9e9e9 */
    font-weight: 600;
    transition : color .22s;
    text-decoration: none;
}


/* ==========================================================
   BACK-TO-TOP BUTTON  (.back-to-top)
   Fixed bottom-right — orange circle with white arrow
========================================================== */
.back-to-top {
    position        : fixed;
    bottom          : 28px;
    right           : 28px;
    width           : 46px;
    height          : 46px;
    background      : var(--color-primary);   /* #DF4924 */
    color           : var(--color-white);     /* #ffffff */
    border          : 2px solid var(--color-white);
    border-radius   : 50%;
    display         : flex;
    align-items     : center;
    justify-content : center;
    font-size       : 16px;
    cursor          : pointer;
    z-index         : 9999;
    opacity         : 0;
    transform       : translateY(20px);
    transition      : opacity .3s, transform .3s, background .25s;
    box-shadow      : 0 4px 16px rgba(223,73,36,.40);
}
.back-to-top.is-visible {
    opacity   : 1;
    transform : translateY(0);
}
.back-to-top:hover {
    background : var(--color-primary-dark);
    transform  : translateY(-3px);
}

.call-icon i{
    transform: rotate(90deg);
}

.header-social {
    display: flex;
    align-items: center;
    gap: 5px;
}

.header-social a {
    width: 35px;
    height: 35px;
    background: #e9e9e9;
    color: #DF4924;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    text-decoration: none;
    transition: 0.3s ease;
}

/* Hover Effects */
.header-social a:hover {
    transform: translateY(-3px);
}

/* Brand Colors */
.header-social a:hover {
    background: #e9e9e9;
    color: #000;
}

/* ----------------------------------------------------------
   SITE FOOTER — Responsive
---------------------------------------------------------- */
/* Large laptop ≤ 1280px */
@media (max-width: 1280px) {
    .site-footer__row  {
        gap: 36px;
    }
    .site-footer__main {
        /*padding: 60px 0 180px;*/
    }
}

/* Tablet ≤ 991px — 2×2 grid */
@media (max-width: 1199px) {
    .site-footer__row  {
        grid-template-columns : 1fr 1fr;
        gap                   : 40px 36px;
    }
    .site-footer__main {
        padding: 50px 0px 0px 0px;
    }
}

/* Tablet ≤ 768px */
@media (max-width: 768px) {
    .site-footer__bg   {
        height: 180px;
        bottom: 50px;
    }
    .site-footer__main {
        /*padding: 48px 0 140px;*/
    }
}

/* Mobile ≤ 576px — single column */
@media (max-width: 576px) {
    .site-footer__row  {
        grid-template-columns: 1fr;
        gap: 32px;
    }
    .site-footer__main {
        /*padding: 44px 0 120px;*/
    }
    .site-footer__bg   {
        height: 140px;
        bottom: 46px;
    }

    .site-footer__bottom-inner {
        flex-direction : column;
        align-items    : center;
        text-align     : center;
        gap            : 12px;
    }

    .back-to-top {
        bottom: 18px;
        right: 18px;
        width: 42px;
        height: 42px;
        font-size: 18px;
    }
}

/* ================= MOBILE MENU ================= */

/* MOBILE TOGGLE BUTTON */
.mobile-toggle {
    width: 30px;
    height: 22px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    cursor: pointer;
}

.mobile-toggle span {
    display: none;
    height: 3px;
    width: 100%;
    background: #000;
    border-radius: 2px;
    transition: all 0.3s ease;
}

/* ===== CROSS ANIMATION ===== */
.mobile-toggle.is-open span:nth-child(1) {
    transform: rotate(45deg) translate(5px, 5px);
}

.mobile-toggle.is-open span:nth-child(2) {
    opacity: 0;
}

.mobile-toggle.is-open span:nth-child(3) {
    transform: rotate(-45deg) translate(6px, -6px);
}

/* Mobile menu style */
@media (max-width: 1199px) {

    .mobile-toggle {
        display: flex;
        position: relative;
        z-index: 11;
    }

    .main-menu {
        position: fixed;
        top: 0;
        right: -100%;
        width: 280px;
        height: 100%;
        background: #fff;
        padding: 30px 20px;
        transition: 0.3s;
        z-index: 9999;
        overflow-y: auto;
    }

    .mobile-toggle span {
        display: block;
    }

    .main-menu.active {
        right: 0;
        width: 100%;
    }

    .main-menu ul {
        display: block;
        padding-left: 0;
    }

    .main-menu ul li {
        display: block;
        margin: 0;
        border-bottom: 1px solid #eee;
    }

    .main-menu ul li a {
        display: block;
        padding: 12px 0;
    }

    /* Hide hover dropdown */
    .main-menu ul li .dropdown {
        position: static;
        opacity: 1;
        visibility: visible;
        transform: none;
        display: none;
        box-shadow: none;
    }
    #mobile-menu img{
        margin-bottom: 20px;
        max-width: 250px;
    }

    .main-menu ul li.open .dropdown {
        display: block;
    }

    /* Hide desktop actions */
    .header__actions {
        display: none;
    }
}

.mobile-logo{
    display: none;
}

@media (max-width: 1199px) {
    .mobile-logo img {
        display: block;
        max-width: 150px;
    }
    .contact-section__info-watermark{
        position: static;
        width: unset;
        height: unset;
    }
    .header-main{
        padding: 30px 0px;
        display: unset;
    }
    .mobile-logo{
        display: block;
    }
    .header-1 .header-main .main-menu ul li{
        display: block;
    }
    .mobile-flex{
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 20px 0px;
    }
    .header-1 .header-main .header-right{
        display: unset !important;
    }
}

.d-none-desktop{
    display: none;
}
@media (max-width: 768px) {
    .d-none-desktop{
        display: block !important;
    }
}

/* ── DESKTOP: completely hidden ── */
.mobile-contact-section {
    display: none;
}

/* ── MOBILE only ── */
@media (max-width: 768px) {
    .mobile-contact-section {
        display: block;
        padding: 20px 0px;
        border-top: 1px solid var(--divider);
    }

    /* ── Contact Cards ── */
    .contact-list {
        display: flex;
        flex-direction: column;
        gap: 12px;
        margin-bottom: 28px;
    }

    .contact-card {
        display: flex;
        align-items: center;
        gap: 14px;
        background: #ffffff;
        border: 1px solid rgba(26,35,64,0.07);
        border-radius: var(--radius);
        padding: 14px 16px;
        text-decoration: none;
        color: var(--navy);
        box-shadow: 0 2px 10px rgba(26,35,64,0.06);
        transition: transform 0.2s ease, box-shadow 0.2s ease;
        -webkit-tap-highlight-color: transparent;
        position: relative;
        overflow: hidden;
    }

    .contact-card::before {
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        width: 4px;
        background: linear-gradient(180deg, var(--brand-orange), var(--brand-red));
        border-radius: 4px 0 0 4px;
        opacity: 0;
        transition: opacity 0.2s;
    }

    .contact-card:active {
        transform: scale(0.98);
        box-shadow: 0 1px 4px rgba(26,35,64,0.08);
    }

    .contact-card:active::before {
        opacity: 1;
    }

    .icon-wrap {
        width: 44px;
        height: 44px;
        border-radius: 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
    }

    .icon-wrap.phone {
        background: linear-gradient(135deg, #fff0ec, #ffe0d6);
    }
    .icon-wrap.mail {
        background: linear-gradient(135deg, #edf3ff, #dce8ff);
    }
    .icon-wrap.location {
        background: linear-gradient(135deg, #f0fff4, #d8f5e4);
    }

    .icon-wrap svg {
        width: 20px;
        height: 20px;
    }

    .contact-info {
        flex: 1;
        min-width: 0;
    }

    .contact-label {
        font-size: 10px;
        font-weight: 600;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        color: #8a93ab;
        margin-bottom: 2px;
    }

    .contact-value {
        font-size: 18px;
        font-weight: 500;
        color: var(--navy);
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        line-height: 1.4;
    }

    .contact-value.address {
        white-space: normal;
        font-size: 18px;
        line-height: 1.5;
    }

    .contact-arrow {
        color: #c4cad9;
        flex-shrink: 0;
    }

    /* ── Divider ── */
    .section-divider {
        display: flex;
        align-items: center;
        gap: 10px;
        margin-bottom: 20px;
    }
    .section-divider span {
        font-size: 11px;
        font-weight: 600;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        color: #8a93ab;
        white-space: nowrap;
    }
    .section-divider::before,
    .section-divider::after {
        content: '';
        flex: 1;
        height: 1px;
        background: var(--divider);
    }

    /* ── Social Icons ── */
    .social-row {
        display: flex;
        gap: 12px;
        justify-content: center;
    }

    .social-btn {
        width: 48px;
        height: 48px;
        border-radius: 14px;
        display: flex;
        align-items: center;
        justify-content: center;
        text-decoration: none;
        background: #fff;
        border: 1px solid rgba(26,35,64,0.08);
        box-shadow: 0 2px 8px rgba(26,35,64,0.06);
        transition: transform 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
        -webkit-tap-highlight-color: transparent;
    }

    .social-btn svg {
        width: 20px;
        height: 20px;
        transition: fill 0.18s ease;
    }

    .social-btn:active {
        transform: scale(0.9);
    }

    /* Per-brand hover colors */
    .social-btn.fb:hover,
    .social-btn.fb:focus {
        background: #1877f2;
        box-shadow: 0 4px 14px rgba(24,119,242,0.35);
    }
    .social-btn.fb:hover svg, .social-btn.fb:focus svg {
        fill: #fff;
    }

    .social-btn.tw:hover,
    .social-btn.tw:focus {
        background: #000;
        box-shadow: 0 4px 14px rgba(0,0,0,0.25);
    }
    .social-btn.tw:hover svg, .social-btn.tw:focus svg {
        fill: #fff;
    }

    .social-btn.ig:hover,
    .social-btn.ig:focus {
        background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285aeb 90%);
        box-shadow: 0 4px 14px rgba(214,36,159,0.4);
    }
    .social-btn.ig:hover svg, .social-btn.ig:focus svg {
        fill: #fff;
    }

    .social-btn.li:hover,
    .social-btn.li:focus {
        background: #0a66c2;
        box-shadow: 0 4px 14px rgba(10,102,194,0.35);
    }
    .social-btn.li:hover svg, .social-btn.li:focus svg {
        fill: #fff;
    }
}

/* ── Demo helper (desktop preview notice) ── */
.desktop-notice {
    display: block;
    text-align: center;
    padding: 80px 20px;

    color: #8a93ab;
    font-size: 18px;
}
@media (max-width: 768px) {
    .desktop-notice {
        display: none;
    }
}

#header-sticky {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 999;
    background: #fff;
    transition: top 0.3s ease;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

#header-sticky.sticky {
    top: 0; /* slides in when class is added */
}

@media (min-width: 1200px) and (max-width: 1500px) {
    .header-shape{
        width: 23%;
    }
    .header-main .main-menu ul li{
        margin-inline-end: 20px;
    }
    .header-1 .header-main .header-right{
        gap: 0px;
    }
}

@media (max-width: 768px) {
    .home-banner__slide-title{
        font-size: 41px;
    }
    .home-banner{
        margin: 100px 0px 0px 0px;
    }
}

.mobilecallbtn {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    text-align: center;
    z-index: 999;
    color: #fff;
    border-top: 1px solid #fff;
}

.mobilecallbtn a:first-child {
    border-right: 1px solid #fff;
}

.mobilecallbtn {
    text-align: center;
    color: #fff;
}

.mobilecallbtn a {
    color: #fff;
    text-decoration: none;
    width: 50%;
    float: left;
    vertical-align: middle;
    font-size: 16px;
    padding: 10px 0;
}

.wp img {
    width: 100%;
    max-width: 20px;
    display: inline-block;
    vertical-align: middle;
}

.copyright p {
    text-align: center;
    color: #000;
    font-size: 19px;
}

@media only screen and (max-width: 1199px) {
    .mobilecallbtn {
        display: block;
        background-color: #ec421f;
        padding-bottom: 215px;
    }

    .mobilecallbtn a:hover {
        background-color: #000000;
        color: #ffffff;
    }
    .vision .vision-flex .vision-content .vision-text{
        font-size: 18px !important;
        width: 100% !important;
    }
    .footer-copyright{
        display: none;
    }
    .home-banner__arrow--prev, .home-banner__arrow--next{
        display: none;
    }
    .header-main .main-menu ul li.has-dropdown:hover .dropdown{
        position: unset;
        box-shadow: unset;
    }
}

@media only screen and (max-width: 468px) {
    .mobilecallbtn {
        padding-bottom: 190px;
    }
}

/* Popup Styling */
.custom-popup .modal-content {
    border-radius: 10px;
    padding: 20px;
}

/* Title */
.popup-title {
    font-size: 22px;
    font-weight: 600;
    margin-bottom: 15px;
    text-align: center;
    color: #DF4924;
}

/* Close button */
.custom-close {
    position: absolute;
    right: 15px;
    top: 15px;
}

/* Form */
.quote-form .form-control {
    height: 45px;
    border-radius: 6px;
    border: 1px solid #ddd;
}

.quote-form .form-control:focus {
    border-color: #DF4924;
    box-shadow: 0 0 0 0.2rem rgba(223, 73, 36, 0.15);
}

/* Button */
.quote-form .btn {
    height: 45px;
    font-weight: 500;
    background-color: #DF4924;
    border-color: #DF4924;
}

.quote-form .btn:hover {
    background-color: #DF4924;
    border-color: #DF4924;
}

/* Header Button */
.header__actions-quote {
    background-color: #DF4924;
    color: #fff;
    padding: 10px 20px;
    border-radius: 12px;
    text-decoration: none;
    display: inline-block;
}

.header__actions-quote:hover {
    background-color: #DF4924;
    color: #fff;
}

/* Responsive */
@media (max-width: 576px) {
    .modal-dialog {
        margin: 15px;
    }

    .popup-title {
        font-size: 18px;
    }
}

.inner-banner-title {
    font-size: 39px;
    line-height: 60px !important;
    font-weight: 500;
    line-height: var(--text-5xl);
    color: #ffffff;
    position: relative;
    display: inline-block;
    letter-spacing: 2px;
    padding: 10px 30px;
    z-index: 1;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
}

.inner-banner-title::before {
    content: '';
    position: absolute;
    inset: 0;
    background: #DF4924;
    border-radius: 6px;
    z-index: -1;
}

.inner-banner-title::after {
    content: '';
    position: absolute;
    bottom: -6px;
    left: 10px;
    right: -6px;
    top: 6px;
    background: rgb(223 73 36 / 53%);
    border-radius: 6px;
    z-index: -2;
}

/*New Homepage Code Start*/


/* CONTAINER */
.avitrupt-container {
    width: 90%;
    margin: auto;
    max-width: 1200px;
}

/* BANNER */
.avitrupt-banner {
    position: relative;
    height: 100vh;
    display: flex;
    align-items: center;
    overflow: hidden;
    color: #ffffff;
}

/* VIDEO */
.avitrupt-banner-video {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: translate(-50%, -50%);
    z-index: 1;
}

/* OVERLAY */
.avitrupt-banner-overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.65);
    z-index: 2;
}

/* CONTENT */
.avitrupt-banner-content {
    position: relative;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    margin-top: 50px;
}

/* LEFT */
.avitrupt-banner-left {
    width: 55%;
}

.avitrupt-offer {
    color: #DF4924;
    font-size: 18px;
    margin-bottom: 10px;
    font-weight: 600;
}

.avitrupt-title {
    font-size: 29px;
    line-height: 1.3;
    margin-bottom: 15px;
}

.avitrupt-title span {
    color: #DF4924;
}

.avitrupt-subtitle {
    font-size: 18px;
    margin-bottom: 20px;
    color: #ddd;
}

.avitrupt-features {
    list-style: none;
    padding: 0;
    margin-bottom: 20px;
}

.avitrupt-features li {
    margin-bottom: 8px;
    position: relative;
    padding-left: 20px;
}

.avitrupt-features li::before {
    content: "✔";
    position: absolute;
    left: 0;
    color: #DF4924;
}

.avitrupt-subsidy p {
    margin: 5px 0;
    font-weight: 600;
    color: #fff;
}

/* FORM */
.avitrupt-banner-right {
    width: 40%;
}

.avitrupt-form {
    background: #ffffff;
    padding: 30px;
    border-radius: 10px;
    color: #000;
}

.avitrupt-form-title {
    margin-bottom: 20px;
    text-align: center;
    color: #DF4924;
}

.avitrupt-form-group {
    margin-bottom: 15px;
}

.avitrupt-form-group input,
.avitrupt-form-group select {
    width: 100%;
    padding: 12px;
    border: 1px solid #ccc;
    outline: none;
    border-radius: 5px;
    font-size: 18px;
}

.avitrupt-form-group input:focus,
.avitrupt-form-group select:focus {
    border-color: #DF4924;
}

/* BUTTON */
.avitrupt-btn {
    width: 100%;
    padding: 12px;
    background: #DF4924;
    color: #fff;
    border: none;
    border-radius: 12px;
    font-size: 16px;
    cursor: pointer;
    transition: 0.3s;
}

.avitrupt-btn:hover {
    background: #000;
    color: #fff;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .avitrupt-banner-content {
        flex-direction: column;
        padding-top: 190px;
        padding-bottom: 60px;
    }

    .avitrupt-banner-left,
    .avitrupt-banner-right {
        width: 100%;
    }

    .avitrupt-title {
        font-size: 30px;
    }
}


/*Second Section Start*/


/* SECTION */
.avitrupt-different {
    padding: 90px 0 120px;
    background: url('../images/background-image.jpg') no-repeat center center;
    background-size: cover;
    position: relative;
    z-index: 2;
}
.avitrupt-different::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5));
    background-size: cover;
    z-index: -2;
}

/* HEADING */
.avitrupt-different-heading {
    text-align: center;
    margin-bottom: 55px;
    opacity: 0;
    transform: translateY(40px);
}

.avitrupt-different-heading .top-label {
    display: inline-block;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #DF4924;
    border: 1px solid rgba(223, 73, 36, 0.3);
    padding: 5px 16px;
    border-radius: 30px;
    margin-bottom: 18px;
}
.heading-bar {
    width: 50px;
    height: 3px;
    background: #DF4924;
    margin: 18px auto 0;
    border-radius: 2px;
}

.avitrupt-card {
    margin: 8px 12px 20px;
    border-radius: inherit;
    position: relative;
    height: 310px;
    box-shadow: 0 2px 16px rgba(0, 0, 0, 0.06);
    transition: border-color 0.4s ease, box-shadow 0.4s ease;
    overflow: hidden; /* ✅ ADD THIS */
}

/* MAIN WRAPPER */
.custom-owl-slider {
    position: relative;
}

/* NAV CONTAINER */
.custom-owl-slider .owl-nav {
    position: absolute;
    bottom: -20%;
    width: 100%;
    display: flex;
    pointer-events: none;
    left: 44%;
}

/* BUTTON STYLE */
.custom-owl-slider .owl-nav button {
    width: 45px;
    height: 45px;
    background: #DF4924 !important;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: all;
    border: none !important;
    transition: all 0.3s ease;
    border-radius: 50% !important;
}

/* REMOVE DEFAULT TEXT */
.custom-owl-slider .owl-nav button span {
    font-size: 0;
}

/* CUSTOM ICON */
.custom-owl-slider .owl-nav button::before {
    content: '';
    width: 10px;
    height: 10px;
    border: solid #fff;
    border-width: 0 3px 3px 0;
    display: inline-block;
}

/* LEFT */
.custom-owl-slider .owl-prev::before {
    transform: rotate(135deg);
}

/* RIGHT */
.custom-owl-slider .owl-next::before {
    transform: rotate(-45deg);
}

/* HOVER */
.custom-owl-slider .owl-nav button:hover {
    background: #000 !important;
}

/* POSITION */
.custom-owl-slider .owl-prev {
    margin-left: -25px;
}

.custom-owl-slider .owl-next {
    margin-right: -25px;
}

.avitrupt-card:hover {
    border-color: #DF4924;
    box-shadow: 0 8px 40px rgba(223, 73, 36, 0.15), 0 2px 16px rgba(0, 0, 0, 0.08);
}

/* BG IMAGE — hidden by default, shown on hover */
.card-bg-img {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    opacity: 1;
    transition: opacity 0.55s cubic-bezier(0.4, 0, 0.2, 1), transform 0.65s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 0;
    border-radius: 12px;
    overflow: hidden;
}

.avitrupt-card:hover .card-bg-img {
    opacity: 1;
    transform: scale(1);
}

/* Dark overlay — shows over the image on hover */
.card-overlay {
    position: absolute;
    inset: 0;
    background: rgba(10, 10, 10, 0.72);
    opacity: 1;
    transition: opacity 0.4s ease;
    z-index: 1;
    border-radius: 12px;
    overflow: hidden;
}

.avitrupt-card:hover .card-overlay {
    opacity: 1;
}

/* CONTENT */
.card-content {
    position: relative;
    z-index: 3;
    padding: 26px 24px 24px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    border: 1px solid #DF4924;
    border-radius: 12px;
}

/* NUMBER BADGE */
.card-number {
    position: absolute;
    top: 16px;
    right: 18px;
    font-size: 18px;
    font-weight: 700;
    color: #DF4924;
    background: rgba(223, 73, 36, 0.08);
    border: 1px solid rgba(223, 73, 36, 0.2);
    border-radius: 20px;
    padding: 3px 11px;
    z-index: 4;
    transition: background 0.3s, color 0.3s, border-color 0.3s;
}

.avitrupt-card:hover .card-number {
    background: #DF4924;
    color: #ffffff;
    border-radius: 12px;
}

/* ICON BOX */
.card-icon {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: rgba(223, 73, 36, 0.07);
    border: 1px solid rgba(223, 73, 36, 0.15);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    margin-bottom: 12px;
    transition: background 0.35s, border-color 0.35s;
}

.avitrupt-card:hover .card-icon {
    background: rgba(255, 255, 255, 0.14);
    border-color: rgba(255, 255, 255, 0.25);
}

/* TITLE */
.card-content h3 {
    font-size: 17px;
    font-weight: 700;
    color: #fff;
    line-height: 1.35;
    margin-bottom: 10px;
    transition: color 0.3s ease, transform 0.35s ease;
    transform: translateY(3px);
}

.avitrupt-card:hover .card-content h3 {
    color: #ffffff;
    transform: translateY(0);
}

/* BODY — hidden until hover */
.card-body {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height 0.45s ease, opacity 0.4s ease 0.06s;
}

.avitrupt-card:hover .card-body {
    max-height: 180px;
    opacity: 1;
    border-radius: 12px;
}

.card-content p,
.card-content li {
    font-size: 18px;
    line-height: 1.65;
    color: rgba(255, 255, 255, 0.85);
}

.card-content ul {
    padding-left: 15px;
}

.card-content li {
    margin-bottom: 3px;
}

/* STATS STRIP */
.stats-strip {
    display: flex;
    justify-content: center;
    gap: 60px;
    margin-top: 75px;
    padding-top: 44px;
    border-top: 1px solid #eeeeee;
    flex-wrap: wrap;
}

.stat-item {
    text-align: center;
    opacity: 0;
    transform: translateY(24px);
}

.stat-number {
    font-size: 40px;
    font-weight: 800;
    color: #DF4924;
    line-height: 1;
}

.stat-label {
    font-size: 18px;
    color: #888888;
    margin-top: 6px;
    letter-spacing: 0.4px;
}

.section-bg-text {
    position: absolute;
    bottom: 0%;
    left: 0%;
    font-size: 130px;
    font-weight: 800;
    letter-spacing: 10px;
    color: transparent; /* ✅ transparent fill */
    -webkit-text-stroke: 1.5px #ffffff; /* ✅ white border */
    white-space: nowrap;
    z-index: 0;
    pointer-events: none;
    user-select: none;
    opacity: 0.3;
}

/* make sure content stays above */
.avitrupt-different .container,
.avitrupt-different .floating-elements {
    position: relative;
    z-index: 2;
}

/* RESPONSIVE */
@media (max-width: 768px) {
    .avitrupt-different {
        padding: 120px 0px;
    }
    .stats-strip {
        gap: 28px;
    }
    .stat-number {
        font-size: 30px;
    }
    .avitrupt-card {
        height: 290px;
    }
}


.avitrupt-installation-header {
    position: relative;
    padding: 80px 20px;
    text-align: center;
}


.avitrupt-installation-header h2 {
    font-size: 36px;
    color: #000;
    margin-bottom: 10px;
}

.avitrupt-installation-header h2::after {
    content: "";
    width: 80px;
    height: 3px;
    background: #DF4924;
    display: block;
    margin: 15px auto 0;
}

.avitrupt-installation-header p {
    font-size: 16px;
    color: #000;
    max-width: 700px;
    margin: 15px auto 40px;
}

/* VIDEO SECTION */
.avitrupt-installation-video {
    width: 100%;
    height: 60vh;
    position: relative;
    overflow: hidden;
}

/* VIDEO */
.avitrupt-installation-bg {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* BLACK OVERLAY */
.avitrupt-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5); /* adjust opacity here */
    z-index: 1;
}

/* CONTENT */
.avitrupt-installation-content {
    position: absolute;
    top: 30%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    color: #ffffff;
    z-index: 2;
    width: 80%;
}

.avitrupt-installation-content p {
    font-size: 20px;
    line-height: 1.6;
}

/* COUNTER WRAPPER */
.avitrupt-counter-wrapper {
    display: flex;
    justify-content: center;
    gap: 60px;
    flex-wrap: wrap;
}

/* COUNTER BOX */
.avitrupt-counter-box {
    text-align: center;
    color: #fff;
    position: relative;
}

/* BIG NUMBER */
.avitrupt-counter-box h3 {
    font-size: 75px;
    font-weight: 700;
    margin: 0;
    display: inline-block;
}

/* PLUS SIGN */
.avitrupt-counter-box .plus {
    font-size: 75px;
    font-weight: 700;
    color: #DF4924;
    margin-left: 5px;
}

/* TITLE */
.avitrupt-counter-box p {
    margin-top: 10px;
    font-size: 16px;
    letter-spacing: 1px;
}

/* RESPONSIVE */
@media (max-width: 768px) {
    .avitrupt-counter-wrapper {
        gap: 30px;
    }

    .avitrupt-counter-box h3 {
        font-size: 40px;
    }

    .avitrupt-counter-box .plus {
        font-size: 28px;
    }
}

/* RESPONSIVE */
@media (max-width: 768px) {

    .avitrupt-installation-video {
        height: 60vh;
    }

    .avitrupt-installation-content p {
        font-size: 16px;
    }
}



/* SECTION */

.solar-process {
    padding: 90px 20px 185px 20px;
    background: url('../images/white-texture.jpg') no-repeat center center;
    background-size: cover;
    position: relative;
    z-index: 2;
    text-align: center;
}

/* HEADER */
.solar-header h2 {
    font-size: 30px;
    font-weight: 500;
    color: var(--color-primary);
    letter-spacing: -.4px;
}

.solar-header p {
    font-size: 16px;
    color: #000;
    max-width: 700px;
    margin: 15px auto 150px;
    line-height: 1.8;
}

/* ORBIT WRAPPER */
.solar-orbit-wrapper {
    position: relative;
    width: 100%;
    max-width: 900px;
    height: 900px;
    margin: 0 auto;
}

/* RING */
.solar-orbit-ring {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 625px;
    height: 625px;
    border: 2px dashed #d0d0d0;
    border-radius: 50%;
}

/* CENTER IMAGE */
.solar-center {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.solar-center img {
    width: 90%;
    height: auto;
    object-fit: contain;
}

/* STEP */
.solar-step {
    position: absolute;
    display: flex;
    align-items: center;
    gap: 15px;
    transform: translate(-50%, -50%);
    width: auto;
}

/* ICON */
.solar-step-icon {
    width: 65px;
    height: 65px;
    border-radius: 50%;
    background: #DF4924;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    box-shadow: 0 6px 18px rgba(223,73,36,0.4);
    border: 3px solid #fff;
    transition: 0.3s;
    flex-shrink: 0;
}

.solar-step-icon img{
    max-width: 35px;
}

.solar-step:hover .solar-step-icon {
    background: #000000;
    transform: scale(1.15);
}

/* TEXT */
.solar-step h4 {
    font-size: 21px;
    font-weight: 600;
    color: #DF4924;
    margin-bottom: 10px;
}

.solar-step p {
    font-size: 18px;
    color: #000;
    line-height: 1.6;
    max-width: 240px;
}

/* POSITIONS WITH TEXT ALIGNMENT */
/* TOP CENTER */
.solar-step-1 {
    left: 50%;
    top: 0%;
    flex-direction: column;
    text-align: center;
}

/* RIGHT SIDE */
.solar-step-2 {
    left: 100%;
    top: 25%;
    flex-direction: row;
    text-align: left;
    width: 330px;
}

.solar-step-3 {
    left: 100%;
    top: 75%;
    flex-direction: row;
    text-align: left;
    width: 330px;
}

/* BOTTOM CENTER */
.solar-step-4 {
    left: 50%;
    top: 105%;
    flex-direction: column;
    text-align: center;
}

/* LEFT SIDE */
.solar-step-5 {
    left: 0%;
    top: 75%;
    flex-direction: row-reverse;
    text-align: right;
}

.solar-step-6 {
    left: 0%;
    top: 25%;
    flex-direction: row-reverse;
    text-align: right;
}

/* CONNECTOR SVG */
.solar-connectors {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.solar-step::before {
    content: "";
    position: absolute;
    background: repeating-linear-gradient(
        to right,
        #DF4924 0,
        #DF4924 5px,
        transparent 5px,
        transparent 10px
        );
    height: 2px;
    width: 100px; /* default length */
    z-index: 0;
}

.solar-step-1::before {
    width: 2px;
    height: 140px;
    background: repeating-linear-gradient(
        to bottom,
        #DF4924 0,
        #DF4924 5px,
        transparent 5px,
        transparent 10px
        );
    left: 50%;
    top: 105%;
    transform: translateX(-50%);
}

.solar-step-2::before {
    width: 120px;
    left: -145px;
    top: 95%;
    transform: rotate(150deg);
}

.solar-step-3::before {
    width: 160px;
    left: -200px;
    top: -20%;
    transform: rotate(30deg);
}

.solar-step-4::before {
    width: 2px;
    height: 100px;
    background: repeating-linear-gradient(to bottom, #DF4924 0, #DF4924 5px, transparent 5px, transparent 10px);
    left: 50%;
    top: -50%;
    transform: translateX(-50%);
}
.solar-step-5::before {
    width: 160px;
    right: -160px;
    top: -20%;
    transform: rotate(-35deg);
}
.solar-step-6::before {
    width: 140px;
    right: -150px;
    top: 95%;
    transform: rotate(30deg);
}

/* ========================= */
/* TABLET */
@media (max-width: 1024px) {

    .solar-process {
        padding: 70px 15px 100px;
    }


    .solar-orbit-wrapper {
        max-width: 700px;
        height: 700px;
    }

    .solar-orbit-ring {
        width: 520px;
        height: 520px;
    }

    .solar-center img {
        width: 70%;
    }

    /* Reduce step width */
    .solar-step {
        width: 160px;
    }

    .solar-step p {
        max-width: 200px;
        font-size: 18px;
    }

    .solar-step h4 {
        font-size: 18px;
    }

    /* Slight adjustment for side steps */
    .solar-step-2,
    .solar-step-3 {
        width: 200px;
    }

    .solar-step-5,
    .solar-step-6 {
        width: 200px;
    }
}

@media (max-width: 768px) {

    .solar-process {
        padding: 50px 15px 70px;
    }

    .solar-step::before {
        display: none;
    }

    .solar-header p {
        font-size: 18px;
        margin-bottom: 50px;
    }

    /* Convert orbit into vertical layout */
    .solar-orbit-wrapper {
        height: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 25px;
    }

    /* Hide orbit visuals */
    .solar-orbit-ring,
    .solar-connectors {
        display: none;
    }

    /* Center image */
    .solar-center {
        position: relative;
        transform: none;
        margin-bottom: 20px;
        top: unset;
        left: unset;
    }

    .solar-center img {
        width: 100%;
    }

    /* Reset all steps */
    .solar-step {
        position: relative;
        left: auto !important;
        top: auto !important;
        transform: none;
        width: 100%;
        max-width: 320px;
        flex-direction: column !important;
        text-align: center !important;
        margin: 0 auto;
    }

    .solar-step-icon {
        width: 55px;
        height: 55px;
        margin-bottom: 10px;
    }

    .solar-step-icon img {
        max-width: 35px;
    }

    .solar-step h4 {
        font-size: 18px;
    }

    .solar-step p {
        font-size: 18px;
        max-width: 100%;
    }
}

/* SECTION */
.avitrupt-testimonial {
    padding: 80px 0;
    background: url('../images/Group-163794.png') no-repeat center center;
    background-size: cover;
    position: relative;
    z-index: 2;
}

/* HEADER */
.avitrupt-testimonial-header {
    text-align: center;
    margin-bottom: 50px;
}

.avitrupt-testimonial-header h2 {
    color: #DF4924;
    font-size: 32px;
    max-width: 800px;
    margin: auto;
}

/* VIDEO BOX */
.avitrupt-video-box {
    border-radius: 12px;
    overflow: hidden;
    border: 2px solid #DF4924;
}

.avitrupt-video-box video {
    width: 100%;
    display: block;
}

/* OWL NAV */
.avitrupt-testimonial .owl-nav {
    text-align: center;
    margin-top: 20px;
}

.avitrupt-testimonial .owl-nav button {
    width: 40px;
    height: 40px;
    background: #DF4924 !important;
    color: #fff !important;
    border-radius: 50%;
    margin: 0 5px;
    transition: 0.3s;
}

.avitrupt-testimonial .owl-nav button:hover {
    background: #fff !important;
    color: #000 !important;
}

/* DOTS */
.avitrupt-testimonial .owl-dots {
    text-align: center;
    margin-top: 15px;
}

.avitrupt-testimonial .owl-dot span {
    background: #fff;
}

.avitrupt-testimonial .owl-dot.active span {
    background: #DF4924;
}


@media (max-width: 1199px) {
    .avitrupt-banner{
        height: 100% !important;
    }
    .site-footer__bottom{
        padding-bottom: 285px;
    }
}
body #call {
    position: fixed;
    bottom: 96px !important;
    right: 18px;
    cursor: pointer;
    z-index: 100;
}

body #call img {
    position: relative;
    right: 0px;
    bottom: 57px;
    padding: 10px;
    color: #fff;
    border-radius: 50%;
    background-color: #DF4924;
    display: inline-block;
    box-shadow: rgb(255 255 255 / 35%) 0px 5px 15px;
    font-size: 22px;
    font-weight: 900;
    padding: 10px;
    animation: pulseBlue 1.5s infinite ease-out;
}

body #call i:hover {
    background-color: #65b243;
}

@keyframes pulseBlue {
    0% {
        box-shadow: rgb(223 73 36) 0px 5px 15px, 0 0 0 0 var(--primary);
    }

    80% {
        box-shadow: #DF4924 0px 5px 15px, 0 0 0 14px rgba(8, 106, 216, 0);
    }

    100% {
        box-shadow: #DF4924 0px 5px 15px, 0 0 0 0 rgba(8, 106, 216, 0);
    }
}
@media (max-width: 768px) {
    body #whatsapp , body #call {
        display: none;
    }
}
/* Whatsapp Icon Css Start  */
#whatsapp {
    position: fixed;
    bottom: 95px !important;
    right: 18px;
    cursor: pointer;
    z-index: 99999;
}

#whatsapp img {
    border-radius: 50%;
    animation: pulseGreen 1.5s infinite ease-out;
    font-size: 31px;
    color: #ffffff;
    background-color: #11c035;
    text-align: center;
    display: inline-block;
    box-shadow: rgb(255 255 255 / 35%) 0px 5px 15px;
}

@keyframes pulseGreen {
    0% {
        box-shadow: 0 0 0 0 rgba(17, 192, 53, 0.5);
    }

    80% {
        box-shadow: 0 0 0 14px rgba(17, 192, 53, 0);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(17, 192, 53, 0);
    }
}

@media only screen and (max-width: 1199px) {
    #whatsapp{
        display: none;
    }
}

.avitrupt-calc-modern {
    padding: 80px 20px;
    color: #fff;
    background: url('../images/shape-9.496bfcec.png') no-repeat center center;
    background-size: cover;
    position: relative;
    z-index: 2;
}

.avitrupt-heading {
    text-align: center;
    font-size: 36px;
    margin-bottom: 50px;
    color: #DF4924;
}

/* WRAPPER */
.avitrupt-calc-wrapper {
    display: flex;
    gap: 40px;
    align-items: stretch;
}

/* FORM */
.avitrupt-calc-form {
    width: 40%;
    background: #fff;
    padding: 30px;
    border-radius: 15px;
    box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
    border: 1px solid #DF4924;
}

/* RESULT */
.avitrupt-calc-result {
    width: 60%;
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 20px;
}

/* GROUP */
.avitrupt-group {
    margin-bottom: 20px;
}

.avitrupt-group label {
    display: block;
    margin-bottom: 8px;
    color: #000;
}

/* TOGGLE */
.avitrupt-toggle {
    display: flex;
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
}

.avitrupt-toggle span {
    flex: 1;
    padding: 10px;
    text-align: center;
    cursor: pointer;
    color: #000;
    background: #f7f4f4;
}

.avitrupt-toggle span.active {
    background: #DF4924;
    color: #fff;
}

/* INPUT */
.avitrupt-input-box {
    display: flex;
    align-items: center;
    background: #222;
    border-radius: 8px;
}

.avitrupt-input-box input {
    flex: 1;
    padding: 12px;
    background: transparent;
    border: none;
    color: #fff;
}

#unit {
    padding: 10px;
    background: #DF4924;
}

/* BUTTON */
.avitrupt-btn {
    width: 100%;
    padding: 14px;
    background: #DF4924;
    border: none;
    color: #fff;
    border-radius: 12px;
    cursor: pointer;
}

/* RESULT BOX */
.result-box {
    background: #fff;
    padding: 25px;
    border-radius: 12px;
    text-align: center;
    transition: 0.3s;
    box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
    border: 1px solid #DF4924;
}

.result-box:hover {
    transform: translateY(-5px);
}

.result-box h3 {
    color: #DF4924;
}

.result-box p{
    color: #000;
}

/* FIX INPUT STYLE */
.avitrupt-group input {
    width: 100%;
    padding: 12px;
    border: none;
    outline: none;
    background: #f7f4f4;
    color: #000;
}

/* INPUT BOX CONSISTENCY */
.avitrupt-input-box {
    display: flex;
    align-items: center;
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.1);
}

.avitrupt-input-box span {
    padding: 12px 15px;
    background: #DF4924;
    color: #fff;
    font-weight: 600;
}

/* FOCUS EFFECT 🔥 */
.avitrupt-input-box:focus-within {
    border-color: #DF4924;
    box-shadow: 0 0 0 1px #DF4924;
}

/* RESPONSIVE */
@media(max-width:992px){
    .avitrupt-calc-wrapper {
        flex-direction: column;
    }

    .avitrupt-calc-form,
    .avitrupt-calc-result {
        width: 100%;
    }

    .avitrupt-calc-modern{
        padding: 80px 0px;
    }

    .pricing-card__body {
        height: auto;
        overflow: visible;
    }
}


@media (min-width: 768px) and (max-width: 1000px) {
    .avitrupt-different-card{
        width: 45%;
    }
}

.why-avitrupt {
    padding: 80px 0px;
    background: #ffffff;
    overflow: hidden;
}

.container-custom {
    max-width: 1200px;
    margin: auto;
}

/* HEADER */
.why-header {
    text-align: center;
    margin-bottom: 80px;
}

.why-header h2 {
    font-size: 36px;
    color: #000;
}

.why-header h2 span {
    color: #DF4924;
}

.why-header p {
    max-width: 600px;
    margin: 15px auto 0;
    color: #000000;
}

/* WRAPPER */
.why-wrapper {
    display: flex;
    align-items: center;
    gap: 60px;
}

/* IMAGE */
.why-image {
    flex: 1;
    position: relative;
    animation: floatImage 5s ease-in-out infinite;
}

.why-image img {
    width: 100%;
    border-radius: 12px;
}

/* GLOW EFFECT */
.why-image::after {
    content: "";
    position: absolute;
    width: 200px;
    height: 200px;
    background: #DF4924;
    filter: blur(120px);
    top: -40px;
    left: -40px;
    z-index: -1;
}

/* FLOAT ANIMATION */
@keyframes floatImage {
    0%,100% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-15px);
    }
}

/* CONTENT */
.why-content {
    flex: 1;
}

/* ITEM */
.why-item {
    position: relative;
    padding-left: 50px;
    margin-bottom: 35px;
    opacity: 0;
    transform: translateY(30px);
    animation: fadeUp 0.8s forwards;
}

/* DELAY ANIMATION */
.why-item:nth-child(1){
    animation-delay: 0.2s;
}
.why-item:nth-child(2){
    animation-delay: 0.4s;
}
.why-item:nth-child(3){
    animation-delay: 0.6s;
}
.why-item:nth-child(4){
    animation-delay: 0.8s;
}
.why-item:nth-child(5){
    animation-delay: 1s;
}
.why-item:nth-child(6){
    animation-delay: 1.2s;
}

/* NUMBER */
.why-item span {
    position: absolute;
    left: 0;
    top: 0;
    font-size: 28px;
    font-weight: bold;
    color: #DF4924;
    opacity: 0.2;
}

/* LINE EFFECT */
.why-item::before {
    content: "";
    position: absolute;
    left: 40px;
    top: 10px;
    width: 2px;
    height: 100%;
    background: linear-gradient(to bottom, #DF4924, transparent);
}

/* TITLE */
.why-item h3 {
    font-size: 18px;
    color: #DF4924;
    font-weight: 600;
    margin-bottom: 5px;
    transition: 0.3s;
}

/* TEXT */
.why-item p {
    font-size: 18px;
    color: #000;
}

/* HOVER EFFECT */
.why-item:hover h3 {
    color: #DF4924;
}

.why-item:hover {
    transform: translateX(10px);
}

/* FADE ANIMATION */
@keyframes fadeUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .why-wrapper {
        flex-direction: column;
        align-items: flex-start;
    }
    .why-content{
        padding-left: 20px;
    }
}

.blog-list {
    padding: 100px 20px;
    background: #ffffff;
}

.container {
    max-width: 1200px;
    margin: auto;
}

/* HEADER */
.blog-header {
    text-align: center;
    margin-bottom: 80px;
}

.blog-header h2 {
    font-size: 36px;
    color: #000000;
}

.blog-header p {
    color: #000000;
    font-size: 16px;
}

/* TIMELINE */
.blog-timeline {
    position: relative;
}

/* BLOG ITEM */
.blog-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 80px;
    position: relative;
}

/* VERTICAL LINE */
.blog-line {
    position: absolute;
    left: -20px;
    top: 0;
    width: 2px;
    height: 100%;
    background: #DF4924;
}

/* CONTENT */
.blog-content {
    width: 50%;
}

.blog-date {
    color: #DF4924;
    font-size: 18px;
    margin-bottom: 10px;
    display: block;
}

.blog-content h3 {
    font-size: 26px;
    margin-bottom: 15px;
    color: #000;
}

.blog-content p {
    color: #000000;
    margin-bottom: 15px;
}

.blog-content a {
    color: #DF4924;
    text-decoration: none;
    font-weight: 500;
    transition: 0.3s;
}

.blog-content a:hover {
    letter-spacing: 1px;
}

/* IMAGE */
.blog-image {
    width: 40%;
    overflow: hidden;
}

.blog-image img {
    width: 100%;
    transition: 0.4s;
}

/* HOVER EFFECT */
.blog-item:hover img {
    transform: scale(1.1);
}

/* ALTERNATE LAYOUT */
.blog-item:nth-child(even) {
    flex-direction: row-reverse;
}

/* RESPONSIVE */
@media (max-width: 768px) {
    .blog-item {
        flex-direction: column;
    }

    .blog-content,
    .blog-image {
        width: 100%;
    }

    .blog-line {
        left: 0;
    }
}

/* ============================
   BENEFITS SPLIT SECTION
============================ */

.res-benefits {
    padding: 100px 20px;
    background: #fff;
}

/* Row */
.res-benefits__row {
    display: flex;
    align-items: center; /* vertically center image & content */
    gap: 60px;
}

/* LEFT */
.res-benefits__content-wrap {
    flex: 1;
}

/* Header */
.res-benefits__tag {
    font-size: 1rem;
    color: #DF4924;
    letter-spacing: 1px;
    font-weight: 500;
}

.res-benefits__title {
    font-size: 36px;
    margin: 10px 0;
    font-weight: 600;
    color: #111;
}

.res-benefits__subtitle {
    font-size: 16px;
    color: #000;
    max-width: 500px;
    line-height: 1.6;
}

/* List */
.res-benefits__list {
    margin-top: 30px;
}

/* Item */
.res-benefits__item {
    display: flex;
    gap: 15px;
    margin-bottom: 25px;
}

/* Icon */
.res-benefits__icon {
    font-size: 24px;
    margin-top: 3px;
}

/* Text */
.res-benefits__text h3 {
    font-size: 21px;
    font-weight: 600;
    margin-bottom: 5px;
    color: #DF4924;
}

.res-benefits__text p {
    font-size: 18px;
    color: #000;
    line-height: 1.5;
}

/* RIGHT IMAGE */
.res-benefits__image-wrap {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center; /* vertical center */
}

/* Image Inner */
.res-benefits__image-inner {
    width: 100%;
    max-width: 450px;
    height: 500px;
    overflow: hidden;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Image */
.res-benefits__image-inner img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 0.5s ease;
}

/* Hover effect */
.res-benefits__image-inner:hover img {
    transform: scale(1.05);
}

/* ============================
   RESPONSIVE
============================ */

@media (max-width: 992px) {
    .res-benefits__row {
        flex-direction: column;
    }

    .res-benefits__image-inner {
        height: 350px;
    }

    .res-benefits__title {
        font-size: 28px;
    }
}

/* ============================
   FAQ SECTION
============================ */

.res-faq {
    padding: 100px 20px;
    background: #f9f9f9;
}

/* Header */
.res-faq__header {
    text-align: center;
    margin-bottom: 25px;
}

.res-faq__tag {
    color: #DF4924;
    font-weight: 500;
    font-size: 1rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.res-faq__title {
    font-size: 34px;
    margin: 10px 0;
    font-weight: 600;
}

.res-faq__subtitle {
    color: #000;
    max-width: 600px;
    margin: auto;
    line-height: 1.6;
}

/* Item */
.res-faq__item {
    border-bottom: 1px solid #ddd;
}

/* Question */
.res-faq__question {
    width: 100%;
    background: none;
    border: none;
    padding: 18px 0;
    font-size: 21px;
    font-weight: 500;
    text-align: left;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* Icon */
.res-faq__icon {
    font-size: 22px;
    transition: 0.3s;
}

/* Answer */
.res-faq__answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease, padding 0.3s ease;
    font-size: 18px;
    color: #000;
    line-height: 1.6;
    padding-right: 20px;
}

/* Active State */
.res-faq__item.active .res-faq__answer {
    max-height: 200px;
    padding-bottom: 15px;
}

.res-faq__item.active .res-faq__icon {
    transform: rotate(45deg);
}

/* Hover */
.res-faq__question:hover {
    color: #DF4924;
}

/* Responsive */
@media (max-width: 768px) {
    .res-faq__title {
        font-size: 26px;
    }
}

.common-section-padding{
    padding: 80px 0px !important;
}

/* SECTION */
.res-solar {
    padding: 80px 20px;
    background-color: #e9e9e9;
}

/* CONTAINER */
.res-solar__container {
    max-width: 1200px;
    margin: auto;
}

/* HEADER */
.res-solar__header {
    text-align: center;
    margin-bottom: 50px;
}

.res-solar__header h2 {
    font-size: 34px;
    color: #DF4924;
    margin-bottom: 10px;
}

.res-solar__header p {
    font-size: 16px;
    color: #000;
    max-width: 600px;
    margin: auto;
}

/* GRID */
.res-solar__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

/* CARD */
.res-solar__card {
    background: #ffffff;
    padding: 35px 25px;
    border-radius: 12px;
    text-align: center;
    position: relative;
    overflow: hidden;
    transition: 0.4s ease;
    box-shadow: 0 5px 20px rgba(0,0,0,0.05);
}

/* TOP BORDER EFFECT */
.res-solar__card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 4px;
    width: 100%;
    background: #DF4924;
}

/* HOVER EFFECT */
.res-solar__card:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 30px rgba(0,0,0,0.1);
}

/* ICON */
.res-solar__icon {
    font-size: 40px;
    margin-bottom: 15px;
}

/* TITLE */
.res-solar__card h3 {
    font-size: 22px;
    margin-bottom: 10px;
    color: #000;
}

/* TEXT */
.res-solar__card p {
    font-size: 18px;
    color: #000;
    margin-bottom: 20px;
    line-height: 1.6;
}

/* BUTTON */
.res-solar__btn {
    text-decoration: none;
    color: #DF4924;
    font-weight: 500;
    position: relative;
}

.res-solar__btn::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -3px;
    width: 0%;
    height: 2px;
    background: #DF4924;
    transition: 0.3s;
}

.res-solar__btn:hover::after {
    width: 100%;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .res-solar__grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .res-solar__grid {
        grid-template-columns: 1fr;
    }

    .res-solar__header h2 {
        font-size: 26px;
    }
}

/* ── SECTION ── */
.about-section{
    padding:100px 0 90px;
    background: #f7f4f4;
    position:relative;
    overflow:hidden;
}

/* subtle dot grid background */
.about-section::before{
    content:'';
    position:absolute;
    inset:0;
    background-image: radial-gradient(circle, rgba(223,73,36,0.08) 1px, transparent 1px);
    background-size:32px 32px;
    pointer-events:none;
}

.container{
    max-width:1200px;
    margin:0 auto;
    padding:0 40px;
    position:relative;
}

/* ── GRID ── */
.about-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:90px;
    align-items:center;
}

/* ════════════════════════════════
   LEFT — VISUAL PANEL
════════════════════════════════ */
.about-visual{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    position:relative;
    min-height:420px;
}

/* ── MAIN LOGO CIRCLE ── */
.logo-stage{
    position:relative;
    width:300px;
    height:300px;
    display:flex;
    align-items:center;
    justify-content:center;
}

/* Core white circle */
.logo-circle{
    width:200px;
    height:200px;
    background:#ffffff;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    position:relative;
    z-index:4;
    box-shadow:
        0 0 0 1px rgba(223,73,36,0.15),
        0 10px 40px rgba(223,73,36,0.12),
        0 4px 16px rgba(0,0,0,0.06);
    animation: circlePulse 3.6s ease-in-out infinite;
}

@keyframes circlePulse{
    0%,100%{
        box-shadow: 0 0 0 1px rgba(223,73,36,0.15), 0 10px 40px rgba(223,73,36,0.12), 0 4px 16px rgba(0,0,0,0.06);
    }
    50%{
        box-shadow: 0 0 0 1px rgba(223,73,36,0.3), 0 10px 60px rgba(223,73,36,0.22), 0 4px 24px rgba(0,0,0,0.08);
    }
}

/* Logo image */
.logo-img{
    width:120px;
    height:120px;
    object-fit:contain;
    position:relative;
    z-index:2;
    animation: logoBreath 3.6s ease-in-out infinite;
    filter: drop-shadow(0 4px 12px rgba(223,73,36,0.25));
}

@keyframes logoBreath{
    0%,100%{
        transform:scale(1);
        filter:drop-shadow(0 4px 12px rgba(223,73,36,0.20));
    }
    50%{
        transform:scale(1.07);
        filter:drop-shadow(0 6px 22px rgba(223,73,36,0.50));
    }
}

/* Shine sweep over logo */
.logo-shine{
    position:absolute;
    inset:0;
    border-radius:50%;
    background: linear-gradient(115deg,
        transparent 30%,
        rgba(255,255,255,0.55) 50%,
        transparent 70%);
    background-size:200% 200%;
    animation: shineSweep 3.2s ease-in-out infinite;
    z-index:5;
    pointer-events:none;
}

@keyframes shineSweep{
    0%  {
        background-position:200% 0%;
        opacity:0;
    }
    30% {
        opacity:1;
    }
    60% {
        background-position:-50% 100%;
        opacity:0;
    }
    100%{
        background-position:200% 0%;
        opacity:0;
    }
}

/* ── RING 1 — inner slow rotate dashed ── */
.ring-1{
    position:absolute;
    inset:-28px;
    border-radius:50%;
    border:2px dashed rgba(223,73,36,0.22);
    animation:ring1Spin 22s linear infinite;
    z-index:3;
}

@keyframes ring1Spin{
    to{
        transform:rotate(360deg);
    }
}

/* ── RING 2 — outer counter-rotate solid thin ── */
.ring-2{
    position:absolute;
    inset:-52px;
    border-radius:50%;
    border:1.5px solid rgba(223,73,36,0.12);
    animation:ring2Spin 16s linear infinite;
    z-index:2;
}

@keyframes ring2Spin{
    to{
        transform:rotate(-360deg);
    }
}

/* ── RING 3 — outermost pulse ── */
.ring-3{
    position:absolute;
    inset:-76px;
    border-radius:50%;
    border:1px solid rgba(223,73,36,0.07);
    animation:ring3Pulse 3.6s ease-in-out infinite;
    z-index:1;
}

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

/* ── ORBIT DOTS on ring-1 ── */
.orbit-dot{
    position:absolute;
    width:10px;
    height:10px;
    background:#DF4924;
    border-radius:50%;
    top:50%;
    left:50%;
    transform-origin:0 0;
    box-shadow:0 0 8px rgba(223,73,36,0.6);
    animation:dotPop 3.6s ease-in-out infinite;
}

.orbit-dot::after{
    content:'';
    position:absolute;
    inset:-3px;
    border-radius:50%;
    background:rgba(223,73,36,0.25);
    animation:dotRing 3.6s ease-in-out infinite;
}

@keyframes dotPop{
    0%,100%{
        transform:var(--pos) scale(1);
    }
    50%{
        transform:var(--pos) scale(1.3);
    }
}
@keyframes dotRing{
    0%,100%{
        transform:scale(1);
        opacity:0.6;
    }
    50%{
        transform:scale(1.8);
        opacity:0;
    }
}

/* 3 dots equally spaced on ring-1 (radius = 128px = 200/2+28) */
.orbit-dot:nth-child(1){
    --pos: rotate(0deg)   translateX(128px) translateY(-5px);
}
.orbit-dot:nth-child(2){
    --pos: rotate(120deg) translateX(128px) translateY(-5px);
    animation-delay:0.4s;
}
.orbit-dot:nth-child(3){
    --pos: rotate(240deg) translateX(128px) translateY(-5px);
    animation-delay:0.8s;
}

/* ── ENERGY ARC — SVG drawn over ring-2 ── */
.energy-arc{
    position:absolute;
    inset:-52px;
    z-index:3;
    pointer-events:none;
}

.arc-path{
    fill:none;
    stroke:#DF4924;
    stroke-width:2.5;
    stroke-linecap:round;
    stroke-dasharray:60 999;
    animation:arcSpin 4s linear infinite;
}

@keyframes arcSpin{
    from{
        stroke-dashoffset:0;
    }
    to{
        stroke-dashoffset:-628;
    }
}

.arc-path-2{
    fill:none;
    stroke:rgba(223,73,36,0.35);
    stroke-width:1.5;
    stroke-linecap:round;
    stroke-dasharray:30 999;
    animation:arcSpin2 6s linear infinite reverse;
}

@keyframes arcSpin2{
    from{
        stroke-dashoffset:0;
    }
    to{
        stroke-dashoffset:628;
    }
}

/* ── FLOATING TAGS ── */
.f-tag{
    position:absolute;
    background:#ffffff;
    border:1px solid #eeebe6;
    border-radius:40px;
    padding:9px 16px 9px 10px;
    display:flex;
    align-items:center;
    gap:9px;
    box-shadow:0 6px 24px rgba(0,0,0,0.08);
    white-space:nowrap;
    z-index:10;
}

.f-tag-icon{
    width:30px;
    height:30px;
    background:rgba(223,73,36,0.08);
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:14px;
    flex-shrink:0;
}

.f-tag-title{
    font-size:12px;
    font-weight:600;
    color: #DF4924;
    line-height:1.2;
}
.f-tag-sub  {
    font-size:10px;
    color: #000;
}

.f-tag-1{
    left:-30px;
    top:50px;
    animation:floatA 3.8s ease-in-out infinite;
}
.f-tag-2{
    right:-30px;
    bottom:70px;
    animation:floatB 4.2s ease-in-out 0.7s infinite;
}
.f-tag-3{
    right:-20px;
    top:40px;
    animation:floatA 3.5s ease-in-out 1.2s infinite;
}

@keyframes floatA{
    0%,100%{
        transform:translateY(0);
    }
    50%{
        transform:translateY(-8px);
    }
}
@keyframes floatB{
    0%,100%{
        transform:translateY(0);
    }
    50%{
        transform:translateY(7px);
    }
}

/* ════════════════════════════════
   RIGHT — CONTENT
════════════════════════════════ */

.section-tag{
    display:inline-flex;
    align-items:center;
    gap:9px;
    font-size: 18px;
    font-weight:600;
    letter-spacing:3px;
    color:#DF4924;
    margin-bottom:20px;
}

.section-tag::before{
    content:'';
    display:block;
    width:26px;
    height:2px;
    background:#DF4924;
    border-radius:2px;
}

.about-headline{
    font-size: 30px;
    font-weight: 500;
    line-height:1.13;
    color:#111111;
    margin-bottom: 15px;
}

.about-headline em{
    font-style:normal;
    color: #DF4924;
    position:relative;
    display:inline-block;
}


.divider{
    width:46px;
    height:3px;
    background:#DF4924;
    border-radius:2px;
    margin-bottom:26px;
}

.about-lead{
    font-size:16px;
    line-height:1.8;
    color: #000;
    font-weight:400;
    margin-bottom:16px;
}

.about-body{
    font-size:14.5px;
    line-height:1.85;
    color: #000;
    margin-bottom:32px;
}

/* pillars */
.pillars{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-bottom:36px;
}

.pillar{
    background:#fafaf8;
    border:1px solid #eeece8;
    border-radius:12px;
    padding:15px 16px;
    display:flex;
    align-items:flex-start;
    gap:12px;
    transition:border-color 0.3s, box-shadow 0.3s, transform 0.3s;
    cursor:default;
}

.pillar:hover{
    border-color:rgba(223,73,36,0.3);
    box-shadow:0 6px 22px rgba(223,73,36,0.08);
    transform:translateY(-2px);
}

.pillar-icon{
    width:34px;
    height:34px;
    background:rgba(223,73,36,0.08);
    border-radius:8px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:16px;
    flex-shrink:0;
}

.pillar-title{
    font-size:12.5px;
    font-weight:600;
    color: #DF4924;
    margin-bottom:2px;
}
.pillar-desc {
    font-size:11px;
    color: #000;
    line-height:1.5;
}

/* CTA */
.cta-row{
    display:flex;
    align-items:center;
    gap:22px;
    flex-wrap:wrap;
}

.btn-primary{
    display:inline-flex;
    align-items:center;
    gap:10px;
    background:#DF4924;
    color:#ffffff;
    font-size:14px;
    font-weight:600;
    padding:13px 28px;
    border-radius:8px;
    text-decoration:none;
    border:none;
    cursor:pointer;
    transition:background 0.3s, transform 0.3s, box-shadow 0.3s;
    box-shadow:0 4px 20px rgba(223,73,36,0.28);
}

.btn-primary:hover{
    background:#c43d1c;
    transform:translateY(-2px);
    box-shadow:0 8px 32px rgba(223,73,36,0.38);
}

.btn-primary svg{
    transition:transform 0.3s;
}
.btn-primary:hover svg{
    transform:translateX(4px);
}

.cta-trust{
    display:flex;
    align-items:center;
    gap:10px;
}

.trust-avatars{
    display:flex;
}

.trust-avatar{
    width:32px;
    height:32px;
    border-radius:50%;
    border:2px solid #fff;
    background:linear-gradient(135deg,#f4bfaa,#df6040);
    margin-left:-9px;
    font-size:10px;
    font-weight:700;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
}

.trust-avatar:first-child{
    margin-left:0;
}

.trust-text{
    font-size:12px;
    color:#666;
    font-weight:400;
}
.trust-text strong{
    color:#1c1c1c;
    display:block;
    font-size:13px;
    font-weight:600;
}

/* ── SCROLL REVEALS ── */
.reveal       {
    opacity:0;
    transform:translateY(36px);
    transition:opacity 0.75s cubic-bezier(.4,0,.2,1), transform 0.75s cubic-bezier(.4,0,.2,1);
}
.reveal-left  {
    opacity:0;
    transform:translateX(-48px);
    transition:opacity 0.8s  cubic-bezier(.4,0,.2,1), transform 0.8s  cubic-bezier(.4,0,.2,1);
}
.reveal-right {
    opacity:0;
    transform:translateX(48px);
    transition:opacity 0.8s  cubic-bezier(.4,0,.2,1), transform 0.8s  cubic-bezier(.4,0,.2,1);
}
.reveal.visible,.reveal-left.visible,.reveal-right.visible{
    opacity:1;
    transform:none;
}

.d1{
    transition-delay:0.10s;
}
.d2{
    transition-delay:0.20s;
}
.d3{
    transition-delay:0.32s;
}
.d4{
    transition-delay:0.44s;
}
.d5{
    transition-delay:0.56s;
}

/* ── RESPONSIVE ── */
@media(max-width:920px){
    .about-grid{
        grid-template-columns:1fr;
        gap:56px;
    }
    .about-visual{
        order:-1;
    }
    .logo-stage{
        width:260px;
        height:260px;
    }
    .logo-circle{
        width:170px;
        height:170px;
    }
    .logo-img{
        width:100px;
        height:100px;
    }
    .orbit-dot:nth-child(1){
        --pos: rotate(0deg)   translateX(113px) translateY(-5px);
    }
    .orbit-dot:nth-child(2){
        --pos: rotate(120deg) translateX(113px) translateY(-5px);
    }
    .orbit-dot:nth-child(3){
        --pos: rotate(240deg) translateX(113px) translateY(-5px);
    }
    .f-tag-3{
        display:none;
    }
}

@media(max-width:560px){
    .about-section{
        padding:60px 0;
    }
    .container{
        padding:0 20px;
    }
    .pillars{
        grid-template-columns:1fr;
    }
    .f-tag-1,.f-tag-2{
        display:none;
    }
    .logo-stage{
        width:220px;
        height:220px;
    }
    .logo-circle{
        width:148px;
        height:148px;
    }
    .logo-img{
        width:86px;
        height:86px;
    }
    .orbit-dot:nth-child(1){
        --pos: rotate(0deg)   translateX(96px) translateY(-5px);
    }
    .orbit-dot:nth-child(2){
        --pos: rotate(120deg) translateX(96px) translateY(-5px);
    }
    .orbit-dot:nth-child(3){
        --pos: rotate(240deg) translateX(96px) translateY(-5px);
    }
}




.loader-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #ffffff;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

.loader-box {
    position: relative;
    width: 130px;
    height: 130px;
}

/* CENTER SVG */
.logo-svg {
    width: 75px;
    image-rendering: pixelated;
    shape-rendering: geometricPrecision;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}


/* DRAW */
@keyframes draw {
    to {
        stroke-dashoffset: 0;
    }
}

/* FILL */
@keyframes fillLogo {
    to {
        fill: var(--c);
    }
}

/* RING */
.loader-ring {
    width: 130px;
    height: 130px;
    border: 4px solid #eee;
    border-top: 4px solid #f15a24;
    border-radius: 50%;
    animation: rotate 2s linear infinite;
}

@keyframes rotate {
    100% {
        transform: rotate(360deg);
    }
}

.avitrupt-testimonial-container{
    width: 90%;
    margin: auto;
}

@media(max-width: 768px){
    .floating-elements{
        display: none;
    }
    .avitrupt-installation-header{
        padding: 80px 0px;
    }
}
@media(max-width: 768px){
    .pricing-tabs{
        flex-direction: column;
    }
}

/* Wrapper */
.scroll-logo-wrapper {
    width: 160px;
    margin: 0 auto;
}

/* SVG */
.scroll-logo-svg {
    width: 100%;
    height: auto;
}

/* Path initial state */
.logo-path {
    fill: transparent;
    stroke: #DC4723;
    stroke-width: 1.5;

    stroke-dasharray: 1000;
    stroke-dashoffset: 1000;

    transition: fill 0.6s ease;
}

.video-section {
    padding: 60px 20px;
    background: #e9e9e9;
}

/* GRID */
.video-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* 3 columns */
    gap: 20px;
    margin-top: 20px;
}

/* VIDEO ITEM */
.video-item {
    width: 100%;
    overflow: hidden;
    border-radius: 10px;
    background: #000;
}

/* VIDEO STYLE */
.video-item iframe {
    width: 100%;
    height: 450px;
    display: block;
    object-fit: cover;
}

/* TABLET */
@media (max-width: 992px) {
    .video-grid {
        grid-template-columns: repeat(2, 1fr); /* 2 columns */
    }
}

/* MOBILE */
@media (max-width: 600px) {
    .video-grid {
        grid-template-columns: 1fr; /* 1 column */
    }
}


.margin-top{
    margin-top: 100px !important;
}


#siteFooter .bg-left {
    position: absolute;
    left: -2%;
    bottom: 0%;
    z-index: 3;
    max-width: 22%;
    display: none;
}
#siteFooter .bg-right {
    position: absolute;
    bottom: 0%;
    right: -2%;
    z-index: 3;
    max-width: 22%;
    display: none;
}
.avitrupt-installation-header .bg-left {
    position: absolute;
    left: -2%;
    bottom: 0%;
    z-index: -1;
}
.avitrupt-installation-header .bg-right{
    position: absolute;
    bottom: 0%;
    right: -2%;
    z-index: -1;
}
.our-achievements{
    font-size: 36px;
    color: #DF4924;
    text-align: center;
    margin-bottom: 100px;
}
@media (min-width: 1200px) and (max-width: 1400px) {
    .exact-counter-section .bg-left{
        width: 225px !important;
    }
    .bg-graphics-right{
        width: 150px !important;
        height: 150px !important;
    }
}
.partner-section {
    background: #ffffff;
    padding: 80px 0px;
}

.partner-container {
    max-width: 1200px;
    margin: auto;
    padding: 80px 0px;
}

.partner-header {
    text-align: center;
    margin-bottom: 50px;
}

.partner-header h2 {
    font-size: 36px;
    color: #000000;
    margin-bottom: 30px;
    position: relative;
    display: inline-block;
}

.partner-header h2::after {
    content: "";
    width: 60%;
    height: 3px;
    background: #DF4924;
    position: absolute;
    left: 20%;
    bottom: -10px;
}

.partner-header p {
    color: #000000;
    font-size: 16px;
}

/* GRID */
.partner-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}

/* CARD */
.partner-card {
    background: #ffffff;
    border: 1px solid #00000020;
    padding: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 120px;
    transition: 0.3s ease;
    box-shadow: rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 2px 6px 2px;
    cursor: pointer;
    border-radius: 12px;
}

.partner-card img {
    max-width: 100%;
    max-height: 60px;
    filter: grayscale(100%);
    transition: 0.3s ease;
}

/* HOVER EFFECT */
.partner-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 10px 25px rgba(223, 73, 36, 0.25);
    border-color: #DF4924;
}

.partner-card:hover img {
    filter: grayscale(0%);
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .partner-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .partner-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .partner-section {
        padding: 50px 20px;
    }
}

@media (max-width: 480px) {
    .partner-grid {
        grid-template-columns: repeat(1, 1fr);
    }
}
.services-list-section{
    padding-top: 200px;
    padding-bottom: 120px;
}

.work-hero {
    background: #000;
    color: #fff;
    padding-top: 180px;
    padding-bottom: 100px;
    text-align: center;
}

.work-title {
    font-size: 42px;
    color: #DF4924;
    margin-bottom: 15px;
}

.work-desc {
    max-width: 750px;
    margin: auto;
    line-height: 1.7;
}

.work-section {
    padding: 80px 0;
}

.section-title {
    font-size: 32px;
    margin-bottom: 20px;
}

/* GRID */
.work-box-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
}

/* CARD */
.work-box-card {
    background: #fff;
    padding: 30px;
    border-radius: 10px;
    border: 1px solid #eee;
    position: relative;
    transition: 0.4s;
    border-radius: 12px;
}

/* LEFT ACCENT */
.work-box-card::before {
    content: "";
    width: 5px;
    height: 100%;
    background: #DF4924;
    position: absolute;
    left: 0;
    top: 0;
}

/* NUMBER */
.number {
    color: #DF4924;
    font-size: 28px;
    font-weight: bold;
}

/* HOVER */
.work-box-card:hover {
    background: #000;
    transform: translateY(-10px);
}

.work-box-card:hover h3,
.work-box-card:hover p {
    color: #fff;
}

.filter-buttons {
    text-align: center;
    margin-bottom: 40px;
}

.filter-buttons button {
    padding: 10px 20px;
    border: none;
    margin: 5px;
    cursor: pointer;
    background: #eee;
    border-radius: 12px;
}

.filter-buttons .active,
.filter-buttons button:hover {
    background: #DF4924;
    color: #fff;
}
.work-projects {
    padding: 80px 0;
    background: #000;
}

.project-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}

.project-card {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
}

.project-card img {
    width: 100%;
    transition: 0.5s;
}

.project-card:hover img {
    transform: scale(1.1);
}

/* OVERLAY */
.overlay {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 15px;
    background: rgba(0,0,0,0.7);
    color: #fff;
}
.work-container {
    width: 90%;
    max-width: 1200px;
    margin: auto;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .work-box-grid,
    .project-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .work-flex {
        flex-direction: column;
    }
}

@media (max-width: 576px) {
    .work-box-grid,
    .project-grid {
        grid-template-columns: 1fr;
    }
}

/* SECTION */
.blog-section {
    padding-top: 180px;
    padding-bottom: 100px;
    background: #ffffff;
}

.blog-container {
    width: 90%;
    max-width: 1200px;
    margin: auto;
}

/* HEADING */
.blog-heading {
    text-align: center;
    font-size: 34px;
    margin-bottom: 50px;
    color: #000;
}

/* GRID */
.blog-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

/* BOX */
.blog-box {
    display: flex;
    flex-direction: column;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #eee;
    position: relative;
    transition: 0.4s;
}

/* LEFT ACCENT LINE */
.blog-box::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 5px;
    height: 100%;
    background: #DF4924;
}

/* IMAGE */
.blog-img {
    overflow: hidden;
}

.blog-img img {
    width: 100%;
    transition: 0.5s;
}

/* CONTENT */
.blog-info {
    padding: 20px;
}

.blog-tag {
    display: inline-block;
    background: #DF4924;
    color: #fff;
    font-size: 18px;
    padding: 4px 10px;
    border-radius: 20px;
    margin-bottom: 10px;
}

.blog-date {
    font-size: 18px;
    color: #777;
    margin-bottom: 10px;
}

.blog-title {
    font-size: 21px;
    margin-bottom: 10px;
    color: #000;
}

.blog-desc {
    font-size: 18px;
    color: #000000;
    margin-bottom: 15px;
}

/* BUTTON */
.blog-read {
    text-decoration: none;
    color: #DF4924;
    font-weight: bold;
}

/* HOVER EFFECT */
.blog-box:hover {
    background: #000;
    transform: translateY(-10px);
    box-shadow: 0 15px 40px rgba(0,0,0,0.2);
}

.blog-box:hover .blog-title,
.blog-box:hover .blog-desc,
.blog-box:hover .blog-date {
    color: #fff;
}

.blog-box:hover img {
    transform: scale(1.1);
}
.dark-background{
    background-color: #000000;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .blog-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .blog-first-section{
        padding: 0px 20px !important;
    }
}

@media (max-width: 576px) {
    .blog-grid {
        grid-template-columns: 1fr;
    }

    .blog-heading {
        font-size: 26px;
    }
}
/* Ensure the parent column spans the full height of the row so the form has a track to slide down */
.col-xl-4 {
    position: relative;
}

/* Make only the form sticky */
.my-sticky-form {
    position: -webkit-sticky; /* For Safari */
    position: sticky;
    top: 24px; /* Space from the top of the screen when scrolling */
    z-index: 10;
}

/* CARD DESIGN */
.sidebar-card {
    background: #ffffff;
    padding: 25px;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
    border:1px solid #df4924;
    border-radius: 12px;
    color: #fff;
    margin-top: 20px;
}

/* TITLE */
.sidebar-title {
    font-size: 20px;
    margin-bottom: 15px;
    color: #df4924;
}

/* POSTS */
.sidebar-post {
    background: #000000;
    padding: 15px;
    border-radius: 8px;
    transition: 0.3s;
    margin-bottom: 15px;
}

.sidebar-post:hover {
    background: #df4924;
}

.sidebar-post h5 {
    font-size: 18px;
    margin: 0;
    color: #fff;
}

/* FORM */
.sidebar-form input,
.sidebar-form select,
.sidebar-form textarea {
    width: 100%;
    padding: 12px;
    margin-bottom: 12px;
    border: none;
    border-radius: 6px;
    background: #e9e9e9;
    color: #00000085;
    font-size: 18px;
    outline: none;
}

/* BUTTON */
.sidebar-form button {
    width: 100%;
    padding: 12px;
    border: none;
    background: #df4924;
    color: #fff;
    font-weight: 600;
    border-radius: 6px;
    cursor: pointer;
    transition: 0.3s;
}

.sidebar-form button:hover {
    background: #000000;
    color: #ffffff;
}

/* HOME BANNER */
.homebanner {
    width: 100%;
    height: 62vh;
    overflow: hidden;
    position: relative;
}

.homebanner-slider {
    width: 100%;
    height: 100%;
    position: relative;
}

.homebanner-slide {
    position: absolute;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: 0.6s ease-in-out;
}

.homebanner-slide img {
    width: 100%;
    height: 100%;
    object-fit: fill;
}

/* ACTIVE SLIDE */
.homebanner-slide.active {
    opacity: 1;
}

/* ARROWS DESIGN */
.homebanner-prev,
.homebanner-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: #000000;
    color: #fff;
    border: none;
    width: 50px;
    height: 50px;
    font-size: 22px;
    cursor: pointer;
    border-radius: 50%;
    transition: 0.3s;
    z-index: 10;
    display: none;
}

.homebanner-prev:hover,
.homebanner-next:hover {
    background: #DF4924 ;
}

.homebanner-prev {
    left: 20px;
}

.homebanner-next {
    right: 20px;
}
.white-background{
    background-color: #ffffff !important;
}
.orange-text{
    color: var(--heading-color-2) !important;
}
.text-heading-color-1{
    color: #000000;
}

/*After Content Add Css Start*/


.solar-intro-section{
    padding: 80px 0px;
    position: relative;
    background-image: url('../images/service-bg.jpg');
    z-index: 1;
}

.solar-container{
    max-width: 1200px;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
}

.solar-content{
    flex: 1;
}

.solar-tag{
    display: inline-block;
    background: #DF4924;
    color: #ffffff;
    padding: 6px 14px;
    font-size: 14px;
    letter-spacing: 1px;
    margin-bottom: 15px;
}

.solar-content h1{
    font-size: 34px;
    color: #000000;
    margin-bottom: 10px;
    line-height: 1.3;
}

.solar-content h2{
    font-size: 42px;
    color: #DF4924;
    margin-bottom: 20px;
    font-weight: 500;
}

.solar-content p{
    font-size: 18px;
    color: #000000;
    line-height: 1.7;
    margin-bottom: 15px;
}

.highlight-text{
    background: #e9e9e9;
    padding: 15px;
    border-left: 4px solid #DF4924;
}

.solar-btn{
    display: inline-block;
    margin-top: 10px;
    padding: 12px 25px;
    background: #DF4924;
    color: #ffffff;
    text-decoration: none;
    transition: 0.3s;
}

.solar-btn:hover{
    background: #000000;
}

.solar-image{
    flex: 1;
}

.solar-image img{
    width: 100%;
    border-radius: 12px;
    object-fit: cover;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

/* Responsive */
@media (max-width: 768px){
    .solar-container{
        flex-direction: column;
    }

    .solar-content h1{
        font-size: 26px;
    }
}
.solar-growth-section {
    background: #DF4924;
}

.solar-title {
    color: #ffffff;
    font-weight: 700;
    font-size: 2.2rem;
}

.solar-text {
    color: #ffffff;
    font-size: 1rem;
    line-height: 1.7;
    margin-bottom: 10px;
}

.solar-card {
    background: #ffffff;
    border-left: 4px solid #000000;
    padding: 12px 15px;
    font-weight: 500;
    color: #000;
    border-radius: 6px;
    transition: 0.3s ease;
}

.solar-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.08);
}

.solar-highlight {
    background: #ffffff;
    display: inline-block;
    padding: 10px 15px;
    border-radius: 6px;
    border: 1px solid #DF4924;
    color: #000000;
}

/* ===== SERVICES SECTION ===== */
.av-services-section{
    padding-bottom: 80px;
    background: #ffffff;
    position: relative;
}

/* Container */
.av-container{
    width: 90%;
    max-width: 1200px;
    margin: auto;
}

/* Header */
.av-section-header{
    text-align: center;
    margin-bottom: 40px;
}


.av-section-header h2{
    font-size: 36px;
    color: #000000;
    position: relative;
    display: inline-block;
}

.av-section-header h2::after{
    content: "";
    width: 60px;
    height: 3px;
    background: #DF4924;
    display: block;
    margin: 10px auto 0;
}

.av-section-header p{
    color: #666;
    margin-top: 10px;
}

/* Card */
.av-service-card{
    background: #e9e9e9;
    border: 1px solid #DF4924;
    padding: 25px;
    border-radius: 12px;
    transition: 0.3s;
    height: 100%;
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
}

.av-service-card:hover{
    border-color: #DF4924;
    box-shadow: 0 10px 25px rgba(0,0,0,0.08);
}

/* Icon */
.av-icon-box{
    width: 55px;
    height: 55px;
    background: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    margin-bottom: 15px;
}

.av-icon-box i{
    font-size: 22px;
    color: #DF4924;
}

/* Title */
.av-service-card h3{
    font-size: 29px;
    text-align: center;
    color: #df4924;
    margin-bottom: 10px;
}

/* Text */
.av-service-card p{
    font-size: 18px;
    color: #000000;
    line-height: 1.6;
}

/* Tag */
.av-tag{
    display: inline-block;
    margin-top: 12px;
    padding: 5px 10px;
    font-size: 18px;
    background: #e9e9e9;
    color: #000;
    border-radius: 20px;
}

/* Read More */
.av-service-card a{
    display: block;
    margin-top: 15px;
    color: #DF4924;
    font-weight: 500;
    text-decoration: none;
}

.av-why-section {
    padding: 80px 0;
    background: #e9e9e9;
}

.av-container {
    width: 90%;
    max-width: 1200px;
    margin: auto;
}

.av-section-header {
    text-align: center;
    margin-bottom: 40px;
}

.av-section-header h2 {
    font-size: 32px;
    color: #111;
    margin-bottom: 10px;
}

.av-section-header p {
    font-size: 16px;
    color: #000000;
    max-width: 800px;
    margin: auto;
}

/* GRID */
.av-why-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}

/* BOX DESIGN */
.av-why-box {
    background: #fff;
    border: 1px solid rgba(223, 73, 36, 0.2);
    border-left: 5px solid #DF4924;
    padding: 25px;
    border-radius: 12px;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    box-shadow: #f8f9fa 0px 3px 8px;
}

/* hover effect */
.av-why-box:hover {
    transform: translateY(-6px);
    box-shadow: 0 10px 25px rgba(223, 73, 36, 0.15);
}

/* heading */
.av-why-box h4 {
    font-size: 21px;
    color: #DF4924;
    margin-bottom: 10px;
}

/* text */
.av-why-box p {
    font-size: 18px;
    color: #444;
    line-height: 1.6;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .av-why-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 576px) {
    .av-why-grid {
        grid-template-columns: 1fr;
    }

    .av-section-header h2 {
        font-size: 24px;
    }
}
.av-process-section {
    padding: 90px 0;
    background: #e9e9e9;
}

.av-container {
    width: 90%;
    max-width: 1200px;
    margin: auto;
}

/* HEADER */
.av-section-header {
    text-align: center;
    margin-bottom: 50px;
}

.av-section-header h2 {
    font-size: 34px;
    color: #111;
    margin-bottom: 12px;
    font-weight: 700;
}

.av-section-header p {
    font-size: 16px;
    color: #000000;
    max-width: 800px;
    margin: auto;
    line-height: 1.6;
}

/* GRID */
.av-process-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

/* CARD */
.av-process-card {
    background: #fff;
    padding: 30px 25px;
    border-radius: 16px;
    position: relative;
    box-shadow: 0 10px 30px rgba(0,0,0,0.06);
    transition: 0.3s ease;
    border: 1px solid #DF4924;
}

/* hover */
.av-process-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 40px rgba(223, 73, 36, 0.15);
}

/* STEP BADGE */
.av-step-badge {
    width: 45px;
    height: 45px;
    background: #DF4924;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    position: absolute;
    top: -20px;
    left: 20px;
    box-shadow: 0 8px 20px rgba(223, 73, 36, 0.3);
}

/* TEXT */
.av-process-card h4 {
    margin-top: 20px;
    font-size: 18px;
    color: #111;
}

.av-process-card p {
    font-size: 18px;
    color: #000000;
    margin-top: 10px;
    line-height: 1.6;
}

/* FOOTER */
.av-process-footer {
    text-align: center;
    margin-top: 50px;
}

.av-process-footer h3 {
    color: #DF4924;
    font-size: 22px;
    font-weight: 600;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .av-process-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 576px) {
    .av-process-grid {
        grid-template-columns: 1fr;
    }

    .av-section-header h2 {
        font-size: 24px;
    }
}
.av-benefits-section {
    padding: 80px 0;
    background: #ffffff;
}

.av-container {
    width: 90%;
    max-width: 1200px;
    margin: auto;
}

/* HEADER */
.av-section-header {
    text-align: center;
    margin-bottom: 50px;
}

.av-section-header h2 {
    font-size: 34px;
    color: #DF4924;
    margin-bottom: 12px;
    font-weight: 700;
}

.av-section-header p {
    font-size: 16px;
    color: #000000;
    max-width: 850px;
    margin: auto;
    line-height: 1.6;
}

/* GRID */
.av-benefits-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}

/* CARD */
.av-benefit-card {
    background: #e9e9e9;
    border: 1px solid #DF4924;
    border-radius: 14px;
    padding: 25px;
    position: relative;
    transition: 0.3s ease;
    box-shadow: 0 8px 20px rgba(0,0,0,0.05);
}

/* hover */
.av-benefit-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 30px rgba(223, 73, 36, 0.12);
}

/* heading */
.av-benefit-card h4 {
    font-size: 18px;
    color: #DF4924;
    margin-bottom: 10px;
    font-weight: 600;
}

/* text */
.av-benefit-card p {
    font-size: 18px;
    color: #000000;
    line-height: 1.6;
}

/* SPECIAL HIGHLIGHT CARD */
.av-benefit-card.highlight {
    background: linear-gradient(135deg, #DF4924, #ff6a3d);
    color: #fff;
    border: none;
}

.av-benefit-card.highlight h4,
.av-benefit-card.highlight p {
    color: #fff;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .av-benefits-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 576px) {
    .av-benefits-grid {
        grid-template-columns: 1fr;
    }

    .av-section-header h2 {
        font-size: 24px;
    }
}
.av-trust-section {
    position: relative;
    padding: 80px 0;
    background: url('../images/background-image.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
    color: #fff;
}

/* DARK OVERLAY */
.av-trust-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.65);
}

/* CONTENT WRAPPER */
.av-trust-content {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: center;
}

/* BOX */
.av-trust-box {
    max-width: 850px;
    background: rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    padding: 40px;
    border-radius: 16px;
    text-align: center;
}

/* HEADING */
.av-trust-box h2 {
    font-size: 34px;
    margin-bottom: 20px;
    color: #fff;
    font-weight: 700;
}

/* TEXT */
.av-trust-box p {
    font-size: 16px;
    line-height: 1.7;
    color: #f1f1f1;
    margin-bottom: 20px;
}

/* LIST */
.av-trust-list {
    list-style: none;
    padding: 0;
    margin: 20px 0;
}

.av-trust-list li {
    display: inline-block;
    margin: 6px 10px;
    padding: 8px 15px;
    background: #DF4924;
    color: #fff;
    border-radius: 30px;
    font-size: 18px;
}

/* RESPONSIVE */
@media (max-width: 768px) {
    .av-trust-box {
        padding: 25px;
    }

    .av-trust-box h2 {
        font-size: 24px;
    }

    .av-trust-list li {
        display: block;
        margin: 8px auto;
        width: fit-content;
    }
}


.av-solar-types {
    padding: 90px 0;
    background: #e9e9e9;
}

.av-container {
    width: 90%;
    max-width: 1200px;
    margin: auto;
}

/* WRAPPER */
.av-solar-wrapper {
    display: flex;
    align-items: center;
    gap: 50px;
}

/* LEFT IMAGE */
.av-solar-image {
    flex: 1;
}

.av-solar-image img {
    width: 100%;
    border-radius: 16px;
    object-fit: cover;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

/* RIGHT CONTENT */
.av-solar-content {
    flex: 1;
}

.av-solar-content h2 {
    font-size: 32px;
    margin-bottom: 10px;
    color: #DF4924;
}

.av-solar-content p {
    font-size: 16px;
    color: #000000;
    line-height: 1.6;
}

/* BOXES */
.av-solar-box {
    background: #fff;
    border-left: 4px solid #DF4924;
    padding: 18px 20px;
    margin-top: 20px;
    border-radius: 10px;
    box-shadow: 0 6px 18px rgba(0,0,0,0.06);
    transition: 0.3s;
}

.av-solar-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(223, 73, 36, 0.15);
}

.av-solar-box h4 {
    color: #DF4924;
    margin-bottom: 6px;
    font-size: 18px;
}

.av-solar-box p {
    margin: 0 0 8px;
    font-size: 18px;
    color: #000000;
}

.av-solar-box strong {
    display: block;
    font-size: 18px;
    color: #111;
}

.av-solar-box span {
    font-size: 18px;
    color: #666;
}

/* NOTE */
.av-solar-note {
    margin-top: 20px;
    font-weight: 500;
    color: #111;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .av-solar-wrapper {
        flex-direction: column;
    }
}

.av-ahmedabad-section {
    padding: 90px 0;
    background: #009a4e; /* your orange brand color */
    color: #fff;
    position: relative;
    overflow: hidden;
}

/* optional soft glow effect */
.av-ahmedabad-section::before {
    content: "";
    position: absolute;
    top: -50px;
    left: -50px;
    width: 300px;
    height: 300px;
    background: rgba(255,255,255,0.15);
    border-radius: 50%;
    filter: blur(80px);
}

.av-container {
    width: 90%;
    max-width: 1200px;
    margin: auto;
    position: relative;
    z-index: 2;
}

/* TEXT */
.av-ahmedabad-content {
    text-align: center;
}

.av-ahmedabad-content h2 {
    font-size: 34px;
    font-weight: 700;
    margin-bottom: 15px;
    color: #fff;
}

.av-ahmedabad-content p {
    font-size: 16px;
    max-width: 850px;
    margin: 0 auto 25px;
    line-height: 1.7;
    color: #fff;
    opacity: 0.95;
}

/* GRID */
.av-ahmedabad-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin: 30px 0;
}

/* BOX */
.av-ahmedabad-box {
    background: #ffffff;
    border: 1px solid rgba(255, 255, 255, 0.25);
    padding: 20px;
    border-radius: 12px;
    backdrop-filter: blur(10px);
    transition: 0.3s ease;
}

/*.av-ahmedabad-box:hover {
    transform: translateY(-6px);
    background: rgba(255, 255, 255, 0.2);
}*/

.av-ahmedabad-box h4 {
    font-size: 16px;
    color: #009a4e;
    font-weight: 600;
}

/* FOOTER TEXT */
.av-ahmedabad-footer {
    margin-top: 25px;
    font-size: 16px;
    font-weight: 500;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .av-ahmedabad-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 576px) {
    .av-ahmedabad-grid {
        grid-template-columns: 1fr;
    }

    .av-ahmedabad-content h2 {
        font-size: 24px;
    }
}

.av-customer-section {
    padding: 90px 0;
    background: #f9f9f9;
}

.av-container {
    width: 90%;
    max-width: 1200px;
    margin: auto;
}

/* WRAPPER */
.av-customer-wrapper {
    display: flex;
    align-items: center;
    gap: 50px;
}

/* LEFT CONTENT */
.av-customer-content {
    flex: 1;
}

.av-customer-content h2 {
    font-size: 34px;
    color: #111;
    margin-bottom: 15px;
    font-weight: 700;
}

.av-customer-content p {
    font-size: 16px;
    color: #555;
    line-height: 1.7;
    margin-bottom: 15px;
}

.av-customer-highlight {
    font-weight: 600;
    color: #DF4924;
    font-size: 16px;
}

/* RIGHT BOXES */
.av-customer-boxes {
    flex: 1;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

/* BOX */
.av-customer-box {
    background: #DF4924;
    padding: 25px;
    border-radius: 14px;
    text-align: center;
    border: 1px solid rgba(223, 73, 36, 0.15);
    box-shadow: 0 8px 20px rgba(0,0,0,0.05);
    transition: 0.3s;
}

.av-customer-box:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 30px rgba(223, 73, 36, 0.15);
}

.av-customer-box h4 {
    font-size: 16px;
    color: #ffffff;
    font-weight: 600;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .av-customer-wrapper {
        flex-direction: column;
    }

    .av-customer-boxes {
        grid-template-columns: repeat(2, 1fr);
        width: 100%;
    }
}

@media (max-width: 576px) {
    .av-customer-boxes {
        grid-template-columns: 1fr;
    }

    .av-customer-content h2 {
        font-size: 24px;
    }
}

.av-industries-section {
    padding: 90px 0;
    background: #000000;
    color: #fff;
    position: relative;
    overflow: hidden;
}

/* soft glow */
.av-industries-section::before {
    content: "";
    position: absolute;
    width: 300px;
    height: 300px;
    background: rgba(255,255,255,0.15);
    filter: blur(80px);
    top: -50px;
    left: -50px;
}

.av-container {
    width: 90%;
    max-width: 1200px;
    margin: auto;
    position: relative;
    z-index: 2;
}

/* HEADER */
.av-industries-header {
    text-align: center;
    margin-bottom: 40px;
}

.av-industries-header h3 {
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 10px;
    color: #fff;
}

.av-industries-header p {
    font-size: 16px;
    opacity: 0.95;
}

/* GRID */
.av-industries-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

/* CARD */
.av-industry-card {
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.25);
    padding: 25px;
    border-radius: 14px;
    text-align: center;
    backdrop-filter: blur(10px);
    transition: 0.3s;
}

/* hover */
.av-industry-card:hover {
    transform: translateY(-6px);
    background: rgba(255,255,255,0.2);
}

/* ICON */
.av-industry-card i {
    font-size: 28px;
    margin-bottom: 10px;
    color: #fff;
}

/* TITLE */
.av-industry-card h4 {
    font-size: 18px;
    font-weight: 600;
    color: #fff;
}

/* FOOTER */
.av-industries-footer {
    text-align: center;
    margin-top: 30px;
    font-size: 16px;
    font-weight: 500;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .av-industries-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 576px) {
    .av-industries-grid {
        grid-template-columns: 1fr;
    }

    .av-industries-header h3 {
        font-size: 24px;
    }
}

/* ── PROCESS ──────────────────────────────── */

.process {
    background: #e9e9e9;
    position: relative;
}

.process-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1px;
    background: var(--border);
    border: 1px solid var(--border);
    border-radius: 12px;
    overflow: hidden;
}

.process-step {
    background: var(--white);
    padding: 32px 24px;
    position: relative;
    overflow: hidden;
    transition: all 0.45s ease;
    z-index: 1;
}

/* Animated top border */
.process-step::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 4px;
    background: linear-gradient(
        90deg,
        #ff6a00,
        #ff9500,
        #ffd700
        );
    transition: all 0.5s ease;
}

/* Soft background effect */
.process-step::after {
    content: "";
    position: absolute;
    width: 180px;
    height: 180px;
    border-radius: 50%;
    background: rgba(223, 73, 36, 0.05);
    top: -80px;
    right: -80px;
    transform: scale(0);
    transition: all 0.6s ease;
    z-index: -1;
}

.process-step:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.12);
}

.process-step:hover::before {
    left: 0;
}

.process-step:hover::after {
    transform: scale(1);
}

/* Icon */

.step-icon {
    width: 60px;
    height: 60px;
    background: var(--red-light);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
    transition: all 0.45s ease;
}

.step-icon svg {
    width: 26px;
    height: 26px;
    fill: var(--red);
    transition: all 0.45s ease;
}

.process-step:hover .step-icon {
    background: var(--red);
    transform: rotateY(180deg);
    box-shadow: 0 10px 25px rgba(223, 73, 36, 0.35);
}

.process-step:hover .step-icon svg {
    fill: #fff;
    transform: rotateY(180deg);
}

/* Title */

.step-title {
    font-size: 19px;
    font-weight: 700;
    color: var(--black);
    margin-bottom: 10px;
    transition: all 0.4s ease;
}

.process-step:hover .step-title {
    color: var(--red);
}

/* Description */

.process-step p,
.step-desc {
    font-size: 16px;
    line-height: 1.8;
    color: var(--gray-mid);
    transition: all 0.4s ease;
}

.process-step:hover p {
    color: #444;
}

/* Optional number styling */

.step-num {
    font-size: 42px;
    font-weight: 800;
    color: rgba(223, 73, 36, 0.12);
    line-height: 1;
    margin-bottom: 16px;
    transition: all 0.4s ease;
}

.process-step:hover .step-num {
    color: rgba(223, 73, 36, 0.25);
    transform: scale(1.08);
}

/* Responsive */

@media (max-width: 1199px) {
    .process-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .process-grid {
        grid-template-columns: 1fr !important;
    }

    .process-step {
        padding: 25px 20px;
    }

    .step-title {
        font-size: 18px;
    }
}


/* ── MYTHS ────────────────────────────────── */
.myths {
    padding: 72px 0;
    background: url(../images/white-texture.jpg) no-repeat center center;
    background-size: cover;
}
.myths .section-title {
    color: #DF4924;
}
.myths .section-subtitle {
    color: rgba(255,255,255,0.5);
}
.myths-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-top: 44px;
}
.myth-card {
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 8px;
    padding: 24px;
}
.myth-q {
    font-size: 18px;
    font-weight: 700;
    color: rgba(255,255,255,0.4);
    font-style: italic;
    margin-bottom: 10px;
    line-height: 1.5;
}
.myth-a {
    font-size: 18px;
    color: rgba(255,255,255,0.75);
    line-height: 1.7;
}
.myth-check {
    width: 28px;
    height: 28px;
    background: rgba(223,73,36,0.15);
    border: 1px solid rgba(223,73,36,0.3);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
}
.myth-check svg {
    width: 13px;
    height: 13px;
    stroke: var(--red);
    fill: none;
    stroke-width: 2.5;
}
/* ── WHY SOLAR ────────────────────────────── */
.why-solar {
    background: var(--gray-pale);
}
.why-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: start;
}
.why-benefits {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-top: 36px;
}
.benefit-item {
    background: var(--white);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 20px;
    transition: border-color 0.2s, box-shadow 0.2s;
}
.benefit-item:hover {
    border-color: rgba(223,73,36,0.3);
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);
}
.benefit-item-icon {
    width: 36px;
    height: 36px;
    background: var(--red-light);
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
}
.benefit-item-icon svg {
    width: 18px;
    height: 18px;
    fill: var(--red);
}
.benefit-item h4 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 6px;
    color: #DF4924;

}
.benefit-item p {
    font-size: 16px;
    color: var(--gray-mid);
    line-height: 1.6;
}
.why-right {
    padding-top: 12px;
}
.why-right .section-title {
    margin-bottom: 14px;
}
.why-right > p {
    font-size: 15px;
    color: var(--gray-mid);
    line-height: 1.75;
    margin-bottom: 10px;
}
.why-highlight {
    background: var(--white);
    border: 1px solid var(--border);
    border-left: 3px solid var(--red);
    border-radius: 8px;
    padding: 20px 24px;
    margin-top: 24px;
}
.why-highlight p {
    font-size: 15px;
    color: var(--gray-dark);
    line-height: 1.7;
    font-style: italic;
}
.why-highlight .author {
    font-size: 12px;
    font-weight: 600;
    color: var(--gray-light);
    margin-top: 10px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}
/* Section */
.solar-highlight-section {
    width: 100%;
    overflow: hidden;
}

/* Wrapper */
.solar-highlight-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: #009a4e;
}

/* Images */
.solar-highlight-image {
    width: 40%;
    height: 100%;
}

.solar-highlight-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Center Content */
.solar-highlight-content {
    width: 50%;
    background-color: #009a4e;
    color: #ffffff;
    padding: 60px 40px;
}

.solar-highlight-content h2 {
    font-size: 32px;
    margin-bottom: 15px;
    font-weight: 600;
}

.solar-highlight-content p {
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 20px;
}

/* Benefits List */
.solar-benefits-list {
    list-style: none;
    padding: 0;
    margin: 20px 0;
}

.solar-benefits-list li {
    font-size: 16px;
    margin: 8px 0;
    position: relative;
    padding-left: 18px;
}

.solar-benefits-list li::before {
    content: "•"; /* White dot */
    position: absolute;
    left: 0;
    color: #ffffff;
    font-size: 18px;
    line-height: 1;
}
/* Note */
.solar-note {
    margin-top: 15px;
}

/* Button */
.solar-btn {
    display: inline-block;
    margin-top: 20px;
    padding: 12px 25px;
    background-color: #ffffff;
    color: #009a4e;
    text-decoration: none;
    font-weight: 600;
    border-radius: 3px;
    transition: 0.3s;
}

.solar-btn:hover {
    background-color: #000000;
    color: #ffffff;
}

/* Responsive */
@media (max-width: 992px) {
    .solar-highlight-wrapper {
        flex-direction: column;
    }

    .solar-highlight-image,
    .solar-highlight-content {
        width: 100%;
    }

    .solar-highlight-image img {
        height: 250px;
    }

    .solar-highlight-content {
        padding: 40px 20px;
    }
}

.site-footer__main .container-fluid, .site-footer__bottom .container-fluid{
    padding: 0px 80px;
}

.about-us-content{
    position: relative;
}




/* CONTAINER */
.avitrupt-container {
    width: 90%;
    max-width: 1320px;
    margin: auto;
}

/* HERO SECTION */
.avitrupt-residential-hero {
    padding: 80px 0;
    background: #ffffff;
    background: url(../images/service-bg.jpg) no-repeat center center;
    background-size: cover;
    position: relative;
}

/* WRAPPER */
.avitrupt-residential-hero-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
}

/* CONTENT */
.avitrupt-residential-hero-content {
    width: 55%;
}

.avitrupt-residential-hero-title {
    font-size: 34px;
    font-weight: 700;
    color: #DF4924;
    margin-bottom: 15px;
}

.avitrupt-residential-hero-subtitle {
    font-size: 20px;
    color: #000000;
    margin-bottom: 25px;
}

.avitrupt-residential-hero-text {
    font-size: 16px;
    color: #000000;
    margin-bottom: 10px;
    line-height: 1.7;
}

.avitrupt-residential-hero-highlight {
    font-size: 18px;
    font-weight: 600;
    color: #DF4924;
    margin: 20px 0;
}

.avitrupt-residential-hero-desc {
    font-size: 16px;
    color: #000000;
    margin-bottom: 10px;
}

.avitrupt-residential-hero-bold {
    font-size: 18px;
    font-weight: 600;
    color: #000000;
    margin-top: 20px;
}

/* BUTTONS */
.avitrupt-residential-hero-cta {
    margin-top: 30px;
    display: flex;
    gap: 15px;
}

.avitrupt-btn-primary {
    background: #DF4924;
    color: #ffffff;
    padding: 12px 25px;
    text-decoration: none;
    border-radius: 5px;
    transition: 0.3s;
}

.avitrupt-btn-primary:hover {
    background: #c43c1c;
}

.avitrupt-btn-outline {
    border: 2px solid #DF4924;
    color: #DF4924;
    padding: 12px 25px;
    text-decoration: none;
    border-radius: 5px;
    transition: 0.3s;
}

.avitrupt-btn-outline:hover {
    background: #DF4924;
    color: #ffffff;
}

/* IMAGE */
.avitrupt-residential-hero-image {
    width: 45%;
}

.avitrupt-residential-hero-image img {
    width: 100%;
    border-radius: 10px;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .avitrupt-residential-hero-wrapper {
        flex-direction: column;
    }

    .avitrupt-residential-hero-content,
    .avitrupt-residential-hero-image {
        width: 100%;
    }

    .avitrupt-residential-hero-title {
        font-size: 32px;
    }
}
/* SECTION */
.avitrupt-residential-why {
    padding: 80px 0;
    background: #f9f9f9;
    background: url(../images/service-bg.jpg) no-repeat center center;
    background-size: cover;
    position: relative;
}

/* WRAPPER */
.avitrupt-residential-why-wrapper {
    display: flex;
    gap: 60px;
    align-items: center;
}

/* LEFT CONTENT */
.avitrupt-residential-why-content {
    width: 50%;
}

.avitrupt-residential-why-title {
    font-size: 36px;
    color: #DF4924;
    margin-bottom: 20px;
}

.avitrupt-residential-why-text {
    font-size: 16px;
    color: #000000;
    margin-bottom: 12px;
    line-height: 1.7;
}

.avitrupt-residential-why-highlight {
    font-size: 20px;
    color: #DF4924;
    font-weight: 600;
    margin: 15px 0;
}

/* RIGHT BENEFITS */
.avitrupt-residential-why-benefits {
    width: 50%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

/* CARD */
.avitrupt-why-card {
    background: #ffffff;
    padding: 20px;
    border-radius: 10px;
    border-left: 4px solid #DF4924;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
    font-size: 15px;
    color: #000;
    display: flex;
    gap: 10px;
    align-items: center;
}

.avitrupt-why-card span {
    font-size: 22px;
}

/* HIGHLIGHT CARD */
.avitrupt-why-card.highlight {
    grid-column: span 2;
    background: #DF4924;
    color: #fff;
    font-weight: 500;
    justify-content: center;
    text-align: center;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .avitrupt-residential-why-wrapper {
        flex-direction: column;
    }

    .avitrupt-residential-why-content,
    .avitrupt-residential-why-benefits {
        width: 100%;
    }

    .avitrupt-residential-why-benefits {
        grid-template-columns: 1fr;
    }

    .avitrupt-why-card.highlight {
        grid-column: span 1;
    }
}
/* SECTION */
.avitrupt-residential-about {
    padding: 80px 0;
    background: #e9e9e9;
}

/* HEADER */
.avitrupt-residential-about-header {
    text-align: center;
    max-width: 700px;
    margin: 0 auto 60px;
}

.avitrupt-residential-about-header h2 {
    font-size: 36px;
    color: #DF4924;
    margin-bottom: 15px;
}

.avitrupt-residential-about-header p {
    color: #000000;
    font-size: 16px;
    line-height: 1.6;
}

/* WRAPPER */
.avitrupt-residential-about-wrapper {
    display: flex;
    align-items: center;
    gap: 50px;
}

/* IMAGE */
.avitrupt-residential-about-image {
    width: 50%;
}

.avitrupt-residential-about-image img {
    width: 100%;
    border-radius: 12px;
}

/* CONTENT */
.avitrupt-residential-about-content {
    width: 50%;
}

.avitrupt-residential-about-content h3 {
    font-size: 22px;
    margin-bottom: 20px;
    color: #000;
}

/* GRID */
.avitrupt-appliance-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
    margin-bottom: 25px;
}

.avitrupt-appliance-item {
    background: #f7f7f7;
    padding: 12px 15px;
    border-radius: 6px;
    font-size: 15px;
    color: #000;
    border-left: 3px solid #DF4924;
}

/* TEXT */
.avitrupt-residential-about-text {
    color: #000000;
    margin-bottom: 10px;
}

.avitrupt-residential-about-highlight {
    font-size: 18px;
    font-weight: 600;
    color: #DF4924;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .avitrupt-residential-about-wrapper {
        flex-direction: column;
    }

    .avitrupt-residential-about-image,
    .avitrupt-residential-about-content {
        width: 100%;
    }

    .avitrupt-appliance-grid {
        grid-template-columns: 1fr;
    }
}
/* SECTION */
.avitrupt-residential-rooftop {
    padding: 80px 0;
    background: #000000;
}

/* WRAPPER */
.avitrupt-residential-rooftop-wrapper {
    display: flex;
    align-items: center;
    gap: 60px;
}

/* IMAGE */
.avitrupt-residential-rooftop-image {
    width: 50%;
}

.avitrupt-residential-rooftop-image img {
    width: 100%;
    border-radius: 12px;
}

/* CONTENT */
.avitrupt-residential-rooftop-content {
    width: 50%;
}

/* TEXT STYLES */
.avitrupt-residential-rooftop-title {
    font-size: 36px;
    color: #ffffff;
    margin-bottom: 20px;
}

.avitrupt-residential-rooftop-text {
    color: #000000;
    font-size: 16px;
    margin-bottom: 12px;
    line-height: 1.7;
}

.avitrupt-residential-rooftop-highlight {
    color: #DF4924;
    font-size: 18px;
    font-weight: 600;
    margin: 15px 0;
}

.avitrupt-residential-rooftop-desc {
    color: #000000;
    margin-top: 20px;
}

.avitrupt-residential-rooftop-bold {
    color: #ffffff;
    font-weight: 600;
    margin-top: 10px;
}

/* GRID */
.avitrupt-property-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
    margin: 20px 0;
}

.avitrupt-property-item {
    background: #111111;
    padding: 12px 15px;
    border-radius: 6px;
    color: #ffffff;
    border-left: 3px solid #DF4924;
    font-size: 15px;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .avitrupt-residential-rooftop-wrapper {
        flex-direction: column;
    }

    .avitrupt-residential-rooftop-image,
    .avitrupt-residential-rooftop-content {
        width: 100%;
    }

    .avitrupt-property-grid {
        grid-template-columns: 1fr;
    }
}

/* SECTION */
.avitrupt-residential-location {
    padding: 80px 0;
    background: url(../images/service-bg.jpg) no-repeat center center;
    background-size: cover;
}

/* WRAPPER */
.avitrupt-residential-location-wrapper {
    display: flex;
    gap: 60px;
    align-items: center;
}

/* CONTENT */
.avitrupt-residential-location-content {
    width: 55%;
}

.avitrupt-residential-location-title {
    font-size: 34px;
    color: #DF4924;
    margin-bottom: 20px;
}

.avitrupt-residential-location-text {
    color: #000000;
    margin-bottom: 12px;
    line-height: 1.7;
}

.avitrupt-residential-location-highlight {
    color: #DF4924;
    font-weight: 600;
    margin: 15px 0;
}

/* KEYWORDS */
.avitrupt-location-keywords {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 15px;
}

.avitrupt-location-keywords span {
    background: #ffffff;
    border: 1px solid #DF4924;
    color: #DF4924;
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 13px;
}

/* DESC */
.avitrupt-residential-location-desc {
    margin-top: 10px;
    color: #000;
    font-weight: 500;
}

/* CARD */
.avitrupt-residential-location-card {
    width: 45%;
    background: #DF4924;
    padding: 30px;
    border-radius: 12px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.08);
}

.avitrupt-residential-location-card h3 {
    margin-bottom: 20px;
    color: #ffffff;
}

.avitrupt-residential-location-card ul {
    list-style: none;
    padding: 0;
}

.avitrupt-residential-location-card li {
    margin-bottom: 12px;
    color: #ffffff;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .avitrupt-residential-location-wrapper {
        flex-direction: column;
    }

    .avitrupt-residential-location-content,
    .avitrupt-residential-location-card {
        width: 100%;
    }
}
/* SECTION */
.avitrupt-residential-benefits {
    padding: 80px 0;
    background: #e9e9e9;
}

/* HEADER */
.avitrupt-residential-benefits-header {
    text-align: center;
    max-width: 700px;
    margin: 0 auto 60px;
}

.avitrupt-residential-benefits-header h2 {
    font-size: 36px;
    color: #DF4924;
    margin-bottom: 10px;
}

.avitrupt-residential-benefits-header p {
    color: #000000;
}

/* GRID */
.avitrupt-benefits-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
}

/* CARD */
.avitrupt-benefit-card {
    background: #ffffff;
    padding: 25px;
    border-radius: 12px;
    transition: 0.3s;
    border-top: 3px solid transparent;
    border-top: 3px solid #DF4924;
}

.avitrupt-benefit-card:hover {
    transform: translateY(-8px);
}

/* ICON */
.avitrupt-benefit-icon {
    font-size: 28px;
    margin-bottom: 15px;
}

/* TEXT */
.avitrupt-benefit-card h3 {
    font-size: 18px;
    margin-bottom: 10px;
    color: #000;
}

.avitrupt-benefit-card p {
    font-size: 14px;
    color: #000000;
    line-height: 1.6;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .avitrupt-benefits-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .avitrupt-benefits-grid {
        grid-template-columns: 1fr;
    }
}
/* SECTION */
.avitrupt-residential-lifestyle {
    padding: 80px 0;
    background: url(../images/service-bg.jpg) no-repeat center center;
    background-size: cover;
}

/* WRAPPER */
.avitrupt-residential-lifestyle-wrapper {
    display: flex;
    align-items: center;
    gap: 60px;
}

/* LEFT */
.avitrupt-residential-lifestyle-content {
    width: 50%;
}

.avitrupt-residential-lifestyle-title {
    font-size: 34px;
    color: #DF4924;
    margin-bottom: 20px;
}

.avitrupt-residential-lifestyle-text {
    color: #000000;
    margin-bottom: 10px;
}

.avitrupt-lifestyle-points p {
    margin: 5px 0;
    color: #000000;
}

/* HIGHLIGHT */
.avitrupt-residential-lifestyle-highlight {
    margin: 20px 0;
    font-weight: 600;
    color: #DF4924;
}

.avitrupt-residential-lifestyle-bold {
    font-size: 18px;
    font-weight: 600;
    color: #000;
}

/* RIGHT */
.avitrupt-residential-lifestyle-checklist {
    width: 50%;
    background: #e9e9e9;
    padding: 30px;
    border-radius: 12px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.08);
    border: 1px solid #DF4924;
}

.avitrupt-residential-lifestyle-checklist h3 {
    margin-bottom: 20px;
    color: #DF4924;
}

.avitrupt-residential-lifestyle-checklist ul {
    list-style: none;
    padding: 0;
}

.avitrupt-residential-lifestyle-checklist li {
    margin-bottom: 12px;
    color: #000000;
}

.avitrupt-residential-lifestyle-checklist li img{
    max-width: 50px;
}

/* BOX */
.avitrupt-lifestyle-box {
    margin-top: 20px;
    background: #DF4924;
    color: #ffffff;
    padding: 15px;
    border-radius: 6px;
    text-align: center;
    font-weight: 500;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .avitrupt-residential-lifestyle-wrapper {
        flex-direction: column;
    }

    .avitrupt-residential-lifestyle-content,
    .avitrupt-residential-lifestyle-checklist {
        width: 100%;
    }
}


/* SECTION */
.avitrupt-residential-types {
    padding: 80px 0;
    background: url(../images/white-texture.jpg) no-repeat center center;
    background-size: cover;
}

/* HEADER */
.avitrupt-residential-types-header {
    text-align: center;
    margin-bottom: 60px;
}

.avitrupt-residential-types-header h2 {
    font-size: 36px;
    color: #DF4924;
}

.avitrupt-residential-types-header p {
    color: #000000;
}

/* GRID */
.avitrupt-types-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}

/* CARD */
.avitrupt-type-card {
    background: #f5f5f5;
    padding: 25px;
    border-radius: 12px;
    transition: 0.3s;
    border: 2px solid #DF4924;
}

.avitrupt-type-card:hover {
    transform: translateY(-8px);
}

/* HIGHLIGHT CARD */
.avitrupt-type-card.highlight {
    background: #000000;
    color: #ffffff;
}

.avitrupt-type-card.highlight h3,
.avitrupt-type-card.highlight h4,
.avitrupt-type-card.highlight li,
.avitrupt-type-card.highlight p {
    color: #ffffff;
}

/* TEXT */
.avitrupt-type-card h3 {
    margin-bottom: 10px;
    color: #000;
}

.avitrupt-type-desc {
    color: #000000;
    margin-bottom: 15px;
}

.avitrupt-type-card h4 {
    margin-bottom: 10px;
    font-size: 15px;
}

/* LIST */
.avitrupt-type-card ul {
    padding-left: 15px;
}

.avitrupt-type-card li {
    margin-bottom: 8px;
    color: #000000;
}

/* FOOTER */
.avitrupt-types-footer {
    text-align: center;
    margin-top: 40px;
    font-weight: 500;
    color: #DF4924;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .avitrupt-types-grid {
        grid-template-columns: 1fr;
    }
}
/* SECTION */
.avitrupt-residential-cost {
    padding: 80px 0;
    background: #000000;
}

/* WRAPPER */
.avitrupt-residential-cost-wrapper {
    display: flex;
    gap: 60px;
    align-items: center;
}

/* LEFT */
.avitrupt-residential-cost-content {
    width: 55%;
}

.avitrupt-residential-cost-title {
    font-size: 34px;
    color: #ffffff;
    margin-bottom: 20px;
}

.avitrupt-residential-cost-question {
    font-size: 20px;
    color: #DF4924;
    margin-bottom: 10px;
}

.avitrupt-residential-cost-text {
    color: #000000;
    margin-bottom: 15px;
}

/* SUBTITLE */
.avitrupt-cost-subtitle {
    color: #ffffff;
    margin-bottom: 10px;
}

/* LIST */
.avitrupt-cost-list {
    padding-left: 15px;
    color: #000000;
}

.avitrupt-cost-list li {
    margin-bottom: 10px;
}

/* HIGHLIGHT */
.avitrupt-cost-highlight {
    margin-top: 20px;
    color: #ffffff;
    font-weight: 500;
}

/* RIGHT CARD */
.avitrupt-residential-cost-card {
    width: 45%;
    background: #ffffff;
    padding: 30px;
    border-radius: 12px;
    text-align: center;
}

/* PRICE BOX */
.avitrupt-cost-box {
    background: #DF4924;
    color: #ffffff;
    padding: 20px;
    border-radius: 10px;
    margin: 20px 0;
}

.avitrupt-cost-box p {
    font-size: 28px;
    font-weight: 700;
}

.avitrupt-cost-box span {
    font-size: 14px;
}

/* POINTS */
.avitrupt-cost-points {
    list-style: none;
    padding: 0;
    margin: 20px 0;
}

.avitrupt-cost-points li {
    margin-bottom: 10px;
    color: #000000;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .avitrupt-residential-cost-wrapper {
        flex-direction: column;
    }

    .avitrupt-residential-cost-content,
    .avitrupt-residential-cost-card {
        width: 100%;
    }
}

/* SECTION */
.avitrupt-residential-price {
    padding: 80px 0;
    background: url(../images/service-bg.jpg) no-repeat center center;
    background-size: cover;
}

/* WRAPPER */
.avitrupt-residential-price-wrapper {
    display: flex;
    align-items: center;
    gap: 60px;
}

/* IMAGE */
.avitrupt-residential-price-image {
    width: 50%;
}

.avitrupt-residential-price-image img {
    width: 100%;
    border-radius: 12px;
}

/* CONTENT */
.avitrupt-residential-price-content {
    width: 50%;
}

.avitrupt-residential-price-title {
    font-size: 34px;
    color: #DF4924;
    margin-bottom: 20px;
}

.avitrupt-residential-price-text {
    color: #000000;
    margin-bottom: 7px;
    line-height: 1.7;
}

/* BOX */
.avitrupt-price-box {
    background: #f7f7f7;
    padding: 20px;
    border-radius: 8px;
    margin-bottom: 15px;
    border-left: 4px solid #DF4924;
}

.avitrupt-price-box h4 {
    margin-bottom: 10px;
    color: #000;
}

.avitrupt-price-box ul {
    padding-left: 15px;
}

.avitrupt-price-box li {
    margin-bottom: 6px;
    color: #000000;
}

/* HIGHLIGHT */
.avitrupt-residential-price-highlight {
    color: #DF4924;
    font-weight: 600;
    margin-top: 10px;
}

.avitrupt-residential-price-bold {
    font-size: 18px;
    font-weight: 600;
    color: #000;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .avitrupt-residential-price-wrapper {
        flex-direction: column;
    }

    .avitrupt-residential-price-image,
    .avitrupt-residential-price-content {
        width: 100%;
    }
}
/* SECTION */
.avitrupt-split-section {
    padding: 80px 0;
    background: url(../images/shape-9.496bfcec.png) no-repeat center center;
    background-size: cover;
}

.gray-bg {
    background: #f5f5f5;
}

/* WRAPPER */
.avitrupt-split-wrapper {
    display: flex;
    align-items: center;
    gap: 60px;
}

.avitrupt-split-wrapper.reverse {
    flex-direction: row-reverse;
}

/* IMAGE */
.avitrupt-split-image {
    width: 50%;
}

.avitrupt-split-image img {
    width: 100%;
    border-radius: 12px;
}

/* CONTENT */
.avitrupt-split-content {
    width: 50%;
}

.avitrupt-split-content h2 {
    font-size: 32px;
    margin-bottom: 20px;
    color: #DF4924;
}

.avitrupt-split-content p {
    color: #000000;
    margin-bottom: 12px;
    line-height: 1.7;
}

/* LIST */
.avitrupt-highlight-list {
    margin-bottom: 15px;
}

.avitrupt-highlight-list li {
    color: #DF4924;
    margin-bottom: 6px;
}

.avitrupt-check-list {
    list-style: none;
    padding: 0;
}

.avitrupt-check-list li {
    margin-bottom: 10px;
    color: #000000;
}

/* TEXT STYLES */
.highlight {
    color: #DF4924;
    font-weight: 600;
}

.bold {
    font-weight: 600;
    color: #000;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .avitrupt-split-wrapper {
        flex-direction: column;
    }

    .avitrupt-split-wrapper.reverse {
        flex-direction: column;
    }

    .avitrupt-split-image,
    .avitrupt-split-content {
        width: 100%;
    }
}
/* SECTION */
.avitrupt-space-requirement {
    padding: 80px 0;
    background: #e9e9e9;
}

/* HEADER */
.avitrupt-space-requirement-header {
    text-align: center;
    margin-bottom: 40px;
}

.avitrupt-space-requirement-header h2 {
    font-size: 34px;
    color: #DF4924;
}

/* MAIN CARD */
.avitrupt-space-requirement-card {
    max-width: 800px;
    margin: 0 auto;
    background: #f7f7f7;
    padding: 40px;
    border-radius: 12px;
    border-left: 5px solid #DF4924;
}

/* TEXT */
.avitrupt-space-text {
    font-size: 16px;
    color: #000000;
    margin-bottom: 15px;
    line-height: 1.7;
}

.avitrupt-space-text.highlight {
    color: #000;
    font-weight: 500;
}

/* DIVIDER */
.avitrupt-space-divider {
    height: 1px;
    background: #ddd;
    margin: 20px 0;
}

/* CALLOUT */
.avitrupt-space-callout {
    margin-top: 10px;
    font-size: 18px;
    font-weight: 600;
    color: #DF4924;
}

/* POINTS */
.avitrupt-space-points {
    display: flex;
    justify-content: center;
    gap: 30px;
    margin-top: 40px;
    flex-wrap: wrap;
}

.point {
    background: #000;
    color: #fff;
    padding: 20px;
    border-radius: 10px;
    width: 250px;
    text-align: center;
    transition: 0.3s;
}

.point span {
    font-size: 22px;
    display: block;
    margin-bottom: 10px;
}

.point p {
    font-size: 14px;
    color: #ccc;
}

.point:hover {
    transform: translateY(-6px);
    border-bottom: 3px solid #DF4924;
}
/* SECTION */
.avitrupt-solar-best {
    padding: 80px 0;
    background-image: url(../images/service-bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}

/* HEADER */
.avitrupt-solar-best-header {
    text-align: center;
    max-width: 750px;
    margin: 0 auto 50px;
}

.avitrupt-solar-best-header h2 {
    font-size: 34px;
    color: #DF4924;
    margin-bottom: 10px;
}

.avitrupt-solar-best-header p {
    color: #000000;
}


/* TEXT */
.avitrupt-solar-text {
    text-align: center;
    margin-bottom: 30px;
    color: #000000;
    font-size: 16px;
}

/* FACTOR GRID */
.avitrupt-solar-factors {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.factor {
    background: #e9e9e9;
    padding: 20px;
    border-radius: 10px;
    text-align: center;
    transition: 0.3s;
    border-top: 3px solid #DF4924;
}

.factor span {
    font-size: 22px;
    display: block;
    margin-bottom: 10px;
}

.factor h4 {
    margin-bottom: 8px;
    color: #DF4924;
    font-size: 26px;
}

.factor p {
    font-size: 14px;
    color: #000000;
}

/* HOVER */
.factor:hover {
    transform: translateY(-6px);
    border-top: 3px solid #DF4924;
}

/* HIGHLIGHT */
.avitrupt-solar-highlight {
    margin-top: 30px;
    text-align: center;
    font-size: 18px;
    font-weight: 600;
    color: #000;
    border-top: 1px solid #ddd;
    padding-top: 20px;
}

.avitrupt-solar-highlight::after {
    content: "";
    display: block;
    width: 60px;
    height: 3px;
    background: #DF4924;
    margin: 10px auto 0;
    border-radius: 2px;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .avitrupt-solar-factors {
        grid-template-columns: 1fr;
    }
}
/* SECTION */
.avitrupt-solar-investment {
    padding: 80px 0;
    background: var(--black);
}

/* HEADER */
.avitrupt-solar-investment-header {
    text-align: center;
    margin-bottom: 40px;
}

.avitrupt-solar-investment-header h2 {
    font-size: 34px;
    color: #DF4924;
}

/* MAIN CARD */
.avitrupt-solar-investment-card {
    max-width: 850px;
    margin: auto;
    background: #ffffff;
    padding: 40px;
    border-radius: 12px;
    border-left: 5px solid #DF4924;
}

/* TEXT */
.text {
    color: #000000;
    margin-bottom: 15px;
    line-height: 1.7;
}

.text.highlight {
    color: #000;
    font-weight: 500;
}

.text.bold {
    font-size: 18px;
    font-weight: 600;
    color: #000;
}

/* DIVIDER */
.divider {
    height: 1px;
    background: #ddd;
    margin: 20px 0;
}

/* FINAL LINE */
.final-line {
    margin-top: 20px;
    font-weight: 600;
    color: #DF4924;
    line-height: 1.6;
}

/* FLOW STRIP */
.avitrupt-solar-flow {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    margin-top: 40px;
    flex-wrap: wrap;
}

/* FLOW ITEM */
.flow-item {
    background: #e9e9e9;
    color: #fff;
    padding: 20px;
    border-radius: 10px;
    text-align: center;
    min-width: 150px;
}

.flow-item span {
    font-size: 22px;
    display: block;
    margin-bottom: 8px;
}

.flow-item span img{
    max-width: 40px;
}


.flow-item p {
    font-size: 14px;
    color: #000000;
}

/* ARROW */
.flow-arrow {
    font-size: 22px;
    color: #DF4924;
}

/* RESPONSIVE */
@media (max-width: 768px) {
    .avitrupt-solar-flow {
        flex-direction: column;
    }

    .flow-arrow {
        transform: rotate(90deg);
    }
}

/* SECTION */
.avitrupt-ahmedabad-solar {
    padding: 80px 0;
    background: #e9e9e9;
}

/* HEADER */
.avitrupt-ahmedabad-header {
    text-align: center;
    max-width: 800px;
    margin: 0 auto 50px;
}

.avitrupt-ahmedabad-header h2 {
    font-size: 34px;
    color: #DF4924;
    margin-bottom: 10px;
}

.avitrupt-ahmedabad-header p {
    color: #000000;
    line-height: 1.6;
}

/* GRID */
.avitrupt-ahmedabad-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

/* CARD */
.ahm-card {
    background: #f7f7f7;
    padding: 25px;
    border-radius: 12px;
    text-align: center;
    transition: 0.3s;
    border-top: 3px solid transparent;
}

.ahm-card span {
    font-size: 26px;
    display: block;
    margin-bottom: 10px;
}

.ahm-card h3 {
    color: #DF4924;
    font-size: 21px;
    margin-bottom: 10px;
}

.ahm-card p {
    font-size: 14px;
    color: #000000;
}

/* HIGHLIGHT CARD */
.ahm-card.highlight {
    background: #000;
    color: #fff;
    border-top: 3px solid #DF4924;
}

.ahm-card.highlight p,
.ahm-card.highlight h3 {
    color: #fff;
}

/* HOVER */
.ahm-card:hover {
    transform: translateY(-6px);
    border-top: 3px solid #DF4924;
}

/* FOOTER */
.avitrupt-ahmedabad-footer {
    text-align: center;
    margin-top: 40px;
    font-weight: 600;
    color: #DF4924;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .avitrupt-ahmedabad-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .avitrupt-ahmedabad-grid {
        grid-template-columns: 1fr;
    }
}

/* SECTION */
.avitrupt-solar-maintenance {
    padding: 80px 0;
    background: #f5f5f5;
}

/* HEADER */
.avitrupt-maintenance-header {
    text-align: center;
    max-width: 750px;
    margin: 0 auto 50px;
}

.avitrupt-maintenance-header h2 {
    font-size: 34px;
    color: #DF4924;
    margin-bottom: 10px;
}

.avitrupt-maintenance-header p {
    color: #000000;
    line-height: 1.6;
}

/* GRID */
.avitrupt-maintenance-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

/* CARD */
.maintenance-card {
    background: #ffffff;
    padding: 25px;
    border-radius: 12px;
    text-align: center;
    transition: 0.3s;
    border-top: 3px solid #000000;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
}

.maintenance-card span {
    font-size: 26px;
    display: block;
    margin-bottom: 10px;
}

.maintenance-card h3 {
    font-size: 21px;
    margin-bottom: 10px;
    color: #DF4924;
}

.maintenance-card p {
    font-size: 14px;
    color: #000000;
    line-height: 1.5;
}

/* HOVER */
.maintenance-card:hover {
    transform: translateY(-6px);
    border-top: 3px solid #DF4924;
}

/* FOOTER */
.avitrupt-maintenance-footer {
    text-align: center;
    margin-top: 50px;
}

.avitrupt-maintenance-footer h3 {
    font-size: 26px;
    color: #DF4924;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .avitrupt-maintenance-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .avitrupt-maintenance-grid {
        grid-template-columns: 1fr;
    }
}

/* SECTION */
.avitrupt-homeowners {
    padding: 80px 0;
    background: #000;
    color: #fff;
}

/* HEADER */
.avitrupt-homeowners-header {
    text-align: center;
    margin-bottom: 40px;
}

.avitrupt-homeowners-header h2 {
    font-size: 36px;
    color: #fff;
}

/* CARD */
.avitrupt-homeowners-card {
    max-width: 850px;
    margin: auto;
    background: #111;
    padding: 40px;
    border-radius: 12px;
    border-left: 5px solid #DF4924;
}

/* TEXT */
.text {
    color: #000000;
    margin-bottom: 15px;
    line-height: 1.7;
}

.text.bold {
    font-size: 18px;
    font-weight: 600;
    color: #000000;
}

.text.highlight {
    color: #DF4924;
    font-weight: 600;
}

/* DOUBT BOX */
.doubt-box {
    background: #1a1a1a;
    padding: 20px;
    border-radius: 10px;
    margin: 15px 0;
    border: 1px solid #333;
}

.doubt-box p {
    margin-bottom: 8px;
    color: #aaa;
}

/* DIVIDER */
.divider {
    height: 1px;
    background: #333;
    margin: 20px 0;
}

/* EMOTION LINE */
.emotion-line {
    margin: 20px 0;
    font-size: 18px;
    color: #DF4924;
    font-weight: 600;
    text-align: center;
}

/* FINAL LINE */
.final-line {
    margin-top: 20px;
    font-size: 28px;
    text-align: center;
}

/* RESPONSIVE */
@media (max-width: 600px) {
    .avitrupt-homeowners-card {
        padding: 25px;
    }

    .final-line {
        font-size: 22px;
    }
}
/* SECTION */
.avitrupt-trust {
    padding: 80px 0;
    background: #f8f8f8;
}

/* HEADER */
.avitrupt-trust-header {
    text-align: center;
    margin-bottom: 40px;
}

.avitrupt-trust-header h2 {
    font-size: 34px;
    color: #DF4924;
}

/* CARD */
.avitrupt-trust-card {
    max-width: 900px;
    margin: auto;
    background: #ffffff;
    padding: 40px;
    border-radius: 12px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.05);
}

/* INTRO */
.intro {
    text-align: center;
    color: #000000;
    margin-bottom: 30px;
}

/* GRID */
.trust-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 40px;
}

/* ITEM */
.trust-item {
    background: #000;
    color: #fff;
    padding: 5px;
    border-radius: 10px;
    text-align: center;
    transition: 0.3s;
}

.trust-item span {
    font-size: 24px;
    display: block;
    margin-bottom: 10px;
    color: #ffffff;
    text-align: left;
}

.trust-item h3 {
    font-size: 15px;
    color: #fff;
}

/* HOVER */
.trust-item:hover {
    transform: translateY(-6px);
    background: #DF4924;
}

.trust-item:hover .trust-icon{
    background: #ffffff;
}

/* FOOTER */
.trust-footer {
    text-align: center;
}

.trust-footer p {
    color: #000000;
    margin-bottom: 10px;
}

.trust-footer h3 {
    font-size: 22px;
    color: #000;
    margin-bottom: 15px;
}

.trust-line {
    font-weight: 600;
    color: #DF4924;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .trust-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .trust-grid {
        grid-template-columns: 1fr;
    }
}
/* SECTION */
.avitrupt-story-trust {
    padding: 80px 0;
    background: url(../images/service-bg.jpg) no-repeat center center;
    background-size: cover;
}

/* ROW */
.avitrupt-story-row {
    display: flex;
    align-items: center;
    gap: 60px;
    margin-bottom: 80px;
}

/* REVERSE ROW */
.avitrupt-story-row.reverse {
    flex-direction: row-reverse;
}

/* IMAGE */
.avitrupt-story-image {
    width: 50%;
}

.avitrupt-story-image img {
    width: 100%;
    border-radius: 14px;
}

/* CONTENT */
.avitrupt-story-content {
    width: 50%;
}

.avitrupt-story-content h2 {
    font-size: 32px;
    color: #DF4924;
    margin-bottom: 20px;
}

.avitrupt-story-content p {
    color: #000000;
    margin-bottom: 12px;
    line-height: 1.7;
}

/* LIST */
.avitrupt-story-list {
    margin-bottom: 15px;
    padding-left: 18px;
}

.avitrupt-story-list li {
    margin-bottom: 6px;
    color: #000000;
}

/* TRUST GRID */
.trust-grid {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin: 15px 0;
}

.trust-grid span {
    background: #f5f5f5;
    padding: 10px 15px;
    border-radius: 6px;
    color: #000;
    font-size: 14px;
    border-left: 3px solid #DF4924;
}

/* TEXT STYLES */
.highlight {
    color: #DF4924;
    font-weight: 600;
}

.bold {
    color: #000;
    font-weight: 600;
}

.final {
    font-size: 18px;
    font-weight: 600;
    color: #000;
}

/* RESPONSIVE */
@media (max-width: 992px) {
    .avitrupt-story-row {
        flex-direction: column;
    }

    .avitrupt-story-row.reverse {
        flex-direction: column;
    }

    .avitrupt-story-image,
    .avitrupt-story-content {
        width: 100%;
    }
}

.page-hero {
    text-align: center;
    max-width: 540px;
}

.page-hero h1 {

    font-size: 36px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.2;
    margin-bottom: 12px;
}

.page-hero h1 span {
    color: #DF4924;
}

.page-hero p {
    font-size: 15px;
    color: #666;
    line-height: 1.7;
    margin-bottom: 28px;
}

/* ===== TRIGGER BUTTON ===== */
.open-popup-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #DF4924;
    color: #ffffff;
    border: none;
    border-radius: 12px;

    font-size: 16px;
    font-weight: 600;
    padding: 14px 32px;
    cursor: pointer;
    letter-spacing: 0.02em;
    transition: background 0.2s, transform 0.15s, box-shadow 0.2s;
    box-shadow: 0 8px 30px rgba(223, 73, 36, 0.35);
}

.open-popup-btn:hover {
    background: #c23d1e;
    transform: translateY(-2px);
    box-shadow: 0 12px 36px rgba(223, 73, 36, 0.45);
}

.open-popup-btn:active {
    transform: scale(0.97) translateY(0);
}

.open-popup-btn i {
    font-size: 20px;
}

/* ===== OVERLAY ===== */
.overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.78);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    z-index: 9999;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.overlay.active {
    opacity: 1;
    visibility: visible;
}

/* ===== POPUP ===== */
.popup {
    display: flex;
    width: 100%;
    max-width: 950px;
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    transform: translateY(30px) scale(0.96);
    opacity: 0;
    transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.4s ease;
    max-height: 92vh;
    overflow-y: auto;
    overflow-x: hidden;
}

.overlay.active .popup {
    transform: translateY(0) scale(1);
    opacity: 1;
}


@media(max-width:768px){

    .overlay.active{
        z-index: 99999;
    }

}

/* ===== CLOSE BUTTON ===== */
.close-btn {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.13);
    border: 1px solid rgba(255, 255, 255, 0.1);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 17px;
    z-index: 10;
    transition: background 0.2s, transform 0.15s;
}

.close-btn:hover {
    background: rgba(255, 255, 255, 0.25);
    transform: scale(1.08);
}

.close-btn:active {
    transform: scale(0.94);
}

/* ===== FORM PANEL ===== */
.form-panel {
    flex: 1.15;
    background: #ffffff;
    padding: 2.25rem 2rem 2rem;
    display: flex;
    flex-direction: column;
}

.form-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #DF4924;
    color: #ffffff;

    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 5px 13px;
    border-radius: 30px;
    width: fit-content;
    margin-bottom: 1rem;
}

.form-title {

    font-size: 26px;
    font-weight: 700;
    color: #000000;
    line-height: 1.2;
    margin-bottom: 4px;
}

.form-title span {
    color: #DF4924;
}

.form-subtitle {
    font-size: 14px;
    color: #888888;
    margin-bottom: 1.5rem;
    line-height: 1.5;
}

/* ===== INPUT GROUP ===== */
.input-group {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 14px;
}

.input-row {
    display: flex;
    gap: 10px;
}

.input-wrap {
    position: relative;
    flex: 1;
}

.input-wrap i {
    position: absolute;
    left: 13px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 16px;
    color: #bbbbbb;
    pointer-events: none;
    z-index: 1;
    transition: color 0.2s;
}

.input-wrap:focus-within i {
    color: #DF4924;
}

.input-wrap input {
    width: 100%;
    padding: 11px 13px 11px 15px;
    border: 1.5px solid #e8e8e8;
    border-radius: 10px;
    font-size: 14px;
    color: #000000;
    background: #fafafa;
    outline: none;
    transition: border-color 0.2s, background 0.2s;
}

.input-wrap input::placeholder {
    color: #bbbbbb;
}

.input-wrap input:focus {
    border-color: #DF4924;
    background: #ffffff;
}

/* ===== CHECKBOX ===== */
.consent-label {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    cursor: pointer;
    margin-bottom: 1.25rem;
}

.consent-label input[type="checkbox"] {
    margin-top: 2px;
    width: 15px;
    height: 15px;
    accent-color: #DF4924;
    flex-shrink: 0;
    cursor: pointer;
}

.consent-label span {
    font-size: 12px;
    color: #999999;
    line-height: 1.6;
}

.consent-label span a {
    color: #DF4924;
    text-decoration: underline;
    cursor: pointer;
}

/* ===== SUBMIT BUTTON ===== */
.cta-btn {
    width: 100%;
    padding: 13px;
    background: #DF4924;
    color: #ffffff;
    border: none;
    border-radius: 10px;

    font-size: 15px;
    font-weight: 600;
    letter-spacing: 0.02em;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: background 0.2s, transform 0.15s;
}

.cta-btn:hover {
    background: #c23d1e;
}

.cta-btn:active {
    transform: scale(0.98);
}

.form-note {
    text-align: center;
    font-size: 11px;
    color: #000000;
    margin-top: 10px;
}

/* ===== PROMO PANEL ===== */
.promo-panel {
    flex: 0.85;
    background: #000000;
    padding: 2.25rem 1.75rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position: relative;
    overflow: hidden;
}

.promo-panel::before {
    content: '';
    position: absolute;
    top: -55px;
    right: -55px;
    width: 170px;
    height: 170px;
    border-radius: 50%;
    background: #DF4924;
    opacity: 0.1;
    pointer-events: none;
}

.promo-panel::after {
    content: '';
    position: absolute;
    bottom: -30px;
    left: -30px;
    width: 110px;
    height: 110px;
    border-radius: 50%;
    background: #DF4924;
    opacity: 0.07;
    pointer-events: none;
}

.promo-tag {
    display: inline-block;
    background: #DF4924;
    color: #ffffff;

    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    padding: 4px 11px;
    border-radius: 30px;
    margin-bottom: 14px;
}

.promo-heading {

    font-size: 20px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1.3;
    margin-bottom: 8px;
}

.promo-heading span {
    color: #DF4924;
}

.promo-desc {
    font-size: 13px;
    color: #ffffff;
    line-height: 1.6;
    margin-bottom: 22px;
}

.price-card {
    background: #DF4924;
    border: 1px solid #ffffff;
    border-radius: 12px;
    padding: 1rem 1.25rem;
    margin-bottom: 22px;
    position: relative;
    z-index: 1;
}

.price-label {
    font-size: 10px;
    color: #f5f5f5;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 5px;
}

.price-value {
    display: flex;
    align-items: baseline;
    gap: 2px;
    margin-bottom: 6px;
}

.price-currency {

    font-size: 14px;
    color: #DF4924;
    font-weight: 600;
}

.price-amount {

    font-size: 38px;
    font-weight: 700;
    color: #ffffff;
    line-height: 1;
}

.price-ast {

    font-size: 14px;
    color: #DF4924;
    font-weight: 600;
    align-self: flex-start;
    margin-top: 4px;
}

.price-note {
    font-size: 11px;
    color: #f5f5f5;
    line-height: 1.5;
}

.trust-list {
    display: flex;
    flex-direction: column;
    gap: 9px;
    position: relative;
    z-index: 1;
}

.trust-item {
    display: flex;
    align-items: center;
    gap: 10px;
}

.trust-icon {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #DF4924;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.trust-icon i {
    font-size: 12px;
    color: #ffffff;
}

.trust-text {
    font-size: 13px;
    color: #888888;
    line-height: 1.4;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 1199px) {
    .overlay {
        align-items: flex-start;
        overflow-y: auto;
        padding: 1rem;
    }

    .popup {
        flex-direction: column;
        max-width: 440px;
        border-radius: 16px;
        max-height: none;
        overflow: visible;
        margin: auto;
    }

    .form-panel {
        padding: 1.75rem 1.5rem 1.5rem;
    }

    .promo-panel {
        padding: 1.5rem;
    }

    .input-row {
        flex-direction: column;
    }

    .form-title {
        font-size: 22px;
    }

    .promo-heading {
        font-size: 18px;
    }

    .price-amount {
        font-size: 32px;
    }

    .close-btn {
        top: 10px;
        right: 10px;
        background-color: #000000;
    }

    .page-hero h1 {
        font-size: 28px;
    }
}

@media (max-width: 400px) {
    .form-panel {
        padding: 1.5rem 1.25rem 1.25rem;
    }

    .form-title {
        font-size: 20px;
    }

    .page-hero h1 {
        font-size: 24px;
    }

    .open-popup-btn {
        font-size: 14px;
        padding: 12px 24px;
    }
}
.who-title{
    font-size: 29px;
    color: #DF4924;
    margin-bottom: 20px;
    font-weight: 500;
}
.partner-btn{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
}
.our-works-slider {
    background: #000;
    padding: 80px 0;
}

.works-header {
    text-align: center;
    margin-bottom: 40px;
}

.works-header h2 {
    color: #fff;
    font-size: 34px;
}

.works-header p {
    color: #f5f5f5;
}

/* SLIDER */
.slider-wrapper {
    position: relative;
    overflow: hidden;
}

.slider-track {
    display: flex;
    transition: 0.5s ease;
}

.work-card {
    min-width: 50%; /* IMPORTANT: 2 items */
    padding: 10px;
    box-sizing: border-box;
}

.work-card img,
.work-card video {
    width: 100%;
    height: 450px;
    object-fit: cover;
    border-radius: 10px;
}

/* NAV BUTTONS */
.nav-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: #DF4924;
    color: #fff;
    border: none;
    padding: 12px;
    cursor: pointer;
    z-index: 2;
}

.prev {
    left: 0;
}
.next {
    right: 0;
}

.nav-btn:hover {
    background: #fff;
    color: #000;
}
@media (max-width: 1199px) {
    .site-footer__main .container-fluid, .site-footer__bottom .container-fluid{
        padding: 0px 20px;
    }
    .about-us{
        padding: 0px 20px !important;
    }
    .inner-banner-title{
        font-size: 28px;
        line-height: 41px !important;
    }
    .work-card{
        min-width: 100%;
    }
}

/* =========================
   STICKY SUBSIDY BAR
========================= */

.sticky-subsidy-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: #ec421f;
    display: flex;
    align-items: stretch; /* IMPORTANT */
    justify-content: space-between;
    z-index: 9999;
    gap: 25px;
    /*box-shadow: 0 -4px 15px rgba(0,0,0,0.15);*/
    overflow: hidden;

    /* REMOVE LEFT SPACE */
    padding: 0 25px 0 0;
}

/* LEFT IMAGE */

.sticky-left-image {
    width: 550px;
    flex-shrink: 0;
    margin: 0;
    padding: 0;
    overflow: hidden;
}

.sticky-left-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover; /* FULL FIT */
}

/* CENTER CONTENT */

.sticky-center-content {
    flex: 1;
    display: flex;
    align-items: center;
}

.sticky-center-content h3 {
    margin: 0;
    font-size: 24px;
    color: #ffffff;
    font-weight: 700;
    line-height: 1.4;
}

.sticky-center-content h3 span {
    color: #ffffff;
    font-weight: 800;
}

/* RIGHT SIDE */

.sticky-right-counter {
    display: flex;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
    padding: 15px 0;
}

/* TITLE */

.counter-title {
    font-size: 16px;
    font-weight: 600;
    color: #ffffff;
}

/* COUNTDOWN */

.countdown-boxes {
    display: flex;
    gap: 10px;
}

.time-box {
    background: #ffffff;
    border-radius: 10px;
    padding: 10px 14px;
    text-align: center;
    min-width: 70px;
    box-shadow: 0 4px 10px rgba(0,0,0,0.15);
}

.time-box span {
    display: block;
    font-size: 28px;
    color: #DF4924;
    font-weight: 800;
    line-height: 1;
}

.time-box small {
    color: #000000;
    font-size: 12px;
    text-transform: uppercase;
}

/* BUTTON */

.sticky-install-btn {
    background: #000000;
    color: #ffffff;
    text-decoration: none;
    padding: 14px 24px;
    border-radius: 10px;
    font-weight: 700;
    transition: 0.3s ease;
    white-space: nowrap;
}

.sticky-install-btn:hover {
    background: #000000;
    color: #ffffff;
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width: 1200px) {

    .sticky-subsidy-bar {
        flex-wrap: wrap;
        justify-content: center;
        text-align: center;
        padding: 30px 0px;
        border-top: 1px solid #ffffff;
    }

    .sticky-center-content h3 {
        font-size: 22px;
    }

}

@media (max-width: 768px) {

    .sticky-subsidy-bar {
        gap: 15px;
        padding-bottom: 15px;
    }

    .sticky-left-image {
        width: 100%;
        height: 180px;
        display: none;
    }

    .sticky-left-image img {
        object-fit: cover;
        display: none;
    }

    .sticky-center-content {
        padding: 0 15px;
        align-items: center;
        justify-content: center;
    }

    .sticky-center-content h3 {
        font-size: 18px;
        text-align: center;
    }

    .sticky-right-counter {
        justify-content: center;
        padding: 0 15px;
    }

    .time-box {
        min-width: 58px;
        padding: 8px 10px;
    }

    .time-box span {
        font-size: 22px;
    }

    .sticky-install-btn {
        width: 100%;
        text-align: center;
    }

}

@media (max-width: 468px) {
    .sticky-center-content h3{
        font-size: 12px;
    }
    .sticky-subsidy-bar, .sticky-right-counter{
        gap: 5px;
    }
    .counter-title{
        font-size: 13px;
    }
    .sticky-subsidy-bar{
        padding: 10px 0px;
    }
    .time-box span{
        font-size: 14px;
    }
    .time-box small{
        font-size: 9px;
    }
}

.homepage-desktop{
    display: block;
}
.homepage-mobile{
    display: none;
}

@media (max-width: 1200px) {
    .homepage-desktop{
        display: none;
    }
    .homepage-mobile{
        display: block;
    }
}

@media (min-width: 1200px) and (max-width: 1500px) {
    .sticky-left-image {
        width: 450px;
    }
    .sticky-center-content h3{
        font-size: 12px;
    }
    .counter-title {
        font-size: 12px;
    }
    .time-box span{
        font-size: 13px;
    }
    .sticky-install-btn{
        font-size: 14px;
    }
}
@media (max-width: 1200px) {
    .partner-btn{
        flex-direction: column;
    }
    .our-achievements{
        margin-bottom: 10px !important;
    }
    .exact-counter-section{
        padding: 60px 0px;
    }
}