/* Entrance effects only; hover and carousel interactions remain available. */
.elementor .elementor-invisible,.elementor .reveal{visibility:visible!important;opacity:1!important;animation:none!important;transform:none!important;transition:none!important}
.elementor .animated{animation:none!important}
.taiff-service-card{position:relative!important;isolation:isolate}
.taiff-service-card .taiff-service-link{position:absolute!important;inset:0!important;z-index:10;display:block;border-radius:inherit}
.taiff-service-link:focus-visible{outline:3px solid #0e78bc;outline-offset:3px}
.taiff-service-card .elementor-widget-button{display:none!important}
.taiff-work-track{display:flex!important;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:4px 4px 16px;}
.taiff-work-track>.elementor-portfolio-item{flex:0 0 calc((100% - 48px)/3);min-width:0;position:relative!important;inset:auto!important;transform:none!important;scroll-snap-align:start;}
.taiff-work-track .elementor-portfolio-item__img img{width:100%;height:100%;object-fit:cover}
.taiff-work-track .elementor-portfolio-item__overlay{opacity:1!important;background:linear-gradient(transparent,rgba(0,0,0,.65))!important;justify-content:flex-end;padding:24px}
.taiff-work-controls{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:20px}
.taiff-work-controls button{border:1px solid #16b7b0;border-radius:50%;width:44px;height:44px;padding:0;color:#142c36;background:#f7faf9;font-size:24px;cursor:pointer}
.taiff-work-controls button:hover{background:#eaf7f5}
.taiff-work-controls button:focus-visible{outline:3px solid #0e78bc;outline-offset:3px}
.taiff-work-controls button:disabled{opacity:.4;cursor:default}
@media(max-width:1024px){.taiff-work-track>.elementor-portfolio-item{flex-basis:calc((100% - 24px)/2)}}
@media(max-width:767px){
.elementor-location-header .elementor-element.elementor-element-94cf72e{margin-bottom:0!important;--margin-bottom:0px}
.elementor-1716 .elementor-element-1b13eea{margin-top:24px!important}
.taiff-work-track>.elementor-portfolio-item{flex-basis:100%}
}

.taiff-work-track .elementor-portfolio-item__img{aspect-ratio:16/10;overflow:hidden;padding-bottom:0!important;height:auto!important}
.taiff-work-track .elementor-portfolio-item>a{display:block;position:relative}

.taiff-work-item{border-radius:18px;overflow:hidden}
.taiff-work-item .elementor-portfolio-item__overlay{position:absolute;inset:0;display:flex;flex-direction:column;pointer-events:none}
.taiff-work-item .elementor-portfolio-item__title{color:#fff;font-size:22px;margin:0;text-align:start}
.taiff-work-item .elementor-portfolio-item__img img{display:block}
.taiff-work-item>a:focus-visible{outline:3px solid #0e78bc;outline-offset:-3px}

/* Services page: spacious two-column cards with distinct icons and a clear reading order. */
body .elementor-1696 .elementor-element-4cf7ab0 > .elementor-container{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px!important;max-width:1160px;padding:12px 8px 48px;counter-reset:service-card}
body .elementor-1696 .elementor-element-4cf7ab0 > .elementor-container > .elementor-column{width:100%!important;min-width:0;position:relative;counter-increment:service-card;border:1px solid #dfe9e8!important;border-radius:24px!important;background:#fff!important;box-shadow:0 8px 28px rgba(20,44,54,.045)!important;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease!important}
body .elementor-1696 .elementor-element-4cf7ab0 > .elementor-container > .elementor-column::before{content:counter(service-card,decimal-leading-zero);position:absolute;inset-inline-end:32px;top:32px;font:600 15px/1.6 "Cairo",sans-serif;color:#91a5aa;z-index:1;background:none;width:auto;height:auto;transform:none}
body .elementor-1696 .elementor-element-4cf7ab0 > .elementor-container > .elementor-column::after{content:"↗";position:absolute;inset-inline-end:30px;bottom:28px;display:grid;place-items:center;width:38px;height:38px;background:#edf7f5;border:1px solid #d9ece7;border-radius:50%;color:#177b76;font:24px/1 sans-serif;transform:none;z-index:1}
body .elementor-1696 .elementor-element-4cf7ab0 > .elementor-container > .elementor-column:hover,body .elementor-1696 .elementor-element-4cf7ab0 > .elementor-container > .elementor-column:focus-within{border-color:#17aaa2!important;box-shadow:0 14px 36px rgba(20,100,100,.1)!important}
body .elementor-1696 .elementor-element-4cf7ab0 > .elementor-container > .elementor-column > .elementor-widget-wrap{padding:32px 32px 78px!important;margin:0!important;gap:0;align-content:flex-start;background:transparent!important;border:0!important;border-radius:inherit;box-shadow:none!important}
body .elementor-1696 .elementor-element-4cf7ab0 .elementor-widget-icon-box{width:100%;margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
body .elementor-1696 .elementor-element-4cf7ab0 .elementor-icon-box-wrapper{display:flex!important;flex-direction:column!important;align-items:flex-start!important;text-align:start!important;gap:22px}
body .elementor-1696 .elementor-element-4cf7ab0 .elementor-icon-box-icon{margin:0!important;padding:0!important}
body .elementor-1696 .elementor-element-4cf7ab0 .elementor-icon{display:grid!important;place-items:center;width:64px;height:64px;border-radius:18px!important;background:#e8f6f2!important;border:1px solid #d6eae4!important;color:#167d77!important;padding:16px!important;font-size:28px!important;box-shadow:none!important}
body .elementor-1696 .elementor-element-4cf7ab0 .elementor-icon svg{width:30px;height:30px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
body .elementor-1696 .elementor-element-4cf7ab0 .elementor-icon-box-content{width:100%}
body .elementor-1696 .elementor-element-4cf7ab0 .elementor-icon-box-title,body .elementor-1696 .elementor-element-4cf7ab0 .elementor-icon-box-title a{font-family:"Cairo",sans-serif!important;font-size:24px!important;font-weight:700!important;line-height:1.65!important;color:#142c36!important;text-decoration:none!important;margin:0 0 12px!important}
body .elementor-1696 .elementor-element-4cf7ab0 .elementor-icon-box-description{font:400 16px/1.95 "Cairo",sans-serif!important;color:#60747e!important;margin:0!important;text-align:start!important;max-width:42ch}
body .elementor-1696 .elementor-element-4cf7ab0 .taiff-services-copy{font:400 15px/1.9 "Cairo",sans-serif!important;color:#60747e;margin-top:18px}
body .elementor-1696 .elementor-element-4cf7ab0 .taiff-services-copy ul{padding-inline-start:20px;margin:0!important}
body .elementor-1696 .elementor-element-4cf7ab0 .taiff-services-copy li{margin-bottom:10px}
body .elementor-1696 .elementor-element-4cf7ab0 .elementor-widget-button{display:none!important}
@media(max-width:767px){
body .elementor-1696 .elementor-element-4cf7ab0 > .elementor-container{grid-template-columns:minmax(0,1fr);gap:18px!important;padding:8px 4px 32px}
body .elementor-1696 .elementor-element-4cf7ab0 > .elementor-container > .elementor-column > .elementor-widget-wrap{padding:26px 24px 74px!important}
body .elementor-1696 .elementor-element-4cf7ab0 .elementor-icon-box-title,body .elementor-1696 .elementor-element-4cf7ab0 .elementor-icon-box-title a{font-size:21px!important}
body .elementor-1696 .elementor-element-4cf7ab0 > .elementor-container > .elementor-column::before{top:26px;inset-inline-end:24px}
body .elementor-1696 .elementor-element-4cf7ab0 > .elementor-container > .elementor-column::after{bottom:24px;inset-inline-end:24px}
}
@media(prefers-reduced-motion:reduce){body .elementor-1696 .elementor-element-4cf7ab0 > .elementor-container > .elementor-column{transition:none!important}}

/* Blog cards keep the JetEngine listing and its pagination. */
body.blog .elementor-element-69a7794 .jet-listing-grid__items{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px!important;margin:0!important;max-width:1200px;margin-inline:auto!important}
body.blog .elementor-element-69a7794 .jet-listing-grid__item{width:100%!important;max-width:none!important;min-width:0;padding:0!important;display:flex}
body.blog .elementor-element-69a7794 .elementor-4751{width:100%;height:100%}
body.blog .elementor-4751 .elementor-element-183790c{height:100%;padding:0!important;--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;border:1px solid #e0e9e8;border-radius:22px;background:#fff;box-shadow:0 8px 26px rgba(20,44,54,.05);overflow:hidden;transition:box-shadow .2s,border-color .2s}
body.blog .elementor-4751 .elementor-element-183790c:hover,body.blog .elementor-4751 .elementor-element-183790c:focus-within{border-color:#74c6bd;box-shadow:0 14px 32px rgba(20,80,80,.1)}
body.blog .elementor-4751 .elementor-element-183790c>.e-con-inner{width:100%!important;max-width:none!important;padding:0!important;margin:0!important;gap:0!important;display:flex;flex-direction:column;flex-grow:1}
body.blog .elementor-4751 .elementor-element-6392fef{width:100%;margin:0!important;padding:0!important}
body.blog .elementor-4751 .elementor-element-6392fef a{display:block;aspect-ratio:16/10;overflow:hidden;background:#edf4f3}
body.blog .elementor-4751 .elementor-element-6392fef img{width:100%!important;height:100%!important;object-fit:cover;border-radius:0!important;display:block}
body.blog .elementor-4751 .elementor-element-9b5784a{padding:24px 24px 0!important;margin:0!important}
body.blog .elementor-4751 .elementor-element-9b5784a .elementor-heading-title{font:600 12px/1.8 "Cairo",sans-serif!important;background:#edf7f3;color:#19796f!important;padding:4px 12px;border-radius:30px;display:inline-flex}
body.blog .elementor-4751 .elementor-element-e5f0c75{padding:12px 24px 24px!important;margin:0!important;flex-grow:1;display:flex;flex-direction:column;width:100%}
body.blog .elementor-4751 .elementor-element-e5f0c75>.elementor-widget-container{display:flex;flex-direction:column;flex-grow:1}
body.blog .elementor-4751 .elementor-element-e5f0c75 .elementor-heading-title{font:700 21px/1.65 "Cairo",sans-serif!important;color:#142c36!important;margin:8px 0 12px!important}
body.blog .elementor-4751 .elementor-element-e5f0c75 .elementor-heading-title a{color:inherit;text-decoration:none;font-family:inherit!important}
body.blog .taiff-blog-date{display:block;font:400 12px/1.8 "Cairo",sans-serif;color:#7a8e98}
body.blog .taiff-blog-excerpt{font:400 14px/1.95 "Cairo",sans-serif;color:#617681;margin:0 0 22px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
body.blog .taiff-blog-read{margin-top:auto;padding-top:16px;border-top:1px solid #e8eeed;display:flex;justify-content:space-between;align-items:center;color:#157b72;font:700 14px/1.8 "Cairo",sans-serif;text-decoration:none}
body.blog .taiff-blog-read span:last-child{font-size:22px;font-family:sans-serif}
body.blog .elementor-4751 a:focus-visible{outline:3px solid #0e78bc;outline-offset:3px}
body.blog .elementor-element-a8a4dcd{margin-top:36px}
@media(max-width:1024px){body.blog .elementor-element-69a7794 .jet-listing-grid__items{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px!important}}
@media(max-width:767px){body.blog .elementor-element-69a7794 .jet-listing-grid__items{grid-template-columns:minmax(0,1fr);gap:22px!important}body.blog .elementor-4751 .elementor-element-e5f0c75 .elementor-heading-title{font-size:20px!important}}
@media(prefers-reduced-motion:reduce){body.blog .elementor-4751 .elementor-element-183790c{transition:none}}

/* One stretched article link covers the complete blog card. */
body.blog .elementor-4751 .elementor-element-183790c{position:relative!important;isolation:isolate}
body.blog .elementor-4751 .elementor-element-183790c>.e-con-inner,
body.blog .elementor-4751 .elementor-element-e5f0c75,
body.blog .elementor-4751 .elementor-element-e5f0c75>.elementor-widget-container{position:static!important}
body.blog .taiff-blog-card-link{position:static!important}
body.blog .taiff-blog-card-link::after{content:"";position:absolute;inset:0;z-index:10;border-radius:22px;cursor:pointer}
body.blog .taiff-blog-card-link:focus-visible{outline:none}
body.blog .taiff-blog-card-link:focus-visible::after{outline:3px solid #0e78bc;outline-offset:-3px}
body.blog .taiff-blog-read{display:none!important}
