/* Assignment 017: all new visual rules are scoped below the approved four sections. */
.hero-art{background-image:url('/assets/hero-optimized-1536.webp')}
.lower-section{position:relative;isolation:isolate;padding-block:65px;overflow-wrap:anywhere}
.lower-section h2{font-family:"Segoe UI",Arial,sans-serif;font-weight:500;line-height:1.08;letter-spacing:-.035em}
.lower-section p{font-size:20px;line-height:1.5;color:var(--muted)}
.lower-section .text-link{margin-top:25px;font-size:18px;line-height:1.5;min-height:30px}
.lower-section h3{font-size:26px;line-height:1.18;letter-spacing:-.025em;margin-bottom:16px}
.ai-software{background:#fff;padding-top:65px;padding-bottom:76px}
.ai-software h2{font-size:clamp(44px,5.55vw,84px);margin-bottom:35px}.ai-software h2 span,.our-approach h2 span{color:#00849d}
.editorial-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,24em),1fr));gap:34px 65px}
.editorial-pair>div{min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.editorial-pair>div+div{border-left:1px solid #d4e0e7;padding-left:42px}
.ai-software .text-link{margin-top:auto;padding-top:28px}
.operations-analytics{background:var(--navy);color:#fff;padding-top:65px;padding-bottom:70px}
.operations-analytics h2{font-size:clamp(40px,4.6vw,70px);max-width:1100px;margin-left:7%;margin-bottom:48px}
.operations-analytics p,.project-inquiry p{color:#d5e1e9}
.operations-analytics .editorial-pair>div+div{border-color:#204356}
.operations-analytics .text-link,.project-inquiry .text-link{color:#31c7e0}
.operations-analytics .methods-note{font-size:18px;line-height:1.5;border-left:3px solid #04bce3;padding-left:18px;margin-top:22px}
.operations-analytics .editorial-pair>div:first-child .text-link{margin-top:auto;padding-top:28px}
.corner-fold{position:absolute;z-index:-1;top:0;left:0;width:240px;height:130px;background:url('/assets/hero-optimized-1536.webp') 60% 32% / 630px auto no-repeat;opacity:.6;mask-image:linear-gradient(130deg,#000,transparent 72%)}
.our-approach{background:#f2f7fa;padding-block:54px 63px}
.approach-intro{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,24em),1fr));gap:34px 65px;align-items:start}
.our-approach h2{font-size:42px;max-width:600px}.our-approach p{font-size:18px;line-height:1.5}.our-approach p+p{margin-top:12px}.our-approach .text-link{margin-top:18px}
.engineering-sequence{list-style:none;padding:0;margin:48px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,9em),1fr));gap:28px 0}
.engineering-sequence li{position:relative;min-width:0;padding:0 14px}.engineering-sequence li:before{content:"";position:absolute;left:0;right:0;top:40px;height:1px;background:#b6ccd7}.engineering-sequence li:after{content:"";position:absolute;left:14px;top:37px;width:7px;height:7px;border-radius:50%;background:#00768b}
.engineering-sequence span{display:block;color:#637f92;font-size:20px;line-height:1.2;padding-bottom:29px}.engineering-sequence strong{display:block;font-size:19px;line-height:1.3;letter-spacing:-.015em;overflow-wrap:anywhere}
.project-inquiry{background:var(--navy);color:#fff;padding-block:63px 68px}
.inquiry-layout{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.65fr);gap:34px 65px;align-items:start}
.project-inquiry h2{font-size:50px}.project-inquiry .actions{margin-top:28px;gap:25px}.project-inquiry .text-link{margin:0;font-size:18px}.email-link{overflow-wrap:anywhere}
.closing-fold{position:absolute;z-index:-1;inset:0 0 0 auto;width:42%;background:linear-gradient(90deg,var(--navy),#031927aa 55%,#03192740),url('/assets/hero-optimized-1536.webp') right 55% / auto 590px no-repeat;opacity:.48}
.site-footer{background:#02131f;color:#d5e1e9;border-top:1px solid #173448;padding-block:48px 52px;overflow-wrap:anywhere}
.footer-grid{display:grid;grid-template-columns:1.05fr 1.4fr 1fr;gap:36px 55px;align-items:start}
.footer-brand{display:block;width:260px;max-width:100%;margin-bottom:26px}.footer-brand img{width:100%;height:auto}
.site-footer h2{font-size:18px;font-weight:600;letter-spacing:0;line-height:1.4;color:#fff;margin:0 0 17px}
.site-footer nav{display:block;position:static;width:auto;max-height:none;max-width:100%;overflow:visible;padding:0;background:none;box-shadow:none;font-size:16px}
.site-footer ul{list-style:none;margin:0;padding:0}.site-footer li+li{margin-top:9px}.site-footer a:not(.footer-brand){display:inline-block;line-height:1.5;padding:3px 0;text-underline-offset:5px;max-width:100%}.site-footer nav a{padding:3px 0}.site-footer nav a:hover{text-decoration:underline}.footer-identity>.email-link{color:#31c7e0;font-size:16px}
.operations-analytics :focus-visible,.project-inquiry :focus-visible,.site-footer :focus-visible{outline-color:#ffce70}
@media(max-width:1150px){.lower-section{padding-block:54px}.lower-section h3{font-size:24px}.editorial-pair,.approach-intro{column-gap:35px}.editorial-pair>div+div{padding-left:28px}.operations-analytics h2{margin-left:0}.inquiry-layout{gap:32px 35px}.footer-grid{gap:32px;grid-template-columns:1fr 1.4fr}.footer-grid>nav:last-child{grid-column:2}.footer-identity{grid-row:1/3}.footer-brand{width:230px}}
@media(max-width:980px){.editorial-pair,.approach-intro{grid-template-columns:1fr}.editorial-pair>div+div{border-left:0;border-top:1px solid #d4e0e7;padding:30px 0 0}.ai-software .text-link,.operations-analytics .editorial-pair>div:first-child .text-link{margin-top:24px;padding-top:0}.inquiry-layout{grid-template-columns:1fr}.project-inquiry h2 br{display:none}}
@media(max-width:700px){.lower-section{padding-block:40px}.lower-section p{font-size:17px;line-height:1.5}.lower-section h3{font-size:23px;line-height:1.2}.lower-section .text-link{font-size:17px;min-height:34px}.ai-software h2{font-size:38px;margin-bottom:26px}.operations-analytics h2{font-size:34px;margin-bottom:30px}.operations-analytics .methods-note{font-size:16px;margin-top:20px;padding-left:14px}.corner-fold{width:130px;height:80px;opacity:.32}.our-approach h2{font-size:31px}.our-approach p{font-size:17px}.engineering-sequence{display:block;margin-top:34px}.engineering-sequence li{display:flex;gap:24px;padding:0 0 27px 22px;align-items:baseline}.engineering-sequence li:last-child{padding-bottom:0}.engineering-sequence li:before{left:3px;top:8px;bottom:-8px;right:auto;width:1px;height:auto}.engineering-sequence li:last-child:before{display:none}.engineering-sequence li:after{left:0;top:8px}.engineering-sequence span{font-size:18px;padding:0;min-width:1.4em}.engineering-sequence strong{font-size:19px}.project-inquiry h2{font-size:36px}.project-inquiry .actions{align-items:stretch;flex-direction:column;gap:24px}.project-inquiry .button{width:100%}.project-inquiry .email-link{align-self:flex-start}.closing-fold{width:60%;opacity:.22}.site-footer{padding-block:38px 42px}.footer-grid{display:block}.footer-identity{margin-bottom:32px}.footer-brand{width:220px;margin-bottom:19px}.site-footer nav+nav{margin-top:28px}.site-footer nav a{padding-block:7px}.site-footer li+li{margin-top:3px}}
/* Intrinsic columns and font-relative sequences reflow under text enlargement. */
.lower-section{container:lower-section / inline-size}.site-footer{container:footer / inline-size}
@container lower-section (width < 60em){.inquiry-layout{grid-template-columns:1fr}.project-inquiry h2 br{display:none}}
@container lower-section (width < 52em){.editorial-pair{grid-template-columns:1fr}.editorial-pair>div+div{border-left:0;border-top:1px solid #d4e0e7;padding:30px 0 0}.operations-analytics .editorial-pair>div+div{border-color:#204356}.operations-analytics h2{margin-left:0}}
@container footer (width < 48em){.footer-grid{grid-template-columns:1fr}.footer-identity{grid-row:auto}.footer-grid>nav:last-child{grid-column:auto}}
/* Keep sequence connectors between text lines as fonts grow. */
@media(min-width:701px){.engineering-sequence li:before{top:2.222222em}.engineering-sequence li:after{top:calc(2.222222em - 3px)}.engineering-sequence span{padding-bottom:1.45em}}
