/* 0.1.16 – service "What we do" intro (4 service pages, rows 5dac9b7f/18294289/676721af/13b58fa2, list column .fp-svc-list).
   Rule (Chappy): the paragraph block on the left and the tick list on the right share one horizontal centre line;
   the "WHAT WE DO" label and the H2 stay above, outside the centring. Pure CSS from 768px: the row becomes a
   2-column grid, the left column is display:contents so label / H2 / text are grid items (rows 1, 2, 3 of column 1)
   and the list sits in row 3 of column 2; both row-3 items are align-self:center. Replaces the 0.1.15 JS offset.
   Phones (<=767) stack as before. */
body.flowpro .e-con:has(> .e-con-inner > .fp-svc-list),body.flowpro :is(.elementor-element-5dac9b7f,.elementor-element-18294289,.elementor-element-676721af,.elementor-element-13b58fa2){--fp-svc-gap:64px}
@media (min-width:768px){
  body.flowpro .e-con:has(> .e-con-inner > .fp-svc-list) > .e-con-inner,
  body.flowpro :is(.elementor-element-5dac9b7f,.elementor-element-18294289,.elementor-element-676721af,.elementor-element-13b58fa2) > .e-con-inner{display:grid!important;grid-template-columns:minmax(0,58fr) minmax(0,42fr)!important;grid-template-rows:auto auto auto;column-gap:var(--fp-svc-gap)!important;row-gap:0!important;align-items:start!important}
  body.flowpro .e-con-inner > .e-con:has(~ .fp-svc-list),
  body.flowpro :is(.elementor-element-5dac9b7f,.elementor-element-18294289,.elementor-element-676721af,.elementor-element-13b58fa2) > .e-con-inner > .e-con:not(.fp-svc-list):first-child{display:contents!important}
  body.flowpro .e-con-inner > .e-con:has(~ .fp-svc-list) > .elementor-widget,
  body.flowpro :is(.elementor-element-5dac9b7f,.elementor-element-18294289,.elementor-element-676721af,.elementor-element-13b58fa2) > .e-con-inner > .e-con:not(.fp-svc-list):first-child > .elementor-widget{grid-column:1;width:auto!important;max-width:none!important;min-width:0}
  body.flowpro .e-con-inner > .e-con:has(~ .fp-svc-list) > .elementor-widget:nth-child(1){grid-row:1}
  body.flowpro .e-con-inner > .e-con:has(~ .fp-svc-list) > .elementor-widget:nth-child(2){grid-row:2}
  body.flowpro .e-con-inner > .e-con:has(~ .fp-svc-list) > .elementor-widget:nth-child(n+3){grid-row:3;align-self:center!important}
  body.flowpro .e-con-inner > .e-con:has(~ .fp-svc-list) > .elementor-widget:nth-child(n+3) :is(p,ul):last-child{margin-bottom:0}
  body.flowpro .elementor .fp-svc-list,
  body.flowpro :is(.elementor-element-f133d79,.elementor-element-682cca73,.elementor-element-69703a31,.elementor-element-7749dd38){grid-column:2!important;grid-row:3!important;align-self:center!important;width:auto!important;max-width:none!important;padding-top:0!important;padding-bottom:0!important;margin:0!important}
  body.flowpro .fp-svc-list .elementor-widget-text-editor ul{gap:14px}
  body.flowpro .fp-svc-list .elementor-widget-text-editor :is(ul,p){margin-top:0;margin-bottom:0}
}
@media (min-width:768px) and (max-width:1024px){
  body.flowpro .e-con:has(> .e-con-inner > .fp-svc-list),body.flowpro :is(.elementor-element-5dac9b7f,.elementor-element-18294289,.elementor-element-676721af,.elementor-element-13b58fa2){--fp-svc-gap:40px}
}
@media (max-width:767px){
  body.flowpro .elementor .fp-svc-list{padding-top:8px!important}
}

/* 0.1.15 – footer lists (template 41): menu 634fd98a, services 37247cb8, contact 16aaed87.
   Desktop (>=1025): 10px gap between items. Tablet/phone (<=1024, where 0.1.x already makes rows
   44px tap targets): no extra gap, rows are min 44px (~20-23px between text lines). Columns stay top-aligned. */
