/*
 * Sari Platform — Unified Responsive Foundation
 * Runtime source of truth for viewport behavior, fluid typography, spacing,
 * grids, containment, header adaptation, motion preferences, and safe areas.
 *
 * Canonical structural breakpoints:
 *   1400px  compact large desktop
 *   1280px  compact desktop header
 *   1180px  laptop / landscape tablet grids
 *   1024px  tablet content
 *    960px  archive and secondary layout transition
 *    760px  mobile navigation and single-column content
 *    600px  narrow mobile drawer
 *    420px  small phone
 *    360px  compact / fold viewport
 * No component stylesheet owns a viewport media query.
 */

:root{
  --fap-layout-content-max:1240px;
  --fap-layout-wide-max:1440px;
  --fap-layout-prose-max:72ch;
  --fap-viewport-inline:100vw;

  --fap-gutter:clamp(14px,2.45vw,40px);
  --fap-space-1:clamp(4px,0.25vw,6px);
  --fap-space-2:clamp(8px,0.45vw,10px);
  --fap-space-3:clamp(12px,0.7vw,16px);
  --fap-space-4:clamp(16px,1vw,22px);
  --fap-space-5:clamp(20px,1.5vw,30px);
  --fap-space-6:clamp(28px,2.2vw,44px);
  --fap-space-content:clamp(14px,1.8vw,24px);
  --fap-space-card:clamp(20px,2.4vw,34px);
  --fap-space-card-compact:clamp(16px,2vw,24px);
  --fap-space-section:clamp(48px,6.2vw,96px);
  --fap-space-hero:clamp(42px,6.5vw,88px);

  --fap-type-2xs:clamp(0.625rem,0.59rem + 0.08vw,0.6875rem);
  --fap-type-xs:clamp(0.72rem,0.68rem + 0.12vw,0.79rem);
  --fap-type-sm:clamp(0.80rem,0.75rem + 0.17vw,0.91rem);
  --fap-type-base:clamp(0.94rem,0.89rem + 0.18vw,1.04rem);
  --fap-type-md:clamp(1.03rem,0.96rem + 0.25vw,1.18rem);
  --fap-type-lg:clamp(1.15rem,1.04rem + 0.40vw,1.40rem);
  --fap-type-xl:clamp(1.34rem,1.14rem + 0.70vw,1.78rem);
  --fap-type-2xl:clamp(1.72rem,1.33rem + 1.25vw,2.55rem);
  --fap-type-3xl:clamp(2rem,1.35rem + 2.10vw,3.45rem);
  --fap-type-display:clamp(2.05rem,1.18rem + 3.35vw,4.50rem);

  --fap-leading-tight:1.12;
  --fap-leading-heading:1.22;
  --fap-leading-body:1.82;
  --fap-control-min:44px;
}

html{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}

body.fap-owned-site,
body.fap-theme-chrome-enabled{
  min-inline-size:280px;
  overflow-x:hidden;
  overflow-x:clip;
}

.fap,
.fap-widget-scope,
.fap-dynamic-archive,
.fap-theme-chrome,
.fap-site-header-wrap{
  max-inline-size:100%;
}

.fap,
.fap-widget-scope{
  inline-size:100%;
  margin-inline:0;
  overflow-x:hidden;
  overflow-x:clip;
}

.fap :where(img,picture,video,canvas,iframe,svg),
.fap-dynamic-archive :where(img,picture,video,canvas,iframe,svg){
  max-inline-size:100%;
}

.fap :where(img,video),
.fap-dynamic-archive :where(img,video){
  block-size:auto;
}

.fap :where(input,select,textarea,button),
.fap-dynamic-archive :where(input,select,textarea,button){
  min-inline-size:0;
  max-inline-size:100%;
  font-size:var(--fap-type-base);
}

.fap :where(h1,h2,h3,h4,h5,h6,p,li,a,button,label,summary),
.fap-dynamic-archive :where(h1,h2,h3,h4,h5,h6,p,li,a,button,label){
  max-inline-size:100%;
  overflow-wrap:anywhere;
  word-break:normal;
}

.fap :where(.fap-hero__grid,.fap-page-hero__grid,.fap-service-hero__grid,.fap-article-hero__grid,.fap-area__grid,.fap-about-grid,.fap-contact-grid,.fap-service-layout,.fap-article-layout,.fap-hub-grid,.fap-card-grid,.fap-feature-grid,.fap-article-grid,.fap-service-grid,.fap-steps__grid,.fap-trust__grid,.fap-detail-grid,.fap-contact-block__grid,.fap-footer__top,.fap-final-cta__box) > *,
.fap-dynamic-archive :where(.fap-dynamic-archive__filters,.fap-dynamic-archive__grid) > *{
  min-inline-size:0;
}

.fap .fap-shell,
.fap-theme-shell,
.fap-dynamic-archive__shell{
  width:min(var(--fap-layout-content-max),calc(100% - (var(--fap-gutter) * 2)))!important;
  margin-inline:auto!important;
}

.fap .fap-section{
  padding-block:var(--fap-space-section)!important;
}

.fap :where(.fap-hero h1,.fap-page-hero h1,.fap-service-hero h1,.fap-article-hero h1),
.fap-dynamic-archive__hero h1{
  font-size:var(--fap-type-display)!important;
  line-height:var(--fap-leading-tight)!important;
}

.fap :where(.fap-section-title h2,.fap-section__head h2,.fap-service-benefits__head h2,.fap-content-panel h2,.fap-contact-block h2,.fap-area h2,.fap-about-grid h2,.fap-final-cta h2){
  font-size:var(--fap-type-3xl)!important;
  line-height:var(--fap-leading-heading)!important;
}

.fap :where(.fap-hero p,.fap-page-hero p,.fap-service-hero p,.fap-article-hero p,.fap-section-title p,.fap-section__head p,.fap-service-benefits__head p,.fap-area p,.fap-about-grid p,.fap-contact-block p,.fap-content-panel p),
.fap-dynamic-archive__hero p{
  font-size:var(--fap-type-md)!important;
}

.fap :where(.fap-hub-card h3,.fap-card h3,.fap-feature-card h3,.fap-article-card h3,.fap-service-card h3,.fap-step h3,.fap-side-cta h3,.fap-service-benefit-card h3),
.fap-dynamic-card__title{
  font-size:var(--fap-type-lg)!important;
  line-height:1.38!important;
}

