/* =========================================================
   YKT SITE ENGINE 3.7.0 — RESPONSIVE KATMAN
========================================================= */

:root {
    --ykt-responsive-gutter:
        clamp(16px, 4vw, 32px);
    --ykt-viewport-height: 100vh;
    --ykt-viewport-width: 100vw;
    --ykt-header-bottom: 84px;
    --ykt-safe-top: env(safe-area-inset-top, 0px);
    --ykt-safe-right: env(safe-area-inset-right, 0px);
    --ykt-safe-bottom: env(safe-area-inset-bottom, 0px);
    --ykt-safe-left: env(safe-area-inset-left, 0px);
}

@supports (height: 100dvh) {
    :root {
        --ykt-viewport-height: 100dvh;
    }
}

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

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

@supports not (overflow: clip) {
    html,
    body {
        overflow-x: hidden;
    }
}

html body .ykt-site,
html body .ykt-page,
html body .ykt-legal-page,
html body .ykt-product-category-page {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

html body .ykt-container {
    width: min(
        1180px,
        calc(100% - (2 * var(--ykt-responsive-gutter)))
    );
    max-width: 1180px;
    margin-inline: auto;
}

html body .ykt-site :where(
    section,
    article,
    header,
    footer,
    nav,
    main,
    aside,
    div,
    form,
    fieldset,
    dl
) {
    min-width: 0;
}

html body .ykt-site :where(
    img,
    video,
    canvas,
    iframe
) {
    max-width: 100%;
}

html body .ykt-site img {
    height: auto;
}

html body .ykt-site :where(
    h1,
    h2,
    h3,
    h4,
    p,
    li,
    dd,
    address,
    a,
    button,
    label,
    strong,
    span
) {
    overflow-wrap: break-word;
}

html body .ykt-site :where(
    button,
    [type="button"],
    [type="submit"],
    summary,
    a
) {
    touch-action: manipulation;
    -webkit-tap-highlight-color:
        rgba(30, 111, 181, 0.12);
}

html body .ykt-site :where(
    input,
    select,
    textarea,
    button
) {
    max-width: 100%;
    font-family: inherit;
}

html body .ykt-site :where(
    section[id],
    article[id],
    div[id]
) {
    scroll-margin-top:
        calc(var(--ykt-header-bottom) + 18px);
}

/* =========================================================
   HEADER VE MOBİL MENÜ
========================================================= */

html body .ykt-header__inner {
    height: 100%;
    min-width: 0;
}

html body .ykt-mobile-menu summary {
    list-style: none;
}

html body .ykt-mobile-menu summary::-webkit-details-marker {
    display: none;
}

html body .ykt-mobile-menu__panel {
    scrollbar-width: thin;
    -webkit-overflow-scrolling: touch;
}

body.ykt-responsive-menu-locked {
    position: fixed;
    right: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
}

@media (min-width: 1024px) {
    html body .ykt-mobile-menu {
        display: none !important;
    }
}

@media (max-width: 1023px) {
    html body .ykt-navigation,
    html body .ykt-header__actions {
        display: none !important;
    }

    html body .ykt-header__inner {
        display: flex;
        align-items: center;
        gap: 14px;
        justify-content: space-between;
    }

    html body .ykt-mobile-menu {
        display: block !important;
        margin-left: auto;
    }

    html body .ykt-mobile-menu > summary {
        position: relative;
        z-index: 3205;
        display: grid;
        width: 48px;
        height: 48px;
        min-height: 48px;
        place-content: center;
        gap: 5px;
        border: 1px solid #d5e0e9;
        border-radius: 13px;
        padding: 0;
        background: #ffffff;
        box-shadow:
            0 8px 22px rgba(9, 34, 59, 0.07);
        color: #153b61;
        cursor: pointer;
    }

    html body .ykt-mobile-menu > summary span {
        display: block;
        width: 21px;
        height: 2px;
        border-radius: 999px;
        background: currentColor;
        transition:
            transform 180ms ease,
            opacity 180ms ease;
    }

    html body .ykt-mobile-menu[open]
    > summary span:nth-child(1) {
        transform: translateY(7px) rotate(45deg);
    }

    html body .ykt-mobile-menu[open]
    > summary span:nth-child(2) {
        opacity: 0;
    }

    html body .ykt-mobile-menu[open]
    > summary span:nth-child(3) {
        transform: translateY(-7px) rotate(-45deg);
    }

    html body .ykt-mobile-menu[open]::before {
        position: fixed;
        z-index: 3190;
        inset:
            var(--ykt-header-bottom)
            0
            0
            0;
        background: rgba(5, 18, 32, 0.42);
        content: "";
        backdrop-filter: blur(3px);
    }

    html body .ykt-mobile-menu__panel {
        position: fixed !important;
        top: var(--ykt-header-bottom) !important;
        right: 0 !important;
        left: 0 !important;
        z-index: 3200 !important;
        display: grid;
        max-height:
            calc(
                var(--ykt-viewport-height) -
                var(--ykt-header-bottom)
            );
        gap: 5px;
        overflow-y: auto;
        border-top: 1px solid #dce5ec;
        border-radius: 0 0 22px 22px;
        padding:
            16px
            max(
                var(--ykt-responsive-gutter),
                var(--ykt-safe-right)
            )
            calc(
                20px +
                var(--ykt-safe-bottom)
            )
            max(
                var(--ykt-responsive-gutter),
                var(--ykt-safe-left)
            );
        background: rgba(255, 255, 255, 0.98);
        box-shadow:
            0 25px 55px rgba(7, 25, 43, 0.2);
        overscroll-behavior: contain;
    }

    html body .ykt-mobile-menu:not([open])
    .ykt-mobile-menu__panel {
        display: none !important;
    }

    html body .ykt-mobile-menu__panel
    > a:not(.ykt-button) {
        display: flex;
        min-height: 50px;
        align-items: center;
        border-bottom: 1px solid #e8edf2;
        padding: 9px 4px;
        color: #213f5e !important;
        font-size: 16px;
        font-weight: 740;
    }

    html body .ykt-mobile-menu__panel
    > a:not(.ykt-button).is-active {
        color: #1167aa !important;
    }

    html body .ykt-mobile-menu__panel
    > .ykt-button {
        width: 100%;
        min-height: 54px;
        justify-content: center;
        margin-top: 9px;
    }
}

/* =========================================================
   ANA SAYFA VE GENEL GRIDLER
========================================================= */

@media (max-width: 1100px) {
    html body .ykt-hero__container,
    html body .ykt-inner-hero__grid,
    html body .ykt-corporate-hero__grid {
        grid-template-columns: 1fr !important;
    }

    html body .ykt-hero__content,
    html body .ykt-inner-hero__content {
        max-width: 820px;
    }

    html body .ykt-hero__visual {
        width: min(100%, 720px);
        min-height: 500px;
        margin-inline: auto;
    }

    html body :where(
        .ykt-directory__heading,
        .ykt-product-categories__header,
        .ykt-corporate-about__layout,
        .ykt-corporate-strengths__heading,
        .ykt-contact-overview__header,
        .ykt-contact-form-layout,
        .ykt-contact-service-panel__layout
    ) {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
    }
}

@media (max-width: 900px) {
    html body .ykt-capabilities__grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
    }

    html body .ykt-page-links__grid,
    html body .ykt-directory__grid,
    html body .ykt-corporate-services__grid,
    html body .ykt-corporate-principles,
    html body .ykt-corporate-strengths__list,
    html body .ykt-contact-hub,
    html body .ykt-contact-service-steps {
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
    }

    html body .ykt-category-panels {
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
    }

    html body .ykt-category-panel--wide {
        grid-column: auto !important;
    }
}

