/* Variant 2: corporate editorial composition inspired by Kreston, ACCRISE identity. */
body.reference-version { background: #fff; }
.header { display: grid; grid-template-columns: 220px 1fr 245px; grid-template-rows: 65px 53px; column-gap: 28px; row-gap: 0; height: 132px; padding: 7px 0; color: var(--navy); background: #fff; border-bottom: 0; }
.header::before { background: #fff; border-bottom: 1px solid #dce2e3; }
.header > a { grid-column: 1; grid-row: 1 / 3; }
.header .logo { width: 206px; }
.header-extra { grid-column: 2; grid-row: 1; display: flex; align-items: center; justify-content: flex-end; gap: 26px; font-size: 14px; color: #4b5d68; }
.header-extra > span { font-size: 12px; }
.header-extra a { white-space: nowrap; }
.header-cta { grid-column: 3; grid-row: 1; background: var(--navy); color: white; border: 0; min-height: 44px; padding: 14px 18px; font-size: 14px; }
.header-cta:hover { background: #294655; }
.header nav { grid-column: 2 / 4; grid-row: 2; justify-content: flex-end; margin: 0; gap: 31px; font-size: 16px; }
.header nav a:hover, .mega-toggle:hover, .mega-toggle[aria-expanded=true] { color: #487086; }
.header nav a::after { background: #487086; }
.header-space { height: 132px; }
.mega-menu { top: 100%; background: #fff; max-height: calc(100dvh - 150px); }
.financial-backdrop { display: none; }
.reference-hero.hero { position: relative; isolation: isolate; width: 100%; max-width: none; min-height: 650px; display: block; padding: 0; margin: 0; }
.hero-photo { position: absolute; top: 0; right: 0; width: 60%; height: 100%; object-fit: cover; object-position: 65% center; z-index: -3; }
.hero-angle { position: absolute; inset: 0 auto 0 0; width: 66%; background: var(--navy); clip-path: polygon(0 0, 82% 0, 100% 50%, 82% 100%, 0 100%); z-index: -1; }
.hero-angle::after { content: ''; position: absolute; inset: 0 0 0 auto; width: 14%; background: #ffffff04; clip-path: polygon(0 0, 100% 50%, 0 100%, 35% 50%); }
.reference-hero .hero-copy { width: 47%; max-width: 630px; margin-left: max(56px, calc((100% - 1328px) / 2)); padding: 69px 0 62px; }
.reference-hero .intro-label { font-size: 14px; color: var(--stone); margin-bottom: 26px; }
.reference-hero h1 { font-size: clamp(44px, 4vw, 58px); line-height: 1.06; letter-spacing: -1.1px; margin-bottom: 26px; }
.reference-hero .hero-summary { font-size: 18px; line-height: 1.65; max-width: 540px; margin-bottom: 28px; color: #c7d0d5; }
.reference-hero .hero-note { margin-top: 27px; font-size: 12px; }
.reference-hero .hero-actions { gap: 26px; }
.reference-hero .hero-actions .button { font-size: 15px; }
.reference-hero .hero-visual { position: absolute; width: 385px; right: max(56px, calc((100% - 1328px) / 2)); bottom: 35px; margin: 0; padding: 0; }
.reference-hero .visual-topline, .reference-hero .visual-foot { display: none; }
.reference-hero .dashboard { padding: 20px 20px 0; border-radius: 4px; background: #f8faf9; box-shadow: 0 12px 45px #07172744; }
.reference-hero .dash-caption { font-size: 10px; }
.reference-hero .dash-heading strong { font-size: 18px; }
.reference-hero .dash-controls { margin-top: 19px; gap: 12px; flex-wrap: wrap; }
.reference-hero .dash-tabs button { font-size: 12px; }
.reference-hero #period { font-size: 11px; width: 130px; }
.reference-hero .kpis { margin: 20px 0; grid-template-columns: 1.2fr 1fr; gap: 10px; }
.reference-hero .kpis > div + div { padding-left: 12px; border-left: 1px solid #d2dbde; }
.reference-hero .kpis span { font-size: 11px; }
.reference-hero .kpis strong { font-size: 23px; white-space: nowrap; }
.reference-hero .kpis small { font-size: 10px; }
.reference-hero .chart-title { font-size: 12px; }
.reference-hero .chart-title > div { font-size: 10px; }
.reference-hero .chart { height: 110px; margin-top: 18px; }
.reference-hero .axis, .reference-hero .months { font-size: 9px; }
.reference-hero .dash-footer { font-size: 10px; margin-top: 22px; padding: 12px 0; }
.hero-directions { background: #e6eaeb; color: var(--navy); }
.hero-directions > .wrap { display: grid; grid-template-columns: 1fr 1fr; }
.hero-directions a { display: grid; grid-template-columns: 1fr 28px; gap: 8px 20px; padding: 29px 40px 29px 0; position: relative; transition: background .3s; }
.hero-directions a + a { padding-left: 50px; border-left: 1px solid #bdc8ce; }
.hero-directions a > span:first-child { font-size: 14px; color: #4e6471; }
.hero-directions strong { font-family: Lora, serif; font-weight: 400; font-size: 27px; }
.hero-directions .direction-arrow { grid-column: 2; grid-row: 1/3; align-self: center; font-size: 25px; }
.hero-directions a:hover { background: #dce4e7; }
.section { padding-top: 88px; padding-bottom: 88px; }
.positioning { background: white; }
.positioning-heading { grid-template-columns: 1fr 1.05fr; gap: 70px; }
.consulting-photo { margin: 0; position: relative; min-height: 450px; align-self: stretch; }
.consulting-photo > img { position: absolute; width: 100%; height: 100%; object-fit: cover; object-position: 49% center; }
.consulting-photo figcaption { position: absolute; bottom: 0; left: 0; right: 0; display: flex; align-items: center; gap: 18px; padding: 22px 25px; background: #101e28ee; font: 19px/1.4 Lora,serif; color: var(--stone); }
.consulting-photo figcaption img { flex-shrink: 0; }
.positioning-editorial h2 { font-size: 40px; margin-bottom: 28px; }
.positioning-editorial h2 br { display: none; }
.positioning-copy p { font-size: 17px; }
.comparison { background: #f3f4f1; margin-top: 45px; border-radius: 0; grid-template-columns: 1fr 80px 1fr; padding: 32px 38px; }
.comparison h3 { font-size: 26px; }
.comparison h3 br { display: none; }
.comparison p { font-size: 16px; }
.comparison-label { font-size: 14px; }
.services.section { padding-top: 0; }
.service-card, .service-card.blue-card { background: #fff; border: 1px solid #d7dfe2; box-shadow: 0 10px 30px #10283908; border-radius: 0; padding: 33px 36px 0; }
.service-card { border-top: 4px solid var(--stone); }
.service-card.blue-card { border-top: 4px solid #a8c5d4; }
.service-card h3 { font-size: 32px; }
.service-card p, .service-card li { font-size: 17px; }
.service-top .icon-frame { background: #eef1f0; }
.section-heading h2 { font-size: 42px; }
.section-heading > p { font-size: 17px; }
.audience { background: #edf1f3; }
.role-grid article + article { border-left-color: #bac9d2; }
.role-grid h3 { font-size: 28px; }
.role-grid p { font-size: 17px; }
.business-value { background: var(--navy); color: var(--paper); }
.business-value .eyebrow { color: var(--stone); }
.business-value .section-heading > p, .business-value .value-grid p { color: #c3ced5; }
.business-value .icon-frame { color: var(--stone); border-color: #c4bfb355; background: #ffffff06; }
.business-value .value-icon .icon-frame svg { stroke: currentColor; }
.business-value .value-grid article > span { color: #c0cdd4; border-top-color: #ffffff30; }
.business-value .section-finance { color: var(--blue); opacity: .11; }
.value-grid article:hover h3 { color: var(--paper); }
.value-grid article:hover .icon-frame { background: #ffffff0c; }
.value-grid h3 { font-size: 28px; }
.value-grid p { font-size: 17px; }
.business-problems .problem-grid { gap: 28px 60px; }
.problem-grid h3 { font-size: 28px; }
.problem-grid p { font-size: 17px; }
.process { background: #eeeEe9; }
.steps article > span { background: #eeeEe9; }
.insights { background: white; }
.insight-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; }
.insight-art { height: 185px; margin-bottom: 25px; overflow: hidden; display: grid; place-items: center; background: #dde7ec; }
.insight-art svg { width: 100%; height: 100%; fill: none; stroke: #547284; stroke-width: 2; }
.insight-art .art-grid { opacity: .17; stroke-width: 1; }
.data-art { background: #e8e5dc; }
.data-art svg rect { fill: #c4bfb388; stroke-width: 1; }
.insight-art img { width: 100%; height: 100%; object-fit: cover; }
.insight-grid article > span { font-size: 14px; color: #526c7b; }
.insight-grid h3 { font-size: 28px; margin: 15px 0; }
.insight-grid p { font-size: 16px; color: #52616b; }
.insight-grid a { display: flex; justify-content: space-between; align-items: center; gap: 12px; border-top: 1px solid #ccd7dc; padding: 18px 0 0; font-size: 14px; }
.insight-grid article:hover .insight-art img { transform: scale(1.025); }
.insight-art img { transition: transform .5s ease; }
.contact-section { background: #e5e9e8; color: var(--navy); }
.contact-section .eyebrow { color: #506573; }
.contact-section p, .contact-section .address, .contact-section .consult-form > small { color: #455c6b; }
.contact-section input::placeholder { color: #657781; }
.contact-section .consult-form .button { background: var(--navy); color: var(--paper); border-color: var(--navy); }
.contact-section .ambient-prism { color: #344f60; }
.contact-section .form-status { background: #ffffff66; }
.footer { background: var(--navy); }
.career-close { position: absolute; top: 12px; right: 14px; background: none; border: 0; color: var(--stone); font-size: 28px; }
#career-dialog h2 { font-size: 34px; }
#career-dialog p { color: #c5d0d7; font-size: 17px; }
@media(min-width:1700px) { .reference-hero.hero { min-height: 680px; } .reference-hero .hero-copy { padding-top: 80px; } .reference-hero .hero-visual { width: 420px; bottom: 40px; } }
@media(max-width:1100px) and (min-width:801px) {
 .header { grid-template-columns: 175px 1fr 215px; gap: 0 20px; }
 .header .logo { width: 175px; }
 .header nav { width: auto; gap: 20px; justify-content: flex-end; font-size: 14px; }
 .header-extra > span { display: none; }
 .mega-toggle { font-size: 14px; }
 .reference-hero .hero-copy { margin-left: 32px; width: 49%; }
 .reference-hero .hero-visual { width: 315px; right: 32px; }
 .reference-hero h1 { font-size: 44px; }
 .reference-hero .hero-summary { font-size: 17px; max-width: 440px; }
 .reference-hero .kpis strong { font-size: 19px; }
 .positioning-heading { gap: 35px; }
 .positioning-editorial h2 { font-size: 35px; }
 .section-heading h2 { font-size: 36px; }
 .hero-directions strong { font-size: 23px; }
}
@media(max-width:800px) {
 .header { display: flex; justify-content: space-between; height: 88px; min-height: 88px; padding: 0; }
 .header .logo { width: 175px; }
 .header-extra, .header-cta { display: none; }
 .menu-toggle { color: var(--navy); }
 .header nav { margin: 0; background: white; color: var(--navy); }
 .header nav.open { font-size: 16px; }
 .header-space { height: 88px; }
 .reference-hero.hero { min-height: auto; padding-bottom: 32px; background: var(--navy); }
 .hero-photo { height: 290px; width: 100%; position: relative; display: block; object-position: center 35%; }
 .hero-angle { top: 220px; width: 100%; height: 75px; inset-inline: 0; clip-path: polygon(0 0, 60% 0, 100% 100%, 0 100%); }
 .reference-hero .hero-copy { width: auto; max-width: none; margin: 0 20px; padding: 12px 0 34px; }
 .reference-hero h1 { font-size: clamp(40px,8vw,52px); }
 .reference-hero .hero-summary { font-size: 18px; max-width: none; }
 .reference-hero .hero-visual { width: auto; max-width: 500px; position: relative; right: auto; bottom: auto; margin: 0 20px; }
 .reference-hero .kpis { grid-template-columns: 1fr 1fr; }
 .reference-hero .kpis strong { font-size: 24px; }
 .reference-hero .kpis span { font-size: 13px; }
 .reference-hero .kpis small { font-size: 12px; }
 .reference-hero .chart { height: 135px; }
 .hero-directions > .wrap { grid-template-columns: 1fr; }
 .hero-directions a { padding: 25px 0; }
 .hero-directions a + a { border-left: 0; border-top: 1px solid #bdc8ce; padding-left: 0; }
 .hero-directions strong { font-size: 24px; }
 .section { padding-top: 60px; padding-bottom: 60px; }
 .positioning-heading { grid-template-columns: 1fr; gap: 32px; }
 .consulting-photo { min-height: 330px; }
 .consulting-photo figcaption { font-size: 17px; }
 .positioning-editorial h2, .section-heading h2 { font-size: 34px; }
 .comparison { grid-template-columns: 1fr; padding: 26px; }
 .comparison h3 { font-size: 26px; }
 .services.section { padding-top: 0; }
 .service-card, .service-card.blue-card { padding: 28px 24px 0; }
 .service-card h3 { font-size: 29px; }
 .insight-grid { grid-template-columns: 1fr; gap: 38px; }
 .insight-art { height: 200px; }
 .insight-grid h3 { font-size: 28px; }
 .insight-grid a { font-size: 16px; }
 .business-value .value-grid h3 br { display: none; }
}
@media(max-width:360px) { .reference-hero .kpis { grid-template-columns: 1fr; } .reference-hero .kpis > div + div { padding-left: 0; border-left: 0; } .reference-hero .hero-actions { gap: 22px; } .reference-hero .hero-note { font-size: 11px; } }
@media(prefers-reduced-motion:reduce) { .insight-grid article:hover .insight-art img { transform: none; } }
