/* Homepage demonstrations. Every rule is confined to the approved section. */
#solutions[data-homepage-demos]{position:relative;isolation:isolate;max-width:1440px;margin:0 auto;padding:clamp(72px,8vw,112px) clamp(24px,4vw,48px);overflow:hidden;background:linear-gradient(to bottom,transparent 0,#090100 9%,#090100 91%,transparent 100%);scroll-margin-top:96px}
#solutions[data-homepage-demos] .solutions-stack{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr)}
#solutions[data-homepage-demos] .solutions-texture{display:none}
#solutions[data-homepage-demos] .solutions-texture-field{position:absolute;z-index:0;inset:5% 0;overflow:hidden;padding:18px 26px;color:#e3bfb2;font-family:"Courier New",monospace!important;font-size:10px!important;font-weight:400!important;line-height:1.55!important;letter-spacing:.45em!important;word-spacing:.7em!important;white-space:pre;opacity:.14;pointer-events:none;user-select:none;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 10%,#000 90%,transparent),linear-gradient(to right,transparent,#000 7%,#000 93%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(to bottom,transparent,#000 10%,#000 90%,transparent),linear-gradient(to right,transparent,#000 7%,#000 93%,transparent);mask-composite:intersect}
#solutions[data-homepage-demos] .solutions-product{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,2fr);grid-template-rows:auto auto;column-gap:clamp(32px,4vw,64px);row-gap:32px;min-width:0}
#solutions[data-homepage-demos] .solutions-capture-toolbar{grid-column:1/3;grid-row:1;display:block;min-height:0;margin:0;padding:0;border:0;background:transparent}
#solutions[data-homepage-demos] .solutions-capture-controls{display:flex;flex-wrap:wrap;align-items:stretch;gap:8px 24px;width:100%}
#solutions[data-homepage-demos] .solutions-capture-control{display:inline-flex;justify-content:flex-start;width:auto;min-width:44px;min-height:48px;padding:12px 4px;border:0;border-bottom:2px solid transparent;border-radius:0!important;background:transparent;color:var(--fg2);font-family:inherit;font-size:15px!important;font-weight:400;line-height:1.5;letter-spacing:0;text-align:left;text-transform:none;cursor:pointer}
#solutions[data-homepage-demos] .solutions-capture-control:hover{border-bottom-color:var(--fg3);background:transparent;color:var(--fg)}
#solutions[data-homepage-demos] .solutions-capture-control[aria-pressed="true"]{border-bottom-color:var(--fg);background:transparent;color:var(--fg);font-weight:500!important}
#solutions[data-homepage-demos] .solutions-capture-control:focus-visible{outline:2px solid var(--amber);outline-offset:4px}
#solutions[data-homepage-demos] .solutions-product-copy{grid-column:1;grid-row:2;max-width:none;padding:0}
#solutions[data-homepage-demos] .solutions-tag{display:none}
#solutions[data-homepage-demos] .solutions-identity{display:inline-flex;align-items:center;min-width:44px;min-height:44px;max-width:180px;margin:0 0 20px;color:var(--fg);text-decoration:none;outline-offset:5px}
#solutions[data-homepage-demos] .solutions-identity:not([href]){cursor:default}
#solutions[data-homepage-demos] .solutions-identity img{display:block;width:auto;max-width:170px;height:34px;object-fit:contain;object-position:left center;filter:grayscale(1) brightness(1.5);opacity:.9}
#solutions[data-homepage-demos] .solutions-identity img[src$="onoto-official.svg"]{height:40px;filter:grayscale(1) brightness(1.35)}
#solutions[data-homepage-demos] .solutions-identity img[src$="flaren-official.png"]{height:44px}
#solutions[data-homepage-demos] .solutions-identity [data-frontier-wordmark]{font-size:18px!important;font-weight:500;letter-spacing:-.02em}
#solutions[data-homepage-demos] .solutions-identity:focus-visible{outline:2px solid var(--fg);outline-offset:5px}
#solutions[data-homepage-demos] .solutions-product-copy h2{max-width:12ch;margin:0;color:var(--fg);font-size:clamp(44px,4vw,60px)!important;font-weight:300;line-height:1.08;letter-spacing:-.03em;text-wrap:balance}
#solutions[data-homepage-demos] .solutions-product-copy p{max-width:29ch;margin:24px 0 0;color:var(--fg2);font-size:18px!important;font-weight:300;line-height:1.6}
#solutions[data-homepage-demos] .solutions-demo{grid-column:2;grid-row:2;min-width:0;margin:0}
#solutions[data-homepage-demos] .frontier-panels{min-width:0;background:transparent}
#solutions[data-homepage-demos] .frontier-panel[hidden]{display:none!important}
#solutions[data-homepage-demos] .hairline-frame{display:block;width:100%;height:580px;border:0;background:#090100;color-scheme:dark}
#solutions[data-homepage-demos] .solutions-meta{display:block;max-width:58ch;margin:24px 0 0;color:var(--fg2);font-size:13px!important;font-weight:400;line-height:1.55;letter-spacing:0;text-transform:none}
#solutions[data-homepage-demos] .frontier-announcement{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){
  #solutions[data-homepage-demos] .solutions-product{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;row-gap:24px}
  #solutions[data-homepage-demos] .solutions-capture-toolbar{grid-column:1;grid-row:1;margin-bottom:8px}
  #solutions[data-homepage-demos] .solutions-product-copy{grid-column:1;grid-row:2}
  #solutions[data-homepage-demos] .solutions-product-copy h2{max-width:18ch;font-size:clamp(36px,7vw,52px)!important}
  #solutions[data-homepage-demos] .solutions-product-copy p{max-width:48ch;margin-top:16px;font-size:17px!important}
  #solutions[data-homepage-demos] .solutions-demo{grid-column:1;grid-row:3;margin-top:8px}
  #solutions[data-homepage-demos] .hairline-frame{height:auto;aspect-ratio:1}
  #solutions[data-homepage-demos] .solutions-meta{margin-top:16px}
}
@media(max-width:640px){
  #solutions[data-homepage-demos]{padding-right:20px;padding-left:20px}
  #solutions[data-homepage-demos] .solutions-capture-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px}
  #solutions[data-homepage-demos] .solutions-capture-control{width:100%;padding:10px 4px;font-size:14px!important}
}
@media(prefers-reduced-motion:reduce){#solutions[data-homepage-demos] *{animation:none!important;transition:none!important}#solutions[data-homepage-demos] .solutions-texture-field{animation:none!important;transition:none!important}}

/* The fixed navigation becomes an opaque warm plane only while this section is visible. */
#nav.solutions-nav-opaque::before{background:#100b08!important;opacity:1!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;-webkit-mask-image:none!important;mask-image:none!important}

/* Compact operating stack. */
#agent-stack{padding:30px clamp(24px,5vw,72px) 34px!important;min-height:0}
#agent-stack .artifact-grid{max-width:1296px;margin:0 auto}
#agent-stack .artifact-grid__title{margin:0;font-size:clamp(26px,2.7vw,38px)!important;font-weight:300;line-height:1.08;white-space:nowrap}
#agent-stack .artifact-grid__marks{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:18px;margin:22px 0 0;padding:0;list-style:none}
#agent-stack .artifact-grid__mark{display:flex;min-width:0;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:8px;padding:0;color:var(--fg2)}
#agent-stack .artifact-grid__mark>span:last-child{font-size:13px!important;font-weight:400;line-height:1.2;white-space:normal}
#agent-stack .artifact-grid__shape{display:block;width:auto;max-width:88px;height:22px;object-fit:contain;object-position:left center;filter:grayscale(1) brightness(1.4);opacity:.78}
#agent-stack .artifact-grid__shape[src$="rubyonrails.svg"]{filter:grayscale(1) invert(1);opacity:.72}
#agent-stack .artifact-grid__shape[src$="typesafe.svg"],#agent-stack .artifact-grid__shape[src$="subq-symbol.svg"],#agent-stack .artifact-grid__shape[src$="railway-icon.png"]{width:22px;max-width:22px;height:22px;object-fit:contain;object-position:center}
#agent-stack .artifact-grid__shape[src$="typesafe.svg"]{width:30px;max-width:30px;height:22px;filter:brightness(0) invert(1) drop-shadow(0 0 .55px #fcfaf7) drop-shadow(0 0 .55px #fcfaf7);opacity:.8}
#agent-stack .artifact-grid__shape[src$="subq-symbol.svg"]{filter:grayscale(1) brightness(1.35);opacity:.8}
#agent-stack .artifact-grid__shape[src$="railway-icon.png"]{filter:grayscale(1) brightness(1.2);opacity:.78}
#agent-stack .artifact-grid__wordmark{display:flex;align-items:center;height:22px;color:#aaa;font-size:15px!important;font-weight:500;letter-spacing:-.02em;opacity:.9}
@media(max-width:1100px){#agent-stack .artifact-grid__marks{grid-template-columns:repeat(5,minmax(0,1fr));row-gap:18px}}
@media(max-width:640px){
  #agent-stack{padding:26px 20px 30px!important}
  #agent-stack .artifact-grid__title{font-size:25px!important;white-space:normal}
  #agent-stack .artifact-grid__marks{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 12px;margin-top:20px}
  #agent-stack .artifact-grid__shape{max-width:76px;height:20px}
  #agent-stack .artifact-grid__mark>span:last-child{font-size:12px!important}
}

/* Plain-language handover with one restrained hairline artifact. */
#personas.sect{max-width:1360px;padding:56px clamp(24px,5vw,72px)!important;overflow:hidden!important}
#personas .eco-header{max-width:700px;margin:0 0 32px}
#personas .eco-header h2{font-size:clamp(32px,3.5vw,48px)!important;font-weight:300;line-height:1.06}
#personas .eco-header p{max-width:42ch;margin:10px 0 0;font-size:16px!important;line-height:1.5}
#personas .personas-handover{display:grid;grid-template-columns:minmax(0,.82fr) minmax(320px,1.18fr);gap:clamp(36px,6vw,88px);align-items:center}
#personas .deliverable-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 28px!important;margin:0!important}
#personas .deliverable-artifact{display:block!important;padding:16px 0!important;border-top:1px solid rgba(244,235,225,.18)!important}
#personas .deliverable-artifact h3{margin:0!important;font-size:19px!important;font-weight:400;line-height:1.2}
#personas .deliverable-artifact p{margin:6px 0 0!important;font-size:14px!important;line-height:1.45;color:#cbbbac}
#personas .personas-study{margin:0;color:#e3bfb2}
#personas .personas-study svg{display:block;width:100%;height:auto;max-height:280px}
@media(max-width:700px){
  #personas.sect{padding:40px 20px!important}
  #personas .eco-header{margin-bottom:24px}
  #personas .personas-handover{grid-template-columns:1fr;gap:24px}
  #personas .deliverable-grid{grid-template-columns:1fr 1fr!important;gap:0 18px!important}
  #personas .deliverable-artifact{padding:13px 0!important}
  #personas .personas-study svg{max-height:220px}
}

/* Compact examples with a static dot texture kept clear of the prose. */
#opportunity.sect{max-width:1360px;padding:52px clamp(24px,5vw,72px) 58px!important;overflow:hidden}
#opportunity .eco-header{position:relative;z-index:1;margin:0;max-width:760px}
#opportunity .eco-header h2{margin:0;font-size:clamp(32px,3.2vw,44px)!important;font-weight:300;line-height:1.06}
#opportunity .eco-header p{margin:10px 0 0;font-size:16px!important;line-height:1.5}
#opportunity .build-list{position:relative;z-index:1;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(22px,3vw,42px)!important;max-width:none!important;margin:30px 0 0!important}
#opportunity .build-item{max-width:none;padding-top:18px;border-top:1px solid rgba(244,235,225,.18)}
#opportunity .build-item h3{margin:0;font-size:21px!important;font-weight:300;line-height:1.15}
#opportunity .build-item p{margin:8px 0 0;font-size:15px!important;line-height:1.5}
#opportunity .opportunity-dots{position:absolute;top:34px;right:clamp(24px,5vw,72px);display:grid;grid-template-columns:repeat(3,4px);gap:12px;opacity:.38;pointer-events:none}
#opportunity .opportunity-dots span{width:4px;height:4px;background:#d9743f}
@media(max-width:700px){
  #opportunity.sect{padding:38px 20px 42px!important}
  #opportunity .eco-header{padding-right:54px}
  #opportunity .eco-header h2{font-size:30px!important}
  #opportunity .build-list{grid-template-columns:1fr;gap:0!important;margin-top:22px!important}
  #opportunity .build-item{padding:15px 0}
  #opportunity .build-item h3{font-size:19px!important}
  #opportunity .build-item p{font-size:15px!important;line-height:1.45}
  #opportunity .opportunity-dots{top:42px;right:20px;gap:9px}
}
