/* ==========================================================================
   A's Insurance — responsive layout layer (loaded last, both languages).
   Fluid type and spacing, header/navigation at every width, and alignment fixes
   for template sections. Uses logical properties so it works for LTR and RTL.
   ========================================================================== */

/* ---------------------------------------------------------------- base & fluid scale */
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { font-size: clamp(15px, 0.86rem + 0.22vw, 17px); line-height: 1.75; }
.page-wrapper { overflow-x: clip; }
img { max-width: 100%; }
@media (max-width: 575px) { .container { padding-inline: 16px; } }

.section-title__title, .testimonial-one__sec-title h2, .insurance-history__title-box h2 { font-size: clamp(28px, 1.6rem + 1.6vw, 48px); line-height: 1.15; }
.section-title { margin-bottom: clamp(32px, 4vw, 50px); }
.main-slider__title { font-size: clamp(36px, 1.4rem + 4vw, 72px); line-height: 1.06; }
.page-header__inner h1 { font-size: clamp(32px, 1.2rem + 3vw, 58px); }
.contact-one__title { font-size: clamp(30px, 1.4rem + 2vw, 50px); line-height: 1.12; }
.video-one__title { font-size: clamp(26px, 1rem + 2.4vw, 44px); }
.cta-band .subscribe-one__title { font-size: clamp(26px, 1rem + 2vw, 40px); }
/* Line breaks in headings are for wide screens only; the space before each <br> keeps words apart. */
@media (max-width: 767px) { .section-title__title br, .main-slider__title br, .contact-one__title br, .video-one__title br { display: none; } }

/* Section rhythm: fluid vertical padding instead of fixed 110–120px blocks */
.about-one, .services-one, .why-choose-one, .insurance-history, .how-it-work, .blog-one, .faq-page, .home-categories, .testimonial-one,
.insurance-page, .careers-intro, .testimonial-page, .basic-page, .form-page, .portal, .faq-page-two, .whole-life, .other-cover {
  padding-top: clamp(64px, 8vw, 110px); padding-bottom: clamp(64px, 8vw, 110px);
}
.faq-page--home { padding-top: clamp(56px, 7vw, 100px); }
.cta-band { padding: 0 0 clamp(64px, 8vw, 110px); }

/* Decorative template artwork crowds small screens and was overlapping content */
@media (max-width: 991px) {
  [class*="__shape-"]:not(.why-choose-one__shape-1), .why-choose-one__shape-8 { display: none !important; }
}
.subscribe-one__shape-1, .subscribe-one__shape-2, .subscribe-one__shape-3, .subscribe-one__shape-4 { display: none !important; }

/* ---------------------------------------------------------------- header */
.main-header__top-wrapper { padding-inline: clamp(16px, 3vw, 48px); }
@media (max-width: 991px) { .main-header__address-list li:first-child { display: none; } }

.main-menu__wrapper, .stricky-header .main-menu__wrapper { padding: 12px clamp(16px, 3vw, 48px) !important; }
.main-menu__wrapper-inner { flex-wrap: nowrap; gap: clamp(12px, 2vw, 32px); }
.main-menu__logo { flex: none; padding: 0; }
.site-logo { max-height: clamp(44px, 3.4vw + 14px, 60px); }
.stricky-header .site-logo { max-height: 46px; }

.main-menu__main-menu-box { flex: 1 1 auto; min-width: 0; padding: 0; flex-wrap: nowrap; justify-content: center; gap: clamp(16px, 2vw, 32px); }
.main-menu__main-menu-box-left, .main-menu__main-menu-box-left:before { background: none !important; }
.main-menu__main-menu-box-left { padding: 0 !important; border-radius: 0; }
.main-menu__main-menu-box-left:before { display: none !important; }
.main-menu .main-menu__list, .stricky-header .main-menu__list { gap: clamp(18px, 1.7vw, 34px); }
.main-menu .main-menu__list > li + li, .stricky-header .main-menu__list > li + li { margin: 0 !important; }
.main-menu .main-menu__list > li, .stricky-header .main-menu__list > li { padding-block: 22px; }
.main-menu .main-menu__list > li > a, .stricky-header .main-menu__list > li > a { font-size: 16px; white-space: nowrap; }
.main-menu .main-menu__list > li > ul, .stricky-header .main-menu__list > li > ul { inset-inline-start: -18px; border-radius: 0 0 4px 4px; }
.main-menu__call-sub-title { margin: 0; }
.main-menu__right { flex: none; }

