/* ============================================================
   Jasmin Peyzaj — özel ayarlar (tema üstüne)
   ============================================================ */

/* ---- Hero arka plan: gölge/overlay + okunur beyaz metin ---- */
.hero7-area{ position:relative; background-size:cover; background-position:center; overflow:hidden; }
.hero7-video{
  position:absolute; inset:0; width:100%; height:100%;
  object-fit:cover; object-position:center; z-index:0; pointer-events:none;
}
.hero7-area::before{
  content:""; position:absolute; inset:0; z-index:1;
  background:linear-gradient(180deg, rgba(6,28,12,.55) 0%, rgba(6,28,12,.66) 100%);
}
.hero7-area > .container{ position:relative; z-index:2; }
.hero7-header h2, .hero7-header p{ color:#fff !important; }
.hero7-header h3{ color:#d7f0bf !important; }
.hero7-tags h3{ color:#eaf6df; border-color:rgba(255,255,255,.25); }
.scroll-down .scroll{ color:#fff; }

/* ---- İletişim (teklif) arka plan: daha koyu overlay ---- */
.vl-qoute7-area{ position:relative; background-size:cover; background-position:center; }
.vl-qoute7-area::before{
  content:""; position:absolute; inset:0; z-index:0;
  background:linear-gradient(180deg, rgba(6,28,12,.72) 0%, rgba(6,28,12,.80) 100%);
}
.vl-qoute7-area > .container{ position:relative; z-index:2; }
.qoute7-heading h2{ color:#fff !important; }
.qoute7-heading h3{ color:#d7f0bf !important; }

/* Form alanlarını koyu zemin üzerinde okunur yap */
.qoute7-form input,
.qoute7-form textarea,
.qoute7-form .nice-select{
  background:#fff !important; color:#16240f !important;
  border:1px solid rgba(255,255,255,.6) !important;
}
.qoute7-form input::placeholder,
.qoute7-form textarea::placeholder{ color:#7a8a6c !important; }

/* ---- İletişim bilgi kartı (sağ sütun) — arka planlı, büyük ---- */
.jasmin-contact-info{
  position:relative; height:100%;
  display:flex; flex-direction:column; gap:6px;
  background:linear-gradient(160deg, rgba(28,79,26,.94) 0%, rgba(8,32,12,.92) 100%);
  border:1px solid rgba(255,255,255,.13);
  border-radius:22px; padding:40px 36px;
  box-shadow:0 24px 60px rgba(0,0,0,.34);
  overflow:hidden;
}
.jasmin-contact-info::after{
  content:""; position:absolute; right:-70px; top:-70px; width:230px; height:230px; border-radius:50%;
  background:radial-gradient(circle, rgba(158,212,106,.22) 0%, rgba(158,212,106,0) 70%);
}
.jasmin-contact-info .ci-head{ position:relative; z-index:1; color:#fff; font-size:26px; font-weight:700; margin:0 0 4px; }
.jasmin-contact-info .ci-sub{ position:relative; z-index:1; color:#cfe6bd; font-size:15px; margin:0 0 22px; line-height:1.5; }
.jasmin-contact-info .ci-item{
  position:relative; z-index:1; display:flex; align-items:center; gap:16px; color:#eaf4e0;
  padding:15px 0; border-bottom:1px solid rgba(255,255,255,.10);
}
.jasmin-contact-info .ci-item:last-of-type{ border-bottom:0; }
.jasmin-contact-info .ci-ico{
  flex:0 0 56px; width:56px; height:56px; border-radius:15px;
  background:linear-gradient(135deg,#5bb22f,#1F5C18); display:flex; align-items:center; justify-content:center;
  color:#fff; font-size:23px; box-shadow:0 8px 18px rgba(0,0,0,.25);
}
.jasmin-contact-info .ci-item span{ font-size:12px; color:#9fb892; display:block; margin-bottom:3px; text-transform:uppercase; letter-spacing:.7px; }
.jasmin-contact-info .ci-item b, .jasmin-contact-info .ci-item a{
  color:#fff; font-size:19px; font-weight:600; text-decoration:none; line-height:1.3;
}
.jasmin-contact-info .ci-item a:hover{ color:#9ed46a; }
.jasmin-contact-info .ci-wa{
  position:relative; z-index:1; margin-top:24px;
  display:flex; align-items:center; justify-content:center; gap:10px;
  background:#25D366; color:#fff; padding:15px; border-radius:13px;
  font-weight:600; font-size:16px; text-decoration:none; transition:.2s;
}
.jasmin-contact-info .ci-wa:hover{ background:#1fb457; color:#fff; transform:translateY(-2px); }
@media (max-width: 1199px){ .jasmin-contact-info{ margin-top:40px; } }

/* ---- Sabit WhatsApp butonu ---- */
.jasmin-wa{
  position:fixed; right:22px; bottom:24px; z-index:9990;
  width:56px; height:56px; border-radius:50%;
  background:#25D366; color:#fff; font-size:27px;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 10px 26px rgba(0,0,0,.28); text-decoration:none;
  transition:transform .2s ease;
}
.jasmin-wa:hover{ transform:scale(1.08); color:#fff; }

/* ---- İç sayfa üst bannerı ---- */
.jasmin-banner{
  position:relative; background:linear-gradient(135deg,#0a2a0a 0%,#1c4f1a 60%,#2a6020 100%);
  padding:150px 0 70px; text-align:center; overflow:hidden;
}
.jasmin-banner::after{
  content:""; position:absolute; right:-90px; bottom:-90px; width:300px; height:300px;
  border-radius:50%; background:radial-gradient(circle, rgba(201,162,39,.18) 0%, rgba(201,162,39,0) 70%);
}
.jasmin-banner h1{ color:#fff; font-size:46px; font-weight:700; margin:0 0 10px; position:relative; z-index:2; }
.jasmin-banner .crumb{ color:#cfe6bd; font-size:15px; position:relative; z-index:2; }
.jasmin-banner .crumb a{ color:#9ed46a; text-decoration:none; }
.jasmin-banner .crumb span{ opacity:.6; margin:0 6px; }
@media(max-width:768px){ .jasmin-banner{padding:120px 0 50px;} .jasmin-banner h1{font-size:32px;} }

/* Header HER ZAMAN fixed — scroll'da position DEĞİŞMEZ (takılma/zıplama yok),
   sadece arka plan rengi yumuşakça değişir. */
.vl-header-area{
  position:fixed !important; top:0; left:0; right:0; z-index:50;
  padding-top:0 !important;  /* tema padding:20px 0 → top bar üstünde boşluk bırakıyordu */
  transition:background .3s ease, box-shadow .3s ease;
}
/* top bar olmayan/sticky durumda menü dik ortalı kalsın */
.vl-header-area .vl-header-content-area{ padding:14px 0; }
.vl-header-area.header-sticky{ animation:none !important; }  /* tema vlfadeInDown'ı iptal (pop yapıyordu) */

/* İç sayfa: header hep koyu yeşil */
.jasmin-solid-header .vl-header-area{ background:#0c2e0e; box-shadow:0 2px 18px rgba(0,0,0,.18); }
.jasmin-solid-header .vl-main-menu nav ul li a{ color:#eaf4e0; }
.jasmin-solid-header .jasmin-banner{ padding-top:150px; }  /* fixed header'a yer */

/* Hamburger her zaman beyaz */
.vl-offcanvas-toggle, .vl-offcanvas-toggle i{ color:#fff !important; }

/* Anasayfa: ŞEFFAF header (hero üstünde), scroll'da koyulaşır */
body:not(.jasmin-solid-header) .hero7-area{ margin-top:0 !important; padding-top:104px !important; }
body:not(.jasmin-solid-header) .vl-header-area{ background:transparent; box-shadow:none; }
body:not(.jasmin-solid-header) .vl-header-area.header-sticky{ background:#0c2e0e; box-shadow:0 2px 18px rgba(0,0,0,.22); }
body:not(.jasmin-solid-header) .vl-header-area .vl-main-menu nav ul li a{ color:#fff; }
body:not(.jasmin-solid-header) .vl-header-area .vl-main-menu nav ul li a:hover,
body:not(.jasmin-solid-header) .vl-header-area .vl-main-menu nav ul li a.active{ color:#9ed46a; }
.vl-logo img{ max-height:48px; width:auto; }

/* Proje grid kartı */
.jasmin-proj{ border-radius:16px; overflow:hidden; position:relative; margin-bottom:26px; box-shadow:0 10px 30px rgba(10,40,15,.08); background:#fff; }
.jasmin-proj .ph{ aspect-ratio:4/3; overflow:hidden; }
.jasmin-proj .ph img{ width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.jasmin-proj:hover .ph img{ transform:scale(1.06); }
.jasmin-proj .bd{ padding:20px 22px; }
.jasmin-proj .cat{ color:#4F9F2A; font-size:13px; font-weight:600; letter-spacing:.4px; }
.jasmin-proj .bd h3{ font-size:19px; margin:6px 0 8px; color:#16240f; }
.jasmin-proj .bd p{ color:#5d6b50; font-size:14px; margin:0; }

/* Hizmet kartı (ikon tabanlı) */
.jasmin-svc{ background:#fff; border:1px solid #e7efdf; border-radius:16px; padding:30px 26px; height:100%;
  transition:.25s; box-shadow:0 6px 22px rgba(10,40,15,.05); }
.jasmin-svc:hover{ transform:translateY(-6px); box-shadow:0 16px 36px rgba(10,40,15,.12); border-color:#cfe6bd; }
.jasmin-svc .ic{ width:64px; height:64px; border-radius:16px; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg,#e8f5dd,#cfeab4); color:#2f6e1f; font-size:26px; margin-bottom:18px; }
.jasmin-svc h3{ font-size:20px; color:#16240f; margin:0 0 10px; }
.jasmin-svc p{ color:#5d6b50; font-size:14.5px; line-height:1.6; margin:0; }
.jasmin-section{ padding:90px 0; }
.jasmin-section.alt{ background:#f4f8ef; }
.jasmin-head{ text-align:center; max-width:680px; margin:0 auto 50px; }
.jasmin-head .sub{ color:#4F9F2A; font-weight:600; letter-spacing:1px; text-transform:uppercase; font-size:13px; }
.jasmin-head h2{ font-size:38px; color:#16240f; margin:10px 0 0; }
@media(max-width:768px){ .jasmin-head h2{font-size:28px;} .jasmin-section{padding:60px 0;} }

/* İstatistik */
.jasmin-stat{ text-align:center; padding:20px; }
.jasmin-stat b{ display:block; font-size:44px; color:#2f6e1f; font-weight:800; line-height:1; }
.jasmin-stat span{ color:#5d6b50; font-size:15px; }

/* Hakkımızda görsel + liste */
.jasmin-about-img{ border-radius:18px; overflow:hidden; box-shadow:0 18px 40px rgba(10,40,15,.14); }
.jasmin-about-img img{ width:100%; display:block; }
.jasmin-check{ list-style:none; padding:0; margin:18px 0 0; }
.jasmin-check li{ display:flex; gap:12px; align-items:flex-start; margin-bottom:12px; color:#3d4a32; font-size:15.5px; }
.jasmin-check li i{ color:#4F9F2A; margin-top:3px; }

/* İletişim bilgi (açık zemin sürümü) */
.jasmin-ci-light{ display:flex; gap:16px; align-items:flex-start; padding:22px; border:1px solid #e7efdf; border-radius:14px; margin-bottom:18px; background:#fff; }
.jasmin-ci-light .ic{ flex:0 0 50px; width:50px; height:50px; border-radius:12px; background:#eaf5df; color:#2f6e1f; display:flex; align-items:center; justify-content:center; font-size:19px; }
.jasmin-ci-light span{ display:block; font-size:13px; color:#7a8a6c; }
.jasmin-ci-light a, .jasmin-ci-light b{ color:#16240f; font-size:16px; font-weight:600; text-decoration:none; }

/* Açık zeminli iletişim formu inputları */
.jasmin-quote-form input,
.jasmin-quote-form select,
.jasmin-quote-form textarea{
  width:100%; background:#fff !important; color:#16240f !important;
  border:1px solid #d8e4cb !important; border-radius:10px !important;
  padding:13px 15px !important; font-size:15px; outline:none;
}
.jasmin-quote-form input:focus,
.jasmin-quote-form select:focus,
.jasmin-quote-form textarea:focus{ border-color:#7CB342 !important; }

/* SSS akordeon */
.jasmin-faq{ max-width:820px; margin:0 auto; }
.jasmin-faq .item{ border:1px solid #e3ecd9; border-radius:12px; margin-bottom:12px; overflow:hidden; background:#fff; }
.jasmin-faq .q{ display:flex; justify-content:space-between; align-items:center; gap:14px; padding:18px 22px; cursor:pointer; font-weight:600; color:#16240f; font-size:16px; }
.jasmin-faq .q i{ color:#4F9F2A; transition:transform .25s; flex:0 0 auto; }
.jasmin-faq .item.open .q i{ transform:rotate(45deg); }
.jasmin-faq .a{ max-height:0; overflow:hidden; transition:max-height .3s ease; color:#5d6b50; font-size:15px; line-height:1.7; padding:0 22px; }
.jasmin-faq .item.open .a{ max-height:400px; padding:0 22px 18px; }

/* Ekip kartı */
.jasmin-team{ background:#fff; border:1px solid #e7efdf; border-radius:16px; overflow:hidden; text-align:center; box-shadow:0 6px 22px rgba(10,40,15,.05); transition:.25s; }
.jasmin-team:hover{ transform:translateY(-6px); box-shadow:0 16px 36px rgba(10,40,15,.12); }
.jasmin-team .ph{ aspect-ratio:1/1; overflow:hidden; background:#eef3e8; }
.jasmin-team .ph img{ width:100%; height:100%; object-fit:cover; }
.jasmin-team .bd{ padding:18px 14px; }
.jasmin-team h3{ font-size:18px; color:#16240f; margin:0 0 4px; }
.jasmin-team span{ color:#4F9F2A; font-size:14px; }
.jasmin-team .soc{ margin-top:10px; display:flex; gap:10px; justify-content:center; }
.jasmin-team .soc a{ width:32px; height:32px; border-radius:50%; background:#eef3e8; color:#2f6e1f; display:flex; align-items:center; justify-content:center; text-decoration:none; }
.jasmin-team .soc a:hover{ background:#4F9F2A; color:#fff; }

/* Blog detay */
.jasmin-post{ max-width:820px; margin:0 auto; }
.jasmin-post .cover{ border-radius:16px; overflow:hidden; margin-bottom:24px; }
.jasmin-post .cover img{ width:100%; display:block; }
.jasmin-post .meta{ color:#4F9F2A; font-size:14px; margin-bottom:10px; }
.jasmin-post h1{ font-size:32px; color:#16240f; margin:0 0 16px; }
.jasmin-post .body{ color:#3d4a32; font-size:16px; line-height:1.8; white-space:pre-line; }

/* ============ MOBİL UYUM DÜZELTMELERİ ============ */
html, body { overflow-x: hidden; max-width: 100%; }

@media (max-width: 991px){
  .hero7-header h2 { font-size: 38px !important; line-height: 1.18 !important; }
  .hero7-header h3 { font-size: 15px !important; }
  .hero7-header p  { font-size: 15px !important; }
}

/* Mobil: tema hero'ya sabit dev yükseklik veriyor (1400/1500px) → dekoratif
   kartları gizlediğimiz için altta kocaman boş video kalıyordu. İçeriğe göre kıs. */
@media (max-width: 991px){
  .hero7-area{ height:auto !important; min-height: 84vh; padding-bottom: 40px !important; }
}

@media (max-width: 575px){
  .container{ padding-left:16px !important; padding-right:16px !important; }
  .hero7-header h2{ word-break: break-word; overflow-wrap: anywhere; }
}
@media (max-width: 767px){
  .hero7-area { padding-top: 26px; }
  .hero7-header h2 { font-size: 27px !important; }
  .hero7-header h3 { font-size: 13px !important; line-height:1.4; }
  .hero7-header p  { font-size: 14px !important; }
  .hero7-tags { gap: 8px !important; margin-top: 16px; }
  .hero7-tags h3 { font-size: 12.5px !important; padding: 7px 12px !important; }
  /* Taşan/yüzen dekoratif öğeler mobilde gizlensin */
  .hero7-card1, .hero7-card2, .hero7-center-wrap, .hero7-center-dot,
  .scroll-down, .hero7-bottom-wrap, .testimonials7-shape { display: none !important; }
  /* Yorumlar taşması */
  .testimonial6-text { font-size: 15px !important; line-height: 1.6; }
  .testimonial7-thumb { margin-bottom: 24px; }
  /* Banner & başlıklar */
  .jasmin-banner h1 { font-size: 28px !important; }
  .jasmin-head h2 { font-size: 24px !important; }
  /* İletişim kartı padding */
  .jasmin-contact-info { padding: 28px 22px !important; }
  .jasmin-contact-info .ci-head { font-size: 22px !important; }
  .jasmin-contact-info .ci-item b, .jasmin-contact-info .ci-item a { font-size: 17px !important; }
  /* Footer üst başlık */
  .footer2-top-header { font-size: 26px !important; }
}

/* Mobil: bölüm başlıkları + yorum bölümü taşması */
@media (max-width: 991px){
  .service7-header h2 { font-size: 25px !important; line-height: 1.25 !important; word-break: break-word; }
  .vl-testimonials7-area, .vl-testimonials7-area .container { overflow: hidden; }
  .testimonial7-imgs2 { display: none !important; }
  .mytestimo6 { max-width: 100% !important; margin: 0 !important; overflow: hidden; }
  .mytestimo6 .swiper-slide { width: 100% !important; box-sizing: border-box; }
  .testimonial6-info { width: 100% !important; padding: 0 2px !important; }
  .testimonial6-text { word-break: break-word; }
}
@media (max-width: 767px){
  .service7-header h2 { font-size: 22px !important; }
  .service7-header h3 { font-size: 13px !important; }
}

/* Mobil: yorum swiper içeriğini güvenli alana al (offset telafisi) */
@media (max-width: 991px){
  .vl-testimonials7-area { overflow: hidden; }
  .vl-testimonials7-area .mytestimo6 { overflow: hidden !important; }
  .vl-testimonials7-area .testimonial6-info { padding: 26px 20px !important; }
  .vl-testimonials7-area .testimonial6-text { font-size: 16px !important; line-height: 1.65 !important; }
}

/* Mobil: yorum içeriğini viewport'a sığacak şekilde sınırla (slide genişlik taşması) */
@media (max-width: 991px){
  .vl-testimonials7-area .testimonial6-info{
    max-width: calc(100vw - 56px) !important;
    margin: 0 auto !important;
    padding: 22px 0 !important;
    box-sizing: border-box;
  }
}

/* Mobil: yorum bölümü yatay taşmasını kökten kes */
@media (max-width: 991px){
  .vl-testimonials7-area { overflow-x: hidden; }
  .vl-testimonials7-area .container { overflow: hidden; padding-left: 18px !important; padding-right: 18px !important; }
  .vl-testimonials7-area .row { margin-left: 0 !important; margin-right: 0 !important; }
  .vl-testimonials7-area [class*="col-"] { padding-left: 0 !important; padding-right: 0 !important; }
  .vl-testimonials7-area * { max-width: 100% !important; }
  .vl-testimonials7-area .testimonial6-info { max-width: 100% !important; margin: 0 !important; padding: 22px 0 !important; }
}

/* Mobil: yorum ok butonlarını gizle (dokunmayla kaydırılır), satır taşmasını engelle */
@media (max-width: 991px){
  .testimonial6-arrow { display: none !important; }
  .vl-testimonials7-area .testimonial6-text { word-break: break-word; overflow-wrap: anywhere; }
}

/* Mobil: yorum swiper slide genişliğini viewport'a kilitle (inline genişliği ez) */
@media (max-width: 991px){
  .vl-testimonials7-area .mytestimo6 .swiper-slide{ width: calc(100vw - 36px) !important; }
  .vl-testimonials7-area .testimonial6-info{ width: 100% !important; max-width: 100% !important; }
  .vl-testimonials7-area .testimonial6-text{ font-size: 15px !important; }
}

/* İletişim bölümü: tema beyaz wrapper/sol-kart kaldır → koyu zemine otur */
.vl-qoute7-area .qoute7-wrap { border: none !important; border-radius: 0 !important; }
.vl-qoute7-area .qoute7-left { background: transparent !important; border: none !important; padding: 0 !important; }
.vl-qoute7-area .qoute7-wrap > .row { align-items: stretch; }
.vl-qoute7-area .qoute7-left, .vl-qoute7-area .qoute7-right { height: 100%; }

/* ============ MOBİL HERO/ABOUT TAŞMA DÜZELTMESİ (en son — yüksek öncelik) ============ */
@media (max-width: 991px){
  .vl-hero7 .hero7-area .row,
  .vl-about7-area .row{ margin-left:0 !important; margin-right:0 !important; }

  .vl-hero7 .hero7-area .vl-hero7-info,
  .vl-hero7 .hero7-area [class*="col-"],
  .vl-about7-area [class*="col-"]{
    flex:0 0 100% !important; max-width:100% !important; width:100% !important;
    min-width:0 !important;
    padding-left:0 !important; padding-right:0 !important;
  }

  .vl-hero7 .hero7-area .hero7-header h2{
    font-size:30px !important; line-height:1.22 !important;
    white-space:normal !important; word-break:break-word !important; overflow-wrap:anywhere !important;
    max-width:100% !important;
  }
  .vl-hero7 .hero7-area .hero7-header h3,
  .vl-hero7 .hero7-area .hero7-header p,
  .vl-about7-area p{ max-width:100% !important; white-space:normal !important; overflow-wrap:anywhere !important; }

  .vl-hero7, .hero7-area, .vl-about7-area{ overflow-x:hidden !important; }
}

/* ============ HEADER ARA BUTONU (mobil) ============ */
.jasmin-call-btn{
  display:inline-flex; align-items:center; gap:7px;
  background:#4F9F2A; color:#fff; font-weight:600; font-size:14px;
  padding:9px 14px; border-radius:30px; text-decoration:none; line-height:1;
  box-shadow:0 6px 16px rgba(79,159,42,.32);
}
.jasmin-call-btn i{ font-size:13px; }
.jasmin-call-btn:hover{ background:#3d8420; color:#fff; }
@media (max-width:360px){ .jasmin-call-btn span{ display:none; } .jasmin-call-btn{ padding:9px 11px; } }

/* ============ MOBİL ALT MENÜ ============ */
.jasmin-bottom-nav{ display:none; }
@media (max-width: 991px){
  .jasmin-bottom-nav{
    display:flex; position:fixed; left:0; right:0; bottom:0; z-index:9995;
    background:#fff; border-top:1px solid #e7efdf;
    box-shadow:0 -6px 24px rgba(10,40,15,.10);
    padding:6px 6px calc(6px + env(safe-area-inset-bottom)); justify-content:space-around; align-items:flex-end;
  }
  .jasmin-bottom-nav a{
    flex:1; display:flex; flex-direction:column; align-items:center; gap:3px;
    color:#6b7a5e; font-size:11px; font-weight:600; text-decoration:none; padding:6px 2px;
  }
  .jasmin-bottom-nav a i{ font-size:18px; }
  .jasmin-bottom-nav a.on{ color:#4F9F2A; }
  .jasmin-bottom-nav a.wa{
    flex:0 0 auto; width:58px; height:58px; margin-top:-26px; border-radius:50%;
    background:#25D366; color:#fff; justify-content:center;
    box-shadow:0 8px 20px rgba(37,211,102,.45); border:4px solid #fff;
  }
  .jasmin-bottom-nav a.wa i{ font-size:26px; }
  .jasmin-bottom-nav a.wa span{ display:none; }
  /* Sabit yüzen WhatsApp mobilde gizlensin (alt menüde zaten var) */
  .jasmin-wa{ display:none !important; }
  /* İçerik alt menü altında kalmasın */
  body{ padding-bottom:64px; }
  .vl-footer2-area{ margin-bottom:0; }
}

/* ============ PRELOADER — site logosu ============ */
.preloader #loading-icon img{ max-width:120px; height:auto; width:auto; }
@media(max-width:575px){ .preloader #loading-icon img{ max-width:96px; } }

/* ============ FOOTER (yeni tasarım) ============ */
.jasmin-footer{
  background:linear-gradient(170deg,#0d2e10 0%,#0a2410 60%,#071c0c 100%);
  color:#cdddc2; position:relative; overflow:hidden;
  padding:0 0 24px;
}
.jasmin-footer::before{
  content:""; position:absolute; top:-120px; right:-120px; width:360px; height:360px; border-radius:50%;
  background:radial-gradient(circle, rgba(79,159,42,.18) 0%, rgba(79,159,42,0) 70%); pointer-events:none;
}
.jasmin-footer .container{ position:relative; z-index:1; }

/* CTA şeridi */
.jf-cta{
  display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap;
  padding:42px 0; border-bottom:1px solid rgba(255,255,255,.1); margin-bottom:48px;
}
.jf-cta-txt h3{ color:#fff; font-size:27px; font-weight:700; margin:0 0 6px; line-height:1.25; }
.jf-cta-txt p{ margin:0; color:#9fb892; font-size:15px; }
.jf-cta-btn{
  flex:0 0 auto; display:inline-flex; align-items:center; gap:10px;
  background:#9ed46a; color:#0a2a0a; font-weight:700; font-size:16px;
  padding:15px 30px; border-radius:40px; text-decoration:none; transition:.25s;
}
.jf-cta-btn:hover{ background:#fff; color:#0a2a0a; transform:translateY(-2px); }

/* Grid */
.jf-grid{ display:grid; grid-template-columns:1.6fr 1fr 1fr 1.4fr; gap:40px; padding-bottom:44px; }
.jf-col h4{ color:#fff; font-size:17px; font-weight:700; margin:0 0 22px; position:relative; padding-bottom:12px; }
.jf-col h4::after{ content:""; position:absolute; left:0; bottom:0; width:34px; height:2px; background:#4F9F2A; }
.jf-logo{ max-height:52px; width:auto; margin-bottom:20px; }
.jf-about p{ font-size:14.5px; line-height:1.75; color:#a9bd9c; margin:0 0 22px; max-width:340px; }
.jf-social{ display:flex; gap:10px; }
.jf-social a{
  width:40px; height:40px; border-radius:10px; display:flex; align-items:center; justify-content:center;
  background:rgba(255,255,255,.07); color:#cdddc2; text-decoration:none; transition:.22s; font-size:15px;
}
.jf-social a:hover{ background:#4F9F2A; color:#fff; transform:translateY(-3px); }

.jf-links{ list-style:none; padding:0; margin:0; }
.jf-links li{ margin-bottom:13px; }
.jf-links a{ color:#a9bd9c; text-decoration:none; font-size:14.5px; transition:.2s; display:inline-flex; align-items:center; }
.jf-links a::before{ content:"\203A"; font-weight:700; margin-right:10px; color:#4F9F2A; font-size:16px; line-height:1; transition:margin .2s; }
.jf-links a:hover{ color:#fff; }
.jf-links a:hover::before{ margin-right:14px; }

.jf-contact-list{ list-style:none; padding:0; margin:0 0 22px; }
.jf-contact-list li{ display:flex; align-items:flex-start; gap:13px; margin-bottom:16px; font-size:14.5px; color:#bccdb0; line-height:1.5; }
.jf-contact-list li i{ color:#9ed46a; font-size:15px; margin-top:3px; flex:0 0 auto; width:18px; text-align:center; }
.jf-contact-list a{ color:#bccdb0; text-decoration:none; transition:.2s; }
.jf-contact-list a:hover{ color:#fff; }
.jf-wa-btn{
  display:inline-flex; align-items:center; gap:9px; background:#25D366; color:#fff;
  padding:12px 20px; border-radius:10px; font-weight:600; font-size:14.5px; text-decoration:none; transition:.2s;
}
.jf-wa-btn:hover{ background:#1fb457; color:#fff; transform:translateY(-2px); }

.jf-bottom{
  display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap;
  padding-top:26px; border-top:1px solid rgba(255,255,255,.1); font-size:13.5px; color:#8aa07c;
}
.jf-slogan b{ color:#4F9F2A; }
.jf-credit{ display:inline-flex; align-items:center; gap:9px; color:#8aa07c; text-decoration:none; transition:opacity .2s; }
.jf-credit span{ font-size:12.5px; letter-spacing:.3px; }
.jf-credit img{ height:26px; width:auto; opacity:.85; transition:opacity .2s; }
.jf-credit:hover{ color:#cdddc2; }
.jf-credit:hover img{ opacity:1; }
.jf-bolgeler{ padding:20px 0 4px; margin-top:14px; border-top:1px solid rgba(255,255,255,.1); font-size:13px; line-height:1.9; color:#8aa07c; }
.jf-bolgeler-lbl{ color:#cdddc2; font-weight:600; margin-right:6px; }
.jf-bolgeler a{ color:#9fb592; text-decoration:none; }
.jf-bolgeler a:hover{ color:#fff; }

@media (max-width: 991px){
  .jf-grid{ grid-template-columns:1fr 1fr; gap:34px 28px; }
  .jf-about{ grid-column:1 / -1; }
  .jf-cta-txt h3{ font-size:22px; }
}
@media (max-width: 575px){
  .jf-grid{ grid-template-columns:1fr; gap:30px; }
  .jf-cta{ padding:32px 0; margin-bottom:38px; }
  .jf-cta-btn{ width:100%; justify-content:center; }
  .jf-bottom{ flex-direction:column; justify-content:center; text-align:center; gap:14px; }
  .jf-credit img{ height:30px; }
  .jasmin-footer{ padding-bottom:84px; } /* mobil alt menü için pay */
}

/* ============ HEADER ÜST BİLGİ ŞERİDİ (top bar) ============ */
.jasmin-topbar{ border-bottom:1px solid rgba(255,255,255,.12); background:rgba(0,0,0,.22); }
.jasmin-topbar .jtb-inner{ display:flex; align-items:center; justify-content:space-between; padding:10px 0; font-size:13.5px; }
.jtb-left{ display:flex; align-items:center; gap:26px; flex-wrap:wrap; }
.jtb-left a, .jtb-left span{ color:#dceacf; text-decoration:none; display:inline-flex; align-items:center; gap:8px; line-height:1; }
.jtb-left a:hover{ color:#9ed46a; }
.jtb-left i{ color:#9ed46a; font-size:13px; }
.jtb-right{ display:flex; align-items:center; gap:13px; }
.jtb-follow{ color:#9fb892; font-size:12.5px; }
.jtb-right a{ color:#dceacf; font-size:13.5px; transition:.2s; width:26px; height:26px; display:inline-flex; align-items:center; justify-content:center; }
.jtb-right a:hover{ color:#9ed46a; transform:translateY(-2px); }
/* Sticky olunca üst şerit gizlensin (sadece kompakt header kalsın) */
.vl-header-area.header-sticky .jasmin-topbar{ display:none !important; }

/* Top bar masaüstünde header'ı uzatıyor → hero/banner üst boşluğunu artır */
@media (min-width: 992px){
  body:not(.jasmin-solid-header) .hero7-area{ padding-top:150px !important; }
  .jasmin-solid-header .jasmin-banner{ padding-top:188px; }
}

/* ============ HEADER MENÜ — tek satır (taşma engeli) ============ */
@media (min-width: 1200px){
  .vl-main-menu nav > ul{
    display:flex !important; flex-wrap:nowrap !important;
    justify-content:center; align-items:center; margin:0; padding:0;
  }
  .vl-main-menu nav > ul > li{ white-space:nowrap; }
  .vl-main-menu nav > ul > li > a{ padding:10px 13px !important; font-size:15px; }
}
@media (min-width: 1200px) and (max-width: 1399px){
  .vl-main-menu nav > ul > li > a{ padding:10px 10px !important; font-size:14.5px; }
}

/* ============ HERO (yeniden tasarım) ============ */
.jasmin-hero{
  position:relative; min-height:100svh; display:flex; align-items:center;
  overflow:hidden; padding:140px 0 90px;
}
.jh-video{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; }
.jh-overlay{
  position:absolute; inset:0; z-index:1;
  background:linear-gradient(115deg, rgba(5,24,10,.88) 0%, rgba(6,28,12,.66) 48%, rgba(6,28,12,.45) 100%);
}
.jasmin-hero .container{ position:relative; z-index:2; }
.jh-content{ max-width:700px; color:#fff; }
.jh-badge{
  display:inline-flex; align-items:center; gap:9px;
  background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.22);
  padding:9px 18px; border-radius:30px; font-size:13.5px; color:#eaf6df; backdrop-filter:blur(4px);
}
.jh-dot{ width:8px; height:8px; border-radius:50%; background:#9ed46a; box-shadow:0 0 0 4px rgba(158,212,106,.3); }
.jh-content h1{
  color:#fff; font-size:clamp(34px,5vw,64px); line-height:1.08; font-weight:800;
  margin:24px 0 18px; letter-spacing:-.5px;
}
.jh-content > p{ font-size:18px; line-height:1.7; color:rgba(255,255,255,.9); margin:0 0 36px; max-width:560px; }
.jh-btns{ display:flex; gap:14px; flex-wrap:wrap; margin-bottom:48px; }
.jh-btn{ display:inline-flex; align-items:center; gap:10px; padding:16px 30px; border-radius:40px; font-weight:700; font-size:16px; text-decoration:none; transition:.25s; }
.jh-btn.primary{ background:#4F9F2A; color:#fff; box-shadow:0 12px 30px rgba(79,159,42,.42); }
.jh-btn.primary:hover{ background:#3d8420; color:#fff; transform:translateY(-3px); }
.jh-btn.ghost{ background:rgba(255,255,255,.1); color:#fff; border:1px solid rgba(255,255,255,.38); backdrop-filter:blur(4px); }
.jh-btn.ghost:hover{ background:#fff; color:#0a2a0a; }
.jh-stats{ display:flex; gap:42px; flex-wrap:wrap; margin-bottom:32px; }
.jh-stat b{ display:block; font-size:40px; font-weight:800; color:#9ed46a; line-height:1; }
.jh-stat span{ font-size:14px; color:rgba(255,255,255,.82); }
.jh-chips{ display:flex; gap:10px; flex-wrap:wrap; }
.jh-chips span{ font-size:13px; color:#eaf6df; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.18); padding:7px 15px; border-radius:30px; }
.jh-scroll{
  position:absolute; bottom:26px; left:50%; transform:translateX(-50%); z-index:3;
  width:44px; height:44px; border-radius:50%; border:1px solid rgba(255,255,255,.4);
  display:flex; align-items:center; justify-content:center; color:#fff; text-decoration:none;
  animation:jhBounce 2s infinite;
}
.jh-scroll:hover{ background:rgba(255,255,255,.15); color:#fff; }
@keyframes jhBounce{ 0%,100%{ transform:translateX(-50%) translateY(0); } 50%{ transform:translateX(-50%) translateY(8px); } }

@media (max-width:991px){
  .jasmin-hero{ min-height:90svh; padding:120px 0 80px; }
  .jh-content h1{ font-size:clamp(30px,8vw,46px); }
  .jh-content > p{ font-size:16px; margin-bottom:30px; }
  .jh-stats{ gap:28px; margin-bottom:28px; }
  .jh-stat b{ font-size:30px; }
  .jh-btns{ margin-bottom:38px; }
}
@media (max-width:575px){
  .jh-btn{ padding:14px 22px; font-size:15px; flex:1 1 auto; justify-content:center; }
  .jh-stat b{ font-size:26px; }
  .jh-chips span{ font-size:12px; padding:6px 12px; }
}

/* ============ LOGO KAYIKLIK DÜZELTMESİ ============ */
/* Header: tema .homepage7-body .vl-transparent-header img'e width:216px+contain veriyor → dar
   logoyu kutuda ortalayıp sağa kaydırıyordu. Gerçek orana al, sola yasla. */
.vl-header-area .vl-logo img,
.homepage7-body .vl-transparent-header .vl-logo img,
.homepage7-body .header-sticky .vl-logo img{
  width:auto !important; height:auto !important; max-height:46px !important; object-fit:contain;
}
.vl-logo{ display:inline-flex; align-items:center; }
/* Preloader: tema left:52% kullanıyordu (sağa kayık) → tam ortala */
.preloader #loading-icon{ left:50% !important; top:50% !important; width:auto !important; height:auto !important; }
.preloader #loading-icon img{ max-width:130px !important; height:auto !important; display:block; }

/* ============ ANASAYFA HAKKIMIZDA + HİZMETLER (yeni) ============ */
.jx-tag{ display:inline-flex; align-items:center; gap:9px; color:#4F9F2A; font-weight:700; font-size:13px; letter-spacing:1px; text-transform:uppercase; }
.jx-dot{ width:8px; height:8px; border-radius:50%; background:#4F9F2A; }
.jx-btn{ display:inline-flex; align-items:center; gap:10px; background:#4F9F2A; color:#fff; padding:14px 28px; border-radius:40px; font-weight:700; font-size:15px; text-decoration:none; transition:.25s; }
.jx-btn:hover{ background:#3d8420; color:#fff; transform:translateY(-2px); }

/* Hakkımızda */
.jasmin-about{ padding:100px 0; background:#fff; }
.ja-grid{ display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.ja-visual{ position:relative; }
.ja-visual img{ width:100%; height:480px; object-fit:cover; border-radius:24px; box-shadow:0 30px 60px rgba(10,40,15,.18); }
.ja-exp{ position:absolute; right:-18px; bottom:28px; background:#4F9F2A; color:#fff; border-radius:18px; padding:18px 24px; text-align:center; box-shadow:0 16px 36px rgba(79,159,42,.42); display:flex; align-items:center; gap:10px; }
.ja-exp b{ font-size:40px; font-weight:800; line-height:1; }
.ja-exp span{ font-size:12.5px; text-align:left; line-height:1.2; }
.ja-content h2{ font-size:38px; color:#16240f; font-weight:800; margin:16px 0 18px; line-height:1.2; }
.ja-content > p{ color:#5d6b50; font-size:16px; line-height:1.8; margin-bottom:26px; }
.ja-feat{ list-style:none; padding:0; margin:0 0 30px; display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.ja-feat li{ display:flex; align-items:center; gap:10px; color:#2c3a22; font-weight:500; font-size:15px; }
.ja-feat i{ color:#4F9F2A; font-size:18px; flex:0 0 auto; }

/* Hizmetler */
.jasmin-services{ padding:100px 0; background:#f4f8ef; }
.js-head{ text-align:center; max-width:640px; margin:0 auto 50px; }
.js-head h2{ font-size:38px; color:#16240f; font-weight:800; margin:14px 0 12px; }
.js-head p{ color:#5d6b50; font-size:16px; line-height:1.7; margin:0; }
.js-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.js-card{ display:block; background:#fff; border:1px solid #e7efdf; border-radius:18px; overflow:hidden; text-decoration:none; transition:.28s; }
.js-card:hover{ transform:translateY(-8px); box-shadow:0 22px 44px rgba(10,40,15,.15); border-color:#cfe6bd; }
.js-photo{ position:relative; aspect-ratio:16/11; overflow:hidden; background:#1c4f1a; }
.js-photo img{ width:100%; height:100%; object-fit:cover; transition:transform .55s ease; }
.js-card:hover .js-photo img{ transform:scale(1.07); }
.js-num{ position:absolute; top:14px; left:14px; min-width:40px; height:40px; padding:0 12px; border-radius:11px; background:rgba(79,159,42,.94); color:#fff; font-weight:800; font-size:15px; display:flex; align-items:center; justify-content:center; box-shadow:0 6px 16px rgba(0,0,0,.25); }
.js-body{ padding:22px 24px 26px; }
.js-card h3{ font-size:20px; color:#16240f; margin:0 0 10px; font-weight:700; }
.js-card p{ color:#5d6b50; font-size:14.5px; line-height:1.7; margin:0 0 16px; }
.js-more{ color:#4F9F2A; font-weight:700; font-size:14px; display:inline-flex; align-items:center; gap:8px; transition:.2s; }
.js-card:hover .js-more{ gap:12px; }
.js-cta{ text-align:center; margin-top:46px; }

@media (max-width:991px){
  .jasmin-about,.jasmin-services{ padding:70px 0; }
  .ja-grid{ grid-template-columns:1fr; gap:46px; }
  .ja-visual img{ height:360px; }
  .ja-content h2,.js-head h2{ font-size:27px; }
  .js-grid{ grid-template-columns:1fr 1fr; gap:18px; }
  .js-card{ padding:28px 24px; }
}
@media (max-width:575px){
  .ja-feat{ grid-template-columns:1fr; }
  .js-grid{ grid-template-columns:1fr; }
  .ja-visual img{ height:290px; }
  .ja-exp{ right:14px; bottom:16px; padding:14px 18px; }
  .ja-exp b{ font-size:32px; }
  .js-head h2,.ja-content h2{ font-size:25px; }
}

/* About: kişisel imza dokunuşu */
.ja-cta-row{ display:flex; align-items:center; gap:24px; flex-wrap:wrap; }
.ja-sign{ display:flex; flex-direction:column; padding-left:24px; border-left:2px solid #e0ebd4; }
.ja-sign-name{ font-family:Georgia,'Times New Roman',serif; font-style:italic; font-size:20px; color:#2f6e1f; font-weight:600; }
.ja-sign-role{ font-size:12.5px; color:#8a9a7c; }
@media (max-width:575px){ .ja-sign{ padding-left:0; border-left:0; } }

/* ============ HAKKIMIZDA sayfası ek bölümler ============ */
.jmv-grid{ display:grid; grid-template-columns:1fr 1fr; gap:28px; }
.jmv-card{ background:#fff; border:1px solid #e7efdf; border-radius:20px; padding:40px 36px; }
.jmv-ico{ width:64px; height:64px; border-radius:16px; background:linear-gradient(135deg,#4F9F2A,#2f6e1f); color:#fff; display:flex; align-items:center; justify-content:center; font-size:26px; margin-bottom:20px; }
.jmv-card h3{ font-size:24px; color:#16240f; margin:0 0 12px; font-weight:700; }
.jmv-card p{ color:#5d6b50; font-size:15.5px; line-height:1.8; margin:0; }

.jasmin-stats-band{ background:linear-gradient(135deg,#0d2e10,#1c4f1a); padding:64px 0; }
.jsb-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:30px; }
.jsb-item{ text-align:center; color:#fff; }
.jsb-item i{ font-size:28px; color:#9ed46a; margin-bottom:14px; }
.jsb-item b{ display:block; font-size:44px; font-weight:800; color:#fff; line-height:1; margin-bottom:6px; }
.jsb-item span{ font-size:14px; color:#bccdb0; }

.jproc-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:26px; }
.jproc-step{ position:relative; background:#fff; border:1px solid #e7efdf; border-radius:18px; padding:36px 26px 30px; text-align:center; overflow:hidden; }
.jproc-num{ position:absolute; top:14px; right:20px; font-size:44px; font-weight:800; color:#eef5e6; line-height:1; }
.jproc-ico{ position:relative; width:66px; height:66px; border-radius:50%; background:#eef5e6; color:#2f6e1f; display:flex; align-items:center; justify-content:center; font-size:25px; margin:0 auto 20px; }
.jproc-step h3{ font-size:18px; color:#16240f; margin:0 0 10px; font-weight:700; }
.jproc-step p{ color:#5d6b50; font-size:14px; line-height:1.65; margin:0; }

.jabout-cta{ padding:80px 0; }
.jac-inner{ background:linear-gradient(120deg,#1c4f1a,#0a2a0a); border-radius:26px; padding:52px 56px; display:flex; align-items:center; justify-content:space-between; gap:30px; flex-wrap:wrap; position:relative; overflow:hidden; }
.jac-inner::after{ content:""; position:absolute; right:-80px; top:-80px; width:280px; height:280px; border-radius:50%; background:radial-gradient(circle,rgba(158,212,106,.2),transparent 70%); }
.jac-inner h2{ color:#fff; font-size:30px; margin:0 0 8px; position:relative; z-index:1; }
.jac-inner > div:first-child p{ color:#bccdb0; margin:0; font-size:15.5px; position:relative; z-index:1; max-width:520px; }
.jac-btns{ display:flex; align-items:center; gap:18px; flex-wrap:wrap; position:relative; z-index:1; }
.jac-call{ color:#fff; font-weight:700; font-size:17px; text-decoration:none; display:inline-flex; align-items:center; gap:9px; }
.jac-call i{ color:#9ed46a; }
.jac-call:hover{ color:#9ed46a; }

@media(max-width:991px){
  .jmv-grid{ grid-template-columns:1fr; gap:18px; }
  .jsb-grid{ grid-template-columns:1fr 1fr; gap:36px 20px; }
  .jproc-grid{ grid-template-columns:1fr 1fr; gap:18px; }
  .jac-inner{ padding:38px 30px; }
  .jac-inner h2{ font-size:24px; }
}
@media(max-width:575px){
  .jproc-grid{ grid-template-columns:1fr; }
  .jsb-item b{ font-size:34px; }
  .jac-inner{ flex-direction:column; align-items:flex-start; }
}

/* ============ HİZMET BÖLGELERİ / YEREL SEO SAYFALARI ============ */
.loc-wrap{ padding:54px 0 70px; }
.loc-intro{ max-width:880px; margin:0 auto 40px; }
.loc-tag{ display:inline-flex; align-items:center; gap:7px; background:#eaf4df; color:#2f6e1f; font-weight:600; font-size:13.5px; padding:6px 14px; border-radius:30px; margin-bottom:16px; }
.loc-lead{ font-size:19px; line-height:1.6; color:#2c3a24; font-weight:600; margin-bottom:16px; }
.loc-intro p{ font-size:16px; line-height:1.8; color:#4b5944; margin-bottom:14px; }
.loc-h2{ font-size:27px; color:#1c4f1a; font-weight:800; margin:42px 0 22px; }
.loc-services{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.loc-svc{ background:#fff; border:1px solid #e3ecd8; border-radius:14px; padding:24px 22px; transition:.2s; }
.loc-svc:hover{ box-shadow:0 10px 30px rgba(31,92,24,.1); transform:translateY(-3px); border-color:#cfe0bd; }
.loc-svc-ic{ width:50px; height:50px; border-radius:12px; background:linear-gradient(135deg,#4F9F2A,#1F5C18); color:#fff; display:flex; align-items:center; justify-content:center; font-size:21px; margin-bottom:14px; }
.loc-svc h3{ font-size:17.5px; color:#23331b; font-weight:700; margin-bottom:8px; }
.loc-svc p{ font-size:14.5px; line-height:1.65; color:#5a6a4f; margin:0; }
.loc-grid2{ display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:8px; }
.loc-card{ background:#f7faf2; border:1px solid #e3ecd8; border-radius:16px; padding:26px 26px 30px; }
.loc-card .loc-h2{ margin-top:0; font-size:22px; }
.loc-ticks{ list-style:none; padding:0; margin:0; }
.loc-ticks li{ display:flex; gap:10px; align-items:flex-start; font-size:15.5px; line-height:1.55; color:#3d4a32; padding:8px 0; border-bottom:1px dashed #dde7d0; }
.loc-ticks li:last-child{ border-bottom:0; }
.loc-ticks i{ color:#4F9F2A; margin-top:3px; }
.loc-areas p{ font-size:15px; color:#4b5944; margin-bottom:14px; }
.loc-chips,.loc-hub-chips{ display:flex; flex-wrap:wrap; gap:8px; }
.loc-chip{ background:#fff; border:1px solid #d8e6cb; color:#2f6e1f; font-size:13.5px; font-weight:600; padding:6px 13px; border-radius:8px; }
.loc-faq details{ background:#fff; border:1px solid #e3ecd8; border-radius:12px; padding:0 20px; margin-bottom:12px; }
.loc-faq summary{ cursor:pointer; font-weight:700; color:#23331b; font-size:16px; padding:18px 0; list-style:none; display:flex; justify-content:space-between; align-items:center; }
.loc-faq summary::-webkit-details-marker{ display:none; }
.loc-faq summary::after{ content:"\f078"; font-family:"Font Awesome 6 Free"; font-weight:900; color:#4F9F2A; font-size:13px; transition:.2s; }
.loc-faq details[open] summary::after{ transform:rotate(180deg); }
.loc-faq p{ font-size:15px; line-height:1.75; color:#51604a; padding:0 0 18px; margin:0; }
.loc-cta{ display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; background:linear-gradient(135deg,#1c4f1a,#2f6e1f); border-radius:18px; padding:34px 38px; margin:46px 0 10px; }
.loc-cta h2{ color:#fff; font-size:24px; font-weight:800; margin:0 0 6px; }
.loc-cta p{ color:#d6e7c9; margin:0; font-size:15.5px; }
.loc-cta-btns{ display:flex; gap:12px; flex-wrap:wrap; }
.loc-btn{ display:inline-flex; align-items:center; gap:9px; padding:13px 22px; border-radius:10px; font-weight:700; text-decoration:none; font-size:15px; }
.loc-btn-line{ background:rgba(255,255,255,.12); color:#fff; border:1px solid rgba(255,255,255,.4); }
.loc-btn-fill{ background:#fff; color:#1c4f1a; }
.loc-btn-fill:hover{ background:#eaf4df; color:#1c4f1a; }
.loc-others{ margin-top:46px; }
.loc-other-links{ display:flex; flex-wrap:wrap; gap:10px; }
.loc-other-links a{ display:inline-flex; align-items:center; gap:8px; background:#f1f7ea; border:1px solid #dde7d0; color:#2f6e1f; padding:10px 16px; border-radius:9px; font-weight:600; font-size:14.5px; text-decoration:none; transition:.2s; }
.loc-other-links a:hover{ background:#4F9F2A; color:#fff; border-color:#4F9F2A; }
.loc-other-links .loc-all{ background:#1c4f1a; color:#fff; border-color:#1c4f1a; }
/* Hub liste */
.loc-hub-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.loc-hub-card{ display:flex; flex-direction:column; background:#fff; border:1px solid #e3ecd8; border-radius:16px; padding:24px; text-decoration:none; transition:.2s; }
.loc-hub-card:hover{ box-shadow:0 14px 36px rgba(31,92,24,.13); transform:translateY(-4px); border-color:#cfe0bd; }
.loc-hub-top{ display:flex; align-items:center; justify-content:space-between; margin-bottom:14px; }
.loc-hub-ic{ width:44px; height:44px; border-radius:11px; background:linear-gradient(135deg,#4F9F2A,#1F5C18); color:#fff; display:flex; align-items:center; justify-content:center; font-size:19px; }
.loc-hub-tip{ font-size:12.5px; font-weight:600; color:#7d8c6e; text-transform:capitalize; background:#f1f7ea; padding:4px 11px; border-radius:20px; }
.loc-hub-card h2{ font-size:20px; color:#1c4f1a; font-weight:800; margin:0 0 8px; }
.loc-hub-card p{ font-size:14.5px; line-height:1.6; color:#5a6a4f; margin:0 0 14px; flex:1; }
.loc-hub-chips{ margin-bottom:16px; }
.loc-hub-chips span{ background:#f1f7ea; color:#2f6e1f; font-size:12.5px; font-weight:600; padding:5px 11px; border-radius:7px; }
.loc-hub-go{ display:inline-flex; align-items:center; gap:7px; color:#4F9F2A; font-weight:700; font-size:14.5px; }
@media(max-width:991px){
  .loc-services,.loc-hub-grid{ grid-template-columns:repeat(2,1fr); }
}
@media(max-width:767px){
  .loc-grid2{ grid-template-columns:1fr; }
  .loc-cta{ padding:28px 24px; }
}
@media(max-width:575px){
  .loc-services,.loc-hub-grid{ grid-template-columns:1fr; }
  .loc-h2{ font-size:23px; }
  .loc-lead{ font-size:17px; }
}
