/*
 Theme Name: Amirhossein Samimi
 Description: Amirhossein Samimi
 Author: Mohammad Shoeibi
 Template: hello-elementor
 Version: 1.1.4
 Text Domain: hello-elementor-child
*/


@font-face {
  font-family: 'Muli';
  src: url('/samimi/wp-content/uploads/fonts/Muli-ExtraLight.woff2') format('woff2'),
       url('/samimi/wp-content/uploads/fonts/Muli-ExtraLight.woff') format('woff');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Muli';
  src: url('/samimi/wp-content/uploads/fonts/Muli-Light.woff2') format('woff2'),
       url('/samimi/wp-content/uploads/fonts/Muli-Light.woff') format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Muli';
  src: url('/samimi/wp-content/uploads/fonts/Muli-Regular.woff2') format('woff2'),
       url('/samimi/wp-content/uploads/fonts/Muli-Regular.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

/*@font-face {
  font-family: 'Muli';
  src: url('/samimi/wp-content/uploads/fonts/Muli-Medium.woff2') format('woff2'),
       url('/samimi/wp-content/uploads/fonts/Muli-Medium.woff') format('woff');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}*/

@font-face {
  font-family: 'Muli';
  src: url('/samimi/wp-content/uploads/fonts/Muli-SemiBold.woff2') format('woff2'),
       url('/samimi/wp-content/uploads/fonts/Muli-SemiBold.woff') format('woff');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Muli';
  src: url('/samimi/wp-content/uploads/fonts/Muli-Bold.woff2') format('woff2'),
       url('/samimi/wp-content/uploads/fonts/Muli-Bold.woff') format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Muli';
  src: url('/samimi/wp-content/uploads/fonts/Muli-ExtraBold.woff2') format('woff2'),
       url('/samimi/wp-content/uploads/fonts/Muli-ExtraBold.woff') format('woff');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Muli';
  src: url('/samimi/wp-content/uploads/fonts/Muli-Black.woff2') format('woff2'),
       url('/samimi/wp-content/uploads/fonts/Muli-Black.woff') format('woff');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

body {
  font-family: 'Muli', sans-serif;
}

/* Preserve the full frame in video-based directing project heroes and players. */
.elementor-368 video.elementor-video {
  object-fit: contain !important;
  object-position: center center;
  background-color: #000;
}

/* Scale project hero images into their panels so faces at the frame edges are not clipped. */
.elementor-292 .elementor-element-f7da2eb img,
.elementor-292 .elementor-element-87c59d2 img,
.elementor-368 .elementor-element-66b55fc img,
.elementor-368 .elementor-element-0526259 img {
  object-fit: cover !important;
  object-position: center center !important;
}


/* Keep the Cinematography landing hero subject's head visible on wide screens. */
.elementor-363 .elementor-element-84a86c7 img.wp-image-173 {
  object-fit: cover !important;
  object-position: center top !important;
}


/* Stretch the Directing landing hero to the full browser width. */
.elementor-365 .elementor-element-6827953 > .e-con-inner {
  max-width: 100% !important;
  width: 100% !important;
}

.elementor-365 .elementor-element-b281147,
.elementor-365 .elementor-element-b281147 .elementor-widget-container,
.elementor-365 .elementor-element-b281147 img.wp-image-209 {
  width: 100% !important;
  max-width: none !important;
}

.elementor-365 .elementor-element-b281147 img.wp-image-209 {
  height: 500px !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block;
}

/* Hide the hero Watch Video button on One Good Day and Oblivious only. */
body.page-id-33 .elementor-element-8e6f8d4,
body.page-id-34 .elementor-element-8e6f8d4 {
  display: none !important;
}

/* Make the upper-left video posters static images on selected Directing pages. */
body.page-id-35 .elementor-element-aab4813 .elementor-custom-embed-play,
body.page-id-36 .elementor-element-aab4813 .elementor-custom-embed-play,
body.page-id-37 .elementor-element-aab4813 .elementor-custom-embed-play,
body.page-id-38 .elementor-element-aab4813 .elementor-custom-embed-play,
body.page-id-39 .elementor-element-aab4813 .elementor-custom-embed-play {
  display: none !important;
}

body.page-id-35 .elementor-element-aab4813 .elementor-custom-embed-image-overlay,
body.page-id-36 .elementor-element-aab4813 .elementor-custom-embed-image-overlay,
body.page-id-37 .elementor-element-aab4813 .elementor-custom-embed-image-overlay,
body.page-id-38 .elementor-element-aab4813 .elementor-custom-embed-image-overlay,
body.page-id-39 .elementor-element-aab4813 .elementor-custom-embed-image-overlay {
  pointer-events: none !important;
  cursor: default !important;
}

/* Crop the captured Windows taskbar from every No Stopping image instance. */
body.page-id-39 .elementor-element-aab4813 .elementor-custom-embed-image-overlay,
body.page-id-39 .elementor-element-0526259,
body.page-id-39 .elementor-element-464a722 .elementor-custom-embed-image-overlay {
  overflow: hidden !important;
}

body.page-id-39 .elementor-element-aab4813 img,
body.page-id-39 .elementor-element-0526259 img,
body.page-id-39 .elementor-element-464a722 img {
  transform: scale(1.065) !important;
  transform-origin: center top !important;
}

/* Mobile experience: navigation, cinematic hero, readable project pages and touch targets. */
@media (max-width: 767px) {
  html,
  body {
    overflow-x: hidden;
  }

  .elementor-location-header {
    position: relative;
    z-index: 10000;
  }

  .elementor-location-header .elementor-element-ca5b4fb .elementor-menu-toggle {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px;
    min-height: 44px;
    margin-left: auto;
    border-radius: 6px;
    color: #fff !important;
    background: transparent !important;
  }

  .elementor-location-header .elementor-element-ca5b4fb nav.elementor-nav-menu--dropdown {
    position: fixed !important;
    top: 56px !important;
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    max-height: calc(100svh - 68px) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    background: rgba(15, 15, 15, 0.98) !important;
    border: 1px solid #303030;
    border-radius: 8px;
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.55);
    z-index: 10001;
  }

  body.admin-bar .elementor-location-header .elementor-element-ca5b4fb nav.elementor-nav-menu--dropdown {
    top: 102px !important;
    max-height: calc(100svh - 114px) !important;
  }

  .elementor-location-header .elementor-element-ca5b4fb nav.elementor-nav-menu--dropdown > ul {
    width: 100% !important;
  }

  .elementor-location-header .elementor-element-ca5b4fb nav.elementor-nav-menu--dropdown a.elementor-item,
  .elementor-location-header .elementor-element-ca5b4fb nav.elementor-nav-menu--dropdown a.elementor-sub-item {
    display: flex !important;
    align-items: center;
    min-height: 44px;
    padding: 11px 16px !important;
    font-size: 16px !important;
    line-height: 1.35 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
  }

  .elementor-location-header .elementor-element-ca5b4fb nav.elementor-nav-menu--dropdown a.elementor-sub-item {
    padding-left: 30px !important;
    font-size: 15px !important;
  }

  body.home .elementor-element-60da962,
  body.home .elementor-element-60da962 > .e-con-inner,
  body.home .elementor-element-08e2e48,
  body.home .elementor-element-c3c78d1,
  body.home .elementor-element-c3c78d1 .elementor-wrapper,
  body.home .elementor-element-c3c78d1 video.elementor-video {
    height: 60svh !important;
    min-height: 360px !important;
    max-height: 620px !important;
  }

  body.home .elementor-element-c3c78d1 video.elementor-video {
    width: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
  }

  body.home .elementor-element-c3c78d1 {
    position: relative;
    overflow: hidden !important;
  }

  .mobile-reel-controls {
    position: absolute;
    right: 14px;
    bottom: 14px;
    display: flex;
    gap: 8px;
    z-index: 5;
  }

  .mobile-reel-controls button {
    width: 44px;
    height: 44px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, 0.65);
    border-radius: 50%;
    color: #fff;
    background: rgba(0, 0, 0, 0.62);
    font: inherit;
    cursor: pointer;
  }

  .elementor-292 .elementor-element-87c59d2,
  .elementor-368 .elementor-element-0526259 {
    display: none !important;
  }

  .elementor-292,
  .elementor-368 {
    background: #000;
  }

  .elementor-292 h1,
  .elementor-368 h1 {
    font-size: clamp(26px, 8vw, 32px) !important;
    line-height: 1.15 !important;
    margin-bottom: 12px !important;
  }

  .elementor-widget-text-editor,
  .elementor-widget-theme-post-content,
  .elementor-widget-text-editor p,
  .elementor-widget-theme-post-content p {
    font-size: 15px !important;
    line-height: 1.55 !important;
  }

  .elementor-292 .elementor-widget-heading,
  .elementor-368 .elementor-widget-heading {
    line-height: 1.45;
  }

  .elementor-button {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .elementor-363 .elementor-heading-title,
  .elementor-365 .elementor-heading-title {
    font-size: 15px !important;
    line-height: 1.3 !important;
  }

  .elementor-363 .elementor-widget-text-editor,
  .elementor-365 .elementor-widget-text-editor {
    font-size: 14px !important;
    line-height: 1.45 !important;
  }

  .mobile-contact-link {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
    color: inherit;
    text-decoration: none;
  }

  .mobile-contact-link:hover,
  .mobile-contact-link:focus {
    color: #fff;
    text-decoration: underline;
  }
}


/* Hide the Windows taskbar baked into the No Stopping source still. */
.page-id-39 .elementor-element-aab4813 .elementor-custom-embed-image-overlay,
.page-id-39 .elementor-element-0526259,
.page-id-39 .elementor-element-464a722 .elementor-custom-embed-image-overlay {
    overflow: hidden;
}

.page-id-39 .elementor-element-aab4813 .elementor-custom-embed-image-overlay img,
.page-id-39 .elementor-element-0526259 img,
.page-id-39 .elementor-element-464a722 .elementor-custom-embed-image-overlay img {
    transform: scale(1.06);
    transform-origin: center top;
}


/* Streamlined footer: one LinkedIn destination and no repeated name. */
.elementor-location-footer .footer-linkedin-link {
    display: inline-flex;
    min-width: 44px;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    color: inherit;
}

.elementor-location-footer .footer-linkedin-link .elementor-widget-container {
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Phone homepage: use a full-screen cinema stage and preserve the entire 16:9 frame. */
@media (max-width: 767px) {
    body.home .elementor-element-60da962 > .e-con-inner,
    body.home .elementor-element-08e2e48,
    body.home .elementor-element-c3c78d1 {
        height: calc(100svh - 64px) !important;
        min-height: calc(100svh - 64px) !important;
        max-height: none !important;
    }

    body.home .elementor-element-c3c78d1 {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        overflow: hidden !important;
        background: #000 !important;
    }

    body.home .elementor-element-c3c78d1 .elementor-widget-container {
        display: flex !important;
        width: 100% !important;
        height: 100% !important;
        align-items: center !important;
        justify-content: center !important;
    }

    body.home .elementor-element-c3c78d1 video {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        min-height: 0 !important;
        max-width: 100% !important;
        max-height: 100% !important;
        object-fit: contain !important;
        object-position: center center !important;
        transform: none !important;
        background: #000 !important;
    }

    body.home .mobile-reel-controls {
        bottom: 16px !important;
        right: 16px !important;
    }
}


/* Cache-safe footer cleanup. */
.elementor-location-footer .elementor-element-1deee8c,
.elementor-location-footer .elementor-element-945c0b5,
.elementor-location-footer .elementor-element-1e7639f,
.elementor-location-footer .elementor-element-ea29da0 {
    display: none !important;
}


/* Final mobile reel override: complete frame, full-height stage. */
@media (max-width: 767px) {
    body.home .elementor-element-60da962,
    body.home .elementor-element-60da962 > .e-con-inner,
    body.home .elementor-element-08e2e48,
    body.home .elementor-element-c3c78d1,
    body.home .elementor-element-c3c78d1 .elementor-wrapper,
    body.home .elementor-element-c3c78d1 video.elementor-video {
        height: calc(100svh - 64px) !important;
        min-height: calc(100svh - 64px) !important;
        max-height: none !important;
    }

    body.home .elementor-element-c3c78d1 .elementor-wrapper {
        width: 100% !important;
        max-width: 100% !important;
        left: auto !important;
        transform: none !important;
    }

    body.home .elementor-element-c3c78d1 video.elementor-video {
        width: 100% !important;
        max-width: 100% !important;
        object-fit: contain !important;
        object-position: center center !important;
        transform: none !important;
        background: #000 !important;
    }
}


/* Contact hero portrait. Keep the face visible at every breakpoint. */
body.page-id-47 .elementor-element-ff158fe img {
    content: url('https://amirhosseinsamimi.com/wp-content/uploads/2026/08/R1-06567-0001-scaled.jpg') !important;
    width: 100% !important;
    height: 500px !important;
    object-fit: cover !important;
    object-position: center 45% !important;
}

@media (max-width: 767px) {
    body.page-id-47 .elementor-element-ff158fe img {
        height: min(68svh, 560px) !important;
        object-position: center center !important;
    }
}


/* Expand every Contact hero wrapper on phones so the portrait is not clipped. */
@media (max-width: 767px) {
    body.page-id-47 .elementor-element-bb742c0,
    body.page-id-47 .elementor-element-bb742c0 > .e-con-inner,
    body.page-id-47 .elementor-element-b9d8ba8,
    body.page-id-47 .elementor-element-03dbac5,
    body.page-id-47 .elementor-element-ff158fe {
        height: min(68svh, 560px) !important;
        min-height: min(68svh, 560px) !important;
        max-height: none !important;
    }

    body.page-id-47 .elementor-element-b9d8ba8 {
        overflow: hidden !important;
    }
}