@media (max-width: 767px) {
    :root {
        --ykt-responsive-gutter:
            clamp(16px, 5vw, 22px);
    }

    html body .ykt-header {
        padding-inline:
            max(0px, var(--ykt-safe-left))
            max(0px, var(--ykt-safe-right));
    }

    html body .ykt-logo__text small {
        max-width: 155px;
    }

    html body .ykt-hero {
        min-height: auto !important;
        padding:
            clamp(64px, 14vw, 90px)
            0
            clamp(58px, 13vw, 82px) !important;
    }

    html body .ykt-hero__container {
        display: block !important;
    }

    html body .ykt-hero__content {
        max-width: none;
    }

    html body .ykt-hero__content h1,
    html body .ykt-inner-hero__content h1 {
        font-size:
            clamp(39px, 12.5vw, 58px) !important;
        letter-spacing: -0.052em !important;
        line-height: 1.01 !important;
    }

    html body .ykt-hero__description,
    html body .ykt-inner-hero__content > p {
        max-width: 38ch;
        font-size: 16.5px !important;
        line-height: 1.68 !important;
    }

    html body .ykt-hero__actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        width: 100%;
    }

    html body .ykt-hero__actions .ykt-button {
        width: 100%;
        min-height: 56px;
        justify-content: center;
    }

    html body .ykt-hero__trust {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 9px !important;
    }

    /*
     * Telefonda dekoratif ürün kompozisyonu içeriği uzatmasın.
     * Tablet ölçülerinde görünmeye devam eder.
     */
    html body .ykt-hero__visual {
        display: none !important;
    }

    html body .ykt-capabilities {
        overflow: hidden;
    }

    html body .ykt-capabilities__grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
        gap: 1px !important;
    }

    html body .ykt-capability {
        min-height: 142px;
        align-content: start;
        padding:
            20px
            clamp(12px, 4vw, 18px) !important;
    }

    html body .ykt-capability__number {
        opacity: 0.4;
    }

    html body .ykt-page-links__grid,
    html body .ykt-directory__grid,
    html body .ykt-category-panels,
    html body .ykt-corporate-services__grid,
    html body .ykt-corporate-principles,
    html body .ykt-corporate-strengths__list,
    html body .ykt-contact-hub,
    html body .ykt-contact-service-steps {
        grid-template-columns: 1fr !important;
    }

    html body .ykt-page-link,
    html body .ykt-directory-card,
    html body .ykt-category-panel,
    html body .ykt-corporate-service,
    html body .ykt-corporate-principles > *,
    html body .ykt-corporate-strengths__list > *,
    html body .ykt-contact-card,
    html body .ykt-contact-service-steps > * {
        border-radius: 20px !important;
    }

    html body .ykt-page-link {
        min-height: 0 !important;
        padding: 23px 21px !important;
    }

    html body .ykt-page-link__cta {
        margin-top: 7px;
    }

    html body .ykt-home-solutions {
        padding-top: 68px !important;
    }

    html body .ykt-home-solutions__intro h2 {
        font-size:
            clamp(36px, 11.4vw, 52px) !important;
        line-height: 1.02 !important;
    }

    html body .ykt-home-solutions__button {
        min-height: 60px;
        border-radius: 14px;
    }
}

