/* Shared homepage additions. All inner-page layout rules stay inside .seo-page. */
.seo-directory-link{margin-top:28px}.service-page-link{display:flex;width:fit-content;margin:18px 0}.mega-page-link{margin-top:24px}.seo-noscript{padding-block:16px}
/* The header, mega menus, search, footer, dialogs and theme use the landing CSS. */
.seo-page{--page-ink:#14233c;--page-muted:#52617a;--page-border:#d8e2ee;--page-surface:#f6f8fc;background:#fff;color:var(--page-ink)}
html[data-theme=dark] .seo-page{--page-ink:#edf3ff;--page-muted:#b8c6dd;--page-border:#2e405c;--page-surface:#132137;background:#0d182b}
.seo-page main{overflow:clip}
.seo-page .page-hero{position:relative;isolation:isolate;min-height:min(760px,calc(100svh - var(--hero-header-height,136px)));background:#101c31;color:#fff;display:flex}
.seo-page .page-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:62% 50%;z-index:-3}
.seo-page .page-hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(10,22,43,.96) 0%,rgba(12,26,48,.88) 28%,rgba(14,28,51,.49) 66%,rgba(14,28,51,.22)),linear-gradient(0deg,#0c192de8,transparent 52%)}
.seo-page .page-hero-inner{position:relative;display:flex;flex-direction:column;min-height:inherit;padding-block:30px 26px;z-index:1}
.seo-page .seo-breadcrumb ol{display:flex;flex-wrap:wrap;gap:10px 14px;margin:0;padding:0;list-style:none;font-size:12px;color:#d4e1f7;line-height:1.6}
.seo-page .seo-breadcrumb li:not(:last-child)::after{content:'/';margin-left:14px;color:#97abc9}
.seo-page .seo-breadcrumb a:hover{text-decoration:underline;text-underline-offset:4px;color:#fff}
.seo-page .page-hero-copy{padding:72px 0 64px;max-width:860px;margin-block:auto}
.seo-page .page-hero-copy>.eyebrow{color:#a4c8ff!important;letter-spacing:.18em;font-size:11px;line-height:1.5;margin:0 0 25px}
.seo-page .page-hero h1{font-size:clamp(44px,5.1vw,76px);font-weight:700;line-height:1.055;letter-spacing:-.052em;max-width:920px;color:#fff;margin:0 0 30px;text-wrap:balance}
.seo-page .page-hero-copy .page-hero-lead{font-size:clamp(18px,1.8vw,25px);line-height:1.55;max-width:670px;color:#d5e9ff!important;margin:0 0 30px;letter-spacing:-.015em}
.seo-page .page-hero .hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:32px}
.seo-page .page-hero .button{font-size:13px;gap:24px;min-height:44px;border-radius:11px;padding:12px 20px}
.seo-page .page-hero .button.outline{background:#ffffff0b;color:#f1f6ff;border:1px solid #d5e5ff59;backdrop-filter:blur(10px)}
.seo-page .page-hero .button.outline:hover{background:#ffffff18;border-color:#b9d8ff}
.seo-page .page-hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #b7d6f82b;padding-top:23px}
.seo-page .page-hero-bottom p{display:flex;align-items:center;gap:12px;font-size:10px;letter-spacing:.16em;color:#e5eeff!important;margin:0;font-weight:600}
.seo-page .page-hero-bottom>a{display:flex;align-items:center;gap:22px;font-size:12px;color:#e5eeff}
.seo-page .page-hero-bottom .icon{width:17px;height:17px;transform:rotate(90deg)}
.seo-page .page-hero .hero-mesh{z-index:0;pointer-events:none;bottom:0;height:29%;opacity:.35;left:0;right:0;position:absolute}
.seo-page .page-hero .hero-mesh svg{width:100%;height:100%}
.seo-page .page-hero>.ambient-line{z-index:2}
.seo-page .page-content{position:relative}
.seo-page .page-section{padding-block:80px}
.seo-page .page-section>h2,.seo-page .page-section-head h2{font-size:clamp(30px,3.4vw,44px);letter-spacing:-.045em;line-height:1.13;margin:0 0 34px;font-weight:650;max-width:800px;color:var(--page-ink)}
.seo-page .page-section .eyebrow{color:#4058c7;font-size:10px;font-weight:700;letter-spacing:.16em;margin:0 0 18px}
.seo-page .page-section>p{color:var(--page-muted);font-size:16px;line-height:1.8;max-width:830px;margin:0 0 30px}
.seo-page .page-overview{display:grid;grid-template-columns:1fr 1.05fr;gap:9%;align-items:start;padding-block:86px}
.seo-page .page-overview h2{font-size:clamp(28px,3.1vw,42px);letter-spacing:-.045em;line-height:1.2;font-weight:600;margin:0;color:var(--page-ink)}
.seo-page .overview-copy>p{font-size:17px;line-height:1.85;margin:0 0 26px;color:var(--page-muted)}
.seo-page .page-focus{border-left:2px solid #6578d8;padding-left:24px}
.seo-page .page-focus>span{display:block;font-size:9px;letter-spacing:.13em;font-weight:700;color:#4556b6;margin-bottom:8px}
.seo-page .page-focus>p{font-size:14px;line-height:1.7;margin:0;color:var(--page-muted)}
.seo-page .seo-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.seo-page .seo-card{background:linear-gradient(130deg,#fff,#f3f6fc);border:1px solid var(--page-border);border-radius:22px;padding:28px;position:relative;box-shadow:0 10px 26px #263b7510;transition:border-color .25s,transform .25s,box-shadow .25s}
.seo-page .page-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}
.seo-page .page-card-top .icon-tile{height:44px;width:44px;border-radius:13px;background:linear-gradient(130deg,#eaeefe,#eefaff);border:1px solid #d9e2f7;color:#4b60c7;display:grid;place-items:center}
.seo-page .page-card-top .icon{width:22px;height:22px}
.seo-page .page-index{color:#596b86;font-size:10px;letter-spacing:.1em;font-weight:600}
.seo-page .seo-card h3{font-size:18px;font-weight:650;line-height:1.3;letter-spacing:-.025em;margin:0 0 13px;color:var(--page-ink)}
.seo-page .seo-card p{font-size:14px;line-height:1.8;color:var(--page-muted);margin:0}
.seo-page .seo-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.seo-page[data-page='/services/'] .seo-link-grid,.seo-page[data-page='/industries/'] .seo-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.seo-page .seo-link-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--page-border);border-radius:23px;background:linear-gradient(130deg,#fff,#f5f7fc);box-shadow:0 10px 30px #18356b0a;transition:transform .3s,border-color .3s,box-shadow .3s}
.seo-page .page-card-image{width:100%;aspect-ratio:1.9;object-fit:cover;height:auto;transition:transform .6s;filter:saturate(.85)}
.seo-page .page-card-copy{padding:25px;display:flex;flex:1;flex-direction:column;position:relative;background:inherit}
.seo-page .page-card-copy :is(h2,h3){font-size:24px;line-height:1.2;letter-spacing:-.035em;font-weight:650;margin:0 0 15px;color:var(--page-ink)}
.seo-page .page-card-copy p{font-size:14px;line-height:1.8;margin:0 0 20px;color:var(--page-muted)}
.seo-page .page-card-copy>span{display:block;margin-top:auto;padding-top:20px;border-top:1px solid var(--page-border);color:#4055b9;font-size:12px;font-weight:600}
.seo-page .seo-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;counter-reset:steps}
.seo-page .seo-steps li{counter-increment:steps;font-size:16px;line-height:1.8;color:var(--page-muted);border-top:1px solid var(--page-border);padding:25px 10px 0 0}
.seo-page .seo-steps li:before{content:'0' counter(steps) ' /';display:block;font-size:12px;font-weight:600;letter-spacing:.1em;color:#4e62cf;margin-bottom:18px}
.seo-page .seo-related{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.seo-page .seo-related a{font-size:13px;font-weight:600;color:#4258bf;border:1px solid var(--page-border);border-radius:12px;padding:14px 20px;transition:background .2s}
.seo-page .seo-related a:hover{background:#edf2fe}
.seo-page .seo-contact-grid{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin:25px 0;font-size:clamp(18px,3vw,30px);overflow-wrap:anywhere;max-width:100%}
.seo-page .seo-contact-grid a{color:var(--page-ink);font-weight:600;letter-spacing:-.025em;max-width:100%}
.seo-page .seo-contact-grid p{font-size:16px;color:var(--page-muted)}
.seo-page .contact-section.page-section{padding-block:50px 70px}
.seo-page .contact-section .section{padding-block:0}
.seo-page .photo-credit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:30px}
.seo-page .photo-credit-grid article{padding-bottom:24px;border-bottom:1px solid var(--page-border)}
.seo-page .photo-credit-grid img{width:100%;height:190px;object-fit:cover;border-radius:16px;margin-bottom:16px}
.seo-page .photo-credit-grid h3{font-size:18px;margin-bottom:14px}
.seo-page .photo-credit-grid a{display:block;font-size:13px;color:#4055b9;margin-top:7px;text-decoration:underline;text-underline-offset:3px}
.seo-page #page-content{scroll-margin-top:130px}
html[data-theme=dark] .seo-page .seo-card,html[data-theme=dark] .seo-page .seo-link-card{background:linear-gradient(135deg,#182941,#111e33);border-color:var(--page-border);box-shadow:0 12px 30px #03081422}
html[data-theme=dark] .seo-page main .page-hero :is(.page-hero-lead,.page-hero-bottom p){color:#e0edff!important}
html[data-theme=dark] .seo-page .page-focus>span,html[data-theme=dark] .seo-page :is(.page-card-copy>span,.seo-related a,.seo-steps li:before,.photo-credit-grid a){color:#a8c5ff}
html[data-theme=dark] .seo-page .page-index{color:#9bb0ce}
html[data-theme=dark] .seo-page .seo-related a:hover{background:#1b304e}
html[data-theme=dark] .seo-page .skip{background:#f3f7ff;color:#14233c;border-radius:8px}
@media(hover:hover) and (pointer:fine){.seo-page .seo-link-card:hover{transform:translateY(-4px);border-color:#879ee1;box-shadow:0 18px 45px #1a3a741a}.seo-page .seo-link-card:hover .page-card-image{transform:scale(1.025)}.seo-page .seo-card:hover{border-color:#91a6d7;box-shadow:0 14px 32px #29427314;transform:translateY(-2px)}}
@media(min-width:1600px){.seo-page .page-hero-copy{max-width:930px}.seo-page .page-hero h1{font-size:80px}}
@media(max-width:1000px){.seo-page .page-hero{min-height:660px}.seo-page .page-hero-copy{max-width:720px;padding-block:65px}.seo-page .page-hero h1{font-size:58px}.seo-page .page-overview{gap:5%}.seo-page .seo-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.seo-page .seo-link-grid{gap:16px}.seo-page .page-card-copy{padding:22px}.seo-page .page-card-copy :is(h2,h3){font-size:22px}}
@media(max-width:700px){.seo-page .page-hero{min-height:660px}.seo-page .page-hero-inner{padding-top:20px;padding-bottom:22px}.seo-page .page-hero-copy{padding:55px 0 45px}.seo-page .page-hero h1{font-size:clamp(39px,9.5vw,57px);line-height:1.07;margin-bottom:24px}.seo-page .page-hero-copy .page-hero-lead{font-size:19px;line-height:1.6}.seo-page .page-hero-shade{background:linear-gradient(90deg,#0b1930eb,#0b193093),linear-gradient(0deg,#0b1930f2,transparent 75%)}.seo-page .page-hero-bottom{align-items:flex-start}.seo-page .page-hero-bottom p{font-size:8px;line-height:1.8;letter-spacing:.1em}.seo-page .page-hero-bottom>a{font-size:10px;white-space:nowrap;gap:9px}.seo-page .page-hero .hero-actions{gap:10px}.seo-page .page-hero .button{font-size:12px;padding:12px 14px;gap:12px}.seo-page .seo-breadcrumb ol{font-size:10px;gap:6px 9px}.seo-page .seo-breadcrumb li:not(:last-child)::after{margin-left:9px}.seo-page .page-section{padding-block:55px}.seo-page .page-overview{grid-template-columns:1fr;gap:28px}.seo-page .overview-copy>p{font-size:16px}.seo-page .seo-link-grid,.seo-page[data-page='/services/'] .seo-link-grid,.seo-page[data-page='/industries/'] .seo-link-grid{grid-template-columns:1fr}.seo-page .seo-steps{grid-template-columns:1fr;gap:22px}.seo-page .seo-steps li{display:grid;grid-template-columns:42px 1fr;gap:12px;padding:20px 0 0}.seo-page .seo-steps li:before{margin-top:4px}.seo-page .photo-credit-grid{grid-template-columns:1fr 1fr;gap:18px}.seo-page .contact-section.page-section{padding-block:35px 50px}}
@media(max-width:450px){.seo-page .seo-card-grid{grid-template-columns:1fr}.seo-page .seo-card{padding:25px}.seo-page .page-hero{min-height:630px}.seo-page .page-hero-copy>.eyebrow{font-size:9px}.seo-page .page-hero-copy .page-hero-lead{font-size:18px}.seo-page .photo-credit-grid{grid-template-columns:1fr}.seo-page .page-hero-bottom>a{display:none}}
@media(prefers-reduced-motion:reduce){.seo-page :is(.seo-link-card,.seo-card,.page-card-image){transition:none!important;transform:none!important}.seo-page .page-hero .hero-mesh{animation:none}}

.seo-page .page-title-accent{color:#a6e5f7}
