/*
   Olio Theme Responsive Design
*/

@media (max-width: 1024px) {
    .hero-section{
        height: 650px;
    }
    
    /* Portfolio grid - maintain 4 columns on tablets */
    .portfolio-items .col-lg-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }
}

/* ---- Start of max-width 992px CSS ---- */
@media (max-width: 992px) {
    .sm-padding{ padding: 15px; }
    ul.nav > li > a {
        padding: 0 5px;
        font-size: 10px;
    }
    .content-info{
        padding-bottom: 65px;
        padding-top: 0;
    }
    .hero-section{
        height: 570px;
    }
    .about-content {
        padding: 60px 0;
        text-align: center;
    }
    .pdl-80{ padding-left: 0 }
    .contact-info,
    .contact-form {
        padding-right: 0;
        padding-left: 15px;
    }
    .contact-wrap {
        padding: 0px 0 100px;
        text-align: center;
    }
    #google-map {
        width: 100%;
        height: 260px;
        position: inherit;
    }
    
    /* Portfolio grid - maintain 4 columns on medium screens */
    .portfolio-items .col-lg-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }
}
/* ---- End of max-width 992px CSS ---- */


/* ---- Start of min-width 480px and max-width 768px CSS ---- */
@media all and (min-width: 480px) and (max-width: 768px) {
    /* Portfolio grid - maintain 4 columns on small tablets */
    .portfolio-items .col-lg-3 {
        flex: 0 0 25%;
        max-width: 25%;
        padding: 3px;
    }
}
/* ---- End of min-width 480px and max-width 768px CSS ---- */


/* ---- Start of max-width 767px CSS ---- */
@media all and (max-width: 767px) {
    body, p{
        font-size: 12px;
        line-height: 22px;
    }
    h1{
        font-size: 30px!important;
    }
    h2{
        font-size: 20px;
    }
    h3{
        font-size: 16px;
    }
    .mock-hide,
    p br{
        display: none;
    }
    .padding{
        padding: 60px 0;
    }
    .xs-padding{
    	padding: 15px;
    }
    .navbar-brand{
        padding: 17px 0;
    }
    .menu-btn,
    .menu-wrap ul.nav{
        display: none;
    }
    .slicknav_menu {
        display:block;
    }
    .contact-info{
        padding-bottom: 0;
        text-align: center;
    }
    .contact-wrap { padding: 0px 0 60px; }
    .contact-form{ padding-right: 0; }
    .contact-form .col-md-12{ text-align: center; }
    .portfolio-wrap .section-heading{
        padding: 45px 0;
    }
    .cta-section .cta-content h2{ font-size: 20px; }
    
    /* Portfolio grid - maintain 4 columns on mobile */
    .portfolio-items .col-lg-3 {
        flex: 0 0 25%;
        max-width: 25%;
        padding: 2px;
    }
    
    /* About section mobile centering */
    .about-wrap {
        flex-direction: column;
        text-align: center;
    }
    
    .about-content {
        padding: 40px 20px;
        text-align: center;
    }
    
    .about-content .section-heading {
        text-align: center;
    }
    
    .about-content p {
        text-align: center;
        margin-bottom: 25px;
    }
    
    .about-content .default-btn {
        margin: 20px auto 0;
        display: inline-block;
    }
    
    /* Aftercare section - two columns on mobile */
    .aftercare-area {
        flex-direction: column;
        text-align: center;
    }
    
    .aftercare-area .section-heading {
        text-align: center;
        padding-left: 0;
        margin-bottom: 30px;
    }
    
    .aftercare-area .section-heading h2 {
        font-size: 24px;
        margin-bottom: 15px;
    }
    
    .aftercare-area .section-heading p {
        font-size: 14px;
        line-height: 1.6;
        margin-bottom: 0;
    }
    
    .aftercare-wrap .col-lg-4 {
        flex: 0 0 50%;
        max-width: 50%;
        padding: 10px;
    }
    
    .aftercare-content {
        padding: 20px 15px;
        height: auto;
        min-height: 180px;
    }
    
    .aftercare-content i {
        font-size: 32px;
        margin-bottom: 12px;
    }
    
    .aftercare-content h3 {
        font-size: 14px;
        margin-bottom: 8px;
    }
    
    .aftercare-content p {
        font-size: 12px;
        line-height: 1.4;
    }
    
    .nav-social {
        display: none !important;
    }
}
/* ---- End of max-width 767px CSS ---- */


