.zeami-overview,.zeami-detail-library{--section-space:clamp(2rem,5vw,4rem);max-width:75rem;margin:auto;padding:var(--section-space) 1.5rem;color:var(--identity-ink)}
.zeami-kicker{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--identity-deep);margin-bottom:1rem}
.zeami-overview h2,.zeami-detail-library>h2{font-size:clamp(2rem,4vw,3.1rem);line-height:1.12;max-width:48rem;margin:0 0 1.5rem}
.zeami-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;margin:2.5rem 0}
.zeami-steps article{border-top:1px solid var(--identity-line);padding-top:1.5rem}
.zeami-step-number{font-size:.875rem;color:var(--identity-deep)}
.zeami-step-art{display:block;width:100%;max-width:13rem;height:auto;margin:1rem 0 .25rem;color:var(--identity-ink);fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.zeami-art-faint{stroke:var(--identity-line)}
.zeami-art-carry{fill:currentColor;stroke:none;animation:zeami-carry 3.6s linear infinite}
.zeami-art-carry:nth-of-type(2){animation-delay:1.2s}.zeami-art-carry:nth-of-type(3){animation-delay:2.4s}
.zeami-art-lens{stroke:var(--identity-deep);animation:zeami-lens 7.2s ease-in-out infinite}
.zeami-art-bar{fill:var(--identity-soft);transform-box:fill-box;transform-origin:bottom;animation:zeami-rise 6s ease-in-out infinite}
.zeami-art-bar:nth-of-type(2){animation-delay:.3s}.zeami-art-bar:nth-of-type(3){animation-delay:.6s}
.zeami-art-bar-deep{fill:var(--identity-deep);stroke:var(--identity-deep)}
.zeami-art-knob{fill:currentColor;stroke:none;animation:zeami-knob 6s ease-in-out infinite}
.zeami-art-check{stroke:var(--identity-deep);stroke-width:2;stroke-dasharray:30;animation:zeami-check 6s ease-in-out infinite}
.zeami-art-stop{animation:zeami-stop 6s ease-in-out infinite}
.zeami-step-art *{animation-play-state:paused}
.zeami-step-art[data-visible=true] *{animation-play-state:running}
@keyframes zeami-carry{0%{transform:translateX(0);opacity:0}12%,85%{opacity:1}100%{transform:translateX(104px);opacity:0}}
@keyframes zeami-lens{0%,28%{transform:translateY(-15px)}38%,62%{transform:translateY(0)}72%,100%{transform:translateY(15px)}}
@keyframes zeami-rise{0%{transform:scaleY(0)}22%,78%{transform:scaleY(1)}92%,100%{transform:scaleY(0)}}
@keyframes zeami-knob{0%,18%{transform:translateX(0)}32%,72%{transform:translateX(50px)}86%,100%{transform:translateX(0)}}
@keyframes zeami-check{0%,30%{stroke-dashoffset:30}42%,72%{stroke-dashoffset:0}80%,100%{stroke-dashoffset:30}}
@keyframes zeami-stop{0%,18%{opacity:1}32%,72%{opacity:.25}86%,100%{opacity:1}}
@media(prefers-reduced-motion:reduce){.zeami-step-art *{animation:none!important}}
.zeami-steps h3{font-size:1.4rem;margin:.75rem 0}
.zeami-steps p,.zeami-assurance,.zeami-detail-library>p{font-size:1rem;line-height:1.65;color:var(--identity-muted)}
.zeami-assurance{padding:1.25rem;background:var(--identity-soft)}
.zeami-assurance a{color:var(--identity-deep);text-underline-offset:.25em}
.zeami-topics{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:1rem;margin-top:2rem}
.zeami-topic{border:2px solid var(--identity-ink);border-radius:1.25rem;background:#fff;min-width:0}
.zeami-topic[open]{grid-column:1/-1}
.zeami-topic>summary{cursor:pointer;list-style:none;display:flex;flex-direction:column;gap:.6rem;padding:1.5rem;border-radius:1.125rem}
.zeami-topic>summary::-webkit-details-marker{display:none}
.zeami-topic>summary:hover .zeami-topic-more,.zeami-topic>summary:focus-visible .zeami-topic-more{text-decoration:underline;text-underline-offset:.25em}
.zeami-topic>summary:focus-visible{outline:2px solid var(--identity-deep);outline-offset:3px}
.zeami-topic-title{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;font-size:1.35rem;line-height:1.15;color:var(--identity-ink)}
.zeami-topic-teaser{font-size:1rem;line-height:1.6;color:var(--identity-muted)}
.zeami-topic-more{font-weight:700;font-size:.95rem;color:var(--identity-deep);margin-top:.25rem}
.zeami-more-open,.zeami-topic[open] .zeami-more-shut{display:none}
.zeami-topic[open] .zeami-more-open{display:inline}
.zeami-topic-body{padding:0 1.5rem 1.5rem;min-width:0}
.zeami-topic-body>section{margin:0!important;max-width:100%!important;padding:1.5rem 0!important}
.zeami-topic-body>section>div{max-width:100%!important}
.zeami-topic-body #tech>div,.zeami-topic-body #how>div{padding:2rem 1.5rem!important}
.zeami-topic-body>div{margin-top:1.25rem}
.zeami-topic-body h2{font-size:clamp(1.5rem,3vw,2.2rem)!important}
[id]{scroll-margin-top:6rem}
.zeami-calc-sectors{display:flex;flex-wrap:wrap;gap:.25rem;border:2px solid currentColor;border-radius:1rem;padding:.25rem;background:#fff}.zeami-calc-sectors button{border:0;border-radius:.75rem;padding:.55rem .9rem;font:inherit;font-weight:700;font-size:.9rem;cursor:pointer;background:transparent;color:inherit}.zeami-calc-sectors button[aria-pressed="true"]{background:var(--identity-ink);color:var(--identity-paper)}.zeami-calc-sectors button:focus-visible{outline:2px solid var(--identity-deep);outline-offset:2px}
.zeami-booked{position:fixed;bottom:1rem;inset-inline:1rem;z-index:100;margin:0;padding:1rem;text-align:center;font:1rem/1.5 system-ui;background:var(--identity-paper);color:var(--identity-ink);border:2px solid var(--identity-ink);border-radius:1rem}
.sc-host>div{overflow-x:clip!important;overflow-y:visible!important}
.zeami-proof-grid{align-items:stretch}
.zeami-proof-card{display:grid!important;grid-template-rows:3.75rem 3rem minmax(0,1fr);align-content:start;row-gap:.5rem}
.zeami-proof-card>p{margin:0!important}
.zeami-proof-card>p:nth-child(2){display:flex;align-items:baseline;gap:.3em;white-space:nowrap}
.zeami-proof-unit{font-size:.42em;line-height:1;font-weight:700;letter-spacing:0}
@media(min-width:920px){[data-direction=v13] #top .zeami-hero-title{font-size:clamp(3rem,4.2vw,4rem)!important;line-height:.98!important}}
@media(min-width:48rem){.sc-host header>div{padding-block:.5rem!important}.sc-host header .identity-supplied-logo{width:7rem}.sc-host header nav.z-desk{font-size:.9rem!important}.sc-host header a.z-desk[data-booking],.sc-host header a.z-desk[href*="calendly"],.sc-host header a.z-desk[href^="mailto"]{padding:.5rem 1rem!important;font-size:.9rem!important}}
.zeami-ask-illustration{position:relative!important;right:auto!important;bottom:auto!important;width:10rem!important;height:auto!important;opacity:1!important;align-self:flex-end}
.zeami-ask-illustration img{display:block;width:100%;height:auto}
.zeami-overview-header{display:flex;align-items:center;gap:calc(var(--direction-space)*4)}
.zeami-overview-header>div:first-child{flex:1;min-width:0}
.zeami-overview-header h2{margin-bottom:0}
.zeami-donkey-accent{flex:none;display:flex;justify-content:flex-end;color:var(--identity-line)}
.zeami-donkey-accent .zeami-ask-illustration{width:6rem!important;transform:rotate(-4deg)}
@media(max-width:42rem){.zeami-overview{text-align:center}.zeami-step-art{margin-inline:auto}.zeami-steps{grid-template-columns:1fr;gap:1.25rem}.zeami-topic-title{font-size:1.15rem}.zeami-topic-body #tech>div,.zeami-topic-body #how>div{padding:1.25rem .75rem!important}.zeami-proof-card{grid-template-rows:auto}}

/* Market sectors menu: a native disclosure, so keyboard and screen reader need no script. */
.zeami-sectors{position:relative}
.zeami-sectors>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:.35rem}
.zeami-sectors>summary::-webkit-details-marker{display:none}
.zeami-sectors>summary::after{content:"";width:.38rem;height:.38rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-.15em) rotate(45deg)}
.zeami-sectors[open]>summary::after{transform:translateY(.1em) rotate(-135deg)}
.zeami-sectors>summary:focus-visible{outline:2px solid var(--identity-deep);outline-offset:.35rem}
.zeami-sectors-menu{position:absolute;top:calc(100% + .9rem);left:-1rem;min-width:15rem;display:flex;flex-direction:column;background:var(--identity-paper);border:1px solid var(--identity-line);padding:.35rem 0;z-index:60}
.zeami-sectors-menu a{padding:.7rem 1rem;text-decoration:none;color:var(--identity-ink)}
.zeami-sectors-menu a:hover,.zeami-sectors-menu a:focus-visible{background:var(--identity-soft);color:var(--identity-deep)}
.zeami-mob-sectors{margin:.75rem 0 0;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--identity-deep)}
#mobile-menu a.zeami-mob-sector{padding-left:1rem}
/* Overlay the menu and lock the root only, preserving page width and scroll position. */
@media(max-width:919px){
  html{scrollbar-gutter:stable}
  html:has(.sc-host button[aria-controls="mobile-menu"][aria-expanded="true"]){overflow:hidden}
  #mobile-menu{position:absolute;top:100%;inset-inline:0;background:var(--identity-paper);max-height:calc(100dvh - 6rem - env(safe-area-inset-bottom));overflow-y:auto;overscroll-behavior:contain}
  html:has(.sc-host button[aria-controls="mobile-menu"][aria-expanded="true"]) .sc-host>div>.z-mob{visibility:hidden}
}
@media(min-width:920px){#mobile-menu{display:none!important}}
/* Calculator: the inputs read as editable controls. They use text + decimal input mode so values
   change only when typed, never from mouse-wheel or arrow-key number stepping. */
.zeami-calc-field{min-width:0}
[data-direction=v13] #calc input.zeami-calc-input{appearance:textfield;-moz-appearance:textfield;max-width:100%;color:var(--identity-ink)!important;background:#fff!important;border:1px solid var(--identity-line)!important;border-radius:.7rem!important;box-shadow:0 1px 2px rgba(67,45,76,.08)!important;caret-color:var(--identity-deep);cursor:text;font-variant-numeric:tabular-nums;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}
[data-direction=v13] #calc input.zeami-calc-input:hover{border-color:var(--identity-deep)!important}
[data-direction=v13] #calc input.zeami-calc-input:focus-visible{outline:3px solid var(--identity-deep)!important;outline-offset:2px!important;border-color:var(--identity-deep)!important;box-shadow:0 2px 6px rgba(67,45,76,.12)!important}
/* Every field carries its own error line; an empty one takes no room (QA PQA-18). */
.zeami-calc-error{margin:0;font-size:.875rem;font-weight:600;line-height:1.4;color:var(--identity-deep)}
.zeami-calc-error:not(:empty){margin-top:.4rem}
/* Footer: the site and the contact on the first line; the company and its legal notices on the second. */
.zeami-foot-links,.zeami-foot-legal nav{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem}
.zeami-foot-legal{flex-basis:100%;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1.25rem;font-size:.8125rem;color:var(--identity-muted)}

/* Phone spacing follows the existing half-rem design scale. */
@media(max-width:40rem){
  [data-direction=v13]{--mobile-gutter:calc(var(--direction-space)*3)}
  .zeami-overview-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:calc(var(--direction-space)*2)}
  .zeami-overview-header>div:first-child{display:contents}
  .zeami-overview-header .zeami-kicker{margin-bottom:0}
  .zeami-overview-header h2{grid-column:1/-1;grid-row:2}
  .zeami-overview-header .zeami-donkey-accent{grid-column:2;grid-row:1}
  .zeami-donkey-accent .zeami-ask-illustration{width:4rem!important}
  #ask .zeami-ask-illustration{display:none}
  [data-direction=v13] .sc-host section{padding-inline:var(--mobile-gutter)!important}
  [data-direction=v13] #top{padding-block:calc(var(--direction-space)*4)!important;gap:calc(var(--direction-space)*4)!important}
  [data-direction=v13] #top h1{font-size:clamp(2.2rem,8.5vw,3rem)!important;line-height:1.06!important}
  [data-direction=v13] .sc-host section [style*="grid-template-columns"]{grid-template-columns:minmax(0,1fr)!important}
  [data-direction=v13] .sc-host section :is(div,figure){min-width:0}
  [data-direction=v13] .sc-host #calc{padding-inline:0!important}
  [data-direction=v13] #calc>div{padding-inline:var(--mobile-gutter)!important}
  [data-direction=v13] #calc>div>div{padding:0!important}
  [data-direction=v13] #calc>div>div>div{padding:var(--mobile-gutter)!important}
  [data-direction=v13] .zeami-calc-field label{flex-direction:column;align-items:stretch!important;gap:var(--direction-space)!important;font-size:1rem!important}
  [data-direction=v13] #calc input.zeami-calc-input{width:100%!important;min-height:2.75rem;font-size:1rem!important}
  [data-direction=v13] #calc table,[data-direction=v13] #calc tbody{display:block;width:100%}
  [data-direction=v13] #calc tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--direction-space);padding-block:calc(var(--direction-space)*2)}
  [data-direction=v13] #calc td{padding:0!important;min-width:0}
  [data-direction=v13] #calc td:last-child{grid-column:1/-1;text-align:left!important}
  [data-direction=v13] #calc td:nth-child(2){white-space:nowrap}
  [data-direction=v13] .sc-host>div>.z-mob{padding-bottom:calc(var(--direction-space)*3 + env(safe-area-inset-bottom))!important}
  [data-direction=v13] .sc-host footer{padding-bottom:calc(var(--direction-space)*14 + env(safe-area-inset-bottom))!important}
  .zeami-topic>summary,.zeami-topic-body{padding-inline:var(--mobile-gutter)}
}
