/* ============================================================
   RESPONSIVE.CSS — Balıkesir Lokmacım
   Breakpoint yapısı (büyükten küçüğe):
   1. Büyük masaüstü / büyük laptop      : > 1700px  (varsayılan, main.css)
   2. Küçük laptop / orta masaüstü       : 1025px - 1700px  (masaüstü düzeni korunur, sıkıştırılır)
   3. Tablet / büyük mobil                : 768px  - 1024px  (mobil menü devreye girer)
   4. Küçük mobil                         : 591px  - 767px
   5. Çok küçük mobil                     : <= 590px
   6. Genel / global kurallar (her boyutta geçerli)
   ============================================================ */


/* ============================================================
   1) KÜÇÜK LAPTOP / ORTA MASAÜSTÜ  (1025px - 1700px)
   Amaç: Masaüstü görünümü korunur (mobil menüye geçilmez),
   sadece header, menü ve slider sıkıştırılır.
   ============================================================ */
@media (min-width: 1025px) and (max-width: 1700px) {
    .header-inner {
        width: 95%;
    }

    .logo-normal {
        max-width: 220px;
    }

    .menu {
        padding-left: 20px;
        gap: 0;
    }

    .nav-link {
        padding: 0 6px;
        font-size: 13px;
    }

    .nav .active {
        padding: 8.75px 18px;
        margin-left: 6px;
        margin-right: 6px;
    }

    .call-button {
        padding: 8px 18px;
        gap: 8px;
    }

    .call-button i {
        font-size: 18px;
    }

    .call-button-label {
        font-size: 10px;
    }

    .call-button-number {
        font-size: 14px;
    }

    .main-slider .swiper-slide {
        background-size: cover !important;
        background-position: center !important;
        background-repeat: no-repeat !important;
    }

    .slider-content {
        left: 30px;
        width: 420px;
        padding: 50px 50px;
    }

    .icon-area {
        gap: 30px;
        flex-wrap: nowrap;
    }

    .icon-box {
        width: auto;
        padding: 30px 20px;
    }
    .main-slider {
        height: auto;
        aspect-ratio: 1920 / 794;
    }

    .main-slider .swiper-slide {
        background-size: contain !important;
        background-position: center !important;
        background-repeat: no-repeat !important;
        background-color: #f4f0ea;
    }
}


/* ============================================================
   2) TABLET / BÜYÜK MOBİL  (max-width: 1024px)
   Amaç: Mobil menüye geçiş, slider içeriği sadeleşir,
   ikon alanı 2'li gride döner.
   ============================================================ */
