/* Responsive CSS for Dayaram Enterprise */

@media only screen and (max-width: 1440px) {
    body {
        font-size: 16px;
    }

    .px-60 {
        padding-inline: 40px;
    }

    .custom-main-navigation ul {
        gap: 30px;
    }
}

@media only screen and (max-width: 1200px) {

    h3,
    .entry-content :where(h3) {
        font-size: 22px;
    }

    .py-80 {
        padding-block: 50px;
    }

    .pt-80 {
        padding-top: 50px;
    }

    .pb-80 {
        padding-bottom: 50px;
    }

    .px-60 {
        padding-inline: 20px;
    }

    .industry-section-inner {
        gap: 20px;
    }

    header .custom-logo-link img {
        max-width: 200px;
    }

    .half-column-inner {
        gap: 30px;
    }

    .section-heading p {
        font-size: 18px;
    }

    .info-box {
        padding: 30px 20px;
    }

    .info-box-inner {
        gap: 20px;
    }

    .homepage-slider-wrapper,
    .quality-equipment-slider-wrapper,
    .material-use-slider-wrapper {
        padding: 0 20px;
    }

    .swiper-button-prev.homepage-prev,
    .swiper-button-prev.quality-equipment-prev,
    .swiper-button-prev.material-use-prev {
        left: -15px;
    }

    .swiper-button-next.homepage-next,
    .swiper-button-next.quality-equipment-next,
    .swiper-button-next.material-use-next {
        right: -15px;
    }

    .swiper-button-prev.homepage-prev:after,
    .swiper-button-next.homepage-next:after,
    .swiper-button-prev.quality-equipment-prev:after,
    .swiper-button-next.quality-equipment-next:after,
    .swiper-button-prev.material-use-prev:after,
    .swiper-button-next.material-use-next:after {
        font-size: 30px;
    }

    .section-heading {
        margin-bottom: 30px;
    }

    .solution-cards__items {
        padding: 20px;
    }

    .solution-cards__items:not(:last-child) {
        margin-bottom: 30px;
    }

    .solution-card__content {
        padding-left: 30px;
    }

    .performance-counter-icon {
        width: 65px;
        height: 65px;
        margin-top: -70px;
    }

    .performance-counter-icon svg,
    .performance-counter-icon img,
    .industry-icon svg,
    .industry-icon img {
        width: 35px;
        height: 35px;
    }

    .performance-counter-content h3,
    .industry-card h3 {
        font-size: 18px;
    }

    .performance-counter-number {
        font-size: 38px;
        margin-block: 15px;
    }

    .performance-counter {
        padding: 40px 20px 20px;
        border-radius: 12px;
    }

    .performance-counter-inner {
        gap: 20px;
        padding-top: 40px;
    }

    .industry-icon {
        width: 70px;
        height: 70px;
        margin: 0 auto 12px;
    }

    .industry-card {
        padding: 20px;
        border-radius: 12px;
    }

    .footer-logo img {
        max-width: 250px;
        padding: 10px;
        border-radius: 10px;
        border: 2px solid #d1ab00;
    }

    .footer-widget-area.footer-col-2 {
        padding-left: 40px;
    }

    .custom-footer-inner {
        gap: 30px;
    }

    .product-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .product-gallery-wrapper,
    .product-description {
        margin-bottom: 20px;
    }

    .product-dynamic-sections {
        margin-top: 20px;
    }

    .contact-wrapper {
        gap: 30px;
    }

    .page-hero-section {
        margin-bottom: 60px;
    }

    .custom-site-footer:not(.home .custom-site-footer) {
        margin-top: 60px;
    }

    .product-card-title {
        font-size: 20px;
    }

    .custom-site-footer .widget-title {
        font-size: 22px;
    }

    .process-step-description::before {
        font-size: 60px;
        top: -55px;
        width: 60px;
        padding-block: 10px;
    }

    .process-step-description {
        margin-top: 25px;
        padding-inline: 110px 10px;
    }

    .material-use-wrapper {
        gap: 20px;
    }
}

