.elementor-6145 .elementor-element.elementor-element-09db9ec{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:column;--justify-items:center;--padding-top:140px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-6145 .elementor-element.elementor-element-64675a0{--display:flex;}.elementor-6145 .elementor-element.elementor-element-881f0cb .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:58px;font-weight:800;line-height:1.08;letter-spacing:-2px;}.elementor-6145 .elementor-element.elementor-element-3b1740e{font-family:"Poppins", Sans-serif;font-size:17px;font-weight:400;line-height:1.7;color:#2B2E3FD9;}.elementor-6145 .elementor-element.elementor-element-dcaf302{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:column;--justify-items:start;--align-items:center;}.elementor-6145 .elementor-element.elementor-element-66fc14c .elementor-button{background-color:var( --e-global-color-accent );font-family:"Poppins", Sans-serif;font-weight:700;border-radius:8px 8px 8px 8px;}.elementor-6145 .elementor-element.elementor-element-a639d16 .elementor-button{background-color:#02010100;fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-style:solid;border-width:2px 2px 2px 2px;}.elementor-6145 .elementor-element.elementor-element-bb78c80{--display:flex;}.elementor-6145 .elementor-element.elementor-element-5c03150{--display:flex;--min-height:0px;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--margin-top:0rem;--margin-bottom:0rem;--margin-left:0rem;--margin-right:0rem;--padding-top:96px;--padding-bottom:96px;--padding-left:0px;--padding-right:0px;}.elementor-6145 .elementor-element.elementor-element-5c03150:not(.elementor-motion-effects-element-type-background), .elementor-6145 .elementor-element.elementor-element-5c03150 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-60860c3 );}.elementor-6145 .elementor-element.elementor-element-3262b65{--grid-row-gap:35px;--grid-column-gap:30px;}.elementor-6145 .elementor-element.elementor-element-3262b65 > .elementor-widget-container{padding:0rem 0rem 2rem 0rem;}.elementor-6145 .elementor-element.elementor-element-3262b65 .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.66 * 100% );}.elementor-6145 .elementor-element.elementor-element-3262b65:after{content:"0.66";}.elementor-6145 .elementor-element.elementor-element-3262b65 .elementor-post__thumbnail__link{width:100%;}.elementor-6145 .elementor-element.elementor-element-3262b65 .elementor-post__meta-data span + span:before{content:"///";}.elementor-6145 .elementor-element.elementor-element-3262b65.elementor-posts--thumbnail-left .elementor-post__thumbnail__link{margin-right:20px;}.elementor-6145 .elementor-element.elementor-element-3262b65.elementor-posts--thumbnail-right .elementor-post__thumbnail__link{margin-left:20px;}.elementor-6145 .elementor-element.elementor-element-3262b65.elementor-posts--thumbnail-top .elementor-post__thumbnail__link{margin-bottom:20px;}.elementor-6145 .elementor-element.elementor-element-3262b65 .elementor-pagination{text-align:center;}body:not(.rtl) .elementor-6145 .elementor-element.elementor-element-3262b65 .elementor-pagination .page-numbers:not(:first-child){margin-left:calc( 10px/2 );}body:not(.rtl) .elementor-6145 .elementor-element.elementor-element-3262b65 .elementor-pagination .page-numbers:not(:last-child){margin-right:calc( 10px/2 );}body.rtl .elementor-6145 .elementor-element.elementor-element-3262b65 .elementor-pagination .page-numbers:not(:first-child){margin-right:calc( 10px/2 );}body.rtl .elementor-6145 .elementor-element.elementor-element-3262b65 .elementor-pagination .page-numbers:not(:last-child){margin-left:calc( 10px/2 );}.elementor-6145 .elementor-element.elementor-element-55dbe5a{--display:flex;--padding-top:96px;--padding-bottom:096px;--padding-left:0px;--padding-right:0px;}.elementor-6145 .elementor-element.elementor-element-55dbe5a:not(.elementor-motion-effects-element-type-background), .elementor-6145 .elementor-element.elementor-element-55dbe5a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-6145 .elementor-element.elementor-element-88e6c85{--display:flex;}@media(max-width:1024px){.elementor-6145 .elementor-element.elementor-element-09db9ec{--grid-auto-flow:row;}.elementor-6145 .elementor-element.elementor-element-dcaf302{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-6145 .elementor-element.elementor-element-09db9ec{--content-width:1200px;}.elementor-6145 .elementor-element.elementor-element-5c03150{--content-width:1200px;}}@media(max-width:767px){.elementor-6145 .elementor-element.elementor-element-09db9ec{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-6145 .elementor-element.elementor-element-dcaf302{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-6145 .elementor-element.elementor-element-3262b65 .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.5 * 100% );}.elementor-6145 .elementor-element.elementor-element-3262b65:after{content:"0.5";}.elementor-6145 .elementor-element.elementor-element-3262b65 .elementor-post__thumbnail__link{width:100%;}}/* Start custom CSS *//* ── HERO ── */
.res-hero {
  min-height: 100vh;
  padding: 140px 5% 80px;
  position: relative; overflow: hidden;
  display: flex; align-items: center;
  background-color: #F5F9FC;
  background-image: radial-gradient(circle, rgba(2,73,115,0.08) 1px, transparent 1px);
  background-size: 32px 32px;
}
.res-hero::before {
  content: '';
  position: absolute;
  top: -20%; left: calc(100% - 630px);
  width: 700px; height: 700px;
  border-radius: 50%;
  background: rgba(233,249,249,0.7);
  z-index: 0; pointer-events: none;
}
.res-hero::after {
  content: '';
  position: absolute;
  bottom: -15%; left: -5%;
  width: 480px; height: 480px;
  border-radius: 50%;
  background: rgba(58,197,206,0.07);
  z-index: 0; pointer-events: none;
}
.res-hero .elementor-container { position: relative; z-index: 1; }
.res-hero .elementor-heading-title,
.res-hero h1 {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 800 !important;
  font-size: clamp(36px, 4.5vw, 58px) !important;
  line-height: 1.08 !important;
  letter-spacing: -2px !important;
  color: #021939 !important;
}

/* Featured card — hero right column */
.res-featured-card {
  background: #021939;
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 24px 64px rgba(2,25,57,0.14), 0 4px 16px rgba(2,25,57,0.08);
  position: relative;
}
.res-featured-card::before {
  content: '';
  position: absolute;
  top: -60px; right: -60px;
  width: 200px; height: 200px;
  border-radius: 50%;
  background: rgba(33,158,188,0.08);
  pointer-events: none;
}
.res-feat-img-wrap {
  height: 200px; overflow: hidden; position: relative;
  background: linear-gradient(135deg,#021939 0%,#0d3460 55%,#1a5276 100%);
  background-image: radial-gradient(circle, rgba(33,158,188,0.12) 1px, transparent 1px);
  background-size: 22px 22px;
  display: flex; align-items: center; justify-content: center;
}
.res-feat-img-wrap img {
  width: 100%; height: 100%;
  object-fit: cover;
  opacity: 0.60;
  position: absolute; inset: 0;
}
.res-feat-tag {
  position: absolute;
  top: 14px; left: 14px;
  background: #219EBC;
  color: #fff;
  font-size: 10px; font-weight: 700;
  letter-spacing: 0.10em; text-transform: uppercase;
  padding: 4px 12px; border-radius: 100px;
  font-family: 'Poppins', sans-serif;
}
.res-feat-content { padding: 28px; position: relative; z-index: 1; }
.res-feat-content h3 {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 800 !important;
  font-size: 19px !important;
  color: #ffffff !important;
  line-height: 1.25 !important;
  letter-spacing: -0.3px !important;
  margin-bottom: 12px !important;
}
.res-feat-content p {
  font-size: 13px !important;
  color: rgba(255,255,255,0.55) !important;
  line-height: 1.65 !important;
  margin-bottom: 20px !important;
}
.res-feat-cta {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-family: 'Poppins', sans-serif !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: #3AC5CE !important;
  text-decoration: none !important;
}

/* Category filter pills */
.res-cat-pill {
  display: inline-block;
  padding: 6px 16px;
  border-radius: 100px;
  font-size: 12px; font-weight: 600;
  border: 1.5px solid rgba(2,73,115,0.15);
  color: rgba(2,25,57,0.55);
  background: #ffffff;
  cursor: pointer;
  transition: all 0.15s;
  font-family: 'Poppins', sans-serif;
  text-decoration: none;
}
.res-cat-pill:hover, .res-cat-pill.active {
  background: #021939;
  border-color: #021939;
  color: #ffffff;
}

/* ── ARTICLES SECTION ── */
.res-articles-section { background: #ffffff !important; }

/* ── ELEMENTOR POSTS WIDGET RESKIN ── */
/* Scope: add class "ai-posts-grid" to the COLUMN wrapping your Posts widget */
.ai-posts-grid .elementor-posts-container {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 28px !important;
}
.ai-posts-grid .elementor-post {
  background: #F5F9FC !important;
  border: 1px solid rgba(2,73,115,0.08) !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  transition: transform 0.2s, box-shadow 0.2s !important;
  display: flex !important;
  flex-direction: column !important;
  box-shadow: none !important;
}
.ai-posts-grid .elementor-post:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 20px 56px rgba(2,25,57,0.12) !important;
}
.ai-posts-grid .elementor-post__thumbnail__link {
  display: block !important;
  aspect-ratio: 16/9 !important;
  overflow: hidden !important;
}
.ai-posts-grid .elementor-post__thumbnail__link img {
  width: 100% !important; height: 100% !important;
  object-fit: cover !important; display: block !important;
  transition: transform 0.4s !important;
}
.ai-posts-grid .elementor-post:hover .elementor-post__thumbnail__link img {
  transform: scale(1.04) !important;
}
.ai-posts-grid .elementor-post__badge {
  position: absolute !important;
  top: 12px !important; right: 12px !important;
  background: #021939 !important;
  color: #ffffff !important;
  font-size: 10px !important; font-weight: 700 !important;
  letter-spacing: 0.10em !important; text-transform: uppercase !important;
  padding: 3px 10px !important; border-radius: 100px !important;
  font-family: 'Poppins', sans-serif !important;
}
.ai-posts-grid .elementor-post__text {
  padding: 24px !important;
  background: #ffffff !important;
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
}
.ai-posts-grid .elementor-post__meta-data {
  font-size: 10px !important; font-weight: 700 !important;
  letter-spacing: 0.10em !important; text-transform: uppercase !important;
  color: #219EBC !important;
  margin-bottom: 8px !important;
}
.ai-posts-grid .elementor-post__title a {
  font-family: 'Poppins', sans-serif !important;
  font-size: 16px !important; font-weight: 700 !important;
  color: #021939 !important;
  line-height: 1.35 !important; letter-spacing: -0.2px !important;
  text-decoration: none !important;
}
.ai-posts-grid .elementor-post__title { margin-bottom: 10px !important; }
.ai-posts-grid .elementor-post__excerpt p {
  font-size: 13px !important;
  color: rgba(43,46,63,0.68) !important;
  line-height: 1.65 !important; font-weight: 300 !important;
  margin-bottom: 18px !important;
}
.ai-posts-grid .elementor-post__read-more {
  display: inline-flex !important; align-items: center !important; gap: 5px !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 11px !important; font-weight: 700 !important;
  letter-spacing: 0.08em !important; text-transform: uppercase !important;
  color: #219EBC !important; text-decoration: none !important;
  margin-top: auto !important;
}
/* Pagination */
.ai-posts-grid .elementor-pagination {
  display: flex !important; align-items: center !important;
  justify-content: center !important; gap: 8px !important;
  margin-top: 56px !important; flex-wrap: wrap !important;
}
.ai-posts-grid .elementor-pagination a,
.ai-posts-grid .elementor-pagination span {
  display: inline-flex !important; align-items: center !important;
  justify-content: center !important;
  min-width: 40px !important; height: 40px !important;
  padding: 0 10px !important; border-radius: 10px !important;
  font-size: 13px !important; font-weight: 600 !important;
  border: 1.5px solid rgba(2,73,115,0.15) !important;
  color: rgba(2,25,57,0.55) !important; background: #ffffff !important;
  text-decoration: none !important;
  font-family: 'Poppins', sans-serif !important;
  transition: all 0.15s !important;
}
.ai-posts-grid .elementor-pagination .current,
.ai-posts-grid .elementor-pagination a:hover {
  background: #021939 !important;
  border-color: #021939 !important;
  color: #ffffff !important;
}
@media(max-width:1024px){
  .ai-posts-grid .elementor-posts-container {
    grid-template-columns: repeat(2,1fr) !important;
  }
}
@media(max-width:520px){
  .ai-posts-grid .elementor-posts-container {
    grid-template-columns: 1fr !important;
  }
}

/* ── DOWNLOADS SECTION — matches deploy-section ── */
.res-downloads-section {
  background: #021939 !important;
  position: relative; overflow: hidden;
}
.res-downloads-section::before {
  content: '';
  position: absolute;
  top: -200px; right: -200px;
  width: 600px; height: 600px;
  border-radius: 50%;
  background: rgba(33,158,188,0.05);
  pointer-events: none;
}
.res-downloads-section .elementor-heading-title,
.res-downloads-section h2 { color: #ffffff !important; }
.res-downloads-section p { color: rgba(255,255,255,0.60) !important; }
.res-downloads-section .section-label { color: #3AC5CE !important; }
.res-dl-card {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 16px;
  padding: 28px 32px;
  display: flex; align-items: center; gap: 20px;
  text-decoration: none;
  transition: background 0.2s, border-color 0.2s;
}
.res-dl-card:hover {
  background: rgba(33,158,188,0.10);
  border-color: rgba(33,158,188,0.25);
}
.res-dl-icon {
  width: 48px; height: 48px; min-width: 48px;
  border-radius: 12px; background: rgba(33,158,188,0.15);
  display: flex; align-items: center; justify-content: center;
  color: #3AC5CE; flex-shrink: 0;
}
.res-dl-info h4 {
  font-family: 'Poppins', sans-serif;
  font-weight: 700; font-size: 15px;
  color: #ffffff; margin-bottom: 4px;
}
.res-dl-info p {
  font-size: 12px; color: rgba(255,255,255,0.42) !important; line-height: 1.5;
}
.res-dl-arrow {
  margin-left: auto; color: rgba(255,255,255,0.20);
  transition: color 0.2s, transform 0.2s; flex-shrink: 0;
}
.res-dl-card:hover .res-dl-arrow { color: #3AC5CE; transform: translateX(4px); }

/* ── NEWSLETTER — matches teal-bg sections ── */
.res-nl-section {
  background: #E9F9F9 !important;
  border-top: 1px solid rgba(33,158,188,0.15);
}
.res-nl-section h2,
.res-nl-section .elementor-heading-title { color: #021939 !important; }

/* WPForms / FluentForms auto-restyling */
.res-nl-section input[type="email"],
.res-nl-section .wpforms-field-email input,
.res-nl-section .ff-el-form-control {
  width: 100% !important;
  background: #ffffff !important;
  border: 1.5px solid rgba(2,73,115,0.15) !important;
  border-radius: 10px !important;
  padding: 14px 18px !important;
  font-size: 15px !important; color: #021939 !important;
  font-family: 'Poppins', sans-serif !important;
  outline: none !important;
  transition: border-color 0.2s, box-shadow 0.2s !important;
}
.res-nl-section input[type="email"]:focus,
.res-nl-section .wpforms-field-email input:focus {
  border-color: #219EBC !important;
  box-shadow: 0 0 0 3px rgba(33,158,188,0.12) !important;
}
.res-nl-section button[type="submit"],
.res-nl-section input[type="submit"],
.res-nl-section .wpforms-submit {
  background: #021939 !important;
  color: #ffffff !important;
  font-family: 'Poppins', sans-serif !important;
  font-weight: 700 !important; font-size: 14px !important;
  padding: 14px 24px !important;
  border-radius: 10px !important; border: none !important;
  cursor: pointer !important; transition: background 0.2s !important;
}

/* ── CTA BANNER — exact match to ai-cta-banner ── */
.res-cta-banner {
  background: #021939 !important;
  position: relative; overflow: hidden; text-align: center;
}
.res-cta-banner::before {
  content: '';
  position: absolute;
  top: -120px; left: 50%;
  transform: translateX(-50%);
  width: 800px; height: 400px;
  border-radius: 50%;
  background: rgba(33,158,188,0.08);
  pointer-events: none;
}
.res-cta-banner .elementor-heading-title,
.res-cta-banner h2 { color: #ffffff !important; }
.res-cta-banner p { color: rgba(255,255,255,0.60) !important; }/* End custom CSS */