/* ThreadNexa 1.1.1: native WordPress layout corrections. */
/* Keep generated paragraph wrappers from splitting inline labels. */
.wp-block-group.eyebrow{display:flex;align-items:center;justify-content:flex-start;gap:10px;min-width:0}
.wp-block-group.eyebrow>p{margin:0;line-height:1.6;font-size:inherit;letter-spacing:inherit}
.wp-block-group.eyebrow>.dot{flex:0 0 6px;width:6px;height:6px;min-height:0;margin:0;padding:0;line-height:0}
.wp-block-group.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:4px 8px;width:auto;margin-left:0;padding:0}
.wp-block-group.breadcrumb>p{flex:0 1 auto;margin:0;padding:0;font-size:inherit;line-height:1.8}
.wp-block-group.breadcrumb>p a{display:inline;padding:0;font-size:inherit}
.wp-block-group.breadcrumb a:after{display:none}
/* Explicit selectors outrank WordPress flow-layout margin resets. */
.wp-block-group.service{--tnx-card-x:26px;--tnx-card-top:25px;display:flex;flex-direction:column;min-width:0}
.wp-block-group.service>.wp-block-group.service-photo{flex:0 0 auto;width:calc(100% + 2 * var(--tnx-card-x));max-width:none;height:195px;margin:calc(-1 * var(--tnx-card-top)) calc(-1 * var(--tnx-card-x)) 23px;padding:0;border-radius:15px 15px 0 0}
.wp-block-group.service-photo>.wp-block-image{display:block;width:100%;height:100%;margin:0}
.wp-block-group.service-photo>.wp-block-image img{display:block;width:100%;height:100%;object-fit:cover}
.wp-block-group.service>.service-num{min-height:0;margin:0 0 18px;line-height:1.4}
.wp-block-group.service>h3{margin:0 0 14px}
.wp-block-group.service>p:not(.service-num):not(.pills):not(.card-link){min-height:0;margin:0 0 22px;line-height:1.85}
.wp-block-group.service>.pills{min-height:0;margin:0 0 16px;line-height:1.6}
.wp-block-group.service>.card-link{min-height:0;margin:auto 0 0;padding-top:4px}
.wp-block-group#industry-panel{--tnx-panel-x:37px;--tnx-panel-top:35px;min-width:0}
.wp-block-group#industry-panel>.wp-block-group.industry-photo{width:calc(100% + 2 * var(--tnx-panel-x));max-width:none;height:210px;margin:calc(-1 * var(--tnx-panel-top)) calc(-1 * var(--tnx-panel-x)) 28px;padding:0;overflow:hidden}
.wp-block-group.industry-photo>.wp-block-image{width:100%;height:100%;margin:0}
.wp-block-group.industry-photo>.wp-block-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 48%}
.industry-layout>.tnx-industry-links{align-self:start}
/* Let labels participate in the grid even when CF7 wraps them all in one p. */
.tnx-contact-form,.tnx-contact-form>.wpcf7,.tnx-contact-form .wpcf7-form{width:100%;min-width:0;max-width:100%;box-sizing:border-box}
.tnx-contact-form .tnx-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;width:100%;min-width:0}
.tnx-contact-form .tnx-form-grid>p{display:contents;margin:0;padding:0}
.tnx-contact-form .tnx-form-grid br{display:none}
.tnx-contact-form .tnx-form-grid label{display:block;width:100%;min-width:0;margin:0;line-height:1.6}
.tnx-contact-form .tnx-form-grid .tnx-form-wide{grid-column:1/-1}
.tnx-contact-form .wpcf7-form-control-wrap{display:block;width:100%;min-width:0}
.tnx-contact-form input:not([type=submit]),.tnx-contact-form select,.tnx-contact-form textarea{display:block;min-width:0;max-width:100%;box-sizing:border-box}
.tnx-contact-form input[type=file]{font-size:12px;white-space:normal;overflow-wrap:anywhere}
.tnx-contact-form textarea{min-height:150px;resize:vertical}
.quote>.wp-block-group.container{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)}
/* Stable portfolio columns and native table cell spacing. */
.wp-block-group.gallery,.wp-block-group.portfolio-preview-grid,.wp-block-group.portfolio-grid{width:100%;min-width:0;grid-template-columns:repeat(3,minmax(0,1fr))}
.wp-block-group.gallery>article,.wp-block-group.portfolio-preview-grid>div,.wp-block-group.portfolio-grid>div{min-width:0;margin-block:0}
.wp-block-group.gallery .wp-block-image,.wp-block-group.portfolio-preview-grid .wp-block-image{width:100%;margin:0}
.wp-block-group.gallery h3,.wp-block-group.portfolio-preview-grid h3{margin-top:18px;margin-bottom:8px}
body .wp-block-table{max-width:100%;margin:0;overflow-x:auto;-webkit-overflow-scrolling:touch}
body .wp-block-table table{width:100%;border-collapse:collapse;min-width:660px;table-layout:auto}
body .wp-block-table th,body .wp-block-table td{padding:16px 22px;border:0;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.8;font-size:12px;overflow-wrap:break-word}
body .wp-block-table th{background:var(--navy);color:white;text-align:left;font-weight:600}
body .wp-block-table td{color:var(--muted)}
body .wp-block-table td:first-child{color:var(--ink);font-weight:500}
body .wp-block-table tbody tr:last-child td{border-bottom:0}
/* Room for service titles and centred disclosure icons. */
.threadnexa-navigation .wp-block-navigation__submenu-container{min-width:280px;max-width:min(340px,calc(100vw - 32px));padding:10px}
.threadnexa-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content{display:block;box-sizing:border-box;width:100%;padding:10px 12px;line-height:1.5;white-space:normal}
.threadnexa-navigation .wp-block-navigation-item{align-items:center}
.threadnexa-navigation .wp-block-navigation-submenu__toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 18px;width:18px;height:24px;margin:0;padding:0;line-height:1;vertical-align:middle}
.threadnexa-navigation .wp-block-navigation-submenu__toggle svg{display:block;width:12px;height:12px}
@media(max-width:1100px){.wp-block-group.service{--tnx-card-x:22px;--tnx-card-top:23px}.wp-block-group.service>.wp-block-group.service-photo{height:175px;margin-bottom:20px}}
@media(max-width:1000px){.threadnexa-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container{width:100%;min-width:0;max-width:100%;padding:4px 0 8px 14px}.threadnexa-navigation .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu__toggle{display:none}}
@media(max-width:900px){.tnx-contact-form .tnx-form-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:850px){.wp-block-group.service{--tnx-card-x:23px;--tnx-card-top:23px}.wp-block-group.service>.wp-block-group.service-photo{height:200px;margin-bottom:22px}.wp-block-group#industry-panel{--tnx-panel-x:28px;--tnx-panel-top:28px}.wp-block-group#industry-panel>.wp-block-group.industry-photo{height:195px;margin-bottom:25px}}
@media(max-width:780px){.quote>.wp-block-group.container{grid-template-columns:minmax(0,1fr);gap:32px}.wp-block-group.gallery,.wp-block-group.portfolio-preview-grid,.wp-block-group.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.wp-block-group.service{--tnx-card-x:24px;--tnx-card-top:24px}.wp-block-group.service>.wp-block-group.service-photo{height:210px;margin-bottom:21px}.wp-block-group#industry-panel{--tnx-panel-x:26px;--tnx-panel-top:26px}.wp-block-group#industry-panel>.wp-block-group.industry-photo{height:210px;margin-bottom:25px}.wp-block-group.gallery,.wp-block-group.portfolio-preview-grid,.wp-block-group.portfolio-grid{grid-template-columns:minmax(0,1fr)}.tnx-contact-form .tnx-form-grid{gap:18px}.wp-block-group.eyebrow{gap:8px}.wp-block-group.breadcrumb{gap:3px 6px}body .wp-block-table th,body .wp-block-table td{padding:13px 16px}}
/* Original application tabs, restored as tabs rather than navigation buttons. */
.industry-tabs.tnx-interactive-tabs{display:flex;flex-direction:column;align-self:start;gap:0;width:100%;margin:0}
.industry-tabs.tnx-interactive-tabs>.industry-tab{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;margin:0;padding:21px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none;color:#7e8e9f;font:600 18px/1.75 Manrope,Arial,sans-serif;text-align:left;cursor:pointer;transition:color .2s,padding .25s}
.industry-tabs.tnx-interactive-tabs>.industry-tab.selected{color:var(--blue);padding-left:14px}
.industry-tabs.tnx-interactive-tabs>.industry-tab:hover{color:var(--blue)}
.industry-tabs.tnx-interactive-tabs>.industry-tab:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.industry-tabs.tnx-interactive-tabs>.industry-tab>span:last-child{flex:0 0 auto}
@media(max-width:850px){.industry-tabs.tnx-interactive-tabs>.industry-tab{font-size:16px}}
@media(max-width:600px){.industry-tabs.tnx-interactive-tabs>.industry-tab{font-size:17px;padding-block:17px}}
@media(prefers-reduced-motion:reduce){.industry-tabs.tnx-interactive-tabs>.industry-tab{transition:none}}
