/*
 * Industry directory styles. Preserve the Field Guide brand and shared spacing.
 * The index, photo/copy rows, Common ground, and next-step sections are reusable layouts.
 * Mobile index/hero grids are owned by mobile-patterns.css; avoid restoring an older
 * sticky height or horizontal strip that creates a large gap or sideways overflow.
 */
.industries-overview .concept-bar .ms-icon{font-size:14px}.overview-hero{background:radial-gradient(ellipse at 72% 26%,#14536988,transparent 65%),#082c41;color:#fff;padding-bottom:25px}.overview-hero-heading{display:grid;grid-template-columns:1.55fr 1fr;gap:6%;align-items:end;padding:36px 0 47px}.overview-hero .ip-label{color:#8cd9da;font-size:.69rem;margin-bottom:25px}.overview-hero h1{font-size:clamp(3.1rem,4.8vw,5.1rem);letter-spacing:-.066em;margin-bottom:0;line-height:1.12}.overview-hero h1 em{color:#69d9d4}.overview-hero-intro p{color:var(--body-text-on-dark);font-size:1.05rem;line-height:1.8;max-width:420px;margin:0 0 24px}.overview-hero-intro .motion-cta{min-height:46px;font-size:.8rem}.overview-hero-intro .motion-cta-icon{height:46px;width:46px}.industry-filmstrip{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;position:relative}.filmstrip-frame{position:relative;display:block;aspect-ratio:.85;max-height:270px;overflow:hidden;background:#0b4255;isolation:isolate;outline-offset:3px!important}.filmstrip-frame img{position:absolute;width:100%;height:100%;object-fit:cover;filter:saturate(.66);transition:filter .6s,opacity .6s;opacity:.82;z-index:-2}.filmstrip-frame:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(transparent 40%,#021d2deb),linear-gradient(#09344955,transparent 50%);transition:opacity .6s}.filmstrip-frame:after{content:"";position:absolute;inset:0;border:1px solid #8aeae000;transition:border-color .5s;pointer-events:none}.filmstrip-frame:hover img,.filmstrip-frame:focus-visible img{filter:saturate(.9);opacity:1}.filmstrip-frame:hover:after,.filmstrip-frame:focus-visible:after{border-color:#86e4da9e}.filmstrip-number{position:absolute;left:18px;top:17px;font-size:.64rem;letter-spacing:.1em;color:#a4e4e4}.filmstrip-label{position:absolute;inset:auto 18px 19px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:.74rem;font-weight:700;line-height:1.3;color:#e4f7f8}.filmstrip-title{min-width:0;flex:1;white-space:normal;overflow-wrap:normal}.filmstrip-label .ms-icon{flex:none;align-self:center;color:#7cded7;font-size:19px}.filmstrip-thread{position:absolute;left:0;right:0;top:43%;height:1px;background:#81e8e22e;pointer-events:none;overflow:hidden}.filmstrip-thread i{position:absolute;left:-10%;width:10%;height:1px;background:linear-gradient(90deg,transparent,#a5fff4);animation:ip-packet 14s linear infinite}.filmstrip-thread i+ i{animation-delay:-7s}.overview-hero-foot{display:flex;justify-content:space-between;gap:25px;color:#82bdc8;font-size:.61rem;font-weight:700;letter-spacing:.14em;padding-top:20px}.overview-directory{padding-bottom:95px!important}.directory-layout{display:grid;grid-template-columns:215px minmax(0,1fr);gap:5%}.directory-index{position:sticky;top:188px;align-self:start;padding-top:3px}.directory-index>span{display:block;font-size:.62rem;color:#6592a1;letter-spacing:.15em;font-weight:700;margin-bottom:23px}.directory-index nav{display:flex;flex-direction:column;gap:0}.directory-index a{display:grid;grid-template-columns:1fr 5px;gap:12px;align-items:start;font-size:.81rem;color:#5f7e8b;line-height:1.5;padding:13px 0;border-bottom:1px solid #e0ebed;transition:color .4s}.directory-index a>span{font-size:.61rem;color:#5399a9;line-height:2}.directory-index a>i{width:4px;height:4px;background:#1cafb7;align-self:center;opacity:0;transform:translateX(-8px);transition:transform .4s,opacity .4s}.directory-index a[aria-current]{color:#077f96}.directory-index a:is(:hover,:focus-visible){color:var(--link-hover)}.directory-index a[aria-current]>i{opacity:1;transform:none}.directory-index-note{display:flex;align-items:center;gap:17px;margin-top:35px;color:#74a6b0}.directory-index-note>.ms-icon{font-size:30px;color:#3c9daa}.directory-index-note>p{font-size:.68rem;line-height:1.75;letter-spacing:.02em;margin:0}.directory-entries{min-width:0}.directory-entry{display:grid;grid-template-columns:.85fr 1.15fr;gap:35px;padding:0 0 45px;margin-bottom:45px;border-bottom:1px solid #c8dde3;scroll-margin-top:190px;position:relative}.directory-photo{position:relative;min-height:320px;align-self:stretch;overflow:hidden;isolation:isolate;background:#0e3c50}.directory-photo img{position:absolute;inset:0;object-fit:cover;width:100%;height:100%;z-index:-2;filter:saturate(.72)}.directory-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#041f30e3,transparent 50%,#041f3033);z-index:-1}.directory-photo .image-corners{inset:18px;background-size:27px 1px,1px 27px,27px 1px,1px 27px,27px 1px,1px 27px,27px 1px,1px 27px;opacity:.55;transition:opacity .6s}.directory-entry:hover .image-corners{opacity:.95}.directory-photo-code{position:absolute;left:30px;top:31px;color:#b9ecec;font-size:.61rem;letter-spacing:.13em}.directory-photo-caption{position:absolute;bottom:32px;left:30px;right:28px;color:#bbebeb;font-size:.55rem;letter-spacing:.14em;line-height:1.9;max-width:170px}.directory-copy{padding:4px 0 3px;min-width:0}.directory-name{display:flex;justify-content:flex-end;align-items:center;color:#3896a3;font-size:.64rem;letter-spacing:.1em;margin-bottom:15px}.directory-name>.ms-icon{font-size:25px;color:#168aa2}.directory-copy h3{font-size:clamp(1.65rem,2.3vw,2.5rem);line-height:1.14;letter-spacing:-.055em;margin:0 0 20px}.directory-copy h4{font-family:var(--font-body);font-size:.94rem;letter-spacing:-.015em;line-height:1.5;margin:0 0 10px;font-weight:700;color:#21596c}.directory-copy>p{font-size:.96rem;line-height:1.75;color:var(--body-text);margin:0 0 21px}.directory-tags{list-style:none;display:flex;flex-wrap:wrap;gap:7px;margin:0 0 23px;padding:0}.directory-tags>li{border:1px solid #c7e2e6;color:#3a7b8b;font-size:.64rem;padding:5px 8px;background:#f3fafb;line-height:1.4}.industry-focus{border-top:1px solid #c5dee3}.industry-focus summary{display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none;cursor:pointer;font-size:.82rem;font-weight:700;padding:16px 0;color:#176b80}.industry-focus summary::-webkit-details-marker{display:none}.focus-plus{font-size:22px;line-height:1;font-weight:400;transition:transform .4s}.industry-focus[open] .focus-plus{transform:rotate(45deg)}.industry-focus-body{padding:8px 0 15px;animation:ip-content-in .5s both}.industry-focus-body>div{border-left:1px solid #aed8dc;padding-left:15px;margin-bottom:20px}.industry-focus-body h5{font-size:.87rem;letter-spacing:0;line-height:1.5;margin:0 0 5px;font-family:var(--font-body)}.industry-focus-body p{font-size:.88rem;line-height:1.7;color:var(--body-text);margin:0}.industry-focus-body .ip-inline-link{font-size:.77rem;color:#158497;margin-top:25px}.industry-focus-body .ip-inline-link:is(:hover,:focus-visible){color:var(--link-hover)}.directory-detail-link{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:.72rem;font-weight:700;color:#1b95a3;border-top:1px solid #d8e8eb;padding-top:12px;transition:color .3s}.directory-detail-link .ms-icon{font-size:17px}.directory-detail-link:is(:hover,:focus-visible){color:var(--link-hover)}.directory-invitation{padding:30px 34px;background:#eaf7f8;border:1px solid #cce7ea;display:grid;grid-template-columns:1fr;gap:18px}.directory-invitation .ip-label{font-size:.6rem;margin-bottom:10px}.directory-invitation h3{font-size:1.65rem;line-height:1.2;margin-bottom:14px}.directory-invitation p{color:var(--body-text);max-width:540px;font-size:.94rem;margin:0}.directory-invitation .ip-inline-link{width:max-content;font-size:.84rem;color:#118596;gap:35px}.directory-invitation .ip-inline-link:is(:hover,:focus-visible){color:var(--link-hover)}.overview-connections{color:#fff;background:radial-gradient(ellipse at 60% 60%,#0d4355,#072737 75%);position:relative;isolation:isolate}.overview-connections:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#8bd9e713 1px,transparent 1px),linear-gradient(90deg,#8bd9e713 1px,transparent 1px);background-size:70px 70px;z-index:-1;mask-image:linear-gradient(transparent,#000,transparent);opacity:.6}.overview-connections .ip-label{color:#8bdedb}.overview-connections h2 em{color:#6bdbd6}.overview-connections .ip-section-heading>p{color:var(--body-text-on-dark)}.connection-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:5%;margin-top:65px}.connection-columns article{min-width:0}.connection-line{display:flex;align-items:center;margin-bottom:32px}.connection-line>span{display:grid;place-items:center;width:65px;height:65px;flex:none;border:1px solid #4f9ca7;background:#0c4053;box-shadow:0 0 40px #51d1c813}.connection-line>span>.ms-icon{font-size:27px;color:#7ee8dc}.connection-line>i{display:block;height:1px;background:var(--sm-line,#397082);position:relative;width:calc(100% - 65px + 17%);flex-shrink:0;overflow:hidden}.connection-columns article:last-child .connection-line>i{width:calc(100% - 65px)}.connection-line>i:after{content:"";position:absolute;height:1px;width:24%;left:-24%;background:linear-gradient(90deg,transparent,var(--sm-signal,#8bece2));animation:ip-packet var(--sm-loop,5.8s) linear infinite;animation-play-state:paused}.connection-columns article:nth-child(2) .connection-line>i:after{animation-delay:calc(-.33 * var(--sm-loop,5.8s))}.connection-columns article:nth-child(3) .connection-line>i:after{animation-delay:calc(-.67 * var(--sm-loop,5.8s))}.connection-column-number{display:block;font-size:.6rem;letter-spacing:.13em;color:#80c3ce;font-weight:700;margin-bottom:20px}.connection-columns h3{font-size:clamp(1.4rem,2.1vw,2rem);line-height:1.2;margin-bottom:20px}.connection-columns p{color:var(--body-text-on-dark);font-size:.99rem;line-height:1.8;margin-bottom:25px;min-height:142px}.connection-columns .ip-inline-link{font-size:.81rem;color:#87ddd8;border-color:#3e7481}.common-thread-caption{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:60px;color:#619ea9;font-size:.58rem;font-weight:700;letter-spacing:.15em}.common-thread-caption>span{height:1px;background:#2a5365;width:70px}.overview-approach{display:grid;grid-template-columns:1fr 1fr;gap:11%}.overview-approach-intro h2{margin-bottom:24px}.overview-approach-intro>p{max-width:360px;color:var(--body-text);font-size:1rem;line-height:1.8;margin-bottom:30px}.overview-approach-intro .motion-cta{--cta-bg:#176b98;--cta-ink:#fff;--cta-hover:#0b889b}.overview-steps{margin:0;padding:0;list-style:none}.overview-steps li{display:flex;gap:27px;padding:27px 0;border-top:1px solid #c2dce2}.overview-steps li:last-child{padding-bottom:0}.overview-steps li>span{font:500 2.3rem/1 var(--font-display);letter-spacing:-.07em;color:#78b9c4;padding-top:3px}.overview-steps h3{font-size:1.4rem;line-height:1.3;margin-bottom:13px}.overview-steps p{font-size:.96rem;color:var(--body-text);line-height:1.8;margin-bottom:16px}.overview-steps small{font-size:.57rem;color:#288c9c;letter-spacing:.15em;font-weight:700}.industries-overview .ip-contact{background:linear-gradient(100deg,#0b3045,#0e485b)}.ip-motion .overview-hero-heading{animation:ip-hero-in 1s cubic-bezier(.16,1,.3,1) both}.ip-motion .filmstrip-frame{animation:ip-hero-in 1s .15s cubic-bezier(.16,1,.3,1) both}.ip-motion .filmstrip-frame:nth-child(2){animation-delay:.22s}.ip-motion .filmstrip-frame:nth-child(3){animation-delay:.29s}.ip-motion .filmstrip-frame:nth-child(4){animation-delay:.36s}.ip-motion .filmstrip-frame:nth-child(5){animation-delay:.43s}
@media(min-width:1900px){.industry-filmstrip{gap:14px}.filmstrip-frame{max-height:310px;aspect-ratio:1}.filmstrip-label{font-size:.86rem}.directory-layout{grid-template-columns:260px 1fr;gap:6%}.directory-entry{grid-template-columns:1fr 1.15fr;gap:50px;margin-bottom:55px;padding-bottom:55px}.directory-photo{min-height:365px}.directory-copy{padding:12px 0}.directory-copy>p{font-size:1.05rem}.directory-copy h4{font-size:1.02rem}.directory-index a{font-size:.9rem;padding-block:16px}.connection-columns p{min-height:113px}}
@media(max-width:1100px){.overview-hero h1{font-size:3.5rem}.overview-hero-heading{grid-template-columns:1.4fr 1fr;gap:5%;padding-top:27px}.overview-hero-intro p{font-size:.95rem}.filmstrip-label{inset:auto 12px 15px;font-size:.65rem}.filmstrip-label>.ms-icon{font-size:16px}.filmstrip-number{left:12px;top:13px;font-size:.57rem}.directory-layout{grid-template-columns:165px 1fr;gap:5%}.directory-index a{font-size:.74rem;grid-template-columns:1fr 4px;gap:8px}.directory-entry{grid-template-columns:.8fr 1.2fr;gap:27px}.directory-copy h3{font-size:1.8rem}.directory-copy h4{font-size:.88rem}.directory-copy>p{font-size:.91rem}.directory-tags>li{font-size:.58rem}.directory-photo{min-height:310px}.directory-photo-code{left:27px;font-size:.53rem}.directory-photo-caption{font-size:.5rem;left:27px;right:25px}.directory-detail-link{font-size:.67rem}.connection-columns p{font-size:.93rem;min-height:155px}.connection-columns h3{font-size:1.55rem}.overview-approach{gap:8%}}
@media(max-width:800px){.overview-hero-heading{grid-template-columns:1fr;gap:24px;padding-top:23px}.overview-hero h1{font-size:3.7rem}.overview-hero-intro{display:flex;gap:28px;align-items:center}.overview-hero-intro p{max-width:410px;margin:0;flex:1;font-size:.95rem}.overview-hero-intro .motion-cta{flex:none}.industry-filmstrip{gap:6px}.filmstrip-label{font-size:.6rem;display:block;line-height:1.5}.filmstrip-label>.ms-icon{display:none}.overview-hero-foot{font-size:.52rem}.directory-layout{grid-template-columns:1fr}.directory-index{display:none}.directory-entry{grid-template-columns:.9fr 1.1fr;gap:32px}.directory-copy h3{font-size:1.95rem}.directory-copy>p{font-size:.98rem}.directory-tags>li{font-size:.63rem}.directory-photo{min-height:350px}.directory-photo-code{font-size:.59rem}.directory-photo-caption{font-size:.53rem}.directory-detail-link{font-size:.74rem}.connection-columns{gap:5%;margin-top:42px}.connection-column-number{font-size:.54rem;letter-spacing:.09em}.connection-columns h3{font-size:1.4rem}.connection-columns p{font-size:.91rem;min-height:203px}.connection-columns .ip-inline-link{font-size:.7rem;gap:10px}.overview-approach{grid-template-columns:1fr;gap:45px}.overview-approach-intro>p{max-width:500px}.overview-steps li{gap:28px}.overview-steps h3{font-size:1.45rem}.overview-steps p{font-size:1rem}.overview-steps small{font-size:.62rem}}
@media(max-width:600px){.industries-overview .concept-bar>.ip-wrap{padding-top:7px}.industries-overview .concept-bar nav{gap:25px}.industries-overview .concept-bar nav a{font-size:.7rem}.overview-hero-heading{padding:15px 0 30px;gap:25px}.overview-hero h1{font-size:2.95rem;line-height:1.13}.overview-hero .ip-label{font-size:.6rem;margin-bottom:20px}.overview-hero-intro{display:block}.overview-hero-intro p{font-size:1rem;line-height:1.75;margin-bottom:23px}.overview-hero-intro .motion-cta{font-size:.85rem;min-height:48px}.overview-hero-intro .motion-cta-icon{height:48px;width:48px}.industry-filmstrip{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 0 10px;scrollbar-width:thin;scrollbar-color:#397c8c transparent}.filmstrip-frame{width:43%;min-width:43%;aspect-ratio:.87;scroll-snap-align:start}.filmstrip-thread{display:none}.filmstrip-label{font-size:.7rem;inset:auto 13px 16px}.filmstrip-label .ms-icon{display:inline;font-size:15px;float:right}.filmstrip-number{font-size:.6rem;left:13px;top:14px}.overview-hero-foot{font-size:.52rem;gap:30px;line-height:1.7;padding-top:10px}.overview-hero-foot>span{max-width:125px}.overview-hero-foot>span:last-child{text-align:right}.industries-overview .chapter-nav a b{font-size:.67rem}.industries-overview .chapter-nav .ip-wrap>div{gap:10px}.overview-directory{padding-bottom:65px!important}.directory-entry{grid-template-columns:1fr;gap:25px;padding-bottom:36px;margin-bottom:36px;scroll-margin-top:153px}.directory-photo{min-height:0;aspect-ratio:1.5;max-height:300px}.directory-photo img{object-position:center 46%}.directory-photo .image-corners{inset:16px}.directory-photo-caption{font-size:.54rem;bottom:27px;max-width:210px}.directory-photo-code{top:27px;font-size:.59rem}.directory-copy{padding:0 1px}.directory-name{margin-bottom:14px}.directory-copy h3{font-size:2rem;margin-bottom:18px}.directory-copy h4{font-size:.95rem}.directory-copy>p{font-size:1rem;line-height:1.75}.directory-tags{margin-bottom:22px}.directory-tags>li{font-size:.65rem;padding:5px 8px}.industry-focus summary{font-size:.85rem;padding-block:17px}.industry-focus-body p{font-size:.94rem}.industry-focus-body h5{font-size:.94rem}.directory-detail-link{font-size:.75rem}.directory-invitation{padding:28px 25px;gap:23px}.directory-invitation h3{font-size:1.8rem}.directory-invitation p{font-size:.95rem}.directory-invitation .ip-label{font-size:.59rem}.directory-invitation .ip-inline-link{font-size:.84rem}.connection-columns{grid-template-columns:1fr;gap:37px;margin-top:40px}.connection-line{margin-bottom:23px}.connection-line>span{height:58px;width:58px}.connection-line>i,.connection-columns article:last-child .connection-line>i{width:calc(100% - 58px)}.connection-column-number{font-size:.58rem;letter-spacing:.13em;margin-bottom:15px}.connection-columns h3{font-size:1.65rem;margin-bottom:17px}.connection-columns p{font-size:1rem;min-height:0;margin-bottom:23px}.connection-columns .ip-inline-link{font-size:.84rem}.common-thread-caption{margin-top:43px;font-size:.48rem;gap:13px;letter-spacing:.09em}.common-thread-caption>span{width:23px}.overview-steps li{gap:23px;padding:25px 0}.overview-steps li>span{font-size:2rem}.overview-steps h3{font-size:1.25rem}.overview-steps p{font-size:.95rem}.overview-steps small{font-size:.53rem}.industries-overview .ip-contact h2{font-size:3rem}}
/* Eight industries keep the established filmstrip, directory, and section layouts. */
.industry-filmstrip{grid-template-columns:repeat(8,minmax(0,1fr))}
.filmstrip-frame{aspect-ratio:.72}
.filmstrip-label{inset:auto 12px 16px;gap:6px;font-size:.72rem}
.filmstrip-label .ms-icon{font-size:17px}
.ip-motion .filmstrip-frame:nth-child(6){animation-delay:.5s}
.ip-motion .filmstrip-frame:nth-child(7){animation-delay:.57s}
.ip-motion .filmstrip-frame:nth-child(8){animation-delay:.64s}
.directory-index{max-height:calc(100svh - 205px);overflow-y:auto;padding-right:10px;scrollbar-width:thin;scrollbar-color:#bbd9de transparent;overscroll-behavior:contain}
.directory-index a{padding-block:11px}
.directory-index-note{margin-top:24px}
.connection-columns>article{display:flex;flex-direction:column}
.connection-columns>article>p{min-height:0;flex:1}
.connection-example{padding:15px 0 15px 17px;margin:0 0 25px;border-left:1px solid #39818b;background:linear-gradient(90deg,#55c8cb08,transparent)}
.connection-example>span{display:block;font-size:.62rem;font-weight:700;letter-spacing:.14em;color:#73d6d0;margin-bottom:9px}
.connection-columns .connection-example p{min-height:0;margin:0;color:var(--body-text-on-dark);font-size:.88rem;line-height:1.75}
.connection-columns .ip-inline-link{margin-top:auto;align-self:flex-start}
.overview-steps small{display:block;line-height:1.6;font-size:.64rem}
.overview-steps li>span{color:var(--process-step-rest);transition:color 500ms}
.overview-steps li:is(:hover,:focus-within)>span{color:var(--process-step-hover)}
@media(max-width:1100px) and (min-width:601px){.industry-filmstrip{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.filmstrip-frame{aspect-ratio:1.45;max-height:165px}.filmstrip-thread{top:50%}.filmstrip-label{display:flex}.filmstrip-label>.ms-icon{display:block}}
@media(max-width:600px){.filmstrip-frame{aspect-ratio:.87}.filmstrip-label{inset:auto 13px 16px}.connection-columns>article>p{flex:initial}.connection-columns .connection-example p{font-size:.94rem}.overview-steps small{font-size:.61rem;letter-spacing:.1em}}
@media(prefers-reduced-motion:reduce){.industries-overview *,.industries-overview *:before,.industries-overview *:after{animation:none!important;transition:none!important}}
.industry-page .connection-columns .ip-inline-link:is(:hover,:focus-visible){color:var(--link-hover-on-dark)}
/* Full canonical hero labels retain flex alignment at every inherited breakpoint. */
.industry-filmstrip .filmstrip-label{display:flex;align-items:center}
.industry-filmstrip .filmstrip-label>.ms-icon{display:block;float:none;flex:none;align-self:center}
.connection-columns[data-sm-align].sm-active .connection-line>i:after{animation-play-state:running}
