/* Progressive mobile layout. Shared content remains available at every width. */
.mobile-menu-toggle,.mobile-results-preview,.scope-summary{display:none}
.hero-picture{display:contents}
.dashboard-disclosure,.dashboard-expanded{display:contents}
.dashboard-disclosure>summary,.repeat-details>summary,.footer-message>summary{display:none}
.scope-details{grid-column:2;min-width:0}
.scope-details>summary{list-style:none;cursor:default}
.scope-details>summary::-webkit-details-marker{display:none}
.footer-message{display:block}
@media(min-width:761px){.scope-details>summary{pointer-events:none}}

@media(max-width:760px){
 html{scroll-padding-top:82px}
 .header{height:64px;padding:0 20px;gap:12px}
 .header nav[aria-label="Main navigation"]{margin-left:auto}
 .header nav[aria-label="Main navigation"]>a:not(.nav-cta){display:none}
 .header .brand,.header .brand img{width:104px;height:44px}
 .mobile-menu-toggle{display:flex;align-items:center;gap:7px;min-width:44px;min-height:44px;padding:6px 8px;border:0;background:transparent;color:inherit;font-size:13px;cursor:pointer}
 .mobile-menu-toggle{justify-content:center}
 .mobile-menu-toggle span{font-size:20px}
 #mobile-navigation{position:absolute;top:64px;left:0;right:0;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:12px 24px 18px;background:#fff;color:#111;border-bottom:1px solid #dfe3ea;box-shadow:0 12px 20px #14243a12;max-height:calc(100svh - 64px);overflow:auto}
 #mobile-navigation a{min-height:48px;display:flex;align-items:center;color:#111;font-size:16px}
 html:not([data-motion='on']) .hero-journey .hero-stage{display:flex;flex-direction:column;min-height:0;height:auto;overflow:visible;padding:18px 24px 10px}
 html:not([data-motion='on']) .hero-journey .hero-copy{display:contents}
 html:not([data-motion='on']) .hero-copy>.eyebrow{order:0;margin:0;font-size:9px;letter-spacing:.1em}
 html:not([data-motion='on']) .hero-journey h1{order:1;font-size:clamp(32px,8.5vw,40px);line-height:1.06;margin:14px 0;max-width:100%;text-wrap:balance}
 html:not([data-motion='on']) .hero-journey h1 span{display:inline}
 html:not([data-motion='on']) .hero-journey h1 span:not(:last-child)::after{content:' '}
 html:not([data-motion='on']) .hero-journey .hero-description{order:2;font-size:16px;line-height:1.5;margin:0;max-width:42ch}
 html:not([data-motion='on']) .hero-journey .hero-film{order:3;position:relative;inset:auto;height:280px;width:100%;margin:16px 0 0;min-height:0;max-height:none;overflow:hidden}
 html:not([data-motion='on']) .hero-journey .hero-film .film-fallback{object-fit:contain;object-position:center;transform:none;height:100%;width:100%}
 html:not([data-motion='on']) .hero-copy>.hero-actions{order:4;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:12px;margin:16px 0 0}
 .hero-copy>.hero-actions .button{padding:13px 16px;gap:16px;min-height:48px}
 .hero-copy>.hero-actions .text-link{font-size:14px;gap:8px;min-height:48px}
 html:not([data-motion='on']) .hero-journey .hero-controls{order:5;position:relative;inset:auto;padding:0;margin:4px 0 0;justify-content:center;min-height:44px}
 .hero-journey .hero-controls button{min-height:44px;font-size:12px}
 html:not([data-motion='on']) .hero-journey #media-status:empty{display:none}
 .hero-journey .hero-controls button:not(:disabled){border:0;background:none;text-decoration:underline;text-underline-offset:4px}
 .crm-section{padding:14px 24px 18px}.crm-logos li{height:44px}.crm-note{margin-top:8px;font-size:12px}
 .about-section,.connect-section,.results-section,.pilot-scope,.faq-section,.pilot{padding:44px 24px}
 .about-section{display:flex;flex-direction:column;gap:24px}
 .about-section .about-copy{order:-1;margin:0}
 .about-section h2,.connect-section h2,.results-section h2,.footprint-heading h2,.pilot-scope h2,.faq-section h2,.pilot h2{font-size:32px;line-height:1.1;margin:12px 0 18px}
 .about-copy>.section-lead,.connect-copy>.section-lead,.results-heading .section-lead,.scope-intro .section-lead,.pilot-copy>p:not(.eyebrow){font-size:16px;line-height:1.5}
 .about-copy .text-link{margin-top:10px}
 .about-sequence{width:100%;max-width:380px}.about-scenes{height:340px}.about-scene{grid-template-rows:minmax(0,1fr) 100px;gap:8px}.about-scene figcaption h3{font-size:24px;margin-bottom:7px}.about-sequence-controls{margin:0}
 .about-section>.repeat-section{order:2;display:block;padding:24px 0 0;border-top:1px solid #dfe3ea;background:transparent;color:#111;width:100%}
 .about-section>.repeat-section h2{font-size:24px;margin:0 0 12px}
 .about-section>.repeat-section .section-lead{font-size:16px;line-height:1.5;margin:0;color:#505765}
 .repeat-details>summary{display:flex;align-items:center;min-height:44px;font-size:14px;cursor:pointer;color:#164bff;list-style:none;gap:12px}
 .repeat-details>summary::after{content:'+'}.repeat-details[open]>summary::after{content:'−'}
 .repeat-details>div p{font-size:15px;line-height:1.5}.repeat-details .text-link{margin-top:8px}
 .connect-section{gap:12px}.connect-copy{width:100%}
 .campaign-goals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;border:0;margin-top:22px}
 .campaign-goals button{border:1px solid #d4dce8;border-radius:6px;padding:10px 7px;min-height:60px;justify-content:center;text-align:center;font-size:13px;line-height:1.35;background:#fff}
 .campaign-goals button>span:last-child{display:none}.campaign-goals button[aria-pressed=true]{background:#eef2ff;border-color:#164bff;color:#153db3}
 .campaign-outcome{padding:18px 0 6px;min-height:0}.campaign-outcome h3{font-size:21px;margin-bottom:8px}.campaign-outcome p{font-size:15px;line-height:1.5}.campaign-measure{margin-top:10px}.campaign-measure strong{display:inline;margin-right:6px}
 .handset-stage{height:570px}.handset-canvas{top:-44px;left:calc(50% - 176px);transform:scale(.78)}
 .handset-canvas .phone-next{min-height:58px;font-size:16px;padding:12px}
 .phone-study .mobile-bonus{min-height:58px;align-items:center}
 .phone-study .study-caption{font-size:12px;line-height:1.5;padding:0;margin-top:6px}
 .dashboard-disclosure,.dashboard-expanded{display:block}
 .dashboard-disclosure>summary{display:flex;align-items:center;justify-content:space-between;list-style:none;cursor:pointer;padding:14px 0;min-height:48px;border-top:1px solid #52647e;color:#fff;font-size:15px}
 .dashboard-disclosure>summary::-webkit-details-marker{display:none}.dashboard-disclosure>summary>span:last-child{font-size:24px}
 .dashboard-disclosure .when-open{display:none}.dashboard-disclosure[open] .when-open{display:inline}.dashboard-disclosure[open] .when-closed{display:none}.dashboard-disclosure[open]>summary>span:last-child{transform:rotate(45deg)}
 .dashboard-disclosure>summary:focus-visible{outline:2px solid #b8caff;outline-offset:4px}
 .mobile-results-preview{display:block;margin:24px 0 18px;color:#e0e7f3}
 .mobile-results-preview>p{font-size:12px}.mobile-results-preview dl{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0 8px}
 .mobile-results-preview dt{font-size:11px;line-height:1.5}.mobile-results-preview dd{font-size:26px;color:#fff;margin:8px 0 0;letter-spacing:-.03em}
 .mobile-results-preview svg{width:100%;height:90px;display:block;margin:12px 0}
 .dashboard-explainer{padding:16px 0 0}.dashboard-explainer li{padding:12px 0}.dashboard-explainer p{font-size:15px;line-height:1.5}
 .dashboard-laptop{margin-top:18px;max-width:none}.dashboard-scroll-hint{display:none}
 .dashboard-disclosure .laptop-screen{aspect-ratio:auto;max-height:none;display:block;padding:0;border:0;border-radius:8px}
 .dashboard-disclosure .campaign-report{height:auto;max-height:none;overflow:visible;border-radius:8px}
 .dashboard-disclosure .laptop-screen:before,.dashboard-disclosure .laptop-screen:after{display:none}
 .dashboard-disclosure .dashboard-main{min-height:0;padding:18px 14px}.dashboard-disclosure .dashboard-topbar{padding:8px 12px}
 .machines-section{padding:44px 0}.footprint-heading h2{margin-bottom:20px}.footprint-presentation{margin-top:0}
 .footprint-dial{display:flex;flex-direction:column;position:relative;width:calc(100% - 48px);margin:0 auto 16px;padding:0;border:0;border-radius:0;box-shadow:none;background:none;backdrop-filter:none}
 .footprint-choice{order:0}.footprint-dial .footprint-controls button{min-height:78px;flex:1}
 .footprint-dial .footprint-detail{order:1;margin:14px 0 0;text-align:center}
 .footprint-dial .footprint-detail h3{font-size:22px;margin:0 0 8px}.footprint-dial .footprint-detail p{font-size:15px;line-height:1.5}
 .footprint-dial .machine-quote{order:2;justify-content:center;margin:8px 0 0;min-height:44px;font-size:14px}
 .footprint-choice .size-track{top:22px}.footprint-choice .size-track input{top:-21px;height:44px}
 .footprint-scene{aspect-ratio:4/3}.footprint-scene:after{display:none}.footprint-scene img{object-position:65% center}
 .scene-caption{font-size:10px;line-height:1.5;gap:4px;margin:10px 24px 0;padding:0}
 .scope-intro{text-align:left}.scope-intro h2 br{display:none}.scope-intro .section-lead{margin:0}
 .scope-list{margin-top:24px}.scope-list:before,.scope-list:after{display:none}
 .scope-list>li{display:block;min-height:0;padding:0;border-top:1px solid #dce1e9}
 .scope-list>li:last-child{border-bottom:1px solid #dce1e9}.scope-list>li:before,.scope-list .scope-number,.scope-list .scope-visual{display:none}
 .scope-details>summary{position:relative;padding:18px 30px 18px 0;min-height:64px;cursor:pointer}
 .scope-details>summary::after{content:'+';position:absolute;right:0;top:18px;font-size:24px;color:#164bff}
 .scope-details[open]>summary::after{content:'−'}
 .scope-details>summary:focus-visible{outline:2px solid #164bff;outline-offset:3px}
 .scope-list h3{font-size:20px;line-height:1.2;margin:0 0 7px}.scope-summary{display:block;font-size:14px;line-height:1.5;color:#556070;max-width:36ch}
 .scope-body{padding:0 0 20px}.scope-list .scope-body p{font-size:16px;line-height:1.5;max-width:none}.scope-deliverable{margin-top:10px}
 .faq-section h2{margin-bottom:22px}.faq-list summary{padding-top:16px;padding-bottom:16px;min-height:52px}
 .pilot{gap:24px}.pilot-copy .preview-note{margin-top:14px}.pilot form{padding-top:18px}
 #form-notice{font-size:13px;line-height:1.5;margin-bottom:18px}.pilot input,.pilot select,.pilot textarea{font-size:16px;margin-bottom:16px}.pilot label{font-size:15px}
 .enquiry-options label{font-size:13px}.enquiry-choice{margin-bottom:18px}.pilot textarea{min-height:80px}.pilot form>.button{width:100%;min-height:48px}
 .site-footer{min-height:0;padding:30px 24px 20px}.footer-brand img{width:130px}.footer-message{margin-top:12px}
 .footer-message>summary{display:flex;align-items:center;min-height:44px;font-size:16px;font-weight:550;cursor:pointer;list-style:none;gap:12px}.footer-message>summary::after{content:'+'}.footer-message[open]>summary::after{content:'−'}
 .footer-message h2{display:none}.footer-message .footer-actions{padding:8px 0 16px}.footer-links{margin:20px 0;gap:16px 20px;grid-template-columns:1fr 1fr}.footer-links h3{margin-bottom:4px}.footer-links a{min-height:44px;font-size:13px}.footer-bottom{padding-top:12px;align-items:center}.footer-bottom a{min-height:44px;display:inline-flex;align-items:center;font-size:12px}
}
@media(max-width:350px){.header{padding:0 12px;gap:4px}.mobile-menu-toggle{font-size:12px;gap:4px}.header nav .nav-cta{padding:10px;font-size:11px}.hero-copy>.hero-actions .button{padding:12px;gap:9px;font-size:13px}.hero-copy>.hero-actions .text-link{font-size:13px}.handset-canvas{left:calc(50% - 176px)}.mobile-results-preview dl{gap:8px}.mobile-results-preview dd{font-size:24px}}

@media(min-width:761px){.dashboard-disclosure{display:block;grid-column:1/-1}.dashboard-disclosure:has(.dashboard-expanded:empty){display:none}}
@media(max-width:760px){
 html .header #mobile-navigation a:focus-visible{outline:3px solid #164bff;outline-offset:2px}
 .footprint-dial .footprint-controls button{min-height:94px}
 .footprint-dial .footprint-controls button .machine-icon-orb{top:25px}
 .footprint-choice .size-track{top:25px}
}


@media(max-width:760px){.dashboard-views button,.location-filter{min-height:44px}}
@media(max-width:760px){.hero-journey .hero-controls{display:none}}

/* Keep full gallery artwork within its image row at every viewport. */
.copy-points{margin:14px 0 0;padding:0 0 0 20px;list-style:disc;color:#505765;font-size:15px;line-height:1.55}
.copy-points>li{padding:0 0 8px 3px}
.copy-points>li:last-child{padding-bottom:0}
.copy-points>li::marker{color:#164bff;font-size:.85em}
.faq-list .copy-points{margin:0;padding:0 24px 20px 20px}
.scope-body .copy-points{margin:0}
.machines-section .footprint-heading h2{max-width:18ch;margin-left:auto;margin-right:auto}
.footprint-presentation{margin-top:28px}
.machine-cycle-toggle{position:absolute;right:16px;bottom:16px;z-index:3;display:grid;place-items:center;width:44px;height:44px;background:#fffffff2;border:1px solid #d4dae5;border-radius:50%;color:#172132;font-size:20px;cursor:pointer;box-shadow:0 2px 6px #17213218}
.machine-cycle-toggle:focus-visible{outline:3px solid #164bff;outline-offset:3px}
.about-scene .about-scene-art img{position:absolute;inset:0;width:100%;height:100%;min-height:0;object-fit:contain;padding:8px;box-sizing:border-box}
@media(max-width:760px){
 html:not([data-motion='on']) .hero-journey .hero-stage{padding-bottom:32px}
 .crm-section{padding:26px 24px 24px;border-top:1px solid #e9e9ed;background:#f8f9fc}
 .about-scenes{height:360px}
 .about-scene{grid-template-rows:minmax(0,1fr) 100px}
 .campaign-outcome{padding-bottom:20px}
 .about-section>.repeat-section{padding-top:24px}
}
