/**
 * FNP Responsive — mobil / tablet düzenlemeleri
 * Masaüstü (≥992px) tasarıma dokunulmaz; yalnızca max-width media query kullanılır.
 */

/* ── 1. Global ─────────────────────────────────────────────── */

@media (max-width: 991px) {
    #wrapper {
        overflow-x: clip;
    }

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

    iframe:not(.yt-bg):not(.yt-iframe):not(.services_detail_video_bg) {
        max-width: 100%;
    }

    table {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .container,
    .container-fluid {
        padding-left: clamp(16px, 4vw, 28px);
        padding-right: clamp(16px, 4vw, 28px);
    }
}

@media (max-width: 575px) {
    .container,
    .container-fluid {
        padding-left: 16px;
        padding-right: 16px;
    }
}

/* ── 2. Tipografi ──────────────────────────────────────────── */

/* fnp.css industry-section kuralının tüm container'lara taşan dikey padding'ini sıfırla */
@media (max-width: 1199px) {
    section > .container,
    section > .container-fluid > .container {
        padding-top: 0;
        padding-bottom: 0;
    }

    .industry-section > .container {
        padding-top: 56px;
        padding-bottom: 56px;
    }

    .fnp_title {
        font-size: clamp(36px, 5.5vw, 52px);
        margin: 22px 0;
    }

    .uFooter__title {
        font-size: clamp(32px, 5vw, 44px);
    }

    .uFooter__colTitle {
        font-size: clamp(22px, 3vw, 28px);
    }

    .uFooter__brand img {
        width: auto;
        max-width: 220px;
        height: auto;
    }
}

@media (max-width: 991px) {
    .fnp_title {
        font-size: clamp(32px, 6vw, 42px);
        margin: 18px 0;
        line-height: 1.2;
    }

    .fnp_detail p,
    .fnp_detail li,
    .fnp_detail ul li {
        font-size: 17px;
    }

    .smart-card-title {
        font-size: clamp(24px, 4.5vw, 30px);
        line-height: 1.25;
    }
}

@media (max-width: 767px) {
    .fnp_title {
        font-size: clamp(28px, 7vw, 36px);
        margin: 14px 0;
    }

    .fnp_detail p,
    .fnp_detail li,
    .fnp_detail ul li {
        font-size: 16px;
        line-height: 1.65;
    }

    .fnp_subtitle {
        font-size: 12px;
        padding: 4px 12px;
    }
}

@media (max-width: 575px) {
    .fnp_title {
        font-size: clamp(24px, 8vw, 30px);
    }
}

/* ── 2b. Birleşik buton boyutları (responsive) ─────────────── */

@media (max-width: 992px) {
    :root {
        --fnp-btn-h: 40px;
        --fnp-btn-px: 18px;
        --fnp-btn-fs: 14px;
        --fnp-btn-r: 999px;
        --fnp-icon-btn: 40px;
    }

    .btn-main,
    a.btn-main,
    button.btn-main,
    .fnp_btn,
    a.fnp_btn,
    .btn-line,
    a.btn-line,
    .services_detail_btn,
    .cta,
    a.cta,
    .uBtn,
    button.uBtn,
    .uProds_btn,
    .uProds_btnPrimary,
    .uProds_btnGhost,
    .uni-btn,
    a.uni-btn,
    .uni-product-hero-btn-outline,
    .usf-btn-main,
    .usf-btn-ghost,
    .unisoft-slide-overlay .btn-main,
    .unisoft-slide-overlay .btn-line,
    .uni-product-hero-actions .btn-main,
    .sd2-cta-actions .btn-main,
    .sd2-cta-actions a.btn-main,
    .uFooter__btn,
    .solution-featured-card .fnp_btn,
    .solution-featured-card .btn-main {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        min-height: var(--fnp-btn-h) !important;
        height: auto !important;
        padding: 0 var(--fnp-btn-px) !important;
        font-size: var(--fnp-btn-fs) !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
        border-radius: var(--fnp-btn-r) !important;
        box-sizing: border-box;
        white-space: nowrap;
    }

    .cta,
    a.cta {
        min-width: 0 !important;
        width: auto;
        max-width: 100%;
    }

    #menu-btn,
    #btn-extra,
    .uProds_nav,
    .ups-prev,
    .ups-next,
    .usf-showcase-arrow,
    .service-showcase-arrow,
    .uni-p-arrow,
    .uProds_prev,
    .uProds_next {
        width: var(--fnp-icon-btn) !important;
        height: var(--fnp-icon-btn) !important;
        min-width: var(--fnp-icon-btn) !important;
        min-height: var(--fnp-icon-btn) !important;
        padding: 0 !important;
        font-size: 15px !important;
        border-radius: 10px !important;
        box-sizing: border-box;
    }

    .ups-prev,
    .ups-next,
    .usf-showcase-arrow,
    .service-showcase-arrow,
    .uProds_nav {
        border-radius: 50% !important;
    }

    #menu-btn:before {
        font-size: 15px !important;
    }

    .btn-plus {
        min-height: var(--fnp-btn-h) !important;
        padding: 0 14px !important;
        font-size: var(--fnp-btn-fs) !important;
        border-radius: var(--fnp-btn-r) !important;
    }
}

