/* JDI mobile revision 1. Shared navigation geometry, then one phone breakpoint.
   Desktop typography, colors and component styling stay in premium.css. */
:root {
  --jdi-top-line:3px;
  --jdi-header-height:90px;
  --jdi-crumb-height:0px;
  --jdi-bottom-height:0px;
  --jdi-flow-height:0px;
  --jdi-scroll-offset:calc(var(--jdi-top-line) + var(--jdi-header-height) + var(--jdi-crumb-height) + var(--jdi-flow-height) + 16px);
}
html { scroll-padding-top:var(--jdi-scroll-offset); }
.price-panel,.quote-summary { top:var(--jdi-scroll-offset); }
.brand-top-line { position:fixed;inset:0 0 auto;height:var(--jdi-top-line);background:#307c81;z-index:100;pointer-events:none; }
.header { top:var(--jdi-top-line);z-index:80; }
.reading-progress { top:2px;height:1px;z-index:101; }
.top-contact,.is-inner .top-contact { background:linear-gradient(110deg,#14646b,#43a0a8 65%,#15565e);color:#fff; }
.top-contact span { opacity:1; }
.header .brand .brand-disciplines { display:block;font:400 6px/1.5 Roboto,Arial,sans-serif;letter-spacing:.08em;margin-top:5px; }
.header .brand .brand-disciplines span { display:inline;font:inherit;letter-spacing:inherit; }
.header .brand .brand-disciplines span+span::before { content:' · '; }
.footer-bottom .brand small { max-width:300px;line-height:1.6;white-space:normal; }
.inner-breadcrumb-band { position:sticky;top:calc(var(--jdi-top-line) + var(--jdi-header-height));z-index:60;isolation:isolate;box-shadow:0 1px 0 #ffffff1f; }
.breadcrumbs a:focus-visible { outline-color:#fff; }
.service-feature { cursor:default; }
.service-feature:hover { transform:none;background:transparent; }
.contribution-list { width:min(100%,850px); }
.contribution-list summary { padding-block:18px;line-height:1.5; }
.check-list li::before { content:none; }
.check-list li { position:relative; }
.check-list .list-arrow { position:static;display:block;width:16px;height:16px;margin-top:5px;color:var(--teal);stroke:currentColor; }
a .link-arrow,button .link-arrow { width:1em;height:1em;min-width:1em;vertical-align:-.1em;stroke:currentColor;color:inherit;flex:none; }
.menu-toggle .hamburger { position:relative;width:24px;height:20px;display:block; }
.hamburger i { position:absolute;left:0;width:24px;height:1.5px;background:currentColor;border-radius:1px;transition:transform 220ms cubic-bezier(.22,.61,.36,1),opacity 160ms ease,top 220ms ease; }
.hamburger i:nth-child(1) { top:2px; }.hamburger i:nth-child(2) { top:9px; }.hamburger i:nth-child(3) { top:16px; }
.menu-toggle[aria-expanded=true] .hamburger i:nth-child(1) { top:9px;transform:rotate(45deg); }
.menu-toggle[aria-expanded=true] .hamburger i:nth-child(2) { opacity:0; }
.menu-toggle[aria-expanded=true] .hamburger i:nth-child(3) { top:9px;transform:rotate(-45deg); }
@media (max-width:800px) {
  :root { --jdi-top-line:0px;--jdi-gutter:6%;--jdi-header-height:72px;--jdi-bottom-height:calc(56px + env(safe-area-inset-bottom,0px));--jdi-space:56px;--jdi-gap:28px; }
  html { zoom:1;scrollbar-gutter:stable; }
  .brand-top-line { display:none; }
  body { font-size:15px;line-height:1.75;padding-bottom:var(--jdi-bottom-height); }
  .wrap { width:88%;max-width:1200px; }
  h1 { font-size:40px;line-height:1.18; } h2 { font-size:34px;line-height:1.22; } h3 { font-size:25px;line-height:1.3; }
  p { margin-bottom:16px; }.lead { font-size:15px;line-height:1.75;max-width:none; }
  .section.wrap::before,.page-intro::after,.about-hero::after { width:145px;max-width:44%;opacity:.055;top:20px; }
  .premium-hero::after { width:130px;max-width:36%;opacity:.075;top:135px; }
  input,select,textarea { font-size:16px; }
  .eyebrow { font-size:10px;line-height:1.6;letter-spacing:.13em;margin-bottom:18px; }
  .eyebrow>.icon { width:22px;height:22px;vertical-align:middle;flex:none; }
  .section { padding-block:var(--jdi-space); }.section-top { padding-top:24px;padding-bottom:var(--jdi-space); }
  .section.wrap+.section.wrap { padding-top:var(--jdi-space); }
  .section-heading { flex-direction:column;align-items:stretch;gap:18px;margin-bottom:30px; }
  .section-heading>div { width:100%; }.section-heading>p,.section-heading>div>p:not(.eyebrow) { padding-top:0;font-size:14px;line-height:1.75;max-width:none;margin-bottom:0; }
  .top-contact,.is-inner .top-contact { display:none!important; }
  .top-contact>.wrap { justify-content:space-between;gap:10px; }.top-contact span { display:none; }
  .header,.is-home .header,.is-inner .header { position:sticky;top:var(--jdi-top-line);width:100%;max-width:none;height:72px;margin-inline:0;padding:0 var(--jdi-gutter);gap:12px;background:#fff;box-shadow:0 3px 14px #1832330c; }
  .is-home .header { margin-bottom:-72px; }.is-inner .header { border-bottom:0; }
  .header .brand { flex:0 1 auto;min-width:0;gap:10px; }
  .header .brand img,.is-inner .header .brand img { width:50px;height:34px;padding:0;flex:none; }
  .header .brand>span { font:400 19px/1.25 Oswald,'Arial Narrow',sans-serif;letter-spacing:0; }
  .header .brand .brand-disciplines { font-size:5.8px;line-height:1.4;letter-spacing:.035em;margin-top:4px;max-width:150px; }
  .header .brand .brand-disciplines span { display:block; }.header .brand .brand-disciplines span+span::before { content:none; }
  .header>nav.language-switch { display:flex;position:static;order:2;align-self:center;flex:none;gap:4px;margin-left:auto;margin-right:8px;width:auto;min-width:0;padding:0;background:transparent;box-shadow:none;letter-spacing:.02em; }
  .header>nav.language-switch>a:any-link { display:grid;place-items:center;font:500 9px/1 Roboto,Arial,sans-serif;min-height:32px;min-width:16px;padding:6px 0;color:#70878a; }
  .header>nav.language-switch>a[aria-current] { color:#267780; }
  .header>nav.language-switch>a::after { display:none; }
  .header .menu-toggle { display:flex;align-items:center;justify-content:center;order:3;flex:none;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border:0;background:transparent;color:var(--ink); }
  .menu-toggle:focus-visible { outline:2px solid var(--teal);outline-offset:2px; }
  .header nav#nav { display:flex;position:fixed;inset:auto 0 0;top:calc(var(--jdi-top-line) + var(--jdi-header-height));height:calc(var(--jdi-viewport-height,100dvh) - var(--jdi-top-line) - var(--jdi-header-height));width:100%;margin:0;padding:24px var(--jdi-gutter) calc(28px + env(safe-area-inset-bottom,0px));gap:4px;flex-direction:column;align-items:stretch;justify-content:flex-start;background:#fff;overflow-y:auto;overscroll-behavior:contain;box-shadow:none;border-top:1px solid var(--line);z-index:90;visibility:hidden;opacity:0;transform:translateY(-12px);pointer-events:none;transition:opacity 220ms ease,transform 220ms cubic-bezier(.22,.61,.36,1),visibility 0s 220ms; }
  .header nav#nav>a { display:flex;align-items:center;justify-content:flex-start;gap:16px;width:100%;min-height:56px;flex:none;margin:0;padding:12px 6px;border-radius:0;font:300 21px/1.3 Oswald,'Arial Narrow',sans-serif;opacity:0;transform:translateY(-8px);transition:opacity 140ms ease,transform 180ms ease; }
  .header nav#nav>a>.icon { width:23px;height:23px;flex:none; }
  .header nav#nav>a.current::after,.header nav#nav>a:hover::after { width:36px;bottom:6px; }
  .header nav#nav>a:not(.btn) { font-size:21px; }
  .header nav#nav>.btn { width:100%;min-height:54px;margin-top:20px;padding:15px 22px;justify-content:center;background:var(--teal);border:1px solid var(--teal);border-radius:999px;font:300 16px/1.5 Roboto,Arial,sans-serif;color:#fff; }
  .header nav#nav.open { visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto;transition:opacity 300ms ease,transform 300ms cubic-bezier(.22,.61,.36,1),visibility 0s; }
  .header nav#nav.open>a { opacity:1;transform:translateY(0);transition:opacity 180ms ease,transform 225ms cubic-bezier(.22,.61,.36,1);transition-delay:calc(var(--nav-index,0) * 15ms); }
  .header nav#nav.closing { visibility:visible;pointer-events:none; }
  .jdi-menu-open { overflow:hidden; }.jdi-menu-open .header { position:fixed;top:var(--jdi-top-line);left:0;right:0;margin:0; }
  .jdi-menu-open .mobile-contact,.jdi-menu-open .back-to-top,.jdi-menu-open .section-tracker { visibility:hidden;pointer-events:none; }
  .inner-breadcrumb-band { padding-block:12px; }.breadcrumbs { border:0; }
  .breadcrumbs ol { font-size:11px;line-height:1.5;gap:8px;flex-wrap:nowrap; }.breadcrumbs li { gap:8px;min-width:0; }
  .breadcrumbs a,.breadcrumbs li>span { align-items:center;gap:7px;min-width:0; }.breadcrumbs .icon { width:15px;height:15px;flex:none; }
  .breadcrumbs .crumb-label { overflow-wrap:anywhere; }
  .premium-hero { padding-top:120px;padding-bottom:68px;min-height:0;clip-path:polygon(0 0,100% 0,100% 100%,0 97%); }
  .hero-editorial { padding-top:0; }.hero-editorial .eyebrow { font-size:9px;line-height:1.6;letter-spacing:.14em;margin-bottom:20px; }
  .hero-editorial h1,.premium-hero h1 { font:200 clamp(38px,10.5vw,48px)/1.18 Oswald,'Arial Narrow',sans-serif;margin-bottom:22px;max-width:none; }
  .hero-description,.premium-hero .hero-description { font-size:14px;line-height:1.75;max-width:none;margin-inline:auto;margin-bottom:26px; }
  .hero-editorial .actions,.premium-hero .actions { display:flex;flex-direction:column;align-items:stretch;gap:12px; }
  .premium-hero .actions .btn { width:100%;min-height:52px;justify-content:center;padding:14px 8px;font-size:clamp(11px,3.35vw,14px);gap:7px; }
  .hero-showcase,.premium-hero .hero-showcase { margin-top:36px; }.hero-showcase .device-stage { width:100%; }
  .hero-proof { font-size:8px;gap:14px;margin-top:18px; }.scroll-cue { display:none; }
  .btn { min-height:50px;padding:13px 16px;border-radius:999px;font:400 14px/1.45 Roboto,Arial,sans-serif;gap:8px;white-space:nowrap;text-align:center; }
  .btn>.icon,.btn .link-arrow { width:18px;height:18px;flex:none; }.text-link { font-size:14px;line-height:1.6; }
  .actions { gap:12px;flex-wrap:wrap; }
  .service-overview,.consulting-overview { grid-template-columns:1fr;gap:0; }
  .service-feature { display:flex;flex-direction:column;align-items:center;gap:12px;padding:26px 12px;margin:0;min-height:0;height:auto;border-bottom:1px solid var(--line); }
  .service-feature:last-child { border-bottom:0; }.service-feature::after { content:none; }
  .service-num { font:300 40px/1 Oswald,'Arial Narrow',sans-serif;margin:0; }
  .service-feature .feature-icon { width:34px;height:34px;margin:0; }.service-feature h3 { font:300 26px/1.3 Oswald,'Arial Narrow',sans-serif;min-height:0;margin:0; }
  .service-feature p { font-size:14px;line-height:1.7;margin:0;max-width:34ch; }
  .inline-note { display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;margin-top:22px;padding-top:22px; }.inline-note span { font-size:12px; }
  .expertise-layout { grid-template-columns:1fr;gap:30px; }.expertise-section { clip-path:none; }.expertise-section .lead { font-size:15px; }
  .metrics-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 16px;margin-block:26px; }.metrics-grid strong { font-size:42px; }.metrics-grid span { font-size:12px;line-height:1.5; }
  .expertise-portrait { max-width:280px;width:80%;margin-inline:auto; }.expertise-portrait>div { padding:15px; }.expertise-portrait span { font-size:11px; }
  .case-grid { grid-template-columns:1fr;gap:18px; }.case-card { padding:24px; }.case-metric { font-size:48px;margin-block:10px; }.case-card h3 { font-size:26px; }
  .project-grid { grid-template-columns:1fr;gap:34px; }.project-card p { font-size:14px;line-height:1.7; }.project-caption h3 { font-size:27px; }.project-caption { margin-top:20px;gap:16px; }
  .project-caption .eyebrow { font-size:9px;margin-bottom:8px; }
  .brand-rail,.detail-layout .brand-rail { grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-block:25px; }
  .brand-mark { min-width:0;min-height:90px;padding:14px 8px; }.brand-logo-frame { width:125px;max-width:100%;height:58px; }
  .brand-mark .brand-logo-frame img,.detail-layout .brand-mark .brand-logo-frame img { max-width:100%;width:115px;height:46px;object-fit:contain; }
  .brand-mark .wordmark { font-size:21px; }.detail-layout .tech-rail { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .is-inner .page-intro { width:100%;padding:28px var(--jdi-gutter) 36px;margin:0 0 30px;border:0; }
  .is-inner .page-intro h1 { font-size:39px;line-height:1.2; }.is-inner .page-intro .lead { font-size:14px;line-height:1.75; }
  .page-intro .back { margin-bottom:18px;font-size:12px; }.page-intro .eyebrow { font-size:9px; }
  .is-inner .about-hero { display:flex;flex-direction:column;width:100%;padding:28px var(--jdi-gutter) 38px;gap:28px;margin-bottom:0; }
  .is-inner .about-hero h1 { font:300 39px/1.2 Oswald,'Arial Narrow',sans-serif; }.is-inner .about-hero .lead { font-size:14px;line-height:1.75; }
  .is-inner .about-hero>img { max-width:240px;width:75%;max-height:300px;object-fit:cover;align-self:center; }
  .about-hero .actions { display:grid;grid-template-columns:minmax(0,1fr);width:100%;gap:12px;align-items:stretch; }
  .about-hero .actions .btn { width:100%;min-height:60px;font-size:clamp(10px,3vw,14px);padding:12px 8px;gap:6px;justify-content:center; }
  .about-hero .actions .text-link { justify-self:center;max-width:100%;padding-block:8px; }
  .timeline { width:100%;margin-top:26px; }.timeline summary { grid-template-columns:1fr;gap:6px;padding:18px 30px 18px 0; }.timeline summary strong { font-size:24px;line-height:1.35; }
  .timeline summary>span { padding-top:0;font-size:12px; }.timeline summary small { font-size:12px;margin-top:5px; }.timeline summary:after { top:20px; }
  .timeline-body { padding-left:0;padding-bottom:20px; }.timeline-body p,.timeline-body li { font-size:14px;line-height:1.75; }
  .capability-grid,.education-grid,.testimonial-grid,.steps { grid-template-columns:1fr;gap:28px; }.capability-grid h3,.education-grid h3 { font-size:25px; }.education-grid p { font-size:14px; }
  .education-grid h3 .icon { width:25px;height:25px; }.testimonial-grid blockquote { font-size:15px; }.company-grid { grid-template-columns:1fr;gap:10px; }
  .detail-layout { display:flex;flex-direction:column;gap:30px; }.detail-layout>div,.detail-layout>aside { width:100%;min-width:0; }
  .detail-block { margin-bottom:36px; }.detail-block h2 { font-size:31px; }.detail-block p,.detail-block li { font-size:14px;line-height:1.75; }
  .contribution-list { width:100%; }.contribution-list summary { padding:16px 30px 16px 0;font-size:16px; }.contribution-list p { padding-bottom:12px; }
  .service-work-grid { grid-template-columns:1fr;gap:30px; }
  .price-panel { position:static;padding:24px; }.price-panel>strong { font-size:44px; }.price-panel .btn { justify-content:center;width:100%; }.price-base-note { max-width:none; }
  .service-row { display:flex;flex-direction:column;align-items:stretch;gap:18px;padding-block:28px; }.service-row h2 { font-size:29px;padding-left:14px;border-left-width:2px; }.service-row p { font-size:14px;line-height:1.75; }
  .service-row:hover { padding-left:0; }.service-price { align-items:flex-start;gap:6px; }.service-price strong { font-size:34px; }.service-price span { font-size:12px; }
  .project-detail { padding:20px 0 32px; }.project-detail .device-stage { aspect-ratio:1.44;padding:20px 22px 0 0; }.project-detail .desktop-device { width:94%; }.project-detail .phone-device { width:25%;right:0;bottom:1%; }
  .phone-viewport img { object-fit:cover; }.project-facts { padding:24px; }.project-story { font-size:14px;line-height:1.8; }.project-list-section { padding-top:0; }
  .brand-samples { grid-template-columns:minmax(0,1fr);gap:24px; }
  .brand-scene { width:100%;height:auto;aspect-ratio:1.08;min-height:280px; }
  .sample-paper { width:67%;padding:24px 18px; }.sample-paper h4 { font-size:22px; }
  .sample-card { width:76%;padding:22px; }.sample-card>b { font-size:24px; }
  .quote-progress { padding-block:11px; }
  .quote-progress ol { gap:5px; }
  .quote-progress a { flex-direction:column;justify-content:center;gap:6px;font-size:10px;min-height:52px; }
  .quote-progress .flow-number { width:27px;height:27px;font-size:10px; }
  .quote-progress .flow-label { white-space:nowrap; }
  .quote-layout { display:flex;flex-direction:column;gap:28px; }.quote-layout>div { width:100%; }.quote-summary { position:static;width:100%;order:-1;padding:24px; }
  .quote-summary h2 { font-size:31px; }.quote-summary p { font-size:13px; }.quote-summary .fine { font-size:11px; }.quote-total strong { font-size:38px; }
  .quote-step { display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;padding-block:26px; }.quote-step h2 { font-size:28px; }.step-badge { width:30px;height:30px;font-size:11px; }
  .quote-step>div { min-width:0; }
  .quote-step>div>label,#document-step label { font-size:13px; }
  #document-step>div>p:not(.fine) { margin-bottom:22px; }
  #retention-choice { margin-top:24px; }.quote-option { gap:10px; }.quote-option>span { font-size:13px; }.quote-option select { min-width:64px;width:74px; }.quote-payments .quote-line { gap:12px; }
  .quote-line>span { min-width:0;overflow-wrap:anywhere; }.quote-line>b { flex:none;white-space:nowrap; }
  .contact-links { gap:14px; }.contact-links a { overflow-wrap:anywhere;font-size:16px; }.contact-form,.admin-form { width:100%;min-width:0; }
  .field-grid { grid-template-columns:minmax(0,1fr);gap:16px; }.contact-form label { display:flex;flex-direction:column;align-items:stretch;gap:7px;margin:0 0 18px;font-size:14px;font-weight:500;line-height:1.5; }
  .contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea,.quote-step select { width:100%;max-width:100%;min-height:50px;margin:0;font:300 16px/1.5 Roboto,Arial,sans-serif;padding:13px 15px; }
  .contact-form select,.quote-step select { padding-right:46px;background-position:right 16px center; }
  .contact-form textarea { min-height:144px;resize:vertical; }
  .contact-form label.checkbox { display:grid;grid-template-columns:22px minmax(0,1fr);gap:14px;align-items:start;margin-block:20px;line-height:1.6; }
  .contact-form .checkbox input { position:static;transform:none;width:19px;height:19px;min-height:0;margin:3px 0 0;accent-color:var(--teal); }
  .contact-form .checkbox span { font-size:12px;font-weight:300; }.contact-form .checkbox a { text-decoration:underline;text-underline-offset:3px; }
  .contact-form>.btn { width:100%;justify-content:center;min-height:52px; }.contact-form .fine { margin-top:12px;font-size:12px;line-height:1.6; }
  .alert { margin-inline:var(--jdi-gutter);padding:16px;font-size:13px;line-height:1.65;overflow-wrap:anywhere; }
  .quote-band { padding:60px var(--jdi-gutter);clip-path:polygon(0 0,100% 2%,100% 100%,0 98%); }.quote-band>.wrap { width:100%; }
  .quote-band h2 { font-size:37px; }.quote-band p:not(.eyebrow) { font-size:14px;line-height:1.75; }.quote-band .actions { display:flex;flex-direction:column;align-items:stretch;gap:12px; }.quote-band .actions .btn { width:100%;justify-content:center;font-size:14px; }
  .footer-bottom { grid-template-columns:minmax(0,1fr);gap:36px;justify-items:center; }.footer-identity { width:100%;text-align:center; }.footer-bottom .brand img { width:50px;height:34px; }.footer-bottom .brand { gap:10px;justify-content:center; }.footer-bottom .brand .brand-disciplines span { display:block; }.footer-bottom .brand .brand-disciplines span+span::before { content:none; }.footer-identity p { max-width:34ch;margin:16px auto 0; }.footer-links,.footer-contact { width:min(100%,330px);margin-inline:auto;align-items:center;text-align:center;font-size:12px; }.footer-links a,.footer-contact a { justify-content:center; }.footer-contact .contact-emails { align-items:center;text-align:center; }.footer-email-line { justify-content:center;align-items:center; }.footer-links strong,.footer-contact strong { align-self:center;text-align:center; }.footer-legal { flex-direction:column;align-items:center;gap:12px;text-align:center; }
  .faq-page { padding-top:0; }.faq-list summary { font-size:19px; }.faq-list details p { font-size:14px; }
  main .section-heading h2,main .section>h2,main .section-top>h2,main .detail-block>h2,main .detail-layout>div>h2,main .expertise-layout h2,main .quote-step h2,main .faq-group h2,footer .footer-top h2 { padding-left:14px;border-left-width:2px; }
  .detail-layout .evidence-logo-rail { grid-template-columns:repeat(2,minmax(0,1fr)); }.is-home .case-section,.is-home .client-section { padding-block:calc(var(--jdi-space) + 45px); }
  footer { padding:50px var(--jdi-gutter) 38px; }.footer-top { display:flex;align-items:center;gap:20px;padding-bottom:28px; }.footer-top h2 { font-size:31px; }.footer-top .eyebrow { font-size:9px; }
  .circle-link { width:46px;height:46px;min-width:46px;font-size:22px; }.footer-bottom { font-size:11px; }.footer-bottom .brand>span { font-size:19px;text-align:left; }.footer-bottom .brand small { font-size:5.8px;max-width:150px; }
  .footer-bottom .contact-emails { font-size:12px; }.prose { width:88%; }.prose h2 { font-size:28px; }.prose p { font-size:14px;line-height:1.8; }
  .custom-section .section-image { max-height:380px; }.section-tracker { display:none!important; }
  .mobile-contact { position:fixed;inset:auto 0 0;display:grid;grid-template-columns:1fr 1fr;min-height:var(--jdi-bottom-height);padding-bottom:env(safe-area-inset-bottom,0px);background:#245c65;z-index:75;box-shadow:0 -2px 12px #173a4014; }
  .mobile-contact a { min-height:56px;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 8px;font:400 12px/1.3 Roboto,Arial,sans-serif;text-align:center;color:#fff; }
  .mobile-contact a:first-child { background:#3d939c; }.mobile-contact .link-arrow { width:14px;height:14px; }
  .back-to-top { width:44px;height:44px;min-width:44px;min-height:44px;aspect-ratio:1;padding:0;right:16px;bottom:calc(var(--jdi-bottom-height) + 14px);z-index:65; }.back-to-top span { display:none; }
  .jdi-editing .mobile-contact,.jdi-editing .back-to-top { visibility:hidden;pointer-events:none; }
  .jdi-editing input,.jdi-editing textarea,.jdi-editing select { scroll-margin-block:12px 28px; }
}
@media (max-width:360px) {
  .header,.is-home .header,.is-inner .header { gap:8px; }
  .header .brand { gap:7px; }.header .brand img,.is-inner .header .brand img { width:44px;height:30px; }
  .header .brand>span,.footer-bottom .brand>span { font-size:17px; }.header .brand .brand-disciplines,.footer-bottom .brand small { font-size:5.2px; }.footer-bottom .brand img { width:44px;height:30px; }.footer-bottom .brand { gap:7px; }
  .header>nav.language-switch { gap:3px;margin-right:5px; }.header>nav.language-switch>a:any-link { min-width:14px; }
  .brand-rail,.detail-layout .brand-rail { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce) {
  .header nav#nav,.header nav#nav>a,.header nav#nav.open,.header nav#nav.open>a,.hamburger i { transition:none!important;transition-delay:0s!important; }
}

/* Administration: retained mobile layout from the supplied version. */
@media(max-width:800px){
.admin-grid { grid-template-columns:1fr; }
.admin-nav { flex-wrap:wrap; }
.admin-form .field-grid { grid-template-columns:1fr; }
.admin-actions { flex-wrap:wrap; }
.admin-wrap h1 { font-size:37px; }
.admin-wrap .btn { font-size:11px; }
.admin-row { flex-wrap:wrap; }
.admin-nav { gap:12px;padding:18px 5%; }
.admin-nav a { font-size:10px; }
.admin-wrap .admin-panel { padding:18px; }
}

/* Prevent long CTAs from breaking on narrow phones without clipping their text. */
@media (max-width:800px) {
  .actions .btn,.price-panel .btn,.contact-form>.btn,.faq-cta { white-space:nowrap;max-width:100%;font-size:clamp(10px,3.1vw,14px);letter-spacing:0;padding-inline:8px;gap:6px; }
  .actions .btn>.icon,.actions .btn .link-arrow { width:16px;height:16px; }
  .btn span { font-size:inherit; }
  .header nav#nav>a>.icon { width:20px;height:20px; }
}
@media (max-width:390px) {
  .header nav#nav>a:not(.btn) { font-size:20px; }
  .quote-band .actions .btn,.about-hero .actions .btn { font-size:clamp(9px,2.8vw,12px); }
}

/* Compact, consistently aligned organization list. */
.company-grid { gap:0 26px; }
.company-grid .company-item { display:grid;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:12px;min-height:77px;padding:13px 4px 13px 0;border-top:1px solid var(--line); }
.company-logo { display:grid;place-items:center;width:62px;height:42px;background:#f1f6f6;border:1px solid #e1ebeb;overflow:hidden; }
.company-logo img { display:block;width:56px;height:36px;object-fit:contain;mix-blend-mode:multiply; }
.company-initials { font:500 12px/1 Roboto,Arial,sans-serif;letter-spacing:.08em;color:#367f86; }
.company-name { min-width:0;font-size:12px;line-height:1.5; }
@media (max-width:800px) { .company-grid { gap:0; }.company-grid .company-item { min-height:72px;grid-template-columns:58px minmax(0,1fr); }.company-logo { width:58px;height:40px; }.company-logo img { width:52px;height:34px; } }

/* Trajectory industries: accessible filters and consistently sized company logos. */
.industry-filters { display:flex;flex-wrap:wrap;gap:8px;margin:28px 0 12px; }
.industry-filters[hidden],.industry-count[hidden],.company-grid .company-item[hidden] { display:none!important; }
.industry-filter { appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 16px;border:1px solid #cbdfe1;border-radius:22px;background:#f2f7f7;color:#285f66;font:400 13px/1.4 Roboto,Arial,sans-serif;cursor:pointer;white-space:nowrap; }
.industry-filter:hover { border-color:#287f86;background:#e4f0f1; }
.industry-filter.is-active { background:#287f86;border-color:#287f86;color:#fff; }
.industry-filter:focus-visible { outline:2px solid #205f67;outline-offset:3px; }
.industry-count { margin:0 0 20px;font:400 12px/1.5 Roboto,Arial,sans-serif;color:#61767a; }
.company-logo-dark { background:#205f67;border-color:#205f67; }
.company-logo-dark img { mix-blend-mode:normal; }
@media(max-width:800px) { .industry-filters { gap:7px;margin-top:22px; }.industry-filter { font-size:12px;min-height:40px;padding:8px 13px; } }

.brand-logo-frame-dark { background:#205f67;border-radius:2px; }
.brand-mark .brand-logo-frame-dark img { mix-blend-mode:normal;filter:none;opacity:1; }
