:root {
  --resa-navy: #001a6e;
  --resa-navy-2: #07184d;
  --resa-lime: #caff70;
  --resa-orange: #e56d2d;
  --resa-ink: #17213d;
  --resa-muted: #65708a;
  --resa-bg: #f7f9fc;
  --resa-pale: #f0f5fa;
  --resa-line: #e1e8f2;
  --resa-white: #fff;
  --resa-shadow: 0 20px 60px rgba(0, 26, 110, .10);
  --resa-radius: 26px;
}

html { scroll-behavior: smooth; }
body { background: var(--resa-bg); color: var(--resa-ink); overflow-x: hidden; }
body, button, input, textarea, select { font-family: vazir, Vazirmatn, Tahoma, sans-serif !important; }
.elementor-location-header { position: relative; z-index: 99; }
.resa-floating-header { width: min(calc(100% - 36px), 1280px) !important; margin: 16px auto 0 !important; border: 1px solid rgba(0,26,110,.06); box-shadow: 0 12px 42px rgba(7,24,77,.09); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }
.resa-floating-header.elementor-sticky--active { margin-top: 10px; }
.resa-floating-header .elementor-nav-menu--main .elementor-item { border-radius: 14px; }
.resa-floating-header .elementor-nav-menu--dropdown { border-radius: 18px; box-shadow: var(--resa-shadow); overflow: hidden; }

.resa-section { position: relative; }
.resa-section > .e-con-inner { width: min(100% - 40px, 1280px) !important; }
.resa-card { transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease; }
.resa-card:hover { transform: translateY(-8px); box-shadow: 0 26px 70px rgba(0,26,110,.14) !important; border-color: rgba(0,26,110,.12) !important; }
.resa-card img { transition: transform .6s cubic-bezier(.2,.7,.2,1); }
.resa-card:hover img { transform: scale(1.045); }
.resa-pill .elementor-button { box-shadow: 0 12px 30px rgba(0,26,110,.15); transition: transform .25s ease, box-shadow .25s ease; }
.resa-pill .elementor-button:hover { transform: translateY(-3px); box-shadow: 0 18px 38px rgba(0,26,110,.22); }
.resa-eyebrow { width: fit-content !important; max-width: 100%; align-self: flex-start; }
.resa-eyebrow.resa-eyebrow-center { align-self: center; }
.resa-eyebrow .elementor-heading-title { white-space: nowrap; }

.resa-hero { isolation: isolate; overflow: hidden; }
.resa-hero:before { content: ''; position: absolute; width: 460px; height: 460px; border-radius: 50%; background: radial-gradient(circle, rgba(202,255,112,.34), rgba(202,255,112,0) 68%); left: -130px; top: -140px; z-index: -1; }
.resa-hero:after { content: ''; position: absolute; width: 420px; height: 420px; border-radius: 50%; background: radial-gradient(circle, rgba(229,109,45,.16), rgba(229,109,45,0) 70%); right: -150px; bottom: -170px; z-index: -1; }
.resa-hero-visual { position: relative; min-height: 530px; isolation: isolate; }
.resa-hero-visual:before { content: ''; position: absolute; inset: 36px 28px 28px; border: 18px solid var(--resa-lime); border-left-color: var(--resa-navy); border-radius: 48% 52% 42% 58% / 60% 42% 58% 40%; transform: rotate(-8deg); z-index: -1; animation: resaOrbit 12s ease-in-out infinite alternate; }
.resa-hero-visual:after { content: ''; position: absolute; width: 76px; height: 76px; background-image: radial-gradient(var(--resa-orange) 2px, transparent 2px); background-size: 13px 13px; left: 0; bottom: 18px; opacity: .65; z-index: -1; }
.resa-hero-photo img { min-height: 480px; object-fit: cover; object-position: center; border-radius: 48% 52% 43% 57% / 58% 40% 60% 42%; box-shadow: 0 28px 70px rgba(0,26,110,.24); }
.resa-float-card { animation: resaFloat 5s ease-in-out infinite; box-shadow: 0 18px 50px rgba(0,26,110,.18) !important; }
.resa-float-card:nth-child(2n) { animation-delay: -2.3s; }

