:root{--cx-ink:#08090c;--cx-paper:#fbfaf8;--cx-orange:#f5a623;--cx-cream:#f4f2ed;--cx-line:rgba(244,242,237,.12);--cx-ease:cubic-bezier(.22,1,.36,1);--cx-card-outline:#f5a623;--cx-card-outline-ring:0 0 0 1.5px rgba(245,166,35,.55);--cx-card-elevation:0 10px 22px rgba(16,20,28,.14);--cx-card-lift:-3px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;overflow-x:hidden}img,svg{max-width:100%;height:auto}.cx-skip{position:fixed;left:16px;top:12px;z-index:9999;transform:translateY(-160%);background:var(--cx-orange);color:#08090c;padding:12px 16px;border-radius:7px;font:700 13px/1 'Space Grotesk',sans-serif}.cx-skip:focus{transform:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--cx-orange)!important;outline-offset:4px!important}
.cx-nav{isolation:isolate}.cx-nav-toggle{display:none;border:1px solid rgba(244,242,237,.25);background:rgba(8,9,12,.82);color:var(--cx-cream);width:46px;height:44px;border-radius:8px;align-items:center;justify-content:center;font-size:21px;cursor:pointer}.cx-nav-toggle[aria-expanded="true"]{border-color:var(--cx-orange);color:var(--cx-orange)}.cx-nav-drawer,.cx-nav-backdrop{display:none}
.cx-enhanced [data-cx-interactive="true"]{cursor:pointer}.cx-enhanced [data-cx-interactive="true"][role="button"]:focus-visible{outline-offset:2px!important}.cx-enhanced .cx-stage-button{overflow:visible!important}.cx-enhanced .cx-stage-button>*{overflow:visible!important}
.cx-circuit-stage{position:relative;isolation:isolate;overflow:hidden}.cx-circuit-stage::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(8,9,12,.96) 0%,rgba(8,9,12,.78) 40%,rgba(8,9,12,.24) 72%,rgba(8,9,12,.64) 100%),url('/assets/conexity-circuit-hero-v2.jpg') center right/cover no-repeat;filter:saturate(1.04) contrast(1.06);opacity:.96;mask-image:linear-gradient(180deg,#000 0%,#000 74%,transparent 100%)}.cx-circuit-stage::after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 72% 72%,rgba(245,166,35,.16),transparent 31%),linear-gradient(180deg,rgba(8,9,12,.04) 0%,rgba(8,9,12,.54) 72%,#08090c 100%);pointer-events:none}
.cx-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.cx-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))!important}
/* Shared ≥44x44 touch-target hit zone for small inline text links (nav
   links, compact stat-strip citations, card CTAs) that must keep their
   approved visual size — the ::after overlay is invisible and does not
   affect layout, it only enlarges the clickable/tappable area. */
