/* Shared page-body treatment for public pages outside the homepage. */
body.ent,
body.challenges-page{--paper:#f7f7f2;--ink:#182a24;--muted:#647069;--green:#163f32;--wine:#910d35;--lime:#d6ef8d;--line:#dcded5;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}
body.ent main,body.challenges-page main{min-height:55vh}
body.ent .wrap,body.challenges-page .wrap{width:min(1280px,calc(100% - 96px))}
body.ent .page-hero,body.challenges-page .page-hero{margin:0 auto;max-width:1440px;padding:clamp(88px,11vw,150px) max(48px,calc((100% - 1184px)/2)) 90px;background:linear-gradient(135deg,#0b2a1e,#0e522b 62%,#174b36);color:#f7faf1;border-radius:0 0 28px 28px}
body.ent .page-hero h1,body.challenges-page .page-hero h1{max-width:920px;margin:22px 0;font-family:Manrope,sans-serif;font-size:clamp(48px,6.8vw,92px);font-weight:550;line-height:.98;letter-spacing:-.07em;color:#f7faf1}
body.ent .page-hero .lede,body.challenges-page .page-hero .lede{max-width:680px;color:#d4e1d7;font-size:16px;line-height:1.85}
body.ent .page-hero .kicker,body.challenges-page .page-hero .kicker{color:#f5ad27}
body.ent .hero-links,body.challenges-page .hero-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
body.ent .pill,body.challenges-page .pill{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:14px 22px;border-radius:999px;background:var(--lime);color:var(--ink);font-size:12px;font-weight:700;border:1px solid transparent;transition:transform .2s,background .2s}
body.ent .pill:hover,body.challenges-page .pill:hover{transform:translateY(-3px)}
body.ent .pill.secondary,body.challenges-page .pill.secondary{background:transparent;color:#fff;border-color:#ffffff80}
body.ent .section,body.challenges-page .section{padding:clamp(68px,9vw,118px) 0;background:var(--paper)}
body.ent .section.soft,body.challenges-page .section.soft{background:#eef0e8}
body.ent .section.dark,body.challenges-page .section.dark{background:var(--green);color:#f7faf1}
body.ent .section> .wrap>h2,body.ent .section-heading h2,body.challenges-page .section> .wrap>h2{font-family:Manrope,sans-serif;font-size:clamp(34px,4.5vw,58px);font-weight:550;line-height:1.12;letter-spacing:-.055em}
body.ent .section-heading{margin-bottom:40px}
body.ent .section-heading>p:last-child{color:var(--muted);line-height:1.85}
body.ent .card-grid,body.challenges-page .card-grid{gap:20px}
body.ent .card,body.ent .work-card,body.ent .insight-card,body.ent .product-card,body.challenges-page .card{border:1px solid var(--line);border-radius:18px;background:#fff;padding:28px;box-shadow:none;color:var(--ink);transition:transform .25s,box-shadow .25s,border-color .25s}
body.ent .card:hover,body.ent .work-card:hover,body.ent .insight-card:hover,body.ent .product-card:hover,body.challenges-page .card:hover{transform:translateY(-5px);border-color:#b7c8ad;box-shadow:0 18px 40px #152b2110}
body.ent .card h3,body.ent .work-card h3,body.ent .insight-card h3,body.ent .product-card h3,body.challenges-page .card h3{font-family:Manrope,sans-serif;font-size:23px;line-height:1.25;letter-spacing:-.04em}
body.ent .card p,body.ent .work-card p,body.ent .insight-card p,body.ent .product-card p,body.challenges-page .card p{color:var(--muted);font-size:14px;line-height:1.85}
body.ent .filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 32px}
body.ent .filters a{padding:9px 14px;border:1px solid var(--line);border-radius:999px;font-size:11px;color:var(--muted);background:transparent}
body.ent .filters a:hover,body.ent .filters a[aria-current="true"]{background:var(--green);border-color:var(--green);color:#fff}
body.ent .breadcrumbs{padding-top:28px;color:var(--muted);font-size:12px;display:flex;gap:10px;align-items:center}
body.ent .breadcrumbs a:hover{color:var(--wine)}
body.ent .split{gap:70px}
body.ent .facts{border:1px solid var(--line);border-radius:18px;background:#eef0e8;padding:24px}
body.ent .facts>div{padding:15px 0;border-bottom:1px solid var(--line)}
body.ent .facts>div:last-child{border-bottom:0}
body.ent .facts dt,body.ent .facts dd{font-size:13px;line-height:1.7}
body.ent .facts dt{color:var(--wine);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:10px}
body.ent form,.ent .lead-card{border:1px solid var(--line);border-radius:18px;background:#fff;padding:28px}
body.ent input,body.ent textarea,body.ent select{border:1px solid #cdd7cc;border-radius:10px;background:#fbfcf8;color:var(--ink);padding:12px 14px}
body.ent input:focus,body.ent textarea:focus,body.ent select:focus{outline:3px solid #d6ef8d;outline-offset:2px;border-color:var(--green)}
body.ent .button-primary,body.ent button[type="submit"]{border:0;border-radius:999px;background:var(--green);color:#fff;padding:14px 22px;font-weight:700}
body.ent article .article-body,body.ent .article-body{max-width:820px;font-size:16px;line-height:1.9}
body.ent article .article-body h2,body.ent .article-body h2{margin-top:42px;font-family:Manrope,sans-serif;font-size:32px;letter-spacing:-.04em}
body.ent table{border-collapse:separate;border-spacing:0;width:100%;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#fff}
body.ent th,body.ent td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left}
body.ent th{background:#eef0e8;color:var(--green);font-size:11px;text-transform:uppercase;letter-spacing:.08em}
body.ent .text-link{color:var(--wine)}
body.ent .global-footer{display:none}
body.ent .page-shell{width:min(1184px,calc(100% - 96px));margin-inline:auto}
@media(max-width:800px){
 body.ent .wrap,body.challenges-page .wrap,body.ent .page-shell{width:calc(100% - 40px)}
 body.ent .page-hero,body.challenges-page .page-hero{padding:74px 20px 62px;border-radius:0 0 20px 20px}
 body.ent .page-hero h1,body.challenges-page .page-hero h1{font-size:clamp(44px,12vw,70px)}
 body.ent .page-hero .lede,body.challenges-page .page-hero .lede{font-size:15px}
 body.ent .section,body.challenges-page .section{padding:64px 0}
 body.ent .split{grid-template-columns:1fr;gap:30px}
 body.ent .section-heading h2,body.ent .section> .wrap>h2,body.challenges-page .section> .wrap>h2{font-size:36px}
 body.ent .card-grid,body.ent .product-grid{grid-template-columns:1fr}
 body.ent .facts{padding:18px}
}
[data-theme="dark"] body.ent,[data-theme="dark"] body.challenges-page{--paper:#101d18;--ink:#eaf1e5;--muted:#a8b9ac;--green:#163f32;--wine:#f1a4bc;--lime:#d6ef8d;--line:#354c3d;background:var(--paper);color:var(--ink)}
[data-theme="dark"] body.ent .section,[data-theme="dark"] body.challenges-page .section{background:var(--paper)}
[data-theme="dark"] body.ent .section.soft,[data-theme="dark"] body.challenges-page .section.soft{background:#15271f}
[data-theme="dark"] body.ent .card,[data-theme="dark"] body.ent .work-card,[data-theme="dark"] body.ent .insight-card,[data-theme="dark"] body.ent .product-card,[data-theme="dark"] body.challenges-page .card,[data-theme="dark"] body.ent form,[data-theme="dark"] .ent .lead-card,[data-theme="dark"] body.ent table{background:#1b3025;border-color:#3c5342;color:var(--ink)}
[data-theme="dark"] body.ent .card p,[data-theme="dark"] body.ent .work-card p,[data-theme="dark"] body.ent .insight-card p,[data-theme="dark"] body.ent .product-card p,[data-theme="dark"] body.ent .section-heading>p:last-child{color:var(--muted)}
[data-theme="dark"] body.ent .facts,[data-theme="dark"] body.ent th{background:#20372b;border-color:#3c5342}
[data-theme="dark"] body.ent input,[data-theme="dark"] body.ent textarea,[data-theme="dark"] body.ent select{background:#14251d;border-color:#486143;color:var(--ink)}

/* Dark-mode bridge for legacy page-specific components. These selectors are
   deliberately last so old visual layers cannot reintroduce white panels. */
[data-theme="dark"] body.ent .page-shell,
[data-theme="dark"] body.ent .article-body,
[data-theme="dark"] body.ent .section-intro,
[data-theme="dark"] body.ent .note,
[data-theme="dark"] body.ent .project-links,
[data-theme="dark"] body.ent .case-story-card,
[data-theme="dark"] body.ent .gallery-item,
[data-theme="dark"] body.ent .screens,
[data-theme="dark"] body.ent .article-cta,
[data-theme="dark"] body.ent .visual-card,
[data-theme="dark"] body.ent .process article,
[data-theme="dark"] body.ent .work-card,
[data-theme="dark"] body.challenges-page .challenge-card{background:transparent;color:var(--ink);border-color:var(--line)}
[data-theme="dark"] body.ent .visual-card,
[data-theme="dark"] body.ent .case-story-card,
[data-theme="dark"] body.ent .gallery-item,
[data-theme="dark"] body.ent .process article,
[data-theme="dark"] body.ent .work-card,
[data-theme="dark"] body.challenges-page .challenge-card{background:var(--theme-surface);border:1px solid var(--line)}
[data-theme="dark"] body.ent .page-hero,
[data-theme="dark"] body.challenges-page .page-hero{background:linear-gradient(135deg,#071b12,#0e4229 62%,#174b36);color:var(--ink)}
[data-theme="dark"] body.ent .page-hero h1,
[data-theme="dark"] body.challenges-page .page-hero h1,
[data-theme="dark"] body.ent .page-hero .lede,
[data-theme="dark"] body.challenges-page .page-hero .lede{color:#f0f7ef}
[data-theme="dark"] body.ent .facts dd,
[data-theme="dark"] body.ent .project-links a,
[data-theme="dark"] body.ent .article-body a,
[data-theme="dark"] body.ent .section a:not(.pill){color:#f1a4bc}
[data-theme="dark"] body.ent .pill.secondary{color:#f0f7ef;border-color:#d5e4d680}
[data-theme="dark"] body.ent .pill:not(.secondary),
[data-theme="dark"] body.ent .button-primary,
[data-theme="dark"] body.ent button[type="submit"]{background:#d6ef8d;color:#14271d}
[data-theme="dark"] body.ent .filters a{border-color:#486143;color:var(--theme-muted)}
[data-theme="dark"] body.ent .filters a:hover,
[data-theme="dark"] body.ent .filters a[aria-current="true"]{background:#d6ef8d;border-color:#d6ef8d;color:#14271d}
[data-theme="dark"] body.ent th{color:#d6ef8d}
[data-theme="dark"] body.ent td,[data-theme="dark"] body.ent th{border-color:var(--line)}
[data-theme="dark"] body.ent hr{border-color:var(--line)}
[data-theme="dark"] body.ent .chat-journey article,
[data-theme="dark"] body.ent .product-steps li,
[data-theme="dark"] body.ent .app-frame,
[data-theme="dark"] body.ent .mini-chat,
[data-theme="dark"] body.ent .pricing-plan-grid .card{background:var(--theme-surface);border-color:var(--line);color:var(--ink)}
[data-theme="dark"] body.ent .mini-chat p{background:#20372b;color:var(--ink)}
[data-theme="dark"] body.ent .mini-chat p.visitor{background:#d6ef8d;color:#14271d}
[data-theme="dark"] body.ent .app-frame-bar{background:#14251d;border-color:var(--line)}
[data-theme="dark"] body.ent .product-steps b{background:#d6ef8d;color:#14271d}

/* Replace the older generated-image treatment with the homepage's calmer
   editorial surfaces on the shared marketing pages. */
body.ent .site-header .wrap,
body.ent .site-footer .wrap{width:min(1280px,calc(100% - 96px));margin-inline:auto}

/* public-shell.css predates the homepage header/footer and adds its own
   pseudo-chevron plus grid footer rules. Keep the shared components on the
   homepage implementation instead. */
body.ent .site-header .nav-drop{display:block;height:auto;align-items:initial}
body.ent .site-header .nav-drop>button{height:auto;padding:28px 0;border:0;background:none;font-size:12px;font-weight:600}
body.ent .site-header .nav-drop>button:after{content:none!important;display:none!important}
body.ent .site-footer .footer-top{display:flex;grid-template-columns:none;align-items:flex-start;justify-content:space-between;gap:30px;padding-bottom:0;border-bottom:0}
body.ent .site-footer .footer-bottom{display:flex;flex-direction:row;justify-content:space-between;align-items:initial;gap:20px;padding-top:21px}
body.ent .site-footer .footer-wordmark{font-size:clamp(40px,11.5vw,167px);line-height:1.3;margin:35px 0 20px}

/* Service and industry detail pages should inherit the homepage's editorial
   rhythm instead of the older liquid-glass page treatment. */
body.ent.focus-page{background:var(--paper)!important;color:var(--ink)!important;font-family:'DM Sans',sans-serif!important}
body.ent.focus-page main{background:var(--paper)!important;color:var(--ink)!important}
body.ent.focus-page .breadcrumbs{padding:20px 0!important;background:var(--paper)!important;color:var(--muted)!important}
body.ent.focus-page .page-hero{min-height:0!important;padding:clamp(120px,15vw,175px) 0 86px!important;background:radial-gradient(ellipse at 82% 38%,rgba(245,168,0,.14),transparent 42%),radial-gradient(ellipse at 8% 88%,rgba(139,13,34,.18),transparent 36%),linear-gradient(165deg,#02140d 0%,#07391d 46%,#0e522b 100%)!important;color:#fff!important}
body.ent.focus-page .page-hero:before{display:none!important}
body.ent.focus-page .page-hero h1{max-width:900px;margin:22px 0 25px!important;color:#fff!important;font-size:clamp(50px,7.2vw,96px)!important;line-height:.88!important;letter-spacing:-.075em!important}
body.ent.focus-page .page-hero .kicker{color:#fb9a0b!important;font-size:10px;letter-spacing:.18em}
body.ent.focus-page .page-hero .lede{max-width:600px;margin:0!important;color:rgba(247,250,241,.76)!important;font-size:16px!important;line-height:1.8!important}
body.ent.focus-page .hero-links{margin-top:30px;justify-content:flex-start}
body.ent.focus-page .pill{min-height:48px;padding:14px 22px;border-radius:4px;background:#fb9a0b!important;color:#17251d!important;box-shadow:none!important}
body.ent.focus-page .pill.secondary{border:1px solid rgba(251,154,11,.72)!important;background:transparent!important;color:#fb9a0b!important}
body.ent.focus-page main>.section{padding:clamp(75px,9vw,125px) 0!important;background:var(--paper)!important;color:var(--ink)!important}
body.ent.focus-page main>.section.soft{background:var(--soft)!important}
body.ent.focus-page .section h2{max-width:850px;margin:0 0 44px!important;color:var(--ink)!important;font-size:clamp(36px,4.5vw,66px)!important;line-height:1.02!important;text-align:left!important;letter-spacing:-.065em!important}
body.ent.focus-page .card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
body.ent.focus-page .card,
body.ent.focus-page .work-card{min-height:0!important;padding:28px!important;border:1px solid var(--line)!important;border-radius:18px!important;background:#f8faf4!important;color:var(--ink)!important;box-shadow:none!important}
body.ent.focus-page .card h3,body.ent.focus-page .work-card h3{color:var(--ink)!important;font-size:21px!important}
body.ent.focus-page .card p,body.ent.focus-page .work-card p{color:var(--muted)!important;font-size:13px;line-height:1.7}
body.ent.focus-page .visual-card>i{background:#edf4ef;color:var(--green);box-shadow:none}
body.ent.focus-page .visual-card>span,body.ent.focus-page .work-card>span{color:var(--wine)!important;background:#f0e0e4}
body.ent.focus-page .filters a{border-color:var(--line);background:transparent;color:var(--muted)}
body.ent.focus-page .filters a:hover{background:var(--lime);color:var(--ink);border-color:var(--lime)}
[data-theme="dark"] body.ent.focus-page main,[data-theme="dark"] body.ent.focus-page .breadcrumbs{background:var(--paper)!important;color:var(--ink)!important}
[data-theme="dark"] body.ent.focus-page main>.section{background:#15271f!important;color:var(--ink)!important}
[data-theme="dark"] body.ent.focus-page main>.section.soft{background:#101d18!important}
[data-theme="dark"] body.ent.focus-page .section h2{color:var(--ink)!important}
[data-theme="dark"] body.ent.focus-page .card,[data-theme="dark"] body.ent.focus-page .work-card{background:#1b3025!important;border-color:#3c5342!important;color:var(--ink)!important}
[data-theme="dark"] body.ent.focus-page .card h3,[data-theme="dark"] body.ent.focus-page .work-card h3{color:var(--ink)!important}
[data-theme="dark"] body.ent.focus-page .card p,[data-theme="dark"] body.ent.focus-page .work-card p{color:var(--muted)!important}
[data-theme="dark"] body.ent.focus-page .visual-card>i{background:#2a402b;color:#d6ef8d}
[data-theme="dark"] body.ent.focus-page .visual-card>span,[data-theme="dark"] body.ent.focus-page .work-card>span{background:#3e2631;color:#f1a4bc!important}
@media(max-width:800px){
  body.ent.focus-page .page-hero{padding:110px 0 70px!important}
  body.ent.focus-page .page-hero h1{font-size:clamp(48px,12vw,78px)!important}
  body.ent.focus-page .card-grid{grid-template-columns:1fr}
  body.ent.focus-page .section h2{font-size:38px!important}
}

body.ent .premium-data-hero{
 min-height:clamp(520px,68vh,720px)!important;padding:clamp(110px,15vh,170px) 0 86px!important;
 background:radial-gradient(circle at 82% 18%,rgba(214,239,141,.13),transparent 28%),linear-gradient(145deg,#071b12 0%,#0e522b 58%,#174b36 100%)!important;
}
body.ent .premium-data-hero:before{background:radial-gradient(circle at 72% 28%,rgba(214,239,141,.2),transparent 26%)!important;opacity:1;transform:none}
body.ent .premium-data-hero:after{background:radial-gradient(circle at 18% 80%,rgba(145,13,53,.28),transparent 30%),linear-gradient(180deg,transparent,rgba(2,16,10,.34))!important}
html[data-theme] body.ent .premium-data-hero{background-image:radial-gradient(circle at 82% 18%,rgba(214,239,141,.13),transparent 28%),linear-gradient(145deg,#071b12 0%,#0e522b 58%,#174b36 100%)!important;background-color:#071b12!important}
html[data-theme] body.ent .premium-data-hero:before{background-image:radial-gradient(circle at 72% 28%,rgba(214,239,141,.2),transparent 26%)!important}
html[data-theme] body.ent .premium-data-hero:after{background-image:radial-gradient(circle at 18% 80%,rgba(145,13,53,.28),transparent 30%),linear-gradient(180deg,transparent,rgba(2,16,10,.34))!important}
body.ent main>section.section.service-visual-section:not(.dark){background:#eef0e8!important;background-image:none!important;color:var(--ink)!important}
body.ent main>section.section.service-visual-section:not(.dark):before{display:none!important;background-image:none!important}
body.ent main>section.service-visual-section h2,body.ent main>section.service-visual-section .section-intro{color:var(--ink)!important}
body.ent .service-visual-section{background:#eef0e8!important;color:var(--ink)}
body.ent .service-visual-section:before{display:none!important}
body.ent .service-visual-section h2{color:var(--ink)!important}
body.ent .visual-card{border:1px solid var(--line)!important;background:#fff!important;color:var(--ink)!important;box-shadow:none!important;backdrop-filter:none}
body.ent .visual-card>i{background:#edf4ef;color:var(--green);box-shadow:none}
body.ent .visual-card>span{background:#f0e0e4;color:var(--wine)!important}
body.ent .visual-card h3,body.ent .visual-card h3 a{color:var(--ink)!important;text-shadow:none}
body.ent .visual-card p{background:#f7f7f2;color:var(--muted)!important;border-color:var(--line);backdrop-filter:none}
[data-theme="dark"] body.ent .service-visual-section{background:#15271f!important;color:var(--ink)}
[data-theme="dark"] body.ent main>section.section.service-visual-section:not(.dark){background:#15271f!important;background-image:none!important;color:var(--ink)!important}
[data-theme="dark"] body.ent main>section.service-visual-section h2,[data-theme="dark"] body.ent main>section.service-visual-section .section-intro{color:var(--ink)!important}
[data-theme="dark"] body.ent .visual-card{background:#1b3025!important;border-color:#3c5342!important;color:var(--ink)!important}
[data-theme="dark"] body.ent .visual-card>i{background:#2a402b;color:#d6ef8d}
[data-theme="dark"] body.ent .visual-card>span{background:#3e2631;color:#f1a4bc!important}
[data-theme="dark"] body.ent .visual-card h3,[data-theme="dark"] body.ent .visual-card h3 a{color:var(--ink)!important}
[data-theme="dark"] body.ent .visual-card p{background:#14251d;color:var(--muted)!important;border-color:#3c5342}

/* Final focus-page bridge: this selector intentionally outranks the older
   public-command service band while retaining the homepage palette. */
body.ent.focus-page main>section.section.service-visual-section:not(.dark){background:#f3f4ee!important;background-image:none!important;color:var(--ink)!important}
body.ent.focus-page main>section.service-visual-section:before{display:none!important;background-image:none!important}
[data-theme="dark"] body.ent.focus-page main>section.section.service-visual-section:not(.dark){background:#15271f!important;background-image:none!important;color:var(--ink)!important}

@media(max-width:800px){
  body.ent .site-header .wrap,
  body.ent .site-footer .wrap{width:calc(100% - 40px)}
  body.ent .site-footer .footer-top{flex-direction:column;gap:22px}
  body.ent .site-footer .footer-links{flex-wrap:wrap;gap:18px}
  body.ent .site-footer .footer-bottom{flex-wrap:wrap;flex-direction:row}
}
@media(max-width:520px){
  body.ent .site-footer .footer-bottom{font-size:9px;flex-wrap:wrap}
  body.ent .site-footer .footer-wordmark{font-size:11.25vw;margin-top:30px}
}