@media (max-width: 767px) {
    :root {
        --fnp-btn-h: 38px;
        --fnp-btn-px: 16px;
        --fnp-btn-fs: 13px;
        --fnp-icon-btn: 38px;
    }

    .unisoft-slide-overlay .sw-text-wrapper .btn-main,
    .unisoft-slide-overlay .sw-text-wrapper .btn-line,
    .services_detail_btn.btn-main,
    .uProds_btn,
    .uProds_btnPrimary,
    .uProds_btnGhost,
    .uBtn,
    .sd2-cta-actions .btn-main,
    .cta {
        width: 100%;
        max-width: 100%;
    }

    .uProds_actions {
        gap: 8px;
    }
}

@media (max-width: 575px) {
    :root {
        --fnp-btn-h: 36px;
        --fnp-btn-px: 14px;
        --fnp-btn-fs: 13px;
        --fnp-icon-btn: 36px;
    }
}

/* ── 3. Header & mobil navigasyon ──────────────────────────── */

@media (max-width: 992px) {
    /* Topbar mobilde gizle — tek satır header */
    #content {
        margin-top: 0px !important;
    }
    #topbar {
        display: none !important;
    }

    /* Sabit, marka uyumlu üst bar */
    header,
    header.transparent,
    header.header-mobile,
    header.smaller,
    header.fixed {
        position: sticky !important;
        top: 0 !important;
        left: 0;
        right: 0;
        z-index: 1001;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        background: rgba(34, 55, 120, 0.97) !important;
        backdrop-filter: blur(14px);
        -webkit-backdrop-filter: blur(14px);
        box-shadow: 0 4px 24px rgba(0, 0, 0, 0.14);
        overflow: visible;
    }

    header.smaller #topbar {
        margin-top: 0 !important;
    }

    /* Menü açıkken tam ekran panel */
    header.menu-open {
        position: fixed !important;
        inset: 0 !important;
        z-index: 9999 !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
        background: linear-gradient(165deg, #223778 0%, #1a2d62 48%, #152347 100%) !important;
    }

    header > .container {
        padding-left: 16px !important;
        padding-right: 16px !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        max-width: 100% !important;
    }

    /* Üst satır: logo + aksiyonlar */
    header .de-flex {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 10px;
        min-height: 68px;
        padding: 8px 0;
    }

    header .de-flex-col {
        display: flex !important;
        align-items: center !important;
        float: none !important;
    }

    header .de-flex-col:first-child {
        flex: 1 1 auto;
        justify-content: flex-start !important;
        min-width: 0;
        z-index: 2;
    }

    header .de-flex-col:last-child {
        flex: 0 0 auto;
        justify-content: flex-end !important;
        gap: 8px;
        z-index: 3;
    }

    /* Menü kapalıyken nav alanını tamamen gizle (üst üste binmeyi önler) */
    header:not(.menu-open) .header-col-mid {
        display: none !important;
        position: absolute !important;
        width: 0 !important;
        height: 0 !important;
        overflow: hidden !important;
        opacity: 0;
        pointer-events: none;
    }

    /* Tek logo */
    header .logo-main,
    header .logo-scroll,
    header.smaller .logo-main,
    header.smaller .logo-scroll {
        display: none !important;
    }

    header .logo-mobile {
        display: block !important;
    }

    div#logo {
        margin: 0 !important;
        height: auto !important;
        line-height: 1;
    }

    div#logo a {
        display: block;
        line-height: 0;
    }

    div#logo img,
    header .logo-mobile {
        max-width: 150px !important;
        max-height: 48px;
        width: auto !important;
        height: auto !important;
        margin: 0 !important;
        object-fit: contain;
    }

    /* Hamburger + extra buton */
    .menu_side_area {
        margin: 0 !important;
        width: auto !important;
        position: relative !important;
        right: auto !important;
        text-align: right;
        display: flex !important;
        align-items: center;
        z-index: 2;
    }

    #menu-btn {
        display: flex !important;
        align-items: center;
        justify-content: center;
        float: none !important;
        margin: 0 !important;
        border: 1px solid rgba(255, 255, 255, 0.2);
        background: rgba(255, 255, 255, 0.08);
        color: #fff;
        transition: background 0.2s ease, border-color 0.2s ease;
    }

    #menu-btn:before {
        line-height: 1;
    }

    #menu-btn.menu-open {
        background: rgba(134, 176, 71, 0.24);
        border-color: rgba(134, 176, 71, 0.55);
    }

    #btn-extra {
       display: none;
    }

    /* Menü açıkken grid düzeni */
    header.menu-open .de-flex {
        display: grid !important;
        grid-template-columns: 1fr auto auto;
        grid-template-rows: auto 1fr;
        gap: 0 8px;
        align-items: center;
        min-height: 100vh;
        min-height: 100dvh;
        padding: 12px 0 32px;
    }

    header.menu-open .de-flex-col:first-child {
        grid-column: 1;
        grid-row: 1;
    }

    header.menu-open .de-flex-col:last-child {
        grid-column: 2 / 4;
        grid-row: 1;
        justify-content: flex-end !important;
    }

    header.menu-open .header-col-mid {
        display: flex !important;
        grid-column: 1 / -1;
        grid-row: 2;
        align-self: stretch;
        align-items: stretch !important;
        width: 100% !important;
        height: auto !important;
        opacity: 1;
        pointer-events: auto;
        position: static !important;
        top: auto !important;
        left: auto !important;
        padding: 8px 0 0 !important;
    }

    /* Ana menü paneli */
    header.menu-open #mainmenu {
        display: block !important;
        position: relative !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        margin: 0 !important;
        padding: 8px 0 24px !important;
        overflow: visible !important;
        float: none !important;
        background: transparent;
    }

    header:not(.menu-open) #mainmenu {
        display: none !important;
    }

    #mainmenu > li {
        float: none !important;
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        position: relative;
        border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
    }

    #mainmenu > li:last-child {
        border-bottom: none !important;
        margin-bottom: 0 !important;
    }

    #mainmenu > li > a.menu-item {
        display: block !important;
        padding: 15px 48px 15px 4px !important;
        font-size: 18px !important;
        font-weight: 600 !important;
        color: #fff !important;
        letter-spacing: 0.01em;
        text-align: left !important;
        background: none !important;
    }

    #mainmenu > li > a.menu-item:hover,
    #mainmenu > li > a.menu-item.active {
        color: var(--unisoft-green, #86b047) !important;
        background: none !important;
    }

    #mainmenu > li.has-child::after {
        display: none !important;
    }

    #mainmenu > li > span,
    header.header-mobile #mainmenu > li > span {
        width: 40px !important;
        height: 40px !important;
        top: 0 !important;
        right: 0 !important;
        margin-top: 0 !important;
        transform: translateY(25%);
        border-radius: 10px;
        background-color: rgba(255, 255, 255, 0.1) !important;
        background-size: 12px !important;
        z-index: 5;
    }

    #mainmenu li ul {
        position: relative !important;
        left: 0 !important;
        top: auto !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        box-shadow: none !important;
        border: none !important;
        background: transparent !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    #mainmenu li ul:not(.mega) {
        border: none !important;
    }

    #mainmenu li li {
        border: none !important;
        padding-left: 0 !important;
        float: none !important;
        display: block !important;
        width: 100% !important;
    }

    #mainmenu li li a.menu-item {
        font-size: 15px !important;
        font-weight: 500 !important;
        color: rgba(255, 255, 255, 0.82) !important;
        padding: 11px 0 11px 18px !important;
        border: none !important;
        text-align: left !important;
    }

    #mainmenu li li a.menu-item:hover {
        color: var(--unisoft-green, #86b047) !important;
        background: none !important;
    }

    #mainmenu a.menu-item span:not(.badge) {
        display: inline !important;
    }

    /* Mega menü mobilde kapalı — düz alt menü kullanılır */
    #mainmenu > li > ul.mega {
        display: none !important;
        height: 0 !important;
        overflow: hidden !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }

    #mainmenu > li > ul.mobile-only-submenu {
        display: block !important;
        position: relative !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
    }

    #mainmenu ul.mobile-only-submenu > li {
        border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    }

    #mainmenu ul.mobile-only-submenu > li:last-child {
        border-bottom: none !important;
    }

    #mainmenu ul.mobile-only-submenu > li > a.menu-item {
        display: block !important;
        padding: 12px 0 12px 18px !important;
        font-size: 15px !important;
        font-weight: 500 !important;
        color: rgba(255, 255, 255, 0.82) !important;
        background: none !important;
        border: none !important;
    }

    #mainmenu ul.mobile-only-submenu > li > a.menu-item:hover,
    #mainmenu ul.mobile-only-submenu > li > a.menu-item.active {
        color: var(--unisoft-green, #86b047) !important;
    }

    /* Extra panel (sağdan açılan) */
    #extra-wrap {
        width: min(100vw, 420px);
        max-width: 100vw;
        right: -110%;
    }

    #extra-wrap.open {
        right: 0;
    }

    #extra-wrap.open #extra-content {
        padding: 20px 16px 32px;
        max-height: 100vh;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    .unisoft-mega {
        padding: 12px 0;
    }

    .unisoft-mega-inner {
        grid-template-columns: 1fr;
    }

    .unisoft-cats-title {
        font-size: 20px;
        margin-bottom: 16px;
    }

    .unisoft-cat span {
        font-size: 16px;
    }

    .unisoft-card-group {
        grid-template-columns: 1fr;
    }

    .unisoft-card-title {
        font-size: 17px;
    }

    .unisoft-card-sub {
        font-size: 14px;
    }

    /* Alt menüler kapalıyken gizli (JS accordion ile açılır) */
    header.menu-open #mainmenu > li > ul,
    header.header-mobile #mainmenu > li > ul {
        height: 0;
        overflow: hidden;
        position: relative !important;
    }

    /* Menü açıkken arka plan kaydırmasını kilitle */
    html:has(header.menu-open),
    html:has(header.menu-open) body {
        overflow: hidden;
        height: 100%;
    }
}