/* ---- Start of max-width 520px CSS ---- */
@media all and (max-width: 520px) {
    /* Portfolio grid - maintain 4 columns on small mobile */
    .portfolio-items .col-lg-3 {
        flex: 0 0 25%;
        max-width: 25%;
        padding: 1px;
    }
    
    .about-content {
        padding: 30px 15px;
    }
    
    .about-content h2 {
        font-size: 22px;
    }
    
    .about-content p {
        font-size: 13px;
        line-height: 1.6;
    }
    
    /* Aftercare section - two columns on small mobile */
    .aftercare-wrap .col-lg-4 {
        flex: 0 0 50%;
        max-width: 50%;
        padding: 8px;
    }
    
    .aftercare-content {
        padding: 18px 12px;
        min-height: 160px;
    }
    
    .aftercare-content i {
        font-size: 28px;
        margin-bottom: 10px;
    }
    
    .aftercare-content h3 {
        font-size: 13px;
        margin-bottom: 6px;
    }
    
    .aftercare-content p {
        font-size: 11px;
        line-height: 1.3;
    }
    
    .aftercare-area .section-heading h2 {
        font-size: 22px;
    }
    
    .aftercare-area .section-heading p {
        font-size: 13px;
    }
}
/* ---- End of max-width 520px CSS ---- */


/* ---- Start of max-width 420px CSS ---- */
@media all and (max-width: 420px) {
    /* Portfolio grid - maintain 4 columns on very small mobile */
    .portfolio-items .col-lg-3 {
        flex: 0 0 25%;
        max-width: 25%;
        padding: 1px;
    }
    
    .about-content {
        padding: 25px 10px;
    }
    
    .about-content h2 {
        font-size: 20px;
    }
    
    .about-content p {
        font-size: 12px;
        line-height: 1.5;
    }
    
    /* Aftercare section - two columns on very small mobile */
    .aftercare-wrap .col-lg-4 {
        flex: 0 0 50%;
        max-width: 50%;
        padding: 6px;
    }
    
    .aftercare-content {
        padding: 15px 10px;
        min-height: 150px;
    }
    
    .aftercare-content i {
        font-size: 24px;
        margin-bottom: 8px;
    }
    
    .aftercare-content h3 {
        font-size: 12px;
        margin-bottom: 5px;
    }
    
    .aftercare-content p {
        font-size: 10px;
        line-height: 1.2;
    }
    
    .aftercare-area .section-heading h2 {
        font-size: 20px;
    }
    
    .aftercare-area .section-heading p {
        font-size: 12px;
    }
}
/* ---- End of max-width 420px CSS ---- */


/* ---- Start of max-width 380px CSS ---- */
@media all and (max-width: 380px) {
    /* Portfolio grid - maintain 4 columns on smallest mobile */
    .portfolio-items .col-lg-3 {
        flex: 0 0 25%;
        max-width: 25%;
        padding: 1px;
    }
    
    .about-content {
        padding: 20px 8px;
    }
    
    .about-content h2 {
        font-size: 18px;
    }
    
    .about-content p {
        font-size: 11px;
        line-height: 1.4;
    }
    
    /* Aftercare section - two columns on smallest mobile */
    .aftercare-wrap .col-lg-4 {
        flex: 0 0 50%;
        max-width: 50%;
        padding: 5px;
    }
    
    .aftercare-content {
        padding: 12px 8px;
        min-height: 140px;
    }
    
    .aftercare-content i {
        font-size: 22px;
        margin-bottom: 6px;
    }
    
    .aftercare-content h3 {
        font-size: 11px;
        margin-bottom: 4px;
    }
    
    .aftercare-content p {
        font-size: 9px;
        line-height: 1.1;
    }
    
    .aftercare-area .section-heading h2 {
        font-size: 18px;
    }
    
    .aftercare-area .section-heading p {
        font-size: 11px;
    }
}
/* ---- End of max-width 380px CSS ---- */