/* About page: conceptual visual, explicitly not a team photograph. */
.page-id-2090 .resa-about-hero-concept img { aspect-ratio: 1 / 1; width: 100%; object-fit: cover; object-position: center; border-radius: 42% 58% 45% 55% / 52% 42% 58% 48%; border: 10px solid rgba(255,255,255,.74); box-shadow: 0 30px 70px rgba(0,26,110,.20); }
.page-id-2090 .resa-about-hero-concept { position: relative; }
.page-id-2090 .resa-about-hero-concept:after { content: 'تصویر مفهومیِ همکاری آنلاین'; position: absolute; left: 12px; bottom: 12px; padding: 8px 12px; border-radius: 999px; background: rgba(0,26,110,.9); color: #fff; font-size: 12px; font-weight: 700; line-height: 1.4; box-shadow: 0 8px 22px rgba(0,26,110,.20); }
@media (max-width: 767px) { .page-id-2090 .resa-about-hero-concept:after { left: 8px; bottom: 8px; font-size: 11px; padding: 7px 10px; } }

.resa-trust-strip { overflow: hidden; }
.resa-trust-strip > .e-con-inner { position: relative; }
.resa-trust-chip { white-space: nowrap; }
.resa-service-card .elementor-widget-image { overflow: hidden; border-radius: 20px; }
.resa-service-card .elementor-widget-image img { aspect-ratio: 16/10; object-fit: cover; }
.resa-project-card .elementor-widget-image { overflow: hidden; border-radius: 22px; }
.resa-project-card .elementor-widget-image img { aspect-ratio: 4/3; object-fit: cover; }
.resa-project-card .elementor-heading-title a, .resa-service-card .elementor-heading-title a { color: inherit; }
.resa-portfolio .elementor-portfolio { gap: 22px; }
.resa-portfolio .elementor-portfolio-item { border-radius: 24px; overflow: hidden; box-shadow: 0 16px 44px rgba(0,26,110,.10); }
.resa-portfolio .elementor-portfolio-item__overlay { opacity: 1; align-items: flex-end; justify-content: flex-start; padding: 24px; background: linear-gradient(180deg, transparent 38%, rgba(7,24,77,.90) 100%); }
.resa-portfolio .elementor-portfolio-item__title { position: absolute !important; right: 22px; left: 22px; bottom: 20px; color: #fff !important; text-align: right; width: auto; z-index: 3; }
.resa-portfolio .elementor-portfolio__filters { justify-content: center; gap: 8px; margin-bottom: 30px; }
.resa-portfolio .elementor-portfolio__filter { background: #fff; border: 1px solid var(--resa-line); border-radius: 999px; padding: 10px 20px; margin: 0 !important; transition: .25s ease; }
.resa-portfolio .elementor-portfolio__filter.elementor-active { background: var(--resa-navy); border-color: var(--resa-navy); color: #fff !important; }

.resa-collage { min-height: 520px; position: relative; }
.resa-collage .elementor-widget-image:nth-child(1) { position: absolute; width: 72%; right: 0; top: 0; }
.resa-collage .elementor-widget-image:nth-child(1) img { min-height: 410px; object-fit: cover; border-radius: 100px 28px 100px 28px; }
.resa-collage .elementor-widget-image:nth-child(2) { position: absolute; width: 48%; left: 0; bottom: 0; z-index: 2; }
.resa-collage .elementor-widget-image:nth-child(2) img { aspect-ratio: 1; object-fit: cover; border: 10px solid var(--resa-bg); border-radius: 28px 80px 28px 80px; box-shadow: var(--resa-shadow); }
.resa-collage:after { content: ''; position: absolute; width: 110px; height: 110px; left: 12%; top: 6%; border-radius: 50%; border: 18px solid var(--resa-lime); opacity: .9; }

.resa-stat { position: relative; overflow: hidden; }
.resa-stat:after { content: ''; position: absolute; width: 90px; height: 90px; border-radius: 50%; background: rgba(202,255,112,.18); left: -24px; bottom: -34px; }
.resa-dark-cta { overflow: hidden; isolation: isolate; }
.resa-dark-cta:before { content: ''; position: absolute; width: 320px; height: 320px; border: 70px solid rgba(202,255,112,.12); border-radius: 50%; right: -120px; top: -170px; z-index: -1; }
.resa-dark-cta:after { content: ''; position: absolute; width: 180px; height: 180px; background-image: radial-gradient(rgba(255,255,255,.22) 2px, transparent 2px); background-size: 14px 14px; left: 3%; bottom: -40px; z-index: -1; }

.resa-tabs .elementor-tab-title { border: 1px solid var(--resa-line) !important; border-radius: 999px !important; margin: 6px; padding: 12px 22px !important; background: #fff; transition: .25s ease; }
.resa-tabs .elementor-tab-title.elementor-active { color: #fff !important; background: var(--resa-navy) !important; border-color: var(--resa-navy) !important; }
.resa-tabs .elementor-tab-content { border: 0 !important; padding: 28px 0 0 !important; }

.resa-principles .elementor-testimonial { background: #fff; border: 1px solid var(--resa-line); border-radius: 26px; padding: 28px; min-height: 260px; box-shadow: 0 16px 45px rgba(0,26,110,.08); }
.resa-principles .elementor-testimonial__text { color: var(--resa-ink); font-size: 17px; line-height: 2; }
.resa-principles .elementor-testimonial__name { color: var(--resa-navy); font-weight: 800; }
.resa-principles .elementor-testimonial__title { color: var(--resa-orange); }
.resa-principles .swiper-pagination-bullet-active { background: var(--resa-navy); }

.resa-posts .elementor-post, .resa-posts .elementor-post__card { border: 1px solid var(--resa-line) !important; border-radius: 24px !important; overflow: hidden; box-shadow: 0 16px 48px rgba(0,26,110,.07) !important; transition: .35s ease; }
.resa-posts .elementor-post:hover, .resa-posts .elementor-post__card:hover { transform: translateY(-6px); box-shadow: var(--resa-shadow) !important; }
.resa-posts .elementor-post__thumbnail img { transition: transform .55s ease; }
.resa-posts .elementor-post:hover .elementor-post__thumbnail img { transform: scale(1.05); }
.resa-posts .elementor-post__title { line-height: 1.75 !important; }

.resa-contact-form .elementor-field { min-height: 52px; border-radius: 14px !important; border: 1px solid var(--resa-line) !important; background: #fff !important; padding: 12px 16px !important; }
.resa-contact-form textarea.elementor-field { min-height: 150px; }
.resa-contact-form .elementor-button { border-radius: 999px !important; min-height: 54px; }
.resa-footer { width: calc(100% - 36px) !important; margin: 40px auto 18px !important; overflow: hidden; position: relative; }
.resa-footer:before { content: ''; position: absolute; width: 280px; height: 280px; border-radius: 50%; border: 65px solid rgba(0,26,110,.055); left: -120px; top: -120px; }
.resa-footer a { transition: color .2s ease, transform .2s ease; }
.resa-footer a:hover { color: var(--resa-orange) !important; }

.resa-reveal { opacity: 0; transform: translateY(26px); transition: opacity .75s ease, transform .75s ease; }
.resa-reveal.resa-in-view { opacity: 1; transform: none; }
.resa-article-content, .resa-article-content .elementor-widget-container { min-width: 0; max-width: 100%; }
.resa-article-content table { display: block; width: 100% !important; max-width: 100%; overflow-x: auto; border-collapse: collapse; }
.resa-article-content th, .resa-article-content td { min-width: 110px; word-break: break-word; }
.resa-article-content a { overflow-wrap: anywhere; word-break: break-word; }
.resa-article-content img, .resa-article-content iframe, .resa-article-content video { max-width: 100%; height: auto; }
@keyframes resaFloat { 0%,100% { transform: translateY(0) rotate(-1deg); } 50% { transform: translateY(-12px) rotate(1deg); } }
@keyframes resaOrbit { from { transform: rotate(-10deg) scale(.98); } to { transform: rotate(5deg) scale(1.03); } }

/* Halochin-faithful v2: home, blog and single post only */
.resa-halo-hero { padding-top: 24px !important; padding-bottom: 22px !important; }
.resa-halo-hero > .e-con-inner { min-height: 555px; justify-content: center; }
.resa-halo-hero .elementor-heading-title { letter-spacing: -.6px; }
.resa-halo-hero .resa-pill .elementor-button { background: #ff5b42; border-color: #ff5b42; box-shadow: 0 14px 32px rgba(255,91,66,.22); }
.resa-halo-hero .resa-pill .elementor-button:hover { background: var(--resa-navy); border-color: var(--resa-navy); }
.resa-halo-hero .resa-hero-visual { min-height: 500px; }
.resa-halo-hero .resa-hero-visual:before { inset: 40px 28px 32px; border-width: 22px; border-color: var(--resa-navy); border-top-color: #ff5b42; border-left-color: #ff5b42; border-radius: 47% 53% 44% 56% / 54% 43% 57% 46%; animation-duration: 15s; }
.resa-halo-hero .resa-hero-photo { margin: 24px 48px 26px; overflow: visible; }
.resa-halo-hero .resa-hero-photo img { width: 440px; height: 440px; min-height: 0; aspect-ratio: 1; object-fit: cover; object-position: 50% 38%; border-radius: 48% 52% 47% 53% / 51% 45% 55% 49%; box-shadow: 0 22px 55px rgba(7,24,77,.18); }
.resa-hero-result-card { left: 0 !important; right: auto !important; bottom: 26px !important; width: 184px !important; border: 1px solid rgba(7,24,77,.07); }
.resa-halo-tools .elementor-icon { filter: grayscale(.1); }
.resa-halo-tools .e-con-inner > .e-con { opacity: .82; transition: opacity .25s ease, transform .25s ease; }
.resa-halo-tools .e-con-inner > .e-con:hover { opacity: 1; transform: translateY(-3px); }

.resa-halo-services .e-con-inner { overflow: visible; }
.resa-halo-service-track { overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: inline mandatory; scrollbar-width: none; padding: 10px 2px 24px; }
.resa-halo-service-track::-webkit-scrollbar { display: none; }
.resa-halo-service-track > .resa-service-card { scroll-snap-align: start; border-radius: 20px; box-shadow: 0 14px 38px rgba(7,24,77,.07) !important; }
.resa-halo-service-track .resa-service-card:nth-child(2) { background: var(--resa-navy); border-color: var(--resa-navy); transform: translateY(-8px); }
.resa-halo-service-track .resa-service-card:nth-child(2) .elementor-heading-title,
.resa-halo-service-track .resa-service-card:nth-child(2) .elementor-widget-text-editor { color: #fff !important; }
.resa-halo-service-track .resa-service-card:nth-child(2) .elementor-button { color: #fff; border-color: rgba(255,255,255,.4); }
.resa-halo-experience .resa-collage .elementor-widget-image:nth-child(1) img { border-radius: 110px 24px 110px 24px; }
.resa-halo-stats .resa-stat { min-height: 170px; justify-content: center; }
.resa-halo-projects .resa-project-card { border-radius: 20px; box-shadow: none !important; }
.resa-halo-testimonials .resa-principles .elementor-testimonial { border-radius: 20px; box-shadow: 0 12px 34px rgba(7,24,77,.07); }

.resa-posts-horizontal .elementor-posts-container { gap: 22px; }
.resa-posts-horizontal .elementor-post { display: grid !important; grid-template-columns: 42% 1fr; align-items: stretch; min-height: 224px; background: #fff; border: 1px solid var(--resa-line); border-radius: 20px !important; overflow: hidden; box-shadow: 0 12px 34px rgba(7,24,77,.06); }
.resa-posts-horizontal .elementor-post__thumbnail__link { grid-row: 1 / span 5; margin: 0 !important; min-height: 100%; }
.resa-posts-horizontal .elementor-post__thumbnail { height: 100% !important; padding: 0 !important; }
.resa-posts-horizontal .elementor-post__thumbnail img { position: static !important; width: 100% !important; height: 100% !important; object-fit: cover; transform: none !important; }
.resa-posts-horizontal .elementor-post__text { padding: 22px 22px 18px; display: flex; flex-direction: column; }
.resa-posts-horizontal .elementor-post__title { font-size: 19px; line-height: 1.7 !important; margin-bottom: 8px; }
.resa-posts-horizontal .elementor-post__excerpt { font-size: 14px; line-height: 1.9; color: var(--resa-muted); }
.resa-posts-horizontal .elementor-post__meta-data { color: #9ba3b7; font-size: 12px; order: -1; margin-bottom: 8px; }
.resa-posts-horizontal .elementor-post__read-more { color: #ff5b42 !important; font-size: 13px; font-weight: 800; margin-top: auto; }

.resa-blog-hero { overflow: hidden; }
.resa-single-hero:before { content:''; position:absolute; width:340px; height:340px; border:72px solid rgba(255,91,66,.07); border-radius:50%; right:-150px; top:-190px; }
.resa-single-hero:after { content:''; position:absolute; width:110px; height:110px; background-image:radial-gradient(rgba(0,26,110,.20) 2px,transparent 2px); background-size:14px 14px; left:5%; bottom:-10px; }
.resa-blog-mosaic .e-con-inner { min-height: 430px; }
.resa-blog-category-panel { border: 1px solid rgba(7,24,77,.06); }
.resa-blog-category-panel .elementor-heading-title { white-space: nowrap; }
.resa-blog-topic-list .elementor-icon-list-item { transition: transform .2s ease; }
.resa-blog-topic-list .elementor-icon-list-item:hover { transform: translateX(-4px); }
.resa-blog-feature-grid { min-height: 430px; }
.resa-blog-feature-card { position: relative; isolation: isolate; min-height: 205px; transition: transform .3s ease, box-shadow .3s ease; box-shadow: inset 0 -130px 110px -55px rgba(2,12,44,.96); }
.resa-blog-feature-card:after { content:''; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,rgba(0,10,42,.02) 30%,rgba(0,10,42,.84) 100%); }
.resa-blog-feature-card:hover { transform: translateY(-4px); box-shadow: inset 0 -130px 110px -55px rgba(2,12,44,.96),0 18px 34px rgba(7,24,77,.14); }
.resa-blog-feature-card .elementor-widget-text-editor,.resa-blog-feature-card .elementor-widget-heading { position:relative; z-index:1; }
.resa-blog-feature-card .elementor-widget-text-editor p { margin:0; opacity:.88; }
.resa-blog-feature-card .elementor-heading-title { font-size:18px !important; line-height:1.7 !important; }
.resa-blog-feature-card .elementor-heading-title a { color:#fff; }
.resa-feature-tall { height:100%; min-height:430px; }
.resa-blog-list .elementor-pagination { margin-top: 34px; }

.resa-single-breadcrumb-wrap .e-con-inner { background:#fff; border:1px solid var(--resa-line); border-radius:16px; padding:14px 20px; }
.resa-single-breadcrumb-wrap p { margin:0; color:var(--resa-muted); font-size:13px; }
.resa-single-breadcrumb-wrap a { color:var(--resa-navy); }
.resa-single-breadcrumb { display:flex; gap:4px; align-items:center; }
.resa-single-breadcrumb > .elementor-widget-text-editor { width:auto; flex:0 0 auto; }
.resa-single-breadcrumb > .resa-breadcrumb-current { width:auto; min-width:0; flex:1 1 260px; }
.resa-breadcrumb-current .elementor-heading-title { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.resa-single-body .resa-dynamic-image img { width:100%; max-height:520px; object-fit:cover; border-radius:24px; }
.resa-single-body .resa-dynamic-image { margin-bottom:2px; }
.resa-single-meta-row { padding-bottom:16px; border-bottom:1px solid var(--resa-line); }
.resa-single-top-share .elementor-share-btn { font-size:14px; }
.resa-article-shell { box-shadow: 0 16px 45px rgba(7,24,77,.07) !important; }
.resa-article-content { font-size:17px; line-height:2.15; }
.resa-article-content .elementor-widget-image:first-child { display:none; }
.resa-article-content h2 { color:var(--resa-navy); font-size:28px; line-height:1.65; margin:40px 0 16px; }
.resa-article-content h3 { color:var(--resa-navy); font-size:22px; line-height:1.7; margin:30px 0 12px; }
.resa-article-content blockquote { margin:30px 0; padding:22px 24px; background:#fff2ec; border-right:4px solid #ff5b42; border-radius:16px 4px 4px 16px; }
.resa-article-content ul,.resa-article-content ol { padding-right:22px; }
.resa-sticky-sidebar { position:sticky; top:115px; }
.resa-single-toc .elementor-toc__header { display:none; }
.resa-single-toc .elementor-toc__body { padding:0; }
.resa-single-toc .elementor-toc__list-item-text-wrapper { line-height:1.8; }
.resa-single-aside .resa-eyebrow { background:rgba(255,255,255,.12) !important; }
.resa-aside-posts .elementor-post { padding:12px 0; border-bottom:1px solid var(--resa-line); }
.resa-aside-posts .elementor-post:last-child { border-bottom:0; }
.resa-aside-posts .elementor-post__title { font-size:15px; line-height:1.75; }
.resa-post-nav { padding:22px 4px; border-top:1px solid var(--resa-line); border-bottom:1px solid var(--resa-line); }
.resa-related-posts .elementor-post { background:#fff; border:1px solid var(--resa-line); border-radius:20px; overflow:hidden; }
.resa-related-posts .elementor-post__text { padding:20px; }

/* Single post v2 — measured from the supplied Halochin reference, branded for Resaagar */
.resa-ref-breadcrumb > .e-con-inner,
.resa-ref-single-body > .e-con-inner,
.resa-ref-social-banner > .e-con-inner,
.resa-ref-comments-wrap > .e-con-inner { width:min(calc(100% - 40px),1300px) !important; max-width:1300px !important; }
.resa-ref-breadcrumb > .e-con-inner { min-height:51px; padding:0 24px !important; border:1px solid #e1e1e1; border-radius:15px; background:#fff; }
.resa-ref-single-grid { align-items:flex-start !important; }
.resa-ref-article-card { border-radius:10px !important; box-shadow:none !important; }
.resa-ref-article-card .resa-dynamic-image { margin:0 0 8px; }
.resa-ref-article-card .resa-dynamic-image img { width:100%; max-height:none; aspect-ratio:2.25/1; object-fit:cover; object-position:center; border-radius:10px; }
.resa-ref-article-card > .elementor-widget-heading { margin:8px 0 6px; }
.resa-ref-article-card > .elementor-widget-heading .elementor-heading-title { color:#1a3760; font-size:36px !important; font-weight:900 !important; line-height:1.55 !important; letter-spacing:-.6px; }
.resa-ref-meta-row { min-height:28px; justify-content:space-between !important; margin:0 !important; padding:0 !important; border:0 !important; }
.resa-ref-post-info { width:auto !important; }
.resa-ref-post-info .elementor-icon-list-items { gap:12px; }
.resa-ref-share { width:auto !important; }
.resa-ref-share .elementor-share-btn { background:transparent !important; color:#8d8d8d !important; font-size:14px; }
.resa-ref-share .elementor-share-btn:hover { color:#ff5b42 !important; }
.resa-ref-divider { margin:0 !important; }
.resa-ref-divider .elementor-divider { padding-block:4px !important; }
.resa-ref-post-content { color:#5f6879 !important; font-size:17px !important; font-weight:400; line-height:2.08 !important; text-align:justify; }
.resa-ref-post-content p { margin:0 0 18px; }
.resa-ref-post-content h2 { color:#1a3760; font-size:26px !important; font-weight:900; line-height:1.75 !important; margin:40px 0 16px !important; }
.resa-ref-post-content h3 { color:#1a3760; font-size:21px !important; font-weight:800; line-height:1.8 !important; margin:30px 0 12px !important; }
.resa-ref-post-content blockquote { margin:22px 0; padding:18px 20px; background:#fff3ee; border-right:3px solid #ff5b42; border-radius:8px; }
.resa-ref-post-content table { font-size:14px; border-color:#e7e7e7; }
.resa-ref-sidebar { gap:20px !important; }
.resa-ref-toc-card { min-height:279px; justify-content:flex-start; }
.resa-ref-toc-card > .elementor-widget-heading { margin-bottom:2px; }
.resa-ref-toc-card .elementor-heading-title { color:#1a3760 !important; font-size:15px !important; font-weight:700 !important; }
.resa-ref-toc-card .elementor-toc__list-wrapper { margin:0; }
.resa-ref-toc-card .elementor-toc__list-item { margin-bottom:7px; }
.resa-ref-toc-card .elementor-toc__list-item-text-wrapper { color:#71798a; font-size:14px; line-height:1.75; }
.resa-ref-toc-card .elementor-item-active { color:#ff5b42 !important; }
.resa-ref-service-slider { border-radius:15px; box-shadow:0 0 10px 4px rgba(0,0,0,.07); overflow:hidden; background:#fff; }
.resa-ref-service-slider .swiper-slide { background:#fff !important; border-radius:15px; overflow:hidden; }
.resa-ref-service-slider .swiper-slide-bg { background-size:100% 48% !important; background-position:top center !important; background-repeat:no-repeat !important; }
.resa-ref-service-slider .swiper-slide-inner { align-items:flex-end !important; padding:170px 20px 18px !important; background:linear-gradient(to bottom,transparent 43%,#fff 49%,#fff 100%); }
.resa-ref-service-slider .swiper-slide-contents { width:100%; max-width:100%; text-align:right; }
.resa-ref-service-slider .elementor-slide-heading { color:#1a3760 !important; font-family:var(--resa-font); font-size:19px !important; line-height:1.55; margin:0 0 8px !important; }
.resa-ref-service-slider .elementor-slide-description { color:#7a7a7a !important; font-family:var(--resa-font); font-size:13px !important; line-height:1.8; margin:0 0 8px !important; }
.resa-ref-service-slider .elementor-slide-button { color:#ff5b42 !important; border:0 !important; padding:0 !important; font-family:var(--resa-font); font-size:13px !important; font-weight:700; }
.resa-ref-service-slider .swiper-pagination-bullet { width:7px; height:7px; background:#d9d9d9; opacity:1; }
.resa-ref-service-slider .swiper-pagination-bullet-active { background:#ff5b42; }
.resa-ref-social-banner { width:min(calc(100% - 40px),1300px) !important; margin:0 auto 0 !important; border-radius:14px; overflow:hidden; background:#001a6e !important; }
.resa-ref-social-banner > .e-con-inner { width:100% !important; }
.resa-ref-social-banner .elementor-icon { color:#fff; }
.resa-ref-comments-wrap { padding-top:64px !important; }
.resa-ref-comments { border-radius:10px !important; }
.resa-ref-comments #reply-title { color:#1a3760; font-size:19px; }
.resa-ref-comments textarea,.resa-ref-comments input[type=text],.resa-ref-comments input[type=email],.resa-ref-comments input[type=url] { width:100%; background:#fafafa; border:1px solid transparent; border-radius:8px; padding:12px 14px; }
.resa-ref-comments textarea:focus,.resa-ref-comments input:focus { border-color:#001a6e; outline:0; }
.resa-ref-comments input[type=submit] { background:#001a6e; color:#fff; border:0; border-radius:8px; padding:12px 22px; font-family:var(--resa-font); }

@media (max-width: 1024px) {
  .resa-floating-header { width: calc(100% - 28px) !important; margin: 10px auto 0 !important; }
  .resa-hero-visual { min-height: 430px; }
  .resa-hero-photo img { min-height: 395px; }
  .resa-collage { min-height: 440px; }
  .resa-ref-post-content { font-size:16px !important; }
  .resa-ref-article-card > .elementor-widget-heading .elementor-heading-title { font-size:30px !important; }
}

@media (max-width: 767px) {
  .resa-section > .e-con-inner { width: min(100% - 28px, 1280px) !important; }
  .resa-floating-header { border-radius: 18px !important; }
  .resa-hero { text-align: center; }
  .resa-hero-visual { min-height: 350px; margin-top: 16px; }
  .resa-hero-visual:before { inset: 24px 16px 20px; border-width: 12px; }
  .resa-hero-photo img { min-height: 330px; }
  .resa-blog-mosaic .e-con-inner,.resa-blog-feature-grid { min-height:0; }
  .resa-blog-category-panel .elementor-heading-title { white-space:normal; }
  .resa-feature-tall { min-height:260px; }
  .resa-blog-feature-card { min-height:240px; }
  .resa-single-breadcrumb-wrap { padding:12px 0 !important; min-height:0 !important; }
  .resa-single-breadcrumb-wrap > .e-con-inner { min-height:0 !important; padding:11px 14px !important; }
  .resa-single-breadcrumb { flex-direction:row !important; flex-wrap:wrap !important; min-height:0 !important; }
  .resa-single-breadcrumb > .elementor-widget-text-editor,
  .resa-single-breadcrumb > .resa-breadcrumb-current { width:auto !important; flex:0 1 auto !important; }
  .resa-breadcrumb-current .elementor-heading-title { max-width:230px; }
  .resa-hero-visual:after { width: 54px; height: 54px; background-size: 10px 10px; }
  .resa-collage { min-height: 380px; }
  .resa-collage .elementor-widget-image:nth-child(1) img { min-height: 310px; }
  .resa-tabs .elementor-tab-title { display: block; text-align: center; }
  .resa-footer { width: calc(100% - 20px) !important; margin: 24px auto 10px !important; }
  .resa-halo-hero > .e-con-inner { min-height: 0; }
  .resa-halo-hero .resa-hero-visual { min-height: 390px; }
  .resa-halo-hero .resa-hero-photo { margin: 42px 24px 30px; }
  .resa-halo-hero .resa-hero-photo img { width:100%; height:auto; aspect-ratio:1; }
  .resa-hero-result-card { width:158px !important; bottom:6px !important; }
  .resa-halo-service-track { margin-left:-14px; margin-right:-14px; padding-left:14px; padding-right:14px; }
  .resa-halo-service-track > .resa-service-card { width:82% !important; }
  .resa-posts-horizontal .elementor-post { grid-template-columns: 38% 1fr; min-height: 190px; }
  .resa-posts-horizontal .elementor-post__text { padding:16px 14px; }
  .resa-posts-horizontal .elementor-post__title { font-size:16px; }
  .resa-posts-horizontal .elementor-post__excerpt { display:none; }
  .resa-topic-card { width:100% !important; }
  .resa-sticky-sidebar { position:static; }
  .resa-article-content { font-size:16px; line-height:2.05; }
  .resa-article-content h2 { font-size:23px; }
  .resa-ref-breadcrumb > .e-con-inner,.resa-ref-single-body > .e-con-inner,.resa-ref-comments-wrap > .e-con-inner { width:calc(100% - 28px) !important; }
  .resa-ref-single-grid { gap:16px !important; }
  .resa-ref-article-card { order:1; padding:13px !important; }
  .resa-ref-sidebar { order:2; width:100% !important; }
  .resa-ref-article-card .resa-dynamic-image img { aspect-ratio:2.08/1; }
  .resa-ref-article-card > .elementor-widget-heading .elementor-heading-title { font-size:26px !important; }
  .resa-ref-meta-row { flex-direction:row !important; flex-wrap:wrap !important; }
  .resa-ref-post-content { font-size:16px !important; line-height:2.05 !important; text-align:right; }
  .resa-ref-post-content h2 { font-size:22px !important; margin-top:34px!important; }
  .resa-ref-post-content h3 { font-size:19px!important; }
  .resa-ref-toc-card { min-height:0; }
  .resa-ref-social-banner { width:calc(100% - 28px) !important; }
  .resa-ref-social-banner .e-con-inner { width:100% !important; }
  .resa-ref-social-banner .e-con-inner > .e-con { align-items:center !important; }
  .resa-ref-comments-wrap { padding-top:38px !important; }
  .resa-ref-comments { padding:18px 14px !important; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *:before, *:after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .resa-reveal { opacity: 1; transform: none; }
}

/* Resaagar content system v2.1 — shared, no page-level HTML style widgets */
.rc-blog { --rc-navy:#001a6e; --rc-blue:#075fe8; --rc-lime:#dff36d; --rc-ink:#122654; --rc-muted:#64748b; direction:rtl; color:var(--rc-ink); overflow:hidden; }
.rc-blog * { box-sizing:border-box; }
.rc-hero { padding:76px max(22px,calc((100vw - 1220px)/2)) 58px; background:radial-gradient(circle at 12% 8%,rgba(223,243,109,.42),transparent 26%),linear-gradient(155deg,#f9fcff,#edf5fb); }
.rc-kicker .elementor-heading-title { display:inline-flex; background:var(--rc-lime); padding:8px 16px; border-radius:999px; color:var(--rc-navy); font-size:14px; font-weight:900; }
.rc-title .elementor-heading-title { max-width:850px; font-size:48px; line-height:1.4; color:var(--rc-navy); font-weight:900; letter-spacing:-1.5px; }
.rc-lead { max-width:760px; color:var(--rc-muted); font-size:17px; line-height:2; }
.rc-search { max-width:620px; margin-top:20px; }
.rc-search .elementor-search-form__container { border:1px solid #cddbed!important; background:#fff; border-radius:15px!important; overflow:hidden; box-shadow:0 12px 35px rgba(0,26,110,.08); }
.rc-search input { min-height:58px; padding:0 20px!important; }
.rc-cats { padding:24px max(22px,calc((100vw - 1220px)/2)); background:#fff; border-bottom:1px solid #e3ebf4; }
.resa-dynamic-categories { display:flex; gap:10px; flex-wrap:wrap; }
.resa-dynamic-categories a { display:inline-flex; align-items:center; gap:10px; padding:10px 14px; border-radius:12px; background:#f0f5fb; color:var(--rc-navy); text-decoration:none; font-weight:800; }
.resa-dynamic-categories a:hover,.resa-dynamic-categories .is-all { background:var(--rc-navy); color:#fff; }
.resa-dynamic-categories small { display:inline-grid; place-items:center; min-width:22px; height:22px; border-radius:8px; background:rgba(255,255,255,.72); color:var(--rc-blue); }
.rc-section { padding:78px max(22px,calc((100vw - 1220px)/2)); background:#fff; }
.rc-soft { background:#f4f8fc; }
.rc-center { text-align:center; align-items:center; }
.rc-section-title .elementor-heading-title { font-size:34px; color:var(--rc-navy); font-weight:900; }
.rc-featured.elementor-widget-posts .elementor-posts-container,.rc-posts.elementor-widget-posts .elementor-posts-container,.rc-popular.elementor-widget-posts .elementor-posts-container { display:grid!important; gap:24px!important; }
.rc-featured.elementor-widget-posts .elementor-posts-container,.rc-popular.elementor-widget-posts .elementor-posts-container { grid-template-columns:repeat(3,1fr)!important; }
.rc-posts.elementor-widget-posts .elementor-posts-container { grid-template-columns:repeat(2,1fr)!important; }
.rc-featured .elementor-post,.rc-posts .elementor-post,.rc-popular .elementor-post { background:#fff; border:1px solid #dce7f3; border-radius:23px!important; overflow:hidden; box-shadow:0 14px 38px rgba(0,26,110,.07); transition:.3s; }
.rc-featured .elementor-post:hover,.rc-posts .elementor-post:hover,.rc-popular .elementor-post:hover { transform:translateY(-6px); box-shadow:0 22px 50px rgba(0,26,110,.12); }
.rc-featured .elementor-post__thumbnail,.rc-posts .elementor-post__thumbnail,.rc-popular .elementor-post__thumbnail { padding-bottom:56%!important; }
.rc-featured .elementor-post__text,.rc-posts .elementor-post__text,.rc-popular .elementor-post__text { padding:22px!important; }
.rc-featured .elementor-post__title,.rc-posts .elementor-post__title,.rc-popular .elementor-post__title { font-size:20px!important; line-height:1.75!important; }
.rc-featured .elementor-post__title a,.rc-posts .elementor-post__title a,.rc-popular .elementor-post__title a { color:var(--rc-navy); }
.rc-featured .elementor-post__excerpt,.rc-posts .elementor-post__excerpt,.rc-popular .elementor-post__excerpt { color:var(--rc-muted); line-height:1.9; }
.rc-featured .elementor-post__read-more,.rc-posts .elementor-post__read-more,.rc-popular .elementor-post__read-more { color:var(--rc-blue); font-weight:900; }
.rc-topics { display:grid!important; grid-template-columns:repeat(4,1fr)!important; gap:18px; margin-top:30px; }
.rc-topic { position:relative; background:#fff; border:1px solid #dce7f3; border-radius:20px; padding:23px; text-align:right; transition:.25s ease; }
.rc-topic:hover { transform:translateY(-4px); border-color:#b9cce4; box-shadow:0 16px 36px rgba(0,26,110,.08); }
.rc-topic .elementor-heading-title { font-size:19px; color:var(--rc-navy); }
.rc-topic .elementor-heading-title a { color:inherit; }
.rc-topic .elementor-widget-text-editor { font-size:14px; line-height:1.9; color:var(--rc-muted); }
.rc-cta { width:auto!important; margin:0 max(22px,calc((100vw - 1220px)/2)) 75px; padding:44px; border-radius:28px; background:linear-gradient(135deg,var(--rc-navy),#075fe8); display:flex!important; flex-direction:row!important; align-items:center!important; justify-content:space-between!important; gap:22px; }
.rc-cta .elementor-heading-title,.rc-cta .elementor-widget-text-editor { color:#fff; }
.rc-cta .elementor-button { background:var(--rc-lime); color:var(--rc-navy); padding:14px 24px; border-radius:12px; font-weight:900; }
.elementor-pagination { margin-top:35px; }
.elementor-pagination .page-numbers { display:inline-grid; place-items:center; min-width:40px; height:40px; border-radius:10px; background:#eef4fb; color:var(--rc-navy); margin:3px; }
.elementor-pagination .current { background:var(--rc-navy); color:#fff; }

.resa-reading-progress { position:fixed; inset:0 0 auto; z-index:99999; height:4px; pointer-events:none; background:rgba(0,26,110,.08); }
.resa-reading-progress span { display:block; width:0; height:100%; background:linear-gradient(90deg,#ff5b42,#075fe8); transition:width .08s linear; }
.resa-reading-time,.resa-updated-date { display:inline-flex; align-items:center; color:#7f8799; font-size:12px; white-space:nowrap; }
.resa-author-box { display:grid; grid-template-columns:88px 1fr; gap:18px; align-items:center; margin:34px 0 12px; padding:22px; border:1px solid var(--resa-line); border-radius:18px; background:#f7faff; }
.resa-author-avatar { width:88px; height:88px; border-radius:24px; object-fit:cover; }
.resa-author-label { color:var(--resa-orange); font-size:12px; font-weight:800; }
.resa-author-box h3 { margin:4px 0 5px!important; color:var(--resa-navy)!important; font-size:18px!important; }
.resa-author-box p { margin:0!important; color:var(--resa-muted); font-size:14px; line-height:1.9; }
.resa-content-cta { margin-top:36px; padding:30px!important; border-radius:22px!important; background:linear-gradient(135deg,#001a6e,#075fe8); }
.resa-content-cta .elementor-heading-title,.resa-content-cta .elementor-widget-text-editor { color:#fff!important; }
.resa-content-cta .elementor-button { border-radius:999px; background:#dff36d; color:#001a6e; font-weight:900; }
.resa-post-nav { margin-top:28px; }
.resa-404-hero { min-height:620px; display:flex; justify-content:center; }
.resa-404-code .elementor-heading-title { font-size:clamp(92px,18vw,220px); line-height:.82; font-weight:900; letter-spacing:-10px; color:rgba(0,26,110,.09); }
.resa-404-actions { display:flex!important; flex-direction:row!important; gap:12px; margin-top:18px; }
.resa-404-actions .elementor-button { border-radius:999px; font-weight:900; }
.resa-404-actions > :first-child .elementor-button { background:#001a6e; color:#fff; }
.resa-404-actions > :last-child .elementor-button { background:#fff; color:#001a6e; border:1px solid #dce7f3; }

@media(max-width:900px){
  .rc-featured.elementor-widget-posts .elementor-posts-container,.rc-popular.elementor-widget-posts .elementor-posts-container { grid-template-columns:1fr 1fr!important; }
  .rc-posts.elementor-widget-posts .elementor-posts-container { grid-template-columns:1fr!important; }
  .rc-topics { grid-template-columns:1fr 1fr!important; }
  .rc-hero,.rc-section,.rc-cats { padding-right:24px; padding-left:24px; }
  .rc-cta { margin-right:24px; margin-left:24px; }
}
@media(max-width:600px){
  .rc-title .elementor-heading-title { font-size:34px; }
  .rc-featured.elementor-widget-posts .elementor-posts-container,.rc-popular.elementor-widget-posts .elementor-posts-container,.rc-topics { grid-template-columns:1fr!important; }
  .rc-hero { padding-top:52px; }
  .rc-cta { margin-right:16px; margin-left:16px; padding:30px 22px; flex-direction:column!important; text-align:center; }
  .resa-author-box { grid-template-columns:60px 1fr; padding:18px; }
  .resa-author-avatar { width:60px; height:60px; border-radius:18px; }
  .resa-404-hero { min-height:560px; text-align:center; }
  .resa-404-actions { flex-direction:column!important; }
}

/* Services hub v3 — native Elementor structure */
.rs3-services-page { --rs3-navy:#001a6e; --rs3-deep:#081743; --rs3-blue:#075fe8; --rs3-lime:#dff36d; --rs3-coral:#ff5b42; --rs3-ink:#122654; --rs3-muted:#64748b; --rs3-bg:#f4f8fc; --rs3-line:#dce7f3; direction:rtl; color:var(--rs3-ink); overflow:hidden; }
.rs3-services-page * { box-sizing:border-box; }
.rs3-section { width:100%; padding:92px 0; }
.rs3-shell { width:min(calc(100% - 44px),1220px)!important; margin-inline:auto!important; }
.rs3-kicker { width:max-content!important; max-width:100%; }
.rs3-kicker .elementor-heading-title { display:inline-flex; align-items:center; padding:8px 15px; border-radius:999px; background:var(--rs3-lime); color:var(--rs3-navy); font-size:13px; font-weight:900; line-height:1.5; }
.rs3-display .elementor-heading-title { max-width:720px; color:var(--rs3-navy); font-size:clamp(40px,5vw,68px); font-weight:950; line-height:1.28; letter-spacing:-2px; }
.rs3-lead,.rs3-section-copy { color:var(--rs3-muted); font-size:17px; line-height:2; }
.rs3-lead p,.rs3-section-copy p { margin:0; }
.rs3-actions { display:flex!important; flex-direction:row!important; flex-wrap:wrap!important; gap:12px; }
.rs3-btn { width:auto!important; }
.rs3-btn .elementor-button { min-height:51px; padding:14px 24px; border-radius:14px; font-weight:900; }
.rs3-btn-primary .elementor-button { background:var(--rs3-navy); color:#fff; box-shadow:0 15px 32px rgba(0,26,110,.18); }
.rs3-btn-secondary .elementor-button { background:#fff; color:var(--rs3-navy); border:1px solid var(--rs3-line); }
.rs3-btn-lime .elementor-button { background:var(--rs3-lime); color:var(--rs3-navy); }
.rs3-btn-ghost .elementor-button { background:rgba(255,255,255,.08); color:#fff; border:1px solid rgba(255,255,255,.28); }
.rs3-text-link { width:auto!important; margin-top:auto; }
.rs3-text-link .elementor-button { padding:4px 0; background:transparent!important; border:0!important; border-radius:0!important; color:var(--rs3-blue); font-size:14px; font-weight:900; text-decoration:none!important; box-shadow:none!important; }
.rs3-text-link .elementor-button:hover { color:var(--rs3-coral); }

.rs3-hero { min-height:760px; display:flex; align-items:center; padding-top:78px; background:radial-gradient(circle at 8% 4%,rgba(223,243,109,.52),transparent 25%),radial-gradient(circle at 90% 88%,rgba(255,91,66,.13),transparent 27%),linear-gradient(150deg,#fbfdff 0%,#edf5fb 100%); }
.rs3-hero-grid { display:grid!important; grid-template-columns:1.08fr .92fr; align-items:center; gap:70px; }
.rs3-hero-copy { gap:22px!important; }
.rs3-hero-board { position:relative; min-height:555px; padding:46px; border-radius:42px; background:linear-gradient(150deg,var(--rs3-navy),var(--rs3-deep)); box-shadow:0 34px 85px rgba(0,26,110,.22); overflow:hidden; justify-content:flex-end; isolation:isolate; }
.rs3-hero-board:before { content:''; position:absolute; width:310px; height:310px; border:70px solid rgba(223,243,109,.13); border-radius:50%; inset:-130px -120px auto auto; z-index:-1; }
.rs3-hero-board:after { content:''; position:absolute; width:210px; height:210px; border-radius:50%; background:var(--rs3-coral); filter:blur(90px); opacity:.18; inset:auto auto -90px -70px; z-index:-1; }
.rs3-brand-logo { position:absolute!important; width:238px!important; left:34px; top:34px; padding:24px; border-radius:34px; background:var(--rs3-lime); transform:rotate(-5deg); box-shadow:0 22px 50px rgba(0,0,0,.18); }
.rs3-brand-logo img { width:100%; height:auto; display:block; }
.rs3-board-copy { max-width:380px; gap:12px!important; }
.rs3-board-copy .elementor-heading-title { color:#fff; font-size:32px; font-weight:950; line-height:1.45; }
.rs3-board-copy .elementor-widget-text-editor { color:rgba(255,255,255,.74); font-size:15px; line-height:2; }
.rs3-mini-grid { display:grid!important; grid-template-columns:1fr 1fr; gap:12px; margin-top:14px; }
.rs3-mini-card { padding:16px; border-radius:18px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.1); }
.rs3-mini-card p { margin:0; display:flex; flex-direction:column; gap:4px; }
.rs3-mini-card strong { color:var(--rs3-lime); font-size:26px; }
.rs3-mini-card span { color:rgba(255,255,255,.72); font-size:12px; }
.rs3-hero-proof p { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin:0; color:var(--rs3-navy); font-size:13px; }
.rs3-hero-proof span { width:5px; height:5px; border-radius:50%; background:var(--rs3-coral); }

.rs3-diagnostic { padding-block:64px; background:#fff; border-block:1px solid var(--rs3-line); }
.rs3-section-head { gap:12px!important; margin-bottom:38px; }
.rs3-section-title .elementor-heading-title { max-width:820px; color:var(--rs3-navy); font-size:clamp(30px,3.6vw,46px); font-weight:950; line-height:1.4; letter-spacing:-.8px; }
.rs3-goal-grid { display:grid!important; grid-template-columns:repeat(3,1fr); gap:18px; }
.rs3-goal-card { min-height:250px; padding:28px; border:1px solid var(--rs3-line); border-radius:24px; background:#fff; gap:12px!important; transition:.3s ease; }
.rs3-goal-card:hover { transform:translateY(-6px); box-shadow:0 22px 50px rgba(0,26,110,.10); }
.rs3-goal-card > .elementor-widget-heading:first-child .elementor-heading-title { color:var(--rs3-coral); font-size:12px; font-weight:900; }
.rs3-goal-card h3 { color:var(--rs3-navy); font-size:21px; line-height:1.65; }
.rs3-goal-card .elementor-widget-text-editor { color:var(--rs3-muted); font-size:14px; line-height:1.9; }
.rs3-goal-featured { background:var(--rs3-navy); border-color:var(--rs3-navy); transform:translateY(-10px); }
.rs3-goal-featured h3,.rs3-goal-featured .elementor-widget-text-editor { color:#fff!important; }
.rs3-goal-featured .elementor-widget-text-editor { opacity:.74; }
.rs3-goal-featured .rs3-text-link .elementor-button { color:var(--rs3-lime); }

.rs3-services { background:var(--rs3-bg); }
.rs3-head-split { display:grid!important; grid-template-columns:1.35fr .65fr; align-items:end; gap:48px!important; }
.rs3-services-grid { display:grid!important; grid-template-columns:repeat(6,1fr); gap:20px; }
.rs3-service-card { grid-column:span 2; min-height:330px; padding:30px; border:1px solid var(--rs3-line); border-radius:28px; background:#fff; gap:14px!important; }
.rs3-service-card:nth-child(4),.rs3-service-card:nth-child(5) { grid-column:span 3; }
.rs3-service-card:nth-child(2) { background:linear-gradient(150deg,var(--rs3-navy),var(--rs3-blue)); border-color:transparent; }
.rs3-service-card:nth-child(2) .elementor-heading-title,.rs3-service-card:nth-child(2) .elementor-widget-text-editor { color:#fff!important; }
.rs3-service-card:nth-child(2) .rs3-service-number .elementor-heading-title { color:var(--rs3-lime)!important; }
.rs3-service-card:nth-child(2) .rs3-text-link .elementor-button { color:var(--rs3-lime); }
.rs3-service-card:nth-child(2) .elementor-icon { color:var(--rs3-lime); }
.rs3-card-head { display:flex!important; flex-direction:row!important; justify-content:space-between!important; align-items:center!important; }
.rs3-service-icon { width:auto!important; }
.rs3-service-icon .elementor-icon { display:grid; place-items:center; width:52px; height:52px; border-radius:17px; color:var(--rs3-navy); background:var(--rs3-lime); font-size:22px; }
.rs3-service-number { width:auto!important; }
.rs3-service-number .elementor-heading-title { color:#b0bfd2; font-size:24px; font-weight:950; }
.rs3-card-title .elementor-heading-title { color:var(--rs3-navy); font-size:23px; font-weight:950; }
.rs3-card-copy { color:var(--rs3-muted); font-size:14px; line-height:2; }

.rs3-details { background:#fff; }
.rs3-details-grid { display:grid!important; grid-template-columns:.72fr 1.28fr; align-items:start; gap:70px; }
.rs3-details-copy { position:sticky; top:120px; gap:16px!important; }
.rs3-hidden-anchors { position:absolute; width:1px!important; height:1px!important; overflow:hidden; opacity:0; pointer-events:none; }
.rs3-service-tabs .elementor-tabs-wrapper { display:flex; gap:8px; flex-wrap:wrap; }
.rs3-service-tabs .elementor-tab-title { border:1px solid var(--rs3-line)!important; border-radius:12px!important; padding:12px 16px!important; background:var(--rs3-bg); color:var(--rs3-navy)!important; font-weight:900!important; }
.rs3-service-tabs .elementor-tab-title.elementor-active { background:var(--rs3-navy); border-color:var(--rs3-navy)!important; color:#fff!important; }
.rs3-service-tabs .elementor-tab-content { margin-top:18px; padding:32px!important; border:1px solid var(--rs3-line)!important; border-radius:24px; background:var(--rs3-bg); color:var(--rs3-muted); font-size:15px; line-height:2; }
.rs3-service-tabs h3 { margin:0 0 12px; color:var(--rs3-navy); font-size:25px; }
.rs3-service-tabs ul { margin:16px 0; padding-right:22px; }
.rs3-service-tabs a { color:var(--rs3-blue); font-weight:900; }

.rs3-process { background:var(--rs3-navy); color:#fff; }
.rs3-process .rs3-section-title .elementor-heading-title,.rs3-process .rs3-section-copy { color:#fff; }
.rs3-process .rs3-section-copy { opacity:.72; }
.rs3-center { align-items:center!important; text-align:center; }
.rs3-center .rs3-kicker,.rs3-center .rs3-section-copy { align-self:center; }
.rs3-process-grid { display:grid!important; grid-template-columns:repeat(5,1fr); gap:12px; position:relative; }
.rs3-step { min-height:220px; padding:24px; border:1px solid rgba(255,255,255,.13); border-radius:22px; background:rgba(255,255,255,.06); gap:12px!important; }
.rs3-step > .elementor-widget-heading:first-child .elementor-heading-title { color:var(--rs3-lime); font-size:28px; font-weight:950; }
.rs3-step h3 { color:#fff; font-size:19px; }
.rs3-step .elementor-widget-text-editor { color:rgba(255,255,255,.67); font-size:13px; line-height:1.9; }

.rs3-why { background:var(--rs3-deep); padding-block:0; }
.rs3-why-grid { display:grid!important; grid-template-columns:.82fr 1.18fr; align-items:stretch; }
.rs3-why-brand { min-height:620px; padding:54px; justify-content:flex-end; gap:14px!important; background:var(--rs3-lime); }
.rs3-why-logo { width:190px!important; margin-bottom:auto; padding:18px; border-radius:28px; background:#fff; }
.rs3-why-brand h3 { color:var(--rs3-navy); font-size:27px; line-height:1.6; }
.rs3-why-brand .elementor-widget-text-editor { color:rgba(0,26,110,.72); line-height:2; }
.rs3-why-copy { padding:74px; gap:18px!important; justify-content:center; }
.rs3-kicker-light .elementor-heading-title { background:rgba(255,255,255,.09); color:var(--rs3-lime); border:1px solid rgba(255,255,255,.12); }
.rs3-why-copy .rs3-section-title .elementor-heading-title { color:#fff; }
.rs3-why-copy .rs3-section-copy { color:rgba(255,255,255,.72); }
.rs3-why-points { gap:10px!important; margin-top:12px; }
.rs3-why-points > .elementor-widget-text-editor { padding:17px 18px; border-radius:16px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.09); }
.rs3-why-points p { margin:0; display:flex; flex-direction:column; gap:4px; }
.rs3-why-points strong { color:#fff; }
.rs3-why-points span { color:rgba(255,255,255,.64); font-size:13px; }

.rs3-engagement { background:var(--rs3-bg); }
.rs3-engagement-grid { display:grid!important; grid-template-columns:repeat(3,1fr); align-items:stretch; gap:20px; }
.rs3-engagement-card { min-height:350px; padding:30px; border-radius:26px; border:1px solid var(--rs3-line); background:#fff; gap:16px!important; }
.rs3-engagement-card h3 { color:var(--rs3-navy); font-size:25px; }
.rs3-engagement-card .elementor-widget-text-editor { color:var(--rs3-muted); line-height:2; }
.rs3-engagement-card ul { padding-right:20px; }
.rs3-engagement-featured { background:var(--rs3-navy); transform:translateY(-12px); }
.rs3-engagement-featured h3,.rs3-engagement-featured .elementor-widget-text-editor { color:#fff!important; }
.rs3-engagement-featured .elementor-widget-text-editor { opacity:.75; }
.rs3-engagement-featured .rs3-text-link .elementor-button { color:var(--rs3-lime); }
.rs3-card-badge .elementor-heading-title { width:max-content; padding:7px 12px; border-radius:999px; background:var(--rs3-lime); color:var(--rs3-navy)!important; font-size:11px; font-weight:900; }

.rs3-honesty { padding-block:70px; background:#fff; border-block:1px solid var(--rs3-line); }
.rs3-honesty-grid { display:grid!important; grid-template-columns:1.2fr .8fr; align-items:center; gap:55px; }
.rs3-honesty-note { padding:30px; border-radius:24px; background:#fff3ee; border-right:5px solid var(--rs3-coral); }
.rs3-honesty-note h3 { color:var(--rs3-navy); font-size:22px; line-height:1.7; }
.rs3-honesty-note .elementor-widget-text-editor { color:var(--rs3-muted); line-height:1.9; }

.rs3-faq-section { background:var(--rs3-bg); }
.rs3-faq-grid { display:grid!important; grid-template-columns:.7fr 1.3fr; align-items:start; gap:70px; }
.rs3-faq-copy { position:sticky; top:120px; gap:16px!important; }
.rs3-faq .elementor-accordion-item { margin-bottom:10px; border:1px solid var(--rs3-line)!important; border-radius:16px; overflow:hidden; background:#fff; }
.rs3-faq .elementor-tab-title { padding:20px!important; color:var(--rs3-navy)!important; font-weight:900!important; }
.rs3-faq .elementor-tab-content { padding:0 20px 22px!important; border:0!important; color:var(--rs3-muted); line-height:2; }

.rs3-final { padding-top:20px; background:var(--rs3-bg); }
.rs3-final-card { display:grid!important; grid-template-columns:1.3fr .7fr; align-items:center; gap:45px; padding:58px!important; border-radius:34px; background:linear-gradient(135deg,var(--rs3-navy),var(--rs3-blue)); box-shadow:0 28px 70px rgba(0,26,110,.18); }
.rs3-final-card h2 { color:#fff; font-size:clamp(30px,4vw,46px); line-height:1.5; }
.rs3-final-card .elementor-widget-text-editor { color:rgba(255,255,255,.75); font-size:16px; line-height:2; }
.rs3-final-card .rs3-actions { justify-content:flex-end; }

@media(max-width:1024px){
  .rs3-section { padding-block:74px; }
  .rs3-hero-grid { grid-template-columns:1fr 1fr; gap:36px; }
  .rs3-hero-board { min-height:520px; padding:34px; }
  .rs3-brand-logo { width:190px!important; }
  .rs3-services-grid { grid-template-columns:repeat(2,1fr); }
  .rs3-service-card,.rs3-service-card:nth-child(4),.rs3-service-card:nth-child(5) { grid-column:auto; }
  .rs3-service-card:last-child { grid-column:1/-1; }
  .rs3-process-grid { grid-template-columns:repeat(3,1fr); }
  .rs3-details-grid,.rs3-faq-grid { grid-template-columns:1fr; gap:36px; }
  .rs3-details-copy,.rs3-faq-copy { position:static; }
  .rs3-why-copy { padding:54px 42px; }
}
@media(max-width:767px){
  .rs3-shell { width:calc(100% - 28px)!important; }
  .rs3-section { padding-block:58px; }
  .rs3-hero { min-height:0; padding-top:52px; }
  .rs3-hero-grid,.rs3-head-split,.rs3-why-grid,.rs3-honesty-grid,.rs3-final-card { grid-template-columns:1fr; }
  .rs3-hero-grid { gap:38px; }
  .rs3-display .elementor-heading-title { font-size:38px; letter-spacing:-1px; }
  .rs3-lead,.rs3-section-copy { font-size:15px; }
  .rs3-hero-board { min-height:480px; padding:28px 24px; border-radius:28px; }
  .rs3-brand-logo { width:165px!important; left:22px; top:22px; padding:18px; }
  .rs3-board-copy { margin-top:200px; }
  .rs3-board-copy .elementor-heading-title { font-size:27px; }
  .rs3-goal-grid,.rs3-services-grid,.rs3-engagement-grid { grid-template-columns:1fr; }
  .rs3-goal-featured,.rs3-engagement-featured { transform:none; }
  .rs3-service-card:last-child { grid-column:auto; }
  .rs3-service-card { min-height:300px; padding:24px; }
  .rs3-service-tabs .elementor-tabs-wrapper { display:none; }
  .rs3-service-tabs .elementor-tab-mobile-title { display:block; margin-top:8px; border:1px solid var(--rs3-line)!important; border-radius:12px; background:#fff; color:var(--rs3-navy)!important; font-weight:900; }
  .rs3-service-tabs .elementor-tab-content { margin-top:8px; padding:23px 19px!important; }
  .rs3-process-grid { grid-template-columns:1fr 1fr; }
  .rs3-step { min-height:190px; padding:20px; }
  .rs3-why { padding-block:0; }
  .rs3-why-grid { width:100%!important; }
  .rs3-why-brand { min-height:440px; padding:36px 28px; }
  .rs3-why-copy { padding:50px 28px; }
  .rs3-final { padding-top:16px; }
  .rs3-final-card { width:calc(100% - 28px)!important; padding:36px 24px!important; text-align:center; }
  .rs3-final-card .rs3-actions { justify-content:center; }
}
@media(max-width:480px){
  .rs3-actions { flex-direction:column!important; }
  .rs3-btn,.rs3-btn .elementor-button { width:100%!important; }
  .rs3-hero-proof p { gap:8px; font-size:11px; }
  .rs3-mini-grid,.rs3-process-grid { grid-template-columns:1fr; }
  .rs3-step { min-height:0; }
  .rs3-section-title .elementor-heading-title { font-size:30px; }
}

/* Dynamic service detail system v4 */
.single-resa_service { background:#f4f8fc; }
.rs4-breadcrumb { padding:22px 0 10px; background:#f4f8fc; }
.rs4-shell { width:min(calc(100% - 44px),1220px)!important; margin-inline:auto!important; }
.rs4-breadcrumb-row { display:flex!important; flex-direction:row!important; flex-wrap:wrap!important; align-items:center!important; gap:5px; min-height:48px; padding:0 18px; border:1px solid #dce7f3; border-radius:15px; background:#fff; }
.rs4-breadcrumb-row p { display:flex; align-items:center; gap:7px; margin:0; color:#94a3b8; font-size:12px; }
.rs4-breadcrumb-row a { color:#001a6e; }
.rs4-breadcrumb-title { width:auto!important; min-width:0; }
.rs4-breadcrumb-title .elementor-heading-title { color:#64748b; font-size:12px; font-weight:500; }
.rs4-kicker { width:max-content!important; max-width:100%; }
.rs4-kicker .elementor-heading-title { display:inline-flex; padding:8px 15px; border-radius:999px; background:#dff36d; color:#001a6e; font-size:13px; font-weight:900; }
.rs4-display .elementor-heading-title { max-width:680px; color:#001a6e; font-size:clamp(42px,5.2vw,68px); font-weight:950; line-height:1.3; letter-spacing:-2px; }
.rs4-lead { max-width:690px; color:#64748b; font-size:18px; line-height:2; }
.rs4-lead p { margin:0; }
.rs4-actions { display:flex!important; flex-direction:row!important; flex-wrap:wrap!important; gap:12px; }
.rs4-btn { width:auto!important; }
.rs4-btn .elementor-button { min-height:51px; padding:14px 24px; border-radius:14px; font-weight:900; }
.rs4-btn-primary .elementor-button { background:#001a6e; color:#fff; box-shadow:0 14px 30px rgba(0,26,110,.18); }
.rs4-btn-secondary .elementor-button { background:#fff; color:#001a6e; border:1px solid #dce7f3; }
.rs4-btn-lime .elementor-button { background:#dff36d; color:#001a6e; }
.rs4-btn-ghost .elementor-button { background:rgba(255,255,255,.08); color:#fff; border:1px solid rgba(255,255,255,.28); }
.rs4-service-hero { min-height:690px; display:flex; align-items:center; padding:56px 0 82px; background:radial-gradient(circle at 5% 4%,rgba(223,243,109,.48),transparent 24%),radial-gradient(circle at 92% 92%,rgba(255,91,66,.13),transparent 28%),linear-gradient(150deg,#fbfdff,#edf5fb); overflow:hidden; }
.rs4-hero-grid { display:grid!important; grid-template-columns:1.05fr .95fr; align-items:center; gap:68px; }
.rs4-hero-copy { gap:22px!important; }
.rs4-proof p { display:flex; flex-wrap:wrap; align-items:center; gap:11px; margin:0; color:#001a6e; font-size:12px; }
.rs4-proof span { width:5px; height:5px; border-radius:50%; background:#ff5b42; }
.rs4-hero-media { position:relative; min-height:510px; padding:28px; border-radius:40px; background:linear-gradient(145deg,#001a6e,#07184d); box-shadow:0 32px 80px rgba(0,26,110,.23); overflow:hidden; }
.rs4-featured-image { width:100%; height:100%; }
.rs4-featured-image img { width:100%; height:454px; object-fit:cover; border-radius:26px; filter:saturate(.9); }
.rs4-service-logo { position:absolute!important; width:105px!important; right:45px; top:45px; padding:12px; border-radius:20px; background:#dff36d; box-shadow:0 15px 35px rgba(0,0,0,.18); }
.rs4-service-logo img { width:100%; height:auto; }
.rs4-hero-note { position:absolute!important; width:265px!important; left:45px; bottom:45px; padding:17px 19px; border-radius:18px; background:rgba(7,24,77,.91); border:1px solid rgba(255,255,255,.14); backdrop-filter:blur(12px); }
.rs4-hero-note p { display:flex; flex-direction:column; gap:4px; margin:0; }
.rs4-hero-note strong { color:#dff36d; font-size:13px; }
.rs4-hero-note span { color:rgba(255,255,255,.78); font-size:12px; line-height:1.7; }

.rs4-dynamic-content { width:100%; }
.rs4-dynamic-content > .elementor-widget-container { width:100%; }
.rs4-dynamic-content .resa-section { padding-top:90px!important; padding-bottom:90px!important; }
.rs4-dynamic-content .resa-section > .e-con-inner { width:min(calc(100% - 44px),1220px)!important; }
.rs4-dynamic-content .resa-eyebrow .elementor-heading-title { background:#dff36d; color:#001a6e; padding:8px 14px; border-radius:999px; font-size:12px!important; }
.rs4-dynamic-content h2.elementor-heading-title { color:#001a6e; font-size:clamp(30px,3.4vw,44px)!important; line-height:1.45!important; font-weight:950!important; letter-spacing:-.8px; }
.rs4-dynamic-content h3.elementor-heading-title { color:#001a6e; font-weight:900!important; }
.rs4-dynamic-content .elementor-widget-text-editor { color:#64748b; line-height:2; }
.rs4-dynamic-content .resa-card { border:1px solid #dce7f3!important; border-radius:25px!important; box-shadow:0 16px 45px rgba(0,26,110,.07)!important; }
.rs4-dynamic-content .elementor-widget-image img { border-radius:28px; }
.rs4-dynamic-content .elementor-accordion-item { margin-bottom:10px; border:1px solid #dce7f3!important; border-radius:16px; overflow:hidden; background:#fff; }
.rs4-dynamic-content .elementor-tab-title { padding:20px!important; color:#001a6e!important; font-weight:900!important; }
.rs4-dynamic-content .elementor-tab-content { padding:0 20px 22px!important; border:0!important; color:#64748b; line-height:2; }

.rs4-section { width:100%; padding:88px 0; }
.rs4-section-head { gap:12px!important; margin-bottom:36px; }
.rs4-center { align-items:center!important; text-align:center; }
.rs4-center .rs4-kicker,.rs4-center .rs4-copy { align-self:center; }
.rs4-title .elementor-heading-title { max-width:860px; color:#001a6e; font-size:clamp(30px,3.7vw,46px); font-weight:950; line-height:1.42; letter-spacing:-.8px; }
.rs4-copy { color:#64748b; font-size:16px; line-height:2; }
.rs4-copy p { margin:0; }
.rs4-related { background:#fff; }
.rs4-related-posts .elementor-posts-container { display:grid!important; grid-template-columns:repeat(4,1fr)!important; gap:22px!important; }
.rs4-related-posts .elementor-post__avatar,.rs4-related-posts .elementor-post__meta-data { display:none!important; }
.rs4-related-posts .elementor-post,.rs4-related-posts .elementor-post__card { border:1px solid #dce7f3!important; border-radius:24px!important; overflow:hidden; box-shadow:0 14px 38px rgba(0,26,110,.07)!important; transition:.3s ease; }
.rs4-related-posts .elementor-post:hover { transform:translateY(-6px); box-shadow:0 22px 50px rgba(0,26,110,.12)!important; }
.rs4-related-posts .elementor-post__thumbnail { padding-bottom:58%!important; }
.rs4-related-posts .elementor-post__text { padding:22px!important; }
.rs4-related-posts .elementor-post__title { font-size:20px!important; line-height:1.7!important; }
.rs4-related-posts .elementor-post__title a { color:#001a6e; }
.rs4-related-posts .elementor-post__excerpt { color:#64748b; line-height:1.9; }
.rs4-related-posts .elementor-post__read-more { color:#075fe8!important; font-weight:900; }
.rs4-final { padding-top:20px; background:#f4f8fc; }
.rs4-final-card { display:grid!important; grid-template-columns:1.25fr .75fr; align-items:center; gap:44px; padding:58px!important; border-radius:34px; background:linear-gradient(135deg,#001a6e,#075fe8); box-shadow:0 28px 70px rgba(0,26,110,.18); }
.rs4-final-card h2 { color:#fff; font-size:clamp(30px,4vw,46px); line-height:1.5; }
.rs4-final-card .elementor-widget-text-editor { color:rgba(255,255,255,.75); font-size:16px; line-height:2; }
.rs4-final-card .rs4-actions { justify-content:flex-end; }
.rs4-kicker-dark .elementor-heading-title { background:rgba(255,255,255,.1); color:#dff36d; border:1px solid rgba(255,255,255,.13); }

@media(max-width:1024px){
  .rs4-service-hero { min-height:620px; }
  .rs4-hero-grid { grid-template-columns:1fr 1fr; gap:36px; }
  .rs4-featured-image img { height:410px; }
  .rs4-related-posts .elementor-posts-container { grid-template-columns:1fr 1fr!important; }
}
@media(max-width:767px){
  .rs4-shell,.rs4-dynamic-content .resa-section > .e-con-inner { width:calc(100% - 28px)!important; }
  .rs4-breadcrumb { padding-top:12px; }
  .rs4-breadcrumb-row { min-height:44px; padding:8px 13px; }
  .rs4-breadcrumb-title .elementor-heading-title { max-width:210px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .rs4-service-hero { min-height:0; padding:48px 0 60px; }
  .rs4-hero-grid,.rs4-final-card { grid-template-columns:1fr; }
  .rs4-display .elementor-heading-title { font-size:38px; letter-spacing:-1px; }
  .rs4-lead { font-size:16px; }
  .rs4-hero-media { min-height:430px; padding:20px; border-radius:28px; }
  .rs4-featured-image img { height:390px; border-radius:20px; }
  .rs4-service-logo { width:88px!important; right:32px; top:32px; }
  .rs4-hero-note { width:230px!important; left:32px; bottom:32px; }
  .rs4-dynamic-content .resa-section,.rs4-section { padding-top:62px!important; padding-bottom:62px!important; }
  .rs4-related-posts .elementor-posts-container { grid-template-columns:1fr!important; }
  .rs4-final { padding-top:16px!important; }
  .rs4-final-card { width:calc(100% - 28px)!important; padding:36px 24px!important; text-align:center; }
  .rs4-final-card .rs4-actions { justify-content:center; }
}
@media(max-width:480px){
  .rs4-actions { flex-direction:column!important; }
  .rs4-btn,.rs4-btn .elementor-button { width:100%!important; }
  .rs4-proof p { gap:8px; font-size:11px; }
  .rs4-hero-media { min-height:380px; }
  .rs4-featured-image img { height:340px; }
}

/* Dynamic portfolio and case-study system v5 */
.rs5-portfolio-page,.single-resa_project { --rs5-navy:#001a6e; --rs5-blue:#075fe8; --rs5-lime:#dff36d; --rs5-coral:#e56d2d; --rs5-ink:#122654; --rs5-muted:#64748b; --rs5-bg:#f4f8fc; --rs5-line:#dce7f3; direction:rtl; color:var(--rs5-ink); overflow:hidden; }
.rs5-portfolio-page *,.single-resa_project * { box-sizing:border-box; }
.rs5-shell { width:min(1240px,calc(100% - 48px)); margin-inline:auto; }
.rs5-section { padding:105px 0; }
.rs5-kicker .elementor-heading-title,.rs5-kicker.elementor-widget-heading .elementor-heading-title { display:inline-flex; width:auto; padding:8px 15px; border-radius:999px; color:var(--rs5-coral); background:#fff0e9; font-size:13px; font-weight:900; }
.rs5-kicker-dark .elementor-heading-title { color:var(--rs5-lime)!important; background:rgba(223,243,109,.12)!important; }
.rs5-display .elementor-heading-title { margin:0; color:var(--rs5-navy); font-size:clamp(42px,4.6vw,72px); line-height:1.27; letter-spacing:-1.7px; font-weight:950; }
.rs5-title .elementor-heading-title { color:var(--rs5-navy); font-size:clamp(30px,3.1vw,48px); line-height:1.45; font-weight:950; }
.rs5-lead,.rs5-copy { color:var(--rs5-muted); font-size:17px; line-height:2; }
.rs5-lead p,.rs5-copy p { margin:0; }
.rs5-actions { display:flex!important; flex-direction:row!important; flex-wrap:wrap; gap:12px!important; }
.rs5-actions>.elementor-element { width:auto!important; }
.rs5-btn .elementor-button { min-height:52px; display:inline-flex; align-items:center; justify-content:center; padding:13px 24px; border:1px solid transparent; border-radius:15px; font-weight:900; transition:.25s ease; }
.rs5-btn .elementor-button:hover { transform:translateY(-2px); }
.rs5-btn-primary .elementor-button { color:#fff; background:var(--rs5-navy); box-shadow:0 14px 30px rgba(0,26,110,.18); }
.rs5-btn-secondary .elementor-button { color:var(--rs5-navy); background:#fff; border-color:#b8c8da; }
.rs5-btn-lime .elementor-button { color:var(--rs5-navy); background:var(--rs5-lime); }
.rs5-btn-ghost .elementor-button { color:#fff; border-color:rgba(255,255,255,.35); background:transparent; }
.rs5-archive-hero,.rs5-project-hero { min-height:700px; display:flex; align-items:center; padding:65px 0 90px; background:radial-gradient(circle at 5% 5%,rgba(223,243,109,.50),transparent 25%),radial-gradient(circle at 92% 90%,rgba(229,109,45,.14),transparent 28%),linear-gradient(150deg,#fbfdff,#edf5fb); }
.rs5-archive-hero-grid,.rs5-project-hero-grid { display:grid!important; grid-template-columns:1.02fr .98fr; align-items:center; gap:70px!important; }
.rs5-archive-copy,.rs5-project-copy { gap:24px!important; }
.rs5-proof p { display:flex; flex-wrap:wrap; align-items:center; gap:10px 15px; margin:0; color:#52637d; font-size:13px; }
.rs5-proof span { width:5px; height:5px; border-radius:50%; background:var(--rs5-coral); }
.rs5-archive-visual { position:relative; min-height:535px; display:grid!important; grid-template-columns:1.06fr .94fr; grid-template-rows:1fr 1fr; gap:16px!important; padding:18px; border-radius:36px; background:var(--rs5-navy); box-shadow:0 30px 80px rgba(0,26,110,.22); }
.rs5-collage-img { overflow:hidden; border-radius:22px; }
.rs5-collage-img .elementor-widget-container,.rs5-collage-img img { width:100%; height:100%; }
.rs5-collage-img img { object-fit:cover; }
.rs5-collage-a { grid-row:1/3; }
.rs5-archive-logo { position:absolute!important; width:96px!important; right:34px; top:34px; z-index:3; padding:10px; border-radius:19px; background:var(--rs5-lime); box-shadow:0 12px 30px rgba(0,0,0,.2); }
.rs5-archive-note { position:absolute!important; width:auto!important; left:35px; bottom:35px; z-index:3; }
.rs5-archive-note p { display:flex; flex-direction:column; gap:2px; margin:0; padding:13px 17px; border-radius:16px; color:var(--rs5-navy); background:rgba(255,255,255,.94); box-shadow:0 10px 30px rgba(0,0,0,.16); }
.rs5-archive-note strong { font-size:12px; }.rs5-archive-note span { font-size:11px; }
.rs5-archive-grid { background:#fff; }
.rs5-section-head { max-width:760px; gap:14px!important; margin-bottom:42px; }
.rs5-center { margin-inline:auto; text-align:center; align-items:center!important; }
.rs5-portfolio-grid .elementor-portfolio__filters { display:flex; justify-content:center; flex-wrap:wrap; gap:8px; margin:0 0 34px!important; }
.rs5-portfolio-grid .elementor-portfolio__filter { margin:0!important; padding:10px 17px; border:1px solid var(--rs5-line); border-radius:12px; background:var(--rs5-bg); font-weight:900; transition:.2s ease; }
.rs5-portfolio-grid .elementor-active { color:#fff!important; border-color:var(--rs5-navy); background:var(--rs5-navy); }
.rs5-portfolio-grid .elementor-portfolio-item__wrapper { border-radius:24px; overflow:hidden; box-shadow:0 15px 38px rgba(0,26,110,.09); }
.rs5-portfolio-grid .elementor-portfolio-item__img { transition:transform .55s ease; }
.rs5-portfolio-grid .elementor-portfolio-item:hover .elementor-portfolio-item__img { transform:scale(1.05); }
.rs5-portfolio-grid .elementor-portfolio-item__overlay { padding:24px; }
.rs5-portfolio-grid .elementor-portfolio-item__title { font-size:19px!important; line-height:1.7; font-weight:900; }
.rs5-story-system { background:var(--rs5-bg); }
.rs5-story-grid { display:grid!important; grid-template-columns:repeat(4,1fr); gap:18px!important; }
.rs5-story-card { min-height:270px; padding:28px; gap:16px!important; border:1px solid var(--rs5-line); border-radius:25px; background:#fff; box-shadow:0 12px 32px rgba(0,26,110,.05); }
.rs5-story-card:nth-child(2) { color:#fff; border-color:var(--rs5-navy); background:linear-gradient(145deg,var(--rs5-navy),var(--rs5-blue)); }
.rs5-story-card .elementor-heading-title { color:var(--rs5-navy); font-size:21px; line-height:1.7; }
.rs5-story-card:nth-child(2) .elementor-heading-title,.rs5-story-card:nth-child(2) .elementor-widget-text-editor { color:#fff!important; }
.rs5-story-card .elementor-widget-text-editor { color:var(--rs5-muted); line-height:1.9; }
.rs5-story-no .elementor-heading-title { color:var(--rs5-coral); font-size:28px; font-weight:950; }
.rs5-breadcrumb { padding:25px 0; background:#fff; border-bottom:1px solid var(--rs5-line); }
.rs5-breadcrumb-row { display:flex!important; flex-direction:row!important; flex-wrap:wrap; align-items:center; gap:8px!important; }
.rs5-breadcrumb p { display:flex; gap:8px; margin:0; font-size:13px; color:var(--rs5-muted); }
.rs5-breadcrumb a { color:var(--rs5-blue); font-weight:800; }
.rs5-breadcrumb-title { width:auto!important; color:var(--rs5-muted); font-size:13px; }
.rs5-project-media { position:relative; min-height:535px; padding:18px; border-radius:36px; background:var(--rs5-navy); box-shadow:0 30px 80px rgba(0,26,110,.22); }
.rs5-project-featured,.rs5-project-featured .elementor-widget-container,.rs5-project-featured img { width:100%; height:100%; min-height:499px; }
.rs5-project-featured { overflow:hidden; border-radius:23px; }
.rs5-project-featured img { object-fit:cover; }
.rs5-project-logo { position:absolute!important; width:96px!important; right:34px; top:34px; padding:10px; border-radius:19px; background:var(--rs5-lime); box-shadow:0 12px 30px rgba(0,0,0,.2); }
.rs5-project-terms .elementor-icon-list-items { margin:0; }
.rs5-facts-wrap { padding:0 0 80px; margin-top:-40px; position:relative; z-index:3; }
.rs5-project-facts { display:grid; grid-template-columns:1.2fr 1fr 1fr 1.15fr .75fr 1.55fr; gap:0; overflow:hidden; border:1px solid var(--rs5-line); border-radius:24px; background:#fff; box-shadow:0 22px 55px rgba(0,26,110,.10); }
.rs5-project-status,.rs5-project-fact,.rs5-project-live { min-height:112px; display:flex; flex-direction:column; justify-content:center; padding:21px; border-left:1px solid var(--rs5-line); }
.rs5-project-status { color:var(--rs5-navy); background:var(--rs5-lime); font-size:14px; line-height:1.8; font-weight:900; }
.rs5-project-status.is-real { color:#fff; background:var(--rs5-navy); }
.rs5-project-fact small { color:var(--rs5-muted); font-size:11px; }.rs5-project-fact strong { margin-top:5px; color:var(--rs5-navy); font-size:14px; line-height:1.7; }
.rs5-project-result { grid-column:1/-1; display:grid; grid-template-columns:auto 1fr; align-items:center; gap:16px; padding:16px 22px; color:#fff; background:var(--rs5-navy); }
.rs5-project-result small { color:var(--rs5-lime); font-size:11px; font-weight:900; }.rs5-project-result strong { font-size:14px; line-height:1.8; }
.rs5-project-live { color:#fff; background:var(--rs5-blue); font-weight:900; }
.rs5-dynamic-content { background:#fff; }
.rs5-dynamic-content>.elementor-widget-container>.elementor { --content-width:1180px; }
.rs5-dynamic-content .resa-section { padding-block:90px; }
.rs5-dynamic-content h2 { color:var(--rs5-navy); font-weight:950; }
.rs5-dynamic-content p { color:var(--rs5-muted); line-height:2; }
.rs5-related { background:var(--rs5-bg); }
.rs5-related-posts .elementor-posts-container { display:grid!important; grid-template-columns:repeat(3,1fr)!important; gap:22px!important; }
.rs5-related-posts .elementor-post,.rs5-related-posts .elementor-post__card { border:1px solid var(--rs5-line)!important; border-radius:24px!important; overflow:hidden; box-shadow:0 14px 38px rgba(0,26,110,.07)!important; transition:.3s ease; }
.rs5-related-posts .elementor-post:hover { transform:translateY(-6px); }
.rs5-related-posts .elementor-post__thumbnail { padding-bottom:61%!important; }
.rs5-related-posts .elementor-post__text { padding:22px!important; }
.rs5-related-posts .elementor-post__title { font-size:20px!important; line-height:1.7!important; }
.rs5-related-posts .elementor-post__title a { color:var(--rs5-navy); }
.rs5-related-posts .elementor-post__excerpt { color:var(--rs5-muted); line-height:1.9; }
.rs5-related-posts .elementor-post__read-more { color:var(--rs5-blue)!important; font-weight:900; }
.rs5-related-posts .elementor-post__avatar,.rs5-related-posts .elementor-post__meta-data { display:none!important; }
.rs5-final { padding:80px 0; background:#fff; }
.rs5-final-card { display:grid!important; grid-template-columns:1fr auto; align-items:center; gap:45px!important; padding:55px; border-radius:32px; color:#fff; background:linear-gradient(135deg,#001a6e,#075fe8); box-shadow:0 28px 70px rgba(0,26,110,.22); }
.rs5-final-card h2 { margin:0; color:#fff; font-size:clamp(29px,3vw,43px); line-height:1.55; }
.rs5-final-card p { margin:13px 0 0; color:rgba(255,255,255,.76); line-height:2; }

@media(max-width:1024px) {
  .rs5-archive-hero-grid,.rs5-project-hero-grid { grid-template-columns:1fr 1fr; gap:38px!important; }
  .rs5-archive-visual,.rs5-project-media { min-height:470px; }
  .rs5-project-featured,.rs5-project-featured .elementor-widget-container,.rs5-project-featured img { min-height:434px; }
  .rs5-story-grid { grid-template-columns:1fr 1fr; }
  .rs5-project-facts { grid-template-columns:1fr 1fr 1fr; }
  .rs5-project-status { grid-column:1/-1; min-height:auto; }
  .rs5-related-posts .elementor-posts-container { grid-template-columns:1fr 1fr!important; }
}
@media(max-width:767px) {
  .rs5-shell { width:min(100% - 28px,1240px); }
  .rs5-section { padding:72px 0; }
  .rs5-archive-hero,.rs5-project-hero { min-height:0; padding:48px 0 68px; }
  .rs5-archive-hero-grid,.rs5-project-hero-grid { grid-template-columns:1fr; gap:38px!important; }
  .rs5-display .elementor-heading-title { font-size:39px; letter-spacing:-.8px; }
  .rs5-lead { font-size:15px; }
  .rs5-actions { flex-direction:column!important; }
  .rs5-actions>.elementor-element,.rs5-btn .elementor-button { width:100%!important; }
  .rs5-archive-visual { min-height:440px; grid-template-columns:1fr 1fr; grid-template-rows:1.15fr .85fr; padding:12px; border-radius:27px; }
  .rs5-collage-a { grid-column:1/3; grid-row:auto; }
  .rs5-archive-logo,.rs5-project-logo { width:76px!important; right:23px; top:23px; }
  .rs5-archive-note { left:22px; bottom:22px; }
  .rs5-project-media { min-height:420px; padding:12px; border-radius:27px; }
  .rs5-project-featured,.rs5-project-featured .elementor-widget-container,.rs5-project-featured img { min-height:396px; }
  .rs5-story-grid,.rs5-related-posts .elementor-posts-container { grid-template-columns:1fr!important; }
  .rs5-story-card { min-height:0; }
  .rs5-facts-wrap { margin-top:-22px; padding-bottom:55px; }
  .rs5-project-facts { grid-template-columns:1fr 1fr; border-radius:19px; }
  .rs5-project-status { grid-column:1/-1; }
  .rs5-project-result { grid-template-columns:1fr; gap:5px; }
  .rs5-project-fact,.rs5-project-live { min-height:98px; padding:16px; }
  .rs5-portfolio-grid .elementor-portfolio-item__overlay { opacity:1!important; align-items:flex-end!important; justify-content:flex-start!important; padding:18px!important; background:linear-gradient(0deg,rgba(0,26,110,.92),rgba(0,26,110,0) 68%)!important; }
  .rs5-portfolio-grid .elementor-portfolio-item__title { color:#fff!important; text-shadow:0 2px 12px rgba(0,0,0,.28); }
  .rs5-final { padding:55px 0; }
  .rs5-final-card { grid-template-columns:1fr; padding:32px 24px; gap:25px!important; border-radius:25px; }
}

/* Responsive repair: keep Elementor's native header and page widgets editable. */
@media (min-width: 768px) {
  .resa-floating-header { min-height: 76px !important; padding-top: 7px !important; padding-bottom: 7px !important; }
  .resa-floating-header > .e-con-inner { min-height: 0 !important; padding: 0 !important; }
  .resa-floating-header > .e-con-inner > .e-con { min-height: 0 !important; padding: 0 !important; }
  .resa-floating-header .elementor-widget-theme-site-logo img { max-height: 48px; width: auto; object-fit: contain; }
}
@media (min-width: 768px) and (max-width: 1024px) {
  .resa-floating-header > .e-con-inner { align-items: center !important; justify-content: space-between !important; gap: 16px !important; }
  .resa-floating-header > .e-con-inner > .elementor-element-c77fb5e { display: none !important; }
  .resa-floating-header > .e-con-inner > .elementor-element-b49a8ac { flex: 0 0 84px !important; width: 84px !important; }
  .resa-floating-header > .e-con-inner > .elementor-element-06aacfc { flex: 1 1 0 !important; width: auto !important; }
  .resa-floating-header .elementor-nav-menu--main .elementor-nav-menu { flex-wrap: nowrap !important; }
  .resa-floating-header .elementor-nav-menu--main .elementor-item { font-size: 13px !important; padding: 10px 8px !important; white-space: nowrap; }
  .resa-halo-hero .resa-hero-visual { min-height: 380px; }
  .resa-halo-hero .resa-hero-photo { margin: 22px 30px; }
  .resa-halo-hero .resa-hero-photo img { width: 100%; height: auto; min-height: 0; aspect-ratio: 1; }
  .resa-halo-hero .resa-hero-visual:before { inset: 22px 12px; border-width: 14px; }
  .resa-hero h1.elementor-heading-title { font-size: clamp(32px, 4.3vw, 42px) !important; line-height: 1.42 !important; }
  .resa-halo-hero .elementor-element-e160c9b .elementor-button { font-size: 12px; padding-inline: 8px; white-space: nowrap; }
}

/* The homepage uses Elementor's Cards skin, whose thumbnail/text live inside
   .elementor-post__card. Give that wrapper the card layout instead of its article. */
.resa-halo-latest .resa-posts-horizontal .elementor-post {
  display: block !important;
  min-height: 0 !important;
  grid-template-columns: none !important;
}
.resa-halo-latest .resa-posts-horizontal .elementor-post__card {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}
.resa-halo-latest .resa-posts-horizontal .elementor-post__thumbnail__link {
  display: block;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 16 / 10;
  margin: 0 !important;
}
.resa-halo-latest .resa-posts-horizontal .elementor-post__thumbnail {
  height: 100% !important;
  min-height: 0 !important;
  aspect-ratio: 16 / 10;
  padding: 0 !important;
}
.resa-halo-latest .resa-posts-horizontal .elementor-post__thumbnail img { width: 100% !important; height: 100% !important; aspect-ratio: 16 / 10; object-fit: cover; }
.resa-halo-latest .resa-posts-horizontal .elementor-post__text { width: 100%; padding: 18px 20px 22px; }
@media (max-width: 767px) {
  .resa-floating-header,
  .resa-floating-header.elementor-sticky--active {
    width: calc(100% - 20px) !important;
    min-height: 64px !important;
    margin: 8px auto 0 !important;
    padding: 8px 12px !important;
    border-radius: 17px !important;
    background: #fff !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
  .resa-floating-header > .e-con-inner {
    width: 100% !important;
    min-height: 0 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
  }
  .resa-floating-header > .e-con-inner > .e-con:not(.elementor-hidden-mobile) {
    flex: 0 0 auto !important;
    width: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
  }
  .resa-floating-header .elementor-widget-theme-site-logo img { width: auto !important; max-width: 84px; height: 44px !important; object-fit: contain; }
  .resa-floating-header .elementor-menu-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    margin: 0 !important;
    padding: 8px !important;
    border: 1px solid #dce6f2;
    border-radius: 12px;
    background: #f5f9ff !important;
  }
  .resa-floating-header .elementor-nav-menu--dropdown { max-height: min(70vh, 520px); overflow-y: auto; }

  .resa-hero { padding-top: 24px !important; padding-bottom: 36px !important; }
  .resa-halo-hero { padding-top: 16px !important; }
  .resa-hero > .e-con-inner { min-height: 0 !important; }
  .resa-hero .elementor-heading-title { overflow-wrap: normal; }
  .resa-hero h1.elementor-heading-title { font-size: clamp(25px, 7.2vw, 29px) !important; line-height: 1.5 !important; }
  .resa-hero .elementor-widget-text-editor { font-size: 14.5px; line-height: 1.85; }
  .resa-hero .elementor-element-e160c9b,
  .resa-hero .elementor-element-9adb093,
  .resa-hero .elementor-element-9b6e02f {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
  }
  .resa-hero .elementor-element-e160c9b > .elementor-widget-button,
  .resa-hero .elementor-element-9adb093 > .elementor-widget-button,
  .resa-hero .elementor-element-9b6e02f > .elementor-widget-button { flex: 1 1 0; min-width: 0; width: auto !important; }
  .resa-hero .elementor-element-e160c9b .elementor-button,
  .resa-hero .elementor-element-9adb093 .elementor-button,
  .resa-hero .elementor-element-9b6e02f .elementor-button { width: 100%; padding-inline: 11px; font-size: 13px; white-space: nowrap; }
  .resa-halo-hero .resa-hero-visual { min-height: 336px; margin-top: 4px; }
  .resa-halo-hero .resa-hero-photo { margin: 22px 28px 18px; }
  .resa-halo-hero .resa-hero-photo img { min-height: 0; }
  .resa-halo-hero .resa-hero-visual:before { inset: 18px 12px 12px; border-width: 13px; }
  .resa-hero-result-card { width: 135px !important; }
  .resa-halo-service-track { display: flex !important; flex-wrap: nowrap !important; overflow-x: auto !important; scroll-padding-inline: 14px; }
  .resa-halo-service-track > .resa-service-card { flex: 0 0 82% !important; width: 82% !important; min-width: 82% !important; max-width: 82%; }
  .resa-halo-latest .resa-posts-horizontal .elementor-post__text { padding: 16px 18px 20px; }
  .resa-halo-latest .resa-posts-horizontal .elementor-post__title { font-size: 17px; }

  .rs3-hero { padding-top: 32px; }
  .rs3-hero-grid { gap: 24px; }
  .rs5-archive-hero, .rs5-project-hero { padding-top: 28px; padding-bottom: 48px; }
  .rs5-archive-hero-grid, .rs5-project-hero-grid { gap: 25px !important; }
  .rs5-display .elementor-heading-title { font-size: 34px; line-height: 1.35; }
  .rs5-archive-visual { min-height: 340px; }
  .rs5-portfolio-grid .elementor-portfolio-item__overlay { justify-content: flex-end !important; align-items: flex-end !important; }
  .rs5-portfolio-grid .elementor-portfolio-item__title { width: 100%; text-align: right; }
  .rs5-actions { flex-direction: row !important; flex-wrap: nowrap !important; }
  .rs5-actions > .elementor-element { flex: 1 1 0; min-width: 0; width: auto !important; }
  .rs5-actions .elementor-button { width: 100% !important; padding-inline: 10px; font-size: 13px; }
  .resa-ref-single-body { padding-top: 22px !important; }

  /* Entrance animation must never leave mobile content invisible while scrolling. */
  .resa-reveal, .resa-reveal.resa-in-view { opacity: 1 !important; transform: none !important; transition: none !important; }
}

/* Editorial design v5.3 — native Elementor archive and single-post template. */
.rc-blog { --rc-editorial-ink:#071a49; --rc-editorial-blue:#1265db; --rc-editorial-line:#dce7f3; }
.rc-blog .rc-hero {
  position:relative; isolation:isolate; overflow:hidden;
  min-height:390px; padding-block:68px 62px !important;
  background:radial-gradient(circle at 19% 14%,rgba(183,230,97,.23),transparent 28%),
    radial-gradient(circle at 76% 96%,rgba(53,115,231,.42),transparent 42%),
    linear-gradient(128deg,#061640 0%,#082766 57%,#0d448f 100%) !important;
}
.rc-blog .rc-hero::before { content:""; position:absolute; z-index:-1; width:410px; height:410px; left:7%; top:-115px; border:1px solid rgba(255,255,255,.2); border-radius:50%; box-shadow:0 0 0 52px rgba(255,255,255,.035),0 0 0 105px rgba(255,255,255,.03); pointer-events:none; }
.rc-blog .rc-hero::after { content:""; position:absolute; z-index:-1; width:160px; height:160px; left:21%; bottom:-96px; border-radius:34px; transform:rotate(28deg); background:linear-gradient(135deg,rgba(223,243,109,.65),rgba(223,243,109,0)); pointer-events:none; }
.rc-blog .rc-hero .rc-kicker .elementor-heading-title { background:rgba(223,243,109,.14) !important; border:1px solid rgba(223,243,109,.44); color:#e8f9ac !important; padding:7px 15px; }
.rc-blog .rc-hero .rc-title .elementor-heading-title { max-width:890px; color:#fff !important; font-size:clamp(35px,3.8vw,54px) !important; line-height:1.34 !important; letter-spacing:-1px; }
.rc-blog .rc-hero .rc-lead,.rc-blog .rc-hero .rc-lead p { color:#d5e4fb !important; font-size:17px; line-height:2; }
.rc-blog .rc-hero .rc-search { max-width:600px !important; margin-top:20px; }
.rc-blog .rc-hero .rc-search .elementor-search-form__container { border:1px solid rgba(255,255,255,.7) !important; border-radius:16px !important; box-shadow:0 20px 45px rgba(0,9,47,.24); }
.rc-blog .rc-hero .rc-search .elementor-search-form__submit { background:#dff36d !important; color:#071a49 !important; min-width:58px; }
.rc-blog .rc-cats { padding-block:18px !important; box-shadow:0 10px 28px rgba(12,37,82,.04); }
.rc-blog .resa-dynamic-categories { align-items:center; }
.rc-blog .resa-dynamic-categories a { border:1px solid transparent; border-radius:999px; padding:9px 14px; transition:background .2s,color .2s,border-color .2s; }
.rc-blog .resa-dynamic-categories a:hover { background:#e5f1ff; border-color:#bcd4f0; color:#001a6e; }
.rc-blog .resa-dynamic-categories a.is-active { background:#001a6e; color:#fff; }
.rc-blog .resa-dynamic-categories a.is-active small { color:#001a6e; }
.rc-blog.is-category-filtered .rc-filter-secondary { display:none !important; }
.rc-blog .rc-filter-status { width:100%; margin:8px 0 20px; color:#506782; font-size:14px; text-align:center; }
.rc-blog .rc-filter-results { scroll-margin-top:112px; }
.rc-blog .rc-posts.is-loading { opacity:.45; pointer-events:none; transition:opacity .2s ease; }
.rc-blog .rc-section { padding-block:88px !important; }
.rc-blog .rc-section-title .elementor-heading-title { color:#071a49 !important; font-size:clamp(27px,2.7vw,38px) !important; letter-spacing:-.5px; }
.rc-blog .rc-section .rc-kicker .elementor-heading-title { background:transparent; padding:0; color:#1265db; }
.rc-blog .rc-section .rc-kicker .elementor-heading-title::before { content:""; display:inline-block; width:21px; height:3px; margin-left:9px; border-radius:3px; background:#c7e75f; }
.rc-blog .rc-featured.elementor-widget-posts .elementor-posts-container { grid-template-columns:repeat(3,minmax(0,1fr)) !important; align-items:stretch; }
.rc-blog .rc-featured .elementor-post,.rc-blog .rc-posts .elementor-post,.rc-blog .rc-popular .elementor-post { border:1px solid #e0e8f3; border-radius:20px !important; box-shadow:0 14px 32px rgba(4,35,88,.07); }
.rc-blog .rc-featured .elementor-post__thumbnail,.rc-blog .rc-posts .elementor-post__thumbnail,.rc-blog .rc-popular .elementor-post__thumbnail { overflow:hidden; }
.rc-blog .rc-featured .elementor-post__thumbnail img,.rc-blog .rc-posts .elementor-post__thumbnail img,.rc-blog .rc-popular .elementor-post__thumbnail img { transition:transform .4s ease; }
.rc-blog .rc-featured .elementor-post:hover .elementor-post__thumbnail img,.rc-blog .rc-posts .elementor-post:hover .elementor-post__thumbnail img,.rc-blog .rc-popular .elementor-post:hover .elementor-post__thumbnail img { transform:scale(1.04); }
.rc-blog .rc-featured .elementor-post__title,.rc-blog .rc-posts .elementor-post__title,.rc-blog .rc-popular .elementor-post__title { font-size:19px !important; line-height:1.7 !important; }
.rc-blog .rc-featured .elementor-post__meta-data,.rc-blog .rc-posts .elementor-post__meta-data,.rc-blog .rc-popular .elementor-post__meta-data { color:#7e8da5 !important; font-size:12px; }
.rc-blog .rc-featured .elementor-post__read-more,.rc-blog .rc-posts .elementor-post__read-more,.rc-blog .rc-popular .elementor-post__read-more { display:inline-flex; align-items:center; gap:6px; margin-top:8px; }
.rc-blog .rc-topic { min-height:190px; padding:27px 25px; background:linear-gradient(145deg,#fff,#f8fbff); border-color:#dce7f3; border-radius:22px; }
.rc-blog .rc-topic::before { content:""; width:36px; height:5px; border-radius:999px; margin-bottom:18px; background:linear-gradient(90deg,#dff36d,#1170df); }
.rc-blog .rc-topic .elementor-heading-title { font-size:20px !important; }
.rc-blog .rc-topic .elementor-widget-text-editor { color:#64748b; }
.rc-blog .rc-popular-section { background:#fff; }
.rc-blog .rc-posts.elementor-widget-posts .elementor-posts-container { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
.rc-blog .rc-cta { box-shadow:0 20px 50px rgba(0,26,110,.15); }

.resa-ref-single-body { background:linear-gradient(180deg,#f6f9ff 0%,#fff 480px) !important; }
.resa-ref-breadcrumb > .e-con-inner { border-color:#e2eaf5; border-radius:16px; box-shadow:0 6px 25px rgba(6,33,80,.04); }
.resa-ref-article-card { padding:32px !important; border:1px solid #e1eaf4 !important; border-radius:26px !important; background:#fff !important; box-shadow:0 18px 55px rgba(9,37,86,.07) !important; }
.resa-ref-article-card > .elementor-widget-heading { margin:0 0 12px !important; }
.resa-ref-article-card > .elementor-widget-heading .elementor-heading-title { color:#061b50 !important; font-size:clamp(32px,2.9vw,43px) !important; font-weight:900 !important; line-height:1.48 !important; letter-spacing:-.75px; }
.resa-editorial-dek { margin:0 0 21px !important; padding:0 15px 0 0; border-right:4px solid #d7ed73; color:#485d78 !important; font-size:18px !important; line-height:1.95 !important; text-align:right; }
.resa-editorial-dek .elementor-widget-container { color:inherit !important; font-size:inherit !important; line-height:inherit !important; }
.resa-ref-meta-row { gap:12px !important; flex-wrap:wrap !important; align-items:center !important; padding:9px 0 22px !important; }
.resa-ref-post-info .elementor-icon-list-items { gap:8px 15px; flex-wrap:wrap; }
.resa-ref-post-info .elementor-icon-list-item { color:#6a7b94 !important; font-size:12px !important; }
.resa-ref-share .elementor-share-btn { border-radius:50% !important; }
.resa-ref-article-card .resa-dynamic-image { margin:0 0 20px !important; }
.resa-ref-article-card .resa-dynamic-image img { aspect-ratio:1.9/1; border-radius:18px !important; }
.resa-ref-divider .elementor-divider { padding-block:0 !important; }
.resa-ref-post-content { width:min(100%,780px); margin-inline:auto; color:#394c66 !important; font-size:17px !important; line-height:2.15 !important; }
.resa-ref-post-content h2 { position:relative; padding-right:18px; margin-top:46px !important; color:#09265d !important; font-size:27px !important; line-height:1.65 !important; }
.resa-ref-post-content h2::before { content:""; position:absolute; right:0; top:.33em; bottom:.3em; width:5px; border-radius:4px; background:#b9db4e; }
.resa-ref-post-content h3 { color:#123b7a !important; font-size:21px !important; }
.resa-ref-post-content a { color:#1265db; text-decoration:underline; text-decoration-color:#b6cbed; text-underline-offset:4px; }
.resa-ref-post-content ul,.resa-ref-post-content ol { padding-right:23px; }
.resa-ref-post-content li { margin-bottom:8px; }
.resa-ref-post-content img { max-width:100%; height:auto; border-radius:14px; }
.resa-ref-toc-card { min-height:0 !important; padding:20px !important; border:1px solid #dce7f3 !important; border-radius:20px !important; background:linear-gradient(180deg,#fff,#f7faff) !important; box-shadow:0 12px 30px rgba(10,36,80,.055); }
.resa-single-toc .elementor-toc__header { display:flex !important; align-items:center; justify-content:space-between; padding:0 0 14px !important; margin-bottom:13px; border-bottom:1px solid #dfe8f5; }
.resa-ref-toc-card .elementor-toc__header-title { color:#071a49 !important; font-size:16px !important; font-weight:900 !important; }
.resa-ref-toc-card .elementor-toc__list-item { margin-bottom:10px; }
.resa-ref-toc-card .elementor-toc__list-item-text-wrapper { color:#48607f !important; font-size:13px; line-height:1.75; }
.resa-ref-toc-card .elementor-item-active { color:#1265db !important; }
.resa-ref-toc-card .elementor-toc__body { padding:0 !important; }
.resa-mobile-toc { display:none !important; }
.resa-ref-comments { border:1px solid #dce7f3; border-radius:22px !important; box-shadow:0 13px 32px rgba(4,35,88,.05); }

@media (max-width: 1024px) {
  .rc-blog .rc-featured.elementor-widget-posts .elementor-posts-container { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .resa-ref-article-card { padding:26px !important; }
  .resa-ref-single-grid { flex-direction:column !important; align-items:stretch !important; }
  .resa-ref-article-card,.resa-ref-sidebar { width:100% !important; max-width:none !important; }
  .resa-ref-article-card { order:1; }
  .resa-ref-sidebar { order:2; }
  .resa-ref-sidebar .resa-ref-toc-card { display:none !important; }
  .resa-mobile-toc { display:block !important; margin:5px 0 22px !important; padding:16px !important; border:1px solid #dce7f3; border-radius:16px; background:#f7faff; }
  .resa-mobile-toc .elementor-toc__header { display:flex !important; padding:0 0 12px !important; margin-bottom:10px; border-bottom:1px solid #dce7f3; }
  .resa-mobile-toc .elementor-toc__header-title { color:#071a49 !important; font-size:15px !important; font-weight:900 !important; }
  .resa-mobile-toc .elementor-toc__body { padding:0 !important; }
  .resa-mobile-toc .elementor-toc__list-item-text-wrapper { color:#48607f; font-size:13px; line-height:1.8; }
}
@media (max-width: 767px) {
  .rc-blog .rc-hero { min-height:0; padding:42px 24px 46px !important; }
  .rc-blog .rc-hero::before { width:250px; height:250px; left:-100px; top:-100px; }
  .rc-blog .rc-hero::after { width:100px; height:100px; left:4%; bottom:-65px; }
  .rc-blog .rc-hero .rc-title .elementor-heading-title { font-size:clamp(29px,8vw,37px) !important; line-height:1.47 !important; }
  .rc-blog .rc-hero .rc-lead,.rc-blog .rc-hero .rc-lead p { font-size:14.5px; line-height:1.9; }
  .rc-blog .rc-hero .rc-search { width:100% !important; margin-top:11px; }
  .rc-blog .rc-cats { overflow:hidden; padding:14px 0 !important; }
  .rc-blog .rc-cats .elementor-widget-shortcode { width:100%; }
  .rc-blog .resa-dynamic-categories { width:100%; flex-wrap:nowrap !important; gap:8px; overflow-x:auto; padding:1px 18px 10px; scrollbar-width:thin; scroll-snap-type:x proximity; }
  .rc-blog .resa-dynamic-categories a { flex:0 0 auto; white-space:nowrap; scroll-snap-align:start; font-size:12px; padding:8px 11px; }
  .rc-blog .rc-section { padding:64px 20px !important; }
  .rc-blog .rc-featured.elementor-widget-posts .elementor-posts-container,.rc-blog .rc-posts.elementor-widget-posts .elementor-posts-container { grid-template-columns:minmax(0,1fr) !important; }
  .rc-blog .rc-topic { min-height:0; padding:21px; }
  .rc-blog .rc-topic::before { margin-bottom:12px; }
  .resa-ref-article-card { padding:20px !important; border-radius:22px !important; }
  .resa-ref-single-body > .e-con-inner { padding-top:0 !important; }
  .resa-ref-article-card > .elementor-widget-heading .elementor-heading-title { font-size:clamp(26px,7vw,31px) !important; line-height:1.55 !important; }
  .resa-editorial-dek { font-size:15px !important; line-height:1.9 !important; padding-right:12px; margin-bottom:14px !important; }
  .resa-ref-meta-row { padding-bottom:14px !important; gap:9px !important; }
  .resa-ref-post-info .elementor-icon-list-items { gap:5px 11px; }
  .resa-ref-article-card .resa-dynamic-image img { aspect-ratio:1.6/1; border-radius:14px !important; }
  .resa-ref-post-content { font-size:16px !important; line-height:2.1 !important; }
  .resa-ref-post-content h2 { font-size:22px !important; padding-right:15px; margin-top:34px !important; }
  .resa-ref-post-content h3 { font-size:19px !important; }
  .resa-ref-toc-card { padding:18px !important; }
  .resa-mobile-toc { display:block !important; margin:5px 0 22px !important; padding:16px !important; border:1px solid #dce7f3; border-radius:16px; background:#f7faff; }
  .resa-mobile-toc .elementor-toc__header { display:flex !important; padding:0 0 12px !important; margin-bottom:10px; border-bottom:1px solid #dce7f3; }
  .resa-mobile-toc .elementor-toc__header-title { color:#071a49 !important; font-size:15px !important; font-weight:900 !important; }
  .resa-mobile-toc .elementor-toc__body { padding:0 !important; }
  .resa-mobile-toc .elementor-toc__list-item-text-wrapper { color:#48607f; font-size:13px; line-height:1.8; }
  .resa-ref-sidebar .resa-ref-toc-card { display:none !important; }
}

/* Home motion system v5.5 — kinetic signal, reading path and purposeful reveals. */
body.page-id-2095 .resa-halo-hero { position:relative; }
body.page-id-2095 .resa-halo-hero::before { animation:rs-ambient-drift 14s ease-in-out infinite alternate; }
body.page-id-2095 .resa-halo-hero .elementor-element-38fef7a { position:relative; }
body.page-id-2095 .resa-halo-hero .elementor-element-38fef7a::after { content:""; position:absolute; right:0; bottom:-8px; width:82px; height:5px; border-radius:99px; background:linear-gradient(90deg,#dff36d,#ff5b42); transform-origin:right center; animation:rs-underline 1.1s .7s both cubic-bezier(.2,.7,.2,1); }
body.page-id-2095 .resa-hero-visual .rs-signal-field { position:absolute; inset:-24px; z-index:0; pointer-events:none; }
body.page-id-2095 .resa-hero-visual .resa-hero-photo { position:relative; z-index:1; transform:translate3d(var(--rs-parallax-x,0px),var(--rs-parallax-y,0px),0); transition:transform .45s ease-out; }
body.page-id-2095 .resa-hero-visual .resa-hero-result-card { z-index:3; }
body.page-id-2095 .rs-signal-ring { position:absolute; inset:2% 4%; border:1px dashed rgba(0,26,110,.25); border-radius:50%; animation:rs-ring-turn 36s linear infinite; }
body.page-id-2095 .rs-signal-ring-2 { inset:9% 11%; border-color:rgba(255,91,66,.2); animation-direction:reverse; animation-duration:29s; }
body.page-id-2095 .rs-signal-dot { position:absolute; width:13px; height:13px; border-radius:50%; background:#dff36d; border:3px solid #fff; box-shadow:0 0 0 5px rgba(223,243,109,.25); animation:rs-signal-pulse 3.8s ease-in-out infinite; }
body.page-id-2095 .rs-signal-dot-1 { top:18%; left:5%; }
body.page-id-2095 .rs-signal-dot-2 { top:10%; right:14%; background:#ff5b42; box-shadow:0 0 0 5px rgba(255,91,66,.2); animation-delay:-1.4s; }
body.page-id-2095 .rs-signal-dot-3 { bottom:14%; right:6%; background:#1265db; box-shadow:0 0 0 5px rgba(18,101,219,.18); animation-delay:-2.7s; }
html.rs-home-ready body.page-id-2095 .resa-halo-hero .resa-eyebrow { animation:rs-hero-in .7s .05s both cubic-bezier(.2,.7,.2,1); }
html.rs-home-ready body.page-id-2095 .resa-halo-hero .elementor-element-38fef7a { animation:rs-hero-in .85s .16s both cubic-bezier(.2,.7,.2,1); }
html.rs-home-ready body.page-id-2095 .resa-halo-hero .elementor-element-edf01ec { animation:rs-hero-in .8s .32s both cubic-bezier(.2,.7,.2,1); }
html.rs-home-ready body.page-id-2095 .resa-halo-hero .elementor-element-e160c9b { animation:rs-hero-in .8s .48s both cubic-bezier(.2,.7,.2,1); }
html.rs-home-ready body.page-id-2095 .resa-halo-hero .resa-hero-visual { animation:rs-visual-in 1s .2s both cubic-bezier(.2,.7,.2,1); }
html.rs-home-ready body.page-id-2095 .rs-motion-item { opacity:0; translate:0 18px; transition:opacity .72s ease,translate .72s cubic-bezier(.2,.7,.2,1); transition-delay:var(--rs-delay,0ms); }
html.rs-home-ready body.page-id-2095 .rs-motion-item.rs-in-view { opacity:1; translate:0 0; }
body.page-id-2095 .resa-halo-service-track > .resa-service-card:nth-child(2) { background:#071b5e !important; background-color:#071b5e !important; border-color:#071b5e !important; }
body.page-id-2095 .resa-halo-service-track > .resa-service-card:nth-child(2) .elementor-heading-title,
body.page-id-2095 .resa-halo-service-track > .resa-service-card:nth-child(2) .elementor-widget-text-editor,
body.page-id-2095 .resa-halo-service-track > .resa-service-card:nth-child(2) .elementor-button { color:#fff !important; }
body.page-id-2095 .resa-halo-service-track > .resa-service-card:nth-child(2) .elementor-button { background:transparent !important; border-color:rgba(255,255,255,.72) !important; }
body.page-id-2095 .resa-halo-service-track > .resa-service-card:nth-child(2) .elementor-button:hover { background:#dff36d !important; border-color:#dff36d !important; color:#001a6e !important; }
body.page-id-2095 .resa-halo-service-track > .resa-service-card { transition:box-shadow .3s ease,border-color .3s ease,translate .3s ease; }
body.page-id-2095 .resa-halo-service-track > .resa-service-card:hover { translate:0 -5px; box-shadow:0 24px 50px rgba(7,24,77,.14) !important; }
body.page-id-2095 .resa-halo-projects .resa-project-card img { transition:transform .7s cubic-bezier(.2,.7,.2,1); }
body.page-id-2095 .resa-halo-projects .resa-project-card:hover img { transform:scale(1.04); }
body.page-id-2095 .resa-halo-stats .resa-stat { transition:box-shadow .3s ease,translate .3s ease; }
body.page-id-2095 .resa-halo-stats .resa-stat:hover { translate:0 -5px; box-shadow:0 18px 40px rgba(7,24,77,.11) !important; }
body.page-id-2095 .resa-halo-stats .elementor-element-b5d6c82 .elementor-counter-number-wrapper { display:flex !important; flex-wrap:nowrap !important; justify-content:center; align-items:baseline; width:100%; font-size:clamp(32px,3.2vw,43px) !important; white-space:nowrap; }
body.page-id-2095 .resa-halo-stats .elementor-element-b5d6c82 .elementor-counter-number-wrapper > span { flex:0 0 auto; white-space:nowrap; }
body.page-id-2095 .resa-dark-cta::before { animation:rs-ring-turn 28s linear infinite; }
.rs-home-progress { position:fixed; inset:0 0 auto; z-index:99999; height:3px; pointer-events:none; }
.rs-home-progress span { display:block; width:100%; height:100%; background:linear-gradient(90deg,#ff5b42 0%,#dff36d 52%,#075fe8 100%); transform:scaleX(0); transform-origin:right center; transition:transform .1s linear; }
.rs-chapter-nav { position:fixed; top:50%; left:16px; z-index:900; display:flex; flex-direction:column; align-items:center; gap:13px; width:28px; padding:14px 8px; border:1px solid rgba(207,221,241,.95); border-radius:999px; background:rgba(255,255,255,.88); box-shadow:0 10px 28px rgba(3,24,73,.1); backdrop-filter:blur(10px); transform:translateY(-50%); }
.rs-chapter-nav button.rs-chapter-dot { position:relative; display:block; flex:0 0 auto; width:10px !important; min-width:10px !important; max-width:10px !important; height:10px !important; min-height:10px !important; padding:0 !important; border:0 !important; border-radius:99px !important; background:#aabbd4 !important; box-shadow:none !important; line-height:0 !important; cursor:pointer; transition:height .25s ease,background .25s ease; }
.rs-chapter-nav button.rs-chapter-dot.is-active { height:27px !important; min-height:27px !important; background:#001a6e !important; }
.rs-chapter-dot:focus-visible { outline:3px solid #ff5b42; outline-offset:4px; }
.rs-chapter-dot span { position:absolute; left:21px; top:50%; padding:6px 10px; border-radius:8px; background:#071b4c; color:#fff; white-space:nowrap; font-size:11px; font-weight:800; opacity:0; pointer-events:none; transform:translate(-4px,-50%); transition:opacity .2s ease,transform .2s ease; }
.rs-chapter-dot:hover span,.rs-chapter-dot:focus-visible span { opacity:1; transform:translate(0,-50%); }
.rs-service-controls { display:none; align-items:center; justify-content:flex-start; gap:8px; width:100%; margin:8px 0 14px; direction:rtl; }
.rs-service-controls button.rs-service-arrow { display:grid; place-items:center; flex:0 0 42px; width:42px !important; min-width:42px !important; max-width:42px !important; height:42px !important; min-height:42px !important; padding:0 !important; border:1px solid #cbd8ee !important; border-radius:13px !important; background:#fff !important; color:#001a6e !important; font-size:27px !important; line-height:1 !important; cursor:pointer; box-shadow:0 7px 20px rgba(0,26,110,.06) !important; }
.rs-service-arrow:disabled { opacity:.4; cursor:default; }
.rs-service-controls button.rs-service-arrow:not(:disabled):hover { background:#001a6e !important; color:#fff !important; }
.rs-service-meter { display:block; position:relative; width:82px; height:4px; margin-inline:10px 4px; border-radius:999px; background:#dce7f3; overflow:hidden; }
.rs-service-meter-fill { display:block; width:100%; height:100%; background:#ff5b42; border-radius:inherit; transform:scaleX(.25); transform-origin:right center; transition:transform .3s ease; }
.rs-service-count { color:#526986; font-size:12px; font-weight:800; white-space:nowrap; }
@keyframes rs-hero-in { from {opacity:0;transform:translateY(22px);} to {opacity:1;transform:translateY(0);} }
@keyframes rs-visual-in { from {opacity:0;transform:translateY(18px) scale(.965);} to {opacity:1;transform:translateY(0) scale(1);} }
@keyframes rs-underline { from {transform:scaleX(0);} to {transform:scaleX(1);} }
@keyframes rs-ambient-drift { from {transform:translate3d(0,0,0);} to {transform:translate3d(45px,28px,0);} }
@keyframes rs-ring-turn { to {transform:rotate(360deg);} }
@keyframes rs-signal-pulse { 0%,100% {scale:1;opacity:.8;} 50% {scale:1.45;opacity:1;} }
@media (max-width:1100px) { .rs-chapter-nav { display:none; } }
@media (max-width:767px) { .rs-service-controls { display:flex; } }
@media (max-width:767px) {
  body.page-id-2095 .resa-hero-visual .rs-signal-field { inset:-8px; }
  body.page-id-2095 .rs-signal-ring-2 { display:none; }
  body.page-id-2095 .rs-signal-dot { width:10px; height:10px; }
  body.page-id-2095 .resa-halo-stats .elementor-element-b5d6c82 .elementor-counter-number-wrapper { font-size:clamp(36px,11vw,49px) !important; }
}
@media (prefers-reduced-motion:reduce) {
  body.page-id-2095 .rs-signal-field,body.page-id-2095 .resa-halo-hero .elementor-element-38fef7a::after { animation:none !important; }
  html.rs-home-ready body.page-id-2095 .rs-motion-item { opacity:1 !important; translate:none !important; }
}

/* Home scroll story v5.6 — one brand signal travels from the hero to the closing CTA. */
body.page-id-2095 .rs-signal-trace { position:absolute; inset:0; z-index:1; width:100%; height:100%; overflow:visible; pointer-events:none; }
body.page-id-2095 .rs-signal-trace path { fill:none; stroke:#ff5b42; stroke-width:3; stroke-linecap:round; stroke-dasharray:1000; stroke-dashoffset:1000; opacity:.82; vector-effect:non-scaling-stroke; }
body.page-id-2095 .rs-signal-dot { z-index:2; }
body.page-id-2095 .resa-hero-visual .resa-hero-photo { transform:translate3d(var(--rs-parallax-x,0px),calc(var(--rs-parallax-y,0px) + var(--rs-hero-scroll-y,0px)),0) scale(var(--rs-hero-scale,1)); transition:transform .16s ease-out; }
body.page-id-2095 .rs-story-rail { position:relative; display:flex; direction:rtl; justify-content:space-between; align-items:center; width:min(calc(100% - 30px),1160px); height:24px; margin:16px auto 20px; }
body.page-id-2095 .rs-story-rail::before,body.page-id-2095 .rs-story-rail::after { content:""; position:absolute; right:0; left:0; top:10px; height:3px; border-radius:99px; }
body.page-id-2095 .rs-story-rail::before { background:#dae5f4; }
body.page-id-2095 .rs-story-rail::after { background:linear-gradient(270deg,#ff5b42,#dff36d 64%,#1265db); transform:scaleX(var(--rs-service-p,0)); transform-origin:right center; }
body.page-id-2095 .rs-story-rail > span { position:relative; z-index:1; width:12px; height:12px; border:3px solid #d3e0f1; border-radius:50%; background:#fff; box-shadow:0 0 0 4px #f9fbff; transition:background .25s,border-color .25s,scale .25s; }
body.page-id-2095 .rs-story-rail > span.is-lit { background:#ff5b42; border-color:#ff5b42; scale:1.25; }
@media (min-width:768px) {
  body.page-id-2095 .resa-halo-service-track > .resa-service-card { position:relative; }
  body.page-id-2095 .resa-halo-service-track > .resa-service-card::before { content:""; position:absolute; z-index:2; inset:0 0 auto; height:4px; border-radius:20px 20px 0 0; background:linear-gradient(90deg,#1265db,#ff5b42,#dff36d); transform:scaleX(0); transform-origin:right center; transition:transform .48s ease; pointer-events:none; }
  body.page-id-2095 .resa-halo-service-track > .resa-service-card.rs-story-lit::before { transform:scaleX(1); }
  body.page-id-2095 .resa-halo-service-track > .resa-service-card.rs-story-lit { border-color:#b8ccea !important; box-shadow:0 18px 45px rgba(7,24,77,.12) !important; }
  body.page-id-2095 .resa-halo-service-track > .resa-service-card:nth-child(2).rs-story-lit { border-color:#071b5e !important; }
  body.page-id-2095 .resa-halo-experience .resa-collage .elementor-widget-image:nth-child(1) { transform:translateY(var(--rs-process-shift-a,0px)); }
  body.page-id-2095 .resa-halo-experience .resa-collage .elementor-widget-image:nth-child(2) { transform:translateY(var(--rs-process-shift-b,0px)); }
  body.page-id-2095 .resa-halo-projects .resa-project-card img { transform:translateY(var(--rs-project-shift,0px)) scale(var(--rs-project-scale,1)); transition:transform .24s ease-out; }
  body.page-id-2095 .resa-halo-projects .resa-project-card:hover img { --rs-project-scale:1.04; }
}
body.page-id-2095 .rs-process-list { position:relative; }
body.page-id-2095 .rs-process-list::before,body.page-id-2095 .rs-process-list::after { content:""; position:absolute; top:17px; bottom:17px; right:10px; width:3px; border-radius:99px; pointer-events:none; }
body.page-id-2095 .rs-process-list::before { background:#dce7f4; }
body.page-id-2095 .rs-process-list::after { background:linear-gradient(#ff5b42,#dff36d 60%,#1265db); transform:scaleY(var(--rs-process-p,0)); transform-origin:top center; }
body.page-id-2095 .rs-process-list > .rs-process-step { position:relative; padding-right:38px; transition:color .25s,opacity .25s; }
body.page-id-2095 .rs-process-list > .rs-process-step::before { content:""; position:absolute; z-index:1; top:50%; right:4px; width:15px; height:15px; border:3px solid #dce7f4; border-radius:50%; background:#fff; transform:translateY(-50%); transition:background .25s,border-color .25s,scale .25s; }
body.page-id-2095 .rs-process-list > .rs-process-step.is-current::before,body.page-id-2095 .rs-process-list > .rs-process-step.is-complete::before { background:#ff5b42; border-color:#ff5b42; scale:1.15; }
body.page-id-2095 .rs-process-list > .rs-process-step.is-complete::before { background:#1265db; border-color:#1265db; }
body.page-id-2095 .rs-scroll-closing { position:relative; }
body.page-id-2095 .rs-conclusion-beam { position:absolute; z-index:2; inset:0 0 auto; height:5px; background:linear-gradient(270deg,#ff5b42,#dff36d 52%,#1265db); transform:scaleX(var(--rs-closing-p,0)); transform-origin:right center; pointer-events:none; }
@media (max-width:767px) {
  body.page-id-2095 .rs-story-rail { display:none; }
  body.page-id-2095 .rs-signal-trace { display:none; }
  body.page-id-2095 .rs-process-list > .rs-process-step { padding-right:30px; }
}
@media (min-width:768px) and (max-width:1100px) {
  body.page-id-2095 .rs-story-rail { display:none; }
  body.page-id-2095 .rs-service-controls { display:flex; margin-top:24px; }
  body.page-id-2095 .resa-halo-service-track { display:flex !important; flex-wrap:nowrap !important; overflow-x:auto !important; scroll-padding-inline:16px; }
  body.page-id-2095 .resa-halo-service-track > .resa-service-card { flex:0 0 clamp(300px,42%,450px) !important; width:clamp(300px,42%,450px) !important; min-width:clamp(300px,42%,450px) !important; max-width:450px; }
}