@media (max-width: 767px) {
    div#logo img,
    header .logo-mobile {
        max-width: 132px !important;
        max-height: 38px;
    }

    header .de-flex {
        min-height: 62px;
        padding: 6px 0;
    }

    #mainmenu > li > a.menu-item {
        font-size: 17px !important;
        padding-top: 14px !important;
        padding-bottom: 14px !important;
    }
}

@media (max-width: 575px) {
    header > .container {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    div#logo img,
    header .logo-mobile {
        max-width: 120px !important;
    }
}

/* Masaüstünde mobil düz alt menüyü gizle */
@media (min-width: 993px) {
    #mainmenu ul.mobile-only-submenu {
        display: none !important;
    }
}

/* ── 3b. YouTube arka plan videoları (mobil cover) ─────────── */

@media (max-width: 991px) {
    #hero-swiper,
    #hero-swiper .swiper-wrapper,
    #hero-swiper .swiper-slide,
    .unisoft-slide {
        width: 100%;
        height: 100%;
    }

    #hero-swiper .swiper-wrapper {
        min-height: inherit;
    }

    #hero-swiper .swiper-slide {
        min-height: inherit;
    }

    .unisoft-slide {
        background: #0b1220;
        isolation: isolate;
        position: static;
    }

    #hero-swiper .yt-bg-wrap {
        z-index: 0 !important;
    }

    #hero-swiper .unisoft-slide-overlay {
        z-index: 10 !important;
        transform: translateZ(0);
        -webkit-transform: translateZ(0);
    }

    #hero-swiper iframe.yt-bg {
        max-width: none !important;
    }

    .yt-bg-wrap,
    .yt-wrap,
    .services_detail_video_bg_wrap {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
        height: 100% !important;
        overflow: hidden !important;
        z-index: 1;
    }

    .yt-iframe,
    .services_detail_video_bg {
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -50%) !important;
        border: 0;
        max-width: none !important;
        pointer-events: none;
        min-width: 0 !important;
        min-height: 0 !important;
    }

    /* Hero: fnp.css cover ölçüleri kalsın; JS gelince inline ile güncellenir */
    .yt-bg {
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -50%) !important;
        border: 0;
        max-width: none !important;
        pointer-events: none;
    }

    .yt-col {
        width: 100% !important;
        aspect-ratio: 16 / 9;
        min-height: 0 !important;
        height: auto !important;
    }

    .half-fluid .yt-col {
        left: auto !important;
        right: auto !important;
        margin-left: 0 !important;
        max-width: 100% !important;
    }
}