/* Hamburger: visible, aligned to the end, clear tap target */
.main-menu .mobile-nav__toggler {
  display: inline-flex; align-items: center; justify-content: center; width: 46px; height: 46px; padding: 0 !important;
  border: 1px solid rgba(197, 162, 83, .6); border-radius: 4px; color: #fff; font-size: 20px; background: rgba(255, 255, 255, .04);
}
.main-menu .mobile-nav__toggler:hover { color: var(--aic-navy); background: var(--aic-gold); }

@media (min-width: 1200px) { .main-menu .mobile-nav__toggler { display: none; } }
@media (max-width: 1199px) {
  .main-menu__main-menu-box { flex: 0 0 auto; order: 3; }
  .main-menu__right { order: 2; margin-inline-start: auto; }
  .main-menu__main-menu-box-right { display: none; }
  /* Template hid the sticky bar below 1200px, so the menu vanished on scroll on phones and tablets */
  .stricky-header { display: block !important; }
}
@media (min-width: 576px) { .main-menu__right { display: block !important; } .header-cta { display: inline-flex !important; } }
@media (max-width: 575px) { .header-cta { display: none !important; } }
@media (max-width: 1399px) { .main-menu__main-menu-box-right { display: none; } }
.header-cta { padding: 14px 22px; font-size: 15px; }

/* Sticky bar */
.stricky-header { box-shadow: 0 8px 30px rgba(7, 24, 42, .25); }

/* Mobile drawer */
.mobile-nav__content { width: min(320px, 86vw); padding: 24px 22px 30px; }
.mobile-nav__content .logo-box { margin-bottom: 18px; }
.mobile-nav__content .main-menu__list > li > a { font-size: 16px; padding-block: 12px; }
.mobile-nav__contact li { gap: 12px; align-items: center; display: flex; }
.mobile-nav__contact li a { word-break: break-word; }

