/*
  Telefoncular desktop compatibility layer
  Keeps the desktop composition intact on common 1280–1599 CSS-pixel laptop viewports,
  including MacBook Retina displays. Layout decisions are viewport-based, not OS-based.
*/

html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
}

img,
video,
svg,
canvas,
iframe {
  max-width: 100%;
}

/* Absolute-fill hero videos must not shrink under the global video max-width rule (Safari/laptop) */
.home-hero__video,
.service-hero .hero-video,
.hero-knockout-video {
  max-width: none;
  width: 100%;
  height: 100%;
}

@media (min-width: 1100px) and (max-width: 1599px) {
  :root {
    --nav-pad-y: clamp(14px, 1.45vw, 20px);
    --nav-logo-h: clamp(35px, 2.7vw, 42px);
    --header-h: calc(var(--nav-pad-y) * 2 + var(--nav-logo-h));
    --nav-pad: var(--nav-pad-y) clamp(16px, 1.75vw, 28px);
    --container: min(1500px, calc(100% - 2rem));
    --pad: clamp(5.75rem, 9vw, 8.5rem);
  }

  .container,
  .wrap {
    max-width: calc(100% - 2rem);
  }

  .site-nav {
    padding: var(--nav-pad);
    gap: clamp(5px, 0.65vw, 10px);
  }

  .site-nav-logo img {
    height: var(--nav-logo-h);
  }

  .site-nav:not(.site-nav--service) .site-nav-logo {
    padding-right: clamp(10px, 0.9vw, 15px);
  }

  .site-nav-links {
    gap: clamp(2px, 0.35vw, 6px);
    padding-left: 2px;
  }

  .site-nav-links a,
  .site-nav-links .nav-link,
  .site-nav-links .nav-label,
  .site-nav-links .nav-trigger {
    font-size: 18px;
    letter-spacing: 0;
    padding: 0.48em 0.55em;
  }

  .site-nav-end {
    gap: clamp(5px, 0.55vw, 9px);
  }

  .site-nav-lang {
    gap: 4px;
    padding-inline: 3px;
    font-size: clamp(0.92rem, 1vw, 1rem);
  }

  .site-nav-lang img {
    width: 19px;
  }

  .site-nav .site-nav__btn--cta {
    min-height: 40px;
    padding: 0.58rem 0.78rem;
    font-size: 0.98rem;
    white-space: nowrap;
  }

  .site-nav--service {
    /* absolute kalsın — relative sayfayı alta iter */
    position: absolute;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    padding: var(--nav-pad);
    gap: clamp(4px, 0.55vw, 9px);
  }

  .site-nav--service:not(.is-scrolled):not(.is-mega-open) {
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  .site-nav--service .site-nav-links--service-left {
    grid-column: 1;
    justify-content: flex-start;
    min-width: 0;
  }

  .site-nav--service .site-nav-logo--service {
    grid-column: 2;
    position: static;
    inset: auto;
    transform: none;
    justify-self: center;
    align-self: center;
    width: max-content;
    max-width: 100%;
    padding: 0;
    border: 0;
    overflow: hidden;
    isolation: isolate;
    contain: paint;
  }

  .site-nav--service .site-nav-links--service-right {
    grid-column: 3;
    justify-content: flex-end;
    min-width: 0;
    margin-left: 0;
    /* Bayrak + Teklif Al için yer; sağ menü sola kayar */
    padding-right: clamp(148px, 16vw, 200px);
  }

  .site-nav--service .site-nav-end {
    position: absolute;
    top: var(--nav-pad-y);
    right: clamp(16px, 1.75vw, 28px);
    transform: none;
    height: var(--nav-logo-h);
    min-height: var(--nav-logo-h);
    display: flex !important;
    align-items: center;
    gap: clamp(5px, 0.55vw, 9px);
    margin: 0;
    z-index: 3;
  }

  .site-nav--service .site-nav-links a,
  .site-nav--service .site-nav-links .nav-link,
  .site-nav--service .site-nav-links .nav-label,
  .site-nav--service .site-nav-links .nav-trigger,
  .site-nav--service .site-nav-lang {
    font-size: 18px;
    letter-spacing: 0;
    text-shadow: none !important;
  }

  .site-nav--service .site-nav-links a,
  .site-nav--service .site-nav-links .nav-link,
  .site-nav--service .site-nav-links .nav-label,
  .site-nav--service .site-nav-links .nav-trigger {
    padding-inline: 0.5em;
  }

  /* Mega açık: anasayfa ile aynı — absolute overlay + clip-path shell */
  .site-nav.site-nav--service.is-mega-open {
    position: absolute;
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
    align-items: center;
    grid-template-columns: none;
    overflow: hidden;
    clip-path: var(--clip-section-bottom);
    -webkit-clip-path: var(--clip-section-bottom);
    padding-bottom: calc(20px + var(--nav-mega-notch-rise, clamp(11px, 1.85vw, 26px)));
    border-bottom: none;
    z-index: 120;
  }

  .site-nav.site-nav--service.is-mega-open > .site-nav-links--service-left,
  .site-nav.site-nav--service.is-mega-open > .site-nav-links--service-right {
    grid-column: auto;
  }

  .site-nav.site-nav--service.is-mega-open > .site-nav-logo--service {
    position: absolute;
    top: var(--nav-pad-y);
    left: 50%;
    transform: translateX(-50%);
    grid-column: auto;
    justify-self: auto;
    z-index: 2;
    width: max-content;
  }

  .site-nav.site-nav--service.is-mega-open > .site-nav-links--service-right {
    margin-left: auto;
    padding-right: clamp(148px, 16vw, 200px);
  }

  .site-nav.site-nav--service.is-mega-open > .site-nav-end {
    position: absolute;
    top: var(--nav-pad-y);
    right: clamp(16px, 1.75vw, 28px);
    transform: none;
    height: var(--nav-logo-h);
    min-height: var(--nav-logo-h);
    align-items: center;
    z-index: 3;
  }

  .site-nav.site-nav--service.is-mega-open > .nav-mega-panel.is-visible,
  .site-nav.site-nav--service.is-mega-open > .nav-mega-panel.is-mega-animating,
  .site-nav.site-nav--service.is-mega-open > .nav-mega-panel.is-mega-closing {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    flex: 0 0 100%;
    width: 100%;
    order: 10;
    padding: 0;
    margin-top: 0;
    transform: none;
    overflow: hidden;
  }

  .site-nav.site-nav--service.is-mega-open .nav-mega-panel__box {
    width: 100%;
    max-width: none;
    margin: 0;
    border: none;
    border-radius: 0;
    box-shadow: none;
    clip-path: none;
    -webkit-clip-path: none;
    background: transparent !important;
  }

  .site-nav.site-nav--service.is-mega-open .site-nav-links .nav-label,
  .site-nav.site-nav--service.is-mega-open .site-nav-links .nav-link,
  .site-nav.site-nav--service.is-mega-open .site-nav-links .nav-trigger,
  .site-nav.site-nav--service.is-mega-open .site-nav-lang {
    color: var(--brand, #113859) !important;
    text-shadow: none !important;
  }

  .home-hero__stage,
  .service-hero,
  main > section {
    min-width: 0;
  }

  .service-hero,
  .service-hero .hero-content {
    min-height: 85vh;
    min-height: 85svh;
    height: 85vh;
    height: 85svh;
  }

  .home-hero__center,
  .hero-center,
  .section-intro,
  .section-head,
  .why-grid,
  .product-info,
  .product-visualization {
    min-width: 0;
  }

  /* MacBook / laptop: eng-process dikey nefes — --eng-pad-y */
  .page-home #muhendislik .eng-process__section {
    --eng-pad-y: clamp(5.75rem, 20vw, 11.5rem);
  }

  /* MacBook / laptop: eng-process kart konumları */
  #muhendislik .eng-process__card--1 {
    left: 33.1%;
    top: calc(var(--eng-stage-top) + 4rem);
  }

  #muhendislik .eng-process__card--2 {
    top: calc(var(--eng-stage-top) + 4rem);
  }

  #muhendislik .eng-process__card--3 {
    left: 17.4%;
  }

  #muhendislik .eng-process__card--4 {
    right: 20.5%;
    top: calc(var(--eng-stage-top) + 12rem);
  }

  #muhendislik .eng-process__card--5 {
    left: 5%;
    top: calc(var(--eng-stage-top) + 17rem);
  }

  #muhendislik .eng-process__card--6 {
    right: 5%;
    top: calc(var(--eng-stage-top) + 17rem);
  }

  /* Hakkımızda: görsel solda sabit; yazı görselden 20px sonra başlar ve kapsayıcıya sığar */
  #hakkimizda #cards .card:nth-child(1) {
    --hak-media-w: min(42%, 26rem);
    --hak-media-left: max(var(--clip-safe-left), clamp(0.75rem, 2.5vw, 1.5rem));
    --hak-text-gap: 20px;
    height: auto;
    min-height: clamp(28rem, 40vw, 34rem);
  }

  #hakkimizda #cards .card:nth-child(1) .card__lift,
  #hakkimizda #cards .card:nth-child(1) .card__shell {
    height: 100%;
    min-height: inherit;
  }

  #hakkimizda #cards .card:nth-child(1) .card__media {
    width: var(--hak-media-w);
    left: var(--hak-media-left);
  }

  #hakkimizda #cards .card:nth-child(1) .card__content {
    align-items: stretch;
    justify-content: center;
    height: auto;
    min-height: inherit;
    overflow: hidden;
    padding-left: calc(var(--hak-media-left) + var(--hak-media-w) + var(--hak-text-gap));
    padding-right: max(var(--clip-safe-right), var(--stack-card-pad-inline));
  }

  #hakkimizda #cards .card:nth-child(1) .card__content h2,
  #hakkimizda #cards .card:nth-child(1) .card__content p {
    width: 100%;
    max-width: none;
    margin-left: 0;
    margin-right: 0;
  }

  #hakkimizda #cards .card:nth-child(1) .card__content h2 {
    font-size: clamp(1.35rem, 2.4vw, 2rem);
  }

  #hakkimizda #cards .card:nth-child(1) .card__content p {
    font-size: clamp(0.98rem, 1.05vw, 1.1rem);
    line-height: 1.55;
  }
}

