/* =========================================================
   LISAM TOURS KENYA - Custom Design System
   Built on Bootstrap grid + Swiper + AOS + Font Awesome
   ========================================================= */

:root{
  /* Lisam Tours Kenya brand palette - extracted from the official logo
     (dark badge green, sunset red/gold, mid-tone path green). */
  --lt-navy:        #04211A;   /* logo dark green - headings, wordmark */
  --lt-navy-dark:   #04211A;   /* logo dark green - primary buttons / nav band / brand emphasis */
  --lt-blue:        #0E7A4E;   /* logo mid-green (path/gradient) - links / active state */
  --lt-blue-dark:   #075C39;   /* darker green - hover state */
  --lt-cyan:        #FEC01A;   /* logo sunset gold - accents, highlights, transitions */
  --lt-cyan-light:  #FDF1D2;   /* light gold tint - soft accent backgrounds */
  --lt-gold:        #FEC01A;   /* logo sunset gold - used sparingly */
  --lt-red:         #F92232;   /* logo sunset red - rare, high-impact accents only */

  --lt-ink:         #26291F;
  --lt-body:        #55564D;
  --lt-muted:       #8B8676;
  --lt-bg-soft:     #F7F3E9;   /* sand */
  --lt-bg-navy:     #04211A;   /* logo dark green section background */
  --lt-border:      #E5DDC9;
  --lt-white:       #FFFFFF;

  --lt-radius:      10px;
  --lt-radius-sm:   6px;
  --lt-shadow:      0 12px 34px rgba(4,33,26,0.12);
  --lt-shadow-sm:   0 4px 14px rgba(4,33,26,0.08);

  --lt-font-head:   'Poppins', sans-serif;
  --lt-font-body:   'Poppins', sans-serif;
}