body.flowpro [data-elementor-type="footer"] :is(.elementor-element-634fd98a,.elementor-element-37247cb8,.elementor-element-16aaed87,.fp-footer-contact,.elementor-widget-icon-list) .elementor-icon-list-items{display:flex!important;flex-direction:column!important;gap:10px!important;margin:0!important;padding:0!important}
body.flowpro [data-elementor-type="footer"] :is(.elementor-element-634fd98a,.elementor-element-37247cb8,.elementor-element-16aaed87,.fp-footer-contact,.elementor-widget-icon-list) .elementor-icon-list-item{padding-top:0!important;padding-bottom:0!important;margin:0!important}
body.flowpro [data-elementor-type="footer"] :is(.elementor-element-634fd98a,.elementor-element-37247cb8,.elementor-element-16aaed87,.fp-footer-contact,.elementor-widget-icon-list) .elementor-icon-list-item::after{display:none!important}
body.flowpro [data-elementor-type="footer"] :is(.elementor-element-1feea1dc,.elementor-element-20191c56,.elementor-element-4ec28028){justify-content:flex-start!important;align-self:flex-start}
body.flowpro [data-elementor-type="footer"] :is(.elementor-element-1c8f002b,.elementor-element-6220440,.elementor-element-7bdce700){margin-bottom:16px!important}
@media (max-width:1024px){
  body.flowpro [data-elementor-type="footer"] :is(.elementor-element-634fd98a,.elementor-element-37247cb8,.elementor-element-16aaed87,.fp-footer-contact,.elementor-widget-icon-list) .elementor-icon-list-items{gap:0!important}
  body.flowpro [data-elementor-type="footer"] :is(.elementor-element-634fd98a,.elementor-element-37247cb8,.elementor-element-16aaed87,.fp-footer-contact,.elementor-widget-icon-list) .elementor-icon-list-item>:is(a,span){min-height:44px!important;display:flex!important;align-items:center!important;padding:0!important}
  body.flowpro [data-elementor-type="footer"] :is(.elementor-element-1c8f002b,.elementor-element-6220440,.elementor-element-7bdce700){margin-bottom:4px!important}
}

/* ===== 0.1.15 – Certificates of Compliance (About, designer block; host = section 42b8caa2 via .fp-coc-host).
   Replaces the 0.1.10 centred navy card rule: the host is now a plain white section, padding 112/80 (64/24 phone),
   hard edge into the navy footer. ===== */