@media (max-width: 767px) {
    .yt-col {
        aspect-ratio: 16 / 10;
    }

    .services_detail_video_area {
        overflow: hidden;
    }
}

/* ── 4. Hero slider ────────────────────────────────────────── */

@media (max-width: 1199px) {
    .hero-title--abart {
        font-size: clamp(40px, 6.5vw, 64px);
    }

    .hero-desc p {
        font-size: 18px;
        line-height: 1.6;
    }
}

@media (max-width: 991px) {
    section.slider-light {
        margin-bottom: clamp(32px, 6vw, 56px) !important;
    }

    .unisoft-swiper {
        min-height: 560px;
        height: 88vh;
        height: 88svh;
    }

    #hero-swiper .unisoft-slide-overlay {
        display: flex !important;
        flex-direction: column !important;
        justify-content: flex-end !important;
        align-items: stretch !important;
        padding: 0 !important;
        pointer-events: none;
        background: linear-gradient(
            180deg,
            rgba(0, 0, 0, 0.4) 0%,
            rgba(0, 0, 0, 0.12) 38%,
            rgba(0, 0, 0, 0.62) 68%,
            rgba(0, 0, 0, 0.9) 100%
        ) !important;
    }

    #hero-swiper .unisoft-slide-overlay .container {
        pointer-events: auto;
        width: 100%;
        padding-top: 20px;
        padding-bottom: calc(116px + env(safe-area-inset-bottom, 0px));
    }

    #hero-swiper .sw-text-wrapper {
        position: relative;
        z-index: 2;
    }

    #hero-swiper .swiper-slide-active {
        z-index: 2 !important;
    }

    #hero-swiper .swiper-slide-active .sw-text-wrapper {
        opacity: 1 !important;
        visibility: visible !important;
        transform: translateY(0) !important;
    }

    #hero-swiper .hero-title--abart,
    #hero-swiper .hero-desc,
    #hero-swiper .hero-desc p {
        color: #fff !important;
        text-shadow: 0 2px 18px rgba(0, 0, 0, 0.5);
    }

    .hero-title--abart {
        font-size: clamp(32px, 7vw, 48px);
    }

    .hero-desc p {
        font-size: 16px;
        line-height: 1.55;
    }

    .unisoft-pagination {
        right: auto !important;
        left: 50% !important;
        transform: translateX(-50%);
        bottom: max(16px, env(safe-area-inset-bottom, 0px)) !important;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        gap: 8px;
        padding: 0 12px;
        width: calc(100% - 32px) !important;
        max-width: 100%;
        z-index: 12 !important;
        pointer-events: auto;
    }

    .unisoft-pagination .swiper-pagination-bullet {
        width: auto;
        min-width: 52px;
        height: 52px;
        padding: 8px;
        border-radius: 12px;
    }

    .unisoft-bullet img {
        width: 32px;
        height: 32px;
    }

    .unisoft-slide-overlay .btn-main,
    .unisoft-slide-overlay .btn-line {
        display: inline-flex;
        margin-bottom: 8px;
    }

    .unisoft-slide-overlay .btn-line.ms-2 {
        margin-left: 0 !important;
    }
}