html{scroll-behavior:smooth;}
@media(max-width:767px){
  .container{padding-left:20px !important; padding-right:20px !important;}
}
body{
  font-family:var(--lt-font-body);
  color:var(--lt-body);
  font-size:16px;
  line-height:1.7;
  background:var(--lt-white);
  overflow-x:hidden;
}
h1,h2,h3,h4,h5,h6{
  font-family:var(--lt-font-head);
  color:var(--lt-navy);
  font-weight:700;
  line-height:1.25;
  margin:0 0 .6em;
}
h2, h3, h4, h5{text-transform:uppercase; letter-spacing:.01em;}
a{color:var(--lt-blue); text-decoration:none; transition:.25s ease;}
a:hover{color:var(--lt-cyan);}
img{max-width:100%; height:auto; display:block;}
.section-pad{padding:96px 0;}
.section-pad-sm{padding:60px 0;}
@media(max-width:991px){ .section-pad{padding:64px 0;} .section-pad-sm{padding:44px 0;} }
.bg-soft{background:var(--lt-bg-soft);}
.bg-navy{background:var(--lt-bg-navy); color:#D9C9A3;}
.bg-navy h1,.bg-navy h2,.bg-navy h3,.bg-navy h4{color:#fff;}
.text-cyan{color:var(--lt-cyan) !important;}
.text-muted-lt{color:var(--lt-muted);}

/* ---------- Eyebrow / Section heading ---------- */
.eyebrow{
  display:block;
  font-family:var(--lt-font-body); font-weight:600; font-size:14.5px;
  letter-spacing:.02em; text-transform:none;
  color:var(--lt-blue); background:none;
  padding:0; border-radius:0; margin-bottom:14px;
}
.bg-navy .eyebrow{color:#E3D5B0;}
.section-title{max-width:720px;}
.section-title h2{font-size:clamp(28px,3.2vw,42px);}
.section-title.mx-auto{margin-left:auto; margin-right:auto; text-align:center;}

/* ---------- Buttons ---------- */
.btn-lt{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  font-family:var(--lt-font-head); font-weight:600; font-size:15px;
  padding:14px 30px; border-radius:99px; border:2px solid transparent;
  transition:transform .2s ease, background-color .2s ease, color .2s ease, border-color .2s ease, box-shadow .2s ease;
  white-space:nowrap; cursor:pointer;
}
.btn-lt:hover{transform:scale(.96);}
.btn-lt:active{transform:scale(.92);}
.btn-lt-primary{background:var(--lt-blue); color:#fff;}
.btn-lt-primary:hover{background:var(--lt-blue-dark); color:#fff;}
.btn-lt-outline{border-color:rgba(255,255,255,.55); color:#fff; background:transparent;}
.btn-lt-outline:hover{background:#fff; color:var(--lt-navy); border-color:#fff;}
.btn-lt-outline-blue{border-color:var(--lt-blue); color:var(--lt-blue); background:transparent;}
.btn-lt-outline-blue:hover{background:var(--lt-blue); color:#fff;}
.btn-lt-gold{background:#fff; color:var(--lt-navy-dark);}
.btn-lt-gold:hover{background:#C6A15B; color:#fff;}
.btn-lt-sm{padding:10px 22px; font-size:14px;}

/* =========================================================
   HEADER / NAVIGATION
   ========================================================= */
.lt-topbar-thin{
  background:var(--lt-navy-dark); font-size:15px; padding:10px 0;
}
.lt-topbar-thin a{color:#fff;}
.lt-topbar-thin a:hover{color:var(--lt-gold);}
.lt-topbar-links{display:inline-flex; align-items:center; gap:16px; font-weight:400; font-size:15px; margin-right:0;}
.lt-topbar-links a{opacity:.95; font-weight:400;}
.lt-topbar-links span{color:#B9C0AE; opacity:1;}
.lt-topbar-thin .lt-social{display:inline-flex; align-items:center; gap:22px;}
.lt-topbar-thin .lt-social a{
  display:inline-flex; align-items:center; justify-content:center; color:#fff; font-size:16px;
}
.lt-topbar-thin .lt-social a:hover{color:var(--lt-gold);}
.lt-topbar-mobile{padding:8px 0; font-size:14px;}
.lt-topbar-mobile .lt-social a{font-size:15px;}

.lt-header{
  background:#fff; position:relative; z-index:1002;
}
.lt-header-row{display:flex; align-items:center; justify-content:space-between; gap:18px; padding-top:10px; padding-bottom:10px;}
.lt-logo{display:flex; align-items:center; flex:0 0 auto;}
.lt-logo img{height:108px; width:auto; max-width:340px; object-fit:contain;}

.lt-header-contact{align-items:center; gap:34px; flex:1 1 auto; justify-content:center;}
.lt-header-contact-item{display:flex; align-items:center; gap:12px;}
.lt-header-contact-ic{
  display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto;
  width:38px; height:38px; border-radius:50%; border:2px solid var(--lt-blue); color:var(--lt-blue); font-size:15px;
}
.lt-header-contact-item a{display:block; color:var(--lt-navy); font-weight:400; font-size:15px; line-height:1.4;}
.lt-header-contact-item a:hover{color:var(--lt-blue);}
.lt-header-contact-sub{color:var(--lt-blue) !important; font-weight:400 !important; font-size:13px !important;}

.lt-header-actions{display:flex; align-items:center; gap:14px; flex:0 0 auto;}
.btn-lt-header{
  background:var(--lt-gold); color:var(--lt-navy); border-radius:8px; padding:9px 20px; font-size:14px; font-weight:700;
}
.btn-lt-header:hover{background:#A9843F; color:var(--lt-navy);}
.lt-menu-toggle{
  display:none; flex-direction:column; gap:5px; background:none; border:none; padding:8px;
}
.lt-menu-toggle span{width:26px; height:2.5px; background:var(--lt-navy); border-radius:2px;}

/* Nav band: white/page background section with a centered, boxed (rounded)
   colored menu - not a full-width band, per the reference screenshot */
.lt-navband{
  background:#fff; position:sticky; top:0; z-index:1001; padding:14px 0 0;
}
.lt-navband .container{display:flex; justify-content:flex-start;}
.lt-nav{display:flex; align-items:center; gap:4px; list-style:none; margin:0; padding:0; position:relative;}
@media(min-width:1200px){
  .lt-nav{
    background:var(--lt-navy-dark); border-radius:14px; padding:6px 14px;
    box-shadow:0 10px 26px rgba(51,51,51,0.16); width:96%; justify-content:flex-start; gap:10px;
  }
  /* About Us and Travel Guide move to the top bar once the pill nav is active,
     so the nav band doesn't have to fit 9 items on one line. They remain in
     the off-canvas menu below this breakpoint. */
  .lt-nav > li.lt-nav-desktop-hide{display:none;}
}
.lt-nav > li{position:relative; display:flex; align-items:center;}
.lt-nav > li > a{
  display:flex; align-items:center; gap:5px; padding:15px 18px; font-family:var(--lt-font-head); font-weight:600;
  font-size:15.5px; color:#fff; border-radius:10px; position:relative;
}
.lt-nav > li > a:hover{background:none;}
.lt-nav > li.active > a{background:none;}
.lt-nav > li.active > .lt-dropdown-toggle{color:#fff;}
.lt-dropdown-toggle{
  background:none; border:none; padding:6px; margin-left:-8px; color:#fff; cursor:pointer;
  display:flex; align-items:center; justify-content:center; font-size:11px; pointer-events:none;
}
.lt-dropdown-toggle i{transition:transform .2s ease;}
/* Sliding hover indicator - follows the cursor across top-level nav items (desktop only) */
.lt-nav-indicator{
  position:absolute; bottom:0; left:0; height:3px; background:#fff;
  border-radius:0; opacity:0; transition:left .28s ease, width .28s ease, opacity .2s ease; pointer-events:none;
}
.lt-nav-indicator.show{opacity:1;}
.lt-dropdown{
  position:absolute; top:calc(100% + 0px); left:0; min-width:220px; background:#fff;
  border-radius:0 0 12px 12px; box-shadow:var(--lt-shadow); padding:10px; opacity:0; visibility:hidden;
  transform:translateY(8px); transition:.2s ease; list-style:none;
}
.lt-nav > li:hover > .lt-dropdown{opacity:1; visibility:visible; transform:translateY(0);}
.lt-dropdown li a{display:block; padding:10px 14px; border-radius:8px; color:var(--lt-navy); font-size:14.5px; font-weight:500;}
.lt-dropdown li a:hover{background:var(--lt-cyan-light); color:var(--lt-blue);}

@media(max-width:1199px){
  .lt-nav{position:fixed; top:0; right:-320px; height:100vh; width:300px; max-width:88vw; background:#fff;
    flex-direction:column; align-items:stretch; padding:90px 20px 30px; box-shadow:-10px 0 30px rgba(0,0,0,.12);
    transition:.3s ease; overflow-y:auto; z-index:1001;}
  .lt-nav.open{right:0;}
  .lt-nav > li{justify-content:space-between; border-bottom:1px solid var(--lt-border);}
  .lt-nav > li > a{padding:14px 12px; flex:1; color:var(--lt-navy);}
  .lt-nav > li > a:hover, .lt-nav > li.active > a{background:none; color:var(--lt-blue);}
  .lt-nav-indicator{display:none;}
  .lt-dropdown-toggle{
    pointer-events:auto; width:46px; height:46px; margin-left:0; font-size:15px; border-radius:8px; color:var(--lt-navy);
  }
  .lt-dropdown-toggle:active{background:var(--lt-bg-soft);}
  .lt-nav > li.open .lt-dropdown-toggle i{transform:rotate(180deg);}
  .lt-dropdown{position:static; opacity:1; visibility:visible; transform:none; box-shadow:none; display:none; padding-left:10px; width:100%;}
  .lt-nav > li.open .lt-dropdown{display:block;}
  .lt-nav > li{flex-wrap:wrap;}
  .lt-menu-toggle{display:flex;}
  .lt-nav-backdrop{display:none; position:fixed; inset:0; background:rgba(6,20,45,.5); z-index:1000;}
  .lt-nav-backdrop.open{display:block;}
  .lt-header-actions .btn-lt{display:none;}
  .lt-logo img{height:72px; max-width:220px;}
}
.lt-nav-close{display:none;}
@media(max-width:1199px){
  .lt-nav-close{display:flex; align-items:center; justify-content:center; width:38px;height:38px; border-radius:50%;
    background:var(--lt-bg-soft); border:none; position:absolute; top:20px; right:20px; font-size:18px; color:var(--lt-navy);}
  .lt-nav .lt-nav-mobile-cta{display:block; margin-top:20px;}
}
.lt-nav-mobile-cta{display:none;}

/* =========================================================
   HERO SLIDER
   ========================================================= */
.lt-hero{position:relative; overflow:hidden; background:#fff;}
.lt-hero .swiper-slide, .lt-hero-static{
  min-height:640px; display:flex; align-items:center;
  position:relative; background:#fff; overflow:hidden;
}
@media(max-width:767px){ .lt-hero .swiper-slide, .lt-hero-static{min-height:560px;} }

.lt-hero-photo{
  position:absolute; top:0; right:0; height:100%; width:68%;
  background-size:cover; background-position:center;
  -webkit-mask-image:linear-gradient(90deg, transparent 0%, transparent 3%, rgba(0,0,0,.3) 12%, rgba(0,0,0,.6) 24%, rgba(0,0,0,.88) 36%, #000 50%);
  mask-image:linear-gradient(90deg, transparent 0%, transparent 3%, rgba(0,0,0,.3) 12%, rgba(0,0,0,.6) 24%, rgba(0,0,0,.88) 36%, #000 50%);
}
@media(max-width:991px){ .lt-hero-photo{width:100%; opacity:.55; -webkit-mask-image:none; mask-image:none;} }

.lt-hero-overlay{
  position:absolute; inset:0;
  background:linear-gradient(90deg, #cdd3c4 0%, rgba(255,255,255,.4) 20%, rgba(255,255,255,.05) 32%, rgba(255,255,255,0) 42%);
}
@media(max-width:991px){
  .lt-hero-overlay{background:linear-gradient(180deg, rgba(255,255,255,.55) 0%, rgba(255,255,255,.8) 100%);}
}

.lt-hero-shape{position:absolute; border-radius:50%; opacity:.5; pointer-events:none;}
.lt-hero-content{position:relative; z-index:2; padding:60px 0;}
.lt-hero-eyebrow{
  display:block; font-family:var(--lt-font-body); font-weight:600; font-size:14.5px;
  color:var(--lt-blue); margin-bottom:16px;
}
.lt-hero-content h1, .lt-hero-content h2{
  color:#26291F; font-size:clamp(32px,4.2vw,50px); font-weight:800; max-width:760px; margin-bottom:20px;
  text-transform:none;
}
.lt-hero-content p{color:var(--lt-body); font-size:17.5px; max-width:640px; margin-bottom:14px;}
.lt-hero-content .lt-hero-tagline{
  color:var(--lt-blue); font-weight:600; font-size:15px; margin-bottom:28px; display:block;
}
.lt-hero-btns{display:flex; gap:16px; flex-wrap:wrap;}
.lt-hero-btns .btn-lt{width:auto; flex:0 0 auto;}
.lt-hero .swiper-button-next,.lt-hero .swiper-button-prev{
  width:48px; height:48px; background:#fff; border-radius:50%; color:var(--lt-navy-dark);
  box-shadow:0 6px 20px rgba(51,51,51,.14);
}
.lt-hero .swiper-button-next:after,.lt-hero .swiper-button-prev:after{font-size:15px;}
.lt-hero .swiper-button-next:hover,.lt-hero .swiper-button-prev:hover{background:var(--lt-navy-dark); color:#fff;}
.lt-hero .swiper-pagination-bullet{background:var(--lt-navy-dark); opacity:.25; width:9px; height:9px;}
.lt-hero .swiper-pagination-bullet-active{opacity:1; background:var(--lt-navy-dark); width:26px; border-radius:5px;}
.lt-hero .swiper-pagination{bottom:22px !important;}
@media(max-width:767px){
  .lt-hero .swiper-button-next, .lt-hero .swiper-button-prev{display:none;}
}

/* Scroll-down indicator */
.lt-hero-scroll{
  position:absolute; left:26px; bottom:80px; z-index:5;
  display:flex; flex-direction:column; align-items:center; gap:10px; cursor:pointer;
  color:var(--lt-navy); opacity:.75; transition:.2s ease;
}
.lt-hero-scroll:hover{opacity:1;}
.lt-hero-scroll span{
  writing-mode:vertical-rl; transform:rotate(180deg); font-size:12.5px; font-weight:600;
  letter-spacing:.08em; text-transform:uppercase;
}
.lt-hero-scroll i{font-size:12px; animation:ltScrollBounce 1.8s ease-in-out infinite;}
@keyframes ltScrollBounce{
  0%,100%{transform:translateY(0);}
  50%{transform:translateY(6px);}
}
@media(max-width:575px){ .lt-hero-scroll{display:none;} }

/* Page banner (inner pages) */
.lt-page-banner{
  background:linear-gradient(120deg, var(--lt-navy-dark), var(--lt-blue-dark));
  padding:90px 0 56px; position:relative; overflow:hidden;
}
.lt-page-banner::after{
  content:""; position:absolute; right:-80px; top:-120px; width:340px; height:340px; border-radius:50%;
  background:radial-gradient(circle, rgba(198,161,91,.30), transparent 70%);
}
.lt-page-banner h1{color:#fff; font-size:clamp(28px,3.6vw,44px); margin-bottom:14px;}
.lt-breadcrumb{list-style:none; display:flex; gap:8px; padding:0; margin:0; color:#D9C9A3; font-size:14.5px;}
.lt-breadcrumb a{color:#D9C9A3;}
.lt-breadcrumb a:hover{color:#fff;}
.lt-breadcrumb li:not(:last-child)::after{content:"/"; margin-left:8px; color:#8E9C7E;}
.lt-breadcrumb li:last-child{color:#fff;}

/* =========================================================
   CARDS / COMPONENTS
   ========================================================= */
.lt-card{
  background:#fff; border:1px solid var(--lt-border); border-radius:var(--lt-radius);
  padding:34px 28px; height:100%; transition:.25s ease; box-shadow:var(--lt-shadow-sm);
}
.lt-card:hover{transform:translateY(-6px); box-shadow:var(--lt-shadow); border-color:transparent;}
.lt-card-icon{
  width:56px; height:56px; border-radius:50%; background:var(--lt-navy-dark); color:#fff;
  display:flex; align-items:center; justify-content:center; font-size:22px; margin-bottom:20px;
  box-shadow:0 6px 14px rgba(0,0,0,.16);
}
.lt-card h3, .lt-card h4{font-size:20px; margin-bottom:10px;}
.lt-card p{margin-bottom:0; font-size:15px; color:var(--lt-body);}
.lt-card .lt-card-link{display:inline-flex; align-items:center; gap:6px; margin-top:16px; font-weight:600; font-size:14.5px;}

.lt-value-card{text-align:center; padding:28px 18px;}
.lt-value-card .letter{
  width:56px; height:56px; border-radius:50%; background:var(--lt-navy); color:#fff; font-family:var(--lt-font-head);
  font-weight:700; font-size:22px; display:flex; align-items:center; justify-content:center; margin:0 auto 16px;
}

/* Stat / counter */
.lt-stat{text-align:center; padding:20px 10px;}
.lt-stat .num{font-family:var(--lt-font-head); font-weight:800; font-size:clamp(30px,3.4vw,44px); color:#fff;}
.lt-stat .label{color:#D9C9A3; font-size:14.5px; margin-top:6px;}

/* Why choose */
.lt-check-list{list-style:none; padding:0; margin:0;}
.lt-check-list li{display:flex; gap:14px; margin-bottom:20px; align-items:flex-start;}
.lt-check-list li .ic{
  flex:0 0 22px; width:22px; height:22px; background:none; color:var(--lt-blue);
  display:flex; align-items:center; justify-content:center; font-size:17px; margin-top:2px;
  box-shadow:none;
}
.lt-check-list li h5{margin-bottom:4px; font-size:16.5px;}
.lt-check-list li p{margin:0; font-size:14.5px;}

/* Product detail block (savings/loans) */
.lt-product{
  border:1px solid var(--lt-border); border-radius:16px; overflow:hidden; margin-bottom:28px;
  box-shadow:var(--lt-shadow-sm); background:#fff; transition:transform .25s ease, box-shadow .25s ease;
}
.lt-product:hover{transform:translateY(-4px); box-shadow:0 18px 40px rgba(51,51,51,.14);}
.lt-product-head{
  background:var(--lt-bg-soft); padding:22px 28px; display:flex; align-items:center;
  gap:16px; flex-wrap:wrap; border-bottom:1px solid var(--lt-border);
}
.lt-product-head .ic{
  flex:0 0 46px; width:46px; height:46px; border-radius:50%; background:var(--lt-navy); color:#fff;
  display:flex; align-items:center; justify-content:center; font-size:18px; box-shadow:0 6px 14px rgba(0,0,0,.14);
}
.lt-product-head .head-text{flex:1 1 auto; display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap; min-width:0;}
.lt-product-head h3{margin:0; font-size:20px;}
.lt-product-tag{
  background:var(--lt-blue); color:#fff; font-size:12.5px; font-weight:700; padding:6px 14px; border-radius:99px;
  text-transform:uppercase; letter-spacing:.05em;
}
.lt-product-tag.tag-short{background:var(--lt-cyan);}
.lt-product-tag.tag-long{background:var(--lt-navy);}
.lt-product-body{padding:26px 28px;}
.lt-product-body p.desc{font-size:15.5px; color:var(--lt-body); margin-bottom:18px;}
.lt-feat-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:16px;}
.lt-feat{background:var(--lt-bg-soft); border-radius:10px; padding:14px 16px; transition:.2s ease;}
.lt-feat:hover{background:var(--lt-cyan-light);}
.lt-feat .k{font-size:12.5px; text-transform:uppercase; letter-spacing:.06em; color:var(--lt-muted); font-weight:600;}
.lt-feat .v{font-family:var(--lt-font-head); font-weight:700; color:var(--lt-navy); font-size:16px; margin-top:2px;}
.lt-feat.highlight{background:var(--lt-navy);}
.lt-feat.highlight:hover{background:var(--lt-blue-dark);}
.lt-feat.highlight .k{color:#D9C9A3;}
.lt-feat.highlight .v{color:#fff;}
.lt-content-required{
  display:inline-block; background:#F5EEDD; color:#5C4520; border:1px dashed #B08A3E; border-radius:8px;
  padding:3px 10px; font-size:12.5px; font-weight:700;
}

/* =========================================================
   LOAN PRODUCTS - editorial layout (tabs + clean typographic list)
   ========================================================= */
.lt-loan-intro{max-width:760px; margin:0 auto 44px; text-align:center;}
.lt-loan-intro p{font-size:16px; color:var(--lt-body); margin:0;}

.lt-loan-tabs{
  display:flex; justify-content:center; gap:8px; margin-bottom:40px; border-bottom:1px solid var(--lt-border);
}
.lt-loan-tab-btn{
  background:none; border:none; padding:14px 28px; font-family:var(--lt-font-head); font-weight:600; font-size:15px;
  color:var(--lt-muted); cursor:pointer; position:relative; top:1px; border-bottom:2px solid transparent; transition:.2s ease;
}
.lt-loan-tab-btn:hover{color:var(--lt-navy);}
.lt-loan-tab-btn.active{color:var(--lt-blue); border-bottom-color:var(--lt-blue);}
@media(max-width:575px){ .lt-loan-tab-btn{padding:12px 16px; font-size:13.5px;} }

.lt-loan-panel{display:none;}
.lt-loan-panel.active{display:block;}

.lt-loan-entry{
  display:flex; gap:36px; background:#fff; border:1px solid var(--lt-border); border-left:4px solid var(--lt-blue);
  border-radius:10px; box-shadow:0 2px 8px rgba(51,51,51,.05); padding:28px 32px; margin-bottom:20px; flex-wrap:wrap;
}
.lt-loan-entry:last-child{margin-bottom:0;}

.lt-loan-left{flex:0 0 260px; width:260px;}
.lt-loan-icon-circle{
  width:52px; height:52px; border-radius:50%; background:var(--lt-cyan-light); color:var(--lt-blue);
  display:flex; align-items:center; justify-content:center; font-size:20px; margin-bottom:14px;
}
.lt-loan-left h3{font-size:17px; margin-bottom:8px; color:var(--lt-navy);}
.lt-loan-desc{font-size:13.5px; color:var(--lt-body); margin:0 0 18px; line-height:1.55;}
.lt-loan-viewlink{display:inline-flex; align-items:center; gap:8px;}

.lt-loan-right{
  flex:1 1 280px; min-width:240px; padding-left:32px; border-left:1px solid var(--lt-border); display:flex;
  flex-direction:column; justify-content:center;
}
.lt-loan-ticks .tick-row{display:flex; align-items:flex-start; gap:10px; margin-bottom:12px; font-size:13.5px; color:var(--lt-body); line-height:1.5;}
.lt-loan-ticks .tick-row:last-child{margin-bottom:0;}
.lt-loan-ticks .tick-row i{color:var(--lt-blue); font-size:12px; margin-top:3px; flex:0 0 auto;}

.lt-loan-extra{font-size:12px; color:var(--lt-muted); margin:12px 0 0; font-style:italic;}

@media(max-width:767px){
  .lt-loan-entry{flex-direction:column; gap:20px; padding:24px;}
  .lt-loan-left{flex:1 1 auto; width:100%;}
  .lt-loan-right{border-left:none; border-top:1px solid var(--lt-border); padding-left:0; padding-top:18px;}
}
@media(max-width:575px){ .lt-loan-entry{padding:20px;} }

/* Loan comparison table */
.table-lt{width:100%; border-collapse:separate; border-spacing:0; font-size:14.5px;}
.table-lt thead th{
  background:var(--lt-navy); color:#fff; font-family:var(--lt-font-head); font-weight:600; padding:16px 18px; text-align:left;
}
.table-lt thead th:first-child{border-radius:12px 0 0 0;}
.table-lt thead th:last-child{border-radius:0 12px 0 0;}
.table-lt tbody td{padding:15px 18px; border-bottom:1px solid var(--lt-border); background:#fff;}
.table-lt tbody td:first-child{font-weight:700; color:var(--lt-navy);}
.table-lt tbody tr:nth-child(even) td{background:var(--lt-bg-soft);}
.table-lt tbody tr:hover td{background:var(--lt-cyan-light);}
.table-lt tbody tr:last-child td:first-child{border-radius:0 0 0 12px;}
.table-lt tbody tr:last-child td:last-child{border-radius:0 0 12px 0;}
.table-lt-wrap{overflow-x:auto; border-radius:12px; box-shadow:var(--lt-shadow-sm); border:1px solid var(--lt-border);}

/* Membership steps - vertical connected timeline, matching reference */
.lt-step-list{position:relative;}
.lt-step{display:flex; gap:20px; margin-bottom:34px; position:relative;}
.lt-step:last-child{margin-bottom:0;}
.lt-step::before{
  content:""; position:absolute; left:23px; top:52px; bottom:-34px; width:1px; background:var(--lt-border);
}
.lt-step:last-child::before{display:none;}
.lt-step .num{
  flex:0 0 46px; width:46px; height:46px; border-radius:50%; background:#fff; color:var(--lt-blue);
  display:flex; align-items:center; justify-content:center; font-family:var(--lt-font-head); font-weight:700;
  box-shadow:0 6px 16px rgba(51,51,51,.14); position:relative; z-index:1; font-size:16px;
}
.lt-step h4{margin-bottom:6px; font-size:18px;}
.lt-step p{margin-bottom:0; font-size:15px;}

/* Leadership */
.lt-leader-card{
  background:#fff; border-radius:10px; overflow:hidden; box-shadow:0 2px 8px rgba(51,51,51,.06);
  border:1px solid var(--lt-border); height:100%; transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.lt-leader-card:hover{transform:translateY(-3px); box-shadow:0 10px 24px rgba(51,51,51,.12); border-color:transparent;}

/* Initials avatar - used on the Team page until real photos are supplied */
.lt-team-avatar{
  aspect-ratio:1/1; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg, var(--lt-navy-dark), var(--lt-cyan));
  color:#fff; font-family:var(--lt-font-head); font-weight:800; font-size:34px; letter-spacing:.02em;
}
.lt-leader-photo{aspect-ratio:1/1; overflow:hidden; background:var(--lt-bg-soft); position:relative;}
.lt-leader-photo img{width:100%; height:100%; object-fit:cover; object-position:top center; transition:transform .4s ease;}
.lt-leader-card:hover .lt-leader-photo img{transform:scale(1.05);}
.lt-leader-info{padding:14px 16px 16px;}
.lt-leader-info h4{font-size:14px; margin-bottom:2px; color:var(--lt-navy);}
.lt-leader-info .role{
  display:block; color:var(--lt-blue); font-weight:600; font-size:11.5px; margin-bottom:8px;
}
.lt-leader-info .bio{font-size:12.8px; line-height:1.6; color:var(--lt-body); max-height:0; overflow:hidden; transition:max-height .35s ease; margin:0;}
.lt-leader-card.open .bio{max-height:600px; margin-top:8px;}
.lt-leader-toggle{
  border:none; background:none; color:var(--lt-blue); font-weight:600; font-size:12px;
  padding:0; display:inline-flex; align-items:center; gap:5px; margin-top:2px;
}
.lt-leader-toggle:hover{color:var(--lt-cyan);}
.lt-leader-toggle i{transition:.25s; font-size:9px;}
.lt-leader-card.open .lt-leader-toggle i{transform:rotate(180deg);}

/* Featured leader (CEO): horizontal layout, photo left, bio always visible right */
.lt-leader-featured{
  display:flex; flex-wrap:wrap; background:#fff; border-radius:12px; overflow:hidden;
  box-shadow:0 2px 8px rgba(51,51,51,.06); border:1px solid var(--lt-border); max-width:760px; margin:0 auto;
}
.lt-leader-featured-photo{flex:0 0 240px; max-width:100%; aspect-ratio:1/1; overflow:hidden; background:var(--lt-bg-soft);}
.lt-leader-featured-photo img{width:100%; height:100%; object-fit:cover; object-position:top center;}
.lt-leader-featured-info{flex:1 1 280px; padding:26px 30px; display:flex; flex-direction:column; justify-content:center;}
.lt-leader-featured-info h3{font-size:19px; margin-bottom:4px;}
.lt-leader-featured-info .role{
  display:block; color:var(--lt-blue); font-weight:600; font-size:12.5px; margin-bottom:12px;
}
.lt-leader-featured-info p{font-size:13.8px; line-height:1.7; color:var(--lt-body); margin:0;}
@media(max-width:575px){
  .lt-leader-featured-photo{flex:0 0 100%; aspect-ratio:16/10;}
}

/* Leader card grid - fixed card width everywhere so photos are always the
   same size, regardless of how many people are in a given committee. */
.lt-leader-grid{display:flex; flex-wrap:wrap; gap:20px; justify-content:center; margin-bottom:8px;}
.lt-leader-card-wrap{flex:0 0 200px; width:200px;}
@media(max-width:575px){ .lt-leader-card-wrap{flex:0 0 44%; width:44%;} }

/* Credit Committee + Education Committee side by side, with a divider */
.lt-committee-pair{display:flex; gap:36px; align-items:flex-start; justify-content:center; flex-wrap:wrap;}
.lt-committee-group{flex:0 1 auto;}
.lt-committee-divider{width:1px; align-self:stretch; background:var(--lt-border); min-height:220px; margin-top:44px;}
@media(max-width:767px){
  .lt-committee-pair{flex-direction:column; align-items:center; gap:40px;}
  .lt-committee-divider{display:none;}
}

/* Committee section grouping - simple heading with short underline, matching reference */
.lt-committee-heading{text-align:center; margin-bottom:22px;}
.lt-committee-heading span{
  display:inline-block; font-family:var(--lt-font-head); font-weight:700; font-size:18px; letter-spacing:.03em;
  text-transform:uppercase; color:var(--lt-navy); padding-bottom:8px; border-bottom:2px solid var(--lt-blue);
}
.lt-leadership-subtitle{text-align:center; color:var(--lt-muted); font-size:14.5px; margin-top:-14px; margin-bottom:36px;}

/* Downloads */
.lt-download-card{
  display:flex; align-items:center; gap:18px; background:#fff; border:1px solid var(--lt-border); border-radius:var(--lt-radius);
  padding:22px 24px; box-shadow:var(--lt-shadow-sm); transition:.2s;
}
.lt-download-card:hover{box-shadow:var(--lt-shadow); transform:translateY(-3px);}
.lt-download-card .ic{
  flex:0 0 54px; width:54px; height:54px; border-radius:50%; background:var(--lt-navy-dark); color:#fff; font-size:22px;
  display:flex; align-items:center; justify-content:center; box-shadow:0 6px 14px rgba(0,0,0,.16);
}
.lt-download-card .info{flex:1; min-width:0;}
.lt-download-card h4{font-size:16px; margin-bottom:3px;}
.lt-download-card .meta{font-size:13px; color:var(--lt-muted);}
.lt-download-card .dl-btn{
  flex:0 0 auto; width:42px; height:42px; border-radius:50%; background:var(--lt-cyan-light); color:var(--lt-blue);
  display:flex; align-items:center; justify-content:center; font-size:16px;
}
.lt-download-card:hover .dl-btn{background:var(--lt-blue); color:#fff;}

/* FAQ accordion */
.lt-accordion .item{border:1px solid var(--lt-border); border-radius:12px; margin-bottom:14px; overflow:hidden;}
.lt-accordion .q{
  display:flex; align-items:center; justify-content:space-between; padding:18px 22px; cursor:pointer;
  font-family:var(--lt-font-head); font-weight:600; font-size:15.5px; color:var(--lt-navy); background:#fff;
}
.lt-accordion .item.open .q{background:var(--lt-cyan-light); color:var(--lt-blue);}
.lt-accordion .q i{transition:.25s; color:var(--lt-blue);}
.lt-accordion .item.open .q i{transform:rotate(45deg);}
.lt-accordion .a{max-height:0; overflow:hidden; transition:max-height .3s ease;}
.lt-accordion .a-inner{padding:0 22px 20px; font-size:14.8px;}
.lt-accordion .item.open .a{max-height:400px;}

/* CTA band */
.lt-cta{
  background:linear-gradient(120deg, var(--lt-navy-dark), var(--lt-blue-dark) 60%, var(--lt-blue));
  border-radius:24px; padding:56px 48px; position:relative; overflow:hidden;
}
.lt-cta::before{content:""; position:absolute; left:-60px; bottom:-90px; width:260px; height:260px; border-radius:50%;
  background:radial-gradient(circle, rgba(198,161,91,.35), transparent 70%);}
.lt-cta h2{color:#fff; margin-bottom:10px;}
.lt-cta p{color:#E4E7DA; margin-bottom:0;}
.lt-cta .eyebrow{color:#fff;}
@media(max-width:767px){ .lt-cta{padding:40px 26px; text-align:center;} }

/* Loan calculator */
.lt-calc{background:#fff; border:1px solid var(--lt-border); border-radius:18px; padding:36px; box-shadow:0 16px 40px rgba(51,51,51,.1);}
.lt-calc-header{display:flex; align-items:center; gap:14px; margin-bottom:26px; padding-bottom:22px; border-bottom:1px solid var(--lt-border);}
.lt-calc-header .ic{
  flex:0 0 48px; width:48px; height:48px; border-radius:50%; background:var(--lt-navy); color:#fff;
  display:flex; align-items:center; justify-content:center; font-size:20px;
}
.lt-calc-header h4{margin:0; font-size:18px;}
.lt-calc-header p{margin:0; font-size:13px; color:var(--lt-muted);}
.lt-calc label{font-family:var(--lt-font-head); font-weight:600; font-size:13.5px; color:var(--lt-navy); margin-bottom:6px; display:block;}
.lt-calc .form-control, .lt-form .form-control, .lt-form select.form-control{
  border:1.5px solid var(--lt-border); border-radius:10px; padding:12px 14px; font-size:15px; margin-bottom:18px;
  transition:.2s ease;
}
.lt-calc .form-control:focus, .lt-form .form-control:focus{border-color:var(--lt-blue); box-shadow:0 0 0 3px rgba(47,82,51,.14);}
.lt-calc .form-control:disabled{background:var(--lt-bg-soft); color:var(--lt-muted); cursor:not-allowed;}
.lt-calc-months-group{display:none;}
.lt-calc-months-group.show{display:block;}
.lt-calc-result{background:var(--lt-bg-soft); border-radius:14px; padding:26px; margin-top:8px;}
.lt-calc-result .hero-figure{text-align:center; padding-bottom:20px; margin-bottom:18px; border-bottom:1px solid var(--lt-border);}
.lt-calc-result .hero-figure .label{font-size:12.5px; font-weight:600; text-transform:uppercase; letter-spacing:.04em; color:var(--lt-muted);}
.lt-calc-result .hero-figure .amount{font-family:var(--lt-font-head); font-weight:800; font-size:32px; color:var(--lt-navy); margin-top:4px;}
.lt-calc-result .row-line{display:flex; justify-content:space-between; padding:9px 0; border-bottom:1px dashed var(--lt-border); font-size:14.5px;}
.lt-calc-result .row-line:last-child{border-bottom:none;}
.lt-calc-result .row-line strong{color:var(--lt-navy);}
.lt-calc-note{font-size:12.5px; color:var(--lt-muted); margin-top:14px; line-height:1.6;}

/* Contact */
.lt-contact-card{display:flex; gap:16px; padding:22px; background:#fff; border:none; border-radius:var(--lt-radius); box-shadow:var(--lt-shadow-sm); margin-bottom:18px;}
.lt-contact-card .ic{flex:0 0 48px; width:48px; height:48px; border-radius:50%; background:var(--lt-navy-dark); color:#fff; display:flex; align-items:center; justify-content:center; font-size:19px; box-shadow:0 6px 14px rgba(0,0,0,.16);}
.lt-contact-card h5{margin-bottom:4px; font-size:15.5px;}
.lt-contact-card p{margin:0; font-size:14.5px;}
.lt-map-frame{border-radius:var(--lt-radius); overflow:hidden; box-shadow:var(--lt-shadow-sm); border:1px solid var(--lt-border);}

/* WhatsApp float button */
.lt-whatsapp-float{
  position:fixed; right:22px; bottom:22px; width:58px; height:58px; border-radius:50%;
  background:#25D366; color:#fff; display:flex; align-items:center; justify-content:center; font-size:28px;
  box-shadow:0 8px 22px rgba(37,211,102,.45); z-index:998; transition:.2s;
}
.lt-whatsapp-float:hover{transform:scale(1.08); color:#fff;}

/* Back to top */
.lt-to-top{
  position:fixed; right:22px; bottom:92px; width:44px; height:44px; border-radius:50%; background:var(--lt-navy);
  color:#fff; display:flex; align-items:center; justify-content:center; z-index:998; opacity:0; visibility:hidden;
  transition:.25s;
}
.lt-to-top.show{opacity:1; visibility:visible;}
.lt-to-top:hover{background:var(--lt-blue); color:#fff;}

/* =========================================================
   PHOTO-OVERLAY SECTION (dark image background, light content)
   ========================================================= */
.lt-overlay-section{
  position:relative; background-size:cover; background-position:center; overflow:hidden;
}
.lt-overlay-section::before{
  content:""; position:absolute; inset:0;
  background:linear-gradient(115deg, rgba(20,26,18,.92) 0%, rgba(29,42,32,.88) 45%, rgba(36,64,47,.78) 100%);
}
.lt-overlay-section .container{position:relative; z-index:2;}
.lt-overlay-section .eyebrow{color:#E3D5B0;}
.lt-overlay-section h2, .lt-overlay-section p{color:#fff;}
.lt-overlay-section p strong{color:#fff;}
.lt-overlay-section .lt-feat{background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12);}
.lt-overlay-section .lt-feat span:not(.badge-soft){color:#fff !important;}
.lt-overlay-section .badge-soft{background:rgba(255,255,255,.16); color:#fff;}

/* =========================================================
   OFFCANVAS QUICK INFO PANEL (desktop + mobile)
   ========================================================= */
.lt-offcanvas-btn{
  display:flex; align-items:center; justify-content:center; width:auto; height:auto;
  background:none; border:none; padding:8px; color:var(--lt-navy); cursor:pointer; box-shadow:none;
}
.lt-offcanvas-btn:hover{opacity:.7;}
.lt-offcanvas-backdrop{
  display:none; position:fixed; inset:0; background:rgba(6,20,45,.55); z-index:1100; opacity:0; transition:opacity .25s ease;
}
.lt-offcanvas-backdrop.open{display:block; opacity:1;}
.lt-offcanvas{
  position:fixed; top:0; right:-420px; width:400px; max-width:88vw; height:100vh; background:#fff;
  z-index:1101; padding:36px 32px; overflow-y:auto; transition:right .3s ease; box-shadow:-14px 0 40px rgba(0,0,0,.2);
}
.lt-offcanvas.open{right:0;}
.lt-offcanvas-close{
  position:absolute; top:26px; right:26px; width:42px; height:42px; border-radius:12px; border:none;
  background:var(--lt-navy); color:#fff; font-size:16px; display:flex; align-items:center; justify-content:center;
  cursor:pointer; transition:.2s ease;
}
.lt-offcanvas-close:hover{background:var(--lt-blue);}
.lt-offcanvas-logo img{height:64px; margin-bottom:24px; box-shadow:none; filter:none;}
.lt-offcanvas-blurb{color:var(--lt-body); font-size:14.5px; line-height:1.7; margin-bottom:30px;}
.lt-offcanvas-heading{font-size:17px; margin-bottom:18px;}
.lt-offcanvas-contact{list-style:none; padding:0; margin:0 0 28px;}
.lt-offcanvas-contact li{display:flex; align-items:flex-start; gap:14px; margin-bottom:16px; font-size:14.5px; color:var(--lt-body);}
.lt-offcanvas-contact li i{
  flex:0 0 34px; width:34px; height:34px; border-radius:50%; background:var(--lt-navy); color:#fff;
  display:flex; align-items:center; justify-content:center; font-size:13px; margin-top:1px;
}
.lt-offcanvas-contact li a{color:var(--lt-body);}
.lt-offcanvas-contact li a:hover{color:var(--lt-blue);}
.lt-offcanvas-social{display:flex; gap:10px;}
.lt-offcanvas-social a{
  display:flex; align-items:center; justify-content:center; width:38px; height:38px; border-radius:50%;
  background:var(--lt-navy); color:#fff;
}
.lt-offcanvas-social a:hover{background:var(--lt-blue);}
@media(max-width:420px){ .lt-offcanvas{padding:30px 22px;} }

/* =========================================================
   PARTNERS - sliding logo strip
   ========================================================= */
.lt-partners{overflow:hidden; position:relative; -webkit-mask-image:linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask-image:linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);}

/* Text-placeholder partner badge (used until approved partner logos are supplied) */
.lt-partner-badge{
  display:flex; align-items:center; justify-content:center; text-align:center;
  height:92px; padding:12px 14px; background:#fff; border:1px solid var(--lt-border);
  border-radius:var(--lt-radius-sm); font-family:var(--lt-font-head); font-weight:700;
  font-size:14.5px; color:var(--lt-navy); transition:.2s ease;
}
.lt-partner-badge:hover{border-color:var(--lt-blue); color:var(--lt-blue); transform:translateY(-2px); box-shadow:var(--lt-shadow-sm);}
.lt-partner-badge-logo img{max-height:44px; max-width:100%; object-fit:contain;}
.lt-partners-track{display:flex; align-items:center; gap:64px; width:max-content; animation:ltPartnersScroll 26s linear infinite;}
.lt-partners:hover .lt-partners-track{animation-play-state:paused;}
.lt-partners-track img{height:80px; width:auto; max-width:220px; object-fit:contain; filter:grayscale(100%); opacity:.7; transition:filter .25s ease, opacity .25s ease;}
.lt-partners-track img:hover{filter:grayscale(0%); opacity:1;}
@keyframes ltPartnersScroll{
  0%{transform:translateX(0);}
  100%{transform:translateX(-50%);}
}
@media(max-width:575px){ .lt-partners-track img{height:56px;} }

/* =========================================================
   ABOUT SECTION (photo badge overlay + 2-col checkmarks)
   ========================================================= */
.lt-about-photo-wrap{position:relative;}
.lt-about-photo-wrap img{width:100%; height:auto; border-radius:var(--lt-radius); box-shadow:var(--lt-shadow); display:block;}
.lt-about-badge{
  position:absolute; left:24px; bottom:24px; background:var(--lt-navy-dark); border-radius:10px;
  padding:18px 22px; display:flex; align-items:center; gap:14px; max-width:78%;
  box-shadow:0 10px 26px rgba(0,0,0,.25);
}
.lt-about-badge .ic{
  flex:0 0 40px; width:40px; height:40px; border-radius:50%; background:rgba(255,255,255,.12);
  color:var(--lt-cyan); display:flex; align-items:center; justify-content:center; font-size:17px;
}
.lt-about-badge span{color:#fff; font-weight:700; font-size:14.5px; line-height:1.35;}
.lt-eyebrow-icon{
  display:inline-flex; align-items:center; gap:8px; color:var(--lt-blue); font-weight:600; font-size:14.5px;
  margin-bottom:14px;
}
.lt-eyebrow-icon i{font-size:15px;}
.lt-about-checks{display:grid; grid-template-columns:1fr 1fr; gap:16px 20px; margin:24px 0 8px;}
.lt-about-checks .check-item{display:flex; align-items:center; gap:12px;}
.lt-about-checks .check-item .ic{
  flex:0 0 30px; width:30px; height:30px; border-radius:50%; background:var(--lt-navy); color:#fff;
  display:flex; align-items:center; justify-content:center; font-size:13px;
}
.lt-about-checks .check-item span{font-weight:700; color:var(--lt-navy); font-size:14.5px;}
.btn-lt-pill{background:transparent; color:var(--lt-blue); border:2px solid var(--lt-blue); border-radius:99px;}
.btn-lt-pill:hover{background:var(--lt-blue); color:#fff;}
@media(max-width:575px){
  .lt-about-badge{max-width:90%; left:16px; bottom:16px; padding:14px 18px;}
  .lt-about-checks{grid-template-columns:1fr;}
}

/* =========================================================
   SIMPLE PRODUCT CARDS (bordered, one featured, icon + read more)
   ========================================================= */
.lt-scard{
  background:#fff; border:1px solid var(--lt-border); border-radius:4px; padding:36px 32px;
  height:100%; transition:.2s ease;
}
.lt-scard:hover{box-shadow:var(--lt-shadow-sm); transform:translateY(-3px);}
.lt-scard.featured{background:#1D3820; border-color:#1D3820;}
.lt-scard .icon{font-size:34px; color:var(--lt-blue); margin-bottom:22px; line-height:1;}
.lt-scard.featured .icon{color:#fff;}
.lt-scard h3, .lt-scard h4{font-size:19px; margin-bottom:12px;}
.lt-scard.featured h3, .lt-scard.featured h4{color:#fff;}
.lt-scard p{font-size:14.5px; color:var(--lt-body); margin-bottom:22px;}
.lt-scard.featured p{color:rgba(255,255,255,.85);}
.lt-scard .read-more{
  display:inline-flex; align-items:center; gap:8px; font-size:12.5px; font-weight:700;
  text-transform:uppercase; letter-spacing:.05em; color:var(--lt-blue); transition:gap .2s ease;
}
.lt-scard .read-more:hover{gap:12px; color:var(--lt-cyan);}
.lt-scard.featured .read-more{color:#fff;}
.lt-scard.featured .read-more:hover{color:var(--lt-cyan-light);}

/* =========================================================
   QUICK-ACTION BAND (full-width, sits in its own section below the hero)
   ========================================================= */
.lt-qa-bar{
  display:flex; flex-wrap:wrap; width:100%;
}
.lt-qa-card{
  flex:1 1 25%; background:#1D3820; padding:34px 28px; text-align:center;
  display:flex; flex-direction:column; align-items:center; justify-content:flex-start;
  min-width:220px; text-decoration:none; cursor:pointer;
  transition:background-color .25s ease, transform .2s ease;
}
.lt-qa-card:nth-child(even){background:#C6A15B;}
.lt-qa-card:hover{transform:translateY(-3px); box-shadow:0 14px 30px rgba(0,0,0,.18);}
.lt-qa-card .ic{
  width:60px; height:60px; border-radius:50%; background:#fff;
  display:flex; align-items:center; justify-content:center; margin:0 auto 16px; flex:0 0 auto;
  transition:transform .25s ease;
}
.lt-qa-card:hover .ic{transform:scale(1.08);}
.lt-qa-card .ic img{width:30px; height:30px;}
.lt-qa-card h4{font-size:17px; margin:0 0 8px; line-height:1.35; color:#fff; text-transform:uppercase; letter-spacing:.03em;}
.lt-qa-card p{font-size:13.5px; margin:0; color:rgba(255,255,255,.85); max-width:240px;}
@media(max-width:767px){
  .lt-qa-card{flex:1 1 50%; padding:26px 18px;}
}

/* =========================================================
   ABOUT + CALLBACK REQUEST SECTION
   ========================================================= */
.lt-callback-card{
  background:#fff; border-radius:var(--lt-radius); box-shadow:var(--lt-shadow); border:1px solid var(--lt-border);
  padding:36px 34px;
}
.lt-callback-card .kicker{color:var(--lt-blue); font-weight:600; font-size:13.5px; display:block; margin-bottom:6px;}
.lt-callback-card h3{font-size:24px; margin-bottom:24px;}
.lt-callback-card .form-control{
  border:1.5px solid var(--lt-border); border-radius:10px; padding:13px 16px; font-size:15px; margin-bottom:16px;
  background:var(--lt-bg-soft);
}
.lt-callback-card .form-control:focus{border-color:var(--lt-blue); box-shadow:0 0 0 3px rgba(47,82,51,.12); background:#fff;}
.lt-callback-card select.form-control{color:var(--lt-navy);}
.lt-callback-check{display:flex; align-items:flex-start; gap:10px; font-size:13.5px; color:var(--lt-muted); margin-bottom:20px;}
.lt-callback-check input{margin-top:3px;}

/* =========================================================
   FOOTER
   ========================================================= */
.lt-footer{background:#1B2419; color:#fff; padding-top:70px;}
.lt-footer h5{color:#fff; font-size:16px; margin-bottom:14px; position:relative; padding-bottom:14px;}
.lt-footer h5::after{
  content:""; position:absolute; left:0; bottom:0; width:26px; height:2px; background:#fff;
  box-shadow:32px 0 0 #fff;
}
.lt-footer p{color:#fff; font-size:14.5px;}
.lt-footer .logo img{height:48px; margin-bottom:16px;}
.lt-footer-logo-card{
  display:inline-block; background:#fff; border-radius:14px; padding:16px 22px; margin-bottom:20px;
  box-shadow:0 8px 22px rgba(0,0,0,.18);
}
.lt-footer-logo-card img{margin-bottom:0 !important;}
.lt-footer ul{list-style:none; padding:0; margin:0;}
.lt-footer ul li{margin-bottom:11px;}
.lt-footer ul li a{color:#fff; font-size:14.5px; display:inline-flex; align-items:center; gap:8px; transition:transform .2s ease, color .2s ease; transform-origin:left center;}
.lt-footer ul li a::before{content:"\f061"; font-family:"Font Awesome 6 Pro"; font-weight:900; font-size:11px; color:#fff;}
.lt-footer ul li a:hover{color:var(--lt-cyan); transform:scale(.94);}
.lt-footer .social a{
  display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:50%;
  background:#C6A15B; color:#fff; margin-right:8px;
}
.lt-footer .social a:hover{background:var(--lt-cyan); color:var(--lt-navy-dark);}
.lt-footer-bottom{
  margin-top:50px; padding:16px 0; font-size:13.5px; font-weight:400; color:#fff;
  background:#2F5233; border-top:1px solid rgba(255,255,255,.18);
}
.lt-footer-bottom p{font-weight:400;}
.lt-footer-bottom a{color:#fff; font-weight:400;}
.lt-footer-bottom a:hover{color:#fff; opacity:.8;}
@media(max-width:767px){
  .lt-footer-bottom{font-size:12px; text-align:center;}
  .lt-footer-bottom .container{justify-content:center !important;}
  .lt-footer-bottom p{width:100%;}
}
.lt-footer-contact-item{display:flex; gap:12px; margin-bottom:14px; font-size:14.5px; color:#fff;}
.lt-footer-contact-item a{color:#fff;}
.lt-footer-contact-item a:hover{color:var(--lt-cyan);}
.lt-footer-contact-item i{color:#fff; margin-top:3px;}

/* Misc utility */
.lt-fade-up{opacity:0; transform:translateY(24px); transition:.6s ease;}
.lt-fade-up.in{opacity:1; transform:none;}
.badge-soft{background:var(--lt-cyan-light); color:var(--lt-blue); padding:5px 12px; border-radius:99px; font-size:12.5px; font-weight:700;}
.lt-divider{height:1px; background:var(--lt-border); margin:40px 0;}

/* =========================================================
   LISAM TOURS KENYA - additional components
   (hero, tour cards, destination cards, itinerary, mobile CTA bar)
   ========================================================= */

/* Trust bar - standalone light strip placed just below the hero slider */
.lt-trustbar{display:flex; flex-wrap:wrap; justify-content:center; gap:14px 40px;}
.lt-trustbar-item{display:flex; align-items:center; gap:10px; color:var(--lt-navy); font-size:14.5px; font-weight:600;}
.lt-trustbar-item i{color:var(--lt-blue); font-size:18px;}

/* Page banner (used on inner pages instead of the full hero) */
.lt-page-banner{background:linear-gradient(120deg, var(--lt-navy-dark), var(--lt-blue-dark)); padding:64px 0 44px; position:relative;}
.lt-page-banner h1{color:#fff; font-family:var(--lt-font-head); font-weight:600; font-size:clamp(28px,3.6vw,44px); margin-bottom:12px;}
.lt-page-banner p{color:#E4E7DA;}
.lt-breadcrumb{list-style:none; display:flex; flex-wrap:wrap; gap:8px; padding:0; margin:0 0 16px; color:#D9C9A3; font-size:14px;}
.lt-breadcrumb a{color:#D9C9A3;}
.lt-breadcrumb a:hover{color:#fff;}
.lt-breadcrumb li:not(:last-child)::after{content:"/"; margin-left:8px; color:#8E9C7E;}
.lt-breadcrumb li:last-child{color:#fff;}

/* Tour card */
.lt-tour-card{background:#fff; border:1px solid var(--lt-border); border-radius:var(--lt-radius); overflow:hidden; transition:.2s ease; box-shadow:var(--lt-shadow-sm);}
.lt-tour-card:hover{transform:translateY(-6px); box-shadow:var(--lt-shadow); border-color:transparent;}
.lt-tour-card-img{position:relative; aspect-ratio:4/3; overflow:hidden; background:var(--lt-bg-soft);}
.lt-tour-card-img img{width:100%; height:100%; object-fit:cover; transition:transform .4s ease;}
.lt-tour-card:hover .lt-tour-card-img img{transform:scale(1.06);}
.lt-tour-card-badge{position:absolute; top:14px; left:14px; background:var(--lt-navy-dark); color:#fff; font-size:12.5px; font-weight:700; padding:5px 12px; border-radius:99px;}
.lt-tour-card-body{padding:22px 22px 24px;}
.lt-tour-card-country{display:block; font-size:12.5px; font-weight:600; text-transform:uppercase; letter-spacing:.04em; color:var(--lt-cyan); margin-bottom:8px;}
.lt-tour-card-body h3{font-size:19px; margin-bottom:8px; color:var(--lt-navy);}
.lt-tour-card-body p{font-size:14.5px; color:var(--lt-body); margin-bottom:16px;}
.lt-tour-card-foot{display:flex; align-items:center; justify-content:space-between; border-top:1px solid var(--lt-border); padding-top:14px;}
.lt-tour-card-foot .price{font-family:var(--lt-font-head); font-weight:700; color:var(--lt-navy); font-size:14.5px;}
.lt-tour-card-foot .read-more{display:inline-flex; align-items:center; gap:6px; font-size:13.5px; font-weight:700; color:var(--lt-blue);}

/* Destination card */
.lt-dest-card{position:relative; border-radius:var(--lt-radius); overflow:hidden; display:block; box-shadow:var(--lt-shadow-sm); transition:.2s ease;}
.lt-dest-card:hover{transform:translateY(-6px); box-shadow:var(--lt-shadow);}
.lt-dest-card-img{aspect-ratio:4/5; overflow:hidden; background:var(--lt-bg-soft);}
.lt-dest-card-img img{width:100%; height:100%; object-fit:cover; transition:transform .4s ease;}
.lt-dest-card:hover .lt-dest-card-img img{transform:scale(1.08);}
.lt-dest-card-body{position:absolute; left:0; right:0; bottom:0; padding:20px; background:linear-gradient(180deg, transparent, rgba(20,26,18,.9));}
.lt-dest-card-country{display:block; color:var(--lt-cyan); font-size:12px; font-weight:600; text-transform:uppercase; letter-spacing:.05em; margin-bottom:4px;}
.lt-dest-card-body h3{color:#fff; font-size:19px; margin-bottom:6px;}
.lt-dest-card-body .read-more{color:#fff; font-size:13px; font-weight:600; display:inline-flex; align-items:center; gap:6px;}

/* Tour / destination detail page layout */
.lt-quick-facts{background:#fff; border:1px solid var(--lt-border); border-radius:var(--lt-radius); box-shadow:var(--lt-shadow-sm); padding:26px;}
.lt-quick-facts h4{font-size:17px; margin-bottom:18px;}
.lt-quick-facts .fact{display:flex; justify-content:space-between; gap:14px; padding:11px 0; border-bottom:1px dashed var(--lt-border); font-size:14px;}
.lt-quick-facts .fact:last-of-type{border-bottom:none;}
.lt-quick-facts .fact .k{color:var(--lt-muted);}
.lt-quick-facts .fact .v{color:var(--lt-navy); font-weight:600; text-align:right;}
.lt-quick-facts .price-box{background:var(--lt-bg-soft); border-radius:10px; padding:16px; text-align:center; margin-bottom:18px;}
.lt-quick-facts .price-box .label{font-size:12px; text-transform:uppercase; letter-spacing:.05em; color:var(--lt-muted);}
.lt-quick-facts .price-box .amount{font-family:var(--lt-font-head); font-weight:700; font-size:22px; color:var(--lt-navy); margin-top:2px;}

/* Itinerary timeline (day-by-day, uses the same accordion interaction as FAQ) */
.lt-itinerary .item{border:1px solid var(--lt-border); border-radius:12px; margin-bottom:14px; overflow:hidden;}
.lt-itinerary .q{display:flex; align-items:center; gap:16px; padding:18px 22px; cursor:pointer; background:#fff;}
.lt-itinerary .item.open .q{background:var(--lt-cyan-light);}
.lt-itinerary .day-num{flex:0 0 44px; width:44px; height:44px; border-radius:50%; background:var(--lt-navy-dark); color:#fff; display:flex; align-items:center; justify-content:center; font-family:var(--lt-font-head); font-weight:700; font-size:14px;}
.lt-itinerary .q .titles{flex:1 1 auto; min-width:0;}
.lt-itinerary .q .titles .day-title{font-family:var(--lt-font-head); font-weight:600; font-size:15.5px; color:var(--lt-navy); display:block;}
.lt-itinerary .q .titles .day-route{font-size:13px; color:var(--lt-muted);}
.lt-itinerary .q i{color:var(--lt-blue); transition:.25s;}
.lt-itinerary .item.open .q i{transform:rotate(45deg);}
.lt-itinerary .a{max-height:0; overflow:hidden; transition:max-height .3s ease;}
.lt-itinerary .a-inner{padding:0 22px 22px 82px; font-size:14.8px; color:var(--lt-body);}
.lt-itinerary .item.open .a{max-height:600px;}

/* Included / excluded lists */
.lt-inex{list-style:none; padding:0; margin:0;}
.lt-inex li{display:flex; gap:12px; margin-bottom:12px; font-size:14.5px; align-items:flex-start;}
.lt-inex.included li i{color:var(--lt-blue);}
.lt-inex.excluded li i{color:#B24A3A;}

/* Gallery grid */
.lt-gallery{display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:14px;}
.lt-gallery img{width:100%; height:180px; object-fit:cover; border-radius:10px;}

/* Testimonials */
.lt-testimonial{background:#fff; border:1px solid var(--lt-border); border-radius:var(--lt-radius); padding:28px; height:100%; box-shadow:var(--lt-shadow-sm);}
.lt-testimonial .stars{color:var(--lt-cyan); margin-bottom:14px; font-size:14px;}
.lt-testimonial p{font-size:15px; color:var(--lt-body); font-style:italic;}
.lt-testimonial .who{display:flex; align-items:center; gap:12px; margin-top:18px;}
.lt-testimonial .who .initials{width:42px; height:42px; border-radius:50%; background:var(--lt-navy-dark); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:700; font-family:var(--lt-font-head); flex:0 0 auto;}
.lt-testimonial .who .name{font-weight:700; color:var(--lt-navy); font-size:14.5px;}
.lt-testimonial .who .trip{font-size:12.5px; color:var(--lt-muted);}

/* Blog / travel guide article card */
.lt-article-card{background:#fff; border:1px solid var(--lt-border); border-radius:var(--lt-radius); overflow:hidden; height:100%; transition:.2s ease; box-shadow:var(--lt-shadow-sm);}
.lt-article-card:hover{transform:translateY(-5px); box-shadow:var(--lt-shadow);}
.lt-article-card-img{aspect-ratio:16/10; overflow:hidden; background:var(--lt-bg-soft);}
.lt-article-card-img img{width:100%; height:100%; object-fit:cover; transition:transform .4s ease;}
.lt-article-card:hover .lt-article-card-img img{transform:scale(1.06);}
.lt-article-card-body{padding:20px 22px 22px;}
.lt-article-card-cat{display:inline-block; background:var(--lt-cyan-light); color:var(--lt-blue-dark); font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; padding:4px 10px; border-radius:99px; margin-bottom:10px;}
.lt-article-card h3{font-size:17.5px; margin-bottom:8px; color:var(--lt-navy);}
.lt-article-card p{font-size:14px; color:var(--lt-body); margin-bottom:0;}
.lt-article-meta{font-size:12.5px; color:var(--lt-muted); margin-top:12px;}

/* Sticky mobile CTA bar */
.lt-mobile-cta-bar{position:fixed; left:0; right:0; bottom:0; z-index:997; background:#fff; border-top:1px solid var(--lt-border); box-shadow:0 -6px 20px rgba(38,41,31,.12); display:flex;}
.lt-mobile-cta-bar a{flex:1 1 0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; padding:10px 4px 8px; font-size:11.5px; font-weight:600; color:var(--lt-navy);}
.lt-mobile-cta-bar a i{font-size:16px;}
.lt-mobile-cta-bar a.is-primary{background:var(--lt-navy-dark); color:#fff;}
body{ padding-bottom: 0; }
@media(max-width:991px){ body{ padding-bottom: 60px; } }

/* Category pill filters (Tours listing) */
.lt-filter-bar{display:flex; flex-wrap:wrap; gap:10px; margin-bottom:36px;}
.lt-filter-pill{display:inline-flex; align-items:center; padding:9px 18px; border-radius:99px; border:1.5px solid var(--lt-border); color:var(--lt-navy); font-size:14px; font-weight:600; transition:.2s ease;}
.lt-filter-pill:hover{border-color:var(--lt-blue); color:var(--lt-blue);}
.lt-filter-pill.active{background:var(--lt-navy-dark); border-color:var(--lt-navy-dark); color:#fff;}

/* Best-for / highlight tag chips */
.lt-tags{display:flex; flex-wrap:wrap; gap:8px;}
.lt-tag{background:var(--lt-bg-soft); color:var(--lt-navy); font-size:13px; font-weight:600; padding:6px 14px; border-radius:99px;}

.btn-lt-outline-light{border:2px solid rgba(255,255,255,.6); color:#fff; background:transparent; border-radius:99px; padding:12px 26px; font-weight:600; display:inline-flex; align-items:center; gap:8px;}
.btn-lt-outline-light:hover{background:#fff; color:var(--lt-navy);}
