/* Use the same fixed site header and full footer as the other inner pages. */
body.page-template-page-software-engineering .nav-logo{opacity:1}
body.page-template-page-software-engineering header.header-wrapper{z-index:99;background:#fff;border-bottom:1px solid #d9dfeb}
body.page-template-page-software-engineering footer.footer{display:block}
@media(max-width:1024px){body.page-template-page-software-engineering.scroll-top #nav{display:block}}
.se-page{--se-ink:#202c4c;--se-blue:#4a5f9e;--se-line:#dce3ef;--se-paper:#f7f9fd;color:var(--se-ink);background:#fff}
.se-wrap{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.se-breadcrumbs{margin:0!important;background:linear-gradient(19deg,#f1f3f9 0%,#f8f8fa 65%,#fff3de 100%)!important;border-bottom:1px solid var(--se-line);font-size:13px}
.se-breadcrumbs .se-wrap{display:flex;align-items:center;gap:12px}
.se-breadcrumbs a{color:#42598e;text-decoration:none}.se-breadcrumbs a:hover{text-decoration:underline}
.se-hero{background:radial-gradient(circle at 90% 8%,#fff1d2,transparent 36%),linear-gradient(130deg,#f8f9fd,#eef2fa);border-bottom:4px solid #ffc22c;padding:82px 0 76px}
.se-hero__grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr);gap:74px;align-items:center}
.se-eyebrow,.se-hero__card>p,.se-aside__label{font:700 11px/1.4 Arial,sans-serif;letter-spacing:.16em;color:#5267a0;margin:0 0 20px}
.se-hero h1{font-size:clamp(2.45rem,5vw,4.5rem);line-height:1.09;letter-spacing:-.045em;max-width:900px;margin:0 0 25px;font-weight:750;color:var(--se-ink)}
.se-hero__intro{font-size:clamp(1.1rem,1.65vw,1.3rem);line-height:1.65;color:#475574;max-width:730px;margin:0 0 24px}
.se-hero__intro--secondary{font-size:17px;margin-top:-9px}.se-hero__actions{display:flex;flex-wrap:wrap;gap:12px 20px;margin:0 0 25px}.se-hero__actions a{display:inline-flex;align-items:center;min-height:42px;color:#2d4788;font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:4px}.se-hero__actions a:first-child{padding:9px 16px;background:#4b5f9a;border-radius:7px;color:#fff;text-decoration:none}
.se-cycle{padding:58px 0 45px;background:#fff;border-bottom:1px solid var(--se-line)}.se-cycle h2{font-size:clamp(1.7rem,2.7vw,2.5rem);margin:0 0 25px;color:var(--se-ink)}.se-cycle__figure{margin:0}.se-cycle__steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.se-cycle__steps>div{position:relative;min-height:130px;padding:22px 23px;border:1px solid #dce3ef;border-radius:14px;background:#f7f9fd}.se-cycle__steps>div:after{content:'→';position:absolute;top:42%;right:-15px;z-index:2;color:#4b5f9a;font-size:24px;font-weight:700}.se-cycle__steps>div:nth-child(3):after,.se-cycle__steps>div:last-child:after{display:none}.se-cycle__steps span{display:block;color:#6477a8;font-size:11px;font-weight:800;letter-spacing:.12em}.se-cycle__steps strong{display:block;margin:9px 0 5px;color:#243454;font-size:17px}.se-cycle__steps small{display:block;color:#52617a;font-size:13px;line-height:1.45}.se-cycle figcaption{margin-top:17px;color:#52617a;font-size:14px;line-height:1.55}
.se-connection{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:25px 0 29px}.se-connection>div{position:relative;padding:19px 17px;background:#233253;border-radius:12px;color:#fff}.se-connection>div:not(:last-child):after{content:'→';position:absolute;right:-12px;top:42%;z-index:2;color:#e3ad26;font-size:20px}.se-connection span,.se-operation-grid span{display:block;font-size:10px;letter-spacing:.12em;font-weight:800}.se-connection span{color:#ffd468}.se-connection strong,.se-operation-grid strong{display:block;margin:8px 0 5px;font-size:15px;line-height:1.3}.se-connection strong{color:#fff}.se-connection small,.se-operation-grid small{display:block;font-size:12px;line-height:1.45}.se-connection small{color:#e4ebfb}.se-operation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:26px 0 34px}.se-operation-grid a{display:block;padding:20px 21px;border:1px solid #dce3ef;border-radius:13px;background:#f7f9fd;text-decoration:none;color:#243454}.se-operation-grid a:hover{border-color:#8ca0ca;background:#f0f4fb}.se-operation-grid span{color:#5368a1}.se-operation-grid strong{color:#243454;font-size:17px}.se-operation-grid small{color:#52617a;font-size:13px}
.se-prose .se-connection strong{color:#fff}
.se-legacy-flow,.se-proportion{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:25px 0 30px}.se-legacy-flow>div,.se-proportion>div{padding:22px 23px;border:1px solid #dce3ef;border-radius:14px;background:#f7f9fd}.se-legacy-flow>div:nth-child(2),.se-proportion>div:nth-child(2){background:#fff8e9;border-color:#ead9ae}.se-legacy-flow span,.se-proportion span,.se-stages span{display:block;font-size:10px;font-weight:800;letter-spacing:.12em;color:#5368a1}.se-legacy-flow strong,.se-proportion strong,.se-stages strong{display:block;margin:8px 0 5px;color:#243454;font-size:17px;line-height:1.3}.se-legacy-flow small,.se-proportion small,.se-stages small{display:block;color:#52617a;font-size:13px;line-height:1.5}.se-stages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:27px 0 30px}.se-stages a{display:block;padding:18px 20px;background:#f7f9fd;border:1px solid #dce3ef;border-radius:12px;text-decoration:none;color:#243454}.se-stages a:hover{background:#eff3fa;border-color:#8ca0ca}.se-stages a:nth-child(4),.se-stages a:nth-child(5){background:#fff8e9;border-color:#ead9ae}.se-stages strong{font-size:16px}
.se-hero__meta{display:flex;flex-wrap:wrap;gap:7px 10px;font-size:13px;color:#53617b;align-items:center}.se-hero__meta a{color:#354d89;font-weight:700}
.se-hero__card{background:#223050;color:#edf2ff;border-radius:22px;padding:28px 30px;box-shadow:0 20px 60px #202c4c1a}.se-hero__card>p{color:#ffc744;margin-bottom:22px}.se-hero__card ol{list-style:none;margin:0;padding:0}.se-hero__card li{display:flex;gap:13px;align-items:center;padding:13px 0;border-top:1px solid #ffffff26;font-size:14px;line-height:1.45}.se-hero__card li span{color:#ffc744;font-size:11px;font-weight:700;letter-spacing:.08em}
.se-layout{display:grid;grid-template-columns:minmax(0,790px) minmax(200px,290px);gap:76px;align-items:start;padding-block:70px 90px}.se-article,.se-prose{min-width:0}
.se-prose{font-size:17px;line-height:1.78;color:#34425f}.se-prose>p:first-child{font-size:21px;line-height:1.6;color:#273653}.se-prose p{margin:0 0 1.3em}.se-prose h2{font-size:clamp(1.55rem,2.25vw,2.05rem);line-height:1.25;letter-spacing:-.025em;color:var(--se-ink);padding-top:38px;margin:48px 0 22px;border-top:1px solid var(--se-line);scroll-margin-top:110px}.se-prose h2:first-of-type{margin-top:36px}.se-prose h3{font-size:1.27rem;line-height:1.36;color:#253457;margin:34px 0 14px}.se-prose strong{color:#263557}.se-prose a{color:#375895;text-underline-offset:3px}.se-prose a:hover{color:#1d3770}.se-prose ul,.se-prose ol{padding-left:1.4em;margin:0 0 1.45em}.se-prose li{padding-left:.2em;margin:.3em 0}.se-prose blockquote{border-left:4px solid #ffc22c;margin:28px 0;padding:17px 24px;background:#fff9ec;border-radius:0 12px 12px 0;color:#29395b}.se-prose blockquote p:last-child{margin:0}.se-prose pre{overflow:auto;background:#202c4c;color:#eff3ff;padding:22px 26px;border-radius:13px;font-size:14px;line-height:1.55;margin:25px 0 35px}.se-prose code{font-size:.9em}.se-prose pre code{color:inherit}.se-prose table{display:block;overflow-x:auto;border-collapse:collapse;width:100%;margin:28px 0 36px;font-size:15px}.se-prose th,.se-prose td{border:1px solid var(--se-line);padding:12px 15px;text-align:left;vertical-align:top}.se-prose th{background:#edf2fa;color:#243555}.se-prose tr:nth-child(even) td{background:#fafbfe}.se-prose hr{border:0;border-top:1px solid var(--se-line);margin:44px 0 25px}
.se-figure{margin:32px 0 40px;padding:16px;background:#f7f9fd;border:1px solid var(--se-line);border-radius:16px}.se-figure img{display:block;width:100%;height:auto}.se-figure figcaption{font-size:13px;line-height:1.45;color:#586783;margin:12px 4px 2px}
.se-aside__sticky{position:sticky;top:24px;background:#f7f9fd;border:1px solid var(--se-line);border-radius:18px;padding:26px 25px;max-height:calc(100vh - 48px);overflow:auto}.se-aside__label{margin-bottom:13px}.se-aside ol{list-style:none;margin:0;padding:0}.se-aside li{margin:0}.se-aside li a{display:block;padding:6px 0;text-decoration:none;color:#3d4e71;font-size:13px;line-height:1.35}.se-aside li a:hover{color:#1f438a;text-decoration:underline}.se-aside .se-toc__secondary{display:none}.se-aside__links{margin-top:19px;border-top:1px solid var(--se-line);padding-top:13px}.se-aside__links a{display:block;color:#35518e;font-weight:700;font-size:13px;padding:7px 0;text-decoration:none}.se-aside__links a:hover{text-decoration:underline}
.se-mobile-toc{display:none}
.se-next{background:#f3f6fb;border-top:1px solid var(--se-line);padding:68px 0 80px}.se-next h2{font-size:clamp(1.8rem,2.8vw,2.5rem);letter-spacing:-.035em;margin:0 0 25px;color:var(--se-ink)}.se-next__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.se-next__grid a{display:flex;flex-direction:column;gap:10px;padding:27px 29px;background:#fff;border:1px solid #dce3ef;border-radius:16px;text-decoration:none;color:var(--se-ink);transition:transform .15s,border-color .15s}.se-next__grid a:hover{transform:translateY(-3px);border-color:#8ca0ca}.se-next__grid span{font-size:11px;letter-spacing:.13em;font-weight:700;color:#5368a1}.se-next__grid strong{font-size:1.3rem;line-height:1.3}.se-next__grid small{font-size:14px;color:#52617a}
@media(max-width:900px){.se-hero__grid{gap:35px}.se-layout{grid-template-columns:minmax(0,1fr);gap:20px}.se-aside{grid-row:1}.se-aside__sticky{position:static;max-height:none}.se-aside nav ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.se-hero{padding:58px 0}}
@media(max-width:700px){.se-cycle__steps{grid-template-columns:1fr 1fr}.se-cycle__steps>div:nth-child(2n):after{display:none}}
@media(max-width:850px){.se-connection{grid-template-columns:1fr}.se-connection>div:not(:last-child):after{display:none}}
@media(max-width:650px){.se-wrap{width:min(100% - 32px,1180px)}.se-hero{padding:40px 0 38px}.se-hero__grid{grid-template-columns:1fr}.se-hero__card{display:none}.se-hero h1{font-size:clamp(2.1rem,9vw,3.15rem)}.se-layout{padding-block:25px 56px}.se-prose{font-size:16px}.se-prose>p:first-child{font-size:18px}.se-desktop-toc,.se-aside__links{display:none}.se-aside__sticky{padding:17px 20px}.se-aside__label{margin:0 0 7px}.se-mobile-toc{display:block}.se-mobile-toc summary{cursor:pointer;font-weight:700;color:#35518e;font-size:14px}.se-mobile-toc nav{max-height:55vh;overflow:auto;padding-top:12px}.se-next__grid{grid-template-columns:1fr}.se-next{padding:48px 0 58px}.se-breadcrumbs .se-wrap{flex-wrap:wrap;gap:5px 8px}}
@media(max-width:500px){.se-cycle{padding:38px 0 32px}.se-cycle__steps{grid-template-columns:1fr;gap:13px}.se-cycle__steps>div{min-height:0}.se-cycle__steps>div:after{display:none}}
@media(max-width:550px){.se-operation-grid{grid-template-columns:1fr}}
@media(max-width:550px){.se-legacy-flow,.se-proportion,.se-stages{grid-template-columns:1fr}}