@media (max-width: 480px) {
    html body .ykt-capabilities__grid {
        grid-template-columns: 1fr !important;
    }

    html body .ykt-capability {
        min-height: 0;
    }

    html body .ykt-page-link__number {
        position: static !important;
        margin-bottom: 8px;
    }
}

/* =========================================================
   ÜRÜN KATALOĞU VE DETAY
========================================================= */

@media (max-width: 900px) {
    html body .ykt-product-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
    }

    html body .ykt-dynamic-products__heading,
    html body .ykt-category-catalog-products__heading,
    html body .ykt-product-single__content-grid,
    html body .ykt-product-single__details-grid {
        grid-template-columns: 1fr !important;
        gap: 22px !important;
    }
}

@media (max-width: 767px) {
    html body .ykt-dynamic-products,
    html body .ykt-category-catalog-products,
    html body .ykt-product-single__content,
    html body .ykt-product-single__details,
    html body .ykt-product-single__gallery-section {
        padding-block:
            clamp(60px, 14vw, 82px) !important;
    }

    html body .ykt-product-filter {
        flex-wrap: nowrap !important;
        gap: 8px;
        overflow-x: auto;
        padding:
            3px
            var(--ykt-responsive-gutter)
            11px;
        margin-inline:
            calc(var(--ykt-responsive-gutter) * -1);
        scroll-padding-inline:
            var(--ykt-responsive-gutter);
        scrollbar-width: thin;
        overscroll-behavior-inline: contain;
        -webkit-overflow-scrolling: touch;
    }

    html body .ykt-product-filter button {
        flex: 0 0 auto;
        min-height: 46px;
        white-space: nowrap;
    }

    html body .ykt-product-grid {
        grid-template-columns: 1fr !important;
        gap: 18px;
    }

    html body .ykt-product-card {
        border-radius: 21px;
    }

    html body .ykt-product-card__media {
        min-height: 225px !important;
        padding: 20px !important;
    }

    html body .ykt-product-card__media img {
        height: 190px !important;
    }

    html body .ykt-product-card__body {
        padding: 21px !important;
    }

    html body .ykt-product-card__footer {
        align-items: flex-start !important;
        flex-direction: column;
        gap: 13px;
    }

    html body .ykt-product-card__category {
        max-width: 100% !important;
    }

    html body .ykt-product-breadcrumb {
        display: flex;
        flex-wrap: nowrap;
        gap: 7px;
        overflow-x: auto;
        padding-bottom: 7px;
        white-space: nowrap;
        scrollbar-width: thin;
        overscroll-behavior-inline: contain;
    }

    html body .ykt-product-single__hero {
        padding-top: 25px !important;
        padding-bottom: 68px !important;
    }

    html body .ykt-product-single__hero-grid {
        gap: 28px !important;
    }

    html body .ykt-product-single__visual {
        min-height: 300px !important;
        border-radius: 21px !important;
        padding: 20px !important;
    }

    html body .ykt-product-single__intro h1,
    html body .ykt-category-catalog-hero__content h1 {
        font-size:
            clamp(38px, 12vw, 56px) !important;
        line-height: 1.02 !important;
    }

    html body .ykt-product-single__actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        width: 100%;
    }

    html body .ykt-product-single__actions .ykt-button {
        width: 100%;
        min-height: 56px;
        justify-content: center;
    }

    html body .ykt-product-single__identity {
        grid-template-columns: 1fr !important;
    }

    html body .ykt-product-gallery {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    html body .ykt-product-gallery a {
        min-height: 245px !important;
        border-radius: 18px;
    }

    html body .ykt-product-gallery img {
        height: 215px !important;
    }

    html body .ykt-product-spec-table div {
        grid-template-columns: 1fr !important;
        gap: 6px !important;
    }

    html body .ykt-product-spec-table dd {
        text-align: left !important;
    }

    html body .ykt-product-single__cta-panel,
    html body .ykt-category-catalog-cta {
        border-radius: 22px !important;
        padding:
            30px
            22px !important;
    }

    html body .ykt-lightbox__dialog {
        width:
            calc(
                100vw -
                var(--ykt-safe-left) -
                var(--ykt-safe-right) -
                14px
            ) !important;
        height:
            calc(
                var(--ykt-viewport-height) -
                var(--ykt-safe-top) -
                var(--ykt-safe-bottom) -
                14px
            ) !important;
        max-height: none !important;
        border-radius: 18px !important;
    }

    html body .ykt-lightbox__stage {
        min-height: 0;
    }

    html body .ykt-lightbox__caption {
        white-space: normal;
    }
}

