@media(max-width:1100px){
.service-hero__shell,
.service-layout,
.contact-shell,
.product-hero__shell,
.product-layout{
        grid-template-columns:1fr;
    }

.service-hero__panel{
        max-width:none;
    }

.service-sidebar,
.product-sidebar{
        position:static;
        top:auto;
    }

.service-grid,
.product-doc-list,
.media-gallery{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

.footer-grid{
        grid-template-columns:1fr;
    }

}

@media(max-width:980px){
.header-inner{
        min-height:68px;
        position:relative;
    }

.logo{
        font-size:21px;
    }

.logo:before{
        width:32px;
        height:32px;
        border-radius:11px;
    }

.logo img{
        max-width:180px;
        height:38px;
    }

.mobile-menu-btn{
        display:inline-flex;
    }

.main-nav{
        display:none;
        position:absolute;
        left:0;
        right:0;
        top:calc(100% + 10px);
        z-index:80;
        padding:12px;
        background:#ffffff;
        border:1px solid #e5e7eb;
        border-radius:18px;
        box-shadow:0 22px 54px rgba(15,23,42,.16);
        flex-direction:column;
        align-items:stretch;
        gap:6px;
    }

.main-nav.is-open{
        display:flex;
    }

.main-nav a{
        justify-content:flex-start;
        width:100%;
        min-height:44px;
        padding:12px 14px;
        border-radius:12px;
        background:#f8fafc;
    }

.main-nav a:last-child{
        margin-left:0;
        justify-content:center;
    }

}

@media(max-width:760px){
.section{
        padding:42px 0;
    }

.service-hero,
.contact-hero,
.product-hero{
        padding:28px 0 24px;
    }

.service-hero__shell,
.contact-hero .container,
.product-hero__shell{
        padding:22px;
        border-radius:24px;
    }

.service-hero__panel,
.contact-info,
.form-card,
.service-article,
.service-side-card,
.product-article,
.product-side-card,
.footer-grid{
        border-radius:20px;
    }

.hero h1,
.service-hero h1,
.contact-hero h1,
.product-hero h1{
        font-size:38px;
        letter-spacing:-.055em;
    }

.hero p,
.service-hero p,
.contact-hero p,
.product-hero p{
        font-size:16px;
        line-height:1.58;
    }

.section-head h2,
.service-block h2,
.contact-info h2,
.product-block h2{
        font-size:30px;
    }

.service-grid,
.service-grid.small,
.contact-form__grid,
.product-doc-list,
.media-gallery{
        grid-template-columns:1fr;
    }

.service-card{
        min-height:auto;
    }

.service-article,
.contact-info,
.form-card,
.product-article,
.product-side-card{
        padding:22px;
    }

.content-body{
        font-size:16px;
        line-height:1.72;
    }

.content-body h2{
        font-size:27px;
    }

.content-body h3{
        font-size:22px;
    }

.product-hero__visual{
        min-height:220px;
        border-radius:20px;
    }

.faq-item summary{
        min-height:56px;
        padding:16px 50px 16px 16px;
    }

.breadcrumb{
        overflow-x:auto;
        white-space:nowrap;
        scrollbar-width:none;
    }

.breadcrumb::-webkit-scrollbar{
        display:none;
    }

}

@media(max-width:520px){
.header-inner{
        min-height:64px;
        gap:12px;
    }

.logo{
        max-width:calc(100% - 94px);
        overflow:hidden;
        text-overflow:ellipsis;
        white-space:nowrap;
        font-size:19px;
    }

.logo img{
        max-width:155px;
        height:34px;
    }

.mobile-menu-btn{
        min-height:38px;
        padding:8px 12px;
        border-radius:11px;
        font-size:14px;
    }

.hero-actions{
        align-items:stretch;
        flex-direction:column;
    }

.hero-actions .btn,
.contact-form .btn,
.form-card .btn{
        width:100%;
    }

.service-hero__shell,
.contact-hero .container,
.product-hero__shell,
.footer-grid{
        padding:18px;
        border-radius:20px;
    }

.service-hero__panel{
        padding:16px;
    }

.hero h1,
.service-hero h1,
.contact-hero h1,
.product-hero h1{
        font-size:34px;
    }

.section-head h2,
.service-block h2,
.contact-info h2,
.product-block h2{
        font-size:28px;
    }

.service-card,
.service-side-card,
.product-side-card,
.contact-info__list div{
        padding:18px;
    }

.faq-item summary{
        font-size:15px;
    }

}

@media(max-width:1100px){
.products-page__hero,
.products-empty-box{
        grid-template-columns:1fr;
    }

.products-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

}

@media(max-width:760px){
.products-page{
        padding:34px 0 48px;
    }

.products-page__intro,
.products-page__summary,
.products-empty-box{
        padding:22px;
    }

.products-grid{
        grid-template-columns:1fr;
    }

.products-empty-box__steps{
        grid-template-columns:1fr;
    }

}

/* HOME RESPONSIVE CLEAN GUARD START */
@media(max-width:1100px){
    .home-hero__grid{
        grid-template-columns:1fr;
    }

    .home-hero__panel{
        min-height:0;
    }
}

@media(max-width:900px){
    .home-strip__grid,
    .service-grid--home,
    .home-focus__grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .home-cta__inner{
        align-items:flex-start;
        flex-direction:column;
    }

    .home-cta .hero-actions{
        justify-content:flex-start;
    }
}

@media(max-width:640px){
    .home-hero{
        padding:42px 0 30px;
    }

    .home-hero__content,
    .home-hero__panel,
    .home-cta__inner{
        padding:22px;
        border-radius:22px;
    }

    .home-hero__content:before{
        left:22px;
        top:18px;
        width:56px;
    }

    .home-hero__panel:before{
        left:22px;
        top:18px;
        width:48px;
    }

    .home-hero h1{
        font-size:38px;
        letter-spacing:-.055em;
    }

    .home-hero p{
        font-size:16px;
        line-height:1.62;
    }

    .home-hero__quick,
    .home-strip__grid,
    .service-grid--home,
    .home-focus__grid{
        grid-template-columns:1fr;
    }

    .hero-actions{
        align-items:stretch;
        flex-direction:column;
    }

    .hero-actions .btn{
        width:100%;
    }

    .home-cta h2{
        font-size:28px;
    }
}
/* HOME RESPONSIVE CLEAN GUARD END */



/* EA_HOME_SECTION_HEAD_RESPONSIVE_CLEAN_V1 */
@media (max-width: 900px){
    .home-services .section-head,
    .home-focus__head{
        display:grid;
        grid-template-columns:1fr;
        width:100%;
        max-width:none;
        box-sizing:border-box;
        gap:10px;
        align-items:start;
        margin:0 0 20px;
        padding:16px;
        border-radius:16px;
    }

    .home-services .section-head .eyebrow,
    .home-focus__label .eyebrow{
        margin-bottom:6px;
        white-space:normal;
    }

    .home-services .section-head h2,
    .home-focus__title h2{
        font-size:24px;
        line-height:1.18;
        letter-spacing:-.025em;
    }

    .home-services .section-head p{
        grid-column:1;
        grid-row:auto;
        justify-self:start;
        max-width:100%;
        font-size:15px;
        line-height:1.55;
    }

    .home-focus__title{
        justify-self:start;
        max-width:100%;
    }
}

/* EA_FLOATING_CONTACT_RESPONSIVE_V1 */
@media (max-width: 768px){
    .floating-contact{
        left:12px;
        right:12px;
        bottom:12px;
        flex-direction:row;
        justify-content:center;
        align-items:stretch;
        gap:10px;
    }

    .floating-contact__item{
        min-width:0;
        flex:1 1 0;
        justify-content:center;
        padding:10px 12px;
        border-radius:18px;
    }

    .floating-contact__icon{
        width:38px;
        height:38px;
        flex-basis:38px;
    }

    .floating-contact__icon svg{
        width:20px;
        height:20px;
    }

    .floating-contact__text strong{
        font-size:13px;
    }

    .floating-contact__text small{
        font-size:10px;
    }

    body{
        padding-bottom:78px;
    }
}

@media (max-width: 420px){
    .floating-contact__item{
        gap:8px;
        padding:9px 10px;
    }

    .floating-contact__text small{
        display:none;
    }
}

/* EA_SERVICE_DETAIL_COVER_IMAGE_V2 */
@media (max-width: 768px){
    .service-cover{
        margin-bottom:18px;
        border-radius:18px;
        aspect-ratio:4 / 3;
    }
}

/* EA_SAHA_DETAIL_SEPARATED_RESPONSIVE_V1 */
@media (max-width: 920px){
    .saha-detail-hero{
        grid-template-columns:1fr;
        padding:20px;
        gap:22px;
    }

    .saha-detail-content{
        max-width:none;
    }

    .saha-detail-gallery{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width: 560px){
    .saha-detail-page{
        padding:22px 0 30px;
    }

    .saha-detail-hero{
        padding:16px;
        border-radius:22px;
    }

    .saha-detail-hero__image{
        border-radius:18px;
    }

    .saha-detail-hero__content h1{
        font-size:31px;
        line-height:1.08;
    }

    .saha-detail-hero__content p{
        font-size:15px;
        line-height:1.65;
    }

    .saha-detail-card{
        padding:22px;
        border-radius:20px;
    }

    .saha-detail-card h2{
        font-size:24px;
    }

    .saha-detail-card .content-body p{
        font-size:15px;
        line-height:1.75;
    }

    .saha-detail-gallery{
        grid-template-columns:1fr;
    }
}

/* EA_REGION_RESPONSIVE_V1_START */
@media(max-width:980px){
    .region-hero__grid,
    .region-content__grid{
        grid-template-columns:1fr;
    }

    .region-card{
        min-height:auto;
    }
}

@media(max-width:640px){
    .region-hero{
        padding:26px 0 24px;
    }

    .region-hero h1{
        font-size:34px;
    }

    .region-hero p,
    .region-article{
        font-size:16px;
    }

    .region-card,
    .region-article,
    .region-side{
        border-radius:18px;
    }

    .region-card,
    .region-side,
    .region-article{
        padding:18px;
    }
}
/* EA_REGION_RESPONSIVE_V1_END */

/* EA_REGION_MOBILE_FINAL_V1 */
@media (max-width: 900px){
    .region-hero{
        padding:0 0 24px;
    }

    .region-breadcrumb{
        padding:14px 0;
    }

    .region-shell{
        grid-template-columns:1fr;
        gap:18px;
        padding:22px;
        border-radius:22px;
    }

    .region-hero h1{
        font-size:clamp(34px,10vw,46px);
        letter-spacing:-.055em;
    }

    .region-hero p{
        font-size:16px;
    }

    .region-summary{
        width:100%;
    }

    .region-content{
        padding:24px 0 38px;
    }

    .region-content__grid{
        grid-template-columns:1fr;
        gap:18px;
    }

    .region-article,
    .region-side{
        padding:20px;
        border-radius:20px;
    }
}

@media (max-width: 560px){
    .region-shell{
        padding:18px;
        border-radius:20px;
    }

    .region-hero__actions{
        display:grid;
        grid-template-columns:1fr;
        gap:10px;
    }

    .region-hero__actions .btn{
        width:100%;
        justify-content:center;
    }

    .region-summary{
        padding:16px;
    }

    .region-summary strong{
        font-size:19px;
    }

    .region-summary p,
    .region-summary li{
        font-size:13px;
    }

    .region-article{
        font-size:16px;
        line-height:1.72;
    }
}

@media (max-width: 640px) {
    .home-service-pagination {
        width: 100%;
        align-items: flex-start;
        padding: 14px;
        border-radius: 22px;
        flex-direction: column;
        gap: 10px;
    }

    .home-service-pagination__label {
        font-size: 12px;
    }

    .home-service-pagination__link {
        min-width: 38px;
        height: 38px;
    }
}