@media (min-width: 1100px) and (max-width: 1359px) {
  .site-nav {
    --nav-pad-y: 13px;
    --nav-logo-h: 34px;
    --nav-pad: var(--nav-pad-y) 14px;
  }

  .site-nav-links a,
  .site-nav-links .nav-link,
  .site-nav-links .nav-label,
  .site-nav-links .nav-trigger {
    font-size: 18px;
    letter-spacing: 0;
    padding-inline: 0.48em;
  }

  .site-nav:not(.site-nav--service) .site-nav-end .site-nav__btn--cta {
    padding-inline: 0.62rem;
    font-size: 0.9rem;
  }

  .site-nav--service .site-nav-links--service-right {
    padding-right: 150px;
  }

  .site-nav--service .site-nav-end {
    top: var(--nav-pad-y);
    right: 14px;
    transform: none;
    height: var(--nav-logo-h);
    align-items: center;
  }

  .site-nav--service .site-nav-lang {
    display: none;
  }

  .site-nav--service .site-nav__btn--cta {
    padding-inline: 0.6rem;
    font-size: 0.88rem;
  }

  .site-nav.site-nav--service.is-mega-open > .site-nav-links--service-right {
    padding-right: 150px;
  }

  .site-nav.site-nav--service.is-mega-open > .site-nav-end {
    top: var(--nav-pad-y);
    right: 14px;
  }

  #hakkimizda #cards .card:nth-child(1) {
    --hak-media-w: min(40%, 22rem);
  }
}

@media (min-width: 1600px) {
  .site-nav--service .site-nav-end {
    display: flex;
  }
}