/* =========================================================
   İLETİŞİM, FORMLAR VE HARİTALAR
========================================================= */

html body .ykt-site :where(
    input:not([type="checkbox"]):not([type="radio"]),
    select,
    textarea
) {
    min-height: 48px;
}

@media (max-width: 767px) {
    /*
     * iOS Safari 16px altındaki form yazılarında otomatik zoom yapar.
     */
    html body .ykt-site :where(
        input:not([type="checkbox"]):not([type="radio"]),
        select,
        textarea
    ) {
        border-radius: 11px;
        font-size: 16px !important;
    }

    html body .ykt-form-field,
    html body .ykt-form-field--full {
        grid-column: 1 / -1 !important;
    }

    html body .ykt-contact-form {
        width: 100%;
    }

    html body .ykt-contact-form button[type="submit"] {
        width: 100%;
        min-height: 56px;
        justify-content: center;
    }

    html body .ykt-form-consent {
        align-items: flex-start;
    }

    html body .ykt-contact-map-card__frame {
        min-height:
            clamp(290px, 82vw, 360px) !important;
    }

    html body .ykt-contact-map-card__footer {
        align-items: stretch !important;
        flex-direction: column !important;
        gap: 13px !important;
    }

    html body .ykt-contact-map-card__footer > a {
        width: 100%;
        justify-content: center;
    }

    html body .ykt-contact-card--locations {
        min-height: 0 !important;
    }
}

