/* Local integrated review. Existing typography, palette and copy are retained. */
section[id]{scroll-margin-top:72px}
.review-bar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:24px;min-height:48px;padding:5px max(22px,calc((100vw - 1216px)/2));background:#fffefb;border-bottom:1px solid var(--rule);font:500 11px/1.5 Manrope,Arial,sans-serif;color:var(--mid)}
.review-bar>a{white-space:nowrap;text-decoration:none}.review-bar>a:hover{text-decoration:underline}.review-bar-note{margin-right:auto}.motion-toggle{font:600 11px/1.5 Manrope,Arial,sans-serif;background:transparent;border:1px solid var(--rule);padding:9px 12px;min-height:36px;color:var(--deep);cursor:pointer;border-radius:2px}.motion-toggle[hidden],.video-toggle[hidden]{display:none}.motion-toggle:focus-visible{outline:2px solid var(--mid);outline-offset:3px}.motion-toggle:disabled{cursor:default}
.cinema-section{padding:0;overflow:hidden;isolation:isolate}
.cinema-heading{padding:var(--space) var(--gutter) 0;position:relative;z-index:2}
.cinema-heading h2{max-width:1110px;text-wrap:balance}.cinema-heading h1{max-width:1160px;text-wrap:balance}
.cinema-stage{position:relative;margin-top:64px;min-height:660px}
.cinema-media{position:absolute;inset:0 auto 0 0;width:85%;overflow:hidden;background:var(--deep)}
.cinema-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:45% center;display:block}
.cinema-media::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(13,41,32,.12) 0%,rgba(13,41,32,.08) 38%,rgba(13,41,32,.55) 66%,var(--deep) 94%),linear-gradient(0deg,var(--deep) 0%,transparent 16%,transparent 82%,var(--deep) 100%)}
.cinema-copy{position:relative;z-index:2;width:43%;margin-left:auto;min-height:660px;padding:40px var(--gutter) 72px 15px;display:flex;align-items:center}
.cinema-copy .prose{font-size:17px;max-width:530px}.cinema-copy .prose p:last-child{margin-top:40px}
.cinema-copy .mission-definition{font-size:28px;margin-top:32px!important;margin-bottom:32px}
.audience-cinema .cinema-stage,.audience-cinema .cinema-copy{min-height:540px}
.audience-cinema .cinema-copy{padding-top:25px;padding-bottom:60px}.audience-cinema .cinema-copy .prose{font-size:18px;margin-top:0}.audience-cinema .cinema-copy .prose p:last-child{margin-top:0}
.video-toggle{position:absolute;bottom:22px;left:var(--gutter);z-index:4;display:flex;align-items:center;gap:10px;min-height:44px;border:1px solid #ffffff88;background:#0d2920d9;color:#fff;border-radius:2px;padding:10px 15px;font:600 12px/1.5 Manrope,Arial,sans-serif;cursor:pointer;backdrop-filter:blur(8px)}
.video-toggle::before{content:'';width:7px;height:10px;border-left:2px solid var(--lime);border-right:2px solid var(--lime)}
.video-toggle[data-paused="true"]::before{width:0;height:0;border:5px solid transparent;border-left:8px solid var(--lime);border-right:0}
.video-toggle:focus-visible{outline:3px solid var(--lime);outline-offset:5px}
.texture-opening,.edge-portrait,.playbook-output{position:relative;isolation:isolate;overflow:hidden}
.texture-opening>.hero-bottom,.texture-opening>h1,.edge-portrait>.copy-block,.playbook-output>.copy-block,.playbook-output>.playbook-art{position:relative;z-index:1}
.texture-field{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.dot-field,.dot-wave{position:absolute;inset:0;background-image:radial-gradient(#ceff6c80 1px,transparent 1.4px);background-size:19px 19px;mask-image:linear-gradient(90deg,transparent 28%,#000 62%);opacity:.38}
.dot-wave{left:35%;background-image:radial-gradient(#ceff6c 1.25px,transparent 1.7px);opacity:.55;mask-image:linear-gradient(105deg,transparent 40%,#000 49%,transparent 58%);mask-size:300% 100%;mask-position:100% 0;animation:dot-travel 16s linear infinite;animation-play-state:paused}
.playbook-output.in-view .dot-wave{animation-play-state:running}
.surface-swatch{position:absolute;width:240px;height:95px;right:5%;bottom:8%;background:#ceff6c0d;border:1px solid #ceff6c38;transform:rotate(-7deg);background-image:repeating-linear-gradient(135deg,transparent 0 7px,#ceff6c0a 7px 8px)}
.texture-opening .texture-field{left:auto;top:auto;bottom:65px;right:var(--gutter);width:250px;height:220px}
.texture-opening .dot-field{mask-image:linear-gradient(145deg,transparent,#000);background-image:radial-gradient(#1d43376b .8px,transparent 1.2px);opacity:.42}
.texture-opening .dot-wave,.texture-opening .surface-swatch,.edge-portrait .dot-wave,.edge-portrait .surface-swatch{display:none}
.edge-portrait .texture-field{left:65%;top:48%;bottom:4%;right:2%}.edge-portrait .dot-field{opacity:.14;mask-image:linear-gradient(145deg,transparent,#000)}
.playbook-output .texture-field{border-bottom:1px solid #ceff6c14}
.timeline .step-heading::before{content:'';position:absolute;left:0;right:0;top:-22px;height:1px;background:#1d43374d;transform-origin:left}
.timeline .step-right .step-heading::before{transform-origin:right}
.motion-enabled .timeline-step:not(.is-seen) .step-heading::before{transform:scaleX(0)}
.motion-enabled .timeline-step.is-seen .step-heading::before{animation:rule-arrival 1000ms cubic-bezier(.22,.65,.28,1) both}
.motion-enabled .timeline-step.is-seen::after{animation:point-arrival 1700ms ease-out both}
.motion-enabled .objective-art .connector{stroke-dasharray:1;stroke-dashoffset:0}
.motion-enabled .objective-art:not(.is-seen) .connector{stroke-dashoffset:1}
.motion-enabled .objective-art.is-seen .connector{animation:connector-arrival 1350ms cubic-bezier(.22,.65,.28,1) both}
.motion-enabled .objective-art.is-seen .connector:nth-of-type(2){animation-delay:150ms}.motion-enabled .objective-art.is-seen .connector:nth-of-type(3){animation-delay:300ms}
.motion-enabled .playbook-art.is-seen .playbook-sheet{animation:sheet-arrival 1000ms cubic-bezier(.22,.65,.28,1) both}
.motion-enabled .measurement-art.is-seen .metric-step::after{transform-origin:top;animation:rule-arrival 900ms ease both}.motion-enabled .measurement-art.is-seen .metric-step:nth-child(2)::after{animation-delay:180ms}.motion-enabled .measurement-art.is-seen .metric-step:nth-child(3)::after{animation-delay:360ms}
.motion-enabled .measurement-art.is-seen .metric-step::after{animation-name:arrow-arrival}
.motion-enabled .quiet-arrival{transition:opacity 650ms ease,transform 650ms cubic-bezier(.22,.65,.28,1)}
.motion-enabled .quiet-arrival:not(.is-seen){opacity:.88;transform:translateY(8px)}
.motion-enabled .quiet-arrival.is-seen{opacity:1;transform:none}
.page-hidden *,.motion-paused *{animation-play-state:paused!important}
.motion-paused .quiet-arrival{opacity:1!important;transform:none!important;transition:none!important}
.motion-paused .step-heading::before,.motion-paused .playbook-sheet,.motion-paused .metric-step::after{animation:none!important;transform:none!important;opacity:1!important}
.motion-paused .objective-art .connector{animation:none!important;stroke-dashoffset:0!important}
.motion-paused .dot-wave{display:none}
.application-photo{position:relative;overflow:hidden;background:var(--grey)}
.application-photo img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:48% center}
#application-1 .application-photo img{object-position:57% center}#application-2 .application-photo img{object-position:43% center}#application-3 .application-photo img{object-position:62% center}#application-5 .application-photo img{object-position:47% center}
@keyframes dot-travel{from{mask-position:100% 0}to{mask-position:0% 0}}
@keyframes rule-arrival{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes arrow-arrival{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes connector-arrival{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes sheet-arrival{from{transform:translateY(8px);opacity:.9}to{transform:none;opacity:1}}
@keyframes point-arrival{0%{box-shadow:0 0 0 0 #1d43373d}65%,100%{box-shadow:0 0 0 9px #1d433700}}
@media(max-width:1100px){
 .cinema-stage,.audience-cinema .cinema-stage{display:flex;flex-direction:column;min-height:0;margin-top:48px}
 .cinema-media{position:relative;inset:auto;width:100%;aspect-ratio:16/9}
 .cinema-media video{object-fit:cover;object-position:center}
 .cinema-media::after{background:linear-gradient(0deg,var(--deep),transparent 22%),linear-gradient(90deg,#0d29200a,#0d29200a)}
 .cinema-copy,.audience-cinema .cinema-copy{width:100%;min-height:0;margin:0;padding:40px var(--gutter) var(--space)}
 .cinema-copy .prose,.audience-cinema .cinema-copy .prose{max-width:740px;font-size:17px}
 .application-panels .application,.application-panels .application.image-left{display:flex;flex-direction:column}
 .application-panels .application-photo{min-height:0;width:100%;aspect-ratio:16/9}
 .application-photo img{position:static;height:auto;aspect-ratio:16/9;object-fit:cover}
}
@media(max-width:800px){
 .review-bar{padding:4px 15px;gap:12px;min-height:48px}.review-bar-note{font-size:10px}.motion-toggle{font-size:10px;padding:8px;min-height:40px;white-space:nowrap}
 .cinema-heading{padding-top:65px}.cinema-heading h1{font-size:clamp(43px,8.3vw,64px)}.cinema-heading h2{font-size:37px}
 .cinema-stage,.audience-cinema .cinema-stage{margin-top:38px}.cinema-copy,.audience-cinema .cinema-copy{padding-top:30px}.cinema-copy .prose,.audience-cinema .cinema-copy .prose{font-size:16px}
 .cinema-copy .mission-definition{font-size:25px}.video-toggle{bottom:15px;left:20px;padding:8px 12px;min-height:44px;font-size:11px}
 .texture-opening .texture-field{width:150px;height:140px;bottom:45px;opacity:.55}.texture-opening .hero-bottom{position:relative;z-index:1}
 .edge-portrait .texture-field{left:50%;top:70%;opacity:.7}.dot-field,.dot-wave{background-size:18px 18px;mask-image:linear-gradient(135deg,transparent,#000)}
 .dot-wave{mask-image:linear-gradient(105deg,transparent 40%,#000 49%,transparent 58%)}.surface-swatch{width:180px;height:70px;right:-12px;bottom:30px}
 .playbook-output .texture-field{top:35%}.playbook-output .dot-field{opacity:.25}.playbook-output .dot-wave{left:0}.timeline .step-heading::before{top:-18px}.application-panels .application-photo{aspect-ratio:16/9}
}
@media(max-width:360px){.review-bar-note{display:none}.review-bar>a{margin-right:auto}.cinema-heading h1{font-size:41px}.cinema-heading h2{font-size:35px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.quiet-arrival{opacity:1!important;transform:none!important}.objective-art .connector{stroke-dashoffset:0!important}.timeline .step-heading::before{transform:none!important}.dot-wave{display:none!important}}
/* Review guide lives outside the website pages. */
.review-hub{background:var(--grey)}.review-guide{max-width:1120px;padding:75px 45px 90px;margin:auto}.review-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--mid);margin-bottom:32px}.review-guide h1{font-size:clamp(48px,6.7vw,82px)}.review-intro{font-size:20px;max-width:760px;margin-top:35px}.review-start{display:flex;align-items:center;gap:30px;flex-wrap:wrap;margin-top:35px}.review-guide section{padding-top:55px;margin-top:60px;border-top:1px solid var(--rule)}.review-guide section h2{font-size:30px;margin-bottom:30px}.review-highlights ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.review-highlights a{font-size:18px;font-weight:650;line-height:1.5}.review-highlights p{margin-top:15px;font-size:15px}.review-pages nav{display:flex;flex-wrap:wrap;gap:24px 38px}.review-pages nav a{font-size:16px}.review-notes{max-width:800px}.review-notes p+p{margin-top:20px}.review-notes p{font-size:15px}
@media(max-width:700px){.review-guide{padding:45px 25px 60px}.review-intro{font-size:17px}.review-highlights ol{grid-template-columns:1fr;gap:30px}.review-guide section{margin-top:42px;padding-top:35px}}
