/* Shared visual contract for Elementor and the React storefront. */
.alsafa-design-refresh .as-order-message{width:100%;margin-block:20px;text-align:right}
.alsafa-design-refresh .as-order-message summary{cursor:pointer;padding:14px;border:1px solid #dce5eb;border-radius:12px;color:#123e57}
.alsafa-design-refresh .as-order-message textarea{width:100%;min-height:230px;padding:14px;margin-top:10px;line-height:1.8;resize:vertical;border:1px solid #dce5eb;border-radius:12px}
.alsafa-design-refresh{--as-blue:#087bb5;--as-blue-dark:#123e57;--as-ink:#18394a;--as-muted:#536977;--as-line:#dce5eb;--as-radius:16px;--as-soft:#f4f7f9;--as-red:#b92234;--as-home-ink:#123e57;--as-home-primary:#087bb5;--as-home-muted:#536977;background:#f6f8fa;color:#18394a}
.alsafa-design-refresh :is(button,input,select,textarea){font-family:'Cairo',Tahoma,Arial,sans-serif}
.alsafa-design-refresh :is(a,button,input,select,textarea):focus-visible{outline:3px solid #087bb5;outline-offset:3px}
.alsafa-design-refresh .as-header{background:#fff;backdrop-filter:none;box-shadow:none}
.alsafa-design-refresh #alsafa-home-quick-add-root{position:relative;z-index:2147480000;font-family:'Cairo',Tahoma,Arial,sans-serif}
.alsafa-design-refresh #alsafa-home-quick-add-root .as-cart-panel a{color:inherit;text-decoration:none}
.alsafa-design-refresh #alsafa-home-quick-add-root .as-options-modal{font-size:16px;line-height:1.6}
.alsafa-design-refresh.home .as-home-slider-section>.elementor-container{max-width:100%;width:100%}
.alsafa-design-refresh.home .as-home-slider-section .elementor-widget-wrap{padding:0}
.alsafa-design-refresh .as-shop-intro{padding:30px 0;background:#edf4f8;border-bottom:1px solid var(--as-line)}
.alsafa-design-refresh .as-shop-intro .as-container:after{display:none}
.alsafa-design-refresh .as-shop-intro h1{font-size:2rem;line-height:1.5}
.alsafa-design-refresh .as-shop-intro p{font-size:1rem;line-height:1.8;margin-top:6px}
.alsafa-design-refresh .as-shop-toolbar-wrap{background:#fff;backdrop-filter:none}
.alsafa-design-refresh .as-category-strip button{min-height:44px;border-radius:12px}
.alsafa-design-refresh .as-catalog{padding-top:26px}
.alsafa-design-refresh .as-results-head h2{font-size:1.25rem}
.alsafa-design-refresh .as-product-grid{gap:18px}
.alsafa-design-refresh .as-product-card{border-radius:16px;box-shadow:none}
.alsafa-design-refresh .as-product-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px #123e570c}
.alsafa-design-refresh .as-product-media{background:#fff;border-bottom:1px solid #edf1f4}
.alsafa-design-refresh .as-product-media img{padding:16px}
.alsafa-design-refresh .as-product-body h2{min-height:2.9em;line-height:1.5;font-size:.96rem}
.alsafa-design-refresh .as-price{color:#123e57;font-size:1.12rem;line-height:1.65}
.alsafa-design-refresh .as-product-actions{grid-template-columns:minmax(0,1fr) 48px;gap:8px}
.alsafa-design-refresh .as-product-options-action{grid-template-columns:1fr}
.alsafa-design-refresh .as-card-quantity input{width:100%;height:46px;background:#fff}
.alsafa-design-refresh .as-quick-plus{background:#e8f3f9;color:#096c9a;border:1px solid #c9e2ed}
.alsafa-design-refresh .as-add-quantity{background:#087bb5;min-height:46px}
.alsafa-design-refresh .as-options-modal-close{width:44px;height:44px}
.alsafa-design-refresh .as-options-modal{overscroll-behavior:contain}
.alsafa-design-refresh .as-options-modal-footer{position:sticky;bottom:0;background:#fff;padding-top:12px}
.alsafa-design-refresh :is(.as-stepper button,.as-stepper input,.as-remove){min-height:44px}
.alsafa-design-refresh .as-search-field:focus-within{border-color:#087bb5;box-shadow:0 0 0 3px #087bb518}
.alsafa-design-refresh.home .as-home-slider{min-height:520px;border-radius:20px}
.alsafa-design-refresh.home .as-home-slide__content{width:calc(100% - 104px);padding:50px 0 100px}
.alsafa-design-refresh.home .as-home-slide__content :is(h1,h2){font-size:clamp(2rem,3.8vw,3.6rem);line-height:1.35;max-width:640px}
.alsafa-design-refresh.home .as-home-slide__content p{font-size:1.08rem;line-height:1.9;max-width:550px}
.alsafa-design-refresh.home .as-home-slide__actions{margin-top:24px}
.alsafa-design-refresh.home .as-home-slide__actions a{border-radius:10px}
.alsafa-design-refresh.home .as-home-slider__arrow{top:auto;bottom:20px;transform:none;width:44px;height:44px}
.alsafa-design-refresh.home .as-home-slider__arrow.is-prev{right:24px}
.alsafa-design-refresh.home .as-home-slider__arrow.is-next{left:auto;right:78px}
.alsafa-design-refresh.home .as-home-section{padding-block:56px}
.alsafa-design-refresh.home .as-home-section .elementor-heading-title{color:#123e57;line-height:1.5}
.alsafa-design-refresh.home .as-home-section.is-soft{background:#f4f7f9}
.alsafa-design-refresh.home .as-home-category{border:1px solid #dce5eb;border-radius:14px;box-shadow:none;min-height:140px}
.alsafa-design-refresh.home .as-home-product{border-radius:16px;box-shadow:none;border:1px solid #dce5eb}
.alsafa-design-refresh.home .as-home-product__media{background:#fff;aspect-ratio:1}
.alsafa-design-refresh.home .as-home-product__media img{object-fit:contain;padding:14px}
.alsafa-design-refresh.home .as-home-product__name{font-size:.96rem;line-height:1.5;min-height:2.9em}
.alsafa-design-refresh.home .as-home-product__footer{display:grid;grid-template-columns:1fr;gap:12px}
.alsafa-design-refresh.home .as-home-product__footer strong{color:#123e57;font-size:1.08rem}
.alsafa-design-refresh.home .as-home-product__footer button{width:100%;height:46px;min-height:46px;border-radius:10px;font-size:.85rem;background:#087bb5}
.alsafa-design-refresh.home .as-home-product__quantity{display:grid;grid-template-columns:1fr 46px;gap:8px;margin:10px 0}
.alsafa-design-refresh.home .as-home-product__quantity input{width:100%;min-width:0;height:46px;padding:0 8px;border:1px solid #dce5eb;border-radius:10px;text-align:center}
.alsafa-design-refresh.home .as-home-product__quantity button{height:46px;border:1px solid #c9e2ed;border-radius:10px;background:#e8f3f9;color:#096c9a;font-size:1.4rem}
.alsafa-design-refresh.home .as-home-distributor-card{min-height:0;padding:22px;border-radius:14px;box-shadow:none}
.alsafa-design-refresh.home .as-home-distributor-filters button{min-height:44px;border-radius:10px}
.alsafa-design-refresh.home .as-home-distributor-card a{min-height:44px}
.alsafa-design-refresh.home .as-home-step>.elementor-widget-wrap{border-radius:14px;box-shadow:none}
.alsafa-design-refresh.home .as-home-contact{padding-block:52px}
@media(min-width:768px){.alsafa-design-refresh.home .as-home-slider-section{margin:146px auto 0;max-width:1180px}.alsafa-design-refresh .as-product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:767px){
 .alsafa-design-refresh .as-shop-intro{padding:19px 0}
 .alsafa-design-refresh .as-shop-intro h1{font-size:1.4rem}
 .alsafa-design-refresh .as-shop-intro p{font-size:.83rem}
 .alsafa-design-refresh .as-filter-button{font-size:.75rem;padding-inline:10px}
 .alsafa-design-refresh .as-category-strip{padding-block:8px}
 .alsafa-design-refresh .as-product-grid{gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}
 .alsafa-design-refresh .as-product-media img{padding:10px}
 .alsafa-design-refresh .as-product-body h2{font-size:.83rem}
 .alsafa-design-refresh .as-price{font-size:.91rem}
 .alsafa-design-refresh .as-product-actions{gap:7px}
 .alsafa-design-refresh .as-add-quantity{font-size:.8rem}
 .alsafa-design-refresh .as-results-head span{font-size:.75rem}
 .alsafa-design-refresh :is(.as-mobile-nav,.alsafa-mobile-nav){right:0;left:0;bottom:0;min-height:72px;padding:6px 8px max(6px,env(safe-area-inset-bottom));border:0;border-top:1px solid #dce5eb;border-radius:0;background:#fff;box-shadow:0 -4px 18px #123e5709;backdrop-filter:none}
 .alsafa-design-refresh :is(.as-mobile-nav .as-mobile-nav-item,.alsafa-mobile-nav .alsafa-mobile-nav-link){grid-template-rows:34px 18px;min-height:58px;gap:3px;border-radius:12px;background:transparent;font-size:11px;line-height:18px}
 .alsafa-design-refresh :is(.as-mobile-nav .as-mobile-nav-item.is-current,.alsafa-mobile-nav .alsafa-mobile-nav-link.is-current){background:#edf5fa}
 .alsafa-design-refresh :is(.as-mobile-nav .as-mobile-nav-item.is-current:before,.alsafa-mobile-nav .alsafa-mobile-nav-link.is-current:after){display:none}
 .alsafa-design-refresh :is(.as-mobile-nav .as-nav-icon,.alsafa-mobile-nav .alsafa-mobile-icon-wrap){width:34px;height:34px;border-radius:11px;transform:none!important;box-shadow:none!important}
 .alsafa-design-refresh :is(.as-mobile-nav .as-mobile-nav-item>.as-nav-icon+span,.alsafa-mobile-nav .alsafa-mobile-nav-link>span:last-child){height:18px!important;line-height:18px!important;font-size:11px!important;margin:0!important}
 .alsafa-design-refresh .as-mobile-purchase{bottom:calc(72px + env(safe-area-inset-bottom));border-radius:0}
 .alsafa-design-refresh.home .as-home-slider{min-height:490px;border-radius:0}
 .alsafa-design-refresh.home .as-home-slide__content{width:calc(100% - 40px);padding:38px 0 88px}
 .alsafa-design-refresh.home .as-home-slide__content :is(h1,h2){font-size:2rem;line-height:1.4}
 .alsafa-design-refresh.home .as-home-slide__content p{font-size:.96rem}
 .alsafa-design-refresh.home .as-home-slide__actions{display:grid;grid-template-columns:1fr;gap:10px}
 .alsafa-design-refresh.home .as-home-slide__actions a{min-height:46px;font-size:.88rem}
 .alsafa-design-refresh.home .as-home-section{padding-block:36px}
 .alsafa-design-refresh.home .as-home-category{min-height:118px;padding:16px}
 .alsafa-design-refresh.home .as-home-product__name{font-size:.83rem}
 .alsafa-design-refresh.home .as-home-product__footer strong{font-size:.9rem}
 .alsafa-design-refresh.home .as-home-product__body{padding:10px}
 .alsafa-design-refresh.home .as-home-distributor-grid{grid-template-columns:1fr 1fr;gap:10px}
 .alsafa-design-refresh.home .as-home-distributor-card{padding:14px;min-width:0}
 .alsafa-design-refresh.home .as-home-distributor-card a{display:flex;flex-wrap:wrap;font-size:.75rem}
}
@media(prefers-reduced-motion:reduce){.alsafa-design-refresh *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* Keep all slide content in the sizing grid so translated text and zoom cannot clip it. */
.alsafa-design-refresh.home .as-home-slider__track{position:relative;inset:auto;display:grid;min-height:inherit}
.alsafa-design-refresh.home .as-home-slide{position:relative;inset:auto;grid-area:1/1;min-width:0}
.alsafa-design-refresh.home .as-home-slider__dots{gap:0;bottom:18px}
.alsafa-design-refresh.home .as-home-slider__dots button{display:grid;place-items:center;width:44px;height:44px;background:transparent;transition:none}
.alsafa-design-refresh.home .as-home-slider__dots button::after{content:"";width:10px;height:10px;border-radius:99px;background:#ffffff80}
.alsafa-design-refresh.home .as-home-slider__dots button[aria-selected="true"]::after{width:28px;background:#fff}
.alsafa-design-refresh .as-quick-add-error{position:fixed;z-index:10060;bottom:100px;left:50%;transform:translateX(-50%);width:min(440px,calc(100% - 32px));padding:16px;background:#fff5f5;color:#8e1526;border:1px solid #e2a5ae;border-radius:12px;box-shadow:0 8px 28px #123e5730;display:flex;align-items:center;gap:12px}
.alsafa-design-refresh .as-quick-add-error button{flex:0 0 44px;min-height:44px;background:transparent;color:inherit;border:1px solid currentColor;border-radius:8px}
/* App-like mobile shell: preserve safe-area spacing and make every primary
 * action easy to tap without changing the desktop layout. */
@media(max-width:767px){
 body.alsafa-design-refresh{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
 body.alsafa-design-refresh :is(.as-mobile-nav,.alsafa-mobile-nav){height:auto;min-height:calc(72px + env(safe-area-inset-bottom));box-sizing:border-box}
 body.alsafa-design-refresh :is(.as-mobile-nav-item,.alsafa-mobile-nav-link){height:58px;min-width:0;padding:2px}
 body.alsafa-design-refresh .as-home-slide__actions a,
 body.alsafa-design-refresh .as-add-quantity,
 body.alsafa-design-refresh .as-product-options-action,
 body.alsafa-design-refresh .as-quick-plus{min-height:48px}
 body.alsafa-design-refresh .as-home-slider__dots{bottom:18px}
 body.alsafa-design-refresh .as-home-slider__arrow{bottom:12px}
 body.alsafa-design-refresh .as-home-slider__arrow.is-prev{right:16px;left:auto}
 body.alsafa-design-refresh .as-home-slider__arrow.is-next{left:16px;right:auto}
 body.alsafa-design-refresh .as-home-slide>picture>img{object-position:center}
 body.alsafa-design-refresh .as-home-section-heading{margin-inline:4px}
 body.alsafa-design-refresh .as-home-categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 body.alsafa-design-refresh .as-home-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
}

/* One layout contract for the theme's homepage and the React shopping routes. */
@media(max-width:767px){
 body.alsafa-design-refresh :is(.as-mobile-nav,.alsafa-mobile-nav){display:grid;grid-template-columns:repeat(4,minmax(0,1fr));direction:rtl;align-items:start;gap:4px;padding:6px 8px calc(6px + env(safe-area-inset-bottom));min-height:calc(74px + env(safe-area-inset-bottom));isolation:isolate}
 body.alsafa-design-refresh :is(.as-mobile-nav-item,.alsafa-mobile-nav-link){display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:34px minmax(20px,auto);height:auto;min-height:61px;justify-items:center;align-content:start;gap:3px;box-sizing:border-box;float:none;margin:0;padding:2px 0;border:0;box-shadow:none;transform:none;line-height:20px!important}
 body.alsafa-design-refresh :is(.as-nav-icon,.alsafa-mobile-icon-wrap){grid-column:1;grid-row:1;justify-self:center;align-self:center;float:none;margin:0!important;position:relative;inset:auto;transform:none!important}
 body.alsafa-design-refresh :is(.as-mobile-nav-item>.as-nav-icon+span,.alsafa-mobile-nav-link>.alsafa-mobile-icon-wrap+span){grid-column:1;grid-row:2;justify-self:stretch;position:static;float:none;height:auto!important;min-height:20px;line-height:20px!important;overflow:visible;text-align:center;font-size:12px!important}
 body.alsafa-design-refresh :is(.as-mobile-nav,.alsafa-mobile-nav) b{box-sizing:border-box;top:0;right:calc(50% - 27px);left:auto;min-width:20px;height:20px;line-height:16px!important}
 body.alsafa-design-refresh .as-mobile-purchase{bottom:calc(74px + env(safe-area-inset-bottom))}
 body.alsafa-design-refresh :is(.as-menu-panel,.alsafa-mobile-menu-panel){box-sizing:border-box;max-height:100dvh;overscroll-behavior:contain;width:min(370px,calc(100vw - 24px));border-radius:20px 0 0 20px}
 body.alsafa-design-refresh :is(.as-menu-contact,.alsafa-mobile-menu-contact){grid-template-columns:1fr;flex-shrink:0}
 body.alsafa-design-refresh :is(.as-menu-head,.alsafa-mobile-menu-panel>header){padding-top:max(20px,env(safe-area-inset-top));flex-shrink:0}
 body.alsafa-design-refresh :is(.as-menu-panel .as-icon-button,.alsafa-mobile-menu-close){width:44px;height:44px;flex-shrink:0}
 body.alsafa-design-refresh .as-success .as-button{width:100%;min-height:52px;white-space:normal;line-height:1.7;padding:12px}
}