@media (max-width: 767px) {
    .unisoft-swiper {
        min-height: 500px;
        height: 82vh;
        height: 82svh;
    }

    #hero-swiper .unisoft-slide-overlay .container {
        padding-bottom: calc(108px + env(safe-area-inset-bottom, 0px));
    }

    .hero-title--abart {
        font-size: clamp(26px, 8vw, 36px);
        letter-spacing: 0;
        margin-bottom: 10px;
    }

    .hero-desc p {
        font-size: 15px;
        margin-bottom: 14px;
    }

    .unisoft-slide-overlay .sw-text-wrapper .btn-main,
    .unisoft-slide-overlay .sw-text-wrapper .btn-line {
        width: 100%;
        justify-content: center;
        text-align: center;
    }

    .unisoft-pagination .swiper-pagination-bullet {
        min-width: 44px;
        height: 44px;
    }

    .unisoft-bullet img {
        width: 28px;
        height: 28px;
    }
}

@media (max-width: 575px) {
    .unisoft-swiper {
        min-height: 460px;
    }

    .hero-title--abart {
        font-size: clamp(22px, 7.5vw, 30px);
    }
}

/* Banner / çözüm detay hero */
@media (max-width: 991px) {
    .services_detail_video_area {
        min-height: 520px;
        height: 85vh;
        height: 85svh;
    }

    .solutions_banner .hero-title--abart {
        font-size: clamp(28px, 7vw, 44px);
    }

    .services_detail_breadcrumb {
        flex-wrap: wrap;
        gap: 4px 8px;
        font-size: 13px;
        margin-bottom: 16px;
    }
}