@media only screen and (max-width: 1024px) {

    /* --- Header & Menü --- */
    .slogan,
    .menu,
    .button-area,
    .about-us-right {
        display: none;
    }

    .mobile-menu,
    .about-us-mobile-img {
        display: block;
    }

    .header-inner {
        justify-content: space-between;
        width: 80%;
    }

    .logo-link {
        padding-left: 0;
    }

    .logo-normal {
        max-width: 206px;
    }

    .header {
        margin: 8px 0 17px 0;
        height: 56px;
    }

    header.sticky {
        padding-top: 12px !important;
        padding-bottom: 12px !important;
        height: auto !important;
    }

    .nav .active {
        margin: 0;
    }

    /* --- Top Header --- */
    .top-header-inner .d-flex {
        display: none !important;
        margin: auto;
    }

    .top-header h6 {
        display: none;
    }

    /* --- Marquee --- */
    .marquee-wrapper {
        overflow: hidden;
    }

    .marquee-track span {
        font-size: 13px;
        letter-spacing: 1px;
    }

    /* --- Slider --- */
    .main-slider {
        border-radius: 0;
        height: 500px;
    }

    .slider-content {
        position: relative;
        left: 0;
        top: 0px;
        transform: none;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.49);
        justify-content: center;
        align-items: center;
        color: #fff;
        text-align: center;
    }

    .slider-content h1 {
        color: #fff;
        font-size: 26px !important;
    }

    .slider-content p {
        max-width: 350px;
        font-size: 14px !important;
    }

    .main-slider .swiper-pagination {
        padding-left: 0;
        text-align: left;
        justify-content: center;
        display: flex;
    }

    /* --- Icon Area --- */
    .icon-area {
        flex-wrap: wrap;
        gap: 17px;
        padding-left: 20px;
        padding-right: 20px;
        position: relative;
        margin-top: 20px;
    }

    .icon-box {
        width: 47%;
        height: auto;
        padding: 25px 15px;
        gap: 8px;
    }

    .icon-box:nth-child(n+3) {
        display: none;
    }

    .icon-box i {
        font-size: 40px;
    }

    .icon-box h4 {
        font-size: 15px;
        margin-top: 8px;
    }

    .icon-box p {
        font-size: 12px;
    }

    .world-background {
        display: none;
    }

    /* --- Services / Spacing --- */
    .services {
        padding-top: 0px !important;
        padding-bottom: 0px !important;
        margin-bottom: 0;
    }

    .gradient-container .main-container {
        padding-top: 26px !important;
        padding-bottom: 26px !important;
        margin-bottom: 0;
    }

    /* --- Accordion / S.S.S --- */
    .accordion-container {
        padding-top: 65px !important;
        padding-bottom: 50px !important;
    }

    .accordion-head {
        padding: 20px 25px;
        gap: 20px;
    }

    .accordion-head h1 {
        font-size: 18px !important;
    }

    .accordion-body {
        font-size: 16px;
        padding: 20px 25px 30px 25px;
    }

    /* --- About Us --- */
    .about-us-left {
        padding-left: 60px;
        padding-right: 60px;
    }

    .about-us-left h1 {
        font-size: 28px !important;
    }

    .about-us-visions {
        display: none !important;
    }

    .about-us-content {
        display: none;
        max-width: 100%;
        font-size: 15px !important;
    }

    .about-us-content p {
        margin-top: 0 !important;
    }

    /* --- Wide Container / Banner --- */
    .wide-container {
        margin: 0 30px 0 30px !important;
        max-width: 100%;
        text-align: center;
    }

    .banner {
        flex-direction: column;
        height: auto;
        gap: 34px;
        padding: 82px 0 102px 0;
    }

    .banner h1 {
        width: 100%;
        top: 0;
        left: 0;
        font-size: 26px;
        line-height: 39px;
    }

    .banner a {
        right: 0;
        font-size: 17px;
        margin: auto;
    }

    /* --- Müşteri Memnuniyeti / Rating --- */
    .rating-area {
        flex-direction: column-reverse;
        margin-right: 60px;
        margin-left: 60px;
        gap: 54px !important;
    }

    .rating-area-left-box {
        position: relative;
        right: 0;
        bottom: 0;
        width: 100%;
    }

    .rating-area-left img {
        max-width: 100%;
        max-height: 100%;
    }

    .rating-area-right p {
        display: none;
    }

    /* --- İletişim --- */
    .contact-area {
        flex-direction: column;
    }

    .contact-area-info {
        padding-left: 20px;
        padding-right: 20px;
    }

    .contact-area-info p {
        display: none;
    }

    .contact-area-info .contact-info {
        font-size: 16px;
    }

    .contact-area-info .contact-info a {
        display: flex;
        align-items: flex-start;
        gap: 10px;
    }

    .contact-area-info .contact-info a span {
        margin-left: 0;
        word-break: break-word;
    }

    .contact-area-form form {
        margin: auto;
    }

    .contact-area-form .flex-row {
        flex-direction: column !important;
    }

    .contact-area-form input,
    .contact-area-form textarea {
        max-width: 100%;
        font-size: 16px;
        padding: 14px 24px;
        max-height: 55px;
    }

    .contact-area-form .contact-form {
        padding: 0 40px;
    }

    .contact-area-form .sendButton {
        width: 319px;
        margin-left: auto;
        margin-right: auto;
        font-size: 16px;
        padding: 14px 0;
        max-height: 55px;
    }

    .contact-area-kvkk {
        font-size: 14px;
    }

    /* --- Modal / Gizlilik Bildirgesi --- */
    .modal-dialog {
        padding: 0 15px;
        margin: 10px auto;
    }

    .modal-dialog h1,
    .modal-dialog h2 {
        font-size: 20px !important;
    }

    .modal-dialog h3 {
        font-size: 16px !important;
    }

    .modal-dialog p,
    .modal-dialog li {
        font-size: 13px !important;
        line-height: 1.6;
    }

    .modal-content {
        border-radius: 12px !important;
        padding: 20px;
    }

    .modal-content .close,
    .modal-content button[aria-label="Close"] {
        position: absolute;
        top: 10px;
        right: 10px;
    }
}


/* ============================================================
   3) KÜÇÜK MOBİL  (768px - 1024px arası footer/sosyal alanlar)
   ============================================================ */
@media only screen and (max-width: 767px) {
    footer {
        text-align: center;
    }

    .footer-text {
        width: 100%;
        max-width: 100%;
    }

    .footer-social ul {
        justify-content: center;
    }

    .gece-logo {
        float: none;
    }
}


/* ============================================================
   4) ÇOK KÜÇÜK MOBİL  (<= 590px)
   ============================================================ */
@media only screen and (max-width: 590px) {
    .world-background {
        height: 630px;
    }

    .top-header-mail {
        display: none !important;
    }

    .brands {
        padding-left: 0px;
        padding-right: 0px;
    }

    .banner {
        padding: 50px 30px 50px 30px;
    }

    .banner .col-4 {
        width: 100%;
    }

    .icon-box {
        width: 47%;
        height: auto;
    }

    .icon-box i {
        font-size: 50px;
    }

    .icon-box p {
        display: none;
        min-width: auto;
    }

    .about-us-mobile-img img {
        top: 0;
    }

    .main-slider {
        height: 400px;
        padding-top: 5px;
    }

    .slider-content h1 {
        font-size: 22px !important;
    }

    .slider-content p {
        font-size: 13px !important;
    }
}


/* ============================================================
   5) GENEL / GLOBAL KURALLAR
   Her ekran boyutunda geçerli olan taşma engelleyici kurallar.
   ============================================================ */
html, body {
    overflow-x: hidden;
    max-width: 100%;
}

@media (max-width: 1024px) {
    * {
        max-width: 100%;
        box-sizing: border-box;
    }

    .about-us-mobile-img {
        overflow: hidden;
    }
}