.elementor-widget-container .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-container .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-3807 .elementor-element.elementor-element-4081d1ce{--display:flex;--min-height:74px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--margin-top:0px;--margin-bottom:3px;--margin-left:0px;--margin-right:0px;--padding-top:60px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-3807 .elementor-element.elementor-element-4ed550c9{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:15px;--padding-right:15px;overflow:visible;}.elementor-3807 .elementor-element.elementor-element-4ed550c9.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-3807 .elementor-element.elementor-element-4f1f668{--display:flex;--min-height:52px;--padding-top:27px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;}.elementor-widget-html .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-html .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-elementskit-heading .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-elementskit-heading .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-3807 .elementor-element.elementor-element-2a95d58 .elementskit-section-title-wraper .elementskit-section-title{color:#12ABD6;margin:0px 0px 0px 0px;font-family:"Sanchez", Sans-serif;font-size:40px;font-weight:900;line-height:50px;}.elementor-3807 .elementor-element.elementor-element-2a95d58 .elementskit-section-title-wraper .elementskit-section-title > span{color:#000000;}.elementor-3807 .elementor-element.elementor-element-2a95d58 .elementskit-section-title-wraper .elementskit-section-title:hover > span{color:#000000;}.elementor-3807 .elementor-element.elementor-element-2a95d58 > .elementor-widget-container{margin:0px 0px 28px 0px;padding:0px 80px 0px 0px;}.elementor-3807 .elementor-element.elementor-element-2a95d58{width:var( --container-widget-width, 111.781% );max-width:111.781%;--container-widget-width:111.781%;--container-widget-flex-grow:0;}.elementor-3807 .elementor-element.elementor-element-2a95d58.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-widget-icon-list .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-icon-list .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-3807 .elementor-element.elementor-element-71c66a10 .elementor-icon-list-icon i{color:#14223B;transition:color 0.3s;}.elementor-3807 .elementor-element.elementor-element-71c66a10 .elementor-icon-list-icon svg{fill:#14223B;transition:fill 0.3s;}.elementor-3807 .elementor-element.elementor-element-71c66a10 .elementor-icon-list-item:hover .elementor-icon-list-icon i{color:#11F2FC;}.elementor-3807 .elementor-element.elementor-element-71c66a10 .elementor-icon-list-item:hover .elementor-icon-list-icon svg{fill:#11F2FC;}.elementor-3807 .elementor-element.elementor-element-71c66a10{--e-icon-list-icon-size:20px;--icon-vertical-offset:-1px;}.elementor-3807 .elementor-element.elementor-element-71c66a10 .elementor-icon-list-icon{padding-right:4px;}.elementor-3807 .elementor-element.elementor-element-71c66a10 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-3807 .elementor-element.elementor-element-71c66a10 .elementor-icon-list-item > a{font-family:"Shippori Mincho", Sans-serif;font-size:21px;font-weight:500;line-height:36px;}.elementor-3807 .elementor-element.elementor-element-71c66a10 .elementor-icon-list-text{color:#14223B;transition:color 0.3s;}.elementor-3807 .elementor-element.elementor-element-71c66a10 .elementor-icon-list-item:hover .elementor-icon-list-text{color:#11F2FC;}.elementor-3807 .elementor-element.elementor-element-71c66a10 > .elementor-widget-container{margin:0px 0px 35px 6px;}.elementor-widget-elementskit-button .eael-protected-content-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-elementskit-button .protected-content-error-msg{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-3807 .elementor-element.elementor-element-23dbfde .elementskit-btn{padding:0px 0px 0px 0px;font-family:"Roboto", Sans-serif;font-size:16px;font-weight:500;line-height:20px;color:#676B72;fill:#676B72;background-color:#02010100;border-style:none;}.elementor-3807 .elementor-element.elementor-element-23dbfde .elementskit-btn:hover{color:#63C4FF;fill:#63C4FF;}.elementor-3807 .elementor-element.elementor-element-23dbfde .elementskit-btn > :is(i, svg){font-size:14px;}.elementor-3807 .elementor-element.elementor-element-23dbfde .elementskit-btn > i, .elementor-3807 .elementor-element.elementor-element-23dbfde .elementskit-btn > svg{margin-left:5px;}.rtl .elementor-3807 .elementor-element.elementor-element-23dbfde .elementskit-btn > i, .rtl .elementor-3807 .elementor-element.elementor-element-23dbfde .elementskit-btn > svg{margin-left:0;margin-right:5px;}.elementor-3807 .elementor-element.elementor-element-23dbfde .elementor-widget-container{animation-name:ekit-fade;animation-duration:5s;animation-iteration-count:infinite;animation-direction:normal;}.elementor-3807 .elementor-element.elementor-element-2a0c4940{--display:flex;--justify-content:space-between;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:15px;--padding-right:15px;overflow:visible;}.elementor-3807 .elementor-element.elementor-element-2a0c4940:not(.elementor-motion-effects-element-type-background), .elementor-3807 .elementor-element.elementor-element-2a0c4940 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://hub4digi.com/wp-content/uploads/2025/05/shape_ellipse_lottie_widget_02.png");background-position:center center;background-repeat:no-repeat;background-size:contain;}.elementor-3807 .elementor-element.elementor-element-2a0c4940.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-3807 .elementor-element.elementor-element-685c55c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;overflow:visible;}.elementor-3807 .elementor-element.elementor-element-e63c78a{--display:flex;--min-height:349px;--justify-content:space-between;--border-radius:50px 50px 50px 50px;overflow:visible;}.elementor-3807 .elementor-element.elementor-element-e63c78a:not(.elementor-motion-effects-element-type-background), .elementor-3807 .elementor-element.elementor-element-e63c78a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#EBF9FD;}.elementor-3807 .elementor-element.elementor-element-e63c78a.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-3807 .elementor-element.elementor-element-22c42a4{--display:flex;--min-height:0px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;overflow:visible;}.elementor-3807 .elementor-element.elementor-element-0831d9c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;overflow:visible;}.elementor-3807 .elementor-element.elementor-element-83cc721{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;overflow:visible;}.elementor-3807 .elementor-element.elementor-element-165135d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;overflow:visible;}.elementor-3807 .elementor-element.elementor-element-1b10900{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;overflow:visible;}.elementor-3807 .elementor-element.elementor-element-1b10900.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-3807 .elementor-element.elementor-element-9c2e108.elementor-element{--flex-grow:0;--flex-shrink:0;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-3807 .elementor-element.elementor-element-4081d1ce{--padding-top:80px;--padding-bottom:80px;--padding-left:5px;--padding-right:0px;}.elementor-3807 .elementor-element.elementor-element-4ed550c9{--padding-top:0px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}.elementor-3807 .elementor-element.elementor-element-4f1f668{--min-height:1px;}.elementor-3807 .elementor-element.elementor-element-2a95d58 .elementskit-section-title-wraper .elementskit-section-title{margin:0px 0px 10px 0px;font-size:27px;line-height:36px;}.elementor-3807 .elementor-element.elementor-element-2a95d58 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-3807 .elementor-element.elementor-element-71c66a10{--e-icon-list-icon-size:14px;}.elementor-3807 .elementor-element.elementor-element-71c66a10 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-3807 .elementor-element.elementor-element-71c66a10 .elementor-icon-list-item > a{font-size:16px;}}@media(max-width:767px){.elementor-3807 .elementor-element.elementor-element-4081d1ce{--margin-top:0px;--margin-bottom:-70px;--margin-left:0px;--margin-right:0px;--padding-top:60px;--padding-bottom:15px;--padding-left:5px;--padding-right:5px;}.elementor-3807 .elementor-element.elementor-element-4f1f668{--margin-top:-5px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-3807 .elementor-element.elementor-element-2a95d58 .elementskit-section-title-wraper .elementskit-section-title{font-size:32px;}.elementor-3807 .elementor-element.elementor-element-23dbfde .ekit-btn-wraper .elementskit-btn{justify-content:center;}.elementor-3807 .elementor-element.elementor-element-2a0c4940{--margin-top:25px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;}.elementor-3807 .elementor-element.elementor-element-1b10900{--width:422px;}.elementor-3807 .elementor-element.elementor-element-9c2e108{width:var( --container-widget-width, 412px );max-width:412px;--container-widget-width:412px;--container-widget-flex-grow:0;}}@media(min-width:768px){.elementor-3807 .elementor-element.elementor-element-4ed550c9{--width:53.251%;}.elementor-3807 .elementor-element.elementor-element-4f1f668{--width:50%;}.elementor-3807 .elementor-element.elementor-element-2a0c4940{--width:45.958%;}.elementor-3807 .elementor-element.elementor-element-e63c78a{--width:82%;}}@media(max-width:1024px) and (min-width:768px){.elementor-3807 .elementor-element.elementor-element-4ed550c9{--width:40.811%;}.elementor-3807 .elementor-element.elementor-element-4f1f668{--width:200px;}.elementor-3807 .elementor-element.elementor-element-2a0c4940{--width:60%;}.elementor-3807 .elementor-element.elementor-element-e63c78a{--width:982.365px;}}/* Start custom CSS for html, class: .elementor-element-cdd5639 *//* Ensure "Sora" font is imported */
/* @import url('https://fonts.googleapis.com/css2?family=Sora:wght@100..800&display=swap'); */

/* --- Feature Carousel V2 CSS Variables --- */
:root {
  --fc-font-main-v2: 'Sora', sans-serif;
  --fc-text-primary-v2: #111827;
  --fc-text-secondary-v2: #374151;
  --fc-text-highlight-v2: #2563eb;
  --fc-bg-section-v2: #ffffff;
  --fc-bg-tag-v2: #e0f2fe;
  --fc-text-tag-v2: #0369a1;
  --fc-border-light-v2: #e5e7eb;
  --fc-transition-smooth: cubic-bezier(0.4, 0, 0.2, 1);
}

/* --- Main Section & Layout --- */
.feature-carousel-section-v2 {
  padding: clamp(70px, 10vw, 120px) clamp(20px, 5vw, 40px);
  background-color: var(--fc-bg-section-v2);
  font-family: var(--fc-font-main-v2);
  overflow: hidden;
}

.fc-container-v2 {
  max-width: 1140px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: clamp(40px, 6vw, 80px);
  align-items: center;
}

/* --- Content Column (Right) --- */
.fc-content-column-v2 {
  /* No changes needed here */
}
.fc-tag-v2 { display: inline-block; background-color: var(--fc-bg-tag-v2); color: var(--fc-text-tag-v2); padding: 8px 18px; border-radius: 20px; font-size: clamp(0.85rem, 1.6vw, 0.9rem); font-weight: 600; margin-bottom: 16px; }
.fc-main-headline-v2 { font-size: clamp(2.4rem, 6vw, 3.6rem); font-weight: 700; color: var(--fc-text-primary-v2); line-height: 1.2; margin: 0 0 20px 0; letter-spacing: -0.02em; }
.fc-highlight-v2 { color: var(--fc-text-highlight-v2); }
.fc-description-v2 { font-size: clamp(1rem, 2vw, 1.1rem); color: var(--fc-text-secondary-v2); line-height: 1.75; margin-bottom: 30px; }
.fc-features-list-v2 { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 12px; }
.fc-features-list-v2 li { display: flex; align-items: center; gap: 10px; font-size: clamp(0.95rem, 1.8vw, 1.05rem); font-weight: 500; color: var(--fc-text-primary-v2); }
.fc-check-icon-v2 { color: var(--fc-text-highlight-v2); }
.fc-check-icon-v2 svg { width: 18px; height: 18px; }

/* --- Carousel Column (Left) --- */
.fc-carousel-wrapper-v2 {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 5;
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 20px 40px -10px rgba(0,0,0,0.15);
  /* -- FIX: Add grab cursor to indicate it's draggable -- */
  cursor: grab;
  user-select: none; /* Prevents text selection while dragging */
}

.fc-carousel-slides-v2 { width: 100%; height: 100%; }
.fc-slide-v2 {
  position: absolute; top: 0; left: 0;
  width: 100%; height: 100%;
  opacity: 0; visibility: hidden; pointer-events: none;
}
.fc-slide-v2.active { opacity: 1; visibility: visible; pointer-events: auto; z-index: 2; }
.fc-slide-v2 img { width: 100%; height: 100%; object-fit: cover; }

/* Slide Animations */
@keyframes fcSlideEnterRight { from { transform: translateX(30px); opacity: 0; } to { transform: translateX(0); opacity: 1; } }
@keyframes fcSlideEnterLeft { from { transform: translateX(-30px); opacity: 0; } to { transform: translateX(0); opacity: 1; } }
@keyframes fcSlideExitRight { from { transform: translateX(0); opacity: 1; } to { transform: translateX(30px); opacity: 0; } }
@keyframes fcSlideExitLeft { from { transform: translateX(0); opacity: 1; } to { transform: translateX(-30px); opacity: 0; } }

.fc-slide-v2.enter-right { animation: fcSlideEnterRight 0.6s var(--fc-transition-smooth) forwards; }
.fc-slide-v2.enter-left { animation: fcSlideEnterLeft 0.6s var(--fc-transition-smooth) forwards; }
.fc-slide-v2.exit-right { animation: fcSlideExitRight 0.6s var(--fc-transition-smooth) forwards; z-index: 1; }
.fc-slide-v2.exit-left { animation: fcSlideExitLeft 0.6s var(--fc-transition-smooth) forwards; z-index: 1; }

/* Navigation */
.fc-carousel-nav-v2 {
  position: absolute;
  bottom: 20px; right: 20px;
  z-index: 3;
  display: flex; gap: 10px;
}
.fc-nav-button-v2 {
  width: 44px; height: 44px;
  border-radius: 50%;
  background-color: rgba(255,255,255,0.8);
  border: 1px solid var(--fc-border-light-v2);
  color: var(--fc-text-primary-v2);
  display: flex; align-items: center; justify-content: center;
  cursor: pointer;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  transition: all 0.25s var(--fc-transition-smooth);
}
.fc-nav-button-v2:hover { transform: scale(1.1); background-color: #ffffff; }
/* -- FIX: This rule now correctly rotates the left-arrow icon to make it a right-arrow icon -- */
.fc-nav-button-v2.fc-next svg { 
  transform: rotate(180deg); 
}

.fc-carousel-dots-v2 {
  position: absolute;
  bottom: 20px; left: 50%;
  transform: translateX(-50%);
  z-index: 3;
  display: flex; gap: 8px;
  background-color: rgba(0,0,0,0.2);
  padding: 8px 12px;
  border-radius: 20px;
  backdrop-filter: blur(4px);
}
.fc-dot-v2 {
  width: 8px; height: 8px;
  border-radius: 50%;
  background-color: rgba(255,255,255,0.5);
  border: none; padding: 0;
  cursor: pointer;
  transition: all 0.25s var(--fc-transition-smooth);
}
.fc-dot-v2.active {
  background-color: #ffffff;
  transform: scale(1.2);
}

/* --- Responsive Adjustments --- */
@media (max-width: 991px) {
  .fc-container-v2 {
    grid-template-columns: 1fr; /* Stack on tablet and mobile */
    /* -- FIX: Reduced the gap on mobile for better spacing -- */
    gap: 35px;
  }
  .fc-carousel-column-v2 { order: 1; }
  .fc-content-column-v2 { order: 2; text-align: center; }
  
  /* -- FIX: Adjust carousel aspect ratio on mobile to fix spacing issue -- */
  .fc-carousel-wrapper-v2 {
    aspect-ratio: 1 / 1; /* Makes the carousel square, more suitable for mobile */
    max-height: 450px; /* Prevents the image from being excessively tall on narrow screens */
  }

  .fc-features-list-v2 {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    max-width: 400px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5b0b652 */@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

/* ----- GLOBAL VARIABLES (اختياري - Optional, for easy color changes) ----- */
:root {
  --brand-blue-primary: #005FF9; /* Zre9 primary jdid */
  --brand-blue-light: #E6F0FF; /* Zre9 bared l lkhlfiyat */
  --brand-blue-border: #C9DFFF; /* Zre9 l borders */
  --text-dark-primary: #1D2434; /* K7el l l3nawin */
  --text-dark-secondary: #384252; /* K7el/Rmadi l text l 3adi */
  --text-gray-muted: #6A7485; /* Rmadi l text sghir اولا détails */
  --card-background: #FFFFFF;
  --section-background: #F4F8FF; /* Loun zre9 bared jdid l section */
}

/* ----- Styling dyal Section Kamla ----- */
.expert-text-features-section {
  font-family: 'Inter', sans-serif;
  padding: 90px 30px 80px 30px; /* Espace kbir */
  text-align: center;
  background-color: var(--section-background);
  border-top-left-radius: 40px; /* Dwirat kbar kter */
  border-top-right-radius: 40px;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  overflow: hidden; /* Changed from overflow-x to just overflow for all directions */
  position: relative;
}

/* ----- 1. Boutona "What We Offer" ----- */
.et-section-tag-container {
  margin-bottom: 25px;
}

.et-section-tag {
  display: inline-block;
  padding: 10px 28px; /* Kber chwiya */
  background-color: var(--card-background);
  color: var(--brand-blue-primary);
  border-radius: 25px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.3px;
  box-shadow: 0px 6px 15px -3px rgba(0, 95, 249, 0.15);
  transition: transform 0.2s ease-out;
}
.et-section-tag:hover {
  transform: translateY(-2px);
}

/* ----- 2. L 3onwan l Kbir ----- */
.et-main-heading {
  font-size: clamp(34px, 5.5vw, 48px); /* Kber kter */
  font-weight: 800; /* Extra bold */
  color: var(--text-dark-primary);
  margin-top: 0;
  margin-bottom: 22px;
  line-height: 1.25;
  letter-spacing: -0.5px; /* Kayعطي شكل premium */
}

.et-main-heading .et-highlighted-text {
  color: var(--brand-blue-primary);
  /* Nقدرو nزيدو effet akhor l "highlight" */
  /* background: linear-gradient(to top, var(--brand-blue-light) 40%, transparent 40%); */
  /* display: inline; padding: 0 2px; */
}

/* ----- 3. L 3onwan Sghir (Paragraph) ----- */
.et-subheading {
  font-size: clamp(17px, 2.7vw, 20px);
  color: var(--text-dark-secondary);
  line-height: 1.75;
  max-width: 750px;
  margin: 0 auto 75px auto; /* Espace kbir kter 9bel les cards */
}

/* ----- 4. Rb3a dyal Les Cards b Text Layout ----- */
.et-features-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(290px, 1fr)); /* Minmax kber chwiya */
  gap: 35px; /* Espace kbir bin les cards */
}

.et-feature-card {
  display: flex;
  flex-direction: column;
  background-color: var(--card-background);
  padding: 40px 35px; /* Padding kbir l dakhel */
  border-radius: 20px; /* Dwirat kbar ou moderne */
  text-align: left;
  border: 1px solid var(--brand-blue-border); /* Border zre9 bared */
  box-shadow: 0px 12px 30px -10px rgba(150, 170, 210, 0.1); /* Dil khfif ou anيق */
  transition: transform 0.35s cubic-bezier(0.175, 0.885, 0.32, 1.275),
              box-shadow 0.35s cubic-bezier(0.175, 0.885, 0.32, 1.275),
              border-color 0.3s ease;
}

.et-feature-card:hover {
  transform: translateY(-10px) scale(1.015); /* Tطلع lfoug ou tkber chwiya */
  box-shadow: 0px 20px 40px -12px rgba(0, 95, 249, 0.2); /* Dil zre9 iولي واضح kter */
  border-color: var(--brand-blue-primary); /* Border zre9 primary melli hover */
}

.et-feature-title {
  font-size: 22px; /* Kber chwiya */
  font-weight: 700;
  color: var(--text-dark-primary);
  margin-top: 0;
  margin-bottom: 12px;
  line-height: 1.3;
}

.et-feature-description {
  font-size: 16px; /* Mzyan */
  color: var(--text-dark-secondary);
  line-height: 1.7;
  margin-bottom: 22px;
}

/* Styling dyal List dyal les Détails */
.et-feature-details-list {
  list-style-type: none;
  padding-left: 0;
  margin-top: 0;
  margin-bottom: 30px;
  flex-grow: 1;
}

.et-feature-details-list li {
  font-size: 15px; /* Chwiya kber */
  color: var(--text-gray-muted); /* Loun rmadi l les détails */
  margin-bottom: 10px; /* Espace kber chwiya */
  padding-left: 28px; /* Espace kter l "icona" */
  position: relative;
  line-height: 1.6;
}

/* Styling dyal "bullet point" أنيق */
.et-feature-details-list li::before {
  content: ''; /* N7eydo l checkmark, ndiro styling akhor */
  position: absolute;
  left: 5px; /* N9rbouha chwiya */
  top: 8px; /* Nضبطoha mzyan عموديا */
  width: 8px;  /* 3ord */
  height: 8px; /* Toul */
  background-color: var(--brand-blue-primary); /* Loun zre9 dyal l point */
  border-radius: 50%; /* Bach tji dayra */
  /* box-shadow: 0 0 0 3px var(--brand-blue-light); */ /* Optional: halo zre9 khfif */
}

/* Styling dyal Call to Action (CTA) Link */
.et-card-cta {
  display: inline-block;
  margin-top: auto;
  padding: 12px 22px; /* Kber chwiya */
  background-color: var(--brand-blue-light); /* Lkhalfia zer9a bareda */
  color: var(--brand-blue-primary); /* Lkhat zre9 */
  border: none; /* Bla border, nعتامدو 3la background */
  border-radius: 10px; /* Dwira mzyana */
  text-decoration: none;
  font-weight: 600;
  font-size: 14.5px;
  transition: background-color 0.25s ease, color 0.25s ease, transform 0.2s ease-out;
  align-self: flex-start;
}

.et-card-cta:hover {
  background-color: var(--brand-blue-primary); /* Lkhalfia tولي zre9a primary */
  color: #FFFFFF; /* Lkhat iولي byed */
  transform: translateY(-2px) scale(1.03);
}

/* ----- RESPONSIVE DESIGN ----- */

/* TABLET: 2x2 Grid */
@media (min-width: 768px) and (max-width: 1023px) {
  .expert-text-features-section {
    padding: 80px 25px 70px 25px;
    border-top-left-radius: 35px;
    border-top-right-radius: 35px;
  }
  .et-features-grid {
    /* Change to show cards in a single line (scrolling horizontally) */
    grid-template-columns: unset; /* Remove grid columns */
    grid-auto-flow: column; /* Arrange items in columns */
    overflow-x: auto; /* Enable horizontal scrolling */
    justify-content: flex-start; /* Align items to the start */
    padding-bottom: 20px; /* Add some padding for scrollbar */
    max-width: 100%; /* Ensure it takes full width */
  }
  .et-feature-card {
    flex-shrink: 0; /* Prevent cards from shrinking */
    width: 320px; /* Give cards a fixed width to ensure they sit side-by-side */
    margin-right: 30px; /* Add margin between cards for scrolling */
    padding: 35px 30px; /* Padding mzyan l tablette */
    border-radius: 18px;
  }
  /* Remove the max-width and margin-left/right auto that centers the grid for 2x2 layout */
  .et-features-grid {
    max-width: unset;
    margin-left: unset;
    margin-right: unset;
  }

  .et-feature-title {
    font-size: 21px;
  }
  .et-feature-description {
    font-size: 15.5px;
    margin-bottom: 20px;
  }
  .et-feature-details-list li {
    font-size: 14.5px;
    margin-bottom: 9px;
    padding-left: 26px;
  }
  .et-card-cta {
    font-size: 14px;
    padding: 11px 20px;
  }
}

/* MOBILE: Card wa7da f ster, sgher */
@media (max-width: 767px) {
  .expert-text-features-section {
    padding: 70px 20px 60px 20px; /* Zedt f padding */
    border-top-left-radius: 30px;
    border-top-right-radius: 30px;
  }
  .et-main-heading {
    font-size: clamp(30px, 7vw, 38px); /* Chwiya kber f mobile */
    letter-spacing: -0.25px;
  }
  .et-subheading {
    font-size: clamp(16px, 4vw, 18px);
    margin-bottom: 60px; /* Espace kbir */
  }
  .et-features-grid {
    grid-template-columns: 1fr;
    gap: 25px; /* Espace mzyan */
  }
  .et-feature-card {
    padding: 30px 25px;
    border-radius: 16px; /* Dwirat mzyanin l mobile */
  }
  .et-feature-title {
    font-size: 20px;
  }
  .et-feature-description {
    font-size: 15.5px;
    margin-bottom: 20px;
  }
  .et-feature-details-list li {
    font-size: 14.5px; /* Nkhaliwha mzyana */
    margin-bottom: 8px;
    padding-left: 25px;
  }
  .et-feature-details-list li::before {
    left: 4px;
    top: 7px;
    width: 7px;
    height: 7px;
  }
  .et-card-cta {
    font-size: 14px;
    padding: 10px 18px;
    width: 100%; /* CTA ikhod l3ord kamel f mobile ila bghina */
    text-align: center;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-caeb2de *//* ----- Import Font ----- */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

/* ----- CSS Variables ----- */
:root {
  --vt-brand-blue-primary: #005FF9;
  --vt-brand-blue-light: #E6F0FF;
  --vt-text-dark-primary: #1D2434;
  --vt-text-dark-secondary: #384252;
  --vt-text-light: #FFFFFF;
  --vt-section-background: #FFFFFF;
  --vt-image-overlay-bg-start: rgba(10, 20, 40, 0.85); /* Loun l overlay men lte7t */
  --vt-image-overlay-bg-mid: rgba(10, 20, 40, 0.55);  /* Loun l overlay f l west */
  --vt-image-placeholder-bg: #E9EEF5; /* Loun lkhlfia dyal tsawr ila makaynach */
}

/* ----- Styling dyal Section Kamla ----- */
.visual-tour-section {
  font-family: 'Inter', sans-serif;
  padding: 80px 30px;
  background-color: var(--vt-section-background);
  overflow: hidden;
}

/* ----- Section Header ----- */
.vt-section-header {
  text-align: center;
  margin-bottom: 50px;
}

.vt-tag-container {
  margin-bottom: 15px;
}

.vt-tag {
  display: inline-block;
  padding: 8px 20px;
  background-color: var(--vt-brand-blue-light);
  color: var(--vt-brand-blue-primary);
  border-radius: 20px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.2px;
}

.vt-main-heading {
  font-size: clamp(30px, 5vw, 42px);
  font-weight: 800;
  color: var(--vt-text-dark-primary);
  margin-top: 0;
  margin-bottom: 12px;
  line-height: 1.25;
  letter-spacing: -0.4px;
}

.vt-main-heading .vt-highlight {
  color: var(--vt-brand-blue-primary);
  border-bottom: 3px solid var(--vt-brand-blue-primary);
  padding-bottom: 2px;
}

.vt-subheading {
  font-size: clamp(16px, 2.5vw, 18px);
  color: var(--vt-text-dark-secondary);
  line-height: 1.65;
  max-width: 650px;
  margin-left: auto;
  margin-right: auto;
}

/* ----- Image Grid ----- */
.vt-image-grid {
  display: grid;
  grid-template-columns: 2fr 1fr; /* L column l louwla 2x 9ed l tania */
  /* grid-template-rows: auto; */ /* Nkhaliwha auto ila l aspect-ratio howa li kay7kem f tool */
  gap: 20px;
  /* max-width: 1100px; */ /* Optional: 7edd l3ord l2a9sa */
  /* margin: 0 auto; */ /* Optional: Bach iji f l west */
}

.vt-image-item {
  position: relative;
  overflow: hidden;
  border-radius: 16px;
  box-shadow: 0px 10px 25px rgba(30, 50, 80, 0.08);
  width: 100%; /* Dima 100% dyal l blassa li mخصصة lih f grid */
  background-color: var(--vt-image-placeholder-bg); /* Loun lkhlfia ila tsowira makantch */
}

.vt-image-item img {
  display: block;
  width: 100%;
  height: 100%; /* Dima 100% dyal l parent (.vt-image-item) */
  object-fit: cover; /* Bach t3emmer l blassa kamla */
  transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* Layout dyal Grid + ASPECT RATIO */
.vt-image-large {
  grid-column: 1 / 2; /* Column 1 */
  grid-row: 1 / 3;    /* Rows 1 & 2 (kayشدهم بجوج) */
  aspect-ratio: 10 / 7;  /* Example: 10 (width) by 7 (height) - T9dr tbeddelha */
                       /* Jarreb 4/3, 16/9, etc. */
}

.vt-image-small {
  /* Tsawr sghar ghadi ijiw automatisch f column 2 */
  /* L7ajm dyalhom ghadi iتحدد b l'espace li ba9i ou l aspect-ratio */
  aspect-ratio: 4 / 2.8; /* Example: 4 (width) by 2.8 (height) - Chwiya 3rid */
                        /* Jarreb 3/2, 16/9, etc. */
}

/* HADA OPTIONAL: Ila bghiti t3ti class l koul wa7da sghira bach t7kem fihom kter */
/* .vt-image-small-top { grid-row: 1 / 2; } */
/* .vt-image-small-bottom { grid-row: 2 / 3; } */
/* MAIS B ASPECT-RATIO, GRID KAY9ADDAHOM AUTOMATIQUEMENT F LES ROWS LI KAININ */

/* Image Overlay & Text (Hover Effect) */
.vt-image-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%; /* L'overlay kayشد l'image kamla */
  background: linear-gradient(to top, var(--vt-image-overlay-bg-start) 0%, var(--vt-image-overlay-bg-mid) 50%, transparent 100%);
  color: var(--vt-text-light);
  padding: 25px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end; /* L contenu iجي lte7t dyal l overlay */
  opacity: 0;
  transform: translateY(20px); /* F l bidaya نازل chwiya */
  transition: opacity 0.4s ease-out, transform 0.4s ease-out;
  box-sizing: border-box;
}

.vt-image-item:hover .vt-image-overlay {
  opacity: 1;
  transform: translateY(0);
}

.vt-image-item:hover img {
  transform: scale(1.05);
}

.vt-overlay-title {
  font-size: clamp(18px, 2.5vw, 22px);
  font-weight: 700;
  margin-top: 0;
  margin-bottom: 8px;
  line-height: 1.3;
  transform: translateY(15px);
  opacity: 0;
  transition: transform 0.4s 0.1s ease-out, opacity 0.4s 0.1s ease-out; /* Delay chwiya 9lel */
}

.vt-overlay-description {
  font-size: clamp(13px, 2vw, 15px);
  line-height: 1.5;
  margin-bottom: 0;
  opacity: 0;
  transform: translateY(15px);
  transition: transform 0.4s 0.2s ease-out, opacity 0.4s 0.2s ease-out; /* Delay kter chwiya */
}

.vt-image-item:hover .vt-overlay-title,
.vt-image-item:hover .vt-overlay-description {
  opacity: 1;
  transform: translateY(0);
}

/* ----- RESPONSIVE DESIGN ----- */
@media (max-width: 767px) { /* Mobile */
  .visual-tour-section {
    padding: 60px 20px;
  }
  .vt-section-header {
    margin-bottom: 40px;
  }
  .vt-image-grid {
    grid-template-columns: 1fr; /* Koul tsowira f column wa7da */
    gap: 15px; /* Nsaghro l gap */
  }
  .vt-image-large,
  .vt-image-small {
    grid-column: auto; /* Koul wa7da takhod blassa normal f column */
    grid-row: auto;    /* Koul wa7da takhod blassa normal f row */
    aspect-ratio: 16 / 10; /* Nقدرو n3tiw aspect ratio موحد l koulchi f mobile */
                          /* Awla n7eydo l aspect-ratio ou nkhaliw l image t7kem f tool dyalha */
  }
  .vt-image-item {
    border-radius: 12px;
  }
  .vt-image-overlay {
    padding: 20px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d80856f *//* ----- Import Font (Nafs Font) ----- */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

/* ----- CSS Variables ----- */
:root {
  --pr-brand-primary: #0062FF; /* Zre9 Primary */
  --pr-brand-light: #E9F2FF;   /* Zre9 bared l lkhlfiyat dyal toggle */
  --pr-brand-hover-light: #D1E3FF; /* Loun zre9 bared kter l hover (Jdid) */
  --pr-card-border-light-blue: #C0D7FF; /* Loun zre9 bared l border dyal card (Jdid) */

  --pr-brand-secondary: #3641D7; /* Zre9 akhor (e.g., for "Most Popular" if used elsewhere) */
  --pr-text-dark: #1B2538;
  --pr-text-medium: #4A5873;
  --pr-text-light: #728197;
  --pr-text-on-primary: #FFFFFF; /* Lkhat byed foug l primary */
  --pr-card-bg: #FFFFFF;
  --pr-section-bg: #FFFFFF; /* Rmadi bared bzaf l section */
  --pr-border-light: var(--pr-card-border-light-blue); /* Loun border l card */
  --pr-border-medium: #A8C5FF; /* Loun zre9 chwiya kter l hover dyal card border */
}

/* ----- Styling dyal Section Kamla ----- */
.pricing-section {
  font-family: 'Inter', sans-serif;
  padding: 80px 30px 90px 30px;
  background-color: var(--pr-section-bg);
  overflow: hidden;
}

/* ----- Section Header ----- */
.pr-section-header {
  text-align: center;
  margin-bottom: 40px;
}
.pr-tag-container { margin-bottom: 15px; }
.pr-tag {
  display: inline-block;
  padding: 8px 20px;
  background-color: var(--pr-brand-light);
  color: var(--pr-brand-primary);
  border-radius: 20px;
  font-size: 13px;
  font-weight: 600;
}
.pr-main-heading {
  font-size: clamp(32px, 5vw, 44px);
  font-weight: 800;
  color: var(--pr-text-dark);
  margin-top: 0;
  margin-bottom: 12px;
  line-height: 1.25;
}
.pr-main-heading .pr-highlight {
  color: var(--pr-brand-primary);
  border-bottom: 3px solid var(--pr-brand-primary);
  padding-bottom: 3px;
}
.pr-subheading {
  font-size: clamp(16px, 2.5vw, 18.5px);
  color: var(--pr-text-medium);
  line-height: 1.7;
  max-width: 680px;
  margin-left: auto;
  margin-right: auto;
}

/* ----- Toggle Switch ----- */
.pr-toggle-switch-container {
  display: flex;
  justify-content: center;
  margin-bottom: 50px;
}
.pr-toggle-switch {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  background-color: var(--pr-brand-light);
  border-radius: 30px;
  padding: 5px;
  box-shadow: 0 4px 12px rgba(0, 98, 255, 0.08);
  position: relative;
}
.pr-toggle-btn {
  background-color: transparent;
  color: var(--pr-text-medium);
  border: none;
  padding: 12px 20px;
  border-radius: 25px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.3s ease, color 0.3s ease, box-shadow 0.3s ease;
  outline: none;
  position: relative;
  z-index: 2;
  margin: 2px;
  white-space: nowrap;
}

.pr-toggle-btn:not(.active):hover {
  background-color: var(--pr-brand-hover-light);
  color: var(--pr-brand-primary);
}

.pr-toggle-btn.active {
  background-color: var(--pr-brand-primary);
  color: var(--pr-text-on-primary);
  box-shadow: 0 4px 10px rgba(0, 98, 255, 0.25);
}

/* ----- Pricing Cards ----- */
.pr-plans-container {
  display: none;
}
.pr-plans-container.active-plans {
  display: block;
}
.pr-pricing-grid {
  display: grid;
  /* Default for multiple cards (e.g., if you had a 3-card layout elsewhere) */
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 30px;
  align-items: stretch; /* Ensures cards in a row have same height */
}

/* Style specifically for the single card layout in the Open Space section */
.pr-pricing-grid.pr-single-card-layout {
  grid-template-columns: 1fr; /* Ensure only one column for the single card */
  max-width: 480px;          /* Set a max-width for the single card container */
  margin-left: auto;
  margin-right: auto;         /* Center the grid container */
}


.pr-pricing-card {
  background-color: var(--pr-card-bg);
  border: 1.5px solid var(--pr-card-border-light-blue);
  border-radius: 16px;
  padding: 35px 30px;
  display: flex;
  flex-direction: column;
  text-align: left;
  box-shadow: 0 5px 15px rgba(30, 60, 110, 0.05);
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.pr-pricing-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 12px 25px rgba(30, 60, 110, 0.1);
  border-color: var(--pr-border-medium);
}

/* Card Content Styling */
.pr-plan-title {
  font-size: 22px;
  font-weight: 700;
  color: var(--pr-text-dark);
  margin-top: 0;
  margin-bottom: 8px;
}
.pr-plan-price {
  font-size: 36px;
  font-weight: 800;
  color: var(--pr-text-dark);
  margin-bottom: 8px;
  line-height: 1;
}
.pr-plan-price .pr-price-duration {
  font-size: 15px;
  font-weight: 500;
  color: var(--pr-text-light);
  margin-left: 4px;
}
.pr-plan-description {
  font-size: 15px;
  color: var(--pr-text-medium);
  margin-bottom: 25px;
  min-height: 40px; /* Helps align descriptions if text length varies slightly */
}

.pr-features-list {
  list-style-type: none;
  padding-left: 0;
  margin-top: 0;
  margin-bottom: 30px;
  flex-grow: 1; /* Allows list to take up space, pushing button to bottom */
}
.pr-features-list li {
  font-size: 15px;
  color: var(--pr-text-medium);
  margin-bottom: 12px;
  display: flex;
  align-items: flex-start;
}
.pr-features-list li.no-icon {
  /* No specific styling needed for list items without icons */
}

.pr-select-plan-btn {
  display: block;
  width: 100%;
  text-align: center;
  background-color: var(--pr-brand-primary);
  color: var(--pr-text-on-primary);
  border: none;
  padding: 15px 20px;
  border-radius: 10px;
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  margin-top: auto; /* Pushes button to the bottom of the card */
  transition: background-color 0.25s ease, transform 0.2s ease-out, box-shadow 0.25s ease, color 0.25s ease;
}
.pr-select-plan-btn:hover {
  background-color: var(--pr-brand-hover-light);
  color: var(--pr-brand-primary);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 98, 255, 0.15);
}

/* ----- See All Pricing Button ----- */
.pr-see-all-container {
  text-align: center;
  margin-top: 50px; /* Space above the button */
}
.pr-see-all-pricing-btn {
  display: inline-block;
  padding: 14px 35px;
  font-size: 16px;
  font-weight: 600;
  color: var(--pr-brand-primary);
  background-color: transparent;
  border: 2px solid var(--pr-brand-primary);
  border-radius: 30px;
  text-decoration: none;
  transition: all 0.3s ease;
}
.pr-see-all-pricing-btn:hover {
  background-color: var(--pr-brand-primary);
  color: var(--pr-text-on-primary);
  box-shadow: 0 5px 15px rgba(0, 98, 255, 0.2);
}


/* ----- RESPONSIVE DESIGN ----- */
@media (max-width: 991px) { /* Tablet and below */
  .pricing-section { padding: 70px 25px 80px 25px; }
  .pr-toggle-btn {
    padding: 10px 15px; /* Adjust padding for toggle buttons */
    font-size: 13px;
  }
  .pr-pricing-grid.pr-single-card-layout {
     max-width: 420px; /* Slightly smaller max-width for the single card on tablets */
  }
}

@media (max-width: 767px) { /* Mobile */
  .pricing-section { padding: 60px 20px 70px 20px; }
  .pr-main-heading { font-size: clamp(28px, 6vw, 36px); }
  .pr-subheading { font-size: clamp(15px, 3.5vw, 17px); margin-bottom: 40px; }
  .pr-toggle-switch-container { margin-bottom: 40px; }
  .pr-toggle-switch {
    border-radius: 25px; /* Adjust if needed */
  }
  .pr-toggle-btn {
    padding: 10px 12px; /* Smaller padding for mobile toggle buttons */
    font-size: 12px; /* Smaller font for mobile toggle buttons */
    border-radius: 20px;
  }
  /* For single card layout on mobile, it will naturally take full width up to its parent's padding */
  .pr-pricing-grid.pr-single-card-layout {
    max-width: none; /* Allow it to take available width within padding */
    /* grid-template-columns: 1fr; is already set by the class */
  }
  .pr-pricing-card {
    padding: 30px 25px;
    border-radius: 12px;
  }
  .pr-plan-price { font-size: 32px; }
  .pr-plan-price .pr-price-duration { font-size: 14px; }
  .pr-plan-description { font-size: 14.5px; min-height: auto; }
  .pr-features-list li { font-size: 14.5px; }
  .pr-select-plan-btn { padding: 14px 18px; font-size: 15px; }
  .pr-see-all-pricing-btn { padding: 12px 30px; font-size: 15px;}
}

@media (max-width: 480px) { /* Even smaller mobiles */
    .pr-toggle-btn {
        padding: 8px 10px;
        font-size: 11px;
    }
    .pr-main-heading {
        font-size: 26px;
    }
    .pr-subheading {
        font-size: 14px;
    }
    /* Ensure single card grid is still manageable */
    .pr-pricing-grid.pr-single-card-layout {
        /* No change needed here, max-width: none from above still applies */
    }
    .pr-pricing-card {
        padding: 25px 20px; /* Slightly less padding on very small screens */
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-1aab57d *//* ----- Import Font ----- */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

/* ----- CSS Variables ----- */
:root {
  --faq-brand-cyan: #67E8F9; /* Cyan-300 */
  --faq-brand-cyan-darker: #22D3EE; /* Cyan chwiya mghlou9 l hover/active */
  --faq-brand-blue-primary: #005FF9; /* Zre9 li kona khdamin bih */
  --faq-text-dark: #1A202C;
  --faq-text-medium: #3E4C59;
  --faq-text-light: #6B7280;
  --faq-border-color: #E5E7EB; /* Rmadi bared l borders */
  --faq-accordion-bg: #FFFFFF;
  --faq-section-bg: #FFFFFF; /* Rmadi bared bzaf l section */
}

/* ----- Styling dyal Section Kamla ----- */
.faq-section {
  font-family: 'Inter', sans-serif;
  padding: 80px 30px;
  background-color: var(--faq-section-bg);
  overflow: hidden;
}

/* ----- Section Header ----- */
.faq-section-header {
  text-align: center;
  margin-bottom: 50px;
}
.faq-tag-container { margin-bottom: 15px; }
.faq-tag {
  display: inline-block;
  padding: 8px 22px; /* Kber chwiya */
  /* Lkhalfia b loun Cyan */
  background-color: #CFFAFE; /* Loun Cyan bared bzaf (Cyan-100/50) */
  color: #0891B2; /* Loun Cyan mghlou9 (Cyan-600) */
  border-radius: 20px;
  font-size: 13px;
  font-weight: 600;
}
.faq-main-heading {
  font-size: clamp(32px, 5vw, 44px);
  font-weight: 800;
  color: var(--faq-text-dark);
  margin-top: 0;
  margin-bottom: 12px;
  line-height: 1.25;
}
.faq-main-heading .faq-highlight {
  color: var(--faq-brand-cyan-darker); /* Highlight b Cyan */
  /* Nقدرو nزيدو border-bottom b Cyan */
  border-bottom: 3px solid var(--faq-brand-cyan-darker);
  padding-bottom: 3px;
}
.faq-subheading {
  font-size: clamp(16px, 2.5vw, 18px);
  color: var(--faq-text-medium);
  line-height: 1.65;
  max-width: 650px;
  margin-left: auto;
  margin-right: auto;
}

/* ----- Accordion Container ----- */
.faq-accordion-container {
  max-width: 780px; /* N7eddo l3ord dyal l accordion */
  margin: 0 auto; /* Bach iji f l west */
  border: 1px solid var(--faq-border-color); /* Border khfif l l'ensemble */
  border-radius: 12px; /* Dwirat l l'ensemble */
  background-color: var(--faq-accordion-bg);
  box-shadow: 0 4px 12px rgba(0,0,0,0.04);
}

.faq-accordion-item {
  border-bottom: 1px solid var(--faq-border-color); /* Khet bin koul item */
}
.faq-accordion-item:last-child {
  border-bottom: none; /* L item lخر bla border lte7t */
}

.faq-question {
  display: flex; /* Bach nقدرو n aligniw l sou2al m3a l icona */
  justify-content: space-between; /* Sou2al 3la lissr, icona 3la limen */
  align-items: center; /* Ijiw f nafs l mostawa عموديا */
  padding: 20px 25px; /* Espace l dakhel */
  font-size: 17px; /* Nقدرو nكبروه chwiya */
  font-weight: 600;
  color: var(--faq-text-dark);
  cursor: pointer;
  list-style: none; /* N7eydo n9itat dyal <summary> */
  transition: background-color 0.2s ease;
}
.faq-question::-webkit-details-marker { display: none; } /* N7eydo l arrow par défaut f Chrome/Safari */
.faq-question::marker { display: none; } /* N7eydo l arrow par défaut f Firefox */

.faq-accordion-item[open] > .faq-question,
.faq-question:hover {
  background-color: #FDFEFF; /* Loun khfif bzaf melli open awla hover */
  color: var(--faq-brand-blue-primary); /* Loun zre9 l sou2al melli open/hover */
}

/* Icona dyal Arrow (b CSS) */
.faq-icon-placeholder {
  display: inline-block;
  width: 12px; /* 3ord dyal l icona */
  height: 12px; /* Toul dyal l icona */
  border-right: 2.5px solid var(--faq-text-light); /* Khet limeni */
  border-bottom: 2.5px solid var(--faq-text-light); /* Khet te7tani */
  transform: rotate(45deg) translateY(-25%); /* Dayra b 45°, ou mطلعa chwiya */
  transition: transform 0.3s ease-out, border-color 0.2s ease;
  margin-left: 15px; /* Espace binha ou bin lkhat */
}
.faq-accordion-item[open] .faq-icon-placeholder {
  transform: rotate(-135deg) translateY(-25%); /* Melli open, katقلب lfo9 */
  border-color: var(--faq-brand-blue-primary); /* Loun zre9 melli open */
}
.faq-question:hover .faq-icon-placeholder {
    border-color: var(--faq-brand-blue-primary); /* Loun zre9 melli hover */
}


.faq-answer {
  padding: 0px 25px 25px 25px; /* Padding (bla padding lfo9 7it kayn dyal summary) */
  font-size: 15.5px;
  color: var(--faq-text-medium);
  line-height: 1.75;
  /* Animation dyal slide down (optional, khassha chwiya JS l t7sin) */
  /* max-height: 0; */
  /* overflow: hidden; */
  /* transition: max-height 0.4s ease-out, padding-top 0.4s ease-out, padding-bottom 0.4s ease-out; */
}
/* .faq-accordion-item[open] .faq-answer {
  max-height: 500px; // 9ima kbira bach tسمح l contenu kamel iban
  padding-top: 10px; // Nزيدو padding lfo9 melli iتحل
} */

.faq-answer p {
  margin-top: 0;
  margin-bottom: 1em;
}
.faq-answer p:last-child {
  margin-bottom: 0;
}
.faq-answer ul {
  padding-left: 20px; /* Padding lissri l list */
  margin-top: 0.5em;
  margin-bottom: 0;
}
.faq-answer ul li {
  margin-bottom: 0.5em;
}


/* ----- RESPONSIVE DESIGN ----- */
@media (max-width: 767px) { /* Mobile */
  .faq-section {
    padding: 60px 20px;
  }
  .faq-section-header {
    margin-bottom: 40px;
  }
  .faq-main-heading {
    font-size: clamp(28px, 6vw, 36px);
  }
  .faq-subheading {
    font-size: clamp(15px, 3.5vw, 17px);
  }
  .faq-accordion-container {
    border-radius: 10px; /* Nsaghro dwirat */
  }
  .faq-question {
    padding: 18px 20px; /* Nsaghro padding */
    font-size: 16px;
  }
  .faq-answer {
    padding: 0px 20px 20px 20px;
    font-size: 15px;
  }
  .faq-icon-placeholder {
    width: 10px;
    height: 10px;
    border-width: 2px; /* Nsaghro l icona chwiya */
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ef6b7b1 *//* ----- Import Font (Nafs Font) ----- */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

/* ----- CSS Variables ----- */
:root {
  /* Alwan l had la section */
   /* ... l ba9i dyal les variables ... */
  --cta-bg-cyan-400: #CFFAFE; /* CYAN-200 L LKHALFIA DYAL SECTION */
  --cta-text-on-cyan-bg: #083344;     /* Loun k7el/zre9 mghlou9 l lkhat foug lkhlfia Cyan (Cyan-900/950) */
  --cta-subtext-on-cyan-bg: #0E7490; /* Loun zre9/Cyan mghlou9 l subheading (Cyan-700) */
  
  --cta-button-primary-bg: #FFFFFF;        /* Lkhalfia bida l l boutona l louwla */
  --cta-button-primary-text: #005FF9;     /* Lkhat zre9 l l boutona l louwla */
  
  /* L HOVER DYAL LES BOUTOUNAT BJOOJ GHADI IKON ZRE9 FAATE7 */
  --cta-button-hover-bg-light-blue: #EBF4FF; /* Loun zre9 bared l hover background */
  --cta-button-hover-text-blue: #005FF9;    /* Loun zre9 l hover text */

  --cta-button-secondary-bg: #005FF9;      /* Lkhalfia zre9a l l boutona l tania (PAR DEFAUT) */
  --cta-button-secondary-text: #FFFFFF;    /* Lkhat byed l l boutona l tania (PAR DEFAUT) */
  
  --cta-border-radius-section: 24px;
  --cta-border-radius-button: 50px;
}

/* ----- Styling dyal Section Kamla ----- */
.cta-section {
  font-family: 'Inter', sans-serif;
  background-color: var(--cta-bg-cyan-400); /* LKHALFIA CYAN-400 */
  border-radius: var(--cta-border-radius-section);
  padding: 70px 30px;
  margin: 40px 20px;
  text-align: center;
  box-shadow: 0 10px 30px -5px rgba(34, 211, 238, 0.25); /* Dil khfif b loun cyan */
}

.cta-content-wrapper {
  max-width: 750px;
  margin-left: auto;
  margin-right: auto;
}

.cta-main-heading {
  font-size: clamp(28px, 5vw, 40px);
  font-weight: 800;
  color: var(--cta-text-on-cyan-bg); /* Loun k7el/zre9 l lkhat */
  margin-top: 0;
  margin-bottom: 18px;
  line-height: 1.3;
  letter-spacing: -0.5px;
}

.cta-subheading {
  font-size: clamp(16px, 2.5vw, 18px);
  color: var(--cta-subtext-on-cyan-bg); /* Loun zre9/cyan mghlou9 */
  line-height: 1.65;
  margin-bottom: 40px;
}

.cta-buttons-container {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}

.cta-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 32px;
  border-radius: var(--cta-border-radius-button);
  font-size: 16px;
  font-weight: 600;
  text-decoration: none;
  border: 2px solid transparent;
  transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease, transform 0.2s ease-out, box-shadow 0.25s ease;
  min-width: 160px;
}

/* Boutona Louwla (Book a Tour) */
.cta-button-primary {
  background-color: var(--cta-button-primary-bg); /* Lkhalfia bida */
  color: var(--cta-button-primary-text); /* Lkhat zre9 */
  box-shadow: 0 4px 10px rgba(0, 95, 249, 0.1);
}
.cta-button-primary:hover {
  background-color: var(--cta-button-hover-bg-light-blue); /* Lkhalfia tولي zre9a bareda */
  color: var(--cta-button-hover-text-blue); /* Lkhat ib9a zre9 */
  transform: translateY(-2px);
  box-shadow: 0 6px 15px rgba(0, 95, 249, 0.18);
}

/* Boutona Tania (Contact Us) */
.cta-button-secondary {
  background-color: var(--cta-button-secondary-bg); /* Lkhalfia zre9a primary (PAR DEFAUT) */
  color: var(--cta-button-secondary-text); /* Lkhat byed (PAR DEFAUT) */
  /* Nقدرو nزيدو border b7al lkhalfia l loun ikoun متناسق*/
  border-color: var(--cta-button-secondary-bg); 
}
.cta-button-secondary:hover {
  /* HOVER ZRE9 L FAATE7 HNA TANI */
  background-color: var(--cta-button-hover-bg-light-blue); /* Lkhalfia tولي zre9a bareda */
  color: var(--cta-button-hover-text-blue); /* Lkhat iولي zre9 */
  border-color: var(--cta-button-hover-bg-light-blue); /* Border iولي transparent اولا b nafs loun lkhlfia l hover */
  transform: translateY(-2px);
  box-shadow: 0 6px 15px rgba(0, 95, 249, 0.18); /* Nafs l shadow dyal l primary hover */
}

.cta-arrow-icon {
  margin-left: 10px;
  font-size: 1.1em;
  transition: transform 0.2s ease-out;
}
/* Melli hover 3la boutona tania, l arrow khasso itbeddel louno m3a lkhat */
.cta-button-secondary:hover .cta-arrow-icon {
  transform: translateX(3px);
  /* Loun l arrow ghadi itbeddel automatiquement m3a loun dyal lkhat dyal l parent (.cta-button-secondary) */
}

/* ----- RESPONSIVE DESIGN ----- */
@media (max-width: 767px) { /* Mobile */
  .cta-section {
    padding: 60px 20px;
    margin: 30px 15px;
    border-radius: 20px;
  }
  .cta-main-heading {
    font-size: clamp(26px, 6vw, 34px);
  }
  .cta-subheading {
    font-size: clamp(15px, 3.5vw, 17px);
    margin-bottom: 35px;
  }
  .cta-buttons-container {
    flex-direction: column;
    gap: 15px;
  }
  .cta-button {
    width: 100%;
    padding: 15px 25px;
    font-size: 15.5px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-9c2e108 *//* ----- Import Font (Nafs Font) ----- */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');
/* ----- Import Font Awesome (ILA MAZAL MAKAYNACH F SITE KAMEL) ----- */
/* HADA KHASSO IKON MDAR B TARI9A SA7I7A F SITE DYALEK BACH ICONAT IBANO */
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css');


/* ----- CSS Variables ----- */
:root {
  --footer-bg: #FFFFFF; /* LKHALFIA BIDA */
  --footer-text-primary: #1A202C; /* Loun k7el/rmadi mghlou9 kter (tailwind slate-800) */
  --footer-text-secondary: #475569; /* Rmadi (tailwind slate-600) */
  --footer-text-muted: #94A3B8; /* Rmadi bared (tailwind slate-400) */
  
  /* Alwan dyal Logo */
  --footer-logo-ai-color: #22D3EE; /* Cyan-400 (Loun li f tsowira dyalek) */
  --footer-logo-hub-color: var(--footer-logo-ai-color); /* MODIFIED: Now uses AI color */
  --footer-logo-tagline-color: #0F766E; /* Zre9/khder mghlou9 (tailwind teal-700) */

  --footer-link-hover-cyan: #67E8F9; /* CYAN-300 L HOVER */
  --footer-border-color: #E2E8F0; /* Loun l borders (tailwind gray-300) */
  
  --footer-social-icon-bg: #F0F9FF; /* Loun lkhlfia dyal social icons (Sky-50) */
  --footer-social-icon-color: #0EA5E9; /* Loun dyal social icons (Sky-500) */
  --footer-social-icon-hover-bg: #0EA5E9;
  --footer-social-icon-hover-color: #FFFFFF;
  
  --footer-contact-icon-color: #0EA5E9; /* Sky-500 */
}

/* ----- Styling dyal Footer Kamla ----- */
.site-footer {
  font-family: 'Inter', sans-serif;
  background-color: var(--footer-bg); /* LKHALFIA BIDA */
  color: var(--footer-text-secondary);
  padding-top: 75px;
  padding-bottom: 0; 
  font-size: 15.5px;
  line-height: 1.75;
}

.footer-main-content {
  max-width: 1160px;
  margin: 0 auto;
  padding: 0 25px;
}

.footer-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 40px 30px;
  padding-bottom: 60px;
}

/* ----- Column 1: Logo, Description, Social ----- */
.footer-column-about .footer-logo {
  margin-bottom: 25px;
  /* Nقدرو n7eddo max-width l logo container ila bghina */
  /* max-width: 200px; */
}
.footer-logo-link {
  text-decoration: none;
  display: inline-block; /* Bach mayakhodch l3ord kamel ila l parent fih text-align:center */
}
.footer-logo-link .logo-main-text {
  display: block;
  font-weight: 900; /* Extra Ghlid bzaf */
  font-size: 52px; /* MODIFIED: Increased font size from 40px */
  line-height: 1.1; /* N9rbohom chwiya */
  letter-spacing: 0.02em; /* MODIFIED: Adjusted letter spacing from -1px */
}
.footer-logo-link .logo-ai {
  color: var(--footer-logo-ai-color); /* Cyan-400 */
  margin-right: 0.2em; /* MODIFIED: Added space after AI (0.2em of 52px = 10.4px) */
}
.footer-logo-link .logo-hub {
  color: var(--footer-logo-hub-color); /* Color set to match AI */
}
.footer-logo-link .logo-tagline {
  display: block;
  font-size: 14px;
  font-weight: 500;
  color: var(--footer-logo-tagline-color); /* Zre9/Khder */
  letter-spacing: 0.2px;
  margin-top: 5px; /* MODIFIED: Espace sghir bin "AI HUB" ou tagline, increased from 2px */
}

.footer-description {
  margin-bottom: 30px;
  font-size: 15px;
  color: var(--footer-text-secondary);
}

.footer-social-title {
  font-size: 17px;
  font-weight: 600;
  color: var(--footer-text-primary);
  margin-bottom: 16px;
}
.footer-social-links {
  list-style: none;
  padding-left: 0;
  margin: 0;
  display: flex;
  gap: 16px;
}
.footer-social-links .social-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background-color: var(--footer-social-icon-bg);
  color: var(--footer-social-icon-color);
  font-size: 19px;
  text-decoration: none;
  transition: background-color 0.25s ease, color 0.25s ease, transform 0.2s ease-out;
}
.footer-social-links .social-icon:hover {
  background-color: var(--footer-social-icon-hover-bg);
  color: var(--footer-social-icon-hover-color);
  transform: translateY(-3px) scale(1.08);
}

/* ----- Columns 2 & 3: Links ----- */
.footer-column-title {
  font-size: 19px;
  font-weight: 700;
  color: var(--footer-text-primary);
  margin-top: 0;
  margin-bottom: 25px;
}
.footer-links-list {
  list-style: none;
  padding-left: 0;
  margin: 0;
}
.footer-links-list li {
  margin-bottom: 15px;
}
.footer-links-list li:last-child {
  margin-bottom: 0;
}
.footer-links-list a {
  color: var(--footer-text-secondary);
  text-decoration: none; /* N7EYDO UNDERLINE PAR DEFAUT */
  transition: color 0.25s ease, padding-left 0.25s ease; /* Zedt padding-left l animation */
  position: relative;
  padding-left: 0; /* Par défaut bla padding */
  display: inline-block; /* Bach padding-left iخدم mzyan */
}
.footer-links-list a:hover {
  color: var(--footer-link-hover-cyan); /* HOVER B CYAN-300 */
  padding-left: 8px; /* Kayتحرك l limen chwiya melli hover */
}
.footer-links-list a:hover::before {
  content: "•";
  position: absolute;
  left: -5px;
  top: 50%; /* Nضبطoha عموديا */
  transform: translateY(-50%); /* Nضبطoha عموديا */
  color: var(--footer-link-hover-cyan);
  transition: opacity 0.25s ease;
  opacity: 1; /* Kayبان ghir melli hover 3la "a" */
  font-size: 1.2em; /* Nكبرو l bullet chwiya */
}


/* ----- Column 4: Contact ----- */
.footer-contact-list {
  list-style: none;
  padding-left: 0;
  margin: 0;
}
.footer-contact-list li {
  display: flex;
  align-items: flex-start;
  margin-bottom: 18px;
}
.footer-contact-list li:last-child {
  margin-bottom: 0;
}
.footer-contact-list .contact-icon {
  color: var(--footer-contact-icon-color);
  font-size: 18px;
  margin-right: 15px;
  margin-top: 1px;
  width: 20px;
  text-align: center;
  flex-shrink: 0;
}
.footer-contact-list a,
.footer-contact-list span {
  color: var(--footer-text-secondary);
  text-decoration: none;
  transition: color 0.25s ease;
}
.footer-contact-list a:hover {
  color: var(--footer-link-hover-cyan);
}

/* ----- Copyright Bar ----- */
.footer-copyright-bar {
  background-color: #F1F5F9;
  padding: 25px 30px;
  text-align: center;
  font-size: 14px;
  color: var(--footer-text-muted);
  border-top: 1px solid var(--footer-border-color);
}
.footer-copyright-bar p {
  margin: 0;
}

/* ----- RESPONSIVE DESIGN ----- */
@media (max-width: 991px) { /* Tablet */
  .footer-grid {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 35px 25px;
  }
  .footer-column-about {
    grid-column: span 2; /* Takhod l3ord kamel dyal jouj columns */
    text-align: center; /* Ncentriwha */
  }
  .footer-column-about .footer-logo-link {
    margin: 0 auto; /* Ncentriw logo ila kan inline-block */
  }
  .footer-column-about .footer-social-links {
    justify-content: center; /* Ncentriw social icons */
  }
}

@media (max-width: 767px) { /* Mobile */
  .site-footer {
    padding-top: 60px;
  }
  .footer-main-content {
    padding: 0 20px;
  }
  .footer-grid {
    grid-template-columns: 1fr; /* Koul column f ster */
    gap: 35px;
    padding-bottom: 40px;
  }
  .footer-column {
    text-align: left; /* Nرجعو text l lissr f mobile par défaut */
    /* Nقدرو nزيدو margin-bottom l koul column f mobile bach iجي espace mzyan */
    /* margin-bottom: 20px; */
  }
  /* .footer-column:last-child { margin-bottom: 0; } */

  .footer-column-about .footer-logo-link {
    margin: 0; /* Nرجعو logo l lissr */
  }
  .footer-column-about .footer-social-links {
    justify-content: flex-start; /* Nرجعو social icons l lissr */
  }
  .footer-column-title {
    margin-bottom: 18px;
    font-size: 18px;
  }
  .footer-links-list li {
    margin-bottom: 12px;
  }
  .footer-copyright-bar {
    padding: 22px 20px;
    font-size: 13px;
  }
}/* End custom CSS */