@media (max-width: 767px) {
    .services_detail_video_area {
        min-height: 460px;
        height: 78vh;
        height: 78svh;
    }

    .services_detail_video_overlay {
        align-items: flex-end;
        padding-bottom: 48px;
        background: linear-gradient(180deg, rgba(0, 0, 0, .2) 0%, rgba(0, 0, 0, .65) 60%, rgba(0, 0, 0, .8) 100%);
    }

}

/* ── 5. Hakkımızda & half-fluid ─────────────────────────────── */

@media (max-width: 991px) {
    .half-fluid .left-half,
    .half-fluid .right-half {
        position: relative !important;
        left: auto !important;
        right: auto !important;
        width: 100% !important;
        margin-left: 0 !important;
        max-width: 100% !important;
    }

    .yt-col {
        margin-bottom: 24px;
        border-radius: 20px !important;
    }

    .rounded-bottom-start-60 {
        border-bottom-left-radius: 24px !important;
    }

    .rounded-top-end-60 {
        border-top-right-radius: 24px !important;
    }

    .half-fluid .row > .col-lg-5,
    .half-fluid .row > .col-lg-6,
    .half-fluid .row > .col-lg-7 {
        margin-bottom: 8px;
    }

    .half-fluid .ps-lg-5 {
        padding-left: 0 !important;
    }
}

/* ── 6. Dünya / istatistikler ──────────────────────────────── */

@media (max-width: 991px) {
    .services_world {
        padding-top: 48px;
        padding-bottom: 48px;
    }

    .services_world .col-lg-5.offset-lg-1 {
        margin-left: 0;
    }

    .services_world .de_count {
        margin-bottom: 24px;
    }

    .services_world .de_count .id-color-3 {
        font-size: 36px;
    }

    .services_world .de_count .id-color-3 span {
        font-size: 42px;
    }

    .services_world .de_count .count_title span {
        font-size: 20px;
    }

    #globe {
        max-width: min(100%, 520px);
        margin-bottom: 32px;
    }
}

@media (max-width: 575px) {
    .services_world .de_count .id-color-3 {
        font-size: 30px;
    }

    .services_world .de_count .id-color-3 span {
        font-size: 36px;
    }
}

/* ── 7. Sektör (horeca / retail) ───────────────────────────── */

@media (max-width: 900px) {
    .industry-section {
        min-height: auto;
        padding: 72px 0;
    }

    .industry-section .container {
        padding: 0 clamp(16px, 4vw, 24px);
    }

    .content h2,
    .content .industry-subtitle {
        font-size: clamp(36px, 12vw, 72px);
    }

    .content h3 {
        font-size: clamp(24px, 6vw, 40px);
    }
}

@media (max-width: 575px) {
    .industry-section {
        padding: 56px 0;
    }

}

/* ── 8. Marquee ────────────────────────────────────────────── */

@media (max-width: 991px) {
    section[style*="padding-top: 200px"] {
        padding-top: 80px !important;
    }

    .fnp-marquee-tilt {
        margin-left: 0;
        margin-right: 0;
    }

    .fnp-track span {
        font-size: clamp(24px, 8vw, 48px);
        padding-right: 40px;
    }
}

@media (max-width: 767px) {
    section[style*="padding-top: 200px"] {
        padding-top: 56px !important;
    }

    .fnp-marquee {
        width: 120%;
        left: -10%;
        padding: 14px 0;
    }
}

/* ── 9. Smart solutions grid ───────────────────────────────── */

@media (max-width: 991px) {
    .section-dark .p-40,
    .fnp-bg-2 .p-40 {
        padding: 28px 24px !important;
    }

    .section-dark .abs.p-40 {
        padding: 20px !important;
    }

    .section-dark .jarallax {
        min-height: 280px;
    }

    /* Çözümlerimiz — mavi kartların kenarlarını ayır */
    .section-dark.fnp-bg-2 .row.g-0 > [class*="col-"] > .relative.p-40.text-light.h-100:not(.fnp-bg-1) {
        border: 1px solid #fff;
        box-sizing: border-box;
    }
}

@media (max-width: 767px) {
    .section-dark .p-40,
    .fnp-bg-2 .p-40 {
        padding: 24px 20px !important;
    }

    .section-dark .jarallax {
        min-height: 220px;
    }

    .btn-plus {
        margin-top: 12px;
    }
}

/* ── 10. Ürün vitrinleri & sliderlar ───────────────────────── */

