/* Product interactions around the accepted cinematic story, not a new motion layer. */
[hidden]{display:none!important}
html{scroll-padding-top:165px}
.animated main{height:auto}
.animated .motion-story{height:calc(var(--scene-h)*7)}
.header-contact{display:inline-flex;align-items:center;gap:16px;min-height:44px;padding:0 18px;border:1px solid #dbc4eb66;border-radius:30px;font-size:12px;white-space:nowrap;background:#1c102b}
.header-contact:hover,.header-contact:focus-visible{background:#dec9eb;color:#180d22;border-color:#dec9eb}
.header-home{display:inline-flex;align-items:center;min-height:44px;justify-self:start}
.animated[data-after-story="true"] .mast{background:#0e0718}
.animated[data-after-story="true"] .chapter-nav{background:#0e0718;padding-bottom:10px}
.chapter-nav a{min-height:40px;transition:color .15s}
.chapter-nav a:hover{color:#fff}
.pair-label-window{pointer-events:none}
.pair-label a{pointer-events:auto;display:inline-block;color:inherit;font:inherit;letter-spacing:inherit;line-height:inherit;min-height:44px}
.pair-label a:hover{color:#e7d4f3}
.pair-label a:focus-visible{outline-offset:2px}
.animated .pair-index{position:absolute;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;top:22%;left:5%;width:29%;font-size:10px;line-height:1.28;color:#b7a8c3}
.pair-index a{display:flex;align-items:center;justify-content:center;min-height:44px;border-bottom:1px solid transparent;text-align:center}
.pair-index span[data-active="true"] a{border-color:#dfc7ee}
.pair-index a:hover{color:#fff}
.service-actions{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:30px;align-items:center}
.service-actions a{display:inline-flex;align-items:center;min-height:44px;font-size:12px}
.service-explore{color:#efdfff;border-bottom:1px solid #b194c7}
.service-help{color:#beb0cc}
.service-actions a:hover{color:#fff}
.animated .service-actions{position:absolute;left:5%;bottom:3.5%;width:29%;margin:0;visibility:hidden;opacity:0}
.animated .doing[data-settled="true"] .service-actions{visibility:visible;opacity:1}
.animated[data-chapter="3"] .timeline-foot{opacity:0;pointer-events:none}
.journey-section{position:relative;padding:110px 7%;max-width:1440px;margin:0 auto;border-top:1px solid #d9c4e827;scroll-margin-top:15px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:9%}
.journey-section h2{font-size:clamp(44px,5.3vw,76px);line-height:1.06;letter-spacing:-.055em;margin:20px 0 30px}
.journey-section h3{font-size:23px;line-height:1.25;letter-spacing:-.6px;font-weight:400;margin:0 0 14px}
.journey-section p{font-size:16px;line-height:1.75;color:#c9bed3;margin:0 0 24px}
.journey-section .eyebrow,.eyebrow{font-size:10px;line-height:1.6;letter-spacing:1.5px;color:#d3b8e3;margin:0 0 20px}
.section-intro>p:not(.eyebrow){max-width:370px}
.text-action{display:inline-flex;align-items:center;gap:24px;min-height:44px;font-size:14px;border-bottom:1px solid #ae8bc2;color:#f0e4f7}
.text-action:hover{color:#fff;border-color:#fff}
.guide-workspace{padding-top:12px;min-width:0}
.guide-static a{display:block;padding:18px 0;border-bottom:1px solid #ffffff26;font-size:18px}
.need-options{border:0;padding:0;margin:0;min-width:0}
.need-options legend{font-size:17px;margin-bottom:25px;line-height:1.5}
.need-options label{display:block;position:relative;cursor:pointer}
.need-options input{position:absolute;opacity:0;width:1px;height:1px;left:18px;top:28px}
.need-options label>span{display:flex;align-items:center;gap:20px;min-height:68px;padding:15px 18px;border:1px solid #cab2dc30;margin-top:-1px;font-size:17px;line-height:1.4;transition:background .15s,border-color .15s}
.need-options b{font-size:10px;letter-spacing:1px;font-weight:400;color:#b9a5c7}
.need-options i{font-style:normal;margin-left:auto;color:#b9a5c7}
.need-options label:hover>span{background:#c5a1dd0c}
.need-options input:checked+span{background:#dac1ec14;border-color:#c3a0d6;position:relative;color:#fff}
.need-options input:checked+span i{color:#fff}
.need-options input:focus-visible+span{outline:2px solid #e0c0ff;outline-offset:4px;z-index:1}
.need-result{margin-top:28px;padding:27px 0 0;border-top:1px solid #ffffff20;min-height:255px}
.need-result .eyebrow{font-size:9px;margin-bottom:14px}
.need-result h3{font-size:29px}
.need-result p{font-size:15px}
.services-section{gap:7%;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}
.services-section .section-intro{position:sticky;top:180px;align-self:start}
.service-library{min-width:0}
.delivery-detail-flow{max-width:1440px;margin:0 auto;padding:38px 7% 110px;scroll-margin-top:15px}
.delivery-detail-flow .service-library{max-width:830px;margin-left:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.service-panel{border-top:1px solid #d2b9e440;scroll-margin-top:20px}
.service-panel:last-child{border-bottom:1px solid #d2b9e440}
.service-panel>summary{cursor:pointer;list-style:none;display:grid;grid-template-columns:22px minmax(0,1fr) 20px;gap:16px;padding:26px 0;align-items:start;font-size:27px;line-height:1.3;letter-spacing:-.6px}
.service-panel>summary::-webkit-details-marker{display:none}
.service-panel>summary:hover{color:#e1c9ef}
.service-panel>summary:focus-visible{outline:2px solid #e0c0ff;outline-offset:5px}
.service-panel small{display:block;font-size:13px;line-height:1.6;letter-spacing:0;color:#b6a4c5;margin-top:7px}
.detail-number{font-size:10px;letter-spacing:1px;color:#c7b0d5;padding-top:9px}
.detail-toggle{font-size:23px;color:#cfb5df;transition:transform .15s}
.service-panel[open] .detail-toggle{transform:rotate(45deg)}
.service-content{padding:0 0 30px 38px}
.service-content .service-lead{color:#ece0f2;font-size:17px}
.service-columns{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:26px 0}
.service-columns h3{font-size:15px;letter-spacing:0;color:#f5edf9}
.service-columns p,.service-columns li{font-size:14px;line-height:1.75;color:#c9bed3}
.service-columns p{margin:0}
.service-columns ul{padding-left:17px;margin:0}
.service-columns li+li{margin-top:8px}
.scenario{background:#cdb1de08;border-left:2px solid #ae8bc2;padding:20px;margin-bottom:22px}
.scenario .eyebrow{font-size:8px;letter-spacing:1px;margin-bottom:14px}
.scenario h3{font-size:21px}
.scenario p:last-child{font-size:14px;margin:0}
.approach-section{display:block}
.approach-heading{display:grid;grid-template-columns:1fr 1fr;gap:0 9%;align-items:center}
.approach-heading .eyebrow{grid-column:1/-1}
.approach-heading h2{margin-top:0}
.approach-heading>p:last-child{max-width:340px}
.approach-steps{list-style:none;padding:0;margin:35px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;counter-reset:steps}
.approach-steps li{border-top:1px solid #c9aed64a;padding-top:25px}
.approach-steps span{font-size:9px;letter-spacing:1.5px;color:#c7aad7;display:block;margin-bottom:25px}
.approach-steps h3{font-size:22px}
.approach-steps p{font-size:15px;margin:0;max-width:310px}
.contact-section{padding-bottom:100px;gap:7%;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.contact-section h2{font-size:clamp(42px,4.8vw,68px)}
.brief-panel{border:1px solid #c5a4da40;background:#b690ca08;padding:32px;min-width:0}
.brief-panel h3{font-size:26px}
.brief-panel>p{font-size:14px}
.brief-panel label{display:block;font-size:12px;color:#e5d9ec;margin:22px 0 10px}
.brief-panel select,.brief-panel textarea{display:block;width:100%;border:1px solid #a890b655;background:#10091a;color:#f3ebf8;padding:14px;font:15px/1.6 Arial,sans-serif;border-radius:3px;resize:vertical}
.brief-panel textarea{min-height:145px;max-height:500px}
.brief-panel textarea::placeholder{color:#a897b5}
.brief-panel :is(select,textarea):focus-visible{outline:2px solid #e0c0ff;outline-offset:3px}
.brief-panel textarea[aria-invalid="true"]{border-color:#ffbaa9}
.brief-panel .quiet{font-size:11px;line-height:1.65;color:#ad9bbb;margin:13px 0 22px}
.solid-action{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;min-height:48px;background:#dec9eb;color:#180b22;border:1px solid #dec9eb;padding:12px 20px;font-size:14px;cursor:pointer;border-radius:2px}
.solid-action:hover{background:#f0e1f8;border-color:#f0e1f8}
.solid-action:active,.header-contact:active{transform:translateY(1px)}
.brief-panel .brief-status{margin:12px 0 0;min-height:24px;font-size:12px;color:#e8d5f3;overflow-wrap:anywhere}
.brief-panel .contact-pending{border-top:1px solid #ffffff1c;padding-top:16px;margin:12px 0 0;font-size:11px;color:#ad9bbb}
.site-footer{max-width:1238px;margin:0 auto;padding:36px 0 28px;border-top:1px solid #ffffff20;display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;align-items:center}
.site-footer nav{display:flex;gap:28px;flex-wrap:wrap;font-size:12px}
.site-footer nav a{min-height:44px;display:inline-flex;align-items:center}
.site-footer nav a:hover{color:#dfc3ef}
.site-footer p{flex-basis:100%;font-size:10px;color:#a693b5;margin:5px 0 0}
@media(max-width:1100px){.header-controls{gap:14px}.header-contact{padding:0 12px;gap:10px}.journey-section{gap:5%;padding:85px 6%}.service-columns{grid-template-columns:1fr;gap:22px}.service-panel>summary{font-size:23px}.animated .service-actions{gap:0;width:29%;bottom:2%}.animated .service-actions a{font-size:11px;min-height:38px}.site-footer{margin-inline:6%}.brief-panel{padding:25px}.contact-section h2{font-size:48px}}
@media(max-width:650px){
  html{scroll-padding-top:175px}
  .mast .brand{text-align:left;font-size:28px}
  .header-contact{position:absolute;right:20px;top:14px;min-height:40px;padding:0 15px;font-size:12px}
  .header-controls{gap:14px}.header-controls button{font-size:9px;min-height:36px}
  .header-home{min-height:36px;font-size:9px}
  .animated .chapter-nav{gap:16px}.chapter-nav a{min-height:40px}
  .animated .pair-index{gap:5px;font-size:10px;line-height:1.25;top:28.4%;left:7%;width:86%}
  .pair-label a:focus-visible{outline-offset:-1px}
  .animated .service-actions{left:7%;width:86%;bottom:3%;justify-content:space-between;gap:10px}
  .animated .service-actions a{min-height:44px;font-size:11px}
  .journey-section{display:block;padding:65px 7%}
  .journey-section h2,.contact-section h2{font-size:47px;margin:20px 0 24px}
  .journey-section p{font-size:15px}
  .journey-section .eyebrow{font-size:9px}
  .section-intro>p:not(.eyebrow){max-width:none}
  .guide-workspace{padding-top:20px}
  .need-options legend{font-size:16px;margin-bottom:20px}
  .need-options label>span{font-size:15px;min-height:62px;padding:14px;gap:15px}
  .need-result{min-height:245px}.need-result h3{font-size:27px}
  .service-library{margin-top:35px}
  .delivery-detail-flow{padding:30px 7% 65px}.delivery-detail-flow .service-library{max-width:none;margin:0}
  .services-section .section-intro{position:static}
  .service-panel>summary{font-size:23px;gap:11px;grid-template-columns:18px minmax(0,1fr) 18px;padding:24px 0}
  .service-content{padding-left:0}.service-columns{gap:22px}.scenario{padding:18px}
  .approach-heading{display:block}.approach-heading h2{margin-top:20px}
  .approach-steps{display:block;margin-top:32px}.approach-steps li{margin-top:25px;padding-top:20px}.approach-steps span{margin-bottom:17px}.approach-steps p{max-width:none}
  .brief-panel{margin-top:35px;padding:23px}.brief-panel select,.brief-panel textarea{font-size:16px}
  .brief-panel .quiet,.brief-panel .contact-pending{font-size:11px}
  .solid-action{width:100%}
  .site-footer{margin-inline:7%;padding-top:28px;display:block}.site-footer nav{gap:20px;margin-top:20px}.site-footer p{line-height:1.7;margin-top:20px}
}
@media(prefers-reduced-motion:reduce){.need-options label>span,.detail-toggle,.chapter-nav a{transition:none}.solid-action:active,.header-contact:active{transform:none}}
