:root {
    --ink:#081b30;
    --navy:#0d2947;
    --blue:#2f80c7;
    --sky:#79c8f2;
    --gold:#e1ab39;
    --paper:#f4f7fa;
    --line:#dce6ef;
    --copy:#43566a;
    --white:#fff;
    --r:20px;
    --shadow:0 24px 64px rgba(8,27,48,.12)
}
* {
    box-sizing:border-box
}
html {
    scroll-behavior:smooth;
    scroll-padding-top:110px
}
body {
    margin:0;
    color:var(--ink);
    font:16px/1.6 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    background:#fff
}
img {
    display:block;
    max-width:100%;
    height:auto
}
a {
    color:inherit;
    text-decoration:none
}
button,input,select,textarea {
    font:inherit
}
.shell {
    width:min(1180px,calc(100% - 48px));
    margin:auto
}
.narrow {
    max-width:760px
}
.eyebrow {
    display:inline-flex;
    align-items:center;
    gap:10px;
    color:var(--blue);
    font-size:12px;
    font-weight:800;
    letter-spacing:.15em;
    text-transform:uppercase
}
.eyebrow:before {
    content:"";
    width:24px;
    height:2px;
    background:var(--gold)
}
h1,h2,h3,p {
    margin-top:0
}
h1,h2,h3 {
    letter-spacing:-.035em;
    line-height:1.08
}
h1 {
    font-size:clamp(46px,6.4vw,82px);
    margin-bottom:26px
}
h2 {
    font-size:clamp(34px,4vw,54px);
    margin-bottom:22px
}
h3 {
    font-size:22px;
    margin-bottom:10px
}
p {
    color:var(--copy)
}
.lead {
    font-size:clamp(18px,2vw,22px);
    line-height:1.55
}
.section {
    padding:100px 0
}
.section.soft {
    background:var(--paper)
}
.section.dark {
    background:var(--ink);
    color:#fff
}
.section.dark p {
    color:#bfd0df
}
.section.dark h2,.section.dark h3 {
    color:#fff
}
.center {
    text-align:center;
    margin-inline:auto
}
.grid {
    display:grid;
    gap:24px
}
.g2 {
    grid-template-columns:repeat(2,minmax(0,1fr))
}
.g3 {
    grid-template-columns:repeat(3,minmax(0,1fr))
}
.g4 {
    grid-template-columns:repeat(4,minmax(0,1fr))
}
.announce {
    height:38px;
    background:var(--ink);
    color:#dbe9f5;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    font-size:13px
}
.announce b {
    color:var(--gold);
    font-size:10px;
    letter-spacing:.15em;
    text-transform:uppercase
}
.announce a {
    color:#fff;
    border-bottom:1px solid rgba(255,255,255,.4)
}
.site-head {
    position:sticky;
    top:0;
    z-index:50;
    background:rgba(255,255,255,.94);
    border-bottom:1px solid var(--line);
    backdrop-filter:blur(14px)
}
.head-in {
    height:76px;
    display:flex;
    align-items:center;
    justify-content:space-between
}
.brand {
    display:flex;
    align-items:center;
    gap:12px;
    font-size:20px;
    font-weight:800;
    letter-spacing:-.03em
}
.brand img {
    width:54px;
    height:auto;
    aspect-ratio:122/72;
    object-fit:contain
}
.site-nav {
    display:flex;
    align-items:center;
    gap:28px
}
.site-nav a {
    font-size:14px;
    font-weight:650;
    color:#354a5f
}
.site-nav a:hover,.site-nav a.active {
    color:var(--blue)
}
.site-nav .contact {
    color:#fff;
    background:var(--ink);
    padding:11px 18px;
    border-radius:999px
}
.menu {
    display:none;
    border:0;
    background:none;
    padding:8px;
    cursor:pointer
}
.menu span {
    display:block;
    width:25px;
    height:2px;
    background:var(--ink);
    margin:5px
}
.button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:50px;
    padding:0 22px;
    border-radius:999px;
    font-weight:750;
    border:1px solid transparent
}
.button.primary {
    background:var(--blue);
    color:#fff;
    box-shadow:0 12px 25px rgba(47,128,199,.24)
}
.button.ghost {
    border-color:#aabaca;
    background:#fff;
    color:var(--ink)
}
.button.light {
    background:#fff;
    color:var(--ink)
}
.actions {
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    margin-top:32px
}
.hero {
    padding:92px 0 80px;
    background:linear-gradient(140deg,#fff 0%,#f5f9fc 70%,#edf5fa 100%);
    overflow:hidden
}
.hero-grid {
    display:grid;
    grid-template-columns:1.02fr .98fr;
    gap:72px;
    align-items:center
}
.hero h1 em {
    font-style:normal;
    color:var(--blue)
}
.hero-copy {
    max-width:660px
}
.hero-visual {
    position:relative;
    min-height:520px;
    background:var(--ink);
    border-radius:28px;
    box-shadow:var(--shadow);
    padding:32px;
    color:#fff;
    overflow:hidden
}
.hero-visual:after {
    content:"";
    position:absolute;
    width:300px;
    height:300px;
    border-radius:50%;
    right:-120px;
    top:-130px;
    border:1px solid rgba(121,200,242,.2);
    box-shadow:0 0 0 45px rgba(121,200,242,.035),0 0 0 90px rgba(121,200,242,.025)
}
.code-card,.meaning-card {
    position:relative;
    z-index:1;
    padding:24px;
    border-radius:15px
}
.code-card {
    background:#102f50;
    border:1px solid #285476;
    font:13px/1.65 ui-monospace,SFMono-Regular,Menlo,monospace;
    color:#95bad7
}
.meaning-card {
    margin:44px 0 0 70px;
    background:#fff;
    color:var(--ink);
    box-shadow:0 18px 40px rgba(0,0,0,.24)
}
.meaning-card p {
    color:#486279;
    margin:0
}
.flow-arrow {
    position:absolute;
    left:46px;
    top:230px;
    height:76px;
    border-left:2px dashed var(--gold)
}
.flow-arrow:after {
    content:"";
    position:absolute;
    left:-6px;
    bottom:0;
    width:10px;
    height:10px;
    border-right:2px solid var(--gold);
    border-bottom:2px solid var(--gold);
    transform:rotate(45deg)
}
.visual-label {
    color:var(--gold);
    font-size:11px;
    font-weight:800;
    letter-spacing:.15em;
    text-transform:uppercase;
    margin-bottom:10px
}
.architecture {
    display:grid;
    grid-template-columns:1fr 80px 1.2fr 80px 1fr;
    align-items:stretch;
    margin-top:46px
}
.arch-node {
    padding:30px;
    border:1px solid var(--line);
    border-radius:var(--r);
    background:#fff;
    box-shadow:0 12px 34px rgba(8,27,48,.06)
}
.arch-node.engine {
    background:var(--ink);
    color:#fff;
    border:0
}
.arch-node.engine p {
    color:#bdd0df
}
.arch-link {
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--gold);
    font-size:34px
}
.chiprow {
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin-top:16px
}
.chip {
    font-size:12px;
    font-weight:700;
    padding:6px 9px;
    background:#edf3f7;
    border-radius:999px;
    color:#52687b
}
.engine .chip {
    background:rgba(255,255,255,.08);
    color:#d7e5ef
}
.value-card {
    padding:30px;
    border-top:3px solid var(--blue);
    background:#fff;
    border-radius:0 0 var(--r) var(--r);
    box-shadow:0 14px 38px rgba(8,27,48,.07)
}
.value-card .num {
    font-size:12px;
    font-weight:800;
    color:var(--blue);
    letter-spacing:.13em
}
.value-card p {
    margin-bottom:0
}
.process {
    counter-reset:step
}
.process-card {
    counter-increment:step;
    padding:30px;
    background:#112d4a;
    border:1px solid #294a67;
    border-radius:var(--r)
}
.process-card:before {
    content:"0" counter(step);
    display:block;
    color:var(--gold);
    font-size:12px;
    font-weight:800;
    letter-spacing:.15em;
    margin-bottom:35px
}
.shot {
    background:#fff;
    border:1px solid var(--line);
    border-radius:var(--r);
    overflow:hidden;
    box-shadow:var(--shadow)
}
.shot img {
    width:100%;
    aspect-ratio:16/8.2;
    object-fit:cover;
    object-position:top
}
.shot-copy {
    padding:22px
}
.shot-copy p {
    margin:0;
    font-size:14px
}
.stat {
    padding:28px;
    border-left:1px solid #2e4c67
}
.stat:first-child {
    border-left:0
}
.stat strong {
    display:block;
    color:#fff;
    font-size:clamp(35px,4vw,58px);
    line-height:1
}
.stat span {
    color:#9fb5c8;
    font-size:13px
}
.quote {
    font-size:clamp(25px,3.2vw,42px);
    line-height:1.25;
    letter-spacing:-.035em
}
.quote:before {
    content:"“";
    display:block;
    color:var(--gold);
    font-size:80px;
    line-height:.7
}
.cta {
    padding:72px 0;
    background:var(--blue);
    color:#fff
}
.cta-in {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:40px
}
.cta h2 {
    color:#fff;
    margin:0;
    max-width:720px
}
.cta p {
    color:#e7f3fb;
    margin:12px 0 0
}
.page-hero {
    padding:88px 0 72px;
    background:var(--ink);
    color:#fff;
    overflow:hidden;
    position:relative
}
.page-hero h1 {
    font-size:clamp(44px,5.4vw,70px);
    color:#fff;
    max-width:880px
}
.page-hero p {
    color:#c1d2e1;
    max-width:720px
}
.page-hero:after {
    content:"";
    position:absolute;
    right:-180px;
    bottom:-260px;
    width:440px;
    height:440px;
    border:1px solid rgba(121,200,242,.2);
    border-radius:50%;
    box-shadow:0 0 0 60px rgba(121,200,242,.025),0 0 0 120px rgba(121,200,242,.02)
}
.feature {
    padding:30px;
    border:1px solid var(--line);
    border-radius:var(--r);
    background:#fff
}
.feature .icon {
    width:44px;
    height:44px;
    border-radius:13px;
    background:#eaf4fb;
    display:grid;
    place-items:center;
    color:var(--blue);
    font-size:21px;
    margin-bottom:24px
}
.feature p {
    margin:0
}
.journey {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:0;
    margin-top:45px
}
.journey>div {
    padding:28px;
    border:1px solid var(--line);
    margin-left:-1px
}
.journey>div:first-child {
    border-radius:var(--r) 0 0 var(--r);
    margin-left:0
}
.journey>div:last-child {
    border-radius:0 var(--r) var(--r) 0;
    background:var(--ink);
    color:#fff
}
.journey>div:last-child p {
    color:#bfd0df
}
.journey b {
    display:block;
    color:var(--blue);
    font-size:12px;
    letter-spacing:.12em;
    margin-bottom:25px
}
.journey p {
    margin:0;
    font-size:14px
}
.profile {
    display:grid;
    grid-template-columns:110px 1fr;
    gap:20px;
    align-items:center;
    padding:22px;
    border:1px solid var(--line);
    border-radius:var(--r);
    background:#fff
}
.profile img {
    width:110px;
    height:110px;
    object-fit:cover;
    border-radius:16px
}
.profile h3 {
    margin-bottom:4px
}
.profile p {
    font-size:14px;
    margin:0
}
.form {
    padding:34px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:var(--r);
    box-shadow:var(--shadow)
}
.form-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px
}
.field {
    display:flex;
    flex-direction:column;
    gap:7px
}
.field.full {
    grid-column:1/-1
}
.field label {
    font-size:13px;
    font-weight:750
}
.field input,.field select,.field textarea {
    width:100%;
    border:1px solid #bbcbd8;
    border-radius:10px;
    padding:13px 14px;
    background:#fff
}
.field textarea {
    min-height:130px;
    resize:vertical
}
.field input:focus,.field select:focus,.field textarea:focus {
    outline:3px solid rgba(47,128,199,.18);
    border-color:var(--blue)
}
.contact-aside {
    padding:35px;
    background:var(--ink);
    color:#fff;
    border-radius:var(--r)
}
.contact-aside p {
    color:#bfd0df
}
.mini-flow>div {
    position:relative;
    padding:0 0 28px 38px
}
.mini-flow>div:before {
    content:"";
    position:absolute;
    left:8px;
    top:7px;
    width:10px;
    height:10px;
    background:var(--gold);
    border-radius:50%
}
.mini-flow>div:not(:last-child):after {
    content:"";
    position:absolute;
    left:12px;
    top:20px;
    bottom:5px;
    border-left:1px dashed #5d7890
}
.site-footer {
    padding:64px 0 30px;
    background:#061525;
    color:#fff;
    border-top:4px solid var(--gold)
}
.foot-grid {
    display:grid;
    grid-template-columns:2fr 1fr 1fr 1fr;
    gap:40px
}
.site-footer p,.site-footer a {
    color:#99afc1;
    font-size:14px
}
.site-footer h4 {
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.12em;
    color:#fff;
    margin:0 0 15px
}
.foot-links {
    display:grid;
    gap:8px
}
.foot-bottom {
    margin-top:44px;
    padding-top:22px;
    border-top:1px solid #20364a
}
@media(max-width:900px) {
    .hero-grid {
        grid-template-columns:1fr;
        gap:45px
  }
    .hero-visual {
        min-height:460px
  }
    .architecture {
        grid-template-columns:1fr
  }
    .arch-link {
        transform:rotate(90deg);
        height:65px
  }
    .g4 {
        grid-template-columns:repeat(2,1fr)
  }
    .g3 {
        grid-template-columns:1fr
  }
    .journey {
        grid-template-columns:1fr 1fr
  }
    .journey>div,.journey>div:first-child,.journey>div:last-child {
        border-radius:0;
        margin:0 0 -1px
  }
    .cta-in {
        align-items:flex-start;
        flex-direction:column
  }
    .foot-grid {
        grid-template-columns:1fr 1fr
  }
    .site-nav {
        display:none;
        position:absolute;
        top:76px;
        left:0;
        right:0;
        background:#fff;
        padding:20px 24px 28px;
        box-shadow:0 20px 40px rgba(8,27,48,.14);
        flex-direction:column;
        align-items:stretch
  }
    .site-nav.active {
        display:flex
  }
    .site-nav a {
        text-align:center;
        padding:8px
  }
    .menu {
        display:block
  }
}
@media(max-width:620px) {
    .shell {
        width:min(100% - 32px,1180px)
  }
    .announce span {
        display:none
  }
    .section {
        padding:72px 0
  }
    .hero {
        padding:65px 0
  }
    .hero-visual {
        min-height:420px;
        padding:20px
  }
    .meaning-card {
        margin:38px 0 0 28px
  }
    .flow-arrow {
        left:28px;
        top:210px
  }
    .g2,.g4,.journey,.form-grid {
        grid-template-columns:1fr
  }
    .profile {
        grid-template-columns:76px 1fr
  }
    .profile img {
        width:76px;
        height:76px
  }
    .actions {
        flex-direction:column
  }
    .button {
        width:100%
  }
    .foot-grid {
        grid-template-columns:1fr
  }
    .stat {
        border-left:0;
        border-top:1px solid #2e4c67
  }
    .stat:first-child {
        border-top:0
  }
    .architecture {
        margin-top:30px
  }
    .brand img {
        width:48px
  }
}
@media(prefers-reduced-motion:reduce) {
    html {
        scroll-behavior:auto
  }
    *,*:before,*:after {
        transition:none!important;
        animation:none!important
  }
}
/* Review corrections: balanced hero typography, visible contact hero, text-only footer brand. */ .hero h1 {
    font-size:clamp(44px,5.35vw,72px);
    max-width:12ch;
    text-wrap:balance
}
.page-hero h1 {
    font-size:clamp(42px,4.55vw,62px);
    max-width:19ch;
    text-wrap:balance
}
.page-hero .lead {
    max-width:760px;
    text-wrap:pretty
}
.site-footer .brand img {
    display:none
}
.site-footer .brand {
    font-size:22px;
    color:#fff
}
body .page-hero {
    background:var(--ink)!important;
    text-align:left!important;
    padding:88px 0 72px!important
}
body .page-hero h1 {
    color:#fff!important;
    margin-bottom:26px!important
}
body .page-hero .lead {
    color:#c1d2e1!important;
    margin:0!important
}
@media(max-width:620px) {
    .hero h1,.page-hero h1 {
        max-width:none;
        text-wrap:pretty
  }
    .page-hero {
        padding:64px 0 58px!important
  }
}
/* Product image lightbox */ .shot {
    cursor:zoom-in
}
.image-lightbox {
    position:fixed;
    inset:0;
    z-index:2000;
    display:none;
    align-items:center;
    justify-content:center;
    padding:36px;
    background:rgba(3,13,24,.9);
    backdrop-filter:blur(8px)
}
.image-lightbox.open {
    display:flex
}
.image-lightbox-dialog {
    position:relative;
    width:min(1400px,96vw);
    max-height:92vh;
    display:flex;
    flex-direction:column;
    gap:12px
}
.image-lightbox-frame {
    min-height:0;
    overflow:auto;
    border-radius:14px;
    background:#fff;
    box-shadow:0 32px 90px rgba(0,0,0,.45)
}
.image-lightbox-frame img {
    display:block;
    width:auto;
    max-width:none;
    min-width:100%;
    height:auto
}
.image-lightbox-caption {
    margin:0;
    color:#d9e5ef;
    text-align:center;
    font-size:14px
}
.image-lightbox-close {
    position:absolute;
    right:-14px;
    top:-14px;
    z-index:2;
    width:48px;
    height:48px;
    border:1px solid rgba(255,255,255,.45);
    border-radius:50%;
    background:#fff;
    color:var(--ink);
    font-size:28px;
    line-height:1;
    cursor:pointer;
    box-shadow:0 10px 30px rgba(0,0,0,.3)
}
.image-lightbox-close:hover {
    background:var(--gold)
}
body.lightbox-open {
    overflow:hidden
}
@media(max-width:620px) {
    .image-lightbox {
        padding:18px
  }
    .image-lightbox-dialog {
        width:100%;
        max-height:96vh
  }
    .image-lightbox-close {
        right:-4px;
        top:-12px
  }
    .image-lightbox-frame img {
        min-width:900px
  }
}
/* Approved Buried Business landing-page hero */ .hero {
    min-height:min(760px,calc(100vh - 114px));
    display:flex;
    align-items:center;
    background:#fff url("../assets/img/buried-business-depth-v6.png") center/cover no-repeat;
    padding:72px 0
}
.hero-grid {
    display:block
}
.hero-copy {
    width:42%;
    max-width:540px
}
.hero-visual {
    display:none
}
.shot {
    position:relative
}
.shot::after {
    content:"Enlarge";
    position:absolute;
    top:12px;
    right:12px;
    padding:7px 11px;
    border-radius:999px;
    background:rgba(8,27,48,.88);
    color:#fff;
    font-size:11px;
    font-weight:750;
    letter-spacing:.06em;
    text-transform:uppercase;
    opacity:.85;
    transition:opacity .2s ease,transform .2s ease
}
.shot:hover::after,.shot:focus-visible::after {
    opacity:1;
    transform:translateY(-2px)
}
@media(max-width:900px) {
    .hero {
        display:block;
        min-height:0;
        background:none;
        padding:64px 0 0
  }
    .hero-grid {
        display:block
  }
    .hero-copy {
        width:auto;
        max-width:650px
  }
    .hero-grid::after {
        content:"";
        display:block;
        width:100%;
        aspect-ratio:1672/941;
        margin-top:44px;
        background:url("../assets/img/buried-business-depth-v6.png") center/cover no-repeat
  }
}
@media(max-width:620px) {
    .hero {
        padding-top:50px
  }
    .hero-grid::after {
        width:calc(100% + 32px);
        margin-left:-16px;
        margin-top:38px
  }
    .shot::after {
        top:8px;
        right:8px
  }
}
/* Scale and alignment refinements from desktop review */ .hero {
    min-height:min(680px,calc(100vh - 114px));
    background-size:90% auto;
    background-position:right center;
    background-repeat:no-repeat
}
.hero h1 {
    font-size:clamp(42px,4.85vw,65px);
    max-width:12ch
}
@media(max-width:900px) {
    .hero {
        background:none
  }
    .hero h1 {
        font-size:clamp(42px,7vw,60px)
  }
}
/* Distinctive secondary-page hero identities */ .page-hero .shell {
    position:relative;
    z-index:2
}
.page-hero .shell>* {
    max-width:62%
}
.page-hero::after {
    display:none
}
.page-hero::before {
    content:"";
    position:absolute;
    z-index:1;
    right:6%;
    top:50%;
    width:28%;
    height:56%;
    transform:translateY(-50%);
    pointer-events:none
}
.page-approach .page-hero {
    background:#f2f7fa!important
}
.page-approach .page-hero h1 {
    color:var(--ink)!important
}
.page-approach .page-hero .lead {
    color:var(--copy)!important
}
.page-approach .page-hero::before {
    background:radial-gradient(circle at 8% 50%,var(--gold) 0 6px,transparent 7px),radial-gradient(circle at 38% 50%,var(--blue) 0 8px,transparent 9px),radial-gradient(circle at 68% 50%,var(--blue) 0 8px,transparent 9px),radial-gradient(circle at 98% 50%,var(--ink) 0 10px,transparent 11px),linear-gradient(var(--line),var(--line)) center/92% 2px no-repeat
}
.page-solutions .page-hero {
    background:#081b30!important
}
.page-solutions .page-hero::before {
    background:linear-gradient(135deg,transparent 0 14%,rgba(47,128,199,.28) 14% 42%,transparent 42%),linear-gradient(135deg,transparent 0 35%,rgba(225,171,57,.72) 35% 57%,transparent 57%),linear-gradient(135deg,transparent 0 56%,rgba(121,200,242,.22) 56% 82%,transparent 82%);
    border:1px solid rgba(255,255,255,.12)
}
.page-use-cases .page-hero {
    background:#1769aa!important
}
.page-use-cases .page-hero::before {
    height:62%;
    background:repeating-linear-gradient(90deg,rgba(255,255,255,.12) 0 11%,transparent 11% 16%);
    border-block:1px solid rgba(255,255,255,.3)
}
.page-insights .page-hero {
    background:#f7f3e8!important
}
.page-insights .page-hero h1 {
    color:var(--ink)!important
}
.page-insights .page-hero .lead {
    color:var(--copy)!important
}
.page-insights .page-hero::before {
    background:linear-gradient(90deg,transparent 49.5%,rgba(8,27,48,.18) 50%,transparent 50.5%),linear-gradient(transparent 49.5%,rgba(8,27,48,.18) 50%,transparent 50.5%),linear-gradient(135deg,rgba(225,171,57,.75) 0 50%,rgba(47,128,199,.18) 50%);
    border:1px solid rgba(8,27,48,.18)
}
.page-about .page-hero {
    background:#fff!important;
    border-bottom:1px solid var(--line)
}
.page-about .page-hero h1 {
    color:var(--ink)!important
}
.page-about .page-hero .lead {
    color:var(--copy)!important
}
.page-about .page-hero::before {
    background:radial-gradient(circle at 25% 28%,#081b30 0 34px,transparent 35px),radial-gradient(circle at 70% 25%,#2f80c7 0 46px,transparent 47px),radial-gradient(circle at 38% 77%,#e1ab39 0 28px,transparent 29px),radial-gradient(circle at 78% 76%,#dce6ef 0 56px,transparent 57px)
}
.page-contact .page-hero {
    background:#102d4b!important
}
.page-contact .page-hero::before {
    border:1px solid rgba(121,200,242,.35);
    border-radius:50%;
    box-shadow:0 0 0 32px rgba(121,200,242,.06),0 0 0 64px rgba(225,171,57,.05)
}
@media(max-width:760px) {
    .page-hero .shell>* {
        max-width:none
  }
    .page-hero::before {
        right:16px;
        top:auto;
        bottom:14px;
        width:120px;
        height:72px;
        transform:none;
        opacity:.55
  }
    .page-hero {
        padding-bottom:64px!important
  }
}
/* Hero V8: independent content and artwork columns; crop the bitmap's reserved copy area. */ .hero {
    display:block;
    min-height:0;
    padding:64px 0;
    background:#f2f5f7
}
.hero-grid {
    display:grid;
    grid-template-columns:minmax(0,.92fr) minmax(430px,1.08fr);
    align-items:center;
    gap:52px
}
.hero-copy {
    width:auto;
    max-width:560px
}
.hero-visual {
    display:block;
    min-height:0;
    width:100%;
    aspect-ratio:1.031/1;
    padding:0;
    border-radius:18px;
    background:#081b30 url("../assets/img/buried-business-depth-v6.png") right center/172% 100% no-repeat;
    box-shadow:0 22px 58px rgba(8,27,48,.18)
}
.hero-visual>* {
    display:none
}
@media(max-width:900px) {
    .hero {
        padding:58px 0
  }
    .hero-grid {
        display:grid;
        grid-template-columns:1fr;
        gap:38px
  }
    .hero-copy {
        max-width:680px
  }
    .hero-grid::after {
        display:none
  }
    .hero-visual {
        display:block;
        width:min(100%,680px);
        margin-inline:auto;
        aspect-ratio:1.031/1;
        background-size:172% 100%;
        background-position:right center
  }
}
@media(max-width:620px) {
    .hero {
        padding:46px 0 0
  }
    .hero-grid {
        gap:34px
  }
    .hero h1 {
        font-size:clamp(38px,11vw,48px);
        line-height:1.04
  }
    .hero .eyebrow {
        font-size:10px;
        letter-spacing:.12em
  }
    .hero-copy {
        padding-inline:0
  }
    .hero-visual {
        width:calc(100% + 32px);
        margin-left:-16px;
        border-radius:0;
        box-shadow:none
  }
    .hero-grid::after {
        display:none
  }
}
/* Secondary hero motif revisions */ .page-approach .page-hero::before {
    right:7%;
    width:26%;
    background:radial-gradient(circle at 6% 50%,var(--gold) 0 6px,transparent 7px),radial-gradient(circle at 35% 50%,var(--blue) 0 8px,transparent 9px),radial-gradient(circle at 64% 50%,var(--blue) 0 8px,transparent 9px),radial-gradient(circle at 93% 50%,var(--ink) 0 10px,transparent 11px),linear-gradient(var(--line),var(--line)) center/87% 2px no-repeat
}
.page-solutions .page-hero::before {
    border:0;
    background:linear-gradient(rgba(47,128,199,.9),rgba(47,128,199,.9)) left top/27% 100% no-repeat,linear-gradient(rgba(225,171,57,.92),rgba(225,171,57,.92)) center/27% 68% no-repeat,linear-gradient(rgba(121,200,242,.48),rgba(121,200,242,.48)) right bottom/27% 42% no-repeat
}
.page-use-cases .page-hero::before {
    height:66%;
    border:0;
    background:radial-gradient(circle at 12% 25%,#fff 0 7px,transparent 8px),radial-gradient(circle at 50% 25%,#fff 0 7px,transparent 8px),radial-gradient(circle at 88% 25%,#fff 0 7px,transparent 8px),radial-gradient(circle at 12% 75%,var(--gold) 0 7px,transparent 8px),radial-gradient(circle at 50% 75%,var(--gold) 0 7px,transparent 8px),radial-gradient(circle at 88% 75%,var(--gold) 0 7px,transparent 8px),linear-gradient(rgba(255,255,255,.22),rgba(255,255,255,.22)) center 25%/76% 1px no-repeat,linear-gradient(rgba(255,255,255,.22),rgba(255,255,255,.22)) center 75%/76% 1px no-repeat
}
.page-insights .page-hero::before {
    width:220px;
    height:220px;
    right:10%;
    border:1px solid rgba(8,27,48,.18);
    border-radius:50%;
    background:radial-gradient(circle at 50% 7%,var(--ink) 0 5px,transparent 6px),radial-gradient(circle at 80% 20%,var(--blue) 0 5px,transparent 6px),radial-gradient(circle at 93% 50%,var(--gold) 0 5px,transparent 6px),radial-gradient(circle at 80% 80%,var(--blue) 0 5px,transparent 6px),radial-gradient(circle at 50% 93%,var(--ink) 0 5px,transparent 6px),radial-gradient(circle at 20% 80%,var(--blue) 0 5px,transparent 6px),radial-gradient(circle at 7% 50%,var(--gold) 0 5px,transparent 6px),radial-gradient(circle at 20% 20%,var(--blue) 0 5px,transparent 6px),radial-gradient(circle at center,var(--gold) 0 11px,transparent 12px)
}
.page-contact .page-hero::before {
    width:26%;
    height:48%;
    right:8%;
    border:1px solid rgba(121,200,242,.65);
    border-radius:2px;
    box-shadow:24px 24px 0 -1px #102d4b,24px 24px 0 0 rgba(225,171,57,.78);
    background:linear-gradient(rgba(121,200,242,.18),rgba(121,200,242,.18)) 12% 28%/58% 2px no-repeat,linear-gradient(rgba(121,200,242,.18),rgba(121,200,242,.18)) 12% 52%/76% 2px no-repeat,linear-gradient(rgba(121,200,242,.18),rgba(121,200,242,.18)) 12% 76%/42% 2px no-repeat
}
@media(max-width:760px) {
    .page-insights .page-hero::before {
        width:76px;
        height:76px;
        right:22px
  }
    .page-contact .page-hero::before {
        width:110px;
        height:58px;
        right:28px;
        box-shadow:12px 12px 0 -1px #102d4b,12px 12px 0 0 rgba(225,171,57,.78)
  }
}
/* Meaning-led hero and progression refinements */ .page-about .page-hero::before {
    border:1px solid rgba(8,27,48,.16);
    background:radial-gradient(circle at 25% 28%,#081b30 0 34px,transparent 35px),radial-gradient(circle at 70% 25%,#2f80c7 0 46px,transparent 47px),radial-gradient(circle at 38% 77%,#e1ab39 0 28px,transparent 29px),radial-gradient(circle at 78% 76%,#dce6ef 0 56px,transparent 57px),repeating-linear-gradient(90deg,transparent 0 31px,rgba(8,27,48,.08) 32px,transparent 33px 64px),repeating-linear-gradient(0deg,transparent 0 31px,rgba(8,27,48,.08) 32px,transparent 33px 64px)
}
.page-solutions .page-hero::before {
    width:27%;
    height:58%;
    border-left:1px solid rgba(255,255,255,.22);
    background:linear-gradient(rgba(47,128,199,.95),rgba(47,128,199,.95)) left top/100% 22% no-repeat,linear-gradient(rgba(225,171,57,.95),rgba(225,171,57,.95)) left center/76% 22% no-repeat,linear-gradient(rgba(121,200,242,.55),rgba(121,200,242,.55)) left bottom/52% 22% no-repeat
}
.page-use-cases .page-hero {
    background:#fff!important;
    border-bottom:1px solid var(--line)
}
.page-use-cases .page-hero h1 {
    color:var(--ink)!important
}
.page-use-cases .page-hero .lead {
    color:var(--copy)!important
}
.page-use-cases .page-hero::before {
    right:4%;
    width:36%;
    height:74%;
    background:#fff
}
.process {
    position:relative;
    overflow:visible
}
.process-card {
    position:relative;
    min-height:260px;
    display:flex;
    flex-direction:column;
    justify-content:flex-start
}
.process-card:nth-child(1) {
    background:#112d4a;
    border-color:#294a67
}
.process-card:nth-child(2) {
    background:#1769aa;
    border-color:#3988c7
}
.process-card:nth-child(3) {
    background:var(--gold);
    border-color:var(--gold);
    color:var(--ink)
}
.section.dark .process-card:nth-child(3) h3,.section.dark .process-card:nth-child(3) p {
    color:#3b2a09
}
.process-card:not(:last-child)::after {
    content:"→";
    position:absolute;
    z-index:3;
    right:-25px;
    top:50%;
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    transform:translateY(-50%);
    border-radius:50%;
    background:#fff;
    color:var(--blue);
    font-size:20px;
    font-weight:800;
    box-shadow:0 6px 18px rgba(0,0,0,.18)
}
@media(max-width:900px) {
    .process-card {
        min-height:0
  }
    .process-card:not(:last-child)::after {
        right:50%;
        top:auto;
        bottom:-29px;
        transform:translateX(50%) rotate(90deg)
  }
    .page-use-cases .page-hero::before {
        width:30%;
        right:2%
  }
}
@media(max-width:760px) {
    .page-use-cases .page-hero::before {
        width:145px;
        height:110px;
        right:8px;
        bottom:5px;
        opacity:.72
  }
    .page-about .page-hero::before {
        border:1px solid rgba(8,27,48,.12)
  }
}
/* Simplified Use Cases choice and Solutions capability sequence */ .page-use-cases .page-hero::before {
    right:7%;
    width:28%;
    height:52%;
    background:radial-gradient(circle at 40% 50%,var(--blue) 0 8px,#fff 9px 12px,transparent 13px),radial-gradient(circle at 94% 50%,#a9bac8 0 7px,#fff 8px 11px,transparent 12px),radial-gradient(circle at 94% 82%,var(--gold) 0 9px,#fff 10px 13px,transparent 14px),linear-gradient(90deg,var(--ink),var(--ink)) left center/40% 2px no-repeat,linear-gradient(90deg,#b8c6d2,#b8c6d2) 40% 50%/54% 2px no-repeat,linear-gradient(32deg,transparent 48.5%,var(--gold) 49% 51%,transparent 51.5%) 40% 44%/54% 42% no-repeat
}
.page-solutions .page-hero::before {
    display:none
}
.solution-stage {
    display:grid;
    justify-items:center;
    gap:14px;
    min-width:78px
}
.solution-stage b {
    font-size:11px;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:#d8e5ef
}
.solution-mark {
    position:relative;
    display:block;
    width:58px;
    height:58px
}
.stage-understand .solution-mark {
    border:2px solid var(--sky);
    border-radius:50%
}
.stage-understand .solution-mark::after {
    content:"";
    position:absolute;
    inset:17px;
    border-radius:50%;
    background:var(--sky)
}
.stage-analyze .solution-mark {
    width:46px;
    height:46px;
    border:2px solid #fff;
    transform:rotate(45deg)
}
.stage-analyze .solution-mark::before,.stage-analyze .solution-mark::after {
    content:"";
    position:absolute;
    background:var(--blue)
}
.stage-analyze .solution-mark::before {
    left:50%;
    top:-14px;
    bottom:-14px;
    width:2px;
    transform:translateX(-50%)
}
.stage-analyze .solution-mark::after {
    top:50%;
    left:-14px;
    right:-14px;
    height:2px;
    transform:translateY(-50%)
}
.stage-activate .solution-mark {
    border-radius:50%;
    background:var(--gold);
    box-shadow:0 0 0 9px rgba(225,171,57,.16),0 0 0 18px rgba(225,171,57,.07)
}
.stage-activate b {
    color:var(--gold)
}
@media(max-width:900px) {
    .page-solutions .page-hero .shell>* {
        max-width:58%
  }
}
@media(max-width:760px) {
    .page-use-cases .page-hero::before {
        right:12px;
        width:140px;
        height:82px;
        bottom:8px;
        opacity:.78
  }
    .page-solutions .page-hero .shell>* {
        max-width:none
  }
    .solution-stage {
        min-width:68px
  }
    .solution-mark {
        width:44px;
        height:44px
  }
    .stage-understand .solution-mark::after {
        inset:13px
  }
    .stage-analyze .solution-mark {
        width:36px;
        height:36px
  }
}
/* Approach: difficult-to-reach logic becomes explicit, usable knowledge. */ .page-approach .page-hero::before {
    display:none
}
.depth-field {
    position:relative;
    width:126px;
    height:126px
}
.depth-field span {
    position:absolute;
    border:1px solid rgba(8,27,48,.24);
    background:rgba(255,255,255,.18)
}
.depth-field span:nth-child(1) {
    inset:0
}
.depth-field span:nth-child(2) {
    inset:15px;
    border-color:rgba(8,27,48,.38)
}
.depth-field span:nth-child(3) {
    inset:30px;
    border-color:rgba(8,27,48,.58)
}
.depth-field em {
    position:absolute;
    inset:47px;
    background:var(--gold);
    box-shadow:0 0 0 8px rgba(225,171,57,.13)
}
.discovery-path {
    position:relative;
    height:2px;
    background:var(--blue)
}
.discovery-path b {
    position:absolute;
    left:50%;
    bottom:12px;
    transform:translateX(-50%);
    color:var(--blue);
    font-size:10px;
    line-height:1;
    letter-spacing:.13em;
    text-transform:uppercase
}
.discovery-path::before {
    content:"";
    position:absolute;
    left:-65px;
    top:-3px;
    width:8px;
    height:8px;
    border-radius:50%;
    background:var(--blue)
}
.discovery-path::after {
    content:"";
    position:absolute;
    right:-1px;
    top:-4px;
    border-left:8px solid var(--blue);
    border-block:5px solid transparent
}
.logic-release {
    position:relative;
    width:116px;
    height:116px;
    border-block:2px solid var(--gold);
    border-right:2px solid var(--gold);
    background:linear-gradient(31deg,transparent 48.8%,rgba(8,27,48,.3) 49.3% 50.7%,transparent 51.2%),linear-gradient(150deg,transparent 48.8%,rgba(8,27,48,.3) 49.3% 50.7%,transparent 51.2%)
}
.logic-release::before,.logic-release::after {
    content:"";
    position:absolute;
    left:0;
    width:22px;
    height:2px;
    background:var(--gold)
}
.logic-release::before {
    top:-2px
}
.logic-release::after {
    bottom:-2px
}
.logic-release span {
    position:absolute;
    width:12px;
    height:12px;
    border:3px solid #f2f7fa;
    border-radius:50%;
    background:var(--blue);
    box-shadow:0 0 0 1px rgba(8,27,48,.12)
}
.logic-release .node-a {
    left:15%;
    top:19%
}
.logic-release .node-b {
    right:15%;
    top:20%;
    background:var(--ink)
}
.logic-release .node-c {
    left:46%;
    bottom:16%;
    background:var(--gold)
}
@media(max-width:900px) {
    .depth-field {
        width:96px;
        height:96px
  }
    .depth-field span:nth-child(2) {
        inset:12px
  }
    .depth-field span:nth-child(3) {
        inset:24px
  }
    .depth-field em {
        inset:37px
  }
    .logic-release {
        width:88px;
        height:88px
  }
    .page-approach .page-hero .shell>* {
        max-width:59%
  }
}
@media(max-width:760px) {
    .page-approach .page-hero .shell>* {
        max-width:none
  }
    .logic-release {
        width:92px;
        height:92px
  }
}
/* Approach V13: a compact preview of the four-stage journey below. */ .approach-stage {
    position:relative;
    min-height:70px;
    display:grid;
    grid-template-columns:24px 38px 1fr;
    align-items:center;
    gap:8px;
    padding:10px;
    border:1px solid rgba(8,27,48,.16);
    background:rgba(255,255,255,.62)
}
.approach-stage span {
    align-self:start;
    color:#7a8d9e;
    font-size:9px;
    font-weight:800;
    letter-spacing:.08em
}
.approach-stage b {
    font-size:11px;
    letter-spacing:.06em;
    text-transform:uppercase;
    color:var(--ink)
}
.approach-stage i {
    position:relative;
    display:block;
    width:34px;
    height:34px;
    font-style:normal
}
.mini-discover i {
    border:1px solid rgba(8,27,48,.25);
    box-shadow:inset 0 0 0 7px #f2f7fa,inset 0 0 0 8px rgba(8,27,48,.4),inset 0 0 0 13px #f2f7fa
}
.mini-discover i::after {
    content:"";
    position:absolute;
    inset:13px;
    background:var(--gold)
}
.mini-validate i::before,.mini-validate i::after {
    content:"";
    position:absolute;
    border-radius:50%;
    background:var(--blue);
    box-shadow:0 0 0 3px #dceaf5
}
.mini-validate i::before {
    width:8px;
    height:8px;
    left:2px;
    top:13px;
    box-shadow:21px -10px 0 var(--ink),21px 10px 0 var(--gold)
}
.mini-validate i::after {
    left:8px;
    right:8px;
    top:16px;
    height:2px;
    border-radius:0;
    background:rgba(8,27,48,.34);
    transform:rotate(-25deg)
}
.mini-design i {
    background:linear-gradient(45deg,transparent 47%,var(--blue) 48% 52%,transparent 53%) left/50% 100% no-repeat,linear-gradient(-45deg,transparent 47%,var(--gold) 48% 52%,transparent 53%) right/50% 100% no-repeat
}
.mini-design i::before {
    content:"";
    position:absolute;
    left:1px;
    top:15px;
    width:9px;
    height:9px;
    border-radius:50%;
    background:var(--ink)
}
.mini-design i::after {
    content:"";
    position:absolute;
    right:0;
    top:2px;
    width:8px;
    height:8px;
    border-radius:50%;
    background:var(--blue);
    box-shadow:0 22px 0 var(--gold)
}
.mini-deliver i {
    border:2px solid var(--gold);
    background:linear-gradient(90deg,transparent 0 7px,rgba(8,27,48,.13) 7px 9px,transparent 9px 23px,rgba(8,27,48,.13) 23px 25px,transparent 25px),linear-gradient(transparent 0 7px,rgba(8,27,48,.13) 7px 9px,transparent 9px 23px,rgba(8,27,48,.13) 23px 25px,transparent 25px)
}
.mini-deliver i::after {
    content:"";
    position:absolute;
    right:-3px;
    bottom:-3px;
    width:10px;
    height:10px;
    background:var(--blue);
    border:2px solid #f2f7fa
}
.approach-stage:nth-of-type(1)::after,.approach-stage:nth-of-type(3)::after {
    content:"→";
    position:absolute;
    right:-10px;
    z-index:2;
    width:19px;
    height:19px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#f2f7fa;
    color:var(--blue);
    font-size:12px;
    font-weight:800
}
.approach-stage:nth-of-type(2)::after {
    content:"↓";
    position:absolute;
    bottom:-10px;
    left:50%;
    z-index:2;
    width:19px;
    height:19px;
    display:grid;
    place-items:center;
    transform:translateX(-50%);
    border-radius:50%;
    background:#f2f7fa;
    color:var(--blue);
    font-size:12px;
    font-weight:800
}
@media(max-width:900px) {
    .page-approach .page-hero .shell>* {
        max-width:56%
  }
}
@media(max-width:760px) {
    .page-approach .page-hero .shell>* {
        max-width:none
  }
    .approach-stage {
        min-height:64px;
        grid-template-columns:20px 32px 1fr;
        padding:8px;
        gap:6px
  }
    .approach-stage i {
        width:30px;
        height:30px
  }
    .mini-discover i::after {
        inset:11px
  }
}
/* Solutions V14: three sibling platforms share one Discovery-built library. */ .platform-row {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px
}
.platform {
    position:relative;
    display:grid;
    grid-template-rows:42px auto auto;
    justify-items:center;
    align-content:center;
    gap:3px;
    padding:10px 5px;
    border:1px solid rgba(255,255,255,.2);
    background:rgba(255,255,255,.035);
    text-align:center
}
.platform i {
    position:relative;
    display:block;
    width:34px;
    height:34px;
    font-style:normal
}
.platform small {
    color:#8fb5d4;
    font-size:8px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase
}
.platform b {
    color:#fff;
    font-size:10px;
    line-height:1.15
}
.platform-workbench i {
    border:2px solid var(--sky);
    border-radius:50%
}
.platform-workbench i::after {
    content:"";
    position:absolute;
    inset:10px;
    border-radius:50%;
    background:var(--sky)
}
.platform-impact i {
    width:27px;
    height:27px;
    margin-top:3px;
    border:2px solid #fff;
    transform:rotate(45deg)
}
.platform-impact i::before,.platform-impact i::after {
    content:"";
    position:absolute;
    background:var(--blue)
}
.platform-impact i::before {
    left:50%;
    top:-9px;
    bottom:-9px;
    width:2px;
    transform:translateX(-50%)
}
.platform-impact i::after {
    top:50%;
    left:-9px;
    right:-9px;
    height:2px;
    transform:translateY(-50%)
}
.platform-agents i {
    border-radius:50%;
    background:var(--gold);
    box-shadow:0 0 0 6px rgba(225,171,57,.15),0 0 0 12px rgba(225,171,57,.06)
}
.platform-bus {
    position:relative;
    width:67%;
    height:34px;
    justify-self:center;
    border-inline:1px solid rgba(121,200,242,.6);
    border-bottom:1px solid rgba(121,200,242,.6)
}
.platform-bus::before {
    content:"";
    position:absolute;
    left:50%;
    top:0;
    bottom:-16px;
    width:1px;
    background:rgba(121,200,242,.6);
    transform:translateX(-50%)
}
.platform-bus::after {
    content:"";
    position:absolute;
    left:-25%;
    right:-25%;
    top:0;
    height:1px;
    background:rgba(121,200,242,.6)
}
.knowledge-library {
    position:relative;
    width:72%;
    min-height:82px;
    justify-self:center;
    display:grid;
    place-content:center;
    gap:4px;
    padding:14px 18px;
    border:1px solid rgba(225,171,57,.82);
    border-radius:50%/16%;
    background:#102d4b;
    text-align:center;
    box-shadow:inset 0 6px 0 rgba(225,171,57,.08)
}
.knowledge-library::before {
    content:"";
    position:absolute;
    left:-1px;
    right:-1px;
    top:13px;
    height:14px;
    border-top:1px solid rgba(225,171,57,.45);
    border-radius:50%
}
.knowledge-library span {
    color:var(--gold);
    font-size:8px;
    font-weight:800;
    letter-spacing:.1em;
    text-transform:uppercase
}
.knowledge-library b {
    color:#fff;
    font-size:12px
}
.knowledge-library small {
    color:#a9bfd1;
    font-size:8px
}
@media(max-width:900px) {
    .page-solutions .page-hero .shell>* {
        max-width:55%
  }
}
@media(max-width:760px) {
    .page-solutions .page-hero .shell>* {
        max-width:none
  }
    .platform {
        grid-template-rows:36px auto auto;
        padding:7px 3px
  }
    .platform i {
        width:30px;
        height:30px
  }
    .platform b {
        font-size:9px
  }
    .knowledge-library {
        width:76%;
        min-height:74px
  }
}
/* V15 minimalist hero symbols */ .buried-logic {
    position:relative;
    width:96px;
    height:96px
}
.buried-logic span {
    position:absolute;
    border:1px solid rgba(8,27,48,.25)
}
.buried-logic span:nth-child(1) {
    inset:0
}
.buried-logic span:nth-child(2) {
    inset:14px;
    border-color:rgba(8,27,48,.42)
}
.buried-logic span:nth-child(3) {
    inset:28px;
    border-color:rgba(8,27,48,.64)
}
.buried-logic i {
    position:absolute;
    inset:41px;
    background:var(--gold);
    box-shadow:0 0 0 6px rgba(225,171,57,.12)
}
.clarity-bridge {
    position:relative;
    height:2px;
    background:linear-gradient(90deg,var(--blue),rgba(47,128,199,.24))
}
.clarity-bridge::before {
    content:"";
    position:absolute;
    left:-13px;
    top:-3px;
    width:8px;
    height:8px;
    border-radius:50%;
    background:var(--blue)
}
.capability-a {
    border:2px solid var(--sky);
    border-radius:50%
}
.capability-a::after {
    content:"";
    position:absolute;
    inset:13px;
    border-radius:50%;
    background:var(--sky)
}
.capability-b {
    width:34px!important;
    height:34px!important;
    border:2px solid #fff;
    transform:rotate(45deg)
}
.capability-b::after {
    content:"";
    position:absolute;
    inset:9px;
    background:var(--blue)
}
.capability-c {
    border-radius:50%;
    background:var(--gold);
    box-shadow:0 0 0 7px rgba(225,171,57,.14),0 0 0 14px rgba(225,171,57,.06)
}
@media(max-width:900px) {
    .page-approach .page-hero .shell>*,.page-solutions .page-hero .shell>* {
        max-width:58%
  }
}
@media(max-width:760px) {
    .buried-logic {
        width:88px;
        height:88px
  }
    .page-approach .page-hero .shell>*,.page-solutions .page-hero .shell>* {
        max-width:none
  }
}
/* Approach V16: layered application with one layer peeled back. */ .layered-application {
    position:relative;
    width:154px;
    height:154px;
    margin:11px 0 0 0;
    border-radius:50%;
    background:linear-gradient(29deg,transparent 49.4%,rgba(8,27,48,.16) 49.7% 50.3%,transparent 50.6%),linear-gradient(-37deg,transparent 49.4%,rgba(8,27,48,.13) 49.7% 50.3%,transparent 50.6%)
}
.layered-application .layer {
    position:absolute;
    border-radius:50%;
    border:1px solid rgba(8,27,48,.24);
    background:rgba(255,255,255,.08)
}
.layer-outer {
    inset:0
}
.layer-middle {
    inset:22px;
    border-color:rgba(8,27,48,.4)!important
}
.layer-inner {
    inset:45px;
    border-color:rgba(8,27,48,.6)!important
}
.business-core {
    position:absolute;
    inset:64px;
    border-radius:50%;
    background:var(--gold);
    box-shadow:0 0 0 7px rgba(225,171,57,.13)
}
.peeled-layer {
    position:absolute;
    z-index:2;
    right:-7px;
    top:-8px;
    width:78px;
    height:78px;
    border:1px solid var(--blue);
    border-radius:100% 8% 100% 8%;
    background:rgba(47,128,199,.09);
    transform:rotate(9deg);
    transform-origin:left bottom;
    box-shadow:5px 6px 0 rgba(47,128,199,.045)
}
.peeled-layer::before {
    content:"";
    position:absolute;
    left:-4px;
    bottom:-4px;
    width:8px;
    height:8px;
    border-radius:50%;
    background:var(--blue);
    box-shadow:0 0 0 4px #f2f7fa
}
.peeled-layer::after {
    display:none
}
.relation-node {
    position:absolute;
    width:9px;
    height:9px;
    border:2px solid #f2f7fa;
    border-radius:50%;
    background:var(--blue);
    box-shadow:0 0 0 1px rgba(8,27,48,.14)
}
.node-one {
    left:18px;
    top:70px
}
.node-two {
    right:29px;
    top:35px;
    background:var(--ink)
}
.node-three {
    right:21px;
    bottom:38px;
    background:var(--gold)
}
@media(max-width:900px) {
    .page-approach .page-hero .shell>* {
        max-width:62%
  }
}
@media(max-width:760px) {
    .page-approach .page-hero .shell>* {
        max-width:none
  }
}
/* Use Cases V18: distinct needs connected to one Workbench core. */ .page-use-cases .page-hero::before {
    display:none
}
.workbench-core {
    position:absolute;
    z-index:2;
    left:50%;
    top:50%;
    width:46px;
    height:46px;
    border:2px solid var(--blue);
    border-radius:50%;
    transform:translate(-50%,-50%);
    background:#fff;
    box-shadow:0 0 0 8px #dceaf5,0 0 0 9px rgba(47,128,199,.2)
}
.workbench-core::before {
    content:"";
    position:absolute;
    inset:12px;
    border-radius:50%;
    background:var(--gold)
}
.workbench-core::after {
    content:"";
    position:absolute;
    inset:18px;
    border-radius:50%;
    background:var(--ink)
}
@media(max-width:900px) {
    .page-use-cases .page-hero .shell>* {
        max-width:62%
  }
}
@media(max-width:760px) {
    .page-use-cases .page-hero .shell>* {
        max-width:none
  }
}
/* About V19: a focused human team creates disproportionate product leverage. */ .page-about .page-hero::before {
    display:none
}
.leverage-field {
    position:absolute;
    inset:10px 25px;
    border:1px solid rgba(47,128,199,.18);
    border-radius:50%;
    box-shadow:0 0 0 18px rgba(47,128,199,.045),0 0 0 36px rgba(47,128,199,.025)
}
.about-product-core {
    position:absolute;
    z-index:2;
    left:50%;
    top:50%;
    width:54px;
    height:54px;
    border:2px solid var(--blue);
    transform:translate(-50%,-50%) rotate(45deg);
    background:#fff;
    box-shadow:0 0 0 8px rgba(47,128,199,.1)
}
.about-product-core::before {
    content:"";
    position:absolute;
    inset:12px;
    border:1px solid var(--ink);
    background:#f2f7fa
}
.about-product-core::after {
    content:"";
    position:absolute;
    inset:20px;
    background:var(--gold)
}
@media(max-width:900px) {
    .page-about .page-hero .shell>* {
        max-width:61%
  }
}
@media(max-width:760px) {
    .page-about .page-hero .shell>* {
        max-width:none
  }
}
/* V20: consistent hero scale and a human Contact conversation. */ .layered-application {
    margin:20px 0 0 22px;
    transform:scale(1.14);
    transform-origin:center
}
.page-contact .page-hero::before {
    display:none
}
.person-right::before {
    background:var(--gold);
    box-shadow:0 0 0 4px rgba(225,171,57,.13)
}
.person-right::after {
    background:#6d8ba5
}
@media(max-width:900px) {
    .page-contact .page-hero .shell>* {
        max-width:59%
  }
}
@media(max-width:760px) {
    .layered-application {
        margin:16px 0 0 20px;
        transform:scale(1.1)
  }
    .page-contact .page-hero .shell>* {
        max-width:none
  }
}
/* Solutions V21: more space between sibling capabilities and foundation. */ .capability-b {
    width:37px!important;
    height:37px!important
}
@media(max-width:900px) {
    .page-solutions .page-hero .shell>* {
        max-width:57%
  }
}
@media(max-width:760px) {
    .page-solutions .page-hero .shell>* {
        max-width:none
  }
}
/* Editorial framework cards */ .risk-grid {
    margin-top:38px
}
.risk-card {
    padding:28px;
    border:1px solid rgba(255,255,255,.17);
    border-radius:var(--r);
    background:rgba(255,255,255,.045)
}
.risk-card .num,.process-card .num {
    display:block;
    margin-bottom:22px;
    color:var(--gold);
    font-size:12px;
    font-weight:800;
    letter-spacing:.14em
}
.risk-card h3 {
    color:#fff
}
.risk-card p {
    margin:0;
    color:#bfd0df;
    font-size:14px
}
.decision-list {
    display:grid;
    gap:18px
}
.decision-list .feature {
    padding:25px
}
.decision-list .feature h3 {
    margin-bottom:8px
}
@media(max-width:900px) {
    .risk-grid {
        grid-template-columns:repeat(2,1fr)
  }
}
@media(max-width:620px) {
    .risk-grid {
        grid-template-columns:1fr
  }
}
/* V23: each content type receives a distinct visual grammar. */ .process-card:nth-child(3)::before {
    color:var(--ink)
}
.operating-layout {
    display:grid;
    grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr);
    gap:72px;
    align-items:center
}
.operating-intro h2 {
    max-width:12ch
}
.intent-symbol {
    position:relative;
    width:180px;
    height:116px;
    margin-top:38px
}
.intent-symbol i {
    position:absolute;
    left:0;
    top:16px;
    width:82px;
    height:82px;
    border:1px solid var(--sky);
    border-radius:50%;
    box-shadow:inset 0 0 0 15px var(--ink),inset 0 0 0 16px rgba(121,200,242,.55),inset 0 0 0 30px var(--ink)
}
.intent-symbol i::after {
    content:"";
    position:absolute;
    inset:34px;
    border-radius:50%;
    background:var(--gold)
}
.intent-symbol::before {
    content:"";
    position:absolute;
    left:78px;
    right:17px;
    top:57px;
    height:1px;
    background:rgba(121,200,242,.52)
}
.intent-symbol span {
    position:absolute;
    right:0;
    width:12px;
    height:12px;
    border-radius:50%;
    background:var(--sky);
    box-shadow:0 0 0 4px rgba(121,200,242,.12)
}
.intent-symbol span:nth-of-type(1) {
    top:6px
}
.intent-symbol span:nth-of-type(2) {
    top:51px;
    background:var(--gold);
    box-shadow:0 0 0 4px rgba(225,171,57,.12)
}
.intent-symbol span:nth-of-type(3) {
    bottom:6px;
    background:#fff
}
.principle-list {
    display:grid;
    border-top:1px solid rgba(255,255,255,.17)
}
.principle-list article {
    display:grid;
    grid-template-columns:54px 1fr;
    gap:20px;
    padding:25px 0;
    border-bottom:1px solid rgba(255,255,255,.17)
}
.principle-list h3 {
    color:#fff;
    margin-bottom:7px
}
.principle-list p {
    color:#bfd0df;
    margin:0;
    font-size:15px
}
.principle-mark {
    width:44px;
    height:44px;
    display:grid;
    place-items:center;
    border:1px solid rgba(121,200,242,.48);
    border-radius:50%;
    color:var(--sky);
    font-size:20px;
    font-weight:700
}
.principle-list article:nth-child(2) .principle-mark {
    border-radius:7px;
    color:var(--gold);
    border-color:rgba(225,171,57,.55)
}
.principle-list article:nth-child(3) .principle-mark {
    transform:rotate(45deg);
    border-radius:4px
}
.principle-list article:nth-child(3) .principle-mark {
    color:#fff
}
.principle-list article:nth-child(3) .principle-mark::first-letter {
    transform:rotate(-45deg)
}
.responsibility-map {
    margin-top:48px;
    border-top:1px solid var(--line)
}
.responsibility-map>article {
    display:grid;
    grid-template-columns:70px minmax(190px,.7fr) minmax(0,1.7fr);
    gap:26px;
    align-items:center;
    padding:30px 0;
    border-bottom:1px solid var(--line)
}
.human-cue {
    position:relative;
    width:52px;
    height:58px
}
.human-cue::before {
    content:"";
    position:absolute;
    left:17px;
    top:0;
    width:17px;
    height:17px;
    border-radius:50%;
    background:var(--ink);
    box-shadow:0 0 0 5px #eaf4fb
}
.human-cue::after {
    content:"";
    position:absolute;
    left:7px;
    bottom:0;
    width:38px;
    height:31px;
    border-radius:20px 20px 4px 4px;
    background:var(--blue)
}
.responsibility-map>article:nth-child(2) .human-cue::after {
    background:var(--gold)
}
.responsibility-map>article:nth-child(3) .human-cue::after {
    background:#6f8da7
}
.responsibility-map>article:nth-child(4) .human-cue::after {
    background:var(--ink)
}
.responsibility-name span {
    color:var(--blue);
    font-size:10px;
    font-weight:800;
    letter-spacing:.13em;
    text-transform:uppercase
}
.responsibility-name h3 {
    margin:5px 0 0;
    font-size:21px
}
.responsibility-factors {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:28px
}
.responsibility-factors>div {
    padding-left:22px;
    border-left:2px solid #d9e5ee
}
.responsibility-factors h4 {
    margin:0 0 7px;
    color:var(--ink);
    font-size:15px
}
.responsibility-factors p {
    margin:0;
    font-size:14px
}
.danger-layout {
    display:grid;
    grid-template-columns:minmax(260px,.82fr) minmax(0,1.18fr);
    gap:74px;
    align-items:center
}
.warning-list {
    display:grid;
    border-top:1px solid rgba(255,255,255,.17)
}
.warning-list article {
    display:grid;
    grid-template-columns:36px 1fr;
    gap:16px;
    padding:21px 0;
    border-bottom:1px solid rgba(255,255,255,.17)
}
.warning-list article>i {
    width:28px;
    height:28px;
    display:grid;
    place-items:center;
    border:1px solid var(--gold);
    border-radius:50%;
    color:var(--gold);
    font-style:normal;
    font-weight:900
}
.warning-list h3 {
    margin:0 0 5px;
    color:#fff;
    font-size:17px
}
.warning-list p {
    margin:0;
    color:#bfd0df;
    font-size:14px
}
.human-loop {
    display:grid;
    grid-template-columns:64px 1fr;
    gap:20px;
    align-items:start
}
.loop-person {
    position:relative;
    width:58px;
    height:75px;
    margin-top:6px
}
.loop-person::before {
    content:"";
    position:absolute;
    left:20px;
    top:0;
    width:18px;
    height:18px;
    border-radius:50%;
    background:var(--ink);
    box-shadow:0 0 0 5px #dceaf5
}
.loop-person::after {
    content:"";
    position:absolute;
    left:7px;
    bottom:0;
    width:44px;
    height:40px;
    border-radius:24px 24px 5px 5px;
    background:var(--blue)
}
.loop-exchange {
    display:flex;
    align-items:center;
    gap:10px;
    margin:0 0 18px
}
.loop-exchange span {
    padding:7px 11px;
    border:1px solid var(--line);
    border-radius:999px;
    background:#fff;
    color:var(--ink);
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.08em
}
.loop-exchange b {
    color:var(--blue);
    font-size:19px
}
.loop-decisions {
    grid-column:2;
    display:grid;
    gap:0;
    border-top:1px solid var(--line)
}
.loop-decisions article {
    padding:17px 0;
    border-bottom:1px solid var(--line)
}
.loop-decisions h3 {
    margin:0 0 6px;
    font-size:17px
}
.loop-decisions p {
    margin:0;
    font-size:14px
}
.case-list {
    display:grid;
    grid-template-columns:1fr 1fr;
    column-gap:70px
}
.case-list article {
    display:grid;
    grid-template-columns:52px 1fr;
    gap:20px;
    padding:30px 0;
    border-bottom:1px solid var(--line)
}
.case-icon {
    width:46px;
    height:46px;
    display:grid;
    place-items:center;
    border:1px solid var(--line);
    border-radius:50%;
    color:var(--blue);
    font-size:20px;
    background:#fff
}
.case-list article:nth-child(2n) .case-icon {
    border-radius:8px;
    color:var(--gold)
}
.case-list article:nth-child(3n) .case-icon {
    background:var(--ink);
    color:#fff
}
.case-list h3 {
    margin:1px 0 7px
}
.case-list p {
    margin:0;
    font-size:14px
}
@media(max-width:900px) {
    .operating-layout,.danger-layout {
        grid-template-columns:1fr;
        gap:40px
  }
    .intent-symbol {
        margin-bottom:4px
  }
    .responsibility-map>article {
        grid-template-columns:62px 1fr
  }
    .responsibility-factors {
        grid-column:2
  }
    .case-list {
        column-gap:36px
  }
}
@media(max-width:700px) {
    .responsibility-map>article {
        grid-template-columns:52px 1fr;
        gap:18px
  }
    .responsibility-factors {
        grid-template-columns:1fr;
        gap:16px
  }
    .case-list {
        grid-template-columns:1fr
  }
}
/* V24: one persistent symbol for each solution, from overview to detail. */ .solution-summary {
    position:relative;
    min-height:330px;
    padding:34px 30px 30px;
    border:1px solid var(--line);
    border-top:5px solid var(--blue);
    border-radius:0 0 var(--r) var(--r);
    background:#fff
}
.solution-summary h2 {
    font-size:25px
}
.solution-summary p {
    font-size:15px
}
.solution-summary>a {
    position:absolute;
    left:30px;
    bottom:27px;
    color:var(--blue);
    font-size:13px;
    font-weight:800;
    text-decoration:none
}
.solution-summary>a::after {
    content:" →"
}
.summary-impact {
    border-top-color:#7e99b1
}
.summary-impact>a {
    color:#526e85
}
.summary-agents {
    border-top-color:var(--gold)
}
.summary-agents>a {
    color:#9a6c09
}
.solution-detail {
    position:relative;
    border-top:1px solid var(--line)
}
.solution-detail::before {
    content:"";
    position:absolute;
    left:0;
    top:-1px;
    width:22%;
    height:6px;
    background:var(--blue)
}
.impact-detail::before {
    background:#7e99b1
}
.agents-detail::before {
    background:var(--gold)
}
.solution-heading {
    display:flex;
    align-items:flex-start;
    gap:24px;
    margin-bottom:24px
}
.solution-heading h2 {
    margin:5px 0 0
}
.solution-heading .eyebrow {
    margin:0
}
.agents-detail .solution-heading h2 {
    color:#fff
}
@media(max-width:900px) {
    .solution-summary {
        min-height:300px
  }
    .solution-heading {
        gap:18px
  }
}
@media(max-width:700px) {
    .solution-summary {
        min-height:0;
        padding-bottom:72px
  }
    .solution-heading {
        align-items:flex-start
  }
    .solution-heading h2 {
        font-size:30px
  }
}
/* V25: Use Cases as three recognizable stories, not six equal labels. */ .story-section {
    padding-block:72px
}
.story-chapter {
    display:grid;
    grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);
    gap:64px;
    align-items:center
}
.story-scene {
    position:relative;
    min-height:342px;
    padding:42px 38px;
    overflow:hidden;
    border-radius:var(--r);
    background:var(--ink);
    color:#fff
}
.story-scene>span {
    display:block;
    color:var(--sky);
    font-size:11px;
    font-weight:800;
    letter-spacing:.14em;
    text-transform:uppercase
}
.story-scene>p {
    position:relative;
    z-index:2;
    max-width:11ch;
    margin:36px 0 0;
    color:#fff;
    font-size:clamp(28px,3vw,42px);
    font-weight:750;
    line-height:1.08;
    letter-spacing:-.035em
}
.scene-person {
    position:absolute;
    right:26px;
    bottom:-15px;
    width:84px;
    height:126px;
    opacity:.18
}
.scene-person::before {
    content:"";
    position:absolute;
    left:26px;
    top:0;
    width:32px;
    height:32px;
    border-radius:50%;
    background:#fff
}
.scene-person::after {
    content:"";
    position:absolute;
    left:0;
    bottom:0;
    width:84px;
    height:76px;
    border-radius:46px 46px 7px 7px;
    background:#fff
}
.story-retirement .story-scene {
    order:2;
    background:var(--gold);
    color:var(--ink)
}
.story-retirement .story-content {
    order:1
}
.story-retirement .story-scene>span,.story-retirement .story-scene>p {
    color:var(--ink)
}
.story-retirement .scene-person::before,.story-retirement .scene-person::after {
    background:var(--ink)
}
.story-commitment .story-scene {
    background:#1769aa
}
.story-commitment .story-scene>span {
    color:#d9effc
}
.story-content h2 {
    max-width:15ch;
    margin-bottom:32px
}
.story-beats {
    border-top:1px solid var(--line)
}
.story-beats>div {
    display:grid;
    grid-template-columns:150px 1fr;
    gap:25px;
    padding:20px 0;
    border-bottom:1px solid var(--line)
}
.story-beats b {
    color:var(--blue);
    font-size:11px;
    letter-spacing:.1em;
    text-transform:uppercase
}
.story-beats p {
    margin:0;
    font-size:15px
}
.extension-list {
    border-top:1px solid rgba(255,255,255,.18)
}
.extension-list p {
    margin:0;
    padding:20px 0;
    border-bottom:1px solid rgba(255,255,255,.18);
    color:#bfd0df
}
.extension-list b {
    color:#fff
}
@media(max-width:900px) {
    .story-chapter {
        grid-template-columns:1fr;
        gap:38px
  }
    .story-scene {
        min-height:290px
  }
    .story-retirement .story-scene,.story-retirement .story-content {
        order:initial
  }
    .story-content h2 {
        max-width:18ch
  }
}
@media(max-width:760px) {
    .story-section {
        padding-block:56px
  }
    .story-scene {
        min-height:255px;
        padding:32px 28px
  }
    .story-scene>p {
        font-size:32px
  }
    .story-beats>div {
        grid-template-columns:1fr;
        gap:7px
  }
}
/* V26: distinct hero ideas and one continuous Approach story. */ .page-insights .page-hero::before {
    display:none
}
.person-one {
    left:13px;
    top:17px
}
.person-two {
    right:13px;
    top:17px
}
.person-three {
    left:13px;
    bottom:14px
}
.person-four {
    right:13px;
    bottom:14px
}
.person-two::after,.person-three::after {
    background:var(--gold)
}
.frame-one {
    left:5px;
    top:22px;
    width:132px;
    height:112px
}
.frame-two {
    right:6px;
    top:4px;
    width:142px;
    height:120px
}
.frame-three {
    left:47px;
    bottom:3px;
    width:166px;
    height:102px;
    border-color:rgba(47,128,199,.55);
    background:rgba(255,255,255,.36)
}
.node-a {
    left:24px;
    top:46px
}
.node-b {
    left:104px;
    top:82px;
    background:var(--gold)
}
.node-c {
    right:21px;
    top:32px
}
.node-d {
    left:69px;
    bottom:32px;
    background:var(--ink)
}
.node-e {
    right:45px;
    bottom:24px;
    background:var(--gold)
}
.node-f {
    right:11px;
    top:101px
}
.path-a {
    left:31px;
    top:53px;
    width:176px;
    transform:rotate(17deg)
}
.path-b {
    left:72px;
    bottom:39px;
    width:146px;
    transform:rotate(-43deg)
}
.path-c {
    left:109px;
    top:89px;
    width:118px;
    transform:rotate(12deg)
}
.system-core {
    position:absolute;
    z-index:4;
    left:50%;
    top:50%;
    width:34px;
    height:34px;
    border:2px solid var(--gold);
    transform:translate(-50%,-50%) rotate(45deg);
    background:#fff;
    box-shadow:0 0 0 9px rgba(225,171,57,.12)
}
.approach-story {
    overflow:hidden
}
.approach-path {
    position:relative;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:34px;
    margin-top:58px
}
.approach-path::before {
    content:"";
    position:absolute;
    left:9%;
    right:9%;
    top:58px;
    height:2px;
    background:linear-gradient(90deg,#aebdca,var(--blue),var(--gold))
}
.approach-path article {
    position:relative
}
.approach-path article>b {
    display:block;
    margin-bottom:8px;
    color:var(--blue);
    font-size:11px;
    letter-spacing:.12em;
    text-transform:uppercase
}
.approach-path h3 {
    font-size:20px
}
.approach-path p {
    margin:0;
    font-size:14px
}
.validation-layout {
    display:grid;
    grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);
    gap:80px;
    align-items:center
}
.validation-copy .lead {
    color:#bfd0df
}
.validation-statements {
    margin-top:28px;
    border-top:1px solid rgba(255,255,255,.18)
}
.validation-statements p {
    margin:0;
    padding:18px 0;
    border-bottom:1px solid rgba(255,255,255,.18);
    color:#bfd0df;
    font-size:15px
}
.validation-statements b {
    color:#fff
}
@media(max-width:900px) {
    .page-insights .page-hero .shell>*,.page-about .page-hero .shell>* {
        max-width:61%
  }
    .approach-path {
        grid-template-columns:1fr 1fr;
        row-gap:48px
  }
    .approach-path::before {
        display:none
  }
    .validation-layout {
        grid-template-columns:1fr;
        gap:36px
  }
}
@media(max-width:760px) {
    .page-insights .page-hero .shell>*,.page-about .page-hero .shell>*,.page-approach .page-hero .shell>* {
        max-width:none
  }
    .approach-path {
        grid-template-columns:1fr;
        gap:0;
        margin-top:42px
  }
    .approach-path article {
        display:grid;
        grid-template-columns:92px 1fr;
        column-gap:22px;
        padding:0 0 38px
  }
    .approach-path article>b,.approach-path h3,.approach-path p {
        grid-column:2
  }
}
/* V27: the Landing outputs become one visual model story. */ .model-story-intro {
    max-width:840px
}
.model-story-intro h2 {
    max-width:16ch
}
.model-story-intro .lead {
    max-width:760px
}
.model-story {
    position:relative;
    display:grid;
    grid-template-columns:238px 1fr;
    column-gap:58px;
    margin-top:64px
}
.model-story::before {
    content:"";
    position:absolute;
    left:118px;
    top:138px;
    bottom:138px;
    width:2px;
    background:linear-gradient(var(--blue),#7b96ad,var(--gold))
}
.model-chapter {
    position:relative;
    display:grid;
    grid-template-columns:116px 1fr;
    gap:30px;
    min-height:230px;
    padding:34px 0;
    border-top:1px solid var(--line)
}
.model-chapter:last-child {
    border-bottom:1px solid var(--line)
}
.model-chapter::before {
    content:"";
    position:absolute;
    left:-58px;
    top:50%;
    width:58px;
    height:1px;
    background:var(--line)
}
.model-chapter .eyebrow {
    margin-bottom:7px
}
.model-chapter h3 {
    margin-bottom:9px;
    font-size:24px
}
.model-chapter p {
    max-width:700px;
    margin:0;
    font-size:15px
}
.model-views {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:18px
}
.model-views span {
    padding:7px 11px;
    border:1px solid var(--line);
    border-radius:999px;
    background:#fff;
    color:var(--ink);
    font-size:11px;
    font-weight:750
}
/* Give the knowledge-retirement story room to read before the scene lands. */ .story-retirement {
    grid-template-columns:minmax(500px,1.12fr) minmax(390px,.88fr);
    gap:58px
}
.story-retirement .story-content h2 {
    max-width:20ch
}
.story-retirement .story-scene {
    min-height:310px;
    padding:38px 34px
}
.story-retirement .story-scene>p {
    max-width:13ch;
    font-size:clamp(28px,2.6vw,40px)
}
.story-retirement .story-beats>div {
    grid-template-columns:132px 1fr;
    gap:22px
}
@media(max-width:900px) {
    .model-story {
        grid-template-columns:180px 1fr;
        column-gap:36px
  }
    .model-story::before {
        left:89px
  }
    .model-chapter {
        grid-template-columns:94px 1fr;
        gap:22px
  }
    .story-retirement {
        grid-template-columns:1fr;
        gap:38px
  }
    .story-retirement .story-scene,.story-retirement .story-content {
        order:initial
  }
    .story-retirement .story-content h2 {
        max-width:18ch
  }
}
@media(max-width:700px) {
    .model-story-intro h2 {
        max-width:none
  }
    .model-story {
        display:block;
        margin-top:42px
  }
    .model-story::before {
        left:43px;
        top:94px;
        bottom:50px
  }
    .model-chapter {
        grid-template-columns:88px 1fr;
        gap:20px;
        min-height:0;
        padding:29px 0
  }
    .model-chapter::before {
        display:none
  }
    .model-chapter h3 {
        font-size:21px
  }
    .model-chapter p {
        font-size:14px
  }
    .story-retirement .story-content h2 {
        max-width:none
  }
    .story-retirement .story-beats>div {
        grid-template-columns:1fr;
        gap:7px
  }
}
/* V28: secondary hero art shares the navigation and content boundaries. */ .page-hero .shell>.eyebrow,.page-hero .shell>h1,.page-hero .shell>.lead {
    max-width:64%
}
@media(max-width:1050px) and (min-width:761px) {
    .page-hero .shell>.eyebrow,.page-hero .shell>h1,.page-hero .shell>.lead {
        max-width:60%
  }
}
@media(max-width:760px) {
    .page-hero .shell>.eyebrow,.page-hero .shell>h1,.page-hero .shell>.lead {
        max-width:none
  }
}
/* V29: Data Impact Analyzer as a trace, verify and explain product story. */ .impact-detail {
    background:#f7f9fb
}
.impact-intro {
    display:grid;
    grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);
    gap:72px;
    align-items:end
}
.impact-intro .lead {
    max-width:720px
}
.impact-promise {
    padding:26px 0 6px 28px;
    border-left:3px solid var(--blue)
}
.impact-promise p {
    margin:0;
    font-size:17px
}
.impact-story {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:0;
    margin:58px 0 34px;
    border-block:1px solid var(--line)
}
.impact-story article {
    display:grid;
    grid-template-columns:54px 1fr;
    gap:18px;
    padding:24px 28px;
    border-left:1px solid var(--line)
}
.impact-story article:first-child {
    border-left:0
}
.impact-story b {
    display:block;
    margin-bottom:5px;
    color:var(--ink);
    font-size:16px
}
.impact-story p {
    margin:0;
    font-size:13px;
    line-height:1.5
}
.dia-composite {
    display:grid;
    grid-template-columns:minmax(0,1.52fr) minmax(310px,.72fr);
    gap:20px;
    height:600px
}
.dia-support {
    display:grid;
    grid-template-rows:1fr 1fr;
    gap:20px;
    min-height:0
}
.dia-frame {
    position:relative;
    min-height:0;
    border-radius:14px;
    background:#fff
}
.dia-frame img {
    width:100%;
    height:100%;
    aspect-ratio:auto;
    object-fit:cover
}
.dia-primary img {
    object-position:left top
}
.dia-support .dia-frame:first-child img {
    object-position:58% 25%
}
.dia-support .dia-frame:last-child img {
    object-position:58% 30%
}
.dia-caption {
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    z-index:2;
    display:flex;
    align-items:center;
    gap:12px;
    padding:15px 18px;
    background:linear-gradient(90deg,rgba(8,27,48,.96),rgba(8,27,48,.87));
    color:#fff
}
.dia-caption b {
    color:var(--gold);
    font-size:12px;
    letter-spacing:.1em;
    text-transform:uppercase
}
.dia-caption span {
    font-size:13px
}
.dia-frame::after {
    top:10px;
    right:10px
}
@media(max-width:900px) {
    .impact-intro {
        grid-template-columns:1fr;
        gap:26px
  }
    .impact-promise {
        max-width:720px
  }
    .impact-story {
        grid-template-columns:1fr
  }
    .impact-story article {
        border-left:0;
        border-top:1px solid var(--line)
  }
    .impact-story article:first-child {
        border-top:0
  }
    .dia-composite {
        grid-template-columns:1fr;
        height:auto
  }
    .dia-primary {
        height:480px
  }
    .dia-support {
        grid-template-columns:1fr 1fr;
        grid-template-rows:none
  }
    .dia-support .dia-frame {
        height:270px
  }
}
@media(max-width:620px) {
    .impact-promise {
        padding:20px 0 0;
        border-left:0;
        border-top:3px solid var(--blue)
  }
    .impact-story {
        margin-top:40px
  }
    .impact-story article {
        padding:20px 0
  }
    .dia-primary {
        height:300px
  }
    .dia-support {
        grid-template-columns:1fr
  }
    .dia-support .dia-frame {
        height:245px
  }
    .dia-caption {
        display:block;
        padding:12px 14px
  }
    .dia-caption b,.dia-caption span {
        display:block
  }
    .dia-caption span {
        margin-top:3px;
        font-size:12px
  }
}
/* V30: three separated capabilities above an unmistakable repository. */ /* V31: preserve real spacing at computer widths; keep the architecture shallow. */ @media(max-width:1100px) and (min-width:761px) {
    .page-solutions .page-hero .shell>.eyebrow,.page-solutions .page-hero .shell>h1,.page-solutions .page-hero .shell>.lead {
        max-width:55%
  }
}
/* V32: Solutions uses a real two-column hero, not an absolutely positioned overlay. */ .page-solutions .solutions-hero-layout {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:54px;
    align-items:center
}
.page-solutions .solutions-hero-layout>* {
    max-width:none
}
.solutions-hero-copy h1,.solutions-hero-copy .lead {
    max-width:none
}
.solutions-hero-art {
    min-width:0;
    min-height:300px;
    display:grid;
    place-items:center
}
@media(max-width:900px) {
    .page-solutions .solutions-hero-layout {
        grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
        gap:34px
  }
}
@media(max-width:760px) {
    .page-solutions .solutions-hero-layout {
        display:block
  }
    .solutions-hero-art {
        min-height:0;
        margin-top:36px
  }
}
/* V33: the outer capability symbols and repository share exact boundaries. */ .capability-slot {
    width:56px;
    height:64px;
    display:grid;
    place-items:center
}
/* V34: align the Solutions architecture to the shared right-side hero anchor. */ .page-solutions .solutions-hero-art {
    place-items:center end
}
@media(max-width:760px) {
    .page-solutions .solutions-hero-art {
        place-items:center
  }
}
/* V35: Solutions uses the same direct-shell placement contract as every secondary hero. */ .page-solutions .page-hero .shell>.eyebrow, .page-solutions .page-hero .shell>h1, .page-solutions .page-hero .shell>.lead {
    max-width:52%
}
@media(max-width:1050px) and (min-width:761px) {
    .page-solutions .page-hero .shell>.eyebrow,.page-solutions .page-hero .shell>h1,.page-solutions .page-hero .shell>.lead {
        max-width:52%
  }
}
@media(max-width:760px) {
    .page-solutions .page-hero .shell>.eyebrow,.page-solutions .page-hero .shell>h1,.page-solutions .page-hero .shell>.lead {
        max-width:none
  }
}
/* V41: product value, product hierarchy, strategic paths and client proof. */ .business-questions {
    display:grid;
    grid-template-columns:1.1fr repeat(3,1fr);
    gap:0;
    margin-top:46px;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    background:rgba(255,255,255,.58)
}
.business-questions span,.business-questions p {
    margin:0;
    padding:22px 20px
}
.business-questions span {
    color:var(--blue);
    font-size:11px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase
}
.business-questions p {
    border-left:1px solid var(--line);
    color:var(--ink);
    font-size:14px;
    font-weight:700;
    line-height:1.4
}
.solution-family {
    padding:34px 0;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    background:#edf4f8
}
.solution-family-in {
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:72px;
    align-items:center
}
.solution-family h2 {
    margin:5px 0 0;
    max-width:17ch;
    font-size:clamp(28px,3vw,42px)
}
.solution-family p {
    margin:0;
    font-size:17px
}
.client-proof {
    background:#f4f1e8
}
.client-proof-grid {
    display:grid;
    grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);
    gap:76px;
    align-items:center
}
.client-proof-story h2 {
    max-width:18ch
}
.client-proof-story blockquote {
    margin:34px 0 12px;
    padding-left:24px;
    border-left:3px solid var(--gold);
    color:var(--ink);
    font-size:20px;
    font-weight:650;
    line-height:1.45
}
.client-proof-story cite {
    display:block;
    padding-left:27px;
    color:var(--muted);
    font-size:13px;
    font-style:normal
}
.client-proof-evidence {
    display:grid;
    grid-template-columns:auto 1fr;
    column-gap:18px;
    padding:34px;
    border-radius:var(--r);
    background:var(--ink);
    color:#fff
}
.client-proof-evidence>span,.client-proof-evidence>.proof-shift,.client-proof-evidence>small {
    grid-column:1/-1
}
.client-proof-evidence>span {
    margin-bottom:22px;
    color:var(--sky);
    font-size:11px;
    font-weight:800;
    letter-spacing:.13em;
    text-transform:uppercase
}
.client-proof-evidence>strong {
    padding:10px 0;
    color:var(--gold);
    font-size:32px
}
.client-proof-evidence>p {
    margin:0;
    padding:17px 0 10px;
    border-bottom:1px solid rgba(255,255,255,.14);
    color:#c7d5e0
}
.proof-shift {
    margin-top:22px;
    padding-top:22px;
    border-top:1px solid rgba(255,255,255,.22)
}
.proof-shift b {
    color:#fff;
    font-size:25px
}
.proof-shift p {
    margin:5px 0 0;
    color:#c7d5e0;
    font-size:13px
}
.client-proof-evidence>small {
    margin-top:24px;
    color:#96adbf;
    line-height:1.5
}
.strategic-paths-intro {
    max-width:850px
}
.strategic-path-list {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:0;
    margin-top:54px;
    border-top:1px solid rgba(255,255,255,.2);
    border-bottom:1px solid rgba(255,255,255,.2)
}
.strategic-path-list article {
    padding:34px 34px 36px 0
}
.strategic-path-list article+article {
    padding-left:34px;
    border-left:1px solid rgba(255,255,255,.2)
}
.strategic-path-list span {
    color:var(--gold);
    font-size:11px;
    font-weight:800;
    letter-spacing:.12em;
    text-transform:uppercase
}
.strategic-path-list h3 {
    margin:18px 0 12px;
    color:#fff;
    font-size:25px
}
.strategic-path-list p {
    margin:0;
    color:#bfd0df;
    font-size:15px
}
.proof-link {
    display:inline-block;
    margin-top:34px;
    color:#fff;
    font-weight:750;
    text-decoration:underline;
    text-underline-offset:6px
}
@media(max-width:900px) {
    .business-questions {
        grid-template-columns:1fr 1fr
  }
    .business-questions p:nth-of-type(2) {
        border-left:0;
        border-top:1px solid var(--line)
  }
    .business-questions p:nth-of-type(3) {
        border-top:1px solid var(--line)
  }
    .solution-family-in,.client-proof-grid {
        grid-template-columns:1fr;
        gap:36px
  }
    .strategic-path-list {
        grid-template-columns:1fr
  }
    .strategic-path-list article,.strategic-path-list article+article {
        padding:26px 0;
        border-left:0;
        border-bottom:1px solid rgba(255,255,255,.2)
  }
    .strategic-path-list article:last-child {
        border-bottom:0
  }
}
@media(max-width:620px) {
    .business-questions {
        display:block
  }
    .business-questions p,.business-questions p:nth-of-type(2),.business-questions p:nth-of-type(3) {
        border-left:0;
        border-top:1px solid var(--line)
  }
    .client-proof-evidence {
        padding:26px
  }
}