@media (max-width: 991px) {
    .uProds_h3 {
        font-size: clamp(28px, 5vw, 36px);
    }

    .uProds_p,
    .uProds_list {
        font-size: 16px;
    }

    .uProds_tabBtn {
        font-size: 15px;
        padding: 9px 16px;
    }

    .usf-showcase-title {
        font-size: clamp(28px, 5vw, 38px);
    }

    .ups-title {
        font-size: clamp(28px, 6vw, 36px);
    }

    .uni-case-section {
        padding: 80px 0;
    }

    .uni-p-title {
        font-size: clamp(28px, 6vw, 40px);
    }
}

@media (max-width: 767px) {
    .uProds_prev {
        left: 6px;
    }

    .uProds_next {
        right: 6px;
    }

    .uProds_actions {
        flex-direction: column;
    }

    .usf-showcase-arrows {
        width: 100%;
        justify-content: flex-end;
    }

    .unisoft-product-showcase .container {
        padding-bottom: 24px;
    }

    .ups-controls {
        position: relative;
        width: 100%;
        padding: 16px 0 0;
    }

    .section-dark .swiper-inner .col-6 {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .section-dark .sw-text-wrapper.border-left {
        border-left: none !important;
        padding-left: 0 !important;
    }
}

/* ── 11. Projeler & parallax ───────────────────────────────── */

@media (max-width: 991px) {
    .uniProjectsSwiper,
    .uniProjectsSwiper .swiper-slide {
        height: auto;
        min-height: 520px;
    }

    .uni-p-panel {
        margin: 0 0 24px;
    }

    .parallax_2 {
        height: 220px;
        background-attachment: scroll;
    }
}

@media (max-width: 767px) {
    .uniProjectsSwiper,
    .uniProjectsSwiper .swiper-slide {
        min-height: 480px;
    }

    .uni-p-title {
        font-size: clamp(24px, 7vw, 32px);
    }

    .uni-p-desc {
        font-size: 15px;
    }

    .uni-p-actions {
        flex-direction: column;
        align-items: flex-start;
        gap: 14px;
    }

    .parallax_2 {
        height: 160px;
    }
}

/* ── 12. SSS / accordion ───────────────────────────────────── */

@media (max-width: 767px) {
    .accordion-section-title {
        font-size: 16px;
        padding-right: 28px;
        line-height: 1.4;
    }

    .accordion-section-content p {
        font-size: 15px;
    }
}

/* ── 13. Blog grid ─────────────────────────────────────────── */

@media (max-width: 991px) {
    .uBlogCols {
        flex-direction: column;
    }

    .uCol {
        width: 100%;
    }

    .uCard {
        min-height: 260px;
    }

    .uCard.isTall {
        height: auto;
        min-height: 320px;
    }

    .uCard-1 {
        min-height: 300px;
    }

    .uTitle {
        font-size: clamp(24px, 5vw, 32px);
    }

    .uCard:not(.isTall) .uTitle {
        font-size: clamp(20px, 4.5vw, 26px);
    }

    .uContent {
        left: 16px;
        right: 72px;
        bottom: 16px;
    }

    .uCta {
        width: 52px;
        height: 52px;
        border-radius: 14px;
    }

    .uCta svg {
        width: 28px;
        height: 28px;
    }
}

@media (max-width: 575px) {
    .uCard,
    .uCard-1,
    .uCard.isTall {
        min-height: 240px;
    }
}

/* ── 14. İletişim formu ────────────────────────────────────── */

@media (max-width: 991px) {
    .uLeadForm {
        padding: 64px 0;
    }

    .uHeroCard {
        min-height: 340px;
        margin-bottom: 20px;
    }

    .uHeroCard__content {
        left: 14px;
        right: 14px;
        bottom: 14px;
        padding: 16px;
    }

    .uHeroCard__content .fnp_title {
        font-size: clamp(22px, 5vw, 28px);
        margin-bottom: 4px;
    }

    .uFormCard {
        padding: 24px 20px;
        height: auto;
    }

    .uFormHead {
        flex-direction: column;
        align-items: flex-start;
        gap: 6px;
    }
}

@media (max-width: 767px) {
    .uLeadForm {
        padding: 48px 0;
    }

    .uHeroCard {
        min-height: 300px;
        background-size: auto 70% !important;
    }

}

/* ── 15. Footer ────────────────────────────────────────────── */

@media (max-width: 991px) {
    .uFooter {
        padding: 64px 0 24px;
    }

    .uFooter__top {
        padding-bottom: 36px;
    }

    .uFooter__link {
        font-size: 17px;
        padding: 6px 0;
    }

    .uFooter__glow {
        width: 400px;
        height: 400px;
    }
}

@media (max-width: 575px) {
    .uFooter {
        padding: 52px 0 20px;
    }

    .uFooter__brand img {
        max-width: 180px;
    }

    .uFooter__title {
        font-size: clamp(26px, 8vw, 32px);
    }

    .uFooter__colTitle {
        font-size: 20px;
        margin-bottom: 10px;
    }

    .uFooter__legal {
        font-size: 11px;
        line-height: 1.6;
    }

    .uFooter__legal > div:first-child {
        word-break: break-word;
    }
}

/* ── 16. Ürün & hizmet detay sayfaları ─────────────────────── */

@media (max-width: 991px) {
    .uni-product-hero {
        padding: 80px 0 64px;
    }

    .uni-ph {
        padding: 72px 0 64px;
    }

    .uni-ph-intro {
        margin-bottom: 40px;
    }

    .uni-ph-lead {
        font-size: 17px;
    }

    .service-showcase-slider {
        padding: 72px 0 80px;
    }
}

@media (max-width: 767px) {
    .uni-product-hero-title {
        font-size: clamp(28px, 7vw, 36px);
    }

    .uni-product-hero-subtitle {
        font-size: clamp(20px, 5vw, 24px);
    }

    .uni-what-does {
        padding: 64px 0;
    }

    .uni-ph-branch {
        margin-bottom: 40px;
        padding-bottom: 36px;
    }
}

/* ── 17. Problem / AACPS / SD2 bölümleri ───────────────────── */

@media (max-width: 991px) {
    .unf-parallax {
        height: auto;
        min-height: 70vh;
    }

    .aacps-section {
        min-height: auto;
    }

    .sd2-band,
    .sd2-band--air,
    .sd2-band--muted {
        padding: 64px 0;
    }
}

@media (max-width: 767px) {
    .unf-problem-bottom-line p {
        font-size: 16px;
    }

    .aac-slider-section {
        padding: 56px 0 72px;
    }
}

/* ── 18. Owl carousel & logo bandı ─────────────────────────── */

@media (max-width: 767px) {
    #owl-logo .img-fluid {
        max-height: 48px;
        width: auto;
        margin: 0 auto;
    }

    #testimonial-carousel .item {
        padding: 6px;
    }

    .uni-test-card {
        padding: 22px 20px 20px;
    }

    .uni-test-name {
        font-size: 19px;
    }
}

