/* Aplenix professional release. Deliberate layouts, restrained visual system. */
:root{--container:1280px}
.container{width:min(1280px,calc(100% - 72px));margin-inline:auto}
.header-inner{max-width:1280px;margin-inline:auto}
/* Remove all character-specific styling from active rendering; visual assets replaced with authored content. */
.story-feature{background:linear-gradient(130deg,#121f5d 0%,#1c3291 60%,#2545b7 100%);min-height:435px;padding:35px 38px;display:flex;flex-direction:column;justify-content:space-between;gap:20px;box-shadow:0 20px 38px rgba(20,37,98,.08)}
.feature-title{font-size:clamp(34px,3.3vw,48px);line-height:1.1;max-width:none;margin:0;align-self:auto;text-shadow:none}
.feature-bottom{margin:0;max-width:none;color:#c8d4ff;font-size:11px;letter-spacing:.09em}
.story-path{display:grid;grid-template-columns:1fr 14px 1fr 14px 1fr;gap:8px;align-items:center;margin:5px 0 3px;position:relative;z-index:2}
.story-path-step{padding:15px 9px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.055);border-radius:9px;min-width:0;display:flex;flex-direction:column;gap:9px}
.story-path-num{font-size:10px;color:#ffd263;letter-spacing:.12em;font-weight:800}.story-path-step strong{font-size:10px;letter-spacing:.09em;font-weight:750;white-space:normal}
.story-path-arrow{color:#ffd160;font-weight:700;text-align:center}
.story-feature::before{content:'';position:absolute;right:-150px;top:-185px;width:360px;height:360px;border:52px solid rgba(255,255,255,.035);border-radius:50%;pointer-events:none}
.engage-visual{background:linear-gradient(140deg,#101e61,#213ba4 70%,#243fae);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;min-height:462px}
.engage-path{display:grid;gap:10px;position:relative;z-index:2;margin:25px 0}
.engage-path-row{display:flex;align-items:center;gap:16px;padding:18px 18px;border:1px solid rgba(255,255,255,.19);border-radius:10px;background:rgba(255,255,255,.07);backdrop-filter:blur(8px)}
.engage-path-row>span{font-size:13px;font-weight:750;letter-spacing:.1em;color:#ffd05e;width:27px}
.engage-path-row>div{flex:1;display:flex;flex-direction:column;gap:4px}.engage-path-row strong{font-size:11px;letter-spacing:.09em;color:white}.engage-path-row small{font-size:12px;color:#c5d2ff}.engage-path-row i{font-style:normal;color:#ffe09b}
.engage-path-row:nth-child(2){margin-left:20px}.engage-path-row:nth-child(3){margin-left:40px}
/* One repeatable, non-illustrative information graphic for about, thinking and service pages. */
.direction-section{background:#f4f7fd;padding:70px 0;border-block:1px solid #e7ecf8}
.direction-grid{display:grid;grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);gap:8%;align-items:center}
.direction-art{background:linear-gradient(135deg,#132369,#223eae);color:white;border-radius:16px;min-height:290px;padding:26px 28px 24px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative;box-shadow:0 15px 36px rgba(19,40,117,.085)}
.direction-art:before{content:'';width:300px;height:300px;border:44px solid #ffffff0b;border-radius:50%;position:absolute;top:-150px;right:-155px;pointer-events:none}
.direction-art-head,.direction-art-foot{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px}
.direction-kicker,.direction-art-foot{font-size:10px;letter-spacing:.16em;font-weight:800;color:#d5e0ff}.direction-symbol{display:grid;place-items:center;width:51px;height:48px;background:#ffffff12;border:1px solid #ffffff22;border-radius:10px}.direction-symbol img{width:37px;height:32px;object-fit:contain}
.direction-stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;position:relative;z-index:2;margin:22px 0}
.direction-stages>div{min-height:104px;border:1px solid #ffffff27;border-radius:9px;display:flex;flex-direction:column;justify-content:space-between;padding:14px 12px;background:#ffffff0a}
.direction-stages span{font-size:10px;color:#ffcb4c;font-weight:800}.direction-stages strong{font-size:clamp(11px,1.2vw,15px);font-weight:700;line-height:1.2}
.direction-art-foot{padding-top:16px;border-top:1px solid #ffffff2c}.direction-art-foot span:last-child{font-size:18px;color:#ffc43c}
.direction-copy h2{font-family:'DM Sans',Inter,sans-serif;letter-spacing:-.06em;font-size:clamp(34px,3.5vw,49px);line-height:1.1;margin:20px 0 20px}
.direction-copy p{font-size:15px;line-height:1.83;max-width:550px;color:#63738e;margin:0 0 22px}
.direction-copy .text-link{margin:0}
.contact-checklist{padding:24px 20px;margin:24px 0 25px;background:linear-gradient(140deg,#162879,#2845bb);color:#fff;border-radius:12px;position:relative;overflow:hidden}
.contact-checklist:before{content:'';width:180px;height:180px;border:34px solid #ffffff10;border-radius:50%;position:absolute;right:-75px;top:-90px}
.contact-checklist-head{display:flex;justify-content:space-between;gap:10px;font-size:9px;letter-spacing:.14em;font-weight:800;color:#ffcf55;padding-bottom:14px;border-bottom:1px solid #ffffff38}
.contact-checklist>div:not(.contact-checklist-head){display:flex;align-items:center;gap:15px;padding:12px 0;border-bottom:1px solid #ffffff24;position:relative;z-index:1;font-size:13px;font-weight:650}
.contact-checklist b{font-size:11px;color:#ffce5a}
.contact-checklist p{font-size:12px;color:#cdd7ff;line-height:1.65;margin:15px 0 0;position:relative;z-index:1}
.privacy-note{background:#eef3ff;padding:34px 0;border-bottom:1px solid #e0e8f8}
.privacy-note-inner{display:grid;grid-template-columns:1fr 1.1fr;gap:8%;align-items:center}.privacy-note h2{font-size:clamp(28px,2.8vw,39px);line-height:1.16;margin:13px 0 0}.privacy-note p{color:#526483;font-size:15px;line-height:1.75;margin:0}
/* Keep the approved expertise icon semantics and color variations. */
.expertise-card.brand .icon-shell{background:linear-gradient(145deg,#fff7e4,#fff1cf)}
.expertise-card.technology .icon-shell{background:linear-gradient(145deg,#edefff,#e1e5ff)}
.expertise-card.cloud .icon-shell{background:linear-gradient(145deg,#e7faff,#d9f5ff)}
.expertise-card.teams .icon-shell{background:linear-gradient(145deg,#f0efff,#e6e2ff)}
/* Comfortable density and restrained motion. */
.direction-art,.story-feature,.engage-visual{transition:box-shadow .35s ease}
.direction-art:hover,.story-feature:hover,.engage-visual:hover{box-shadow:0 23px 44px rgba(17,37,101,.15)}
@media(max-width:1050px){.direction-grid{gap:36px}.direction-copy h2{font-size:clamp(31px,4vw,44px)}}
@media(max-width:790px){.direction-section{padding:55px 0}.direction-grid{grid-template-columns:1fr;gap:30px}.direction-art{max-width:720px;width:100%;min-height:275px}.privacy-note-inner{grid-template-columns:1fr;gap:18px}}
@media(max-width:560px){.container{width:calc(100% - 36px)}.story-feature{padding:27px 23px;min-height:390px}.feature-title{font-size:33px;margin:0}.story-path{grid-template-columns:1fr 10px 1fr 10px 1fr;gap:4px}.story-path-step{padding:10px 5px;min-height:70px}.story-path-step strong{font-size:8px}.story-path-num{font-size:9px}.feature-bottom{font-size:10px;line-height:1.45;letter-spacing:.02em}.engage-path-row{padding:13px 12px;gap:10px}.engage-path-row:nth-child(2){margin-left:10px}.engage-path-row:nth-child(3){margin-left:20px}.engage-path-row strong{font-size:9.5px}.engage-path-row small{font-size:11px}.direction-art{padding:23px 19px;min-height:255px}.direction-stages{gap:5px}.direction-stages>div{padding:12px 9px;min-height:90px}.direction-stages strong{font-size:11px}.direction-copy h2{font-size:36px}.direction-copy p{font-size:14px}.contact-checklist{padding:21px 16px}.privacy-note{padding:32px 0}}
@media(prefers-reduced-motion:reduce){.direction-art,.story-feature,.engage-visual{transition:none!important}}
/* Never hide content until it scrolls into view: stable rendering on slow devices,
   accessibility settings and crawler/browser previews. Hover + hero entrance stay smooth. */
.js-motion [data-reveal].reveal-pending{opacity:1;transform:none}
