/* Kadence Row Layout adapters for editor-owned Sircal structures. */
.wp-block-kadence-rowlayout.sircal-about-grid,.wp-block-kadence-rowlayout.sircal-own-grid,.wp-block-kadence-rowlayout.sircal-svc-grid,.wp-block-kadence-rowlayout.sircal-why-grid,.wp-block-kadence-rowlayout.sircal-logo-row{display:block;grid-template-columns:none}
.wp-block-kadence-rowlayout.sircal-about-grid>.kt-row-column-wrap,.wp-block-kadence-rowlayout.sircal-own-grid>.kt-row-column-wrap{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:104px}
.wp-block-kadence-rowlayout.sircal-svc-grid>.kt-row-column-wrap{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}
.wp-block-kadence-rowlayout.sircal-why-grid>.kt-row-column-wrap{grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 72px}
.wp-block-kadence-rowlayout.sircal-logo-row>.kt-row-column-wrap{grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}
.wp-block-kadence-single-icon.sircal-native-icon{color:var(--sircal-gold);justify-content:flex-start;margin-bottom:20px}
@media(max-width:1024px){.wp-block-kadence-rowlayout.sircal-about-grid>.kt-row-column-wrap,.wp-block-kadence-rowlayout.sircal-own-grid>.kt-row-column-wrap{gap:56px}}
@media(max-width:767px){.wp-block-kadence-rowlayout.sircal-about-grid>.kt-row-column-wrap,.wp-block-kadence-rowlayout.sircal-own-grid>.kt-row-column-wrap,.wp-block-kadence-rowlayout.sircal-svc-grid>.kt-row-column-wrap,.wp-block-kadence-rowlayout.sircal-why-grid>.kt-row-column-wrap{grid-template-columns:minmax(0,1fr)}.wp-block-kadence-rowlayout.sircal-logo-row>.kt-row-column-wrap{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:768px){.wp-block-kadence-rowlayout.sircal-svc-grid>.kt-row-column-wrap{grid-template-columns:repeat(5,minmax(0,1fr))}}
.wp-block-kadence-rowlayout.sircal-svc-grid>.kt-row-column-wrap{align-items:stretch}.wp-block-kadence-rowlayout.sircal-svc-grid>.kt-row-column-wrap>.wp-block-kadence-column{height:100%}.wp-block-kadence-rowlayout.sircal-svc-grid .sircal-svc-card{height:100%}
/* Who We Are: Kadence structure wrappers preserve the approved full-width design. */
.wp-block-kadence-rowlayout.sircal-who-kadence-row>.kt-row-column-wrap{padding:0;gap:0;max-width:none}
.wp-block-kadence-rowlayout.sircal-who-kadence-row>.kt-row-column-wrap>.wp-block-kadence-column>.kt-inside-inner-col{height:100%}
/* What We Do: Kadence structure wrappers preserve approved full-width bands. */
.wp-block-kadence-rowlayout.sircal-wwd-kadence-row>.kt-row-column-wrap{padding:0;gap:0;max-width:none}
.wp-block-kadence-rowlayout.sircal-wwd-kadence-row>.kt-row-column-wrap>.wp-block-kadence-column>.kt-inside-inner-col{height:100%}
/* Our Projects: Kadence wrappers preserve approved full-width bands and modal/filter layout. */
.wp-block-kadence-rowlayout.sircal-projects-kadence-row>.kt-row-column-wrap{padding:0;gap:0;max-width:none}
.wp-block-kadence-rowlayout.sircal-projects-kadence-row>.kt-row-column-wrap>.wp-block-kadence-column>.kt-inside-inner-col{height:100%}
/* Careers: Kadence wrappers preserve approved full-width career bands. */
.wp-block-kadence-rowlayout.sircal-careers-kadence-row>.kt-row-column-wrap{padding:0;gap:0;max-width:none}
.wp-block-kadence-rowlayout.sircal-careers-kadence-row>.kt-row-column-wrap>.wp-block-kadence-column>.kt-inside-inner-col{height:100%}
/* Contact: Kadence wrappers preserve approved full-width contact bands. */
.wp-block-kadence-rowlayout.sircal-contact-kadence-row>.kt-row-column-wrap{padding:0;gap:0;max-width:none}
.wp-block-kadence-rowlayout.sircal-contact-kadence-row>.kt-row-column-wrap>.wp-block-kadence-column>.kt-inside-inner-col{height:100%}


/* v1.0.6: Home visual parity repair (2026-09-15).
 * The Kadence rebuild wrapped legacy flex/grid components in wp-block-group
 * inner containers, so rules declared on .sircal-* wrappers sized one wrapper
 * child instead of the items. Move those layouts down a level, fix the
 * own-grid column ratio, and restore the production icon set (Kadence
 * single-icon blocks carried fe_clipboard/fe_layers placeholders). */
body.home .wp-block-group.sircal-own-tiles { display:block; background:none; border:none; border-radius:0; overflow:visible; }
body.home .sircal-own-tiles > .wp-block-group__inner-container { display:grid; grid-template-columns:1fr 1fr; gap:1px; background:rgba(255,255,255,0.12); border:1px solid rgba(255,255,255,0.12); border-radius:8px; overflow:hidden; }
body.home .wp-block-group.sircal-esop { display:block; }
body.home .sircal-esop > .wp-block-group__inner-container { display:flex; align-items:center; gap:14px; }
body.home .sircal-esop .wp-block-kadence-single-icon { margin-bottom:0; }
body.home .wp-block-group.sircal-cta-row { display:block; }
body.home .sircal-cta-row > .wp-block-group__inner-container { display:flex; align-items:center; justify-content:space-between; gap:48px; flex-wrap:wrap; }
body.home .wp-block-group.sircal-featured-head { display:block; }
body.home .sircal-featured-head > .wp-block-group__inner-container { display:flex; justify-content:space-between; align-items:flex-end; flex-wrap:wrap; gap:28px; }
body.home .wp-block-kadence-rowlayout.sircal-own-grid > .kt-row-column-wrap { grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); }
body.home .sircal-why-grid > .kt-row-column-wrap > .wp-block-kadence-column:nth-of-type(1) .kb-svg-icon-wrap { display:block; width:32px; height:32px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5b81c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2'%3E%3C/path%3E%3Ccircle cx='9' cy='7' r='4'%3E%3C/circle%3E%3Cpath d='M22 21v-2a4 4 0 0 0-3-3.87'%3E%3C/path%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'%3E%3C/path%3E%3C/svg%3E") no-repeat center / contain; }
body.home .sircal-why-grid > .kt-row-column-wrap > .wp-block-kadence-column:nth-of-type(1) .kb-svg-icon-wrap svg { display:none; }
body.home .sircal-why-grid > .kt-row-column-wrap > .wp-block-kadence-column:nth-of-type(2) .kb-svg-icon-wrap { display:block; width:32px; height:32px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5b81c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z'%3E%3C/path%3E%3Cpath d='m9 12 2 2 4-4'%3E%3C/path%3E%3C/svg%3E") no-repeat center / contain; }
body.home .sircal-why-grid > .kt-row-column-wrap > .wp-block-kadence-column:nth-of-type(2) .kb-svg-icon-wrap svg { display:none; }
body.home .sircal-why-grid > .kt-row-column-wrap > .wp-block-kadence-column:nth-of-type(3) .kb-svg-icon-wrap { display:block; width:32px; height:32px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5b81c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m15.477 12.89 1.515 8.526a.5.5 0 0 1-.81.47l-3.58-2.687a1 1 0 0 0-1.197 0l-3.586 2.686a.5.5 0 0 1-.81-.469l1.514-8.526'%3E%3C/path%3E%3Ccircle cx='12' cy='8' r='6'%3E%3C/circle%3E%3C/svg%3E") no-repeat center / contain; }
body.home .sircal-why-grid > .kt-row-column-wrap > .wp-block-kadence-column:nth-of-type(3) .kb-svg-icon-wrap svg { display:none; }
body.home .sircal-why-grid > .kt-row-column-wrap > .wp-block-kadence-column:nth-of-type(4) .kb-svg-icon-wrap { display:block; width:32px; height:32px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5b81c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3h12l4 6-10 13L2 9Z'%3E%3C/path%3E%3Cpath d='M11 3 8 9l4 13 4-13-3-6'%3E%3C/path%3E%3Cpath d='M2 9h20'%3E%3C/path%3E%3C/svg%3E") no-repeat center / contain; }
body.home .sircal-why-grid > .kt-row-column-wrap > .wp-block-kadence-column:nth-of-type(4) .kb-svg-icon-wrap svg { display:none; }
body.home .sircal-why-grid > .kt-row-column-wrap > .wp-block-kadence-column:nth-of-type(5) .kb-svg-icon-wrap { display:block; width:32px; height:32px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5b81c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m11 17 2 2a1 1 0 1 0 3-3'%3E%3C/path%3E%3Cpath d='m14 14 2.5 2.5a1 1 0 1 0 3-3l-3.88-3.88a3 3 0 0 0-4.24 0l-.88.88a1 1 0 1 1-3-3l2.81-2.81a5.79 5.79 0 0 1 7.06-.87l.47.28a2 2 0 0 0 1.42.25L21 4'%3E%3C/path%3E%3Cpath d='m21 3 1 11h-2'%3E%3C/path%3E%3Cpath d='M3 3 2 14l6.5 6.5a1 1 0 1 0 3-3'%3E%3C/path%3E%3Cpath d='M3 4h8'%3E%3C/path%3E%3C/svg%3E") no-repeat center / contain; }
body.home .sircal-why-grid > .kt-row-column-wrap > .wp-block-kadence-column:nth-of-type(5) .kb-svg-icon-wrap svg { display:none; }
body.home .sircal-svc-grid > .kt-row-column-wrap > .wp-block-kadence-column:nth-of-type(1) .kb-svg-icon-wrap { display:block; width:32px; height:32px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5b81c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m15 12-8.373 8.373a1 1 0 1 1-3-3L12 9'%3E%3C/path%3E%3Cpath d='m18 15 4-4'%3E%3C/path%3E%3Cpath d='m21.5 11.5-1.914-1.914A2 2 0 0 1 19 8.172V7l-2.26-2.26a6 6 0 0 0-4.202-1.756L9 2.96l.92.82A6.18 6.18 0 0 1 12 8.4V10l2 2h1.172a2 2 0 0 1 1.414.586L18.5 14.5'%3E%3C/path%3E%3C/svg%3E") no-repeat center / contain; }
body.home .sircal-svc-grid > .kt-row-column-wrap > .wp-block-kadence-column:nth-of-type(1) .kb-svg-icon-wrap svg { display:none; }
body.home .sircal-svc-grid > .kt-row-column-wrap > .wp-block-kadence-column:nth-of-type(2) .kb-svg-icon-wrap { display:block; width:32px; height:32px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5b81c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'%3E%3C/rect%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'%3E%3C/path%3E%3Cpath d='M12 11h4'%3E%3C/path%3E%3Cpath d='M12 16h4'%3E%3C/path%3E%3Cpath d='M8 11h.01'%3E%3C/path%3E%3Cpath d='M8 16h.01'%3E%3C/path%3E%3C/svg%3E") no-repeat center / contain; }
body.home .sircal-svc-grid > .kt-row-column-wrap > .wp-block-kadence-column:nth-of-type(2) .kb-svg-icon-wrap svg { display:none; }
body.home .sircal-svc-grid > .kt-row-column-wrap > .wp-block-kadence-column:nth-of-type(3) .kb-svg-icon-wrap { display:block; width:32px; height:32px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5b81c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z'%3E%3C/path%3E%3Cpath d='M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12'%3E%3C/path%3E%3Cpath d='M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17'%3E%3C/path%3E%3C/svg%3E") no-repeat center / contain; }
body.home .sircal-svc-grid > .kt-row-column-wrap > .wp-block-kadence-column:nth-of-type(3) .kb-svg-icon-wrap svg { display:none; }
body.home .sircal-svc-grid > .kt-row-column-wrap > .wp-block-kadence-column:nth-of-type(4) .kb-svg-icon-wrap { display:block; width:32px; height:32px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5b81c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='16' height='6' x='2' y='2' rx='2'%3E%3C/rect%3E%3Cpath d='M10 16v-2a2 2 0 0 1 2-2h8a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2'%3E%3C/path%3E%3Crect width='4' height='6' x='8' y='16' rx='1'%3E%3C/rect%3E%3C/svg%3E") no-repeat center / contain; }
body.home .sircal-svc-grid > .kt-row-column-wrap > .wp-block-kadence-column:nth-of-type(4) .kb-svg-icon-wrap svg { display:none; }
body.home .sircal-svc-grid > .kt-row-column-wrap > .wp-block-kadence-column:nth-of-type(5) .kb-svg-icon-wrap { display:block; width:32px; height:32px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5b81c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6.3 20.3a2.4 2.4 0 0 0 3.4 0L12 18l-6-6-2.3 2.3a2.4 2.4 0 0 0 0 3.4Z'%3E%3C/path%3E%3Cpath d='m2 22 3-3'%3E%3C/path%3E%3Cpath d='M7.5 13.5 10 11'%3E%3C/path%3E%3Cpath d='M10.5 16.5 13 14'%3E%3C/path%3E%3Cpath d='m18 3-4 4h6l-4 4'%3E%3C/path%3E%3C/svg%3E") no-repeat center / contain; }
body.home .sircal-svc-grid > .kt-row-column-wrap > .wp-block-kadence-column:nth-of-type(5) .kb-svg-icon-wrap svg { display:none; }
body.home .sircal-esop .kb-svg-icon-wrap { display:block; width:22px; height:22px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f5b81c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.85 8.62a4 4 0 0 1 4.78-4.77 4 4 0 0 1 6.74 0 4 4 0 0 1 4.78 4.78 4 4 0 0 1 0 6.74 4 4 0 0 1-4.77 4.78 4 4 0 0 1-6.75 0 4 4 0 0 1-4.78-4.77 4 4 0 0 1 0-6.76Z'%3E%3C/path%3E%3Cpath d='m9 12 2 2 4-4'%3E%3C/path%3E%3C/svg%3E") no-repeat center / contain; }
body.home .sircal-esop .kb-svg-icon-wrap svg { display:none; }

/* v1.0.7: Kadence's content.min.css gives every non-last .wp-block-group / figure /
 * button inside .single-content a 32px bottom margin, and global.min.css pads
 * alignfull cover inners by 24px each side. The approved preview used plain divs,
 * which those rules never matched, so rebuilt group components drift. Restore
 * component-owned spacing on Home. */
body.home .sircal-own-tiles .wp-block-group.sircal-own-tile { margin-bottom:0; }
body.home .sircal-cta-row > .wp-block-group__inner-container > .wp-block-group { margin-bottom:0; }
body.home .wp-block-group.sircal-cta-dash { margin-bottom:24px; }
body.home .wp-block-group.sircal-featured-head { margin-bottom:56px; }
body.home .wp-block-group.sircal-esop { margin-top:36px; }
body.home .alignfull > .wp-block-cover__inner-container { padding-left:0; padding-right:0; }

/* v1.0.8: residual Home parity: featured head inner wrapper margin, ESOP intro
 * copy size (inline style lost in rebuild), icon block spacing to match the
 * preview's flush SVGs. */
body.home .sircal-featured-head > .wp-block-group__inner-container > .wp-block-group { margin-bottom:0; }
body.home .sircal-own .sircal-body-copy { font-size:1.1875rem; margin:0; }
body.home .wp-block-kadence-single-icon.sircal-native-icon { margin-bottom:0; }
body.home .sircal-svc-grid .wp-block-kadence-column,
body.home .sircal-svc-grid .kt-inside-inner-col { height:100%; }
body.home .sircal-svc-grid .sircal-svc-card { height:100%; }

/* v1.0.9: the preview's uniform 32px rhythm between Home sections lived on
 * margins between core blocks; the top-level Kadence rows carry no margins.
 * Restore the section gaps. */
body.home .entry-content > .wp-block-kadence-rowlayout + .wp-block-kadence-rowlayout { margin-top:32px; }

/* v1.0.10: production's ESOP cover dims its photo at 50%; the rebuilt block
 * carries dim-90. Match production. Also center the own-grid columns like the
 * preview's flex row, and make the About photo fill its column height. */
.sircal-own .wp-block-cover__background.has-background-dim { opacity:0.5 !important; }
body.home .sircal-own-grid > * { align-self:center; }
body.home .sircal-about .sircal-about-img { height:100%; }
body.home .sircal-about .sircal-about-img img { height:100%; width:100%; object-fit:cover; }

/* v1.0.11: mobile - stack the About/Own/Services grids to one column like the
 * preview, and stop the v1.0.5 fixed-height sections' inner margins from
 * inflating their wrappers (the v1.0.9 top-level row gaps now own spacing). */
@media (max-width: 767px) {
 body.home .wp-block-kadence-rowlayout.sircal-about-grid > .kt-row-column-wrap,
 body.home .wp-block-kadence-rowlayout.sircal-own-grid > .kt-row-column-wrap,
 body.home .wp-block-kadence-rowlayout.sircal-svc-grid > .kt-row-column-wrap { grid-template-columns: minmax(0, 1fr) !important; }
 body.home .sircal-about, body.home .sircal-own, body.home .sircal-services, body.home .sircal-cta { margin-top: 0 !important; }
}

/* v1.0.12: cap the About, Services and Why row wraps to the shared 1400px
 * content grid. The rebuild left these three rows unboxed, so past ~1440px
 * their content ran to the viewport edges while every other section aligned. */
body.home .wp-block-kadence-rowlayout.sircal-about-grid > .kt-row-column-wrap,
body.home .wp-block-kadence-rowlayout.sircal-svc-grid > .kt-row-column-wrap,
body.home .wp-block-kadence-rowlayout.sircal-why-grid > .kt-row-column-wrap {
 max-width: 1488px; margin-left: auto; margin-right: auto;
 padding-left: 44px; padding-right: 44px; box-sizing: border-box;
}

/* v1.0.13: wide-viewport parity. Production's services grid flows 5-up when
 * the row is wide enough; use auto-fit so staging follows. Restore the About
 * figure's explicit heights (the v1.0.10 100% fill only needed to cover the
 * img itself) so the section keeps its 840px geometry at any width. */
body.home .wp-block-kadence-rowlayout.sircal-svc-grid > .kt-row-column-wrap { grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
body.home .sircal-about .sircal-about-img { height: 600px; }
@media (max-width: 767px) {
 body.home .sircal-about .sircal-about-img { height: 380px; }
 body.home .wp-block-kadence-rowlayout.sircal-svc-grid > .kt-row-column-wrap { grid-template-columns: minmax(0, 1fr) !important; }
}


/* v1.0.14: Who We Are parity - restore the 32px section rhythm lost when the
 * page was wrapped in Kadence rows (Kadence's 32px content margins only target
 * core blocks, not row layouts), even CTA internals, uniform value/team cards. */
.entry-content > .sircal-who-kadence-row + .sircal-who-kadence-row { margin-top:32px !important; }
.sircal-cta-gold .sircal-cta-row > .wp-block-group { margin-bottom:0; }
.sircal-values-grid > .wp-block-group__inner-container { grid-auto-rows:1fr; }
.sircal-value-card { box-sizing:border-box; height:100%; margin:0 !important; }
/* v0.9.9 restore: uniform team cards (block dropped in the v1.0.0 rewrite). */
.sircal-team-grid > .wp-block-group__inner-container { grid-auto-rows: 1fr; }
.sircal-team-card { box-sizing: border-box; height: 100%; margin: 0 !important; }
.sircal-team-card > .wp-block-group__inner-container { height: 100%; display: flex; flex-direction: column; }
.sircal-team-card .sircal-team-meta { flex: 1; }
/* Single-column layout: let each card fit its own content instead of
 * stretching every card to the tallest one. */
@media (max-width: 767px) {
	.sircal-team-grid > .wp-block-group__inner-container { grid-auto-rows: auto; }
}