/* ── 19. Yardımcı spacing düzeltmeleri ─────────────────────── */

@media (max-width: 767px) {
    .spacer-double {
        height: 32px;
    }

    .spacer-single {
        height: 24px;
    }

    .spacer-10 {
        height: 8px;
    }

    .mb-sm-30,
    .mb-sm-20 {
        margin-bottom: 20px;
    }

    .wow {
        animation-duration: 0.8s !important;
    }
}

/* ── 20. Çok küçük ekranlar (≤360px) ───────────────────────── */

@media (max-width: 360px) {
    .hero-title--abart {
        font-size: 20px;
    }

    .fnp_title {
        font-size: 28px;
    }

    .unisoft-pagination .swiper-pagination-bullet {
        min-width: 38px;
        height: 38px;
        padding: 6px;
    }

    .uFooter__title {
        font-size: 24px;
    }
}

/* ── 21. Yatay mod & dokunmatik iyileştirmeler ─────────────── */

@media (max-width: 991px) and (orientation: landscape) {
    .unisoft-swiper,
    .services_detail_video_area {
        min-height: 420px;
        height: 100vh;
        height: 100svh;
    }

    #hero-swiper .unisoft-slide-overlay .container {
        padding-bottom: calc(88px + env(safe-area-inset-bottom, 0px));
    }

    #hero-swiper .hero-title--abart {
        font-size: clamp(20px, 5vw, 28px);
    }

    #hero-swiper .hero-desc p {
        font-size: 14px;
        line-height: 1.45;
        margin-bottom: 10px;
    }
}

@media (hover: none) and (pointer: coarse) {
    .uCard:hover img,
    .unisoft-card:hover img,
    .uni-card:hover,
    .uni-test-card:hover {
        transform: none;
    }

    .cta:hover,
    .fnp_btn:hover,
    .btn-main:hover {
        transform: none;
    }
}

/* prefers-reduced-motion */
@media (prefers-reduced-motion: reduce) {
    .fnp-track,
    .fnp-marquee-tilt .fnp-track {
        animation: none !important;
    }
}