@media only screen and (max-width: 992px) {
    .hero-slider {
        height: 400px;
    }

    .half-column-inner {
        flex-direction: column-reverse;
    }

    .info-box-inner {
        grid-template-columns: 1fr;
    }

    .performance-counter-inner {
        grid-template-columns: repeat(2, 1fr);
        gap: 60px 30px;
    }

    .industry-section-inner {
        grid-template-columns: repeat(3, 1fr);
    }

    .our-process-wrapper .process-steps {
        padding-left: 30px;
    }

    .process-step-description::before {
        font-size: 45px;
        top: -45px;
        width: 50px;
        left: 20px;
    }

    .process-step-description {
        padding-inline: 90px 0;
    }

    .top-bar-contact {
        gap: 15px;
        font-size: 12px;
    }

    header .custom-menu-toggle {
        display: block;
        background: transparent;
        border: none;
        cursor: pointer;
        padding: 0;
        z-index: 1000;
        box-shadow: none;
    }

    .page-hero-section {
        height: 250px;
    }

    /* Hamburger icon styling */
    .hamburger-box {
        width: 30px;
        height: 24px;
        display: inline-block;
        position: relative;
    }

    .hamburger-inner {
        display: block;
        top: 50%;
        margin-top: -2px;
        width: 30px;
        height: 3px;
        background-color: #333;
        border-radius: 4px;
        position: absolute;
        transition: transform 0.15s ease;
    }

    .hamburger-inner::before,
    .hamburger-inner::after {
        content: "";
        display: block;
        background-color: #333;
        border-radius: 4px;
        height: 3px;
        width: 30px;
        position: absolute;
        transition: transform 0.15s ease;
    }

    .hamburger-inner::before {
        top: -8px;
    }

    .hamburger-inner::after {
        bottom: -8px;
    }

    /* Hamburger Active state */
    button[aria-expanded="true"] .hamburger-inner {
        transform: rotate(45deg);
    }

    button[aria-expanded="true"] .hamburger-inner::before {
        top: 0;
        opacity: 0;
    }

    button[aria-expanded="true"] .hamburger-inner::after {
        bottom: 0;
        transform: rotate(-90deg);
    }

    /* Mobile Menu Container */
    .custom-menu-container {
        display: none;
        /* hidden by default */
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        background-color: #fff;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
        z-index: 998;
    }

    .custom-menu-container.toggled-on {
        display: block;
        animation: slideDown 0.3s ease-out forwards;
    }

    @keyframes slideDown {
        from {
            opacity: 0;
            transform: translateY(-10px);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    .custom-main-navigation ul {
        flex-direction: column;
        gap: 0;
    }

    .custom-main-navigation ul li {
        width: 100%;
        position: relative;
    }

    .custom-main-navigation ul li a {
        display: block;
        padding: 12px 50px 12px 20px;
        border-top: 1px solid #f5f5f5;
    }

    .submenu-toggle {
        position: absolute !important;
        top: 0 !important;
        right: 0 !important;
        width: 45px !important;
        height: 45px !important;
        margin-left: 0 !important;
        border-left: 1px solid #f5f5f5 !important;
        background: transparent !important;
        background-color: transparent !important;
    }

    .custom-main-navigation ul li ul.sub-menu {
        position: relative;
        box-shadow: none;
        background: #fafafa;
        display: flex;
        flex-direction: column;
        padding-left: 20px;
        max-height: 0;
        overflow: hidden;
        opacity: 0;
        visibility: hidden;
        transition: max-height 0.3s ease-in-out, opacity 0.3s ease-in-out, visibility 0.3s;
    }

    .custom-main-navigation ul li ul.sub-menu.toggled-on {
        max-height: var(--submenu-height, 1000px);
        opacity: 1;
        visibility: visible;
    }

    /* Footer */
    .custom-footer-inner {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px;
    }

    /* Product Grid Tablet (2 columns) */
    .product-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Contact Page Layout Tablet */
    .contact-wrapper {
        flex-direction: column;
    }

    .contact-info,
    .contact-form {
        width: 100%;
    }

    .material-use-wrapper {
        grid-template-columns: 1fr 1fr;
        gap: 30px;
    }

    .product-single-container {
        gap: 30px;
    }

    .product-single-content {
        flex: 0 0 65%;
        width: 65%;
    }

    .product-single-sidebar {
        flex: 0 0 calc(35% - 40px);
        top: 80px;
    }

    .product-information-section-items ul {
        grid-template-columns: repeat(2, 1fr);
    }

    .product-information-section:last-child {
        margin-bottom: 0;
    }
}

@media only screen and (max-width: 767px) {
    body {
        font-size: 15px;
    }

    .px-60 {
        padding-inline: 0px;
    }

    .py-80 {
        padding-block: 40px;
    }

    .pt-80 {
        padding-top: 40px;
    }

    .pb-80 {
        padding-bottom: 40px;
    }

    .hero-subtitle {
        font-size: 16px;
    }

    .custom-top-bar-inner {
        justify-content: center;
    }

    .homepage-slider-wrapper,
    .quality-equipment-slider-wrapper,
    .material-use-slider-wrapper {
        padding: 0 20px;
    }

    .product-card-content {
        padding: 20px;
    }

    .product-card-title {
        min-height: inherit;
    }

    /* Footer */
    .custom-footer-inner {
        grid-template-columns: 1fr;
    }

    /* Product Grid Mobile (1 column) */
    .product-grid {
        grid-template-columns: 1fr;
    }

    /* Product Single Layout Mobile */
    .product-single-container {
        flex-direction: column;
    }

    .product-single-content,
    .product-single-sidebar {
        flex: 0 0 100%;
        width: 100%;
        position: unset;
    }

    .sticky-sidebar {
        position: static;
    }

    /* Contact Form Layout Mobile */
    .contact-form .form-fields {
        gap: 15px;
        display: flex;
        flex-direction: column;
    }

    .contact-info {
        padding: 30px 20px;
    }

    .contact-form {
        padding: 40px 30px;
    }

    .homepage-slider-wrapper,
    .quality-equipment-slider-wrapper,
    .material-use-slider-wrapper {
        padding: 0 20px;
    }

    .section-heading p {
        font-size: 16px;
    }

    .section-heading {
        margin-bottom: 20px;
    }

    .solution-cards__items {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .solution-card__content {
        padding-left: 0;
    }

    .top-bar-contact {
        gap: 8px;
        flex-direction: column;
        align-items: center;
    }

    .top-bar-contact span a {
        font-size: 14px;
    }

    .top-bar-contact svg {
        height: 20px;
        width: 20px;
        padding: 2px;
    }

    .industry-section-inner {
        grid-template-columns: repeat(2, 1fr);
    }

    .footer-widget-area.footer-col-2 {
        padding-left: 0;
    }

    .page-hero-section {
        height: 180px;
        margin-bottom: 50px;
    }

    .our-process-wrapper {
        display: flex;
        flex-direction: column;
    }

    .our-process-wrapper .our-process-heading {
        width: 100%;
    }

    .our-process-wrapper .process-steps {
        padding-left: 0;
        width: 100%;
    }

    .process-step-image img {
        aspect-ratio: 6/4;
        border-radius: 15px;
    }

    .process-step-description {
        padding-inline: 0;
        margin-top: 15px;
    }

    .process-step-description::before {
        top: -76px;
        left: 10px;
        font-size: 35px;
        width: 40px;
        padding-block: 7px;
        border-radius: 8px;
    }

    .material-use-wrapper {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .custom-site-footer:not(.home .custom-site-footer) {
        margin-top: 50px;
    }

    .process-step-item {
        margin-bottom: 20px;
        padding: 20px;
    }

    .contact-form {
        padding: 30px 20px;
    }
}

@media only screen and (max-width: 575px) {
    .performance-counter-inner {
        grid-template-columns: 1fr;
    }

    .industry-section-inner {
        grid-template-columns: 1fr;
    }

    .product-information-section-items ul {
        grid-template-columns: 1fr;
    }
}