/* ---------------------------------------------------------------- hero slider */
.main-slider .container { padding-top: clamp(96px, 12vw, 190px); padding-bottom: clamp(120px, 13vw, 210px); }
.main-slider__overlay { background: linear-gradient(90deg, rgba(11, 31, 53, .80) 0%, rgba(11, 31, 53, .50) 48%, rgba(11, 31, 53, .10) 100%); }
body.lang-ar .main-slider__overlay { background: linear-gradient(270deg, rgba(11, 31, 53, .80) 0%, rgba(11, 31, 53, .50) 48%, rgba(11, 31, 53, .10) 100%); }
@media (max-width: 767px) {
  .main-slider__overlay, body.lang-ar .main-slider__overlay { background: linear-gradient(180deg, rgba(11, 31, 53, .55) 0%, rgba(11, 31, 53, .72) 100%); }
}
.main-slider__title, .main-slider__text { text-shadow: 0 2px 18px rgba(7, 24, 42, .35); }
.main-slider__badge { background: rgba(7, 24, 42, .35); max-width: 100%; white-space: normal; line-height: 1.4; }
/* Buttons: drop the template's offset decorative bars, match site buttons */
.main-slider__btn { display: inline-flex; align-items: center; justify-content: center; padding: 16px 30px; font-size: 16px; font-weight: 700; border-radius: 2px; border: 1px solid var(--aic-gold); background: var(--aic-gold); color: var(--aic-navy); }
.main-slider__btn:before, .main-slider__btn:after { display: none !important; }
.main-slider__btn:hover { background: #fff; border-color: #fff; color: var(--aic-navy); }
.main-slider__btn--ghost { background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .7); color: #fff; }
.main-slider__btn--ghost:hover { background: #fff; border-color: #fff; color: var(--aic-navy); }
@media (max-width: 575px) { .main-slider__btn-box { flex-direction: column; align-items: stretch; } .main-slider__btn { width: 100%; } }
/* Pagination: simple dots at the bottom instead of numbered boxes that clashed with the floating buttons */
#main-slider-pagination { flex-direction: row !important; align-items: center; width: auto !important; top: auto !important; bottom: 32px !important; left: 0 !important; right: 0 !important; transform: none !important; height: auto !important; display: flex; justify-content: center; gap: 10px; line-height: 1; }
#main-slider-pagination .swiper-pagination-bullet { width: 10px !important; height: 10px !important; border-radius: 10px !important; margin: 0 !important; background: rgba(255, 255, 255, .55) !important; transition: width .3s ease, background .3s ease; }
#main-slider-pagination .swiper-pagination-bullet:before, #main-slider-pagination .swiper-pagination-bullet:after { display: none !important; }
#main-slider-pagination .swiper-pagination-bullet-active { width: 30px !important; background: var(--aic-gold) !important; }

/* ---------------------------------------------------------------- highlights strip */
.intro-loan { padding: clamp(48px, 6vw, 90px) 0 0; }
.intro-loan__list { border: 1px solid var(--aic-line); border-radius: 6px; box-shadow: 0 24px 60px rgba(11, 31, 53, .08); padding: clamp(28px, 4vw, 54px) 0 clamp(14px, 2vw, 28px); }
.intro-loan__list:before, .intro-loan__list:after { display: none !important; }
@media (max-width: 767px) {
  .intro-loan__list li { flex: 0 0 100%; max-width: 100%; padding-inline: 20px; }
  .intro-loan__list li + li { border-top: 1px solid var(--aic-line); padding-top: 24px; }
  .intro-loan__list li:before, .intro-loan__list li:after { display: none !important; }
}

/* ---------------------------------------------------------------- about (home) */
.about-one__img-one img { width: 100%; height: clamp(320px, 42vw, 600px); object-fit: cover; border-radius: 4px; }
@media (max-width: 1199px) {
  .about-one__left { margin-bottom: 70px; }
  .about-one__right { margin-inline-start: 0 !important; }
}
@media (max-width: 767px) {
  .about-one__img-two { display: none; }
  .about-one__investments { position: relative !important; inset: auto !important; transform: none !important; margin-top: -40px; margin-inline-start: 16px; display: inline-block; }
  .about-one__left { margin-bottom: 40px; }
  .about-one__user-box { flex-direction: column; align-items: flex-start; gap: 18px; }
  .about-one__points-box { margin-inline-start: 0 !important; width: 100%; }
}

/* ---------------------------------------------------------------- service cards */
.services-one .row { row-gap: 30px; }
.services-one__single { height: 100%; margin-bottom: 0; padding: 40px 26px 36px; border: 1px solid var(--aic-line); border-radius: 6px; display: flex; flex-direction: column; align-items: center; }
.services-one__single:hover { border-color: var(--aic-gold); box-shadow: 0 20px 50px rgba(11, 31, 53, .08); }
.services-one__text { flex: 1; }
.services-one__view-btn { margin-top: 40px; }
.services-one__view-btn p { max-width: 100%; flex-wrap: wrap; justify-content: center; text-align: center; }

/* ---------------------------------------------------------------- category carousel */
.home-categories .intro-loan-three__single, .home-categories .intro-loan-three__single-2, .home-categories .intro-loan-three__single-3 {
  background: #fff; border: 1px solid var(--aic-line); border-radius: 6px; padding: 18px 18px 24px; height: 100%;
}
.home-categories .intro-loan-three__single:hover { border-color: var(--aic-gold); }
.home-categories .intro-loan-three__img img { height: clamp(220px, 22vw, 280px); border-radius: 4px; }
.home-categories .owl-stage { display: flex; }
.home-categories .owl-item { display: flex; }
.home-categories .owl-item .item { width: 100%; }

/* ---------------------------------------------------------------- video band (now a static image band) */
.video-one { padding: clamp(110px, 13vw, 200px) 0; }
.video-one__bg { background-size: cover; background-position: center; }
.video-one__bg:before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(11, 31, 53, .45), rgba(11, 31, 53, .65)) !important; }
.video-one__title { text-shadow: 0 2px 20px rgba(7, 24, 42, .45); }

