/* October 28 content extension: same typography, palette, gutters and motion. */
.os-section{padding:130px 40px;background:#fff;color:#111;font-family:Manrope,Arial,sans-serif;letter-spacing:-.025em;box-sizing:border-box;scroll-margin-top:165px}
.os-section *{box-sizing:border-box}.os-inner{max-width:1640px;margin:auto;min-width:0}.os-heading{display:grid;grid-template-columns:1fr 2fr;gap:50px;margin-bottom:50px}.os-section .eyebrow{font-size:12px;line-height:1.5;letter-spacing:.03em;font-weight:600;margin:0 0 22px}.os-section h2{font-family:inherit;font-size:clamp(35px,4vw,65px);font-weight:500;line-height:1.09;letter-spacing:-.055em;margin:0}.os-heading>div>p,.os-visual-copy>p:not(.eyebrow){font-size:20px;line-height:1.65;margin:25px 0 0;max-width:780px}.os-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px}.os-cards article{border-top:1px solid #1113;padding-top:23px;min-width:0}.os-index{font-size:12px;color:#d72348;display:block;margin-bottom:22px}.os-cards h3{font-size:27px;line-height:1.2;font-weight:500;letter-spacing:-.04em;margin:0 0 18px}.os-cards p{font-size:17px;line-height:1.65;color:#555;margin:0}.os-cards:empty{display:none}.os-links{display:flex;flex-wrap:wrap;gap:20px 35px;margin-top:38px}.os-link{display:inline-flex;align-items:center;gap:18px;font-size:16px;line-height:1.5;color:#d72348!important;text-decoration:none;font-weight:600}.os-link svg,.os-demo-secondary svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}.os-link:hover{color:#111!important}.os-dark{background:#111;color:#eee}.os-dark .os-cards article{border-color:#ffffff35}.os-dark .os-cards p{color:#bbb}.os-dark .os-index,.os-dark .os-link{color:#fc395f!important}.os-dark .os-link:hover{color:white!important}.os-visual-section{background:#eee}.os-visual-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:75px;align-items:center}.os-section .product-figure{margin:0;min-width:0}.os-section .visual-open{display:block;border:0;padding:0;width:100%;position:relative;border-radius:5px;overflow:hidden;cursor:zoom-in;background:#f7f7f5}.os-section .visual-open>img{width:100%;height:auto;display:block}.os-section .visual-enlarge{display:flex;align-items:center;gap:12px;position:absolute;bottom:18px;right:18px;background:#111;color:white;border-radius:25px;padding:11px 16px;font-size:12px;opacity:0;transition:opacity .25s}.os-section .visual-open:hover .visual-enlarge,.os-section .visual-open:focus-visible .visual-enlarge{opacity:1}.os-section svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7}
.product-cta .os-demo-secondary{display:inline-flex;align-items:center;gap:16px;margin:20px 0 20px 28px;font-size:16px;color:#555;padding:12px 0}.pv-nav-demo{display:inline-flex!important;align-items:center!important;justify-content:center!important}.pv-navigation .pv-menu-demo{display:inline-flex;align-items:center;gap:14px}.pv-navigation .pv-menu-secondary{display:flex;align-items:center;gap:12px;min-height:40px;font-size:12px;color:#555}.pv-menu-secondary svg{width:17px;height:17px}.pv-footer-portal{color:inherit;text-decoration:none}.pv-portal-core>span{font-size:clamp(13px,1.2vw,19px);line-height:1.2;text-align:center}.pact-actions{flex-wrap:wrap}.pact-actions .pact-text-button{display:inline-flex;align-items:center;justify-content:center}
@media(min-width:1800px){.os-section{padding-inline:max(40px,calc((100vw - 1640px)/2))}}
@media(max-width:1100px){.os-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.os-visual-grid{gap:40px}.os-heading{grid-template-columns:.65fr 2fr;gap:30px}}
@media(max-width:1024px){.os-section{padding:90px 20px}.os-heading{grid-template-columns:1fr;gap:20px}.os-heading .eyebrow{margin-bottom:0}.os-visual-grid{grid-template-columns:1fr;gap:40px}.os-visual-copy>p:not(.eyebrow){max-width:780px}.os-cards{gap:30px}.os-section .visual-enlarge{opacity:1}.product-cta .os-demo-secondary{margin-left:20px}.os-section h2{max-width:18ch}.os-heading>div>p,.os-visual-copy>p:not(.eyebrow){font-size:18px}.pv-portal-core>span{font-size:15px}}
@media(max-width:600px){.os-section{padding-block:75px}.os-cards{grid-template-columns:1fr}.os-cards h3{font-size:25px}.os-cards p{font-size:17px}.os-links{flex-direction:column;align-items:flex-start;gap:18px}.os-heading{margin-bottom:35px}.product-cta .os-demo-secondary{margin:20px 0 0;display:flex}.pv-mega-bottom{flex-wrap:wrap;gap:10px 20px}.pv-mega-bottom .pv-mega-close{margin-left:auto!important}.pv-navigation .pv-menu-demo,.pv-navigation .pv-menu-secondary{font-size:12px}.pv-nav-demo{white-space:nowrap}.pact-hero-intro .pact-actions{gap:14px 24px}}
@media(prefers-reduced-motion:reduce){.os-section *{transition:none!important}}

/* Editorial rhythm: labels introduce the thought instead of occupying a blank column. */
.product-page .section-heading,.product-page .section-intro,.os-heading{display:block}
.product-page .section-heading>.eyebrow,.product-page .section-intro>.eyebrow,.os-heading>.eyebrow{margin-bottom:26px;display:flex;align-items:center;gap:12px}
.product-page .section-heading>.eyebrow:before,.product-page .section-intro>.eyebrow:before,.os-heading>.eyebrow:before,.os-editorial-heading>.eyebrow:before{content:'';width:25px;height:1px;background:#fc395f;display:block;flex:none}
.product-page .section-heading h2{max-width:24ch;font-size:clamp(35px,4vw,60px)}
.product-page .section-intro>div,.os-heading>div{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:0 70px;align-items:start}
.product-page .section-intro>div>h2,.os-heading>div>h2{grid-column:1;grid-row:1 / span 5;max-width:24ch;font-size:clamp(35px,3.8vw,60px)}
.product-page .section-intro>div>p,.os-heading>div>p{grid-column:2;font-size:19px;line-height:1.7;margin:0;max-width:65ch}
.product-page .section-intro>div>p+p,.os-heading>div>p+p{margin-top:22px}
.product-page .product-accordions{margin-left:0;max-width:1100px;margin-top:42px}
.product-page .flow-grid{gap:18px;margin-top:50px}
.product-page .flow-step{border:1px solid #ffffff35;border-radius:16px;padding:26px 24px 28px;background:#171717;min-width:0;transition:opacity .7s,transform .5s,border-color .3s,background .3s}
.product-page .step-number{display:grid;place-items:center;width:40px;height:40px;border:1px solid #fc395f77;border-radius:50%;font-size:12px}
.product-page .flow-wire{margin:24px 0;height:1px;background:#ffffff2e}.product-page .flow-step h3{font-size:25px}.product-page .flow-step p{font-size:16px;line-height:1.65}
.os-editorial-graphic{margin:0 0 55px!important}.os-editorial-heading{max-width:1000px;margin-bottom:52px}
.os-editorial-heading>.eyebrow{display:flex;gap:12px;align-items:center;margin-bottom:24px}.os-editorial-heading>h2{max-width:25ch;font-size:clamp(36px,4.3vw,68px);line-height:1.08}
.os-editorial-heading>p:not(.eyebrow){font-size:20px;line-height:1.65;margin:26px 0 0;max-width:65ch;color:#555}
.os-benefits-section{background:#eee}.os-benefit-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}.os-benefit-pair>article{padding:42px;border-radius:18px;background:#111;color:#fff;min-width:0}.os-benefit-pair>article+article{background:#fff;color:#111;border:1px solid #ddd}
.os-benefit-pair .eyebrow{color:#fc395f}.os-benefit-pair h3{font-size:clamp(28px,2.7vw,43px);line-height:1.1;letter-spacing:-.045em;font-weight:500;margin:0 0 30px}
.os-benefit-pair ul{list-style:none;padding:0;margin:0}.os-benefit-pair li{border-top:1px solid #ffffff30;padding:23px 0;display:grid;gap:10px}.os-benefit-pair>article+article li{border-color:#ddd}.os-benefit-pair strong{font-size:19px;font-weight:500;line-height:1.4}.os-benefit-pair li span{font-size:17px;line-height:1.65;color:#bbb;max-width:52ch}.os-benefit-pair>article+article li span{color:#666}
.os-benefit-pair article>a,.os-agency-foundation article>a{display:flex;align-items:center;gap:20px;color:#fc395f;text-decoration:none;font-size:16px;font-weight:600;line-height:1.5;margin-top:26px}
.os-benefit-pair>article+article>a,.os-agency-foundation article>a{color:#cf2347}.os-benefit-pair svg,.os-stage-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;flex:none}
.os-journey-list{border-top:1px solid #111}.os-journey-stage{border-bottom:1px solid #1112;margin:0;padding:0}.os-journey-stage>summary{display:flex;align-items:center;gap:26px;list-style:none;cursor:pointer;padding:30px 0}.os-journey-stage>summary::-webkit-details-marker{display:none}
.os-stage-number{display:grid;place-items:center;width:54px;height:54px;border:1px solid #fc395f66;border-radius:50%;color:#d72348;font-size:14px;flex:none;transition:background .25s,color .25s}.os-stage-title{display:grid;gap:9px}.os-stage-title small{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:#777}.os-stage-title strong{font-size:clamp(25px,2.7vw,42px);line-height:1.15;font-weight:500;letter-spacing:-.045em}.os-stage-toggle{margin-left:auto;display:grid;place-items:center;width:42px;height:42px;border:1px solid #ddd;border-radius:50%;color:#111;flex:none;transition:transform .3s}.os-journey-stage[open] .os-stage-number{background:#fc395f;color:#111;border-color:#fc395f}.os-journey-stage[open] .os-stage-toggle{transform:rotate(90deg);color:#d72348;border-color:#fc395f77}
.os-stage-body{padding:4px 0 35px 80px}.os-stage-perspectives{display:grid;grid-template-columns:1fr 1fr;gap:22px}.os-stage-perspectives>article{padding:30px;border:1px solid #ddd;border-radius:14px;background:#fafafa;min-width:0}.os-stage-perspectives>article+article{background:white}.os-stage-perspectives .eyebrow{color:#d72348;margin-bottom:18px}.os-stage-perspectives h3{font-size:27px;font-weight:500;line-height:1.2;letter-spacing:-.035em;margin:0 0 18px}.os-stage-perspectives>article>p:not(.eyebrow){font-size:17px;line-height:1.7;margin:0;color:#555}
.os-tool-links{border-top:1px solid #ddd;margin-top:25px;padding-top:20px;display:grid;gap:12px}.os-tool-links>span{font-size:11px;color:#777;letter-spacing:.03em}.os-tool-links>a{font-size:14px;line-height:1.5;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#111;text-decoration:none}.os-tool-links>a:hover{color:#d72348}.os-tool-links svg{width:17px;height:17px}
.os-stage-connection{display:flex;align-items:baseline;gap:12px;margin:22px 0 0;font-size:14px;line-height:1.7;color:#666}.os-stage-connection>span{width:6px;height:6px;background:#fc395f;border-radius:50%;flex:none}.os-agency-foundation{background:#eee}.os-agency-foundation .os-cards{gap:35px}.os-agency-foundation article>a{font-size:14px;margin-top:23px;align-items:flex-start}
@media(hover:hover) and (pointer:fine){.product-page .flow-step:hover{border-color:#fc395f99;background:#1b1b1b;transform:translateY(-4px)}.os-journey-stage>summary:hover .os-stage-title strong{color:#d72348}}
@media(max-width:1024px){.product-page .section-intro>div,.os-heading>div{grid-template-columns:1fr;gap:24px}.product-page .section-intro>div>h2,.os-heading>div>h2{grid-column:1;grid-row:auto}.product-page .section-intro>div>p,.os-heading>div>p{grid-column:1;max-width:72ch}.product-page .flow-grid{gap:18px}.os-benefit-pair>article{padding:30px}.os-stage-body{padding-left:0}.os-stage-perspectives>article{padding:25px}.os-stage-title strong{font-size:32px}.os-editorial-heading>h2{font-size:clamp(36px,5vw,55px)}}
@media(max-width:700px){.os-benefit-pair,.os-stage-perspectives{grid-template-columns:1fr}.os-benefit-pair>article{padding:28px 24px}.os-journey-stage>summary{gap:15px;padding:25px 0}.os-stage-number{width:38px;height:38px;font-size:11px}.os-stage-title strong{font-size:26px}.os-stage-title small{font-size:10px}.os-stage-toggle{width:30px;height:30px}.os-stage-toggle svg{width:17px;height:17px}.os-stage-perspectives>article{padding:24px}.os-stage-perspectives h3{font-size:25px}.os-stage-perspectives p:not(.eyebrow){font-size:16px}.os-editorial-heading{margin-bottom:36px}.os-editorial-heading>h2 br{display:none}.os-editorial-heading>p:not(.eyebrow){font-size:18px}.os-benefit-pair h3{font-size:32px}.os-editorial-graphic{margin-bottom:35px!important}}
@media(prefers-reduced-motion:reduce){.product-page .flow-step{transition:none}.product-page .flow-step:hover{transform:none}}

/* Layout fit pass: keep labels readable, icons stable and related actions aligned. */
.os-stage-title,.os-stage-perspectives>article,.os-cards article{min-width:0}
.os-tool-links>a>svg,.os-agency-foundation article>a>svg,.directory-links a>svg{flex-shrink:0}
.directory-links a>span:nth-child(2){min-width:0;overflow-wrap:break-word}
.os-stage-perspectives>article{display:flex;flex-direction:column}
.os-stage-perspectives .os-tool-links{margin-top:auto;padding-top:20px}
.os-stage-perspectives>article>p:not(.eyebrow){margin-bottom:25px}
.os-agency-foundation .os-cards article{display:flex;flex-direction:column}
.os-agency-foundation .os-cards article>a{margin-top:auto;padding-top:23px}
@media(max-width:400px){.product-page .product-cta h2{font-size:clamp(38px,11vw,44px);overflow-wrap:break-word}.product-page .next-connection>a{font-size:30px}}

/* Match editorial grids to their actual card count instead of leaving an empty column. */
@media(min-width:601px){.os-cards:has(>article:nth-child(2):last-child),.os-cards:has(>article:nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}}