.cx-tap-target{position:relative}
.cx-tap-target::after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:max(100%,44px);height:44px}.cx-form-status{min-height:1.4em;font:500 12px/1.45 'Space Grotesk',sans-serif}.cx-form-status[data-state="error"]{color:#c82333}.cx-form-status[data-state="success"]{color:#1b9c61}.cx-finance-form{position:relative;padding:32px;border:1px solid rgba(16,20,28,.12);border-radius:16px;background:linear-gradient(145deg,#fff 0%,#fffaf0 100%);box-shadow:0 22px 54px rgba(16,20,28,.11);color:#10141c}.cx-finance-form .cx-kicker{margin:0 0 11px;color:#a96f0c;font:700 10px/1 'JetBrains Mono',monospace;letter-spacing:.18em}.cx-finance-form h2{margin:0;font:700 clamp(22px,2.2vw,30px)/1.18 Sora,sans-serif;color:#10141c}.cx-form-intro{margin:14px 0 24px;color:rgba(16,20,28,.66);font:400 13px/1.65 Sora,sans-serif}.cx-finance-form form{display:grid;gap:14px}.cx-form-grid,.cx-more-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cx-finance-form label{display:grid;gap:7px;color:#383b42;font:600 11px/1.2 Sora,sans-serif}.cx-finance-form input,.cx-finance-form select,.cx-finance-form textarea{width:100%;border:1px solid rgba(16,20,28,.17);border-radius:8px;background:#fff;color:#10141c;padding:11px 12px;font:400 14px/1.35 Sora,sans-serif;min-height:44px}.cx-finance-form textarea{resize:vertical}.cx-more-details{border-top:1px solid rgba(16,20,28,.1);border-bottom:1px solid rgba(16,20,28,.1);padding:14px 0}.cx-more-details summary{cursor:pointer;color:#10141c;font:700 12px Sora,sans-serif;padding:12px 0;min-height:44px;box-sizing:border-box}.cx-more-details summary span{display:block;margin-top:5px;color:rgba(16,20,28,.55);font-weight:400}.cx-more-grid{padding-top:14px}.cx-form-wide{grid-column:1/-1}.cx-consent{display:flex!important;grid-template-columns:auto 1fr;align-items:flex-start;gap:9px;min-height:44px;color:rgba(16,20,28,.66)!important;font-weight:400!important;line-height:1.45!important}.cx-consent input{width:17px!important;height:17px;margin:0}.cx-finance-form button{border:0;border-radius:8px;background:linear-gradient(110deg,#10141c 35%,#28324a 52%,#10141c 68%);background-size:220% 100%;color:#fff;cursor:pointer;padding:15px 18px;font:700 14px Sora,sans-serif;transition:transform .2s var(--cx-ease),box-shadow .2s var(--cx-ease)}.cx-finance-form button:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(16,20,28,.2)}.cx-finance-form button span{color:var(--cx-orange)}
/* Tablet-landscape gap (981–1080px, e.g. iPad 1024px): the 980px nav
   breakpoint below never applied here, so the hamburger stayed display:none
   while 5–7 desktop nav links compressed into a shrinking bar. This block
   applies only the nav-toggle switch (not the 980px block's other content
   collapses, which are unnecessary at this width) to the narrow gap above
   it. Declared before the 980px block; both target identical properties so
   there is no cascade conflict, only an extended range. */
@media (max-width:1080px){.cx-nav .cx-desktop-links,.cx-nav .cx-nav-actions>a:not(:last-child){display:none!important}.cx-nav-toggle{display:inline-flex}.cx-group-nav .cx-nav-toggle{display:inline-flex}.cx-group-nav-title,.cx-group-nav-links,.cx-group-nav .cx-nav-actions{display:none!important}}
@media (max-width:980px){html{scroll-padding-top:76px}.cx-nav>div{height:64px!important;padding-left:18px!important;padding-right:18px!important}.cx-nav .cx-desktop-links,.cx-nav .cx-nav-actions>a:not(:last-child){display:none!important}.cx-nav .cx-nav-actions{gap:9px!important}.cx-nav .cx-nav-actions a:last-child{padding:10px 13px!important;font-size:11px!important}.cx-nav-toggle{display:inline-flex}.cx-nav-drawer{position:fixed;inset:64px 0 0;background:rgba(8,9,12,.985);padding:28px 22px 120px;z-index:100;overflow:auto;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .25s var(--cx-ease),transform .25s var(--cx-ease),visibility .25s}.cx-nav-drawer[data-open="true"]{opacity:1;visibility:visible;transform:none}.cx-nav-drawer a{display:flex;color:var(--cx-cream);padding:17px 0;border-bottom:1px solid var(--cx-line);font:700 18px/1.2 Montserrat,sans-serif}.cx-nav-drawer .cx-drawer-cta{margin-top:24px;padding:16px 18px;border:0;border-radius:8px;background:var(--cx-orange);color:#08090c;justify-content:center}.cx-drawer-open{overflow:hidden}.cx-grid,.cx-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))!important}.cx-circuit-stage::before{inset:0;background-position:70% 100%;opacity:.82;mask-image:linear-gradient(180deg,#000 0%,#000 62%,transparent 100%)} }
@media (max-width:620px){html{scroll-padding-top:72px}.cx-nav>div{height:60px!important}.cx-nav img{max-width:160px!important;height:auto!important}.cx-nav .cx-nav-actions a:last-child{display:none!important}.cx-nav-drawer{inset:60px 0 0}.cx-grid,.cx-grid-two{grid-template-columns:1fr!important}.cx-circuit-stage::before{inset:28% -44% -5%;background-position:73% 100%;opacity:.72;mask-image:linear-gradient(180deg,transparent,#000 16%,#000 78%,transparent)}[style*="min-height:640px"]{min-height:560px!important}[style*="padding:76px 32px 84px"]{padding:48px 20px 64px!important}[style*="padding:0 32px"],[style*="padding:0 clamp(16px"]{padding-left:20px!important;padding-right:20px!important}[style*="gap:clamp(32px"]{gap:28px!important}h1{overflow-wrap:anywhere}.cx-form-shell{padding:20px!important}.cx-mobile-stack{position:static!important;width:auto!important}.cx-mobile-stack [style*="grid-template-columns"]{grid-template-columns:1fr!important}}
@media (max-width:360px){.cx-nav img{max-width:130px!important}.cx-nav-toggle{width:44px;height:44px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}.cx-circuit-stage::before{filter:none}}

.cx-module-shell{max-width:1280px;margin:0 auto;padding:96px 32px}
.cx-package-builder{max-width:1180px;margin:0 auto;padding:clamp(34px,5vw,64px) 20px clamp(64px,8vw,110px);color:#f4f2ed}.cx-package-builder h2{margin:0;font:800 clamp(28px,3vw,42px)/1.15 Montserrat,sans-serif;text-transform:uppercase}.cx-package-builder>p{max-width:690px;color:rgba(244,242,237,.62);font:400 15px/1.7 'Space Grotesk',sans-serif}.cx-package-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.46fr);gap:24px;align-items:start}.cx-package-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.cx-package-option{border:1px solid rgba(244,242,237,.12);border-radius:13px;background:#0e1118;padding:19px;display:grid;gap:12px}.cx-package-option h3{margin:0;font:700 16px Montserrat,sans-serif}.cx-package-option p{margin:0;color:rgba(244,242,237,.56);font:400 12.5px/1.65 'Space Grotesk',sans-serif}.cx-package-option label{display:flex;align-items:center;gap:8px;min-height:44px;padding:9px 0;border-top:1px solid rgba(244,242,237,.08);cursor:pointer;font:600 12px 'Space Grotesk',sans-serif}.cx-package-option input{accent-color:#f5a623}.cx-package-option select{width:100%;border:1px solid rgba(244,242,237,.18);border-radius:7px;background:#151923;color:#f4f2ed;padding:10px;font:600 12px 'Space Grotesk',sans-serif}.cx-package-summary{position:sticky;top:92px;border:1px solid rgba(245,166,35,.38);border-radius:14px;padding:22px;background:linear-gradient(145deg,#12151c,#08090c);box-shadow:0 18px 44px rgba(0,0,0,.3)}.cx-package-summary h3{margin:0 0 16px;font:700 18px Montserrat,sans-serif}.cx-package-lines{display:grid;gap:8px;padding:0 0 16px;border-bottom:1px solid rgba(244,242,237,.1)}.cx-package-line{display:flex;justify-content:space-between;gap:10px;color:rgba(244,242,237,.7);font:500 12px 'Space Grotesk',sans-serif}.cx-package-totals{display:grid;gap:9px;padding:16px 0}.cx-package-total{display:flex;justify-content:space-between;align-items:baseline;font:700 15px Montserrat,sans-serif}.cx-package-total strong{font-size:24px;color:#f5a623}.cx-package-summary button{width:100%;border:0;border-radius:8px;background:linear-gradient(110deg,#f5a623,#ffd98a,#f5a623);background-size:220% 100%;color:#08090c;padding:15px;font:800 13px 'Space Grotesk',sans-serif;cursor:pointer}.cx-package-summary .cx-quote{margin-top:10px;text-align:center;color:#f5a623;font:600 11px 'JetBrains Mono',monospace}.cx-map-shell{max-width:1180px;margin:0 auto;padding:clamp(36px,5vw,74px) 20px}.cx-map-shell h2{margin:0;font:800 clamp(28px,3vw,42px)/1.15 Montserrat,sans-serif;text-transform:uppercase}.cx-map-shell>p{max-width:700px;color:rgba(244,242,237,.6);font:400 15px/1.7 'Space Grotesk',sans-serif}.cx-map-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.cx-map-toolbar input{min-width:min(100%,280px);border:1px solid rgba(244,242,237,.18);border-radius:8px;background:#12151c;color:#f4f2ed;padding:11px 13px;font:500 13px 'Space Grotesk',sans-serif;min-height:44px}.cx-map-toolbar button{border:1px solid rgba(244,242,237,.16);border-radius:99px;background:transparent;color:#f4f2ed;padding:8px 11px;min-height:44px;cursor:pointer;font:600 10px 'JetBrains Mono',monospace}.cx-map-toolbar button[aria-pressed="true"]{border-color:#f5a623;background:rgba(245,166,35,.13);color:#f5a623}.cx-map-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(290px,.65fr);gap:18px;align-items:stretch}.cx-map-canvas{flex:1;min-height:570px;border:1px solid rgba(244,242,237,.12);border-radius:14px;overflow:hidden;background:#0a0c10}.cx-territory-panel{border:1px solid rgba(244,242,237,.12);border-radius:14px;background:#10131a;padding:22px;display:grid;align-content:start;gap:15px}.cx-territory-panel .cx-kicker{margin:0;color:#f5a623;font:700 10px 'JetBrains Mono',monospace;letter-spacing:.18em}.cx-territory-panel h3{margin:0;font:700 27px Montserrat,sans-serif}.cx-territory-price{color:#f5a623;font:800 34px Montserrat,sans-serif}.cx-territory-meta{color:rgba(244,242,237,.63);font:400 13px/1.65 'Space Grotesk',sans-serif}.cx-territory-panel button{border:0;border-radius:8px;background:#f5a623;color:#08090c;padding:15px;font:800 13px 'Space Grotesk',sans-serif;cursor:pointer}.cx-territory-list{max-height:245px;overflow:auto;border-top:1px solid rgba(244,242,237,.1);padding-top:8px}.cx-territory-list button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:44px;padding:10px 0;border:0;border-bottom:1px solid rgba(244,242,237,.07);border-radius:0;background:transparent;color:#f4f2ed;text-align:left;font:600 12px 'Space Grotesk',sans-serif}.cx-territory-list button span{color:#f5a623;font:500 10px 'JetBrains Mono',monospace}.cx-map-status{min-height:1.5em;color:#7ee2a8;font:600 11px 'JetBrains Mono',monospace}
@media(max-width:900px){.cx-package-layout,.cx-map-layout{grid-template-columns:1fr}.cx-package-summary{position:static}.cx-map-canvas{min-height:440px}.cx-package-options{grid-template-columns:1fr}}@media(max-width:620px){.cx-finance-form{padding:22px}.cx-form-grid,.cx-more-grid{grid-template-columns:1fr}.cx-form-wide{grid-column:auto}.cx-map-shell,.cx-package-builder{padding-left:16px;padding-right:16px}.cx-module-shell{padding:56px 16px}.cx-map-canvas{min-height:390px}.cx-territory-panel{padding:18px}.cx-package-option{padding:16px}}

.cx-tier-control{cursor:pointer}.cx-tier-control[aria-pressed="true"]{border-color:#f5a623!important;background:rgba(245,166,35,.1)!important;color:#a96f0c!important;box-shadow:0 0 0 2px rgba(245,166,35,.12)}

.cx-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}.cx-remove{margin-left:7px;border:0;background:transparent;color:#f5a623;text-decoration:underline;font:600 10px 'Space Grotesk',sans-serif;cursor:pointer}.cx-quote-only span:last-child{color:#f5a623}.cx-territory-availability{margin:0;color:#7ee2a8;font:700 10px/1.5 'JetBrains Mono',monospace;letter-spacing:.08em;text-transform:uppercase}.cx-territory-avail-bar{margin-top:6px;height:6px;border-radius:99px;background:rgba(244,242,237,.12);overflow:hidden}.cx-territory-avail-fill{height:100%;background:#f5a623;border-radius:99px;transition:width .3s var(--cx-ease)}.cx-market-context .cx-map-disclaimer{margin:2px 0 0;color:rgba(244,242,237,.44);font:400 10.5px/1.5 'Space Grotesk',sans-serif}.cx-market-context-note{margin:0;color:rgba(244,242,237,.58);font:400 11.5px/1.6 'Space Grotesk',sans-serif}.cx-territory-details{display:grid;gap:12px;margin:0}.cx-territory-details div{display:grid;gap:3px}.cx-territory-details dt{color:#f5a623;font:700 9px 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase}.cx-territory-details dd{margin:0;color:rgba(244,242,237,.66);font:400 12px/1.55 'Space Grotesk',sans-serif}.cx-territory-list button[aria-current="true"]{background:rgba(245,166,35,.12);padding-left:10px;padding-right:10px}.cx-territory-list button b{align-self:center;color:#7ee2a8;font:700 10px 'JetBrains Mono',monospace;white-space:nowrap}.cx-territory-list button small{display:block;margin-top:4px;color:rgba(244,242,237,.48);font:500 10px 'JetBrains Mono',monospace}.cx-map-disclaimer{margin:15px 0 0;color:rgba(244,242,237,.44);font:400 11px/1.55 'Space Grotesk',sans-serif}.cx-drawer-toggle{display:none!important}.maplibregl-ctrl-group{border-radius:9px!important;overflow:hidden}.maplibregl-ctrl-group button{width:44px!important;height:44px!important;border-radius:0!important;background:#f4f2ed!important}.maplibregl-ctrl-group button span{filter:invert(1)}
@media(max-width:620px){.cx-map-toolbar{gap:7px}.cx-map-toolbar input{width:100%;min-width:100%}.cx-map-toolbar button{min-height:44px;flex:1 0 auto}.cx-map-layout{position:relative}.cx-map-canvas{min-height:58vh;max-height:620px;border-radius:12px}.cx-map-drawer{position:relative;margin-top:-18px;z-index:3;border-radius:16px 16px 12px 12px;box-shadow:0 -12px 30px rgba(0,0,0,.24)}.cx-drawer-toggle{display:flex!important;width:100%;justify-content:space-between;align-items:center;border:0!important;border-bottom:1px solid rgba(244,242,237,.1)!important;background:transparent!important;color:#f4f2ed!important;min-height:44px;padding:15px 0!important;font:700 12px 'Space Grotesk',sans-serif!important}.cx-drawer-toggle span{transition:transform .2s var(--cx-ease)}.cx-map-drawer:not(.is-open) .cx-drawer-content{display:none}.cx-map-drawer:not(.is-open) .cx-drawer-toggle span{transform:rotate(180deg)}.cx-territory-list{max-height:280px}.cx-package-summary{position:sticky;bottom:92px;top:auto;z-index:20;box-shadow:0 -12px 30px rgba(0,0,0,.34)}.cx-package-options{padding-bottom:10px}.cx-package-total strong{font-size:21px}}
/* Correction sprint: responsive hierarchy and premium interaction. */
.cx-premium-interactive{transition:transform .22s var(--cx-ease),box-shadow .22s var(--cx-ease),border-color .22s var(--cx-ease),background-color .22s var(--cx-ease),color .22s var(--cx-ease)}.cx-premium-interactive:hover,.cx-premium-interactive:focus-visible{transform:translateY(-3px);box-shadow:0 14px 30px rgba(245,166,35,.16);border-color:rgba(245,166,35,.62)!important}.cx-stage-button{position:relative;z-index:2}.cx-stage-viewport{padding:16px 0 8px}.cx-stage-rail{padding-top:10px}.cx-stage-button:hover,.cx-stage-button:focus-visible{filter:drop-shadow(0 0 12px rgba(245,166,35,.55));outline:0!important}.cx-pricing-section{scroll-margin-top:84px}.cx-pricing-section:before{content:"";display:block;height:1px}
@media(min-width:981px){.cx-pricing-section{background:linear-gradient(180deg,#f5f4ef 0%,#f5f4ef 88%,#edeae2 100%)}.cx-stage-viewport{overflow:visible!important}}
@media(max-width:620px){body{padding-bottom:0!important}.cx-group-shell{display:block!important;min-height:0!important}.cx-group-shell>a{min-height:570px!important;padding:106px 20px 30px!important}.cx-group-finance-panel{padding-top:68px!important}.cx-group-tagline{top:20px!important;z-index:5}.cx-group-tagline>div{padding:10px 14px!important;font-size:9px!important;letter-spacing:.14em!important;white-space:normal!important;text-align:center;max-width:calc(100vw - 40px)}.cx-group-broker-panel .cx-group-logo{margin-top:18px}.cx-group-shell [data-gw-seam],.cx-group-shell [data-gw-x],.cx-group-shell [data-gw-copy]{display:none!important}.cx-stage-viewport{padding-top:22px!important;padding-bottom:12px!important}.cx-finance-hero{align-items:start!important}.cx-finance-hero>div:first-child{align-self:start!important}.cx-finance-stats{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;flex-wrap:nowrap!important}.cx-finance-stats>div{min-width:0}.cx-finance-stats>div[style*="width:1px"]{display:none!important}.cx-finance-stats>div>div:first-child{font-size:clamp(16px,5vw,21px)!important;white-space:nowrap}.cx-finance-stats>div>div:last-child{font-size:8px!important;letter-spacing:.08em!important;white-space:normal}.cx-finance-process{padding-left:20px!important;padding-right:20px!important}.cx-process-steps{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory;gap:14px!important;padding:0 0 14px!important}.cx-process-steps>div[style*="position:absolute"]{display:none!important}.cx-process-steps>div:not([style*="position:absolute"]){flex:0 0 min(78vw,290px)!important;scroll-snap-align:start;border:1px solid rgba(245,166,35,.26);border-radius:12px;padding:18px!important;background:#fff;min-height:178px}.cx-process-steps>div:not([style*="position:absolute"]):hover{transform:none!important}.cx-premium-interactive:active{transform:translateY(-1px);box-shadow:0 8px 20px rgba(245,166,35,.2)}}

/* Correction sprint: real mobile navigation drawer, with no persistent conversion bar.
   Range widened from 980px to 1080px (mobile-ux-review finding, this workstream):
   the tablet-landscape toggle-visibility fix above (max-width:1080px) made the
   hamburger appear at 981-1080px, but this block — the one that actually gives the
   drawer display:flex, its backdrop and its slide-in transform — still stopped at
   980px, so the toggle was a dead control in that gap. This block only affects
   drawer/backdrop mechanics (opacity:0/visibility:hidden until [data-open="true"]),
   so widening it changes nothing for anyone who never opens the drawer. */
@media(max-width:1080px){
  .cx-nav-backdrop{display:block;position:fixed;inset:0;z-index:900;border:0;background:rgba(0,0,0,.58);opacity:0;visibility:hidden;transition:opacity .22s var(--cx-ease),visibility .22s var(--cx-ease)}
  .cx-nav-backdrop[data-open="true"]{opacity:1;visibility:visible}
  .cx-nav-drawer{display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;width:min(94vw,420px);padding:20px 22px 42px;background:#08090c;z-index:901;overflow:auto;opacity:0;visibility:hidden;transform:translateX(-105%);transition:transform .25s var(--cx-ease),opacity .25s var(--cx-ease),visibility .25s var(--cx-ease);box-shadow:18px 0 45px rgba(0,0,0,.42)}
  .cx-nav-drawer[data-open="true"]{opacity:1;visibility:visible;transform:translateX(0)}
  .cx-nav-drawer-close{display:flex;align-self:flex-end;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;border:1px solid rgba(244,242,237,.28);border-radius:7px;background:transparent;color:var(--cx-cream);font:700 12px/1 'Space Grotesk',sans-serif;cursor:pointer}
  .cx-nav-drawer a{display:flex;color:var(--cx-cream);padding:17px 0;border-bottom:1px solid var(--cx-line);font:700 18px/1.2 Montserrat,sans-serif}
  .cx-nav-drawer .cx-drawer-cta{margin-top:24px;padding:16px 18px;border:0;border-radius:8px;background:var(--cx-orange);color:#08090c;justify-content:center}
  .cx-drawer-open{overflow:hidden}
}
@media(max-width:620px){.cx-nav-drawer{inset:0 auto 0 0;width:min(94vw,390px)}}

/* Correction sprint: borrower-only preview chat and natural mobile builder flow. */
.cx-panel-explainer{grid-column:1/-1;margin:10px 0 0;color:rgba(244,242,237,.62);font:500 12px/1.55 'Space Grotesk',sans-serif}.cx-panel-explainer.is-selected{color:#f5a623}.cx-borrower-chat-launch{position:fixed;right:20px;bottom:20px;z-index:80;border:1px solid rgba(245,166,35,.55);border-radius:999px;background:#10141c;color:#fff;padding:16px 18px;box-shadow:0 12px 28px rgba(16,20,28,.24);font:700 12px/1 'Space Grotesk',sans-serif;cursor:pointer}.cx-borrower-chat-launch:hover,.cx-borrower-chat-launch:focus-visible{border-color:#f5a623;box-shadow:0 0 0 4px rgba(245,166,35,.16),0 14px 32px rgba(16,20,28,.28)}.cx-borrower-chat{position:fixed;right:20px;bottom:calc(76px + var(--cx-chat-kb-offset,0px));z-index:910;width:min(420px,calc(100vw - 32px));max-height:min(640px,calc(100dvh - 100px - var(--cx-chat-kb-offset,0px)));display:grid;grid-template-rows:auto minmax(100px,1fr) auto auto;gap:14px;padding:20px;border:1px solid rgba(245,166,35,.5);border-radius:16px;background:#0e1118;color:#f4f2ed;box-shadow:0 24px 60px rgba(0,0,0,.48);opacity:0;visibility:hidden;transform:translateY(14px);transition:opacity .2s var(--cx-ease),transform .2s var(--cx-ease),visibility .2s}.cx-borrower-chat[data-open="true"]{opacity:1;visibility:visible;transform:none}.cx-chat-head{display:flex;justify-content:space-between;gap:16px}.cx-chat-head h2{margin:4px 0 0;font:700 17px/1.25 Montserrat,sans-serif;color:#fff}.cx-chat-head .cx-kicker{margin:0;color:#f5a623;font:700 9px 'JetBrains Mono',monospace;letter-spacing:.16em}.cx-chat-ai-badge{margin:4px 0 0;color:rgba(244,242,237,.5);font:600 9px 'JetBrains Mono',monospace;letter-spacing:.1em;text-transform:uppercase}.cx-chat-close{width:44px;height:44px;min-width:44px;min-height:44px;flex-shrink:0;border:1px solid rgba(244,242,237,.2);border-radius:7px;background:transparent;color:#fff;font-size:22px;cursor:pointer}.cx-chat-thread{overflow:auto;display:grid;align-content:start;gap:9px;padding:12px;border:1px solid rgba(244,242,237,.1);border-radius:10px;background:#08090c}.cx-chat-message{margin:0;padding:10px 12px;border-radius:9px;background:#151923;color:rgba(244,242,237,.82);font:400 12px/1.6 'Space Grotesk',sans-serif}.cx-chat-message-user{background:#1b2130;color:#f4f2ed;justify-self:end;max-width:88%}.cx-chat-thinking{color:rgba(244,242,237,.45);font-style:italic}.cx-chat-action-confirmation{border:1px solid rgba(245,166,35,.35);background:rgba(245,166,35,.08);color:#f5a623}.cx-chat-fallback{border:1px solid rgba(245,166,35,.35);background:rgba(245,166,35,.08);color:rgba(244,242,237,.82)}.cx-chat-error{border:1px solid rgba(200,35,51,.4);background:rgba(200,35,51,.1);color:#f2a3a3}.cx-chat-actions{display:flex;flex-wrap:wrap;gap:8px}.cx-chat-actions button{border:1px solid rgba(245,166,35,.35);border-radius:7px;background:transparent;color:#f5a623;padding:15px 12px;font:600 11px/1.25 'Space Grotesk',sans-serif;cursor:pointer}.cx-chat-actions button:hover,.cx-chat-actions button:focus-visible{background:rgba(245,166,35,.12);border-color:#f5a623}.cx-chat-actions button:disabled{opacity:.55;cursor:default}.cx-chat-consent{display:flex;align-items:center;min-height:44px;gap:8px;color:rgba(244,242,237,.7);font:400 11px/1.45 'Space Grotesk',sans-serif}.cx-chat-consent input{margin:0}.cx-chat-input-row{display:flex;gap:8px}.cx-chat-input-row input{flex:1;min-width:0;min-height:44px;border:1px solid rgba(244,242,237,.18);border-radius:8px;background:#151923;color:#f4f2ed;padding:0 12px;font:400 13px/1.4 'Space Grotesk',sans-serif}.cx-chat-input-row input:focus-visible{outline:2px solid #f5a623;outline-offset:2px}.cx-chat-input-row input:disabled{opacity:.6}.cx-chat-input-row button{min-width:76px;min-height:44px;border:0;border-radius:8px;background:#f5a623;color:#08090c;font:700 12px 'Space Grotesk',sans-serif;cursor:pointer}.cx-chat-input-row button:disabled{opacity:.55;cursor:default}.cx-chat-status{min-height:1.4em;margin:0;color:rgba(244,242,237,.55);font:500 11px/1.45 'Space Grotesk',sans-serif}
@media(max-width:620px){.cx-package-summary{position:static!important;bottom:auto!important}.cx-borrower-chat-launch{right:14px;bottom:14px}.cx-borrower-chat{inset:8px;right:8px;bottom:calc(8px + var(--cx-chat-kb-offset,0px));width:auto;max-height:calc(100dvh - 16px - var(--cx-chat-kb-offset,0px));border-radius:14px}.cx-chat-actions{display:grid;grid-template-columns:1fr}.cx-chat-actions button{text-align:left}.cx-chat-open{overflow:hidden}}

/* Sticky mobile CTA — the broker page is a ~28,000px single scroll with no
   persistent route to #checkout below the fold (production-recovery audit
   §10 finding 2). Hidden by default; shown only at the phone breakpoint
   where the drawer's own CTA is unreachable without scrolling back to top.
   Sits above the chat launcher (which is nudged up to make room) so the two
   never overlap. */
.cx-sticky-cta{display:none}
@media(max-width:620px){
  .cx-sticky-cta{display:flex;position:fixed;left:14px;right:14px;bottom:calc(14px + env(safe-area-inset-bottom,0px));z-index:70;justify-content:center;align-items:center;gap:8px;min-height:50px;border-radius:10px;background:linear-gradient(110deg,#F5A623 40%,#FFD98A 50%,#F5A623 60%);color:#08090C;font:700 14px Montserrat,sans-serif;text-decoration:none;box-shadow:0 12px 30px rgba(0,0,0,.4);opacity:1;transform:translateY(0);transition:opacity .25s var(--cx-ease),transform .25s var(--cx-ease)}
  /* Hidden once the in-page #checkout activation panel (its own full-width
     gold CTA) is itself in view — otherwise two near-identical gold CTAs
     compete on screen at once (premium-ui-critic finding, this workstream). */
  .cx-sticky-cta--hidden{opacity:0;transform:translateY(12px);pointer-events:none}
  body:has(.cx-sticky-cta) .cx-borrower-chat-launch{bottom:82px!important}
  body:has(.cx-sticky-cta){padding-bottom:78px!important}
}
/* .cx-chat-close is already sized to a full 44x44 tap target above. A dedicated full-viewport .cx-chat-backdrop tap-to-dismiss layer would style here (fixed;inset:0;z-index below .cx-borrower-chat, above page content, @media(max-width:620px)) but that markup does not exist in finance.js yet, which is out of this file's scope — no dependency invented. */

/* Mobile navigation for the intentionally split group landing page. */
.cx-group-nav{display:none}
@media(max-width:980px){.cx-group-nav{display:block;position:fixed;inset:10px 12px auto auto;z-index:500}.cx-group-nav>div{display:flex;align-items:center;justify-content:flex-end;gap:8px}.cx-group-nav-title,.cx-group-nav-links,.cx-group-nav .cx-nav-actions{display:none!important}.cx-group-nav .cx-nav-toggle{display:inline-flex;background:rgba(8,9,12,.9);box-shadow:0 8px 20px rgba(0,0,0,.22)}.cx-group-shell .cx-group-tagline>div{max-width:calc(100vw - 108px)}}

/* Task 2: exact mobile group hierarchy, broker stages, and borrower process line. */
.cx-stage-control{position:relative;z-index:3;cursor:pointer}.cx-stage-control.is-selected .cx-stage-button{filter:drop-shadow(0 0 12px rgba(245,166,35,.55))}.cx-stage-ghost{position:absolute;right:26px;top:-18px;font:800 130px Montserrat,sans-serif;color:rgba(245,166,35,.07);line-height:1;pointer-events:none}.cx-stage-accent{position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(to bottom,#F5A623,rgba(245,166,35,.1))}.cx-stage-detail{position:relative;display:flex;flex-direction:column;gap:13px;max-width:720px}.cx-stage-kicker{font:600 9.5px 'JetBrains Mono',monospace;letter-spacing:.22em;color:rgba(244,242,237,.4)}.cx-stage-title{font:700 20px Montserrat,sans-serif;color:#F4F2ED}.cx-stage-body{font:400 13.5px/1.7 'Space Grotesk',sans-serif;color:rgba(244,242,237,.6)}.cx-stage-chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:2px}.cx-stage-chips span{background:rgba(245,166,35,.07);border:1px solid rgba(245,166,35,.3);border-radius:7px;padding:7px 12px;font:500 10.5px 'JetBrains Mono',monospace;color:#F5A623}.cx-process-steps{grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:start}.cx-process-steps>div:not([style*="position:absolute"]){min-width:0}
@media(max-width:620px){.cx-group-entry{max-width:204px!important;padding:12px 15px!important;font-size:11px!important;gap:0!important}.cx-group-entry span{display:none!important}.cx-stage-ghost{font-size:94px;right:14px;top:-9px}.cx-stage-title{font-size:18px}.cx-stage-chips{gap:7px}.cx-stage-chips span{font-size:9px;padding:6px 8px}.cx-process-steps{grid-template-columns:none!important}}
@media(max-width:360px){.cx-group-entry{max-width:182px!important;padding:11px 13px!important;font-size:10px!important}}


/* Task 2: package builder, map and referral calculator hierarchy. */
.cx-package-layout{grid-template-columns:minmax(0,1fr) minmax(300px,.42fr)!important}.cx-package-main{min-width:0;display:grid;gap:20px}.cx-package-summary--landscape{position:sticky;top:92px;display:grid;grid-template-columns:minmax(170px,.7fr) minmax(230px,1fr) minmax(180px,.65fr);gap:18px;align-items:start}.cx-package-summary--landscape .cx-package-lines{padding-bottom:0;border-bottom:0}.cx-package-summary--landscape .cx-package-totals{padding:0;border-left:1px solid rgba(244,242,237,.1);padding-left:18px}.cx-package-summary--landscape>button,.cx-package-summary--landscape .cx-quote{grid-column:1/-1}.cx-package-contact{position:sticky;top:92px;display:grid;gap:13px;padding:22px;border:1px solid rgba(245,166,35,.38);border-radius:14px;background:linear-gradient(145deg,#12151c,#08090c);box-shadow:0 18px 44px rgba(0,0,0,.3);color:#f4f2ed}.cx-package-contact h3{margin:0;font:700 20px Montserrat,sans-serif}.cx-package-contact>p:not(.cx-kicker){margin:0;color:rgba(244,242,237,.65);font:400 12.5px/1.6 'Space Grotesk',sans-serif}.cx-package-contact form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.cx-package-contact label{display:grid;gap:6px;color:rgba(244,242,237,.73);font:600 10px 'Space Grotesk',sans-serif}.cx-package-contact label:last-of-type{grid-column:1/-1}.cx-package-contact input,.cx-package-contact textarea{width:100%;border:1px solid rgba(244,242,237,.18);border-radius:7px;background:#151923;color:#f4f2ed;padding:10px;font:500 12px 'Space Grotesk',sans-serif;min-height:44px}.cx-package-contact textarea{resize:vertical;min-height:88px}.cx-package-contact form>button{grid-column:1/-1;border:0;border-radius:8px;background:#f5a623;color:#08090c;padding:16px;font:800 12px 'Space Grotesk',sans-serif;cursor:pointer;min-height:44px}.cx-contact-actions{grid-column:1/-1;display:flex;gap:9px}.cx-contact-actions button{flex:1;border:1px solid rgba(245,166,35,.42);border-radius:7px;background:transparent;color:#f5a623;padding:15px 10px;font:700 11px 'Space Grotesk',sans-serif;cursor:pointer;min-height:44px}.cx-module-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:7px}.cx-module-actions button{border:0;background:transparent;padding:0;color:#b8770b;font:600 12px 'Space Grotesk',sans-serif;cursor:pointer;text-align:left}.cx-module-actions button:hover,.cx-module-actions button:focus-visible{text-decoration:underline}.cx-tier-detail{max-width:1180px;margin:20px auto 0;padding:20px;border:1px solid rgba(245,166,35,.34);border-radius:13px;background:#fffaf0;color:#14161c;box-shadow:0 10px 30px rgba(20,22,28,.08)}.cx-tier-detail__heading{display:flex;justify-content:space-between;gap:16px;align-items:baseline;font:700 17px Montserrat,sans-serif}.cx-tier-detail__heading span{color:#a96f0c;font:700 12px 'JetBrains Mono',monospace}.cx-tier-detail p,.cx-tier-detail li{font:400 12.5px/1.6 'Space Grotesk',sans-serif;color:rgba(20,22,28,.72)}.cx-tier-detail ul{margin:10px 0 0;padding-left:20px;columns:2}.cx-map-presentation{position:relative;min-width:0;display:flex;flex-direction:column}.cx-map-legend{position:absolute;left:16px;bottom:16px;z-index:3;display:grid;gap:7px;padding:14px;border:1px solid rgba(244,242,237,.14);border-radius:10px;background:rgba(14,17,24,.94);color:#f4f2ed;font:500 10px 'Space Grotesk',sans-serif;box-shadow:0 10px 28px rgba(0,0,0,.34)}.cx-map-legend strong{font:700 9px 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:#f5a623}.cx-map-legend span{display:flex;align-items:center;gap:7px}.cx-map-legend i{width:10px;height:10px;border-radius:2px;background:#374151}.cx-map-legend [data-band="signature"] i{background:#FB923C}.cx-map-legend [data-band="prestige"] i{background:#F59E0B}.cx-map-legend [data-band="prime"] i{background:#F6AC29}.cx-map-legend [data-band="core"] i{background:#34D399}.cx-map-legend [data-band="regional"] i{background:#2DD4BF}.cx-map-legend b{margin-left:auto;color:rgba(244,242,237,.6);font:500 9px 'JetBrains Mono',monospace}.cx-market-context{display:grid;gap:10px;padding:14px 0;border-top:1px solid rgba(244,242,237,.1);border-bottom:1px solid rgba(244,242,237,.1)}.cx-market-context>div{display:grid;gap:4px;padding:12px;border:1px solid rgba(245,166,35,.35);border-radius:9px;background:rgba(245,166,35,.06)}.cx-market-context strong{color:#f5a623;font:800 26px Montserrat,sans-serif}.cx-market-context span,.cx-market-context p{margin:0;color:rgba(244,242,237,.7);font:400 11px/1.55 'Space Grotesk',sans-serif}.cx-referral-calculator label{display:flex;align-items:center;gap:8px;min-height:44px;color:#f4f2ed;font:500 12px 'Space Grotesk',sans-serif}.cx-referral-two-column{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.94fr);gap:22px;align-items:start}.cx-referral-proposition{display:flex;flex-direction:column;gap:16px;height:100%}.cx-referral-card{position:relative;background:linear-gradient(110deg,#0E1118 42%,#161c2a 50%,#0E1118 58%);background-size:230% 100%;background-position:96% 0;border:1px solid rgba(244,242,237,.14);border-radius:16px;padding:26px;display:flex;flex-direction:column;gap:12px;transition:background-position .6s,border-color .22s var(--cx-ease),box-shadow .22s var(--cx-ease),transform .22s var(--cx-ease)}.cx-referral-card:hover,.cx-referral-card:focus-within{background-position:4% 0;border-color:var(--cx-card-outline);box-shadow:var(--cx-card-outline-ring),0 16px 34px rgba(0,0,0,.4);transform:translateY(var(--cx-card-lift))}.cx-referral-card__top{display:flex;align-items:center;justify-content:space-between}.cx-referral-card__icon{width:42px;height:42px;border-radius:11px;background:rgba(245,166,35,.1);border:1px solid rgba(245,166,35,.35);display:flex;align-items:center;justify-content:center;font:800 17px Montserrat,sans-serif;color:#F5A623}.cx-referral-card__badge{background:rgba(46,204,113,.1);border:1px solid rgba(46,204,113,.3);color:#7ee2a8;font:600 9px 'JetBrains Mono',monospace;letter-spacing:.1em;padding:4px 10px;border-radius:99px}.cx-referral-card__title{margin:0;font:700 17px Montserrat,sans-serif;color:#F4F2ED}.cx-referral-card__rate{margin:0;font:800 34px Montserrat,sans-serif;color:#F5A623}.cx-referral-card__cadence{margin:-6px 0 0;font:500 12px/1.5 'Space Grotesk',sans-serif;color:rgba(244,242,237,.5)}.cx-referral-card__benefits{margin:4px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:7px;font:400 12.5px/1.5 'Space Grotesk',sans-serif;color:rgba(244,242,237,.68)}.cx-referral-card__benefits li{padding-left:20px;position:relative}.cx-referral-card__benefits li:before{content:"✓";position:absolute;left:0;color:#F5A623;font-weight:700}.cx-referral-card__note{margin:auto 0 0;padding-top:10px;border-top:1px solid rgba(244,242,237,.08);font:400 11.5px/1.55 'Space Grotesk',sans-serif;color:rgba(244,242,237,.45)}.cx-referral-fineprint{margin:2px 0 0;font:400 10.5px/1.6 'Space Grotesk',sans-serif;color:rgba(244,242,237,.35)}.cx-referral-fineprint a{color:rgba(244,242,237,.55);text-decoration:underline}.cx-referral-calculator{background:#0C0E14;border:1px solid rgba(244,242,237,.1);border-radius:16px;padding:26px;display:flex;flex-direction:column;gap:14px}.cx-referral-calc-head{display:flex;justify-content:space-between;align-items:center}.cx-referral-calc-kicker{font:600 10.5px 'JetBrains Mono',monospace;letter-spacing:.2em;color:#F4F2ED}.cx-referral-calc-badge{background:rgba(46,204,113,.1);border:1px solid rgba(46,204,113,.3);color:#7ee2a8;font:600 9px 'JetBrains Mono',monospace;letter-spacing:.1em;padding:4px 10px;border-radius:99px}.cx-referral-modes{display:flex;gap:8px}.cx-referral-modes button{flex:1;border-radius:8px;font-size:11.5px;padding:9px;background:transparent;color:rgba(244,242,237,.65);border-color:rgba(244,242,237,.2)}.cx-referral-modes button:hover{border-color:rgba(245,166,35,.5);color:#F5A623}.cx-referral-calc-copy{margin:0;font:400 11.5px/1.6 'Space Grotesk',sans-serif;color:rgba(244,242,237,.5)}.cx-referral-rows{display:flex;flex-direction:column;gap:8px}.cx-referral-row{display:grid;grid-template-columns:1.5fr .85fr 1fr;gap:10px;align-items:center;background:rgba(255,255,255,.025);border:1px solid rgba(244,242,237,.08);border-radius:10px;padding:11px 14px}.cx-referral-row[data-eligible="false"]{opacity:.6}.cx-referral-row__control{display:flex;flex-direction:column;gap:5px;min-width:0}.cx-referral-row__control label{font:500 11.5px 'Space Grotesk',sans-serif;color:rgba(244,242,237,.75);display:flex;align-items:center;gap:8px}.cx-referral-row__control select{width:100%;background:#12151c;border:1px solid rgba(244,242,237,.18);border-radius:6px;color:#F4F2ED;font:500 11.5px 'Space Grotesk',sans-serif;padding:8px;min-height:44px}.cx-referral-row__control select:hover,.cx-referral-row__control select:focus-visible{border-color:rgba(245,166,35,.5)}.cx-referral-row__control select:disabled,.cx-referral-row--boolean input:disabled{cursor:not-allowed;opacity:.5}.cx-referral-row--boolean label{cursor:pointer;min-height:44px;display:flex;align-items:center}.cx-referral-row--boolean input[type=checkbox]{accent-color:#F5A623;width:16px;height:16px;cursor:pointer;flex:none}.cx-referral-row__price{font:600 12px 'JetBrains Mono',monospace;color:#F4F2ED;text-align:right}.cx-referral-row__commission{text-align:right}.cx-referral-row__commission strong{display:block;font:700 13px 'Space Grotesk',sans-serif;color:#F5A623}.cx-referral-row__commission span{display:block;font:500 9.5px 'JetBrains Mono',monospace;color:rgba(244,242,237,.4)}.cx-referral-row__note{grid-column:1/-1;margin:0;font:400 10.5px/1.4 'Space Grotesk',sans-serif;color:rgba(244,242,237,.4)}.cx-referral-excluded{border:1px dashed rgba(244,242,237,.15);border-radius:10px;padding:11px 14px;display:flex;flex-direction:column;gap:6px}.cx-referral-excluded__kicker{margin:0;font:600 9.5px 'JetBrains Mono',monospace;letter-spacing:.12em;color:rgba(244,242,237,.4);text-transform:uppercase}.cx-referral-excluded-row{display:flex;justify-content:space-between;gap:12px;font:400 11.5px 'Space Grotesk',sans-serif;color:rgba(244,242,237,.45)}.cx-referral-counter{display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.03);border:1px solid rgba(244,242,237,.08);border-radius:9px;padding:10px 14px}.cx-referral-counter__label{font:500 11px 'JetBrains Mono',monospace;color:rgba(244,242,237,.5)}.cx-referral-counter__control{display:flex;align-items:center;gap:14px}.cx-referral-counter__value{font:700 17px 'JetBrains Mono',monospace;color:#F4F2ED;min-width:20px;text-align:center}.cx-referral-results{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.cx-referral-result{background:rgba(245,166,35,.06);border:1px solid rgba(245,166,35,.3);border-radius:10px;padding:12px 13px;display:flex;flex-direction:column;gap:3px}.cx-referral-result span{font:500 9px 'JetBrains Mono',monospace;letter-spacing:.06em;color:rgba(244,242,237,.55);text-transform:uppercase}.cx-referral-result strong{font:800 19px Montserrat,sans-serif;color:#F5A623}.cx-referral-result p{margin:0;font:400 9.5px/1.3 'Space Grotesk',sans-serif;color:rgba(244,242,237,.4)}.cx-referral-result--primary{grid-column:1/-1;flex-direction:row;align-items:baseline;justify-content:space-between;flex-wrap:wrap}.cx-referral-result--primary strong{font-size:26px}.cx-referral-assumptions{border-top:1px solid rgba(244,242,237,.08);padding-top:10px}.cx-referral-assumptions summary{cursor:pointer;font:600 11px 'Space Grotesk',sans-serif;color:rgba(244,242,237,.6);list-style:none;padding:12px 0;min-height:44px;box-sizing:border-box}.cx-referral-assumptions summary::after{content:'+';float:right;color:#F5A623;font-weight:700}.cx-referral-assumptions[open] summary::after{content:'−'}.cx-referral-assumptions ul{margin:8px 0 0;padding-left:16px;display:flex;flex-direction:column;gap:5px;font:400 10.5px/1.5 'Space Grotesk',sans-serif;color:rgba(244,242,237,.42)}.cx-referral-disclaimer{margin:0;font:400 9.5px/1.5 'Space Grotesk',sans-serif;color:rgba(244,242,237,.32)}
@media(max-width:980px){.cx-package-layout{grid-template-columns:1fr!important}.cx-package-contact{position:static}.cx-package-summary--landscape{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.cx-package-summary--landscape>button,.cx-package-summary--landscape .cx-quote{grid-column:1/-1}}
@media(max-width:620px){.cx-package-summary--landscape{grid-template-columns:1fr;gap:14px}.cx-package-summary--landscape .cx-package-totals{border-left:0;border-top:1px solid rgba(244,242,237,.1);padding:14px 0 0}.cx-package-contact form{grid-template-columns:1fr}.cx-map-legend{position:relative;left:auto;bottom:auto;margin-top:-1px;border-radius:0 0 10px 10px}.cx-tier-detail{margin:16px;padding:16px}.cx-tier-detail ul{columns:1}.cx-tier-detail__heading{display:grid}.cx-module-actions{display:grid;grid-template-columns:1fr}}

/* Give the desktop package summary a bounded natural scroll runway for its sticky state. */
@media(min-width:981px){.cx-package-main{padding-bottom:min(34vh,320px)}}

/* Allow the selected-package sticky state to participate in normal document scrolling. */
.cx-circuit-stage{overflow:visible}

/* Clip only horizontal paint; do not create a vertical scroll container that defeats sticky UI. */
body{overflow-x:clip}
.cx-package-summary--landscape{will-change:transform}

/* Preserve the preview’s horizontal containment; pinned package motion is handled independently. */
body{overflow-x:hidden}

/* Keep the broker’s internal mobile stage rail touch-scrollable without widening the document. */
.cx-circuit-stage{overflow-x:clip;overflow-y:visible}

/* Final goal: mobile selector alignment and borrower interaction scope.
   Task 5 correction: the broker panel's heading/copy/button block was
   sitting vertically centred inside the mobile panel because
   justify-content:space-between splits free space evenly above and below
   it — pulling it up with a negative margin alone only ever moves it half
   as far as the margin value (space-between redistributes the freed space
   into BOTH gaps equally), which simultaneously shoves the chip row further
   away, the opposite of what's needed. Switching this one panel to
   justify-content:flex-start removes that fight: the logo stays exactly
   where it was (first flex item, unaffected), the content block gets a
   small deliberate margin-top instead of an even split, and the chip row
   then sits directly after it.
   Exact correction item 10: the previous 870px min-height (kept tall for
   the chip-art SVG's own vertical envelope) left a large dead zone below
   the chip row once the content block was pulled to flex-start — dropped
   to 680px, just above the panel's real content height at 375px width, so
   the trailing empty space is removed without the panel clipping its own
   content. The chip art no longer needs that extra height to "breathe" at
   the top because it has been moved down into the lower-right of the panel
   (see the chip-geometry rule below), where it now shares the panel's
   natural content height instead of requiring its own reserved band. */
@media(max-width:620px){
  .cx-group-shell>a{min-height:570px!important;padding:68px 20px 30px!important}
  .cx-group-tagline{top:12px!important}
  .cx-group-shell>.cx-group-broker-panel{min-height:680px!important;justify-content:flex-start!important}
  .cx-group-broker-panel .cx-group-logo{margin-top:0!important}
  .cx-group-broker-panel>div[style*="max-width:460px"]{margin-top:36px!important}
  .cx-group-broker-panel>div[style*="gap:22px;flex-wrap:wrap"]{margin-top:20px!important}
  .cx-group-finance-panel{padding-top:68px!important}
}

/* Exact correction item 10: the Emma/24-7/CRM capability strip stacks into
   three vertical lines on mobile (EMMA AI QUALIFICATION / 24/7 VOICE + SMS
   OUTREACH / CRM-READY BRIEFS, in that order) instead of the desktop's
   horizontal "·"-separated row, and the separator dots are hidden since a
   stacked list doesn't need them. Desktop (>620px) keeps the original
   horizontal arrangement untouched. */
@media(max-width:620px){
  [data-gw-caps]{flex-direction:column;align-items:flex-start;row-gap:6px}
  [data-gw-caps] [data-gw-caps-dot]{display:none}
}

/* Chip geometry: single authoritative mobile rule, placed on a controlled stacking layer (z-index:0) behind the panel's text content so the logo/heading/copy/CTA/meta-row (given z-index:1 below) always paint above it regardless of DOM order. Desktop (>620px) is untouched — this block is gated to max-width:620px only.
   Exact correction item 10: moved down into the lower-right of the panel
   (top:6%→46%, height:40%→52%, left:34%→22%, width:62%→80%) so it sits
   behind/near the "Enter the Growth Engine" CTA and the space below it,
   instead of the upper-middle. The chip's own animated hub sits at roughly
   74%/69% across its own 800x900 viewBox rather than dead centre, and
   preserveAspectRatio="xMidYMid slice" keeps content centred within
   whatever box this rule sizes/positions — so with these values the hub
   renders at roughly the 80%-across/82%-down point of the panel: solidly
   lower-right, and vertically overlapping the CTA button's own band so the
   glow reads as behind/near that button rather than drifting to an
   unrelated part of the layout. There is no pixel spec for this in the
   repo beyond "the region identified by Augin" — confirm against that
   original visual annotation before treating this box as final. Every
   glow/filter/opacity value is untouched. */
@media(max-width:620px){
  .cx-group-broker-panel>svg.cx-group-chip-art{top:46%!important;left:22%!important;right:auto!important;bottom:auto!important;width:80%!important;height:52%!important;z-index:0;opacity:1!important;filter:brightness(1.08) contrast(1.28) saturate(1.16) drop-shadow(0 0 10px rgba(245,166,35,.6))!important}
  .cx-group-broker-panel .cx-group-logo,.cx-group-broker-panel>div[style*="position:relative;display:flex"]{z-index:1}
}

/* Exact correction item 10: brighten the chip's grey background circuit
   traces (the base floor grid, #161a23, and the base copper traces,
   #232833) on mobile only, so they read clearly on small screens without
   touching the desktop rendering. The amber/gold energised traces, node
   pads, travelling pulses and chip hub are untouched. */
@media(max-width:620px){
  .cx-group-chip-art .gwFloor{opacity:.95!important}
  .cx-group-chip-art .gwBase{stroke-width:3.4!important}
}
.cx-page-finance{background:#0A0B0D}
.cx-page-finance .cx-nav,.cx-page-finance .cx-nav:hover,.cx-page-finance .cx-nav:focus-within{transform:none!important;box-shadow:none!important}
.cx-page-finance .cx-nav .cx-finance-nav-link{display:inline-block;transition:color .18s var(--cx-ease),text-decoration-color .18s var(--cx-ease)}
.cx-page-finance .cx-nav .cx-finance-nav-link:hover,.cx-page-finance .cx-nav .cx-finance-nav-link:focus-visible{transform:none!important;box-shadow:none!important;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.32em;text-decoration-color:rgba(245,166,35,.82);color:#F5A623!important}
.cx-panel-coverage .cx-panel-coverage-item{cursor:pointer;display:inline-flex;align-items:center;min-height:44px;padding:8px 2px}
.cx-panel-coverage .cx-panel-coverage-item.is-selected{color:#F5A623!important}

/* Keep preview-only mobile paint from extending the broker document beyond its footer. */
@media(max-width:620px){html[data-cx-page="broker"]{overflow-x:clip!important}html[data-cx-page="broker"] .cx-circuit-stage{overflow:clip!important}}

/* Keep each auto-cycling stage state within a fixed visual envelope. */
#infrastructure div[style*="min-height:172px"]{min-height:300px!important}
@media(max-width:620px){#infrastructure div[style*="min-height:172px"]{min-height:420px!important}}

/* "Need help?" chat launcher — restrained entrance (fades/lifts in shortly
   after mount rather than snapping into existence) and an animated typing
   indicator in place of a static "Thinking…" line. The existing global
   prefers-reduced-motion rule above (line 10) already forces every
   transition/animation-duration to .001ms, so both are neutralised there
   automatically — no separate reduced-motion override needed here. */
.cx-borrower-chat-launch{opacity:0;transform:translateY(14px) scale(.95);transition:opacity .5s cubic-bezier(.22,1,.36,1),transform .5s cubic-bezier(.22,1,.36,1)}
.cx-borrower-chat-launch.cx-chat-launch-in{opacity:1;transform:none}
.cx-chat-thinking{display:flex!important;align-items:center;gap:5px;padding:12px 12px}
.cx-typing-dot{width:6px;height:6px;border-radius:50%;background:rgba(244,242,237,.5);animation:cxTypingDot 1.1s ease-in-out infinite}
.cx-typing-dot:nth-child(2){animation-delay:.15s}
.cx-typing-dot:nth-child(3){animation-delay:.3s}
@keyframes cxTypingDot{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}

/* ── Log in entry (unified integration, 2026-07-30) ─────────────────────────
   The locked product direction requires a simple, unobtrusive Log in entry on
   every public page and in the mobile menu. It is injected by
   claude-next.js's enhanceNavigation() into the nav's actions group, which
   the drawer builder then mirrors automatically.

   Deliberately a quiet text link, NOT a second button: the primary conversion
   action on a public page is the enquiry CTA, and an existing customer looking
   for the door does not need to compete with it. Inherits .cx-tap-target's
   >=44x44 hit zone from the nav sweep, so it meets the touch-target standard
   without changing the nav bar's visible height.

   At <=1080px the existing `.cx-nav-actions>a:not(:last-child)` rule hides it
   from the top bar; the mobile drawer carries it instead. That is the intended
   behaviour, not an oversight — the drawer IS the mobile menu. */
.cx-nav .cx-nav-login,
.cx-group-nav .cx-nav-login {
  display: inline-flex;
  align-items: center;
  color: rgba(244, 242, 237, .72);
  font: 500 clamp(11.5px, 1vw, 13px)/1 Sora, sans-serif;
  letter-spacing: .01em;
  white-space: nowrap;
  transition: color .2s var(--cx-ease);
}
.cx-nav .cx-nav-login:hover,
.cx-nav .cx-nav-login:focus-visible,
.cx-group-nav .cx-nav-login:hover,
.cx-group-nav .cx-nav-login:focus-visible { color: var(--cx-orange); }
.cx-nav .cx-nav-login:focus-visible,
.cx-group-nav .cx-nav-login:focus-visible { outline: 2px solid rgba(245, 166, 35, .65); outline-offset: 4px; border-radius: 3px; }

/* Embedded repayment calculator on the borrower page (locked §I, surface 2 of 3). */
@media (max-width:980px){ .cx-embed-calc{grid-template-columns:1fr!important} }
@media (max-width:620px){ .cx-embed-two{grid-template-columns:1fr!important} }

/* ── Touch-target completion (unified integration, 2026-07-30) ──────────────
   Found by a live-browser sweep of the deployed preview at 1440/1024/768/390/360.
   Workstream A's own 44px sweep missed these because they are neither in the nav
   (which the enhancer gives .cx-tap-target) nor inline in running prose (a
   legitimate WCAG 2.5.8 exception).

   The in-page CTA links get the real .cx-tap-target class applied in
   claude-next.js rather than a bespoke ::after rule here: the class already
   carries the >=44px hit zone AND is what the verification probe recognises, so
   the fix and the check agree instead of a rule the probe cannot measure. */
/* NOT scoped to #cx-static-root. broker.js renders these links into a panel it
   appends outside that container, so a scoped selector matched nothing — the
   reason two earlier attempts appeared to change nothing at all. Verified live:
   the element reported `closest('#cx-static-root') === null`. */
a[href="#checkout"],
a[href="#growth-modules"] { position: relative; }
a[href="#checkout"]::after,
a[href="#growth-modules"]::after {
  content: ""; position: absolute; top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  /* `width:100%` + `min-width` rather than `max(100%, 44px)`: identical intent
     (span the element, never narrower than 44px), but getComputedStyle returns
     a `max()` expression VERBATIM instead of a used px value, so a `max()` hit
     zone is unmeasurable by any automated check. */
  width: 100%; min-width: 44px; height: 44px;
}
.cx-map-toolbar button { min-width: 44px; }
/* The referral-calculator module toggles are native checkboxes inside a 32px
   label. The checkbox itself must stay ~16px (scaling a native control to 44px
   looks broken), so the LABEL carries the target — which is where the click
   actually lands. */
label[for^="referral-toggle-"],
.cx-referral-toggle,
#cx-static-root label:has(input[id^="referral-toggle-"]) {
  min-height: 44px; display: flex; align-items: center;
}

/* ── Embedded full repayment calculator on /finance (locked section 6) ───────
   The COMPLETE experience, not a reduced one. Shares the approved site's ink,
   gold accent, Sora/Montserrat type and radius language — no new design tokens. */
.cxe-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);gap:clamp(18px,2.4vw,28px);align-items:start;font-family:Sora,sans-serif}
.cxe-card{border:1px solid rgba(16,20,28,.12);border-radius:16px;background:#fff;box-shadow:0 16px 42px rgba(16,20,28,.07);padding:clamp(20px,2.4vw,28px)}
.cxe-nopad{padding:0;overflow:hidden}
.cxe-h3{margin:0 0 4px;font:700 clamp(16px,1.5vw,19px)/1.25 Sora,sans-serif;color:#10141C}
.cxe-sub{margin:0 0 18px;color:rgba(16,20,28,.58);font:400 12.5px/1.6 Sora,sans-serif}
.cxe-field{margin-bottom:18px}
.cxe-field:last-child{margin-bottom:0}
.cxe-label{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:7px;color:#383B42;font:600 12px/1.3 Sora,sans-serif}
.cxe-unit{color:rgba(16,20,28,.45);font:400 11px 'JetBrains Mono',monospace}
.cxe-row{display:flex;gap:10px;align-items:center}
.cxe-num{flex:0 0 128px;min-height:44px;border:1px solid rgba(16,20,28,.17);border-radius:8px;background:#fff;color:#10141C;padding:10px 12px;font:600 15px/1.3 'JetBrains Mono',monospace}
.cxe-full{flex:1 1 auto;width:100%}
.cxe-num:focus{outline:none;border-color:#F5A623;box-shadow:0 0 0 3px rgba(245,166,35,.16)}
.cxe-range{flex:1;min-width:0;min-height:44px;accent-color:#F5A623;background:transparent}
.cxe-range:focus-visible{outline:2px solid rgba(245,166,35,.65);outline-offset:3px}
.cxe-select{width:100%;min-height:44px;border:1px solid rgba(16,20,28,.17);border-radius:8px;background:#fff;color:#10141C;padding:10px 12px;font:500 14px Sora,sans-serif}
.cxe-select:focus{outline:none;border-color:#F5A623;box-shadow:0 0 0 3px rgba(245,166,35,.16)}
.cxe-hint{margin:7px 0 0;color:rgba(16,20,28,.52);font:400 11.5px/1.55 Sora,sans-serif}
.cxe-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.cxe-hr{margin:22px 0;border:0;border-top:1px solid rgba(16,20,28,.1)}
.cxe-details{border:1px solid rgba(16,20,28,.14);border-radius:10px;background:#FCFBF9}
.cxe-summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;min-height:44px;box-sizing:border-box;font:700 13.5px Sora,sans-serif;color:#10141C}
.cxe-summary::-webkit-details-marker{display:none}
.cxe-summary::after{content:'+';color:#A96F0C;font:400 19px 'JetBrains Mono',monospace}
.cxe-details[open] .cxe-summary::after{content:'\2013'}
.cxe-details-body{padding:2px 16px 18px}
.cxe-stressgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:4px 0 12px}
.cxe-stressgrid dt{margin:0 0 4px;color:rgba(16,20,28,.55);font:500 11px/1.35 Sora,sans-serif}
.cxe-stressgrid dd{margin:0;font:700 17px 'JetBrains Mono',monospace;color:#10141C}
.cxe-diff{margin:0 0 10px;font:500 13px Sora,sans-serif;color:rgba(16,20,28,.72)}
.cxe-diff strong{color:#10141C}
.cxe-results{position:sticky;top:92px}
.cxe-headline{padding:clamp(20px,2.4vw,28px);background:linear-gradient(150deg,#10141C 0%,#1B2334 100%);color:#F4F2ED}
.cxe-eyebrow{color:#F5A623;font:700 10px/1 'JetBrains Mono',monospace;letter-spacing:.18em;text-transform:uppercase;margin-bottom:11px}
.cxe-big{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}
.cxe-big strong{font:800 clamp(30px,3.8vw,44px)/1 Montserrat,sans-serif;color:#F5A623;letter-spacing:-.015em}
.cxe-big span{color:rgba(244,242,237,.62);font:500 12.5px 'JetBrains Mono',monospace}
.cxe-stresspeek{margin-top:14px;padding-top:13px;border-top:1px solid rgba(244,242,237,.14);color:rgba(244,242,237,.6);font:400 12px/1.55 Sora,sans-serif;min-height:1.2em}
.cxe-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(16,20,28,.1);margin:0}
.cxe-metrics>div{padding:16px clamp(14px,1.8vw,20px);background:#fff}
.cxe-metrics dt{margin:0 0 4px;color:rgba(16,20,28,.55);font:500 11px Sora,sans-serif}
.cxe-metrics dd{margin:0;font:700 17px 'JetBrains Mono',monospace;color:#10141C}
.cxe-block{padding:clamp(16px,2vw,20px);border-top:1px solid rgba(16,20,28,.1)}
.cxe-block h4{margin:0 0 9px;font:700 13px Sora,sans-serif;color:#10141C}
.cxe-block p{margin:0;color:rgba(16,20,28,.66);font:400 13px/1.65 Sora,sans-serif}
.cxe-block strong{color:#10141C}
.cxe-note{background:rgba(245,166,35,.07)}
.cxe-actions{display:grid;gap:9px;padding:clamp(16px,2vw,20px);border-top:1px solid rgba(16,20,28,.1);background:#FCFBF9}
.cxe-btn{display:block;width:100%;min-height:48px;border:0;border-radius:9px;font:700 13.5px Sora,sans-serif;cursor:pointer;text-align:center;line-height:48px;transition:transform .2s ease,box-shadow .2s ease}
.cxe-primary{background:linear-gradient(110deg,#10141C 35%,#28324A 52%,#10141C 68%);background-size:220% 100%;color:#fff}
.cxe-primary:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(16,20,28,.2);color:#fff}
.cxe-ghost{background:transparent;border:1px solid rgba(16,20,28,.2);color:#10141C;line-height:46px}
.cxe-ghost:hover{background:rgba(16,20,28,.04);color:#10141C}
.cxe-appt{margin:0 0 9px;font:600 12.5px/1.6 Sora,sans-serif}
.cxe-guide{padding:0 clamp(16px,2vw,20px) clamp(16px,2vw,20px);text-align:center;background:#FCFBF9}
.cxe-guide a{display:inline-flex;align-items:center;min-height:44px;color:#A96F0C;font:600 12.5px Sora,sans-serif;text-decoration:underline;text-underline-offset:3px}
.cxe-disclaimer{margin-top:16px;padding:15px 17px;border:1px solid rgba(16,20,28,.12);border-left:3px solid #F5A623;border-radius:10px;background:#fff;color:rgba(16,20,28,.7);font:400 12px/1.68 Sora,sans-serif}
.cxe-disclaimer strong{display:block;margin-bottom:5px;color:#10141C;font:700 11px 'JetBrains Mono',monospace;letter-spacing:.06em;text-transform:uppercase}
.cxe-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
@media (max-width:980px){.cxe-grid{grid-template-columns:1fr}.cxe-results{position:static}}
@media (max-width:620px){.cxe-two,.cxe-stressgrid{grid-template-columns:1fr}.cxe-num{flex:0 0 112px}.cxe-metrics{grid-template-columns:1fr}}

/* Required public route links (locked section 7), injected by claude-next.js.
   Inherits the approved nav type/colour/spacing — the only change is that the
   routes now exist. The existing <=1080px rules hide .cx-desktop-links, and the
   mobile drawer carries the full set instead. */
.cx-nav .cx-nav-route,.cx-group-nav .cx-nav-route{color:rgba(244,242,237,.7);white-space:nowrap;transition:color .2s var(--cx-ease)}
.cx-nav .cx-nav-route:hover,.cx-nav .cx-nav-route:focus-visible,
.cx-nav .cx-nav-route[aria-current="page"],
.cx-group-nav .cx-nav-route:hover,.cx-group-nav .cx-nav-route[aria-current="page"]{color:var(--cx-orange)}
.cx-nav .cx-nav-route:focus-visible{outline:2px solid rgba(245,166,35,.65);outline-offset:4px;border-radius:3px}