/* ---------------------------------------------------------------- why choose */
.why-choose-one__right { margin-left: 0 !important; margin-right: 0 !important; }
.why-choose-one__img img { height: clamp(300px, 38vw, 540px); }
@media (max-width: 991px) { .why-choose-one__right { margin-top: 40px; } }
.faq-one-accrodion .accrodion-title { gap: 16px; }
.faq-one-accrodion .accrodion-title h4 { font-size: clamp(18px, 1rem + .5vw, 22px); padding-inline-end: 44px; padding-right: 44px; }
@media (max-width: 575px) { .faq-one-accrodion .accrodion-content { padding-inline-start: 0 !important; padding-left: 0 !important; } }

/* ---------------------------------------------------------------- numbers */
.insurance-history__inner { padding: clamp(24px, 3.5vw, 50px); border-radius: 6px; }
.insurance-history__img { position: absolute; top: 0; bottom: 0; width: 38%; }
html[dir="ltr"] .insurance-history__img { right: 0; left: auto; }
html[dir="rtl"] .insurance-history__img { left: 0; right: auto; }
.insurance-history__img:before { display: none !important; }
.insurance-history__img img { width: 100% !important; height: 100% !important; object-fit: cover; border-radius: 0 6px 6px 0; }
html[dir="rtl"] .insurance-history__img img { border-radius: 6px 0 0 6px; }
.insurance-history__single { height: calc(100% - 24px); margin-bottom: 24px; padding: clamp(22px, 2.6vw, 40px) clamp(18px, 2vw, 30px); border-color: var(--aic-line); border-radius: 4px; }
.insurance-history__count-box h3 { font-size: clamp(36px, 1.6rem + 2vw, 55px); line-height: 1.1 !important; }
.insurance-history__plus { font-size: clamp(30px, 1.4rem + 1.6vw, 50px); }
.insurance-history__title { font-size: clamp(17px, .9rem + .6vw, 24px); line-height: 1.25; overflow-wrap: break-word; hyphens: auto; }
@media (max-width: 991px) {
  .insurance-history__img { position: relative; width: auto; inset: auto !important; margin: calc(-1 * clamp(24px, 3.5vw, 50px)) calc(-1 * clamp(24px, 3.5vw, 50px)) 28px; }
  .insurance-history__img img { height: clamp(220px, 45vw, 340px) !important; border-radius: 6px 6px 0 0 !important; }
  .insurance-history__inner .col-md-8 { flex: 0 0 100%; max-width: 100%; }
}
@media (max-width: 399px) { .insurance-history__inner .col-6 { flex: 0 0 100%; max-width: 100%; } }
.insurance-history__title-box { text-align: center; }

/* ---------------------------------------------------------------- how it works */
.how-it-work .row { row-gap: 30px; }
.how-it-work__single, .how-it-work__single-2, .how-it-work__single-3, .how-it-work__single-4 { margin: 0 !important; padding-inline: 8px; }
@media (min-width: 1200px) { .how-it-work__single-2, .how-it-work__single-4 { margin-top: 70px !important; } }

/* ---------------------------------------------------------------- quote / call-back block */
.contact-one__inner { padding: clamp(28px, 5vw, 70px); border-radius: 6px; }
.contact-one__form-box { border-radius: 6px; padding: clamp(24px, 3.5vw, 55px); }
@media (max-width: 991px) { .contact-one__left { margin-bottom: 36px; } .contact-one__right { margin-inline-start: 0 !important; } }
.contact-one__form .contact-form__input-box input, .contact-one__form .contact-form__input-box textarea, .contact-one__form .contact-form__input-box select { border: 1px solid transparent; border-radius: 2px; }
.contact-one__form .contact-form__input-box input:focus, .contact-one__form .contact-form__input-box textarea:focus { border-color: var(--aic-gold); outline: none; }
.contact-form__btn { width: 100%; }