.fap :where(.fap-btn,.fap-form button,.fap-card-action),
.fap-dynamic-card__link{
  min-block-size:var(--fap-control-min);
  font-size:var(--fap-type-sm)!important;
}

.fap :where(.fap-prose,.fap-content-panel,.fap-article-body){
  max-inline-size:100%;
}

.fap :where(.fap-prose p,.fap-content-panel p,.fap-article-body p){
  font-size:var(--fap-type-base);
  line-height:var(--fap-leading-body);
}

.fap :where(table){
  inline-size:100%;
  max-inline-size:100%;
  border-collapse:collapse;
}

.fap :where(pre,code){
  max-inline-size:100%;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

.fap :where([id]),
.fap-dynamic-archive :where([id]){
  scroll-margin-top:calc(96px + var(--wp-admin--admin-bar--height,0px));
}

/*
 * Sari Platform — production header component.
 * One WordPress logo source, one primary wp_nav_menu() source, and one
 * responsive navigation controller for desktop, tablet and mobile.
 */

.fap-site-header-wrap,
.fap-site-header-wrap *{
  box-sizing:border-box;
}

.fap-site-header-wrap{
  --fap-site-header-max:1440px;
  --fap-site-header-gutter:clamp(16px,3.2vw,40px);
  --fap-site-header-height:80px;
  --fap-site-header-border:rgba(17,64,108,.11);
  --fap-site-header-shadow:0 12px 34px rgba(17,64,108,.08);
  position:sticky;
  top:0;
  z-index:100000;
  width:100%;
  color:var(--fap-primary,#11406C);
  font-family:var(--fap-font,"Almarai",sans-serif);
  background:#fff;
  border-bottom:1px solid var(--fap-site-header-border);
  box-shadow:var(--fap-site-header-shadow);
}

body.admin-bar .fap-site-header-wrap{top:32px;}

.fap-site-header-wrap a{
  color:inherit;
  text-decoration:none;
}

.fap-site-header-wrap button,
.fap-site-header-wrap input{
  font:inherit;
}

.fap-site-header-container{
  width:min(calc(100% - (var(--fap-site-header-gutter) * 2)),var(--fap-site-header-max));
  margin-inline:auto;
}

/* Top information strip. */
.fap-site-topbar{
  min-height:34px;
  color:#fff;
  background:linear-gradient(135deg,var(--fap-primary,#11406C),#0b3158);
}

.fap-site-topbar__inner{
  min-height:34px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding-block:6px;
}

.fap-site-topbar__text,
.fap-site-topbar__actions{
  display:flex;
  align-items:center;
  gap:clamp(10px,1.4vw,22px);
  min-width:0;
}

.fap-site-topbar__text{
  font-size:var(--fap-type-xs);
  font-weight:700;
  line-height:1.5;
  color:rgba(255,255,255,.84);
}

.fap-site-topbar__actions{
  flex:0 0 auto;
}

.fap-site-topbar__actions a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:26px;
  padding:4px 10px;
  border-radius:999px;
  color:#fff;
  font-size:var(--fap-type-xs);
  font-weight:800;
  line-height:1.3;
  transition:background-color .18s ease,color .18s ease;
}

.fap-site-topbar__actions a:hover,
.fap-site-topbar__actions a:focus-visible{
  background:rgba(255,255,255,.14);
}

.fap-site-topbar__actions .is-wa{
  background:rgba(217,148,67,.22);
}

.fap-site-topbar__actions .is-fb{
  background:rgba(24,119,242,.25);
}

/* Main header shell. */
.fap-site-header{
  position:relative;
  min-height:var(--fap-site-header-height);
  background:rgba(255,255,255,.98);
}

.fap-site-header__inner{
  min-height:var(--fap-site-header-height);
  display:grid;
  grid-template-columns:minmax(140px,180px) minmax(0,1fr) auto;
  align-items:center;
  gap:clamp(14px,1.8vw,28px);
}

.fap-site-brand{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  min-width:0;
  min-height:58px;
}

.fap-site-brand .custom-logo-link{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  width:min(100%,170px);
  min-width:0;
  min-height:58px;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
}

.fap-site-brand .custom-logo{
  display:block;
  width:auto;
  max-width:100%;
  height:auto;
  max-height:58px;
  object-fit:contain;
  object-position:center;
}

.fap-site-brand__text{
  display:inline-flex;
  align-items:center;
  min-height:48px;
  color:var(--fap-primary,#11406C);
  font-size:var(--fap-type-lg);
  font-weight:900;
  line-height:1.25;
}

.fap-site-header__actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:9px;
  min-width:max-content;
}

.fap-site-header__button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:10px 17px;
  border:1px solid transparent;
  border-radius:999px;
  font-size:var(--fap-type-sm);
  font-weight:900;
  line-height:1.2;
  white-space:nowrap;
  transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease;
}

.fap-site-header__button:hover,
.fap-site-header__button:focus-visible{
  transform:translateY(-1px);
}

.fap-site-header__button.is-phone{
  color:#fff;
  background:linear-gradient(135deg,var(--fap-primary,#11406C),#0b3158);
  box-shadow:0 10px 24px rgba(17,64,108,.16);
}

.fap-site-header__button.is-wa{
  color:#fff;
  background:linear-gradient(135deg,var(--fap-green,#D99443),var(--fap-green-2,#c27d2d));
  box-shadow:0 10px 24px rgba(217,148,67,.18);
}

.fap-site-header-wrap :is(a,button):focus-visible{
  outline:3px solid rgba(217,148,67,.48);
  outline-offset:3px;
}

/* One WordPress navigation tree for desktop and mobile. */
.fap-site-nav{
  min-width:0;
}

.fap-site-nav__panel,
.fap-site-nav__menu-wrap{
  min-width:0;
}

.fap-site-menu,
.fap-site-menu ul{
  list-style:none;
  margin:0;
  padding:0;
}

.fap-site-menu{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:clamp(0px,.25vw,5px);
  min-width:0;
  white-space:nowrap;
}

.fap-site-menu li{
  position:relative;
  margin:0;
}

.fap-site-menu > li{
  flex:0 0 auto;
}

.fap-site-menu a{
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--fap-primary,#11406C);
  font-weight:800;
  text-decoration:none;
}

.fap-site-menu > li > a{
  min-height:44px;
  padding:9px clamp(8px,.65vw,14px);
  border-radius:999px;
  font-size:var(--fap-type-sm);
  line-height:1.25;
  transition:background-color .18s ease,color .18s ease;
}

.fap-site-menu > li > a:hover,
.fap-site-menu > li > a:focus-visible,
.fap-site-menu > li.current-menu-item > a,
.fap-site-menu > li.current-menu-ancestor > a,
.fap-site-menu > li.is-fap-submenu-open > a{
  color:#0b3158;
  background:rgba(17,64,108,.08);
}

/* Modern chevron. */
.fap-site-menu .menu-item-has-children > a::after{
  content:"";
  width:7px;
  height:7px;
  flex:0 0 7px;
  border-inline-end:2px solid currentColor;
  border-block-end:2px solid currentColor;
  transform:rotate(45deg) translateY(-1px);
  transform-origin:center;
  opacity:.72;
  transition:transform .2s ease,opacity .2s ease;
}

.fap-site-menu .menu-item-has-children:is(:hover,:focus-within,.is-fap-submenu-open) > a::after{
  opacity:1;
  transform:rotate(-135deg) translate(-1px,-1px);
}

/* Dropdown hit-area begins at the trigger edge; the visual card starts lower. */
.fap-site-menu .sub-menu{
  position:absolute;
  top:100%;
  inset-inline-start:0;
  z-index:40;
  display:grid;
  gap:3px;
  min-width:270px;
  max-width:min(340px,calc(100vw - 32px));
  padding:12px 8px 8px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:scale(.985);
  transform-origin:top center;
  transition:opacity .16s ease,transform .16s ease,visibility 0s linear .16s;
}

.fap-site-menu .sub-menu::before{
  content:"";
  position:absolute;
  inset:12px 0 0;
  z-index:-1;
  border:1px solid rgba(17,64,108,.11);
  border-radius:18px;
  background:rgba(255,255,255,.99);
  box-shadow:0 18px 48px rgba(17,64,108,.16);
}

.fap-site-menu li:is(:hover,:focus-within,.is-fap-submenu-open) > .sub-menu{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:scale(1);
  transition-delay:0s;
}

.fap-site-menu .sub-menu li{
  z-index:1;
}

.fap-site-menu .sub-menu a{
  min-height:42px;
  padding:10px 12px;
  border-radius:12px;
  font-size:var(--fap-type-sm);
  line-height:1.45;
  white-space:normal;
  transition:background-color .16s ease,color .16s ease;
}

.fap-site-menu .sub-menu a:hover,
.fap-site-menu .sub-menu a:focus-visible,
.fap-site-menu .sub-menu .current-menu-item > a,
.fap-site-menu .sub-menu .current-menu-ancestor > a{
  color:#0b3158;
  background:rgba(217,148,67,.13);
}

.fap-site-menu .sub-menu .sub-menu{
  top:-12px;
  inset-inline-start:100%;
  padding-block-start:12px;
  padding-inline-start:10px;
}

.fap-site-menu .sub-menu .sub-menu::before{
  inset-block-start:12px;
  inset-inline-start:10px;
}

.fap-site-menu .sub-menu .menu-item-has-children > a::after{
  margin-inline-start:auto;
}

.fap-site-header-wrap:dir(rtl) .fap-site-menu .sub-menu .menu-item-has-children > a::after{
  transform:rotate(135deg);
}

.fap-site-header-wrap:dir(ltr) .fap-site-menu .sub-menu .menu-item-has-children > a::after{
  transform:rotate(-45deg);
}

.fap-site-header-wrap .fap-site-menu .sub-menu .menu-item-has-children:is(:hover,:focus-within,.is-fap-submenu-open) > a::after{
  transform:rotate(-135deg);
}

.fap-site-menu > li.is-fap-submenu-flipped > .sub-menu{
  inset-inline-start:auto;
  inset-inline-end:0;
}

.fap-site-menu .sub-menu li.is-fap-submenu-flipped > .sub-menu{
  inset-inline-start:auto;
  inset-inline-end:100%;
  padding-inline-start:0;
  padding-inline-end:10px;
}

.fap-site-menu .sub-menu li.is-fap-submenu-flipped > .sub-menu::before{
  inset-inline-start:0;
  inset-inline-end:10px;
}

.fap-site-nav__backdrop,
.fap-site-nav__mobile-head,
.fap-site-nav__quick,
.fap-site-nav__mobile-footer,
.fap-site-nav-toggle,
.fap-site-submenu-toggle{
  display:none;
}

/* Compact desktop. */


/* Compact horizontal header for tablets and narrower desktop viewports.
 * This never switches to the mobile drawer; it only reduces spacing so the
 * original desktop navigation remains visible and usable.
 */




/* Mobile drawer mode only. Desktop and tablet widths keep the horizontal WordPress menu. */








/* Mobile-only header utilities: icon-first actions replacing the bottom dock. */
.fap-site-mobile-actions{
  display:none;
}


/* ---------- Compact large desktop: 1280–1399 ---------- */
@media (min-width:1280px) and (max-width:1399px){
  .fap-site-header-wrap{--fap-site-header-gutter:22px;}
  .fap-site-header__inner{grid-template-columns:minmax(124px,150px) minmax(0,1fr) auto;gap:12px;}
  .fap-site-brand .custom-logo-link{width:min(100%,145px);}
  .fap-site-menu > li > a{padding-inline:8px;font-size:var(--fap-type-sm);}
  .fap-site-header__button{padding-inline:13px;font-size:var(--fap-type-xs);}
}

/* ---------- Horizontal tablet / compact desktop: 761–1279 ---------- */
@media (min-width:761px) and (max-width:1279px){
  .fap-site-header-wrap{--fap-site-header-height:74px;--fap-site-header-gutter:clamp(14px,2vw,24px);}
  .fap-site-header__inner{grid-template-columns:minmax(105px,135px) minmax(0,1fr) auto;gap:clamp(7px,1vw,12px);}
  .fap-site-brand{min-height:50px;}
  .fap-site-brand .custom-logo-link{width:min(100%,132px);min-height:50px;}
  .fap-site-brand .custom-logo{max-height:49px;}
  .fap-site-menu{gap:0;}
  .fap-site-menu > li > a{min-height:40px;padding:8px clamp(5px,.55vw,9px);font-size:clamp(.70rem,.65rem + .20vw,.82rem);}
  .fap-site-header__actions{gap:6px;}
  .fap-site-header__button{min-height:40px;padding:8px clamp(9px,.8vw,13px);font-size:var(--fap-type-xs);}
}

@media (min-width:761px) and (max-width:1050px){
  .fap-site-topbar__text span:last-child{display:none;}
  .fap-site-header__button.is-phone{display:none;}
}

/* ---------- Laptop and landscape tablet ---------- */
@media (max-width:1180px){
  .fap-hub-grid,
  .fap-card-grid,
  .fap-service-benefits__grid,
  .fap-steps__grid,
  .fap-trust__grid,
  .fap-service-grid,
  .fap-feature-grid,
  .fap-article-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .fap-timeline{grid-template-columns:repeat(3,minmax(0,1fr));}

  .fap-theme-footer__grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .fap-theme-footer__brand{grid-column:1/-1;}

  .fap-theme-nav,
  .fap-theme-search,
  .fap-theme-header__tools .fap-theme-btn{display:none;}
  .fap-theme-burger{display:block;}
  .fap-theme-header__inner{min-height:74px;gap:14px!important;}
  .fap-theme-brand__text small{max-width:260px;}

  .fap .fap-header .fap-brand--native,
  .fap .fap-header .fap-brand--native .fap-brand__logo{
    width:164px!important;
    min-width:164px!important;
    max-width:164px!important;
  }

  /* Compatibility for the optional Elementor-rendered chrome. */
  body.fap-theme-chrome-enabled .fap-theme-header__main .fap-theme-brand--logo-only,
  body.fap-theme-chrome-enabled .fap-theme-header__main .fap-theme-brand--logo-only .custom-logo-link,
  body.fap-theme-chrome-enabled .fap-theme-header__main .fap-theme-brand--logo-only .fap-theme-logo__icon,
  body.fap-theme-chrome-enabled .fap-theme-header__main .fap-theme-brand--logo-only .fap-theme-logo__mark{
    width:164px!important;
    min-width:164px!important;
    max-width:164px!important;
    flex-basis:164px!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }
  body.fap-theme-chrome-enabled .fap-theme-header__main .fap-theme-brand--logo-only :is(.custom-logo,.custom-logo-link img,.fap-theme-logo__icon img){
    width:164px!important;
    max-width:164px!important;
    height:auto!important;
    max-height:none!important;
  }
  .fap-theme-menu .sub-menu .sub-menu{position:static!important;box-shadow:none!important;border:0!important;padding:4px 12px 0!important;}
  .fap-theme-mobile__menu .sub-menu{position:static!important;display:grid!important;gap:5px!important;margin:6px 0 0!important;padding:0 12px!important;}
  .fap-theme-mobile__menu .sub-menu a{font-size:var(--fap-type-sm)!important;padding:9px 11px!important;}
}

/* ---------- Tablet content ---------- */
@media (max-width:1024px){
  .fap-dynamic-archive__grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .fap .fap-hero__grid,
  .fap .fap-page-hero__grid,
  .fap .fap-service-hero__grid,
  .fap .fap-article-hero__grid{
    padding:clamp(22px,4vw,38px)!important;
  }
}

@media (max-width:960px){
  .fap-dynamic-archive__filters{display:grid;}
  .fap-dynamic-archive__filter-list{justify-content:flex-start;}
}

@media (max-width:900px){
  .fap .fap-tabs{justify-content:flex-start;overflow-x:auto;overflow-y:hidden;flex-wrap:nowrap;padding-bottom:6px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;}
  .fap .fap-tabs a{flex:0 0 auto;white-space:nowrap;scroll-snap-align:start;}
  .fap .fap-pagination a,.fap .fap-pagination span{min-width:38px;height:38px;padding-inline:12px;}
}

/* ---------- Mobile: one structural mode, matching mobile-navigation.js ---------- */
@media (max-width:760px){
  :root{
    --fap-gutter:clamp(14px,4vw,18px);
    --fap-space-card:clamp(20px,5vw,24px);
    --fap-space-card-compact:clamp(16px,4vw,20px);
    --fap-space-section:clamp(44px,11vw,58px);
    --fap-space-hero:clamp(34px,9vw,48px);
  }

  .fap-shell,
  .fap-theme-shell,
  .fap-dynamic-archive__shell{
    width:min(100% - (var(--fap-gutter) * 2),var(--fap-layout-content-max))!important;
  }

  .fap-hero,
  .fap-page-hero,
  .fap-service-hero,
  .fap-article-hero{
    padding-block:var(--fap-space-hero)!important;
  }

  .fap-hero__grid,
  .fap-page-hero__grid,
  .fap-service-hero__grid,
  .fap-article-hero__grid,
  .fap-area__grid,
  .fap-about-grid,
  .fap-contact-grid,
  .fap-service-layout,
  .fap-article-layout,
  .fap-detail-grid,
  .fap-contact-block__grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:var(--fap-space-5)!important;
  }

  .fap .fap-hero__grid,
  .fap .fap-page-hero__grid,
  .fap .fap-service-hero__grid,
  .fap .fap-article-hero__grid{
    padding:var(--fap-space-card)!important;
    border-radius:24px!important;
  }

  .fap .fap-hero__grid > div,
  .fap .fap-page-hero__grid > div,
  .fap .fap-service-hero__grid > div,
  .fap .fap-article-hero__grid > div{padding:0!important;}

  .fap-hero__visual{min-height:clamp(300px,86vw,380px);}

  .fap-page-hero img,
  .fap-service-hero img,
  .fap-article-hero img,
  .fap-area img,
  .fap-about-grid img,
  .fap-contact-grid img{
    height:clamp(240px,70vw,320px);
  }

  .fap-hub-grid,
  .fap-card-grid,
  .fap-feature-grid,
  .fap-article-grid,
  .fap-service-grid,
  .fap-service-benefits__grid,
  .fap-steps__grid,
  .fap-trust__grid,
  .fap-timeline,
  .fap-footer__top,
  .fap-benefits,
  .fap-benefit-list,
  .fap-theme-footer__grid,
  .fap-dynamic-archive__grid{
    grid-template-columns:minmax(0,1fr)!important;
  }

  .fap-feature-card{grid-template-columns:minmax(0,1fr)!important;}
  .fap-feature-card img{width:100%;height:clamp(190px,58vw,240px);}
  .fap-service-card img{height:clamp(200px,58vw,240px);}

  .fap-side-cta{position:relative;top:auto;}
  .fap-prose,
  .fap-contact-card,
  .fap-content-panel,
  .fap-service-benefit-card{padding:var(--fap-space-card)!important;}

  .fap-final-cta .fap-shell{display:block;}
  .fap .fap-final-cta__box{padding:clamp(26px,7vw,34px) var(--fap-space-card)!important;}

  .fap .fap-actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr);
    width:100%;
  }
  .fap .fap-actions .fap-btn,
  .fap-card-action,
  .fap-dynamic-card__link{
    width:100%;
    justify-content:center;
  }

  .fap-dynamic-archive__hero{padding-block:clamp(42px,11vw,58px)!important;}
  .fap-dynamic-archive__content{padding-block:var(--fap-space-section)!important;}
  .fap-dynamic-archive__hero .fap-dynamic-archive__shell{padding:clamp(24px,7vw,32px) var(--fap-space-card)!important;}
  .fap-dynamic-archive__filters{padding:var(--fap-space-card-compact)!important;border-radius:18px;}
  .fap-dynamic-archive__filter-list{
    display:flex;
    overflow-x:auto;
    overflow-y:hidden;
    flex-wrap:nowrap!important;
    max-inline-size:100%;
    padding-block-end:6px;
    scroll-snap-type:x proximity;
    -webkit-overflow-scrolling:touch;
  }
  .fap-dynamic-archive__filter{flex:0 0 auto;scroll-snap-align:start;}
  .fap-dynamic-card{border-radius:22px;}

  .fap-theme-footer__bottom{
    display:grid;
    justify-content:center;
    text-align:center;
  }
  .fap-theme-legal-menu{justify-content:center;}
  .fap-theme-footer__brand p{max-width:none;}
  .fap-theme-wa-float{display:none!important;}
  .fap-mobile-cta{display:none!important;}

  .fap .fap-header .fap-brand--native,
  .fap .fap-header .fap-brand--native .fap-brand__logo{
    width:140px!important;
    min-width:140px!important;
    max-width:140px!important;
  }

  /* Responsive compatibility for the optional Elementor header renderer. */
  .fap-header__inner{height:72px;}
  .fap-brand__txt strong{font-size:var(--fap-type-sm);}
  .fap-brand__txt small{display:none;}
  .fap-brand__mark{width:42px;height:42px;}
  .fap-nav,
  .fap-header__actions{display:none;}
  .fap-menu-toggle{display:block;}
  .fap-mobile-menu.is-open{display:block;background:#fff;border-top:1px solid var(--fap-border);}
  .fap-mobile-menu ul{list-style:none;margin:0;padding:var(--fap-space-3) var(--fap-space-5);display:grid;gap:var(--fap-space-2);}
  .fap-mobile-menu a{display:block;padding:var(--fap-space-3);border-radius:14px;background:#fff;color:var(--fap-primary);font-weight:800;}

  .fap-article-card :is(span,h3,p){margin-inline:var(--fap-space-4);}
  .fap-dynamic-card__body{padding:var(--fap-space-card-compact);}

  body.fap-theme-chrome-enabled .fap-theme-header__main{top:var(--wp-admin--admin-bar--height,0px);}
  body.fap-theme-chrome-enabled .fap-theme-header__main .fap-theme-brand--logo-only,
  body.fap-theme-chrome-enabled .fap-theme-header__main .fap-theme-brand--logo-only .custom-logo-link,
  body.fap-theme-chrome-enabled .fap-theme-header__main .fap-theme-brand--logo-only .fap-theme-logo__icon,
  body.fap-theme-chrome-enabled .fap-theme-header__main .fap-theme-brand--logo-only .fap-theme-logo__mark{
    width:140px!important;
    min-width:140px!important;
    max-width:140px!important;
    flex-basis:140px!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }
  body.fap-theme-chrome-enabled .fap-theme-header__main .fap-theme-brand--logo-only :is(.custom-logo,.custom-logo-link img,.fap-theme-logo__icon img){
    width:140px!important;
    max-width:140px!important;
    height:auto!important;
    max-height:none!important;
  }
  .fap-theme-topbar__text{display:none;}
  .fap-theme-topbar__actions .is-fb{display:none!important;}

  /* Global WordPress header: mobile-only icon utilities and drawer. */
  .fap-site-header-wrap{
    --fap-site-header-height:68px;
    --fap-site-header-gutter:clamp(10px,3vw,14px);
  }
  .fap-site-topbar{display:none;}
  .fap-site-header__inner{
    display:grid;
    grid-template-columns:minmax(92px,1fr) auto 44px;
    align-items:center;
    gap:clamp(6px,2vw,10px);
    min-height:var(--fap-site-header-height);
  }
  .fap-site-brand{
    grid-column:1;
    width:min(132px,100%);
    min-height:48px;
    overflow:hidden;
  }
  .fap-site-brand .custom-logo-link{width:100%;max-width:132px;min-height:48px;}
  .fap-site-brand .custom-logo{max-height:46px;}
  .fap-site-brand__text{min-height:42px;font-size:var(--fap-type-base);}
  .fap-site-header__button{display:none;}
  .fap-site-header__actions{grid-column:3;justify-content:flex-end;min-width:44px;}

  .fap-site-mobile-actions{
    grid-column:2;
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    min-width:max-content;
  }
  .fap-site-mobile-action{
    position:relative;
    display:grid;
    place-items:center;
    width:40px;
    height:40px;
    flex:0 0 40px;
    margin:0;
    padding:0;
    border:1px solid rgba(17,64,108,.12);
    border-radius:14px;
    color:var(--fap-primary,#11406C);
    background:linear-gradient(180deg,#fff 0%,#f6f9fc 100%);
    box-shadow:0 7px 18px rgba(17,64,108,.09);
    -webkit-tap-highlight-color:transparent;
    touch-action:manipulation;
    transition:transform .18s cubic-bezier(.22,1,.36,1),box-shadow .18s ease,border-color .18s ease,background-color .18s ease,color .18s ease;
  }
  .fap-site-mobile-action svg{
    display:block;
    width:19px;
    height:19px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
    transition:transform .18s cubic-bezier(.22,1,.36,1);
  }
  .fap-site-mobile-action.is-wa{
    color:#fff;
    border-color:transparent;
    background:linear-gradient(145deg,var(--fap-green,#D99443),var(--fap-green-2,#c27d2d));
    box-shadow:0 9px 22px rgba(217,148,67,.24);
  }
  .fap-site-mobile-action.is-wa svg{width:20px;height:20px;fill:currentColor;stroke:none;}
  .fap-site-mobile-action.is-request{
    color:var(--fap-green,#D99443);
    border-color:rgba(217,148,67,.2);
    background:linear-gradient(180deg,#fff 0%,rgba(217,148,67,.08) 100%);
  }
  .fap-site-mobile-action:hover,
  .fap-site-mobile-action:focus-visible{
    transform:translateY(-2px);
    border-color:rgba(17,64,108,.24);
    box-shadow:0 11px 24px rgba(17,64,108,.14);
  }
  .fap-site-mobile-action.is-wa:hover,
  .fap-site-mobile-action.is-wa:focus-visible{
    color:#fff;
    border-color:transparent;
    background:linear-gradient(145deg,#e2a153,var(--fap-green-2,#c27d2d));
    box-shadow:0 12px 27px rgba(217,148,67,.31);
  }
  .fap-site-mobile-action:hover svg,
  .fap-site-mobile-action:focus-visible svg{transform:scale(1.08);}
  .fap-site-mobile-action:active{transform:scale(.94);}
  .fap-site-mobile-action:focus-visible{outline:3px solid rgba(217,148,67,.38);outline-offset:2px;}
  .fap-site-mobile-action::before,
  .fap-site-mobile-action::after{
    position:absolute;
    inset-inline-start:50%;
    z-index:5;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .15s ease,transform .15s ease,visibility 0s linear .15s;
  }
  .fap-site-mobile-action::before{
    content:"";
    top:calc(100% + 5px);
    border:5px solid transparent;
    border-bottom-color:#0b3158;
    transform:translate(-50%,-4px);
  }
  .fap-site-mobile-action::after{
    content:attr(data-tooltip);
    top:calc(100% + 14px);
    min-width:max-content;
    padding:6px 9px;
    border-radius:8px;
    color:#fff;
    background:#0b3158;
    box-shadow:0 8px 20px rgba(5,24,43,.2);
    font-size:var(--fap-type-2xs);
    font-weight:800;
    line-height:1.2;
    white-space:nowrap;
    transform:translate(-50%,-4px);
  }
  .fap-site-header-wrap:dir(rtl) .fap-site-mobile-action::before,
  .fap-site-header-wrap:dir(rtl) .fap-site-mobile-action::after{transform:translate(50%,-4px);}
  .fap-site-mobile-action:focus-visible::before,
  .fap-site-mobile-action:focus-visible::after{
    opacity:1;
    visibility:visible;
    transform:translate(-50%,0);
    transition-delay:0s;
  }
  .fap-site-header-wrap:dir(rtl) .fap-site-mobile-action:focus-visible::before,
  .fap-site-header-wrap:dir(rtl) .fap-site-mobile-action:focus-visible::after{transform:translate(50%,0);}

  .fap-site-nav-toggle{
    display:inline-flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:5px;
    width:44px;
    height:44px;
    margin:0;
    padding:0;
    border:1px solid rgba(17,64,108,.15);
    border-radius:14px;
    color:var(--fap-primary,#11406C);
    background:#fff;
    box-shadow:0 8px 24px rgba(17,64,108,.09);
    cursor:pointer;
  }
  .fap-site-nav-toggle span{
    display:block;
    width:23px;
    height:2px;
    border-radius:999px;
    background:currentColor;
    transition:transform .2s ease,opacity .2s ease;
  }
  .fap-site-nav-toggle.is-active span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .fap-site-nav-toggle.is-active span:nth-child(2){opacity:0;}
  .fap-site-nav-toggle.is-active span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

  .fap-site-nav{
    position:fixed;
    inset:0;
    z-index:100010;
    display:block;
    width:100%;
    height:100vh;
    height:100dvh;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .2s ease,visibility 0s linear .24s;
  }
  .fap-site-nav.is-open{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s;}
  .fap-site-nav__backdrop{
    position:absolute;
    inset:0;
    display:block;
    background:rgba(5,24,43,.52);
    -webkit-backdrop-filter:blur(3px);
    backdrop-filter:blur(3px);
  }
  .fap-site-nav__panel{
    position:absolute;
    inset-block:0;
    inset-inline-start:0;
    display:flex;
    flex-direction:column;
    width:min(430px,90vw);
    max-width:100%;
    height:100vh;
    height:100dvh;
    padding:0;
    overflow:hidden;
    color:var(--fap-primary,#11406C);
    background:#fff;
    box-shadow:0 0 52px rgba(5,24,43,.24);
    transform:translateX(104%);
    transition:transform .26s cubic-bezier(.22,.8,.25,1);
    outline:0;
  }
  .fap-site-header-wrap:dir(ltr) .fap-site-nav__panel{transform:translateX(-104%);}
  .fap-site-nav.is-open .fap-site-nav__panel{transform:translateX(0);}
  .fap-site-nav__mobile-head{
    flex:0 0 auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    min-height:78px;
    padding:14px 18px;
    border-bottom:1px solid rgba(17,64,108,.09);
    background:#fff;
  }
  .fap-site-nav__eyebrow,.fap-site-nav__title{display:block;}
  .fap-site-nav__eyebrow{margin-bottom:3px;color:var(--fap-green,#D99443);font-size:var(--fap-type-xs);font-weight:900;}
  .fap-site-nav__title{color:var(--fap-primary,#11406C);font-size:var(--fap-type-md);font-weight:900;}
  .fap-site-nav__close{
    position:relative;
    display:inline-grid;
    place-items:center;
    width:44px;
    height:44px;
    flex:0 0 44px;
    margin:0;
    padding:0;
    border:1px solid rgba(17,64,108,.13);
    border-radius:14px;
    color:var(--fap-primary,#11406C);
    background:#fff;
    cursor:pointer;
  }
  .fap-site-nav__close span::before,
  .fap-site-nav__close span::after{
    content:"";
    position:absolute;
    top:50%;
    left:50%;
    width:21px;
    height:2px;
    border-radius:999px;
    background:currentColor;
  }
  .fap-site-nav__close span::before{transform:translate(-50%,-50%) rotate(45deg);}
  .fap-site-nav__close span::after{transform:translate(-50%,-50%) rotate(-45deg);}
  .fap-site-nav__quick{
    flex:0 0 auto;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:9px;
    padding:12px 16px;
    border-bottom:1px solid rgba(17,64,108,.08);
    background:#f7f9fb;
  }
  .fap-site-nav__quick a{
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:10px 12px;
    border-radius:13px;
    color:#fff;
    font-size:var(--fap-type-sm);
    font-weight:900;
  }
  .fap-site-nav__quick .is-phone{background:linear-gradient(135deg,var(--fap-primary,#11406C),#0b3158);}
  .fap-site-nav__quick .is-wa{background:linear-gradient(135deg,var(--fap-green,#D99443),var(--fap-green-2,#c27d2d));}
  .fap-site-nav__quick .is-fb{gap:6px;background:linear-gradient(135deg,#1877f2,#0f5fc4);}
  .fap-site-nav__quick .is-fb svg{width:16px;height:16px;fill:currentColor;}
  .fap-site-nav__menu-wrap{
    flex:1 1 auto;
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior:contain;
    padding:12px 14px 22px;
  }
  .fap-site-menu{display:grid;gap:6px;white-space:normal;}
  .fap-site-menu > li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;}
  .fap-site-menu > li > a{grid-column:1;justify-content:flex-start;min-height:50px;padding:12px 14px;border-radius:14px;font-size:var(--fap-type-base);}
  .fap-site-menu .menu-item-has-children > a::after{display:none;}
  .fap-site-submenu-toggle{
    grid-column:2;
    display:inline-grid;
    place-items:center;
    width:42px;
    height:42px;
    margin-inline-start:6px;
    padding:0;
    border:1px solid rgba(17,64,108,.11);
    border-radius:12px;
    color:var(--fap-primary,#11406C);
    background:rgba(17,64,108,.05);
    cursor:pointer;
  }
  .fap-site-submenu-toggle span{
    width:8px;
    height:8px;
    border-inline-end:2px solid currentColor;
    border-block-end:2px solid currentColor;
    transform:rotate(45deg) translate(-1px,-1px);
    transition:transform .2s ease;
  }
  .fap-site-submenu-toggle[aria-expanded="true"] span{transform:rotate(-135deg) translate(-1px,-1px);}
  .fap-site-menu .sub-menu{
    position:static;
    grid-column:1/-1;
    display:grid;
    gap:5px;
    min-width:0;
    max-width:none;
    margin:4px 10px 8px 0;
    padding:7px 12px 7px 0;
    border-inline-start:2px solid rgba(217,148,67,.28);
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:none;
    transition:none;
  }
  .fap-site-menu .sub-menu[hidden]{display:none;}
  .fap-site-menu .sub-menu::before{display:none;}
  .fap-site-menu .sub-menu li{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;}
  .fap-site-menu .sub-menu a{grid-column:1;min-height:44px;padding:10px 12px;border:1px solid rgba(17,64,108,.08);border-radius:12px;background:#fff;font-size:var(--fap-type-sm);}
  .fap-site-menu .sub-menu .sub-menu{grid-column:1/-1;margin-inline-start:10px;padding-inline-start:10px;}
  .fap-site-nav__mobile-footer{
    flex:0 0 auto;
    display:grid;
    gap:5px;
    padding:12px 16px max(16px,env(safe-area-inset-bottom));
    border-top:1px solid rgba(17,64,108,.09);
    background:#fff;
    text-align:center;
  }
  .fap-site-nav__mobile-footer a{display:flex;align-items:center;justify-content:center;min-height:44px;border-radius:13px;color:#fff;background:linear-gradient(135deg,var(--fap-primary,#11406C),#0b3158);font-size:var(--fap-type-sm);font-weight:900;}
  .fap-site-nav__mobile-footer span{color:var(--fap-muted,#687080);font-size:var(--fap-type-xs);font-weight:700;}
  html.fap-site-nav-open,body.fap-site-nav-open{overflow:hidden;}
}

@media (max-width:600px){
  .fap-service-benefit-card{grid-template-columns:minmax(0,1fr)!important;}
  .fap-service-benefit-card__num{width:46px;height:46px;border-radius:16px;font-size:var(--fap-type-md);}
  .fap-service-benefit-card h3{font-size:var(--fap-type-lg)!important;}

  .fap-site-nav__quick{grid-template-columns:repeat(2,minmax(0,1fr));}
  .fap-site-nav__quick .is-fb{grid-column:1/-1;}
  .fap-site-header-wrap{--fap-site-header-gutter:14px;}
  .fap-site-brand{width:min(122px,100%);}
  .fap-site-brand .custom-logo-link{max-width:122px;}
  .fap-site-brand .custom-logo{max-height:44px;}
  .fap-site-nav__panel{width:100%;}
}

@media (max-width:420px){
  body.fap-theme-chrome-enabled .fap-theme-header__main .fap-theme-brand--logo-only,
  body.fap-theme-chrome-enabled .fap-theme-header__main .fap-theme-brand--logo-only .custom-logo-link,
  body.fap-theme-chrome-enabled .fap-theme-header__main .fap-theme-brand--logo-only .fap-theme-logo__icon,
  body.fap-theme-chrome-enabled .fap-theme-header__main .fap-theme-brand--logo-only .fap-theme-logo__mark{
    width:132px!important;
    min-width:132px!important;
    max-width:132px!important;
    flex-basis:132px!important;
  }
  body.fap-theme-chrome-enabled .fap-theme-header__main .fap-theme-brand--logo-only :is(.custom-logo,.custom-logo-link img,.fap-theme-logo__icon img){
    width:132px!important;
    max-width:132px!important;
  }

  :root{--fap-gutter:12px;--fap-space-card:20px;--fap-space-card-compact:16px;}
  .fap .fap-hero__grid,
  .fap .fap-page-hero__grid,
  .fap .fap-service-hero__grid,
  .fap .fap-article-hero__grid{padding:20px!important;border-radius:20px!important;}
  .fap-dynamic-archive__hero .fap-dynamic-archive__shell{padding:24px 18px!important;}
  .fap-site-nav__quick a{padding-inline:8px;}
}

@media (max-width:360px){
  :root{--fap-gutter:10px;--fap-space-card:18px;--fap-space-card-compact:15px;}
  .fap-site-header__inner{grid-template-columns:minmax(64px,1fr) auto 40px;gap:4px;}
  .fap-site-brand{width:min(92px,100%);}
  .fap-site-brand .custom-logo-link{max-width:92px;}
  .fap-site-brand .custom-logo{max-height:40px;}
  .fap-site-mobile-actions{gap:3px;}
  .fap-site-mobile-action{width:34px;height:34px;flex-basis:34px;border-radius:11px;}
  .fap-site-mobile-action svg,.fap-site-mobile-action.is-wa svg{width:17px;height:17px;}
  .fap-site-nav-toggle{width:40px;height:40px;border-radius:12px;}
  .fap-site-nav-toggle span{width:21px;}
  .fap-site-nav__mobile-head{padding-inline:14px;}
  .fap-site-nav__quick{padding-inline:12px;}
  .fap-site-nav__menu-wrap{padding-inline:10px;}
}

@media (max-width:782px){
  body.admin-bar .fap-site-header-wrap{top:46px;}
}

@media (max-width:760px) and (hover:hover) and (pointer:fine){
  .fap-site-mobile-action:hover::before,
  .fap-site-mobile-action:hover::after{
    opacity:1;
    visibility:visible;
    transform:translate(-50%,0);
    transition-delay:.08s;
  }
  .fap-site-header-wrap:dir(rtl) .fap-site-mobile-action:hover::before,
  .fap-site-header-wrap:dir(rtl) .fap-site-mobile-action:hover::after{transform:translate(50%,0);}
}

@media (hover:none){
  .fap :where(.fap-card,.fap-service-card,.fap-article-card,.fap-hub-card,.fap-feature-card,.fap-dynamic-card,.fap-step,.fap-trust__item,.fap-side-cta,.fap-faq details,.fap-service-benefit-card):hover{
    transform:none!important;
  }
}

@media (prefers-reduced-motion:reduce){
  .fap *,
  .fap *::before,
  .fap *::after,
  .fap-theme-chrome *,
  .fap-theme-chrome *::before,
  .fap-theme-chrome *::after,
  .fap-site-header-wrap *,
  .fap-site-header-wrap *::before,
  .fap-site-header-wrap *::after,
  .fap-dynamic-archive *,
  .fap-dynamic-archive *::before,
  .fap-dynamic-archive *::after{
    scroll-behavior:auto!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
  .fap-reveal,.fap-zoom-reveal{opacity:1!important;transform:none!important;filter:none!important;}
}

/*
 * Full-bleed section architecture.
 * Every Sari section owns the complete viewport width. Visual backgrounds and
 * separators therefore reach both screen edges, while .fap-shell remains the
 * single constrained inner-content container with responsive safe gutters.
 */
@supports (width:100dvw){
  :root{--fap-viewport-inline:100dvw;}
}

.fap-template-content,
.fap-template-content > .elementor,
.fap-template-content .elementor-section-wrap,
.fap-template-content .elementor-inner,
.fap-template-content .elementor{
  inline-size:100%;
  max-inline-size:none;
  margin-inline:0;
}

body.fap-owned-site .fap-elementor-section,
body.fap-owned-site .elementor-widget-container > .fap-widget-scope{
  box-sizing:border-box;
  inline-size:var(--fap-viewport-inline)!important;
  max-inline-size:var(--fap-viewport-inline)!important;
  margin-inline:calc((100% - var(--fap-viewport-inline)) / 2)!important;
}

body.fap-owned-site .fap-elementor-section,
body.fap-owned-site .fap-elementor-section > .elementor-container,
body.fap-owned-site .fap-elementor-section > .e-con-inner,
body.fap-owned-site .fap-elementor-section > .elementor-container > .elementor-column,
body.fap-owned-site .fap-elementor-section > .elementor-container > .elementor-column > .elementor-widget-wrap,
body.fap-owned-site .fap-elementor-section .elementor-widget,
body.fap-owned-site .fap-elementor-section .elementor-widget-container{
  inline-size:100%!important;
  max-inline-size:none!important;
}

body.fap-owned-site .fap-elementor-section,
body.fap-owned-site .fap-elementor-section > .elementor-container,
body.fap-owned-site .fap-elementor-section > .e-con-inner,
body.fap-owned-site .fap-elementor-section > .elementor-container > .elementor-column,
body.fap-owned-site .fap-elementor-section > .elementor-container > .elementor-column > .elementor-widget-wrap,
body.fap-owned-site .fap-elementor-section .elementor-widget-container{
  margin-inline:0!important;
  padding-inline:0!important;
}

.fap > :where(
  .fap-hero,
  .fap-page-hero,
  .fap-service-hero,
  .fap-article-hero,
  .fap-section,
  .fap-service-benefits,
  .fap-area,
  .fap-final-cta,
  .fap-trust,
  .fap-steps,
  .fap-faq,
  .fap-contact-block,
  .fap-article-body,
  .fap-service-overview,
  .fap-archive-center
),
.fap-widget-scope > :where(section,article),
.fap-service-detail > section,
.fap-article > section{
  inline-size:100%!important;
  max-inline-size:none!important;
  margin-inline:0!important;
}

/* Inner content remains readable; only the section canvas is full width. */
.fap .fap-shell,
.fap-theme-shell,
.fap-dynamic-archive__shell{
  inline-size:min(var(--fap-layout-content-max),calc(100% - (var(--fap-gutter) * 2)))!important;
  max-inline-size:var(--fap-layout-content-max)!important;
  margin-inline:auto!important;
}

