/* ===== Escotel mobile polish (<=991px only). Desktop unaffected. ===== */
.m-label{display:none}
.m-dots{display:none}

@media (max-width: 991.98px) {
  html,body{overflow-x:hidden}
  input,textarea,select{font-size:16px !important}

  /* ---------- Header: compact, sticky, flush top ---------- */
  .container-fluid.bg-dark.px-0{position:sticky;top:0;z-index:1030}
  .navbar.navbar-dark{padding:8px 16px !important;min-height:60px;flex-wrap:wrap}
  .navbar-brand.d-lg-none{padding:0 !important;margin:0}
  .navbar-brand.d-lg-none img{height:34px !important;width:auto !important;max-width:58vw;margin:0;filter:none}
  .navbar-brand:hover img{transform:none}
  .navbar-toggler{width:44px;height:44px;padding:0;border:1px solid rgba(93,64,55,.25) !important;border-radius:10px;display:flex;align-items:center;justify-content:center;box-shadow:none !important}
  .navbar-toggler-icon{width:22px;height:22px;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%235d4037' stroke-linecap='round' stroke-width='2.4' d='M5 8h20M5 15h20M5 22h20'/%3e%3c/svg%3e") !important}
  .navbar-collapse{flex-basis:100%;margin:8px -16px -8px;background:#f4ebe1;border-top:1px solid rgba(0,0,0,.08)}
  .navbar-nav{padding:6px 16px 10px !important}
  .navbar-dark .navbar-nav .nav-link{padding:13px 4px !important;font-size:15px;min-height:48px;display:flex;align-items:center;border-bottom:1px solid rgba(93,64,55,.12);transform:none !important}
  .navbar-dark .navbar-nav .nav-link:last-child{border-bottom:0}
  .navbar-dark .navbar-nav .nav-link::before{display:none}
  .navbar-dark .navbar-nav .nav-link.active{color:var(--primary) !important;box-shadow:inset 3px 0 0 var(--primary);padding-left:12px !important}

  /* ---------- Section rhythm & headings ---------- */
  .container-xxl.py-5,.about.container-xxl.py-5{padding-top:56px !important;padding-bottom:56px !important}
  h1.mb-5{margin-bottom:28px !important}
  .container h1,.container-xxl h1:not(.display-3){font-size:1.75rem;line-height:1.25}
  .section-title{font-size:.8rem !important;letter-spacing:1.5px}
  p{line-height:1.65}
  .container{padding-left:18px !important;padding-right:18px !important}
  .index-property{padding-left:0 !important;padding-right:0 !important}

  /* ---------- Index hero ---------- */
  .index-hero-carousel{height:min(78svh,640px) !important;min-height:520px !important;max-height:none !important}
  .index-hero-carousel .carousel-item::after{background:linear-gradient(180deg,rgba(15,23,43,.35) 0%,rgba(15,23,43,.45) 45%,rgba(15,23,43,.75) 100%)}
  .index-hero-carousel .carousel-caption{padding:0 20px}
  .index-hero-carousel .carousel-caption .p-3{max-width:100% !important;padding:26px 20px 24px !important;border-radius:16px;background:rgba(15,23,43,.28);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
  .index-hero-carousel .carousel-caption h6.section-title{font-size:.72rem !important;letter-spacing:2px;margin-bottom:12px !important}
  .index-hero-carousel .carousel-caption h1{font-size:clamp(1.8rem,8.4vw,2.3rem) !important;line-height:1.18;margin-bottom:22px !important}
  .index-hero-carousel .carousel-caption .btn{width:auto !important;min-width:0;margin:0 4px !important;padding:12px 20px !important;font-size:.85rem !important;min-height:46px;letter-spacing:.5px;border-radius:10px}
  .index-hero-carousel .carousel-control-prev,.index-hero-carousel .carousel-control-next{width:44px;top:auto;bottom:18px;height:44px;opacity:1}
  .index-hero-carousel .carousel-control-prev{left:auto;right:64px}
  .index-hero-carousel .carousel-control-next{right:16px}
  .index-hero-carousel .carousel-control-prev-icon,.index-hero-carousel .carousel-control-next-icon{width:40px;height:40px;background-size:16px;background-color:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.35)}

  /* ---------- Inner page header ---------- */
  .page-header.mb-5.p-0{margin-bottom:0 !important}
  .page-header-inner{padding-top:56px !important;padding-bottom:56px !important}
  .page-header-inner .display-3{font-size:2.1rem !important}

  /* ---------- About: stats compact 3-up ---------- */
  .row.g-3.pb-4:has([data-toggle=counter-up]){--bs-gutter-x:.6rem;flex-wrap:nowrap}
  .row.g-3.pb-4:has([data-toggle=counter-up])>.col-sm-4{flex:1 1 0;width:auto;max-width:none}
  .row.g-3.pb-4:has([data-toggle=counter-up]) .border.rounded.p-1{padding:3px !important}
  .row.g-3.pb-4:has([data-toggle=counter-up]) .text-center.p-4{padding:14px 4px !important}
  .row.g-3.pb-4:has([data-toggle=counter-up]) i.fa-2x{font-size:1.25rem}
  .row.g-3.pb-4:has([data-toggle=counter-up]) h2{font-size:1.3rem;margin-bottom:2px !important}
  .row.g-3.pb-4:has([data-toggle=counter-up]) p{font-size:.78rem;line-height:1.3}
  .about .btn.py-3.px-5{padding:13px 26px !important;font-size:.9rem}
  .about-text{margin-bottom:22px !important}

  /* ---------- Property cards ---------- */
  .room-item{border-radius:16px !important}
  .room-item .main-thumb{width:100%;aspect-ratio:4/3;height:auto !important;object-fit:cover}
  .property-gallery-thumbs{display:grid !important;grid-template-columns:repeat(4,1fr);gap:8px;padding:10px 16px 0 !important;margin:0 !important}
  .property-gallery-thumbs img,.property-gallery-thumbs .thumb-img{width:100% !important;height:auto !important;aspect-ratio:4/3;object-fit:cover;margin:0 !important;border-radius:8px}
  .room-item .p-4.mt-2{padding:16px 18px 18px !important;margin-top:0 !important}
  .room-item .d-flex.justify-content-between.mb-3{flex-direction:column;align-items:flex-start;gap:4px;margin-bottom:12px !important}
  .room-item h5{font-size:1.15rem;line-height:1.3}
  .room-item .ps-2{white-space:nowrap;padding-left:0 !important;font-size:.7rem;letter-spacing:1px}
  .room-item .d-flex.mb-3:not(.justify-content-between){display:grid !important;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:12px !important}
  .room-item .d-flex.mb-3:not(.justify-content-between)>small{border:0 !important;margin:0 !important;padding:8px 4px !important;background:#faf5ef;border-radius:8px;text-align:center;font-size:.74rem;line-height:1.25;display:flex;flex-direction:column;align-items:center;gap:3px}
  .room-item .d-flex.mb-3:not(.justify-content-between)>small i{margin:0 !important;font-size:.95rem}
  .room-item .d-flex.mb-3:not(.justify-content-between)>small .wa-icon{line-height:1}
  .room-item medium{display:flex;gap:8px;font-size:.88rem;line-height:1.45;margin:0 0 14px !important;padding:0 !important}
  .room-item medium i{margin:3px 0 0 !important}
  .room-item .mb-3>.room-tour-link{min-height:40px;display:inline-flex;align-items:center}
  .equal-buttons{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:8px}
  .equal-buttons .btn{margin:0 !important;width:auto !important;min-height:54px;padding:7px 4px !important;display:flex !important;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-radius:10px !important}
  .equal-buttons .btn .button-logo{height:18px !important;width:auto !important;max-width:40px;object-fit:contain;margin:0 !important}
  .m-label{display:block;font-size:.7rem;font-weight:600;letter-spacing:.2px;color:#fff;white-space:nowrap;text-transform:none;line-height:1}
  #pagination-container .pagination{gap:6px;flex-wrap:wrap;justify-content:center}
  #pagination-container .page-link{min-width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:10px !important;margin:0 !important}
  #pagination-container{margin-top:32px !important}

  /* ---------- Services: compact horizontal cards ---------- */
  .service-item{height:auto !important;padding:20px !important;display:grid !important;grid-template-columns:56px 1fr;column-gap:16px;text-align:left !important;align-items:start;border-radius:14px !important}
  .service-item .service-icon{margin:0 !important;width:56px !important;height:56px !important;grid-row:1/3}
  .service-item .service-icon i{font-size:1.4rem}
  .service-item h5{font-size:1.02rem;margin-bottom:6px !important}
  .service-item p{font-size:.88rem;line-height:1.55}
  .row.g-4:has(>div>.service-item){--bs-gutter-y:14px}

  /* ---------- Testimonials ---------- */
  .testimonial.container-xxl{padding-top:52px !important;padding-bottom:44px !important}
  .testimonial-carousel{padding-top:4px !important;padding-bottom:0 !important}
  .testimonial-carousel .owl-nav{display:none !important}
  .testimonial-item{margin:0 4px}
  .m-dots{display:flex;justify-content:center;gap:4px;margin-top:14px}
  .m-dots button{width:28px;height:28px;border:0;background:transparent;padding:0;display:flex;align-items:center;justify-content:center}
  .m-dots button::before{content:"";width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.35);transition:.25s}
  .m-dots button.on::before{background:var(--primary);width:22px;border-radius:4px}

  /* ---------- Instagram section ---------- */
  .ig-section{padding:56px 0 52px}
  .ig-heading{font-size:1.6rem !important;line-height:1.25}
  .ig-sub{font-size:.92rem;margin-bottom:22px}
  .ig-card{padding:14px 12px 10px;margin:0;border-radius:18px;box-shadow:0 8px 28px rgba(61,46,31,.10)}
  .ig-card [class*="elfsight-app"]{border-radius:12px;overflow:hidden}
  /* Elfsight header: compact single row, no duplicate blue Follow (our CTA below) */
  .ig-card .eapps-instagram-feed-header{padding:4px 2px 14px !important}
  .ig-card .eapps-instagram-feed-header-inner{display:flex !important;flex-direction:row !important;align-items:center !important;justify-content:space-between !important;gap:10px;flex-wrap:nowrap !important;padding:0 !important}
  .ig-card .eapps-instagram-feed-header-user{margin:0 !important;min-width:0}
  .ig-card .eapps-instagram-feed-header-user-info-name{font-size:14px !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .ig-card .eapps-instagram-feed-header-user-info{min-width:0}
  .ig-card .eapps-instagram-feed-header-user-picture-wrapper{flex-shrink:0}
  .ig-card .eapps-instagram-feed-header-stats{margin:0 !important;gap:10px}
  .ig-card .eapps-instagram-feed-header-stats-item{margin:0 !important;padding:0 !important}
  .ig-card .eapps-instagram-feed-header-stats-item-value{font-size:13px !important}
  .ig-card .eapps-instagram-feed-header-stats-item-label{font-size:10.5px !important}
  .ig-card .eapps-instagram-feed-header-follow-button-wrapper{display:none !important}
  /* posts: tidy 2-column grid with small gaps & rounded photos */
  .ig-card .eapps-instagram-feed-posts-view{display:grid !important;grid-template-columns:1fr 1fr;gap:6px}
  .ig-card .eapps-instagram-feed-posts-item{width:auto !important;height:auto !important;aspect-ratio:1/1;border-radius:10px;overflow:hidden;position:relative !important;margin:0 !important}
  .ig-card .eapps-instagram-feed-posts-item-link{width:100% !important;height:100% !important}
  .ig-card .eapps-instagram-feed-posts-slider-nav{width:36px !important;height:36px !important;border-radius:50% !important;background:rgba(255,255,255,.92) !important;box-shadow:0 2px 10px rgba(0,0,0,.18)}
  .ig-card .eapps-instagram-feed-posts-slider-nav svg{fill:#3d2e1f !important}
  .ig-card .eapps-instagram-feed-posts-slider-next{right:6px !important}
  .ig-card .eapps-instagram-feed-posts-slider-prev{left:6px !important;transform:translateY(-50%) !important}
  .ig-card .eapps-instagram-feed-posts-slider-next{transform:translateY(-50%) !important}
  .ig-cta{margin-top:22px;width:100%;min-height:48px;display:inline-flex;align-items:center;justify-content:center}
  /* ---------- Instagram widget: no overflow ---------- */
  [class*="elfsight-app"]{max-width:100%;overflow:hidden}

  /* ---------- Contact / about wrappers ---------- */
  .container-xxl[style*="margin-bottom: 80px"]{margin-bottom:0 !important;min-height:0 !important}
  .row.g-4>.container-xxl.py-5{padding:0 !important}
  .row.g-4>.container-xxl>.container{padding:0 !important}
  .collab-container{padding:16px !important;border-radius:16px;box-shadow:0 6px 24px rgba(0,0,0,.07)}
  .collab-container>.row{--bs-gutter-y:20px}
  .collab-image-wrapper{height:auto !important;max-height:340px;padding:12px 0}
  .collab-image{max-height:316px}
  .collab-text{padding:0 4px 4px}
  .collab-text h1{font-size:1.5rem !important;margin-bottom:14px !important}
  .collab-text p{font-size:.92rem;line-height:1.7}
  .collab-container{margin-bottom:44px}
  /* about photo collage */
  .custom-row-gap{--bs-gutter-y:20px}
  .modern-gallery{height:300px !important;margin:0 !important}
  .large-photo{width:84% !important;height:230px !important;top:0 !important;right:0 !important}
  .small-photo{width:52% !important;height:160px !important;bottom:0 !important;border-width:6px !important}
  .collab-text .d-flex.flex-wrap.gap-3{display:grid !important;grid-template-columns:1fr 1fr;gap:10px !important}
  .btn-whatsapp{min-height:48px;display:inline-flex !important;align-items:center;justify-content:center;width:100%;margin:0 !important;padding:10px 8px !important;font-size:.88rem;white-space:nowrap;border-radius:10px !important}

  /* ---------- Art of stay video ---------- */
  .video{min-height:0 !important;height:auto !important;aspect-ratio:16/11}
  .testimonial-carousel .owl-stage-outer{padding:0 2px}
  .testimonial-item{margin:0 !important}

  /* ---------- Footer ---------- */
  .footer.mt-3{margin-top:0 !important;padding-top:0 !important}
  .footer .container-fluid.pb-3{padding:36px 20px 8px !important}
  .footer .bg-primary.rounded.p-4{padding:22px !important;border-radius:14px !important}
  .footer .bg-primary h1{font-size:1.35rem}
  .footer .section-title{margin-bottom:14px !important}
  .footer .row.g-3>div{margin-top:22px}
  .footer .btn-link,.footer a.btn-link{padding:6px 0 !important;margin:0 !important}
  .footer .d-flex.flex-wrap.gap-2{display:grid !important;grid-template-columns:repeat(4,1fr);gap:8px !important}
  .footer .d-flex.flex-wrap.gap-2 img{width:100% !important;aspect-ratio:1;object-fit:cover}
  .footer .btn-social{width:40px;height:40px}
  .footer .copyright{padding:18px 4px !important;font-size:.82rem}

  /* ---------- Floating back-to-top ---------- */
  .back-to-top{right:16px !important;bottom:16px !important;width:44px !important;height:44px !important;border-radius:12px !important;display:none}
}

@media (min-width: 768px) and (max-width: 991.98px){
  .index-hero-carousel{height:62vh !important}
  .index-hero-carousel .carousel-caption .p-3{max-width:560px !important;margin:0 auto}
}