/* =========================================================
   FOOTER, YASAL SAYFALAR VE UZUN İÇERİK
========================================================= */

html body .ykt-legal-table-wrap,
html body .ykt-product-filter,
html body .ykt-product-breadcrumb {
    scrollbar-color: #8ba9c3 #eaf0f5;
}

@media (max-width: 767px) {
    html body .ykt-footer-compact__brand {
        align-items: flex-start !important;
        flex-direction: column !important;
        gap: 10px !important;
    }

    html body .ykt-footer-compact__brand p {
        max-width: none !important;
        text-align: left !important;
    }

    html body .ykt-footer-compact__nav {
        display: grid !important;
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
        width: 100%;
        gap: 2px 14px !important;
    }

    html body .ykt-footer-compact__nav a {
        min-height: 44px;
    }

    html body .ykt-footer-compact__phone {
        display: grid !important;
        gap: 4px !important;
        width: 100% !important;
    }

    html body .ykt-footer-compact__locations {
        grid-template-columns: 1fr !important;
    }

    html body .ykt-footer-compact__bottom {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    html body .ykt-legal-hero__content h1 {
        font-size:
            clamp(38px, 12vw, 56px) !important;
    }

    html body .ykt-legal-content article {
        border-radius: 18px !important;
        padding:
            clamp(22px, 6vw, 30px) !important;
    }

    html body .ykt-legal-document {
        font-size: 16px !important;
        line-height: 1.72 !important;
    }

    html body .ykt-legal-table-wrap {
        margin-inline:
            calc(var(--ykt-responsive-gutter) * -0.5);
        border-radius: 13px;
    }
}

/* =========================================================
   DUYURU, GÜVENLİ ALAN VE KISA YATAY EKRANLAR
========================================================= */

html body .ykt-announcement {
    padding-left: var(--ykt-safe-left);
    padding-right: var(--ykt-safe-right);
}

html body .ykt-footer {
    padding-bottom: var(--ykt-safe-bottom);
}

@media (
    max-height: 520px
) and (
    orientation: landscape
) {
    html body .ykt-mobile-menu__panel {
        border-radius: 0;
        padding-top: 10px;
    }

    html body .ykt-mobile-menu__panel
    > a:not(.ykt-button) {
        min-height: 44px;
    }

    html body .ykt-hero {
        padding-block: 46px !important;
    }

    html body .ykt-hero__visual {
        display: none !important;
    }

    html body .ykt-lightbox__footer {
        min-height: 56px;
    }
}

/* =========================================================
   DOKUNMATİK CİHAZLAR VE HAREKET TERCİHLERİ
========================================================= */

@media (hover: none) {
    html body .ykt-site :where(
        .ykt-directory-card,
        .ykt-page-link,
        .ykt-product-card,
        .ykt-category-panel,
        .ykt-home-solutions__button,
        .ykt-solution-marquee__item,
        .ykt-footer-social a
    ):hover {
        transform: none !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    html body .ykt-mobile-menu > summary span,
    html body .ykt-responsive-overflow-badge {
        transition: none !important;
        animation: none !important;
    }
}

/* =========================================================
   YÖNETİCİ RESPONSIVE ÖN İZLEME TAŞMA İŞARETLERİ
========================================================= */

body.ykt-responsive-preview
[data-ykt-overflow-source="true"] {
    outline: 3px solid #dc2626 !important;
    outline-offset: -3px !important;
}

html body .ykt-responsive-overflow-badge {
    position: fixed;
    right: 10px;
    bottom: 10px;
    z-index: 1000000;
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 999px;
    padding: 7px 11px;
    background: rgba(126, 24, 24, 0.94);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.24);
    color: #ffffff;
    font-size: 11px;
    font-weight: 800;
    pointer-events: none;
}

html body .ykt-responsive-overflow-badge.is-clear {
    background: rgba(16, 100, 62, 0.94);
}
