/* All new presentation rules are confined to phones. Desktop uses the original DOM and CSS. */
@media(max-width:767px){
  body.mobile-compact .section{padding-block:44px}
  body.mobile-compact .hero{display:block;padding-block:38px 28px}
  body.mobile-compact .hero .eyebrow{margin-bottom:20px;font-size:12px}
  body.mobile-compact .hero h1{font-size:clamp(43px,12vw,58px);line-height:1.05}
  body.mobile-compact .hero-lead{font-size:19px;line-height:1.55;margin-top:22px}
  body.mobile-compact .hero .actions{margin-top:23px;gap:18px}
  body.mobile-compact .hero>.mobile-details{margin-top:22px}
  body.mobile-compact .hero .hero-description{margin:0 0 18px;font-size:16px}
  body.mobile-compact .hero .hero-system{width:100%;max-width:none;box-shadow:none}
  body.mobile-compact .section-heading{display:block;margin-bottom:23px}
  body.mobile-compact .section-heading .eyebrow{margin-bottom:15px;font-size:12px}
  body.mobile-compact h2{font-size:35px;line-height:1.12}
  body.mobile-compact .section-heading>p{display:none}
  body.mobile-compact .mobile-details{min-width:0;border-top:1px solid var(--line)}
  body.mobile-compact .mobile-details>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;padding:12px 0;cursor:pointer;list-style:none;font-size:15px;font-weight:600;line-height:1.5}
  body.mobile-compact .mobile-details>summary::-webkit-details-marker{display:none}
  body.mobile-compact .mobile-detail-icon{font-size:23px;line-height:1;flex-shrink:0;font-weight:400}
  body.mobile-compact .mobile-details[open]>summary .mobile-detail-icon{transform:rotate(45deg)}
  body.mobile-compact .mobile-details>summary:focus-visible{outline:3px solid #386ed1;outline-offset:3px}
  body.mobile-compact .mobile-detail-content{padding:8px 0 18px}
  body.mobile-compact .service-grid{display:grid;grid-template-columns:1fr;gap:16px}
  body.mobile-compact .service-grid>article{padding:20px}
  body.mobile-compact .service-heading{gap:12px;align-items:center}
  body.mobile-compact .service-icon{width:36px;height:36px;flex-shrink:0}
  body.mobile-compact .service-icon svg{width:24px;height:24px}
  body.mobile-compact .service-no{font-size:12px;line-height:1.5}
  body.mobile-compact .service-grid h3{font-size:25px;line-height:1.2;margin-top:7px}
  body.mobile-compact .service-grid h3 br{display:none}
  body.mobile-compact .service-grid p{font-size:16px;line-height:1.65;margin-top:15px}
  body.mobile-compact .service-grid .mobile-details{margin-top:16px;border-color:var(--service-line)}
  body.mobile-compact .service-grid .mobile-detail-content>p{margin-top:0}
  body.mobile-compact .service-grid ul{display:block;margin:18px 0}
  body.mobile-compact .service-grid li{font-size:16px}
  body.mobile-compact .service-grid .mobile-detail-content>a{display:flex;justify-content:space-between;gap:12px;font-size:15px;font-weight:600;line-height:1.5;min-height:44px;align-items:center}
  body.mobile-compact .tools-line{margin-top:24px;padding-top:18px;gap:8px;font-size:13px;line-height:1.7}
  body.mobile-compact .case-jumps{display:none}
  body.mobile-compact .client-case{margin-top:18px}
  body.mobile-compact .case-header{min-height:78px;margin-inline:19px;padding-block:16px;gap:12px}
  body.mobile-compact .case-header .case-logo{width:125px;min-width:0}
  body.mobile-compact .case-header .case-logo img{max-width:125px;max-height:44px;object-fit:contain;object-position:left center}
  body.mobile-compact .case-sector,body.mobile-compact .case-number{display:none}
  body.mobile-compact .mobile-case-body{padding:20px 19px 8px}
  body.mobile-compact .mobile-case-body .case-role{font-size:13px;line-height:1.5;margin-bottom:13px;gap:4px}
  body.mobile-compact .mobile-case-body .case-role strong{font-size:14px}
  body.mobile-compact .mobile-case-body .case-role span{font-size:12px}
  body.mobile-compact .mobile-case-body>h3{font-size:26px;line-height:1.2;margin:0 0 21px}
  body.mobile-compact .mobile-case-body .case-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 20px}
  body.mobile-compact .mobile-case-body .case-metrics>div{padding-top:13px;min-width:0}
  body.mobile-compact .mobile-case-body .case-metrics>div:last-child{grid-column:auto}
  body.mobile-compact .mobile-case-body .case-metrics strong{font-size:31px;line-height:1.1;white-space:nowrap}
  body.mobile-compact .mobile-case-body .case-metrics span{font-size:13px;line-height:1.5;margin-top:8px;overflow-wrap:anywhere}
  body.mobile-compact .case-fjord .case-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.mobile-compact .case-fjord .case-metrics strong{font-size:30px}
  body.mobile-compact .case-tryhackme .case-metrics{display:block}
  body.mobile-compact .case-tryhackme .case-metrics .ongoing{padding-top:0}
  body.mobile-compact .case-tryhackme .case-metrics .ongoing strong{font-size:22px}
  body.mobile-compact .case-tryhackme .case-metrics .status-dot{width:8px;height:8px;margin:0 8px 3px 0}
  body.mobile-compact .mobile-case-body .mobile-details{border-color:var(--case-border)}
  body.mobile-compact .mobile-case-body .case-brief{font-size:16px;line-height:1.75;margin-top:4px}
  body.mobile-compact .mobile-case-body .case-builds{margin-block:16px 23px}
  body.mobile-compact .mobile-case-body .case-builds li{font-size:16px}
  body.mobile-compact .mobile-case-body .case-system{padding:18px}
  body.mobile-compact .mobile-case-body .client-quote{margin:23px 0 0;padding-block:20px 0;gap:18px}
  body.mobile-compact .mobile-case-body .client-quote blockquote{font-size:21px;line-height:1.5}
  body.mobile-compact .mobile-case-body .case-study-link{margin:0;padding:14px 0 17px;border-top:1px solid var(--case-border);font-size:15px;line-height:1.5}
  body.mobile-compact .mobile-metric-context{font-size:14px;line-height:1.6;margin-bottom:12px;opacity:.85}
  body.mobile-compact .work-cta{padding:26px 0 0;margin-top:28px;gap:18px}
  body.mobile-compact .work-cta h3{font-size:26px}
  body.mobile-compact .work-cta .eyebrow{margin-bottom:13px}
  body.mobile-compact .work-cta .actions{margin-top:0;gap:18px}
  body.mobile-compact .engagement-grid{grid-template-columns:1fr;gap:15px}
  body.mobile-compact .engagement-grid>article{display:block;padding:22px}
  body.mobile-compact .engagement-grid>article>h3{margin:0;font-size:28px;line-height:1.2}
  body.mobile-compact .engagement-grid .mobile-engagement-intro{font-size:16px;line-height:1.65;margin-top:12px}
  body.mobile-compact .engagement-grid .mobile-details{margin-top:17px}
  body.mobile-compact .engagement-grid .mobile-detail-content .engagement-kind{display:block}
  body.mobile-compact .engagement-grid .mobile-detail-content .engagement-fit{margin-top:16px;font-size:16px}
  body.mobile-compact .engagement-grid .mobile-detail-content ul{margin:20px 0;font-size:16px}
  body.mobile-compact .engagement-grid>article>.text-link{margin-top:14px;padding-top:0;min-height:44px;font-size:15px;align-items:center;line-height:1.5}
  body.mobile-compact .deal-layout{display:block}
  body.mobile-compact .deal-layout .eyebrow{font-size:12px;margin-bottom:17px}
  body.mobile-compact .deal-layout>div>p:not(.eyebrow){font-size:17px;line-height:1.7;margin-top:21px}
  body.mobile-compact .deal-layout .actions{margin-top:23px}
  body.mobile-compact .deal-layout>.mobile-details{margin-top:24px}
  body.mobile-compact .deal-diagram{margin-top:0;padding:22px}
  body.mobile-compact .founder-section{padding-block:44px}
  body.mobile-compact .founder-layout{display:block}
  body.mobile-compact .founder-layout>.eyebrow{margin-bottom:20px;font-size:12px}
  body.mobile-compact .mobile-founder-heading{display:flex;align-items:center;gap:20px;margin-bottom:23px}
  body.mobile-compact .mobile-founder-heading .portrait{position:relative;width:88px;height:88px;min-width:88px;padding:0;border:0;border-radius:50%;overflow:hidden}
  body.mobile-compact .mobile-founder-heading .portrait img{position:absolute;width:180%;height:auto;max-width:none;left:-40%;top:-18%}
  body.mobile-compact .mobile-founder-heading h2{font-size:30px;line-height:1.13;margin:0}
  body.mobile-compact .mobile-founder-heading h2 br{display:none}
  body.mobile-compact .founder-layout>div>p:not(.eyebrow){font-size:17px;line-height:1.7;margin-top:16px}
  body.mobile-compact .founder-links{margin-top:20px}
  body.mobile-compact .faq-section{gap:24px}
  body.mobile-compact .faq-section .eyebrow{margin-bottom:15px}
  body.mobile-compact .faq-list summary{font-size:17px;line-height:1.6;padding-block:18px}
  body.mobile-compact .contact-section{padding-block:44px}
  body.mobile-compact .contact-section .eyebrow{margin-bottom:18px}
  body.mobile-compact .contact-section>.wrap>.mobile-details{margin-top:24px;border-color:#ffffff66}
  body.mobile-compact .contact-section .mobile-details>summary{color:#fff}
  body.mobile-compact .call-expectations{margin:10px 0 0;gap:20px}
  body.mobile-compact .contact-bottom{margin-top:23px;padding-top:0;gap:20px;border:0}
  body.mobile-compact .contact-bottom>p{font-size:17px;line-height:1.65}
  body.mobile-compact .contact-bottom .button{min-height:54px;font-size:15px;padding:16px;gap:14px}
  body.mobile-compact .contact-email{font-size:14px;overflow-wrap:anywhere}
  body.mobile-compact .site-footer{padding-block:30px}
  body.mobile-compact .footer-top{gap:24px;padding-bottom:24px}
  body.mobile-compact .footer-bottom{gap:14px}
}