body.flowpro .fp-coc-host{background:#FFFFFF!important;background-image:none!important;padding:112px 80px!important;display:block!important;min-height:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}
body.flowpro .fp-coc-host > :not(.fp-coc){display:none!important}
body.flowpro .fp-coc-host::before,body.flowpro .fp-coc-host::after{display:none!important}
.fp-coc,.fp-coc *{box-sizing:border-box}
.fp-coc{width:100%;font-family:Poppins,Arial,sans-serif;color:#122A47}
.fp-coc__wrap{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.fp-coc p,.fp-coc h2,.fp-coc ul{margin:0}
.fp-coc .fp-coc__eyebrow{display:inline-block;font-size:14px;font-weight:600;line-height:1.3;letter-spacing:.18em;text-transform:uppercase;color:#2152D0;border-left:4px solid #2152D0;padding-left:12px;margin-bottom:20px}
.fp-coc .fp-coc__title{font-family:Poppins,Arial,sans-serif;font-size:52px;line-height:1.1;font-weight:700;color:#122A47;text-align:left;letter-spacing:0}
.fp-coc .fp-coc__title span{color:#2152D0}
.fp-coc .fp-coc__lead{font-size:18px;line-height:1.65;margin-top:24px;color:#33485F;max-width:none;text-align:left}
.fp-coc .fp-coc__list{list-style:none;padding:0;margin-top:36px;display:grid;grid-template-columns:1fr 1fr;gap:16px 24px}
.fp-coc .fp-coc__item{display:flex;align-items:center;gap:14px;font-size:18px;font-weight:600;line-height:1.3;margin:0;padding:0;color:#122A47}
.fp-coc .fp-coc__item::before{display:none}
.fp-coc .fp-coc__tick{flex:none;width:32px;height:32px;border-radius:8px;background:#2152D0;display:grid;place-items:center}
.fp-coc .fp-coc__tick svg{width:18px;height:18px;display:block}
.fp-coc .fp-coc__badges{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.fp-coc .fp-coc__badges span{font-size:14px;font-weight:600;line-height:1.2;padding:10px 18px;border:2px solid #122A47;border-radius:999px;color:#122A47}
body.flowpro .fp-coc a.fp-coc__btn{display:inline-block;margin-top:40px;background:#2152D0;color:#FFFFFF!important;font-weight:600;font-size:17px;line-height:1.3;text-decoration:none!important;padding:16px 40px;border-radius:999px;border:0}
body.flowpro .fp-coc a.fp-coc__btn:hover{background:#104778}
body.flowpro .fp-coc a.fp-coc__btn:focus-visible{outline:3px solid #122A47;outline-offset:3px}
.fp-coc .fp-coc__art{background:#122A47;padding:56px 0;display:flex;justify-content:center;border-radius:12px;position:relative;overflow:hidden}
.fp-coc .fp-coc__art::before{content:"";position:absolute;left:0;bottom:0;width:96px;height:96px;background:#2152D0;border-radius:0 0 0 12px}
.fp-coc .fp-coc__art picture{display:block;position:relative;z-index:1;width:360px;max-width:80%;margin-right:34px}
.fp-coc .fp-coc__art img{display:block;width:100%;height:auto;max-width:100%;border:0;box-shadow:none}
@media (min-width:768px) and (max-width:1024px){
  body.flowpro .fp-coc-host{padding:80px 40px!important}
  .fp-coc__wrap{gap:40px}
  .fp-coc .fp-coc__title{font-size:40px}
  .fp-coc .fp-coc__art{padding:40px 0}
}
@media (max-width:767px){
  body.flowpro .fp-coc-host{padding:64px 24px!important}
  .fp-coc__wrap{grid-template-columns:1fr;gap:40px}
  .fp-coc .fp-coc__title{font-size:34px}
  .fp-coc .fp-coc__lead{font-size:16px;margin-top:18px}
  .fp-coc .fp-coc__list{grid-template-columns:1fr;margin-top:28px;gap:14px}
  .fp-coc .fp-coc__badges{margin-top:28px}
  body.flowpro .fp-coc a.fp-coc__btn{display:block;text-align:center;margin-top:32px}
  .fp-coc .fp-coc__art{padding:40px 0}
  .fp-coc .fp-coc__art picture{width:240px;margin-right:24px}
  .fp-coc .fp-coc__art::before{width:64px;height:64px}
}

/* ===== 0.1.15 – Home info cards, designer Option B (section .fp-area / 6b033d2d, cards .fp-area__card.fp-ic). ===== */
body.flowpro .elementor .fp-area:has(.fp-ic),body.flowpro .elementor-element-6b033d2d:has(.fp-ic){background:#FFFFFF!important;background-image:none!important}
body.flowpro .elementor .fp-area:has(.fp-ic)::before{display:none!important}
body.flowpro .elementor .fp-area__grid:has(.fp-ic){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:28px!important;max-width:1120px!important;width:100%!important;margin-left:auto!important;margin-right:auto!important;align-items:stretch!important}
body.flowpro .elementor .fp-area__card.fp-ic{position:relative!important;display:flex!important;flex-direction:column!important;width:auto!important;max-width:none!important;height:auto!important;background:#122A47!important;background-image:none!important;border:0!important;border-radius:22px!important;padding:14px!important;box-shadow:0 18px 36px rgba(18,42,71,.22)!important;overflow:visible!important;gap:0!important;--padding-top:14px;--padding-right:14px;--padding-bottom:14px;--padding-left:14px}
body.flowpro .elementor .fp-area__card.fp-ic::before{content:""!important;display:block!important;position:absolute!important;left:34px!important;top:0!important;width:72px!important;height:6px!important;background:#2152D0!important;border-radius:0 0 6px 6px!important;z-index:2}
body.flowpro .elementor .fp-area__card.fp-ic::after{display:none!important}
body.flowpro .fp-ic .fp-ic__ph{height:200px;border-radius:14px;overflow:hidden;background:#104778;flex:none;width:100%;margin:0}
body.flowpro .fp-ic .fp-ic__ph img{display:block;width:100%!important;height:200px!important;max-width:none!important;object-fit:cover;object-position:center;border-radius:0;border:0;box-shadow:none}
body.flowpro .elementor .fp-ic > .elementor-widget-icon,body.flowpro .elementor .fp-ic > .fp-area__icon{display:none!important}
body.flowpro .elementor .fp-ic > .elementor-widget{margin:0 14px!important;width:auto!important;max-width:none!important}
body.flowpro .elementor .fp-ic > .elementor-widget-heading{margin-top:26px!important}
body.flowpro .elementor .fp-ic .elementor-heading-title{font-family:Poppins,Arial,sans-serif!important;font-size:22px!important;font-weight:600!important;line-height:1.25!important;color:#FFFFFF!important;text-align:left!important}
body.flowpro .elementor .fp-ic > .elementor-widget-text-editor{margin-top:12px!important;flex:1 1 auto!important;color:#B9CDDE!important;font-size:15.5px!important;line-height:1.65!important;text-align:left!important}
body.flowpro .elementor .fp-ic > .elementor-widget-text-editor p{margin:0;color:#B9CDDE!important}
body.flowpro .elementor .fp-ic > .elementor-widget-button{margin-top:26px!important;margin-bottom:16px!important;align-self:flex-start!important}
body.flowpro .elementor .fp-ic .elementor-button{display:inline-flex!important;align-items:center!important;gap:10px!important;background:#2152D0!important;color:#FFFFFF!important;padding:13px 24px!important;border-radius:999px!important;border:0!important;font-family:Poppins,Arial,sans-serif!important;font-size:15.5px!important;font-weight:600!important;line-height:1.2!important;text-decoration:none!important;box-shadow:none!important}
body.flowpro .elementor .fp-ic .elementor-button:hover{background:#104778!important;color:#FFFFFF!important}
body.flowpro .elementor .fp-ic .elementor-button:focus-visible{outline:3px solid #85ADCA!important;outline-offset:3px}
body.flowpro .elementor .fp-ic .elementor-button-text{color:#FFFFFF!important}
body.flowpro .elementor .fp-ic .elementor-button-text::after{content:""!important;display:inline-block!important;width:18px;height:18px;margin-left:10px;vertical-align:-3px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/18px no-repeat!important;color:transparent!important}
@media (max-width:1024px) and (min-width:761px){
  body.flowpro .elementor .fp-area__grid:has(.fp-ic){gap:20px!important}
  body.flowpro .elementor .fp-ic > .elementor-widget{margin:0 8px!important}
  body.flowpro .elementor .fp-ic .elementor-heading-title{font-size:20px!important}
}
@media (max-width:899px){
  /* 0.1.18: one column below 900px (readable one-line buttons at 768), centred, max 560px. */
  body.flowpro .elementor .fp-area__grid:has(.fp-ic){grid-template-columns:1fr!important;gap:20px!important;max-width:560px!important}
  body.flowpro .elementor .fp-ic > .elementor-widget{margin:0 14px!important}
  body.flowpro .elementor .fp-ic .elementor-heading-title{font-size:22px!important}
}
/* White section: intro heading/text outside the cards in navy/blue (Option B). */
body.flowpro .elementor .fp-area:has(.fp-ic) .elementor-widget-heading:not(.fp-ic *) .elementor-heading-title{color:#122A47!important}
body.flowpro .elementor .fp-area:has(.fp-ic) .elementor-widget-heading:not(.fp-ic *):first-child .elementor-heading-title{color:#2152D0!important}
body.flowpro .elementor .fp-area:has(.fp-ic) .elementor-widget-text-editor:not(.fp-ic *){color:#33485F!important}

/* 0.1.18 – WhatsApp chat panel: fully opaque body. */
body.flowpro .fp-wa .fp-wa__panel,body.flowpro .fp-wa .fp-wa__body,body.flowpro .fp-wa .fp-wa__send{background-color:#ECE5DD!important;background-image:none!important;opacity:1!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
body.flowpro .fp-wa.is-open:not(.is-closing) .fp-wa__panel{opacity:1!important}