/* ---------------------------------------------------------------- blog cards */
.blog-one .row { row-gap: 30px; }
.blog-one__single { height: 100%; margin-bottom: 0; border: 1px solid var(--aic-line); border-radius: 6px; overflow: hidden; background: #fff; }
.blog-one__single:hover { box-shadow: 0 20px 50px rgba(11, 31, 53, .08); }
.blog-one__img img { height: clamp(200px, 20vw, 250px); }
.blog-one__meta-box { border: 0; border-top: 1px solid var(--aic-line); padding: 14px 0 0; margin-top: 18px; gap: 10px; flex-wrap: wrap; }
.blog-one__meta-btn a { padding: 8px 14px; border-radius: 2px; }

/* ---------------------------------------------------------------- CTA band */
.cta-band .subscribe-one__inner { padding: clamp(28px, 4.5vw, 60px) clamp(24px, 5vw, 75px); border-radius: 6px; }
.cta-band .subscribe-one__title { margin: 0; }
@media (max-width: 991px) { .cta-band__actions { justify-content: flex-start; margin-top: 22px; } }
@media (max-width: 575px) { .cta-band__actions .thm-btn { width: 100%; } }

/* ---------------------------------------------------------------- page header (inner pages) */
.page-header { padding: clamp(84px, 10vw, 150px) 0 clamp(64px, 7vw, 110px); }
.page-header-bg:before { background: linear-gradient(90deg, rgba(11, 31, 53, .86) 0%, rgba(11, 31, 53, .55) 55%, rgba(11, 31, 53, .25) 100%); }
body.lang-ar .page-header-bg:before { background: linear-gradient(270deg, rgba(11, 31, 53, .86) 0%, rgba(11, 31, 53, .55) 55%, rgba(11, 31, 53, .25) 100%); }
@media (max-width: 767px) { .page-header-bg:before, body.lang-ar .page-header-bg:before { background: rgba(11, 31, 53, .68); } }
.thm-breadcrumb { flex-wrap: wrap; row-gap: 4px; }

/* ---------------------------------------------------------------- footer */
.site-footer__top { padding: clamp(60px, 7vw, 100px) 0 clamp(30px, 4vw, 60px); }
.site-footer__top .row > [class*="col-"] { margin-bottom: 36px; }
.footer-widget__help { display: flex; align-items: center; gap: 14px; margin-top: 14px; }
.footer-widget__help .icon span { width: 42px; height: 42px; font-size: 20px; border-radius: 50% !important; flex: none; }
.footer-widget__help-text p { margin: 0; line-height: 1.5; }
.footer-widget__help-text p a { background: none !important; padding: 0 !important; color: rgba(255, 255, 255, .78) !important; }
.footer-widget__help-text p a:hover { color: var(--aic-gold) !important; }
.footer-widget__contact li { display: flex; gap: 14px; align-items: flex-start; }
.footer-widget__contact li .icon { flex: none; margin: 0 !important; }
.footer-widget__subscribe-input-box { border-radius: 4px; overflow: hidden; }
.footer-widget__subscribe-input-box input { width: 100%; }
.footer-two-col { columns: 1; }
@media (min-width: 576px) and (max-width: 1199px) { .footer-two-col { columns: 2; } }
.site-footer__bottom-inner { padding-block: 22px; }
@media (max-width: 767px) { .site-footer__bottom-inner { flex-direction: column; align-items: flex-start; } .site-footer__bottom-links { gap: 10px 18px; } }

/* ---------------------------------------------------------------- floating buttons (WhatsApp + back to top) */
.whatsapp-float { position: fixed; bottom: 22px; background: #25D366; color: #fff; box-shadow: 0 10px 30px rgba(0, 0, 0, .22); transition: transform .3s; width: 56px; height: 56px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 30px; line-height: 1; z-index: 990; }
.whatsapp-float i { display: block; line-height: 1; }
.whatsapp-float:hover { color: #fff; transform: scale(1.08); }
.scroll-to-top { bottom: 92px; width: 44px; height: 44px; border-radius: 50%; z-index: 990; }
html[dir="ltr"] .scroll-to-top { right: 28px; left: auto; }
html[dir="rtl"] .scroll-to-top { left: 28px; right: auto; }
html[dir="ltr"] .whatsapp-float { right: 22px; left: auto; }
html[dir="rtl"] .whatsapp-float { left: 22px; right: auto; }
.scroll-to-top i { line-height: 44px; font-size: 16px; }
@media (max-width: 575px) {
  .whatsapp-float { width: 50px; height: 50px; font-size: 27px; bottom: 16px; }
  html[dir="ltr"] .whatsapp-float { right: 16px; } html[dir="rtl"] .whatsapp-float { left: 16px; }
  .scroll-to-top { bottom: 78px; width: 40px; height: 40px; }
  html[dir="ltr"] .scroll-to-top { right: 21px; } html[dir="rtl"] .scroll-to-top { left: 21px; }
  .scroll-to-top i { line-height: 40px; }
}
/* Keep the mobile drawer above the floating buttons */
.mobile-nav__wrapper { z-index: 1000; }

/* ---------------------------------------------------------------- inner pages: forms, cards, details */
.form-shell__side { min-height: clamp(260px, 40vw, 520px); }
.form-shell__body { padding: clamp(24px, 4vw, 50px); }
.listing-card { padding-inline: 26px !important; }
.listing-card__img { margin-inline: -26px; width: calc(100% + 52px); }
.insurance-details__life-insurance-img img { height: clamp(260px, 36vw, 480px); }
.talk-our-agent__img img { height: clamp(240px, 30vw, 420px); }
.blog-details__img img { height: clamp(220px, 34vw, 440px); }
.job-card { padding: clamp(20px, 3vw, 34px); }
@media (max-width: 767px) { .portal__table { display: block; overflow-x: auto; white-space: nowrap; } }

/* Long words / emails / URLs never push the layout wider than the screen */
p, li, h1, h2, h3, h4, h5, a { overflow-wrap: break-word; }

/* ---------------------------------------------------------------- follow-up alignment fixes */
.insurance-history__shape-1, .insurance-history__shape-2 { display: none !important; }
.contact-one__sign-up-text a { color: var(--aic-gold); text-decoration: underline; text-underline-offset: 3px; }
.contact-one__sign-up-text a:hover { color: #fff; }
.contact-one__call { display: flex; flex-direction: row; align-items: center; gap: 18px; }
.contact-one__call-content { margin: 0 !important; }
.contact-one__form .contact-form__input-box input, .contact-one__form .contact-form__input-box select,
.contact-one__form .contact-form__input-box textarea { padding-left: 20px !important; padding-right: 20px !important; }
.how-it-work__text { line-height: 1.7; }
.how-it-work__content { padding-inline: 6px; }
@media (max-width: 575px) { .contact-one__call-icon { width: 64px; height: 64px; flex: none; } .contact-one__call-number a { font-size: 22px; } }

/* Consistent card surfaces (template alternated beige / grey / white backgrounds) */
.intro-loan-three__single, .intro-loan-three__single-2, .intro-loan-three__single-3 { background: #fff; border: 1px solid var(--aic-line); border-radius: 6px; }
.intro-loan-three__single:hover { border-color: var(--aic-gold); }
.intro-loan-three { padding-top: clamp(56px, 7vw, 100px); }
.intro-loan-three .row > [class*="col-"] { margin-bottom: 0; }
.intro-loan-three__img img { width: 100%; height: clamp(200px, 20vw, 240px); object-fit: cover; }
.whole-life__single { background: #fff !important; border: 1px solid var(--aic-line); border-radius: 6px; }
.whole-life__single:hover { border-color: var(--aic-gold); }
.talk-our-agent__img img { border-radius: 50%; aspect-ratio: 1; height: auto !important; }

/* Numbers always read left-to-right (in Arabic the odometer digits were rendering reversed: 40 → "04") */
.odometer, .odometer .odometer-inside { direction: ltr; unicode-bidi: isolate; display: inline-block; }
