/* MOBILE UI — isolated below 900px so the approved desktop layout is untouched. */
.mw-mobile-toggle { display:none!important; }

@media (max-width: 900px) {
  html, body { width:100%; max-width:100%; overflow-x:hidden; }
  body.mw-mobile-nav-open { overflow:hidden!important; }

  /* Shared WordPress-style header */
  #site-header { width:100%!important; z-index:100000!important; }
  #site-header-inner {
    display:flex!important; align-items:center!important; justify-content:space-between!important;
    width:100%!important; height:82px!important; min-height:82px!important; max-height:82px!important; padding:10px 16px!important; gap:12px!important;
  }
  #site-logo { flex:0 1 225px!important; width:225px!important; max-width:68vw!important; margin:0!important; }
  #site-logo img { width:100%!important; max-width:225px!important; max-height:62px!important; object-fit:contain!important; }
  .mw-mobile-toggle {
    position:relative; z-index:100002; display:flex!important; flex:0 0 auto; width:auto; min-width:72px; height:46px;
    padding:0 16px; border:1px solid rgba(255,255,255,.45); background:rgba(15,15,15,.76);
    align-items:center; justify-content:center; cursor:pointer;
  }
  .mw-mobile-toggle__label { display:block; color:#fff; font-family:'Open Sans Condensed',sans-serif; font-size:17px; font-weight:700; line-height:1; letter-spacing:.8px; text-transform:uppercase; }
  body.is-sticky .mw-mobile-toggle, #site-header.is-sticky .mw-mobile-toggle { border-color:#222; background:#171717; }

  #site-header #site-header-inner #site-navigation-wrap {
    position:fixed!important; inset:0!important; z-index:100001!important; display:block!important;
    width:100%!important; height:100dvh!important; margin:0!important; padding:104px 18px 28px!important;
    background:rgba(12,12,12,.985)!important; opacity:0; visibility:hidden; pointer-events:none;
    transform:translateY(-14px); transition:opacity .22s ease,transform .22s ease,visibility .22s;
    overflow-y:auto!important;
  }
  body.mw-mobile-nav-open #site-header #site-header-inner #site-navigation-wrap { opacity:1!important; visibility:visible!important; pointer-events:auto!important; transform:none!important; }
  #site-navigation-wrap #site-navigation, #menu-main-menu { width:100%!important; }
  #site-navigation-wrap #menu-main-menu {
    display:block!important; margin:0!important; padding:0!important; white-space:normal!important;
  }
  #menu-main-menu > li { display:block!important; width:100%!important; border-bottom:1px solid rgba(255,255,255,.14); }
  #menu-main-menu > li > a {
    display:flex!important; align-items:center!important; justify-content:space-between!important;
    width:100%!important; min-height:56px!important; height:auto!important; padding:13px 6px!important;
    color:#fff!important; font-size:18px!important; line-height:1.25!important; text-align:left!important;
  }
  #site-navigation-wrap #menu-main-menu > .stop-currentMenuItem > a { margin:18px 0 0!important; padding:16px 18px!important; justify-content:center!important; background:#ddb515!important; color:#111!important; font-size:18px!important; line-height:1.2!important; }
  #menu-item-3364 > a .nav-arrow { width:10px!important; height:10px!important; margin-left:auto!important; border:0 solid #fff!important; border-right-width:2px!important; border-bottom-width:2px!important; transform:rotate(45deg)!important; font-size:0!important; }
  #menu-item-3364 > a .nav-arrow::before { display:none!important; content:none!important; }
  #menu-item-3364.is-mobile-services-open > a .nav-arrow { transform:rotate(225deg)!important; }
  #menu-item-3364 > ul.megamenu.mughal-services-mega-grid {
    position:static!important; display:none!important; width:100%!important; max-height:none!important;
    margin:0 0 14px!important; padding:8px!important; grid-template-columns:1fr!important;
    opacity:1!important; visibility:visible!important; pointer-events:auto!important; transform:none!important;
    background:#fff!important; overflow:visible!important;
  }
  #menu-item-3364.is-mobile-services-open > ul.megamenu.mughal-services-mega-grid { display:grid!important; }
  .mughal-mega-card__body { min-height:112px!important; }
  .mughal-mega-card__body img { width:40%!important; min-width:40%!important; height:112px!important; object-fit:cover!important; }
  .mughal-mega-card__copy { padding:12px!important; }
  .mughal-mega-card__copy h3 { font-size:20px!important; }
  .mughal-mega-card__copy p { display:block!important; font-size:13px!important; line-height:1.35!important; }

  /* Homepage hero and contact card */
  body.home .elementor-element-f089b28 { min-height:650px!important; padding:116px 18px 92px!important; }
  body.home .elementor-element-f089b28 > .elementor-container { min-height:440px!important; align-items:flex-end!important; }
  body.home .elementor-element-a2707d1 .elementor-heading-title {
    max-width:100%!important; font-size:clamp(52px,15vw,70px)!important; line-height:.88!important;
    letter-spacing:-1px!important; word-break:normal!important; overflow-wrap:normal!important;
  }
  body.home .mughal-rotating-word { display:block!important; max-width:100%!important; white-space:nowrap!important; font-size:.88em!important; }
  body.home .elementor-element-4d2ee48 { width:100%!important; max-width:100%!important; }
  body.home .elementor-element-4d2ee48 .elementor-widget-container,
  body.home .elementor-element-4d2ee48 * { white-space:normal!important; font-size:15px!important; line-height:1.5!important; letter-spacing:1.1px!important; }
  body.home .elementor-element-e8ba8a4 { padding:0 14px 42px!important; }
  body.home .elementor-element-e8ba8a4 > .elementor-container > .elementor-row { display:block!important; }
  body.home .elementor-element-ed0d5cc { display:none!important; }
  body.home .elementor-element-cd880b4 { width:100%!important; max-width:520px!important; margin:0 auto!important; }
  body.home .elementor-element-cd880b4 > .elementor-element-populated { margin:-58px 0 0!important; }
  body.home .elementor-element-cd880b4 > .elementor-element-populated > .elementor-widget-wrap { padding:30px 20px 34px!important; }
  body.home .elementor-element-aca45d7 .elementor-heading-title { font-size:29px!important; line-height:1.08!important; }
  body.home .elementor-element-cd880b4 .oew-info-box { align-items:flex-start!important; gap:12px!important; }
  body.home .elementor-element-cd880b4 .oew-info-box-icon { flex:0 0 38px!important; }

  /* Service strip and homepage feature panel */
  .mughal-trust-ticker { height:46px!important; }
  .mughal-trust-ticker__track { height:46px!important; }
  .mughal-trust-ticker__track span { padding:0 20px!important; font-size:10px!important; letter-spacing:1px!important; }
  body.home .mughal-services-catalog { display:block!important; width:calc(100% - 24px)!important; min-height:0!important; margin:34px auto 52px!important; }
  body.home .mughal-services-tabs {
    display:flex!important; width:100%!important; overflow-x:auto!important; scroll-snap-type:x mandatory;
    scrollbar-width:none; background:#e5e5e2!important;
  }
  body.home .mughal-services-tabs::-webkit-scrollbar { display:none; }
  body.home .mughal-service-tab {
    flex:0 0 72%!important; min-height:70px!important; padding:15px 18px!important; scroll-snap-align:start;
    border-right:1px solid #ccc!important; font-size:17px!important;
  }
  body.home .mughal-service-tab.is-active::after { display:none!important; }
  body.home .mughal-services-detail { padding:28px 18px 34px!important; }
  body.home .mughal-services-heading { display:block!important; }
  body.home .mughal-services-heading h2 { margin-bottom:18px!important; font-size:38px!important; }
  body.home .mughal-learn-more { margin:0 0 24px!important; }
  body.home .mughal-service-facts, body.home .mughal-services-grid { grid-template-columns:1fr!important; }
  body.home .mughal-service-visual { grid-template-columns:1fr 1fr!important; grid-template-rows:210px 130px!important; height:auto!important; }
  body.home .mughal-service-photo:first-child { grid-column:1/3!important; grid-row:1!important; }
  body.home .mughal-service-photo { min-height:130px!important; }

  /* Project carousel and shared footer */
  .home-projects-head, .production-carousel__head { display:block!important; width:calc(100% - 32px)!important; }
  .home-projects-head h2, .production-carousel__head h2 { font-size:36px!important; }
  .home-projects-head a { display:inline-block!important; margin-top:16px!important; }
  .home-project-card, .production-carousel__card { flex-basis:82vw!important; width:82vw!important; height:220px!important; }
  .mughal-shared-footer__grid, .production-footer__grid {
    width:calc(100% - 34px)!important; grid-template-columns:1fr!important; gap:34px!important; padding:48px 0 38px!important;
  }
  .mughal-shared-footer__logo, .production-footer__logo { max-width:270px!important; }

  /* Standalone content pages */
  .production-hero { min-height:360px!important; padding:130px 18px 66px!important; }
  .production-hero h1 { font-size:clamp(50px,16vw,72px)!important; }
  .production-hero p:last-child { font-size:17px!important; line-height:1.55!important; }
  .production-section { width:calc(100% - 32px)!important; padding:58px 0!important; }
  .production-section h2 { font-size:39px!important; line-height:1!important; }
  .production-grid, .project-gallery, .team-grid { grid-template-columns:1fr!important; }
  .about-socials { grid-template-columns:1fr 1fr!important; }
  .service-directory { width:calc(100% - 24px)!important; margin:38px auto 60px!important; }
  .service-directory__intro { grid-template-columns:1fr!important; gap:14px!important; }
  .service-directory__intro h2 { font-size:38px!important; }
  .service-directory__card { grid-template-columns:48px 1fr!important; gap:12px!important; padding:22px 16px!important; }
  .service-directory__number { font-size:31px!important; }
  .service-directory__content h3 { font-size:26px!important; }
  .service-directory__quote { grid-column:2!important; }
  .service-directory__detail ul { columns:1!important; }

  /* Quote page header and form */
  .quote-page .site-header .header-inner { width:100%!important; height:82px!important; min-height:82px!important; padding:10px 16px!important; }
  .quote-page .header-logo, .quote-page .header-logo img { width:220px!important; max-width:68vw!important; max-height:62px!important; }
  .quote-page .main-navigation {
    position:fixed!important; inset:82px 0 0!important; z-index:99999!important; display:none!important;
    height:calc(100dvh - 82px)!important; padding:18px!important; background:#111!important; overflow-y:auto!important;
  }
  .quote-page .main-navigation.open { display:flex!important; flex-direction:column!important; align-items:stretch!important; }
  .quote-page .main-navigation > a, .quote-page .nav-services > a { min-height:54px!important; padding:15px 5px!important; color:#fff!important; border-bottom:1px solid #333!important; }
  .quote-page .services-dropdown { position:static!important; display:none!important; width:100%!important; max-height:none!important; transform:none!important; grid-template-columns:1fr!important; }
  .quote-page .nav-services.is-mobile-services-open .services-dropdown { display:grid!important; }
  .quote-hero { min-height:360px!important; padding:145px 18px 70px!important; }
  .quote-hero h1 { font-size:clamp(46px,14vw,70px)!important; }
  .quote-section { padding:50px 0!important; }
  .quote-layout { width:calc(100% - 28px)!important; grid-template-columns:1fr!important; gap:26px!important; }
  .quote-contact { position:static!important; padding:28px 22px!important; }
  .quote-form { padding:28px 18px!important; }
  .form-grid { grid-template-columns:1fr!important; }
  .form-span { grid-column:auto!important; }

  /* Announcement remains dismissible without overflowing small screens. */
  .mughal-azadi-dialog { width:min(88vw,430px)!important; max-height:84dvh!important; }
  .mughal-azadi-dialog img { max-height:82dvh!important; object-fit:contain!important; }
}

@media (max-width: 430px) {
  #site-logo, #site-logo img, .quote-page .header-logo, .quote-page .header-logo img { width:195px!important; max-width:62vw!important; }
  body.home .elementor-element-a2707d1 .elementor-heading-title { font-size:clamp(49px,14.8vw,64px)!important; }
  body.home .mughal-rotating-word { font-size:.82em!important; }
  .about-socials { grid-template-columns:1fr!important; }
}
