/* Shared framing for the retained published routes; original trade film assets stay intact. */
.explore-links{display:flex;gap:28px;flex-wrap:wrap;border-top:1px solid var(--line);padding-block:22px;font-size:.86rem;font-weight:600}.explore-links a{text-decoration:none}.explore-links a:hover{text-decoration:underline}.detail-nav{display:flex;gap:30px;flex-wrap:wrap;padding-block:23px;border-bottom:1px solid var(--line);font-size:.85rem}.detail-nav a{text-decoration:none}.detail-nav a[aria-current],.detail-nav a:hover{text-decoration:underline}.detail-main>.page-hero h1{max-width:940px}.detail-main>.page-hero .hero-lede{max-width:760px}.detail-main>.section{padding-block:55px;border-bottom:1px solid var(--line)}.detail-main .kicker{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:17px}.detail-main .section-heading{gap:55px}.detail-main .section-heading h2{font-size:clamp(2rem,3vw,2.7rem);line-height:1.12;margin:0}.detail-main .section-heading>p{max-width:500px}.mechanism-steps,.journey-steps,.standards-grid,.demo-grid,.desk-jobs{list-style:none;padding:0;margin:0}.detail-main .mechanism-steps{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.mechanism-steps>li{display:flex;gap:20px;border-top:1px solid var(--line);padding-top:22px}.mechanism-steps>li>span{font-size:.8rem;color:var(--muted)}.mechanism-steps h3{font-size:1.3rem;line-height:1.25}.mechanism-steps p{margin-top:10px;line-height:1.65}.journey-steps{counter-reset:stage;display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.journey-steps>li{counter-increment:stage;border-top:1px solid var(--line);padding-top:18px}.journey-steps>li::before{content:'0' counter(stage);display:block;font-size:.8rem;color:var(--muted);margin-bottom:20px}.journey-steps h3{font-size:1.3rem;margin-bottom:12px}.detail-main .boundary{display:grid;grid-template-columns:1fr 1fr;gap:65px}.boundary-quote{font:italic 2.05rem/1.3 var(--serif);color:var(--ink);max-width:480px}.detail-main .boundary h2{font-size:2.3rem;line-height:1.1;margin-bottom:22px}.boundary-list{padding-left:22px;line-height:1.7;color:var(--muted)}.boundary-list li+li{margin-top:13px}.detail-main .decision{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:45px;background:var(--ink);color:white;border:0;border-radius:9px;padding:42px;margin-block:40px 60px}.decision h2{font-size:2.5rem;margin-bottom:20px}.decision p{color:#d6e4d3}.primary-action{font:600 .95rem/1.45 var(--sans);border:0;background:var(--lime);color:var(--ink);padding:20px 23px;text-decoration:none;display:inline-flex;flex-direction:column;gap:6px;border-radius:5px;cursor:pointer}.primary-action small{font-size:.75rem;font-weight:400;line-height:1.5}.primary-action:hover{background:#e6ffaa}.standards-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.standards-grid li{border:1px solid var(--line);border-radius:7px;background:#eff2e8;padding:27px}.standards-grid h3{font-size:1.25rem;line-height:1.3;margin-bottom:12px}.walkthrough-intro{max-width:760px;margin-bottom:30px}.walkthrough-intro h2{font-size:2.65rem;margin-bottom:20px}.challenge{border:1px solid #b7c6ae;background:#f4f7ed;border-radius:9px;padding:28px;color:var(--ink);margin-top:30px}.challenge-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.challenge-head h3{font-size:1.2rem}.challenge-label,.challenge-note{font-size:.8rem;color:#52645c}.challenge-chips{display:flex;gap:9px;flex-wrap:wrap;margin:24px 0}.challenge-chips button{border:1px solid #b6c6ac;background:transparent;padding:12px 16px;color:var(--ink);border-radius:4px;font-size:.86rem;line-height:1.4;cursor:pointer}.challenge-chips button[aria-selected=true]{background:var(--ink);color:white;border-color:var(--ink)}.challenge-chips button:focus-visible{outline:3px solid #ad5f24;outline-offset:3px}.call-lines,.exchange{margin:0}.challenge .line{display:grid;grid-template-columns:82px 1fr;gap:18px;margin:0;padding:20px 0;border-top:1px solid #d6dfce}.line dt{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.line dd{margin:0;color:var(--ink);font-size:1.02rem;line-height:1.65}.challenge .line--limit{background:#e6eddc;padding:20px;border-radius:5px;margin-top:15px;border:0}.line--limit dd{font-size:.9rem}.challenge-note{margin:21px 0 0;line-height:1.7}.faq{margin:0}.faq>div{display:grid;grid-template-columns:.8fr 1.5fr;gap:50px;border-top:1px solid var(--line);padding:27px 0}.faq dt{font-weight:650;line-height:1.4}.faq dd{margin:0;color:var(--muted);line-height:1.7}.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}.demo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.demo-grid li{min-width:0}.demo-card{height:100%;display:flex;flex-direction:column;align-items:flex-start;text-decoration:none;border:1px solid var(--line);border-radius:8px;padding:28px;background:#eef2e6;transition:transform .18s}.demo-card:hover{transform:translateY(-4px)}.status-chip{display:inline-block;font-size:.75rem;font-weight:600;padding:4px 9px;background:#dce7cf;border-radius:3px;color:var(--ink);margin-bottom:27px}.fictional-co{font-size:.8rem;color:var(--muted);min-height:40px}.demo-card h3{font-size:2rem;margin:13px 0 18px}.demo-card p{font-size:1rem;line-height:1.65;margin-bottom:28px}.world-strip{background:var(--world-strip);height:12px;width:100%;border-radius:10px;margin-top:auto}.legacy-anchor{display:block;position:relative;top:-110px;visibility:hidden;width:0;height:0;pointer-events:none}
/* Each fictional world keeps its published animation and trade palette; AFDP chrome stays consistent. */
body.trade-demo{background:var(--paper);color:var(--ink);font-family:var(--sans)}.trade-demo>.site-header{padding:0;display:block;background:var(--paper);color:var(--ink);z-index:30;border-bottom:1px solid var(--line)}.trade-demo>.site-header::before{display:none}.trade-demo>.site-header a{color:var(--ink);text-shadow:none}.trade-demo>.site-header a.button{color:white}.trade-demo>.site-header .brand{font-family:var(--sans);font-size:1.1rem}.trade-demo .skip-link{position:fixed;left:20px;top:-100px;background:white;color:var(--ink);z-index:100}.trade-demo .skip-link:focus{top:12px}.trade-demo .private-banner{position:static;display:block;background:#e6eedb;color:var(--ink);padding:10px 30px;text-align:center;font-size:.75rem;letter-spacing:.03em;text-transform:none;line-height:1.5}.trade-demo .private-banner>span:last-child{display:none}.demo-ribbon{background:var(--paper);border-bottom:1px solid var(--line);padding-block:19px}.demo-ribbon>.wrap{display:flex;justify-content:space-between;align-items:center;gap:24px}.demo-ribbon span{font:600 1.1rem/1.35 var(--sans)}.demo-ribbon small{display:block;font:400 .75rem/1.5 var(--sans);color:var(--muted);margin-top:4px}.demo-ribbon nav{display:flex;gap:25px;flex-wrap:wrap;font-size:.85rem}.trade-demo .film{color:var(--haze,#f1e8d8)}.trade-demo .film h1,.trade-demo .film h2{font-weight:500}.trade-demo .film p{color:inherit}.trade-demo .film-stage{top:98px;height:calc(100vh - 98px)}.trade-demo .section:not(.close){background:var(--paper);color:var(--ink);border-bottom:1px solid var(--line);padding-block:70px}.trade-demo .section>.wrap{width:min(1240px,calc(100% - 112px))}.trade-demo .section .sec-kicker{font:700 .75rem/1.5 var(--sans);color:var(--muted);letter-spacing:.1em;margin:0 0 16px}.trade-demo .section .sec-display{font:600 clamp(2rem,3.3vw,3rem)/1.15 var(--sans);letter-spacing:-.04em;color:var(--ink);margin:0 0 22px;max-width:850px}.trade-demo .section .sec-lede{font:400 1.06rem/1.7 var(--sans);color:var(--muted);max-width:790px;margin-bottom:30px}.trade-demo .desk-jobs{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;padding:0;margin:32px 0 0}.trade-demo .desk-jobs li{border-top:1px solid var(--line);padding-top:23px}.trade-demo .desk-jobs h3{font:600 1.24rem/1.25 var(--sans);color:var(--ink);margin-bottom:14px}.trade-demo .desk-jobs p{font-size:1rem;color:var(--muted)}.trade-demo .challenge{background:#f4f7ed;color:var(--ink);border:1px solid #b7c6ae;border-radius:9px;max-width:none;padding:28px}.trade-demo .challenge-head{padding:0;background:transparent;border:0}.trade-demo .challenge-head h3{font:600 1.2rem var(--sans);color:var(--ink)}.trade-demo .challenge-label{font:400 .8rem var(--sans);color:var(--muted);letter-spacing:0}.trade-demo .challenge-chips{padding:0;border:0}.trade-demo .challenge-chips button{font:400 .86rem/1.4 var(--sans);color:var(--ink);background:transparent;border:1px solid #b6c6ac;padding:12px 16px}.trade-demo .challenge-chips button[aria-selected=true]{background:var(--ink);color:white}.trade-demo .challenge-body{padding:0;background:transparent}.trade-demo .challenge .line{grid-template-columns:82px 1fr;gap:18px;padding:20px 0;border-top:1px solid #d6dfce}.trade-demo .challenge dt{color:var(--muted);font:700 .75rem/1.5 var(--sans)}.trade-demo .challenge dd{color:var(--ink);font:400 1.02rem/1.65 var(--sans)}.trade-demo .challenge .line--limit{background:#e6eddc;padding:20px;border:0}.trade-demo .challenge .line--limit dd{font-size:.9rem;color:var(--ink)}.trade-demo .challenge-note{color:var(--muted);font:400 .8rem/1.7 var(--sans);padding:0;margin-top:21px;border:0}.trade-demo .demo-boundary .boundary-list{max-width:900px;margin:0;color:var(--muted);font-size:1rem}.trade-demo .close{background:var(--ink);color:white;padding-block:65px;text-align:left}.trade-demo .close .sec-display{color:white}.trade-demo .close .sec-kicker,.trade-demo .close .sec-lede,.trade-demo .close .separate-product{color:#d5e3cf}.trade-demo .close .sec-lede{margin-inline:0!important}.trade-demo .close .primary-action{background:var(--lime);color:var(--ink);font:600 .95rem/1.45 var(--sans);border:0;padding:20px 23px}.trade-demo .close .primary-action small{color:var(--ink);font:400 .75rem/1.5 var(--sans);letter-spacing:0}.trade-demo .separate-product{font-size:.85rem;max-width:760px;margin:25px 0 0}.trade-demo>.site-footer{background:var(--paper);display:block;color:var(--ink);padding:45px 0 0;font:400 1rem/1.6 var(--sans);border:0}.trade-demo>.site-footer a{color:var(--ink)}.trade-demo dialog.boundary{padding:34px;border:1px solid #a7b99c;border-radius:10px;background:var(--paper);color:var(--ink);max-width:580px;width:calc(100% - 40px)}.trade-demo dialog.boundary h2{font:600 2rem/1.15 var(--sans);margin:10px 20px 20px 0;color:var(--ink)}.trade-demo dialog.boundary p{font:400 1rem/1.65 var(--sans);color:var(--muted)}.trade-demo dialog.boundary a{color:var(--ink);text-decoration:underline}.trade-demo .dialog-confirm{background:var(--ink);color:white;padding:12px 18px;border:0;border-radius:4px;margin-top:20px;cursor:pointer}.trade-demo .dialog-close{position:absolute;right:12px;top:12px;color:var(--ink);border:1px solid #b8c5ad;background:transparent;border-radius:4px;width:32px;height:32px;cursor:pointer}.trade-demo :focus-visible{outline:3px solid #ad5f24;outline-offset:4px}.trade-demo html.rm .film-stage{height:auto}.trade-demo .section > .wrap > *{opacity:1!important;transform:none!important;transition:none!important}
@media(max-width:1000px){.demo-grid{grid-template-columns:1fr}.demo-card{display:grid;grid-template-columns:1fr 1.3fr;gap:15px 35px}.demo-card .status-chip{margin:0;justify-self:start}.demo-card .fictional-co{grid-column:1;min-height:0}.demo-card h3{grid-column:1;margin:0}.demo-card p{grid-column:2;grid-row:1/4;margin:0}.demo-card .world-strip{grid-column:1/-1;margin-top:12px}.trade-demo .section>.wrap{width:calc(100% - 72px)}.trade-demo .desk-jobs{grid-template-columns:1fr 1fr}}
@media(max-width:800px){.explore-links{gap:15px 24px;font-size:.82rem}.detail-nav{gap:15px 23px;font-size:.8rem;padding-block:20px}.detail-main>.section{padding-block:37px}.detail-main .section-heading{gap:22px}.detail-main .mechanism-steps,.journey-steps,.standards-grid{grid-template-columns:1fr}.mechanism-steps>li{gap:15px}.mechanism-steps h3{font-size:1.2rem}.detail-main .boundary{grid-template-columns:1fr;gap:25px}.boundary-quote{font-size:1.8rem}.detail-main .decision{grid-template-columns:1fr;padding:26px;margin-block:30px 40px;gap:25px}.decision h2{font-size:2rem}.detail-main .decision p{font-size:.95rem}.standards-grid li{padding:23px}.challenge,.trade-demo .challenge{padding:20px}.challenge-head{flex-direction:column;align-items:flex-start;gap:9px}.challenge-chips{gap:8px}.challenge-chips button,.trade-demo .challenge-chips button{padding:11px 12px;font-size:.82rem;flex:1 1 135px}.challenge .line,.trade-demo .challenge .line{grid-template-columns:1fr;gap:8px}.challenge .line--limit,.trade-demo .challenge .line--limit{padding:17px}.faq>div{grid-template-columns:1fr;gap:13px;padding-block:23px}.walkthrough-intro h2{font-size:2.1rem}.demo-card{display:flex;padding:25px;gap:0}.demo-card .status-chip{margin-bottom:20px}.demo-card .fictional-co{margin-bottom:14px}.demo-card h3{margin-bottom:14px}.demo-card .world-strip{margin-top:24px}.trade-demo>.site-header .brand{font-size:1rem}.demo-ribbon>.wrap{flex-direction:column;align-items:flex-start;gap:14px}.demo-ribbon nav{gap:23px;font-size:.8rem}.trade-demo .private-banner{font-size:.75rem;padding:10px 20px}.trade-demo .film-stage{top:78px;height:calc(100vh - 78px)}.trade-demo .section>.wrap{width:calc(100% - 44px)}.trade-demo .section:not(.close){padding-block:45px}.trade-demo .section .sec-display{font-size:2rem}.trade-demo .section .sec-lede{font-size:1rem}.trade-demo .desk-jobs{grid-template-columns:1fr;gap:22px}.trade-demo .close{padding-block:45px}.trade-demo dialog.boundary{padding:27px}.trade-demo dialog.boundary h2{font-size:1.75rem}}
html.rm .trade-demo .film-stage,html:not(.js) .trade-demo .film-stage{height:auto;top:auto}
/* With JavaScript unavailable, all scripted transcripts remain readable. */
html:not(.js) [role=tabpanel][hidden]{display:block}.detail.js-ready [role=tabpanel][hidden]{display:none}

.resource-links{display:flex;flex-wrap:wrap;gap:14px 30px;margin-top:25px;font-size:.85rem;font-weight:600}.resource-links a{text-decoration:none}.resource-links a:hover{text-decoration:underline}
html.js [role=tabpanel][hidden]{display:none!important}html:not(.js) [role=tabpanel][hidden]{display:block!important}
.trade-demo .section{padding-inline:0;min-height:0}.trade-demo>.site-footer{opacity:1}.trade-demo .scene-1 .scene-copy{bottom:auto;top:28%;max-width:760px;transform:none}.trade-demo .w-display{font-size:clamp(3rem,7.2vw,6.6rem)}.trade-demo .w-kicker,.trade-demo .fiction-stamp{font-size:.75rem}.trade-demo .scene-1 .w-lede{max-width:620px}.trade-demo .challenge-note,.trade-demo dialog.boundary p,.trade-demo .challenge dt{opacity:1}
@media(max-width:800px){.trade-demo .scene-1 .scene-copy{top:18%;max-width:calc(100% - 44px)}.trade-demo .w-display{font-size:clamp(2.7rem,11vw,4.3rem)}.trade-demo .scene-1 .w-lede{font-size:1rem}.trade-demo .w-kicker{letter-spacing:.1em}}


@media(max-width:800px){html:not(.js) .menu-toggle{display:none}html:not(.js) .header-inner{flex-wrap:wrap;padding-block:18px}html:not(.js) #site-nav{display:flex;position:static;flex-wrap:wrap;gap:12px;padding:0;box-shadow:none;border:0}html:not(.js) #site-nav>a:not(.button){padding:7px 0}html:not(.js) #site-nav .button{margin:0}}

.trade-demo .scene-1 .charsplit .ch{opacity:1!important;transform:none!important;transition:none!important}
[role=tabpanel],[role=tab]{scroll-margin-top:115px}@media(max-width:800px){[role=tabpanel],[role=tab]{scroll-margin-top:95px}}
.trade-hvac .scene-1 .w-lede{background:rgba(12,30,25,.84);padding:12px 16px;border-radius:5px;color:#fff}.trade-hvac .scene-1 .w-display{text-shadow:0 2px 18px #241609}
html.rm .trade-hvac .roofline,html:not(.js) .trade-hvac .roofline{display:none}

/* Selected-service method; phone-specific source detail remains below. */
.selected-process>h2{max-width:950px}.method-scope{max-width:850px;margin-top:24px;font-size:1.1rem}.scope-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-top:35px}.scope-step{background:#f0f3e8;border:1px solid #ccd6c1;border-radius:8px;padding:26px}.scope-step h3{font-size:1.6rem;margin-bottom:23px}.scope-step dl{margin:0}.scope-step dt{font-size:.74rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;margin-top:22px}.scope-step dd{margin:6px 0 0;color:var(--muted);font-size:.96rem;line-height:1.65}.front-desk-method{border-top:2px solid var(--ink);padding-top:38px}.front-desk-method h2{font-size:2.2rem;margin:14px 0}.request-copy h1{font-size:clamp(2.8rem,4.3vw,4.2rem)}
@media(max-width:850px){.scope-steps{grid-template-columns:1fr}.scope-step{padding:25px}.selected-process>h2{font-size:2.1rem}}
/* Without scripting the mobile navigation stays available; no hidden-content reveal system. */
@media(max-width:760px){html:not(.js) #site-nav{display:flex;position:static;flex-wrap:wrap;gap:16px;padding:16px 0}html:not(.js) .header-inner{flex-wrap:wrap}html:not(.js) .menu-toggle{display:none}}
@media(prefers-reduced-motion:no-preference){.button:focus-visible{transform:translateY(-2px)}.offer>a,.resource-links a{transition:text-underline-offset .18s}.offer>a:hover,.offer>a:focus-visible,.resource-links a:hover,.resource-links a:focus-visible{text-underline-offset:7px}}
@media(prefers-reduced-motion:reduce){.button:hover,.button:focus-visible{transform:none}}
